@fluentui/react-aria 0.0.0-nightlyfe9829e48120211112.1 → 0.0.0-nightlyff78d1e27a20220217.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.json +149 -14
- package/CHANGELOG.md +46 -9
- package/dist/react-aria.d.ts +7 -10
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/useARIAButton.d.ts +3 -3
- package/lib/hooks/useARIAButton.js +3 -3
- package/lib/hooks/useARIAButton.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/mergeARIADisabled.d.ts +2 -5
- package/lib/utils/mergeARIADisabled.js.map +1 -1
- package/lib-commonjs/hooks/index.js.map +1 -1
- package/lib-commonjs/hooks/useARIAButton.d.ts +3 -3
- package/lib-commonjs/hooks/useARIAButton.js +3 -3
- package/lib-commonjs/hooks/useARIAButton.js.map +1 -1
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/utils/index.js.map +1 -1
- package/lib-commonjs/utils/mergeARIADisabled.d.ts +2 -5
- package/lib-commonjs/utils/mergeARIADisabled.js.map +1 -1
- package/package.json +7 -9
package/CHANGELOG.json
CHANGED
|
@@ -2,17 +2,150 @@
|
|
|
2
2
|
"name": "@fluentui/react-aria",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
6
|
-
"tag": "@fluentui/react-aria_v0.0.0-
|
|
7
|
-
"version": "0.0.0-
|
|
5
|
+
"date": "Thu, 17 Feb 2022 11:41:16 GMT",
|
|
6
|
+
"tag": "@fluentui/react-aria_v0.0.0-nightlyff78d1e27a20220217.1",
|
|
7
|
+
"version": "0.0.0-nightlyff78d1e27a20220217.1",
|
|
8
8
|
"comments": {
|
|
9
9
|
"prerelease": [
|
|
10
10
|
{
|
|
11
11
|
"author": "email not defined",
|
|
12
12
|
"package": "@fluentui/react-aria",
|
|
13
|
-
"commit": "
|
|
13
|
+
"commit": "966e16625ca79f990ad8ca408ba47857adc522b3",
|
|
14
14
|
"comment": "Release nightly v9"
|
|
15
15
|
},
|
|
16
|
+
{
|
|
17
|
+
"author": "Humberto.Morimoto@microsoft.com",
|
|
18
|
+
"package": "@fluentui/react-aria",
|
|
19
|
+
"commit": "ca590a438b12b85d32fdf8b592ada3b0e7b2314c",
|
|
20
|
+
"comment": "Fixing issue in useAriaButton where passing disabledFocusable=false caused aria-disabled to be set to false and appear in DOM instead of just be undefined for that element."
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"author": "beachball",
|
|
24
|
+
"package": "@fluentui/react-aria",
|
|
25
|
+
"comment": "Bump @fluentui/keyboard-keys to v0.0.0-nightlyff78d1e27a20220217.1",
|
|
26
|
+
"commit": "966e16625ca79f990ad8ca408ba47857adc522b3"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"author": "beachball",
|
|
30
|
+
"package": "@fluentui/react-aria",
|
|
31
|
+
"comment": "Bump @fluentui/react-utilities to v0.0.0-nightlyff78d1e27a20220217.1",
|
|
32
|
+
"commit": "966e16625ca79f990ad8ca408ba47857adc522b3"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"date": "Thu, 10 Feb 2022 08:52:17 GMT",
|
|
39
|
+
"tag": "@fluentui/react-aria_v9.0.0-rc.1",
|
|
40
|
+
"version": "9.0.0-rc.1",
|
|
41
|
+
"comments": {
|
|
42
|
+
"none": [
|
|
43
|
+
{
|
|
44
|
+
"author": "olfedias@microsoft.com",
|
|
45
|
+
"package": "@fluentui/react-aria",
|
|
46
|
+
"commit": "c061e98be4b4a718c72a144a1f60bb5515824612",
|
|
47
|
+
"comment": "remove inline-style-expand-shorthand from tsconfigs"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"author": "martinhochel@microsoft.com",
|
|
51
|
+
"package": "@fluentui/react-aria",
|
|
52
|
+
"commit": "8dfa712156b70414205b87b5b6d099367b0c297d",
|
|
53
|
+
"comment": "chore: use storybook runner for all vNext packages"
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
"prerelease": [
|
|
57
|
+
{
|
|
58
|
+
"author": "olfedias@microsoft.com",
|
|
59
|
+
"package": "@fluentui/react-aria",
|
|
60
|
+
"commit": "f4eafee2c3b8d85b3a267d6b155f0f5585a435fd",
|
|
61
|
+
"comment": "remove Griffel packages"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"author": "lingfangao@hotmail.com",
|
|
65
|
+
"package": "@fluentui/react-aria",
|
|
66
|
+
"commit": "c00913d50e2dd15bbfbb0757cefe43b192ff1d7f",
|
|
67
|
+
"comment": "Bump Fluent UI packages to 9.0.0-rc"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"author": "Humberto.Morimoto@microsoft.com",
|
|
71
|
+
"package": "@fluentui/react-aria",
|
|
72
|
+
"commit": "e0b8e1fa6980077e7b311fd1c72c28d3e4305db0",
|
|
73
|
+
"comment": "Updating based on changes to composition types."
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"author": "behowell@microsoft.com",
|
|
77
|
+
"package": "@fluentui/react-aria",
|
|
78
|
+
"commit": "53b01d71e335715fda91b33e3d7bbd9d471d5ed3",
|
|
79
|
+
"comment": "Refactor component Slot typings"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"author": "behowell@microsoft.com",
|
|
83
|
+
"package": "@fluentui/react-aria",
|
|
84
|
+
"commit": "7cc28ed8320b00f42d91c63882f10316db2205c5",
|
|
85
|
+
"comment": "Remove component's shorthandProps array"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"author": "beachball",
|
|
89
|
+
"package": "@fluentui/react-aria",
|
|
90
|
+
"comment": "Bump @fluentui/keyboard-keys to v9.0.0-rc.1",
|
|
91
|
+
"commit": "e6c855f6d9019d6c73668d15fc9bc3a13291a6c8"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"author": "beachball",
|
|
95
|
+
"package": "@fluentui/react-aria",
|
|
96
|
+
"comment": "Bump @fluentui/react-utilities to v9.0.0-rc.1",
|
|
97
|
+
"commit": "e6c855f6d9019d6c73668d15fc9bc3a13291a6c8"
|
|
98
|
+
}
|
|
99
|
+
]
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"date": "Thu, 25 Nov 2021 08:34:10 GMT",
|
|
104
|
+
"tag": "@fluentui/react-aria_v9.0.0-beta.4",
|
|
105
|
+
"version": "9.0.0-beta.4",
|
|
106
|
+
"comments": {
|
|
107
|
+
"none": [
|
|
108
|
+
{
|
|
109
|
+
"author": "olfedias@microsoft.com",
|
|
110
|
+
"package": "@fluentui/react-aria",
|
|
111
|
+
"commit": "8a820339f7f4084d8c46e97f06eebbeb18111397",
|
|
112
|
+
"comment": "update tooling config"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"prerelease": [
|
|
116
|
+
{
|
|
117
|
+
"author": "beachball",
|
|
118
|
+
"package": "@fluentui/react-aria",
|
|
119
|
+
"comment": "Bump @fluentui/react-make-styles to v9.0.0-beta.4",
|
|
120
|
+
"commit": "48d236ac53a4950fabc3ddd52f91dac93ca0195b"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"author": "beachball",
|
|
124
|
+
"package": "@fluentui/react-aria",
|
|
125
|
+
"comment": "Bump @fluentui/react-utilities to v9.0.0-beta.4",
|
|
126
|
+
"commit": "48d236ac53a4950fabc3ddd52f91dac93ca0195b"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"author": "beachball",
|
|
130
|
+
"package": "@fluentui/react-aria",
|
|
131
|
+
"comment": "Bump @fluentui/jest-serializer-make-styles to v9.0.0-beta.4",
|
|
132
|
+
"commit": "48d236ac53a4950fabc3ddd52f91dac93ca0195b"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"author": "beachball",
|
|
136
|
+
"package": "@fluentui/react-aria",
|
|
137
|
+
"comment": "Bump @fluentui/babel-make-styles to v9.0.0-beta.4",
|
|
138
|
+
"commit": "48d236ac53a4950fabc3ddd52f91dac93ca0195b"
|
|
139
|
+
}
|
|
140
|
+
]
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"date": "Fri, 12 Nov 2021 13:25:13 GMT",
|
|
145
|
+
"tag": "@fluentui/react-aria_v9.0.0-beta.3",
|
|
146
|
+
"version": "9.0.0-beta.3",
|
|
147
|
+
"comments": {
|
|
148
|
+
"prerelease": [
|
|
16
149
|
{
|
|
17
150
|
"author": "Humberto.Morimoto@microsoft.com",
|
|
18
151
|
"package": "@fluentui/react-aria",
|
|
@@ -28,26 +161,28 @@
|
|
|
28
161
|
{
|
|
29
162
|
"author": "beachball",
|
|
30
163
|
"package": "@fluentui/react-aria",
|
|
31
|
-
"comment": "Bump @fluentui/
|
|
32
|
-
"commit": "
|
|
164
|
+
"comment": "Bump @fluentui/react-make-styles to v9.0.0-beta.3",
|
|
165
|
+
"commit": "742342e52c65066f779232e4e1302fedf0dd460d"
|
|
33
166
|
},
|
|
34
167
|
{
|
|
35
168
|
"author": "beachball",
|
|
36
169
|
"package": "@fluentui/react-aria",
|
|
37
|
-
"comment": "Bump @fluentui/react-
|
|
38
|
-
"commit": "
|
|
170
|
+
"comment": "Bump @fluentui/react-utilities to v9.0.0-beta.3",
|
|
171
|
+
"commit": "742342e52c65066f779232e4e1302fedf0dd460d"
|
|
39
172
|
},
|
|
40
173
|
{
|
|
41
174
|
"author": "beachball",
|
|
42
175
|
"package": "@fluentui/react-aria",
|
|
43
|
-
"comment": "Bump @fluentui/
|
|
44
|
-
"commit": "
|
|
45
|
-
}
|
|
176
|
+
"comment": "Bump @fluentui/jest-serializer-make-styles to v9.0.0-beta.3",
|
|
177
|
+
"commit": "742342e52c65066f779232e4e1302fedf0dd460d"
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
"none": [
|
|
46
181
|
{
|
|
47
|
-
"author": "
|
|
182
|
+
"author": "lingfangao@hotmail.com",
|
|
48
183
|
"package": "@fluentui/react-aria",
|
|
49
|
-
"
|
|
50
|
-
"
|
|
184
|
+
"commit": "00f70581480b536e723fb69edf0ae617beac4807",
|
|
185
|
+
"comment": "Remove beta release tag"
|
|
51
186
|
}
|
|
52
187
|
]
|
|
53
188
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -1,23 +1,60 @@
|
|
|
1
1
|
# Change Log - @fluentui/react-aria
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Thu, 17 Feb 2022 11:41:16 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
-
## [0.0.0-
|
|
7
|
+
## [0.0.0-nightlyff78d1e27a20220217.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-aria_v0.0.0-nightlyff78d1e27a20220217.1)
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-aria_v9.0.0-
|
|
9
|
+
Thu, 17 Feb 2022 11:41:16 GMT
|
|
10
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-aria_v9.0.0-rc.1..@fluentui/react-aria_v0.0.0-nightlyff78d1e27a20220217.1)
|
|
11
|
+
|
|
12
|
+
### Changes
|
|
13
|
+
|
|
14
|
+
- Release nightly v9 ([commit](https://github.com/microsoft/fluentui/commit/966e16625ca79f990ad8ca408ba47857adc522b3) by email not defined)
|
|
15
|
+
- Fixing issue in useAriaButton where passing disabledFocusable=false caused aria-disabled to be set to false and appear in DOM instead of just be undefined for that element. ([PR #21703](https://github.com/microsoft/fluentui/pull/21703) by Humberto.Morimoto@microsoft.com)
|
|
16
|
+
- Bump @fluentui/keyboard-keys to v0.0.0-nightlyff78d1e27a20220217.1 ([commit](https://github.com/microsoft/fluentui/commit/966e16625ca79f990ad8ca408ba47857adc522b3) by beachball)
|
|
17
|
+
- Bump @fluentui/react-utilities to v0.0.0-nightlyff78d1e27a20220217.1 ([commit](https://github.com/microsoft/fluentui/commit/966e16625ca79f990ad8ca408ba47857adc522b3) by beachball)
|
|
18
|
+
|
|
19
|
+
## [9.0.0-rc.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-aria_v9.0.0-rc.1)
|
|
20
|
+
|
|
21
|
+
Thu, 10 Feb 2022 08:52:17 GMT
|
|
22
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-aria_v9.0.0-beta.4..@fluentui/react-aria_v9.0.0-rc.1)
|
|
23
|
+
|
|
24
|
+
### Changes
|
|
25
|
+
|
|
26
|
+
- remove Griffel packages ([PR #21440](https://github.com/microsoft/fluentui/pull/21440) by olfedias@microsoft.com)
|
|
27
|
+
- Bump Fluent UI packages to 9.0.0-rc ([PR #21623](https://github.com/microsoft/fluentui/pull/21623) by lingfangao@hotmail.com)
|
|
28
|
+
- Updating based on changes to composition types. ([PR #20891](https://github.com/microsoft/fluentui/pull/20891) by Humberto.Morimoto@microsoft.com)
|
|
29
|
+
- Refactor component Slot typings ([PR #21518](https://github.com/microsoft/fluentui/pull/21518) by behowell@microsoft.com)
|
|
30
|
+
- Remove component's shorthandProps array ([PR #21134](https://github.com/microsoft/fluentui/pull/21134) by behowell@microsoft.com)
|
|
31
|
+
- Bump @fluentui/keyboard-keys to v9.0.0-rc.1 ([commit](https://github.com/microsoft/fluentui/commit/e6c855f6d9019d6c73668d15fc9bc3a13291a6c8) by beachball)
|
|
32
|
+
- Bump @fluentui/react-utilities to v9.0.0-rc.1 ([commit](https://github.com/microsoft/fluentui/commit/e6c855f6d9019d6c73668d15fc9bc3a13291a6c8) by beachball)
|
|
33
|
+
|
|
34
|
+
## [9.0.0-beta.4](https://github.com/microsoft/fluentui/tree/@fluentui/react-aria_v9.0.0-beta.4)
|
|
35
|
+
|
|
36
|
+
Thu, 25 Nov 2021 08:34:10 GMT
|
|
37
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-aria_v9.0.0-beta.3..@fluentui/react-aria_v9.0.0-beta.4)
|
|
38
|
+
|
|
39
|
+
### Changes
|
|
40
|
+
|
|
41
|
+
- Bump @fluentui/react-make-styles to v9.0.0-beta.4 ([PR #20762](https://github.com/microsoft/fluentui/pull/20762) by beachball)
|
|
42
|
+
- Bump @fluentui/react-utilities to v9.0.0-beta.4 ([PR #20762](https://github.com/microsoft/fluentui/pull/20762) by beachball)
|
|
43
|
+
- Bump @fluentui/jest-serializer-make-styles to v9.0.0-beta.4 ([PR #20762](https://github.com/microsoft/fluentui/pull/20762) by beachball)
|
|
44
|
+
- Bump @fluentui/babel-make-styles to v9.0.0-beta.4 ([PR #20762](https://github.com/microsoft/fluentui/pull/20762) by beachball)
|
|
45
|
+
|
|
46
|
+
## [9.0.0-beta.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-aria_v9.0.0-beta.3)
|
|
47
|
+
|
|
48
|
+
Fri, 12 Nov 2021 13:25:13 GMT
|
|
49
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-aria_v9.0.0-beta.2..@fluentui/react-aria_v9.0.0-beta.3)
|
|
11
50
|
|
|
12
51
|
### Changes
|
|
13
52
|
|
|
14
|
-
- Release nightly v9 ([commit](https://github.com/microsoft/fluentui/commit/142a7cc99189d401f2f98ff0ee2f1db652df8b72) by email not defined)
|
|
15
53
|
- Fixing events being fired when button is disabledFocusable ([PR #20342](https://github.com/microsoft/fluentui/pull/20342) by Humberto.Morimoto@microsoft.com)
|
|
16
54
|
- Updated beta and RC components to ES2019 ([PR #20405](https://github.com/microsoft/fluentui/pull/20405) by gcox@microsoft.com)
|
|
17
|
-
- Bump @fluentui/
|
|
18
|
-
- Bump @fluentui/react-
|
|
19
|
-
- Bump @fluentui/
|
|
20
|
-
- Bump @fluentui/jest-serializer-make-styles to v0.0.0-nightlyfe9829e48120211112.1 ([commit](https://github.com/microsoft/fluentui/commit/142a7cc99189d401f2f98ff0ee2f1db652df8b72) by beachball)
|
|
55
|
+
- Bump @fluentui/react-make-styles to v9.0.0-beta.3 ([PR #20583](https://github.com/microsoft/fluentui/pull/20583) by beachball)
|
|
56
|
+
- Bump @fluentui/react-utilities to v9.0.0-beta.3 ([PR #20583](https://github.com/microsoft/fluentui/pull/20583) by beachball)
|
|
57
|
+
- Bump @fluentui/jest-serializer-make-styles to v9.0.0-beta.3 ([PR #20583](https://github.com/microsoft/fluentui/pull/20583) by beachball)
|
|
21
58
|
|
|
22
59
|
## [9.0.0-beta.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-aria_v9.0.0-beta.2)
|
|
23
60
|
|
package/dist/react-aria.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import type { ResolveShorthandOptions } from '@fluentui/react-utilities';
|
|
5
|
-
import type { ShorthandProps } from '@fluentui/react-utilities';
|
|
1
|
+
import type { ExtractSlotProps } from '@fluentui/react-utilities';
|
|
2
|
+
import type { ResolveShorthandFunction } from '@fluentui/react-utilities';
|
|
3
|
+
import type { Slot } from '@fluentui/react-utilities';
|
|
6
4
|
|
|
7
|
-
export declare type
|
|
5
|
+
export declare type ARIAButtonSlotProps = ExtractSlotProps<Slot<'button', 'a'>> & {
|
|
8
6
|
disabled?: boolean;
|
|
9
7
|
disabledFocusable?: boolean;
|
|
10
8
|
};
|
|
@@ -12,17 +10,16 @@ export declare type ARIAButtonShorthandProps = IntrinsicShorthandProps<'button',
|
|
|
12
10
|
/**
|
|
13
11
|
* Merges disabled declaration with `aria-disabled`
|
|
14
12
|
*/
|
|
15
|
-
export declare function mergeARIADisabled(shorthand:
|
|
13
|
+
export declare function mergeARIADisabled(shorthand: {
|
|
16
14
|
'aria-disabled'?: string | boolean;
|
|
17
|
-
children?: React_2.ReactNode;
|
|
18
15
|
disabled?: boolean;
|
|
19
|
-
}
|
|
16
|
+
}): boolean;
|
|
20
17
|
|
|
21
18
|
/**
|
|
22
19
|
* Button keyboard handling, role, disabled and tabIndex implementation that ensures ARIA spec
|
|
23
20
|
* for multiple scenarios of shorthand properties. Ensuring 1st rule of ARIA for cases
|
|
24
21
|
* where no attribute addition is required.
|
|
25
22
|
*/
|
|
26
|
-
export declare
|
|
23
|
+
export declare const useARIAButton: ResolveShorthandFunction<ARIAButtonSlotProps>;
|
|
27
24
|
|
|
28
25
|
export { }
|
package/lib/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC","sourcesContent":["export * from './useARIAButton';\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare type
|
|
1
|
+
import type { ExtractSlotProps, ResolveShorthandFunction, Slot } from '@fluentui/react-utilities';
|
|
2
|
+
export declare type ARIAButtonSlotProps = ExtractSlotProps<Slot<'button', 'a'>> & {
|
|
3
3
|
disabled?: boolean;
|
|
4
4
|
disabledFocusable?: boolean;
|
|
5
5
|
};
|
|
@@ -8,4 +8,4 @@ export declare type ARIAButtonShorthandProps = IntrinsicShorthandProps<'button',
|
|
|
8
8
|
* for multiple scenarios of shorthand properties. Ensuring 1st rule of ARIA for cases
|
|
9
9
|
* where no attribute addition is required.
|
|
10
10
|
*/
|
|
11
|
-
export declare
|
|
11
|
+
export declare const useARIAButton: ResolveShorthandFunction<ARIAButtonSlotProps>;
|
|
@@ -6,7 +6,7 @@ import { resolveShorthand, useEventCallback } from '@fluentui/react-utilities';
|
|
|
6
6
|
* where no attribute addition is required.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
export
|
|
9
|
+
export const useARIAButton = (shorthand, options) => {
|
|
10
10
|
var _a;
|
|
11
11
|
|
|
12
12
|
const shorthandProps = resolveShorthand(shorthand, options);
|
|
@@ -75,7 +75,7 @@ export function useARIAButton(shorthand, options) {
|
|
|
75
75
|
// If a <button> tag is to be rendered we just need to set disabled and aria-disabled correctly
|
|
76
76
|
if (shorthandProps.as === 'button' || shorthandProps.as === undefined) {
|
|
77
77
|
shorthandProps.disabled = disabled && !disabledFocusable;
|
|
78
|
-
shorthandProps['aria-disabled'] = disabledFocusable; // Undefine events if disabledFocusable is passed in
|
|
78
|
+
shorthandProps['aria-disabled'] = disabledFocusable ? true : undefined; // Undefine events if disabledFocusable is passed in
|
|
79
79
|
|
|
80
80
|
if (disabledFocusable) {
|
|
81
81
|
shorthandProps.onClick = undefined;
|
|
@@ -99,5 +99,5 @@ export function useARIAButton(shorthand, options) {
|
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
return shorthandProps;
|
|
102
|
-
}
|
|
102
|
+
};
|
|
103
103
|
//# sourceMappingURL=useARIAButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["hooks/useARIAButton.ts"],"names":[],"mappings":"AAAA,SAAS,KAAT,EAAgB,KAAhB,QAA6B,yBAA7B;AACA,SAAS,gBAAT,EAA2B,gBAA3B,QAAmD,2BAAnD;AAQA;;;;AAIG;;AACH,OAAO,MAAM,aAAa,GAAkD,CAAC,SAAD,EAAY,OAAZ,KAAuB;;;AACjG,QAAM,cAAc,GAAG,gBAAgB,CAAC,SAAD,EAAY,OAAZ,CAAvC;AAEA,QAAM;AAAE,IAAA,QAAF;AAAY,IAAA,iBAAZ;AAA+B,IAAA,OAA/B;AAAwC,IAAA,SAAxC;AAAmD,IAAA,OAAnD;AAA4D,IAAA;AAA5D,MAA0E,cAAc,IAC5F,EADF;AAGA,QAAM,cAAc,GAAmC,gBAAgB,CAAC,EAAE,IAAG;AAC3E,QAAI,QAAQ,IAAI,iBAAhB,EAAmC;AACjC,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,eAAH;AACD,KAHD,MAGO;AACL,MAAA,OAAO,KAAA,IAAP,IAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAA,OAAO,CAAG,EAAH,CAAP;AACD;AACF,GAPsE,CAAvE;AASA,QAAM,gBAAgB,GAAqC,gBAAgB,CAAC,EAAE,IAAG;AAC/E,IAAA,SAAS,KAAA,IAAT,IAAA,SAAS,KAAA,KAAA,CAAT,GAAS,KAAA,CAAT,GAAA,SAAS,CAAG,EAAH,CAAT;;AAEA,QAAI,EAAE,CAAC,kBAAH,EAAJ,EAA6B;AAC3B;AACD;;AAED,UAAM,GAAG,GAAG,EAAE,CAAC,GAAf;;AAEA,QAAI,CAAC,QAAQ,IAAI,iBAAb,MAAoC,GAAG,KAAK,KAAR,IAAiB,GAAG,KAAK,KAA7D,CAAJ,EAAyE;AACvE,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,eAAH;AACA;AACD;;AAED,QAAI,GAAG,KAAK,KAAZ,EAAmB;AACjB,MAAA,EAAE,CAAC,cAAH;AACA;AACD,KAHD,CAKA;AALA,SAMK,IAAI,GAAG,KAAK,KAAZ,EAAmB;AACtB,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,aAAH,CAAiB,KAAjB;AACD;AACF,GAzB0E,CAA3E;AA2BA,QAAM,cAAc,GAAmC,gBAAgB,CAAC,EAAE,IAAG;AAC3E,IAAA,OAAO,KAAA,IAAP,IAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAA,OAAO,CAAG,EAAH,CAAP;;AAEA,QAAI,EAAE,CAAC,kBAAH,EAAJ,EAA6B;AAC3B;AACD;;AAED,UAAM,GAAG,GAAG,EAAE,CAAC,GAAf;;AAEA,QAAI,CAAC,QAAQ,IAAI,iBAAb,MAAoC,GAAG,KAAK,KAAR,IAAiB,GAAG,KAAK,KAA7D,CAAJ,EAAyE;AACvE,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,eAAH;AACA;AACD;;AAED,QAAI,GAAG,KAAK,KAAZ,EAAmB;AACjB,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,aAAH,CAAiB,KAAjB;AACD;AACF,GAnBsE,CAAvE;;AAqBA,MAAI,cAAJ,EAAoB;AAClB;AACA,QAAI,cAAc,CAAC,EAAf,KAAsB,QAAtB,IAAkC,cAAc,CAAC,EAAf,KAAsB,SAA5D,EAAuE;AACrE,MAAA,cAAc,CAAC,QAAf,GAA0B,QAAQ,IAAI,CAAC,iBAAvC;AACA,MAAA,cAAc,CAAC,eAAD,CAAd,GAAkC,iBAAiB,GAAG,IAAH,GAAU,SAA7D,CAFqE,CAIrE;;AACA,UAAI,iBAAJ,EAAuB;AACrB,QAAA,cAAc,CAAC,OAAf,GAAyB,SAAzB;AACA,QAAA,cAAc,CAAC,SAAf,GAA2B,SAA3B;AACA,QAAA,cAAc,CAAC,OAAf,GAAyB,SAAzB;AACD;AACF,KAVD,CAYA;AAZA,SAaK;AACH,aAAO,cAAc,CAAC,QAAtB;AACA,MAAA,cAAc,CAAC,eAAD,CAAd,GAAkC,QAAQ,IAAI,iBAA9C;AACC,MAAA,cAA6C,CAAC,IAA9C,GAAqD,QAAQ,GAC1D,SAD0D,GAEzD,cAA6C,CAAC,IAFlD;AAGD,MAAA,cAAc,CAAC,OAAf,GAAyB,cAAzB;AACA,MAAA,cAAc,CAAC,SAAf,GAA2B,gBAA3B;AACA,MAAA,cAAc,CAAC,OAAf,GAAyB,cAAzB;AACA,MAAA,cAAc,CAAC,IAAf,GAAsB,CAAA,EAAA,GAAA,cAAc,CAAC,IAAf,MAAmB,IAAnB,IAAmB,EAAA,KAAA,KAAA,CAAnB,GAAmB,EAAnB,GAAuB,QAA7C;AACA,MAAA,cAAc,CAAC,QAAf,GAA0B,QAAQ,IAAI,CAAC,iBAAb,GAAiC,SAAjC,GAA6C,QAAQ,KAAA,IAAR,IAAA,QAAQ,KAAA,KAAA,CAAR,GAAA,QAAA,GAAY,CAAnF;AACD,KA1BiB,CA4BlB;;;AACA,WAAO,cAAc,CAAC,iBAAtB;AACD;;AAED,SAAO,cAAP;AACD,CAhGM","sourcesContent":["import { Enter, Space } from '@fluentui/keyboard-keys';\nimport { resolveShorthand, useEventCallback } from '@fluentui/react-utilities';\nimport type { ExtractSlotProps, ResolveShorthandFunction, Slot } from '@fluentui/react-utilities';\n\nexport type ARIAButtonSlotProps = ExtractSlotProps<Slot<'button', 'a'>> & {\n disabled?: boolean;\n disabledFocusable?: boolean;\n};\n\n/**\n * Button keyboard handling, role, disabled and tabIndex implementation that ensures ARIA spec\n * for multiple scenarios of shorthand properties. Ensuring 1st rule of ARIA for cases\n * where no attribute addition is required.\n */\nexport const useARIAButton: ResolveShorthandFunction<ARIAButtonSlotProps> = (shorthand, options) => {\n const shorthandProps = resolveShorthand(shorthand, options);\n\n const { disabled, disabledFocusable, onClick, onKeyDown, onKeyUp, tabIndex } = (shorthandProps ||\n {}) as ARIAButtonSlotProps;\n\n const onClickHandler: ARIAButtonSlotProps['onClick'] = useEventCallback(ev => {\n if (disabled || disabledFocusable) {\n ev.preventDefault();\n ev.stopPropagation();\n } else {\n onClick?.(ev);\n }\n });\n\n const onKeyDownHandler: ARIAButtonSlotProps['onKeyDown'] = useEventCallback(ev => {\n onKeyDown?.(ev);\n\n if (ev.isDefaultPrevented()) {\n return;\n }\n\n const key = ev.key;\n\n if ((disabled || disabledFocusable) && (key === Enter || key === Space)) {\n ev.preventDefault();\n ev.stopPropagation();\n return;\n }\n\n if (key === Space) {\n ev.preventDefault();\n return;\n }\n\n // If enter is pressed, activate the button\n else if (key === Enter) {\n ev.preventDefault();\n ev.currentTarget.click();\n }\n });\n\n const onKeyupHandler: ARIAButtonSlotProps['onKeyUp'] = useEventCallback(ev => {\n onKeyUp?.(ev);\n\n if (ev.isDefaultPrevented()) {\n return;\n }\n\n const key = ev.key;\n\n if ((disabled || disabledFocusable) && (key === Enter || key === Space)) {\n ev.preventDefault();\n ev.stopPropagation();\n return;\n }\n\n if (key === Space) {\n ev.preventDefault();\n ev.currentTarget.click();\n }\n });\n\n if (shorthandProps) {\n // If a <button> tag is to be rendered we just need to set disabled and aria-disabled correctly\n if (shorthandProps.as === 'button' || shorthandProps.as === undefined) {\n shorthandProps.disabled = disabled && !disabledFocusable;\n shorthandProps['aria-disabled'] = disabledFocusable ? true : undefined;\n\n // Undefine events if disabledFocusable is passed in\n if (disabledFocusable) {\n shorthandProps.onClick = undefined;\n shorthandProps.onKeyDown = undefined;\n shorthandProps.onKeyUp = undefined;\n }\n }\n\n // If an <a> tag is to be rendered we have to remove disabled and type, and set aria-disabled, role and tabIndex.\n else {\n delete shorthandProps.disabled;\n shorthandProps['aria-disabled'] = disabled || disabledFocusable;\n (shorthandProps as JSX.IntrinsicElements['a']).href = disabled\n ? undefined\n : (shorthandProps as JSX.IntrinsicElements['a']).href;\n shorthandProps.onClick = onClickHandler;\n shorthandProps.onKeyDown = onKeyDownHandler;\n shorthandProps.onKeyUp = onKeyupHandler;\n shorthandProps.role = shorthandProps.role ?? 'button';\n shorthandProps.tabIndex = disabled && !disabledFocusable ? undefined : tabIndex ?? 0;\n }\n\n // Remove non-DOM disabledFocusable prop\n delete shorthandProps.disabledFocusable;\n }\n\n return shorthandProps;\n};\n"],"sourceRoot":"../src/"}
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC","sourcesContent":["export * from './hooks/index';\nexport * from './utils/index';\n"]}
|
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC","sourcesContent":["export * from './mergeARIADisabled';\n"]}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { ObjectShorthandProps } from '@fluentui/react-utilities';
|
|
3
1
|
/**
|
|
4
2
|
* Merges disabled declaration with `aria-disabled`
|
|
5
3
|
*/
|
|
6
|
-
export declare function mergeARIADisabled(shorthand:
|
|
4
|
+
export declare function mergeARIADisabled(shorthand: {
|
|
7
5
|
'aria-disabled'?: string | boolean;
|
|
8
|
-
children?: React.ReactNode;
|
|
9
6
|
disabled?: boolean;
|
|
10
|
-
}
|
|
7
|
+
}): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["utils/mergeARIADisabled.ts"],"names":[],"mappings":"AAAA;;AAEG;AACH,OAAM,SAAU,iBAAV,CAA4B,SAA5B,EAAiG;;;AACrG,QAAM,QAAQ,GAAG,CAAA,EAAA,GAAA,SAAS,CAAC,QAAV,MAAkB,IAAlB,IAAkB,EAAA,KAAA,KAAA,CAAlB,GAAkB,EAAlB,GAAsB,SAAS,CAAC,eAAD,CAAhD;;AACA,MAAI,OAAO,QAAP,KAAoB,QAAxB,EAAkC;AAChC,WAAO,QAAQ,KAAK,OAAb,GAAuB,KAAvB,GAA+B,IAAtC;AACD;;AACD,SAAO,QAAQ,KAAA,IAAR,IAAA,QAAQ,KAAA,KAAA,CAAR,GAAA,QAAA,GAAY,KAAnB;AACD","sourcesContent":["/**\n * Merges disabled declaration with `aria-disabled`\n */\nexport function mergeARIADisabled(shorthand: { 'aria-disabled'?: string | boolean; disabled?: boolean }) {\n const disabled = shorthand.disabled ?? shorthand['aria-disabled'];\n if (typeof disabled === 'string') {\n return disabled === 'false' ? false : true;\n }\n return disabled ?? false;\n}\n"],"sourceRoot":"../src/"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["hooks/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,iBAAA,CAAA,EAAA,OAAA","sourcesContent":["export * from './useARIAButton';\n"],"sourceRoot":"../src/"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare type
|
|
1
|
+
import type { ExtractSlotProps, ResolveShorthandFunction, Slot } from '@fluentui/react-utilities';
|
|
2
|
+
export declare type ARIAButtonSlotProps = ExtractSlotProps<Slot<'button', 'a'>> & {
|
|
3
3
|
disabled?: boolean;
|
|
4
4
|
disabledFocusable?: boolean;
|
|
5
5
|
};
|
|
@@ -8,4 +8,4 @@ export declare type ARIAButtonShorthandProps = IntrinsicShorthandProps<'button',
|
|
|
8
8
|
* for multiple scenarios of shorthand properties. Ensuring 1st rule of ARIA for cases
|
|
9
9
|
* where no attribute addition is required.
|
|
10
10
|
*/
|
|
11
|
-
export declare
|
|
11
|
+
export declare const useARIAButton: ResolveShorthandFunction<ARIAButtonSlotProps>;
|
|
@@ -15,7 +15,7 @@ const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
const useARIAButton = (shorthand, options) => {
|
|
19
19
|
var _a;
|
|
20
20
|
|
|
21
21
|
const shorthandProps = react_utilities_1.resolveShorthand(shorthand, options);
|
|
@@ -84,7 +84,7 @@ function useARIAButton(shorthand, options) {
|
|
|
84
84
|
// If a <button> tag is to be rendered we just need to set disabled and aria-disabled correctly
|
|
85
85
|
if (shorthandProps.as === 'button' || shorthandProps.as === undefined) {
|
|
86
86
|
shorthandProps.disabled = disabled && !disabledFocusable;
|
|
87
|
-
shorthandProps['aria-disabled'] = disabledFocusable; // Undefine events if disabledFocusable is passed in
|
|
87
|
+
shorthandProps['aria-disabled'] = disabledFocusable ? true : undefined; // Undefine events if disabledFocusable is passed in
|
|
88
88
|
|
|
89
89
|
if (disabledFocusable) {
|
|
90
90
|
shorthandProps.onClick = undefined;
|
|
@@ -108,7 +108,7 @@ function useARIAButton(shorthand, options) {
|
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
return shorthandProps;
|
|
111
|
-
}
|
|
111
|
+
};
|
|
112
112
|
|
|
113
113
|
exports.useARIAButton = useARIAButton;
|
|
114
114
|
//# sourceMappingURL=useARIAButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["hooks/useARIAButton.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,eAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;AAQA;;;;AAIG;;;AACI,MAAM,aAAa,GAAkD,CAAC,SAAD,EAAY,OAAZ,KAAuB;;;AACjG,QAAM,cAAc,GAAG,iBAAA,CAAA,gBAAA,CAAiB,SAAjB,EAA4B,OAA5B,CAAvB;AAEA,QAAM;AAAE,IAAA,QAAF;AAAY,IAAA,iBAAZ;AAA+B,IAAA,OAA/B;AAAwC,IAAA,SAAxC;AAAmD,IAAA,OAAnD;AAA4D,IAAA;AAA5D,MAA0E,cAAc,IAC5F,EADF;AAGA,QAAM,cAAc,GAAmC,iBAAA,CAAA,gBAAA,CAAiB,EAAE,IAAG;AAC3E,QAAI,QAAQ,IAAI,iBAAhB,EAAmC;AACjC,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,eAAH;AACD,KAHD,MAGO;AACL,MAAA,OAAO,KAAA,IAAP,IAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAA,OAAO,CAAG,EAAH,CAAP;AACD;AACF,GAPsD,CAAvD;AASA,QAAM,gBAAgB,GAAqC,iBAAA,CAAA,gBAAA,CAAiB,EAAE,IAAG;AAC/E,IAAA,SAAS,KAAA,IAAT,IAAA,SAAS,KAAA,KAAA,CAAT,GAAS,KAAA,CAAT,GAAA,SAAS,CAAG,EAAH,CAAT;;AAEA,QAAI,EAAE,CAAC,kBAAH,EAAJ,EAA6B;AAC3B;AACD;;AAED,UAAM,GAAG,GAAG,EAAE,CAAC,GAAf;;AAEA,QAAI,CAAC,QAAQ,IAAI,iBAAb,MAAoC,GAAG,KAAK,eAAA,CAAA,KAAR,IAAiB,GAAG,KAAK,eAAA,CAAA,KAA7D,CAAJ,EAAyE;AACvE,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,eAAH;AACA;AACD;;AAED,QAAI,GAAG,KAAK,eAAA,CAAA,KAAZ,EAAmB;AACjB,MAAA,EAAE,CAAC,cAAH;AACA;AACD,KAHD,CAKA;AALA,SAMK,IAAI,GAAG,KAAK,eAAA,CAAA,KAAZ,EAAmB;AACtB,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,aAAH,CAAiB,KAAjB;AACD;AACF,GAzB0D,CAA3D;AA2BA,QAAM,cAAc,GAAmC,iBAAA,CAAA,gBAAA,CAAiB,EAAE,IAAG;AAC3E,IAAA,OAAO,KAAA,IAAP,IAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAA,OAAO,CAAG,EAAH,CAAP;;AAEA,QAAI,EAAE,CAAC,kBAAH,EAAJ,EAA6B;AAC3B;AACD;;AAED,UAAM,GAAG,GAAG,EAAE,CAAC,GAAf;;AAEA,QAAI,CAAC,QAAQ,IAAI,iBAAb,MAAoC,GAAG,KAAK,eAAA,CAAA,KAAR,IAAiB,GAAG,KAAK,eAAA,CAAA,KAA7D,CAAJ,EAAyE;AACvE,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,eAAH;AACA;AACD;;AAED,QAAI,GAAG,KAAK,eAAA,CAAA,KAAZ,EAAmB;AACjB,MAAA,EAAE,CAAC,cAAH;AACA,MAAA,EAAE,CAAC,aAAH,CAAiB,KAAjB;AACD;AACF,GAnBsD,CAAvD;;AAqBA,MAAI,cAAJ,EAAoB;AAClB;AACA,QAAI,cAAc,CAAC,EAAf,KAAsB,QAAtB,IAAkC,cAAc,CAAC,EAAf,KAAsB,SAA5D,EAAuE;AACrE,MAAA,cAAc,CAAC,QAAf,GAA0B,QAAQ,IAAI,CAAC,iBAAvC;AACA,MAAA,cAAc,CAAC,eAAD,CAAd,GAAkC,iBAAiB,GAAG,IAAH,GAAU,SAA7D,CAFqE,CAIrE;;AACA,UAAI,iBAAJ,EAAuB;AACrB,QAAA,cAAc,CAAC,OAAf,GAAyB,SAAzB;AACA,QAAA,cAAc,CAAC,SAAf,GAA2B,SAA3B;AACA,QAAA,cAAc,CAAC,OAAf,GAAyB,SAAzB;AACD;AACF,KAVD,CAYA;AAZA,SAaK;AACH,aAAO,cAAc,CAAC,QAAtB;AACA,MAAA,cAAc,CAAC,eAAD,CAAd,GAAkC,QAAQ,IAAI,iBAA9C;AACC,MAAA,cAA6C,CAAC,IAA9C,GAAqD,QAAQ,GAC1D,SAD0D,GAEzD,cAA6C,CAAC,IAFlD;AAGD,MAAA,cAAc,CAAC,OAAf,GAAyB,cAAzB;AACA,MAAA,cAAc,CAAC,SAAf,GAA2B,gBAA3B;AACA,MAAA,cAAc,CAAC,OAAf,GAAyB,cAAzB;AACA,MAAA,cAAc,CAAC,IAAf,GAAsB,CAAA,EAAA,GAAA,cAAc,CAAC,IAAf,MAAmB,IAAnB,IAAmB,EAAA,KAAA,KAAA,CAAnB,GAAmB,EAAnB,GAAuB,QAA7C;AACA,MAAA,cAAc,CAAC,QAAf,GAA0B,QAAQ,IAAI,CAAC,iBAAb,GAAiC,SAAjC,GAA6C,QAAQ,KAAA,IAAR,IAAA,QAAQ,KAAA,KAAA,CAAR,GAAA,QAAA,GAAY,CAAnF;AACD,KA1BiB,CA4BlB;;;AACA,WAAO,cAAc,CAAC,iBAAtB;AACD;;AAED,SAAO,cAAP;AACD,CAhGM;;AAAM,OAAA,CAAA,aAAA,GAAa,aAAb","sourcesContent":["import { Enter, Space } from '@fluentui/keyboard-keys';\nimport { resolveShorthand, useEventCallback } from '@fluentui/react-utilities';\nimport type { ExtractSlotProps, ResolveShorthandFunction, Slot } from '@fluentui/react-utilities';\n\nexport type ARIAButtonSlotProps = ExtractSlotProps<Slot<'button', 'a'>> & {\n disabled?: boolean;\n disabledFocusable?: boolean;\n};\n\n/**\n * Button keyboard handling, role, disabled and tabIndex implementation that ensures ARIA spec\n * for multiple scenarios of shorthand properties. Ensuring 1st rule of ARIA for cases\n * where no attribute addition is required.\n */\nexport const useARIAButton: ResolveShorthandFunction<ARIAButtonSlotProps> = (shorthand, options) => {\n const shorthandProps = resolveShorthand(shorthand, options);\n\n const { disabled, disabledFocusable, onClick, onKeyDown, onKeyUp, tabIndex } = (shorthandProps ||\n {}) as ARIAButtonSlotProps;\n\n const onClickHandler: ARIAButtonSlotProps['onClick'] = useEventCallback(ev => {\n if (disabled || disabledFocusable) {\n ev.preventDefault();\n ev.stopPropagation();\n } else {\n onClick?.(ev);\n }\n });\n\n const onKeyDownHandler: ARIAButtonSlotProps['onKeyDown'] = useEventCallback(ev => {\n onKeyDown?.(ev);\n\n if (ev.isDefaultPrevented()) {\n return;\n }\n\n const key = ev.key;\n\n if ((disabled || disabledFocusable) && (key === Enter || key === Space)) {\n ev.preventDefault();\n ev.stopPropagation();\n return;\n }\n\n if (key === Space) {\n ev.preventDefault();\n return;\n }\n\n // If enter is pressed, activate the button\n else if (key === Enter) {\n ev.preventDefault();\n ev.currentTarget.click();\n }\n });\n\n const onKeyupHandler: ARIAButtonSlotProps['onKeyUp'] = useEventCallback(ev => {\n onKeyUp?.(ev);\n\n if (ev.isDefaultPrevented()) {\n return;\n }\n\n const key = ev.key;\n\n if ((disabled || disabledFocusable) && (key === Enter || key === Space)) {\n ev.preventDefault();\n ev.stopPropagation();\n return;\n }\n\n if (key === Space) {\n ev.preventDefault();\n ev.currentTarget.click();\n }\n });\n\n if (shorthandProps) {\n // If a <button> tag is to be rendered we just need to set disabled and aria-disabled correctly\n if (shorthandProps.as === 'button' || shorthandProps.as === undefined) {\n shorthandProps.disabled = disabled && !disabledFocusable;\n shorthandProps['aria-disabled'] = disabledFocusable ? true : undefined;\n\n // Undefine events if disabledFocusable is passed in\n if (disabledFocusable) {\n shorthandProps.onClick = undefined;\n shorthandProps.onKeyDown = undefined;\n shorthandProps.onKeyUp = undefined;\n }\n }\n\n // If an <a> tag is to be rendered we have to remove disabled and type, and set aria-disabled, role and tabIndex.\n else {\n delete shorthandProps.disabled;\n shorthandProps['aria-disabled'] = disabled || disabledFocusable;\n (shorthandProps as JSX.IntrinsicElements['a']).href = disabled\n ? undefined\n : (shorthandProps as JSX.IntrinsicElements['a']).href;\n shorthandProps.onClick = onClickHandler;\n shorthandProps.onKeyDown = onKeyDownHandler;\n shorthandProps.onKeyUp = onKeyupHandler;\n shorthandProps.role = shorthandProps.role ?? 'button';\n shorthandProps.tabIndex = disabled && !disabledFocusable ? undefined : tabIndex ?? 0;\n }\n\n // Remove non-DOM disabledFocusable prop\n delete shorthandProps.disabledFocusable;\n }\n\n return shorthandProps;\n};\n"],"sourceRoot":"../src/"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,eAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,eAAA,CAAA,EAAA,OAAA","sourcesContent":["export * from './hooks/index';\nexport * from './utils/index';\n"],"sourceRoot":"../src/"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["utils/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,qBAAA,CAAA,EAAA,OAAA","sourcesContent":["export * from './mergeARIADisabled';\n"],"sourceRoot":"../src/"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { ObjectShorthandProps } from '@fluentui/react-utilities';
|
|
3
1
|
/**
|
|
4
2
|
* Merges disabled declaration with `aria-disabled`
|
|
5
3
|
*/
|
|
6
|
-
export declare function mergeARIADisabled(shorthand:
|
|
4
|
+
export declare function mergeARIADisabled(shorthand: {
|
|
7
5
|
'aria-disabled'?: string | boolean;
|
|
8
|
-
children?: React.ReactNode;
|
|
9
6
|
disabled?: boolean;
|
|
10
|
-
}
|
|
7
|
+
}): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["utils/mergeARIADisabled.ts"],"names":[],"mappings":";;;;;;AAAA;;AAEG;;AACH,SAAgB,iBAAhB,CAAkC,SAAlC,EAAuG;;;AACrG,QAAM,QAAQ,GAAG,CAAA,EAAA,GAAA,SAAS,CAAC,QAAV,MAAkB,IAAlB,IAAkB,EAAA,KAAA,KAAA,CAAlB,GAAkB,EAAlB,GAAsB,SAAS,CAAC,eAAD,CAAhD;;AACA,MAAI,OAAO,QAAP,KAAoB,QAAxB,EAAkC;AAChC,WAAO,QAAQ,KAAK,OAAb,GAAuB,KAAvB,GAA+B,IAAtC;AACD;;AACD,SAAO,QAAQ,KAAA,IAAR,IAAA,QAAQ,KAAA,KAAA,CAAR,GAAA,QAAA,GAAY,KAAnB;AACD;;AAND,OAAA,CAAA,iBAAA,GAAA,iBAAA","sourcesContent":["/**\n * Merges disabled declaration with `aria-disabled`\n */\nexport function mergeARIADisabled(shorthand: { 'aria-disabled'?: string | boolean; disabled?: boolean }) {\n const disabled = shorthand.disabled ?? shorthand['aria-disabled'];\n if (typeof disabled === 'string') {\n return disabled === 'false' ? false : true;\n }\n return disabled ?? false;\n}\n"],"sourceRoot":"../src/"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui/react-aria",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-nightlyff78d1e27a20220217.1",
|
|
4
4
|
"description": "React helper to ensure ARIA",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -18,14 +18,14 @@
|
|
|
18
18
|
"just": "just-scripts",
|
|
19
19
|
"lint": "just-scripts lint",
|
|
20
20
|
"start": "yarn storybook",
|
|
21
|
-
"test": "jest",
|
|
21
|
+
"test": "jest --passWithNoTests",
|
|
22
22
|
"docs": "api-extractor run --config=config/api-extractor.local.json --local",
|
|
23
|
-
"build:local": "tsc -p . --module esnext --emitDeclarationOnly && node ../../scripts/typescript/normalize-import --output dist/react-aria/src && yarn docs",
|
|
24
|
-
"storybook": "
|
|
23
|
+
"build:local": "tsc -p ./tsconfig.lib.json --module esnext --emitDeclarationOnly && node ../../scripts/typescript/normalize-import --output ./dist/packages/react-aria/src && yarn docs",
|
|
24
|
+
"storybook": "node ../../scripts/storybook/runner",
|
|
25
|
+
"type-check": "tsc -b tsconfig.json"
|
|
25
26
|
},
|
|
26
27
|
"devDependencies": {
|
|
27
28
|
"@fluentui/eslint-plugin": "*",
|
|
28
|
-
"@fluentui/jest-serializer-make-styles": "0.0.0-nightlyfe9829e48120211112.1",
|
|
29
29
|
"@fluentui/react-conformance": "*",
|
|
30
30
|
"@fluentui/scripts": "^1.0.0",
|
|
31
31
|
"@types/enzyme": "3.10.3",
|
|
@@ -40,9 +40,8 @@
|
|
|
40
40
|
"react-test-renderer": "^16.3.0"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@fluentui/keyboard-keys": "0.0.0-
|
|
44
|
-
"@fluentui/react-
|
|
45
|
-
"@fluentui/react-utilities": "0.0.0-nightlyfe9829e48120211112.1",
|
|
43
|
+
"@fluentui/keyboard-keys": "0.0.0-nightlyff78d1e27a20220217.1",
|
|
44
|
+
"@fluentui/react-utilities": "0.0.0-nightlyff78d1e27a20220217.1",
|
|
46
45
|
"tslib": "^2.1.0"
|
|
47
46
|
},
|
|
48
47
|
"peerDependencies": {
|
|
@@ -52,7 +51,6 @@
|
|
|
52
51
|
"react-dom": ">=16.8.0 <18.0.0"
|
|
53
52
|
},
|
|
54
53
|
"beachball": {
|
|
55
|
-
"tag": "beta",
|
|
56
54
|
"disallowedChangeTypes": [
|
|
57
55
|
"major",
|
|
58
56
|
"minor",
|