@react-spectrum/button 3.0.0-nightly.2610 → 3.0.0-nightly.2668
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/dist/ar-AE.main.js +6 -0
- package/dist/ar-AE.main.js.map +1 -0
- package/dist/ar-AE.mjs +8 -0
- package/dist/ar-AE.module.js +8 -0
- package/dist/ar-AE.module.js.map +1 -0
- package/dist/bg-BG.main.js +6 -0
- package/dist/bg-BG.main.js.map +1 -0
- package/dist/bg-BG.mjs +8 -0
- package/dist/bg-BG.module.js +8 -0
- package/dist/bg-BG.module.js.map +1 -0
- package/dist/cs-CZ.main.js +6 -0
- package/dist/cs-CZ.main.js.map +1 -0
- package/dist/cs-CZ.mjs +8 -0
- package/dist/cs-CZ.module.js +8 -0
- package/dist/cs-CZ.module.js.map +1 -0
- package/dist/da-DK.main.js +6 -0
- package/dist/da-DK.main.js.map +1 -0
- package/dist/da-DK.mjs +8 -0
- package/dist/da-DK.module.js +8 -0
- package/dist/da-DK.module.js.map +1 -0
- package/dist/de-DE.main.js +6 -0
- package/dist/de-DE.main.js.map +1 -0
- package/dist/de-DE.mjs +8 -0
- package/dist/de-DE.module.js +8 -0
- package/dist/de-DE.module.js.map +1 -0
- package/dist/el-GR.main.js +6 -0
- package/dist/el-GR.main.js.map +1 -0
- package/dist/el-GR.mjs +8 -0
- package/dist/el-GR.module.js +8 -0
- package/dist/el-GR.module.js.map +1 -0
- package/dist/en-US.main.js +6 -0
- package/dist/en-US.main.js.map +1 -0
- package/dist/en-US.mjs +8 -0
- package/dist/en-US.module.js +8 -0
- package/dist/en-US.module.js.map +1 -0
- package/dist/es-ES.main.js +6 -0
- package/dist/es-ES.main.js.map +1 -0
- package/dist/es-ES.mjs +8 -0
- package/dist/es-ES.module.js +8 -0
- package/dist/es-ES.module.js.map +1 -0
- package/dist/et-EE.main.js +6 -0
- package/dist/et-EE.main.js.map +1 -0
- package/dist/et-EE.mjs +8 -0
- package/dist/et-EE.module.js +8 -0
- package/dist/et-EE.module.js.map +1 -0
- package/dist/fi-FI.main.js +6 -0
- package/dist/fi-FI.main.js.map +1 -0
- package/dist/fi-FI.mjs +8 -0
- package/dist/fi-FI.module.js +8 -0
- package/dist/fi-FI.module.js.map +1 -0
- package/dist/fr-FR.main.js +6 -0
- package/dist/fr-FR.main.js.map +1 -0
- package/dist/fr-FR.mjs +8 -0
- package/dist/fr-FR.module.js +8 -0
- package/dist/fr-FR.module.js.map +1 -0
- package/dist/he-IL.main.js +6 -0
- package/dist/he-IL.main.js.map +1 -0
- package/dist/he-IL.mjs +8 -0
- package/dist/he-IL.module.js +8 -0
- package/dist/he-IL.module.js.map +1 -0
- package/dist/hr-HR.main.js +6 -0
- package/dist/hr-HR.main.js.map +1 -0
- package/dist/hr-HR.mjs +8 -0
- package/dist/hr-HR.module.js +8 -0
- package/dist/hr-HR.module.js.map +1 -0
- package/dist/hu-HU.main.js +6 -0
- package/dist/hu-HU.main.js.map +1 -0
- package/dist/hu-HU.mjs +8 -0
- package/dist/hu-HU.module.js +8 -0
- package/dist/hu-HU.module.js.map +1 -0
- package/dist/import.mjs +131 -29
- package/dist/it-IT.main.js +6 -0
- package/dist/it-IT.main.js.map +1 -0
- package/dist/it-IT.mjs +8 -0
- package/dist/it-IT.module.js +8 -0
- package/dist/it-IT.module.js.map +1 -0
- package/dist/ja-JP.main.js +6 -0
- package/dist/ja-JP.main.js.map +1 -0
- package/dist/ja-JP.mjs +8 -0
- package/dist/ja-JP.module.js +8 -0
- package/dist/ja-JP.module.js.map +1 -0
- package/dist/ko-KR.main.js +6 -0
- package/dist/ko-KR.main.js.map +1 -0
- package/dist/ko-KR.mjs +8 -0
- package/dist/ko-KR.module.js +8 -0
- package/dist/ko-KR.module.js.map +1 -0
- package/dist/lt-LT.main.js +6 -0
- package/dist/lt-LT.main.js.map +1 -0
- package/dist/lt-LT.mjs +8 -0
- package/dist/lt-LT.module.js +8 -0
- package/dist/lt-LT.module.js.map +1 -0
- package/dist/lv-LV.main.js +6 -0
- package/dist/lv-LV.main.js.map +1 -0
- package/dist/lv-LV.mjs +8 -0
- package/dist/lv-LV.module.js +8 -0
- package/dist/lv-LV.module.js.map +1 -0
- package/dist/main.css +1771 -1
- package/dist/main.css.map +1 -0
- package/dist/main.js +130 -28
- package/dist/main.js.map +1 -1
- package/dist/module.js +131 -29
- package/dist/module.js.map +1 -1
- package/dist/nb-NO.main.js +6 -0
- package/dist/nb-NO.main.js.map +1 -0
- package/dist/nb-NO.mjs +8 -0
- package/dist/nb-NO.module.js +8 -0
- package/dist/nb-NO.module.js.map +1 -0
- package/dist/nl-NL.main.js +6 -0
- package/dist/nl-NL.main.js.map +1 -0
- package/dist/nl-NL.mjs +8 -0
- package/dist/nl-NL.module.js +8 -0
- package/dist/nl-NL.module.js.map +1 -0
- package/dist/pl-PL.main.js +6 -0
- package/dist/pl-PL.main.js.map +1 -0
- package/dist/pl-PL.mjs +8 -0
- package/dist/pl-PL.module.js +8 -0
- package/dist/pl-PL.module.js.map +1 -0
- package/dist/pt-BR.main.js +6 -0
- package/dist/pt-BR.main.js.map +1 -0
- package/dist/pt-BR.mjs +8 -0
- package/dist/pt-BR.module.js +8 -0
- package/dist/pt-BR.module.js.map +1 -0
- package/dist/pt-PT.main.js +6 -0
- package/dist/pt-PT.main.js.map +1 -0
- package/dist/pt-PT.mjs +8 -0
- package/dist/pt-PT.module.js +8 -0
- package/dist/pt-PT.module.js.map +1 -0
- package/dist/ro-RO.main.js +6 -0
- package/dist/ro-RO.main.js.map +1 -0
- package/dist/ro-RO.mjs +8 -0
- package/dist/ro-RO.module.js +8 -0
- package/dist/ro-RO.module.js.map +1 -0
- package/dist/ru-RU.main.js +6 -0
- package/dist/ru-RU.main.js.map +1 -0
- package/dist/ru-RU.mjs +8 -0
- package/dist/ru-RU.module.js +8 -0
- package/dist/ru-RU.module.js.map +1 -0
- package/dist/sk-SK.main.js +6 -0
- package/dist/sk-SK.main.js.map +1 -0
- package/dist/sk-SK.mjs +8 -0
- package/dist/sk-SK.module.js +8 -0
- package/dist/sk-SK.module.js.map +1 -0
- package/dist/sl-SI.main.js +6 -0
- package/dist/sl-SI.main.js.map +1 -0
- package/dist/sl-SI.mjs +8 -0
- package/dist/sl-SI.module.js +8 -0
- package/dist/sl-SI.module.js.map +1 -0
- package/dist/sr-SP.main.js +6 -0
- package/dist/sr-SP.main.js.map +1 -0
- package/dist/sr-SP.mjs +8 -0
- package/dist/sr-SP.module.js +8 -0
- package/dist/sr-SP.module.js.map +1 -0
- package/dist/sv-SE.main.js +6 -0
- package/dist/sv-SE.main.js.map +1 -0
- package/dist/sv-SE.mjs +8 -0
- package/dist/sv-SE.module.js +8 -0
- package/dist/sv-SE.module.js.map +1 -0
- package/dist/tr-TR.main.js +6 -0
- package/dist/tr-TR.main.js.map +1 -0
- package/dist/tr-TR.mjs +8 -0
- package/dist/tr-TR.module.js +8 -0
- package/dist/tr-TR.module.js.map +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/uk-UA.main.js +6 -0
- package/dist/uk-UA.main.js.map +1 -0
- package/dist/uk-UA.mjs +8 -0
- package/dist/uk-UA.module.js +8 -0
- package/dist/uk-UA.module.js.map +1 -0
- package/dist/zh-CN.main.js +6 -0
- package/dist/zh-CN.main.js.map +1 -0
- package/dist/zh-CN.mjs +8 -0
- package/dist/zh-CN.module.js +8 -0
- package/dist/zh-CN.module.js.map +1 -0
- package/dist/zh-TW.main.js +6 -0
- package/dist/zh-TW.main.js.map +1 -0
- package/dist/zh-TW.mjs +8 -0
- package/dist/zh-TW.module.js +8 -0
- package/dist/zh-TW.module.js.map +1 -0
- package/package.json +16 -16
- package/src/Button.tsx +38 -27
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,gEAAU,CAAC;AAC3C","sources":["packages/@react-spectrum/button/intl/ru-RU.json"],"sourcesContent":["{\n \"pending\": \"в ожидании\"\n}\n"],"names":[],"version":3,"file":"ru-RU.main.js.map"}
|
package/dist/ru-RU.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,gEAAU,CAAC;AAC3C","sources":["packages/@react-spectrum/button/intl/ru-RU.json"],"sourcesContent":["{\n \"pending\": \"в ожидании\"\n}\n"],"names":[],"version":3,"file":"ru-RU.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,iBAAQ,CAAC;AACzC","sources":["packages/@react-spectrum/button/intl/sk-SK.json"],"sourcesContent":["{\n \"pending\": \"čakajúce\"\n}\n"],"names":[],"version":3,"file":"sk-SK.main.js.map"}
|
package/dist/sk-SK.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,iBAAQ,CAAC;AACzC","sources":["packages/@react-spectrum/button/intl/sk-SK.json"],"sourcesContent":["{\n \"pending\": \"čakajúce\"\n}\n"],"names":[],"version":3,"file":"sk-SK.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,MAAM,CAAC;AACvC","sources":["packages/@react-spectrum/button/intl/sl-SI.json"],"sourcesContent":["{\n \"pending\": \"v teku\"\n}\n"],"names":[],"version":3,"file":"sl-SI.main.js.map"}
|
package/dist/sl-SI.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,MAAM,CAAC;AACvC","sources":["packages/@react-spectrum/button/intl/sl-SI.json"],"sourcesContent":["{\n \"pending\": \"v teku\"\n}\n"],"names":[],"version":3,"file":"sl-SI.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,cAAQ,CAAC;AACzC","sources":["packages/@react-spectrum/button/intl/sr-SP.json"],"sourcesContent":["{\n \"pending\": \"nerešeno\"\n}\n"],"names":[],"version":3,"file":"sr-SP.main.js.map"}
|
package/dist/sr-SP.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,cAAQ,CAAC;AACzC","sources":["packages/@react-spectrum/button/intl/sr-SP.json"],"sourcesContent":["{\n \"pending\": \"nerešeno\"\n}\n"],"names":[],"version":3,"file":"sr-SP.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,WAAQ,CAAC;AACzC","sources":["packages/@react-spectrum/button/intl/sv-SE.json"],"sourcesContent":["{\n \"pending\": \"väntande\"\n}\n"],"names":[],"version":3,"file":"sv-SE.main.js.map"}
|
package/dist/sv-SE.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,WAAQ,CAAC;AACzC","sources":["packages/@react-spectrum/button/intl/sv-SE.json"],"sourcesContent":["{\n \"pending\": \"väntande\"\n}\n"],"names":[],"version":3,"file":"sv-SE.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,SAAS,CAAC;AAC1C","sources":["packages/@react-spectrum/button/intl/tr-TR.json"],"sourcesContent":["{\n \"pending\": \"beklemede\"\n}\n"],"names":[],"version":3,"file":"tr-TR.main.js.map"}
|
package/dist/tr-TR.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,SAAS,CAAC;AAC1C","sources":["packages/@react-spectrum/button/intl/tr-TR.json"],"sourcesContent":["{\n \"pending\": \"beklemede\"\n}\n"],"names":[],"version":3,"file":"tr-TR.module.js.map"}
|
package/dist/types.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"mappings":";;;
|
1
|
+
{"mappings":";;;AA8LA;;;;GAIG;AACH,OAAA,IAAI;UAAgH,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;AC1GhK;;;GAGG;AACH,OAAA,IAAI,qLAA8C,CAAC;ACvEnD,0BAA2B,SAAQ,WAAW,EAAE,QAAQ,EAAE,UAAU;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAsDD,OAAA,IAAI,+JAA4C,CAAC;ACpBjD;;GAEG;AACH,OAAA,IAAI,mLAA4C,CAAC;AC1CjD,2BAA2B,CAAC,SAAS,WAAW,GAAG,QAAQ,CAAE,SAAQ,WAAW,EAAE,2BAA2B,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU;IACnI,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAmDD,OAAA,IAAI,qLAA4C,CAAC;ACQjD;;;GAGG;AACH,OAAA,IAAI,qLAA8C,CAAC;ACzEnD,YAAY,EAAC,yBAAyB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,yBAAyB,EAAC,MAAM,qBAAqB,CAAC","sources":["packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/Button.tsx","packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/ActionButton.tsx","packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/FieldButton.tsx","packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/LogicButton.tsx","packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/ClearButton.tsx","packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/ToggleButton.tsx","packages/@react-spectrum/button/src/packages/@react-spectrum/button/src/index.ts","packages/@react-spectrum/button/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/// <reference types=\"css-module-types\" />\nexport {Button} from './Button';\nexport {ActionButton} from './ActionButton';\nexport {FieldButton} from './FieldButton';\nexport {LogicButton} from './LogicButton';\nexport {ClearButton} from './ClearButton';\nexport {ToggleButton} from './ToggleButton';\nexport type {SpectrumActionButtonProps, SpectrumButtonProps, SpectrumLogicButtonProps, SpectrumToggleButtonProps} from '@react-types/button';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,8EAAY,CAAC;AAC7C","sources":["packages/@react-spectrum/button/intl/uk-UA.json"],"sourcesContent":["{\n \"pending\": \"в очікуванні\"\n}\n"],"names":[],"version":3,"file":"uk-UA.main.js.map"}
|
package/dist/uk-UA.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,8EAAY,CAAC;AAC7C","sources":["packages/@react-spectrum/button/intl/uk-UA.json"],"sourcesContent":["{\n \"pending\": \"в очікуванні\"\n}\n"],"names":[],"version":3,"file":"uk-UA.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,wBAAG,CAAC;AACpC","sources":["packages/@react-spectrum/button/intl/zh-CN.json"],"sourcesContent":["{\n \"pending\": \"待处理\"\n}\n"],"names":[],"version":3,"file":"zh-CN.main.js.map"}
|
package/dist/zh-CN.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,wBAAG,CAAC;AACpC","sources":["packages/@react-spectrum/button/intl/zh-CN.json"],"sourcesContent":["{\n \"pending\": \"待处理\"\n}\n"],"names":[],"version":3,"file":"zh-CN.module.js.map"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":"AAAA,iBAAiB;IAAG,WAAW,CAAC,wBAAG,CAAC;AACpC","sources":["packages/@react-spectrum/button/intl/zh-TW.json"],"sourcesContent":["{\n \"pending\": \"待處理\"\n}\n"],"names":[],"version":3,"file":"zh-TW.main.js.map"}
|
package/dist/zh-TW.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"mappings":";AAAA,4BAAiB;IAAG,WAAW,CAAC,wBAAG,CAAC;AACpC","sources":["packages/@react-spectrum/button/intl/zh-TW.json"],"sourcesContent":["{\n \"pending\": \"待處理\"\n}\n"],"names":[],"version":3,"file":"zh-TW.module.js.map"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@react-spectrum/button",
|
3
|
-
"version": "3.0.0-nightly.
|
3
|
+
"version": "3.0.0-nightly.2668+86b38c878",
|
4
4
|
"description": "Spectrum UI components in React",
|
5
5
|
"license": "Apache-2.0",
|
6
6
|
"main": "dist/main.js",
|
@@ -36,23 +36,23 @@
|
|
36
36
|
"url": "https://github.com/adobe/react-spectrum"
|
37
37
|
},
|
38
38
|
"dependencies": {
|
39
|
-
"@react-aria/button": "3.0.0-nightly.
|
40
|
-
"@react-aria/focus": "3.0.0-nightly.
|
41
|
-
"@react-aria/i18n": "3.0.0-nightly.
|
42
|
-
"@react-aria/interactions": "3.0.0-nightly.
|
43
|
-
"@react-aria/utils": "3.0.0-nightly.
|
44
|
-
"@react-spectrum/progress": "3.0.0-nightly.
|
45
|
-
"@react-spectrum/text": "3.5.
|
46
|
-
"@react-spectrum/utils": "3.0.0-nightly.
|
47
|
-
"@react-stately/toggle": "3.0.0-nightly.
|
48
|
-
"@react-types/button": "3.9.2-nightly.
|
49
|
-
"@react-types/shared": "3.0.0-nightly.
|
50
|
-
"@spectrum-icons/ui": "3.0.0-nightly.
|
39
|
+
"@react-aria/button": "3.0.0-nightly.2668+86b38c878",
|
40
|
+
"@react-aria/focus": "3.0.0-nightly.2668+86b38c878",
|
41
|
+
"@react-aria/i18n": "3.0.0-nightly.2668+86b38c878",
|
42
|
+
"@react-aria/interactions": "3.0.0-nightly.2668+86b38c878",
|
43
|
+
"@react-aria/utils": "3.0.0-nightly.2668+86b38c878",
|
44
|
+
"@react-spectrum/progress": "3.0.0-nightly.2668+86b38c878",
|
45
|
+
"@react-spectrum/text": "3.5.2-nightly.4380+86b38c878",
|
46
|
+
"@react-spectrum/utils": "3.0.0-nightly.2668+86b38c878",
|
47
|
+
"@react-stately/toggle": "3.0.0-nightly.2668+86b38c878",
|
48
|
+
"@react-types/button": "3.9.2-nightly.4380+86b38c878",
|
49
|
+
"@react-types/shared": "3.0.0-nightly.2668+86b38c878",
|
50
|
+
"@spectrum-icons/ui": "3.0.0-nightly.2668+86b38c878",
|
51
51
|
"@swc/helpers": "^0.5.0"
|
52
52
|
},
|
53
53
|
"devDependencies": {
|
54
|
-
"@adobe/spectrum-css-temp": "3.0.0-nightly.
|
55
|
-
"@react-spectrum/test-utils": "3.0.0-nightly.
|
54
|
+
"@adobe/spectrum-css-temp": "3.0.0-nightly.2668+86b38c878",
|
55
|
+
"@react-spectrum/test-utils": "3.0.0-nightly.2668+86b38c878"
|
56
56
|
},
|
57
57
|
"peerDependencies": {
|
58
58
|
"@react-spectrum/provider": "^3.0.0",
|
@@ -61,5 +61,5 @@
|
|
61
61
|
"publishConfig": {
|
62
62
|
"access": "public"
|
63
63
|
},
|
64
|
-
"gitHead": "
|
64
|
+
"gitHead": "86b38c87868ce7f262e0df905e5ac4eb2653791d"
|
65
65
|
}
|
package/src/Button.tsx
CHANGED
@@ -22,7 +22,7 @@ import {FocusableRef} from '@react-types/shared';
|
|
22
22
|
import {FocusRing} from '@react-aria/focus';
|
23
23
|
// @ts-ignore
|
24
24
|
import intlMessages from '../intl/*.json';
|
25
|
-
import {mergeProps, useId} from '@react-aria/utils';
|
25
|
+
import {isAppleDevice, isFirefox, mergeProps, useId} from '@react-aria/utils';
|
26
26
|
import {ProgressCircle} from '@react-spectrum/progress';
|
27
27
|
import React, {ElementType, ReactElement, useEffect, useState} from 'react';
|
28
28
|
import {SpectrumButtonProps} from '@react-types/button';
|
@@ -69,7 +69,7 @@ function Button<T extends ElementType = 'button'>(props: SpectrumButtonProps<T>,
|
|
69
69
|
let {hoverProps, isHovered} = useHover({isDisabled});
|
70
70
|
let [isFocused, onFocusChange] = useState(false);
|
71
71
|
let {focusProps} = useFocus({onFocusChange, isDisabled});
|
72
|
-
let stringFormatter = useLocalizedStringFormatter(intlMessages);
|
72
|
+
let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/button');
|
73
73
|
let {styleProps} = useStyleProps(otherProps);
|
74
74
|
let hasLabel = useHasChild(`.${styles['spectrum-Button-label']}`, domRef);
|
75
75
|
let hasIcon = useHasChild(`.${styles['spectrum-Icon']}`, domRef);
|
@@ -78,10 +78,9 @@ function Button<T extends ElementType = 'button'>(props: SpectrumButtonProps<T>,
|
|
78
78
|
let [isProgressVisible, setIsProgressVisible] = useState(false);
|
79
79
|
let backupButtonId = useId();
|
80
80
|
let buttonId = buttonProps.id || backupButtonId;
|
81
|
-
let spinnerId = useId();
|
82
|
-
let textId = useId();
|
83
81
|
let iconId = useId();
|
84
|
-
let
|
82
|
+
let textId = useId();
|
83
|
+
let spinnerId = useId();
|
85
84
|
|
86
85
|
useEffect(() => {
|
87
86
|
let timeout: ReturnType<typeof setTimeout>;
|
@@ -108,6 +107,13 @@ function Button<T extends ElementType = 'button'>(props: SpectrumButtonProps<T>,
|
|
108
107
|
staticColor = 'white';
|
109
108
|
}
|
110
109
|
|
110
|
+
const isPendingAriaLiveLabel = `${hasAriaLabel ? buttonProps['aria-label'] : ''} ${stringFormatter.format('pending')}`.trim();
|
111
|
+
const isPendingAriaLiveLabelledby = hasAriaLabel ? (buttonProps['aria-labelledby']?.replace(buttonId, spinnerId) ?? spinnerId) : `${hasIcon ? iconId : ''} ${hasLabel ? textId : ''} ${spinnerId}`.trim();
|
112
|
+
|
113
|
+
let ariaLive: 'off' | 'polite' | 'assertive' = 'polite';
|
114
|
+
if (isAppleDevice() && (!hasAriaLabel || isFirefox())) {
|
115
|
+
ariaLive = 'off';
|
116
|
+
}
|
111
117
|
return (
|
112
118
|
<FocusRing focusRingClass={classNames(styles, 'focus-ring')} autoFocus={autoFocus}>
|
113
119
|
<Element
|
@@ -119,9 +125,8 @@ function Button<T extends ElementType = 'button'>(props: SpectrumButtonProps<T>,
|
|
119
125
|
data-style={style}
|
120
126
|
data-static-color={staticColor || undefined}
|
121
127
|
aria-disabled={isPending ? 'true' : undefined}
|
122
|
-
aria-label={isPending ?
|
123
|
-
aria-labelledby={isPending ?
|
124
|
-
aria-live={isPending && isFocused ? 'polite' : undefined}
|
128
|
+
aria-label={isPending ? isPendingAriaLiveLabel : buttonProps['aria-label']}
|
129
|
+
aria-labelledby={isPending ? isPendingAriaLiveLabelledby : buttonProps['aria-labelledby']}
|
125
130
|
className={
|
126
131
|
classNames(
|
127
132
|
styles,
|
@@ -151,25 +156,31 @@ function Button<T extends ElementType = 'button'>(props: SpectrumButtonProps<T>,
|
|
151
156
|
{typeof children === 'string'
|
152
157
|
? <Text>{children}</Text>
|
153
158
|
: children}
|
154
|
-
{isPending &&
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
{isPending &&
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
159
|
+
{isPending && (
|
160
|
+
<div
|
161
|
+
aria-hidden="true"
|
162
|
+
style={{visibility: isProgressVisible ? 'visible' : 'hidden'}}
|
163
|
+
className={classNames(styles, 'spectrum-Button-circleLoader')}>
|
164
|
+
<ProgressCircle
|
165
|
+
aria-label={isPendingAriaLiveLabel}
|
166
|
+
isIndeterminate
|
167
|
+
size="S"
|
168
|
+
staticColor={staticColor} />
|
169
|
+
</div>
|
170
|
+
)}
|
171
|
+
{isPending &&
|
172
|
+
<>
|
173
|
+
<div aria-live={isFocused ? ariaLive : 'off'}>
|
174
|
+
{isProgressVisible &&
|
175
|
+
<div role="img" aria-labelledby={isPendingAriaLiveLabelledby} />
|
176
|
+
}
|
177
|
+
</div>
|
178
|
+
{/* Adding the element here with the same labels as the button itself causes aria-live to pick up the change in Safari.
|
179
|
+
Safari with VO unfortunately doesn't announce changes to *all* of its labels specifically for button
|
180
|
+
https://a11ysupport.io/tests/tech__html__button-name-change#assertion-aria-aria-label_attribute-convey_name_change-html-button_element-vo_macos-safari
|
181
|
+
The aria-live may cause extra announcements in other browsers. */}
|
182
|
+
<div id={spinnerId} role="img" aria-label={isPendingAriaLiveLabel} />
|
183
|
+
</>
|
173
184
|
}
|
174
185
|
</SlotProvider>
|
175
186
|
</Element>
|