@react-spectrum/s2 0.5.0 → 0.6.0
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/Accordion.cjs +5 -8
- package/dist/Accordion.cjs.map +1 -1
- package/dist/Accordion.css +2 -2
- package/dist/Accordion.css.map +1 -1
- package/dist/Accordion.mjs +5 -8
- package/dist/Accordion.mjs.map +1 -1
- package/dist/ActionBar.cjs +264 -0
- package/dist/ActionBar.cjs.map +1 -0
- package/dist/ActionBar.css +267 -0
- package/dist/ActionBar.css.map +1 -0
- package/dist/ActionBar.mjs +257 -0
- package/dist/ActionBar.mjs.map +1 -0
- package/dist/ActionButton.cjs +121 -147
- package/dist/ActionButton.cjs.map +1 -1
- package/dist/ActionButton.css +133 -153
- package/dist/ActionButton.css.map +1 -1
- package/dist/ActionButton.mjs +122 -148
- package/dist/ActionButton.mjs.map +1 -1
- package/dist/ActionButtonGroup.cjs +6 -9
- package/dist/ActionButtonGroup.cjs.map +1 -1
- package/dist/ActionButtonGroup.css +3 -3
- package/dist/ActionButtonGroup.css.map +1 -1
- package/dist/ActionButtonGroup.mjs +6 -9
- package/dist/ActionButtonGroup.mjs.map +1 -1
- package/dist/ActionMenu.cjs +2 -5
- package/dist/ActionMenu.cjs.map +1 -1
- package/dist/ActionMenu.mjs +2 -5
- package/dist/ActionMenu.mjs.map +1 -1
- package/dist/AlertDialog.cjs +2 -5
- package/dist/AlertDialog.cjs.map +1 -1
- package/dist/AlertDialog.css.map +1 -1
- package/dist/AlertDialog.mjs +2 -5
- package/dist/AlertDialog.mjs.map +1 -1
- package/dist/Avatar.cjs +12 -15
- package/dist/Avatar.cjs.map +1 -1
- package/dist/Avatar.css +11 -11
- package/dist/Avatar.css.map +1 -1
- package/dist/Avatar.mjs +12 -15
- package/dist/Avatar.mjs.map +1 -1
- package/dist/AvatarGroup.cjs +99 -102
- package/dist/AvatarGroup.cjs.map +1 -1
- package/dist/AvatarGroup.css +31 -31
- package/dist/AvatarGroup.css.map +1 -1
- package/dist/AvatarGroup.mjs +99 -102
- package/dist/AvatarGroup.mjs.map +1 -1
- package/dist/Badge.cjs +99 -102
- package/dist/Badge.cjs.map +1 -1
- package/dist/Badge.css +76 -76
- package/dist/Badge.css.map +1 -1
- package/dist/Badge.mjs +99 -102
- package/dist/Badge.mjs.map +1 -1
- package/dist/Breadcrumbs.cjs +93 -94
- package/dist/Breadcrumbs.cjs.map +1 -1
- package/dist/Breadcrumbs.css +70 -64
- package/dist/Breadcrumbs.css.map +1 -1
- package/dist/Breadcrumbs.mjs +94 -95
- package/dist/Breadcrumbs.mjs.map +1 -1
- package/dist/Button.cjs +305 -278
- package/dist/Button.cjs.map +1 -1
- package/dist/Button.css +255 -182
- package/dist/Button.css.map +1 -1
- package/dist/Button.mjs +307 -280
- package/dist/Button.mjs.map +1 -1
- package/dist/ButtonGroup.cjs +17 -20
- package/dist/ButtonGroup.cjs.map +1 -1
- package/dist/ButtonGroup.css +11 -11
- package/dist/ButtonGroup.css.map +1 -1
- package/dist/ButtonGroup.mjs +18 -21
- package/dist/ButtonGroup.mjs.map +1 -1
- package/dist/Card.cjs +167 -167
- package/dist/Card.css +121 -121
- package/dist/Card.mjs +167 -167
- package/dist/CardView.cjs +47 -21
- package/dist/CardView.cjs.map +1 -1
- package/dist/CardView.css +39 -15
- package/dist/CardView.css.map +1 -1
- package/dist/CardView.mjs +49 -23
- package/dist/CardView.mjs.map +1 -1
- package/dist/CenterBaseline.cjs +1 -1
- package/dist/CenterBaseline.css +2 -2
- package/dist/CenterBaseline.mjs +1 -1
- package/dist/Checkbox.cjs +58 -62
- package/dist/Checkbox.cjs.map +1 -1
- package/dist/Checkbox.css +54 -54
- package/dist/Checkbox.css.map +1 -1
- package/dist/Checkbox.mjs +59 -63
- package/dist/Checkbox.mjs.map +1 -1
- package/dist/CheckboxGroup.cjs +43 -45
- package/dist/CheckboxGroup.cjs.map +1 -1
- package/dist/CheckboxGroup.css +32 -32
- package/dist/CheckboxGroup.css.map +1 -1
- package/dist/CheckboxGroup.mjs +44 -46
- package/dist/CheckboxGroup.mjs.map +1 -1
- package/dist/ClearButton.cjs +7 -8
- package/dist/ClearButton.cjs.map +1 -1
- package/dist/ClearButton.css +5 -5
- package/dist/ClearButton.css.map +1 -1
- package/dist/ClearButton.mjs +7 -8
- package/dist/ClearButton.mjs.map +1 -1
- package/dist/CloseButton.cjs +40 -53
- package/dist/CloseButton.cjs.map +1 -1
- package/dist/CloseButton.css +45 -49
- package/dist/CloseButton.css.map +1 -1
- package/dist/CloseButton.mjs +40 -53
- package/dist/CloseButton.mjs.map +1 -1
- package/dist/ColorArea.cjs +12 -15
- package/dist/ColorArea.cjs.map +1 -1
- package/dist/ColorArea.css +10 -10
- package/dist/ColorArea.css.map +1 -1
- package/dist/ColorArea.mjs +12 -15
- package/dist/ColorArea.mjs.map +1 -1
- package/dist/ColorField.cjs +31 -34
- package/dist/ColorField.cjs.map +1 -1
- package/dist/ColorField.css +24 -24
- package/dist/ColorField.css.map +1 -1
- package/dist/ColorField.mjs +32 -35
- package/dist/ColorField.mjs.map +1 -1
- package/dist/ColorHandle.cjs +11 -11
- package/dist/ColorHandle.css +19 -19
- package/dist/ColorHandle.mjs +11 -11
- package/dist/ColorSlider.cjs +43 -46
- package/dist/ColorSlider.cjs.map +1 -1
- package/dist/ColorSlider.css +43 -43
- package/dist/ColorSlider.css.map +1 -1
- package/dist/ColorSlider.mjs +44 -47
- package/dist/ColorSlider.mjs.map +1 -1
- package/dist/ColorSwatch.cjs +8 -11
- package/dist/ColorSwatch.cjs.map +1 -1
- package/dist/ColorSwatch.css +14 -14
- package/dist/ColorSwatch.css.map +1 -1
- package/dist/ColorSwatch.mjs +9 -12
- package/dist/ColorSwatch.mjs.map +1 -1
- package/dist/ColorSwatchPicker.cjs +15 -18
- package/dist/ColorSwatchPicker.cjs.map +1 -1
- package/dist/ColorSwatchPicker.css +33 -33
- package/dist/ColorSwatchPicker.css.map +1 -1
- package/dist/ColorSwatchPicker.mjs +15 -18
- package/dist/ColorSwatchPicker.mjs.map +1 -1
- package/dist/ColorWheel.cjs +18 -21
- package/dist/ColorWheel.cjs.map +1 -1
- package/dist/ColorWheel.css +15 -15
- package/dist/ColorWheel.css.map +1 -1
- package/dist/ColorWheel.mjs +18 -21
- package/dist/ColorWheel.mjs.map +1 -1
- package/dist/ComboBox.cjs +61 -61
- package/dist/ComboBox.cjs.map +1 -1
- package/dist/ComboBox.css +52 -52
- package/dist/ComboBox.css.map +1 -1
- package/dist/ComboBox.mjs +62 -62
- package/dist/ComboBox.mjs.map +1 -1
- package/dist/Content.cjs +12 -19
- package/dist/Content.cjs.map +1 -1
- package/dist/Content.mjs +12 -19
- package/dist/Content.mjs.map +1 -1
- package/dist/ContextualHelp.cjs +7 -10
- package/dist/ContextualHelp.cjs.map +1 -1
- package/dist/ContextualHelp.css +23 -23
- package/dist/ContextualHelp.css.map +1 -1
- package/dist/ContextualHelp.mjs +7 -10
- package/dist/ContextualHelp.mjs.map +1 -1
- package/dist/CustomDialog.cjs +10 -13
- package/dist/CustomDialog.cjs.map +1 -1
- package/dist/CustomDialog.css +9 -9
- package/dist/CustomDialog.css.map +1 -1
- package/dist/CustomDialog.mjs +10 -13
- package/dist/CustomDialog.mjs.map +1 -1
- package/dist/Dialog.cjs +12 -16
- package/dist/Dialog.cjs.map +1 -1
- package/dist/Dialog.css +39 -39
- package/dist/Dialog.css.map +1 -1
- package/dist/Dialog.mjs +12 -16
- package/dist/Dialog.mjs.map +1 -1
- package/dist/Disclosure.cjs +60 -69
- package/dist/Disclosure.cjs.map +1 -1
- package/dist/Disclosure.css +49 -49
- package/dist/Disclosure.css.map +1 -1
- package/dist/Disclosure.mjs +61 -70
- package/dist/Disclosure.mjs.map +1 -1
- package/dist/Divider.cjs +15 -19
- package/dist/Divider.cjs.map +1 -1
- package/dist/Divider.css +18 -18
- package/dist/Divider.css.map +1 -1
- package/dist/Divider.mjs +15 -19
- package/dist/Divider.mjs.map +1 -1
- package/dist/DropZone.cjs +30 -33
- package/dist/DropZone.cjs.map +1 -1
- package/dist/DropZone.css +26 -26
- package/dist/DropZone.css.map +1 -1
- package/dist/DropZone.mjs +30 -33
- package/dist/DropZone.mjs.map +1 -1
- package/dist/Field.cjs +133 -131
- package/dist/Field.cjs.map +1 -1
- package/dist/Field.css +76 -84
- package/dist/Field.css.map +1 -1
- package/dist/Field.mjs +133 -131
- package/dist/Field.mjs.map +1 -1
- package/dist/Form.cjs +6 -9
- package/dist/Form.cjs.map +1 -1
- package/dist/Form.css +3 -3
- package/dist/Form.css.map +1 -1
- package/dist/Form.mjs +6 -9
- package/dist/Form.mjs.map +1 -1
- package/dist/FullscreenDialog.cjs +7 -10
- package/dist/FullscreenDialog.cjs.map +1 -1
- package/dist/FullscreenDialog.css +54 -54
- package/dist/FullscreenDialog.css.map +1 -1
- package/dist/FullscreenDialog.mjs +7 -10
- package/dist/FullscreenDialog.mjs.map +1 -1
- package/dist/IllustratedMessage.cjs +128 -132
- package/dist/IllustratedMessage.cjs.map +1 -1
- package/dist/IllustratedMessage.css +58 -58
- package/dist/IllustratedMessage.css.map +1 -1
- package/dist/IllustratedMessage.mjs +128 -132
- package/dist/IllustratedMessage.mjs.map +1 -1
- package/dist/Image.cjs +12 -13
- package/dist/Image.cjs.map +1 -1
- package/dist/Image.css +11 -11
- package/dist/Image.css.map +1 -1
- package/dist/Image.mjs +13 -14
- package/dist/Image.mjs.map +1 -1
- package/dist/InlineAlert.cjs +75 -84
- package/dist/InlineAlert.cjs.map +1 -1
- package/dist/InlineAlert.css +59 -63
- package/dist/InlineAlert.css.map +1 -1
- package/dist/InlineAlert.mjs +76 -85
- package/dist/InlineAlert.mjs.map +1 -1
- package/dist/Link.cjs +36 -39
- package/dist/Link.cjs.map +1 -1
- package/dist/Link.css +42 -42
- package/dist/Link.css.map +1 -1
- package/dist/Link.mjs +37 -40
- package/dist/Link.mjs.map +1 -1
- package/dist/Menu.cjs +322 -234
- package/dist/Menu.cjs.map +1 -1
- package/dist/Menu.css +118 -116
- package/dist/Menu.css.map +1 -1
- package/dist/Menu.mjs +323 -235
- package/dist/Menu.mjs.map +1 -1
- package/dist/Meter.cjs +66 -70
- package/dist/Meter.cjs.map +1 -1
- package/dist/Meter.css +69 -73
- package/dist/Meter.css.map +1 -1
- package/dist/Meter.mjs +66 -70
- package/dist/Meter.mjs.map +1 -1
- package/dist/Modal.cjs +36 -45
- package/dist/Modal.cjs.map +1 -1
- package/dist/Modal.css +48 -72
- package/dist/Modal.css.map +1 -1
- package/dist/Modal.mjs +37 -46
- package/dist/Modal.mjs.map +1 -1
- package/dist/NumberField.cjs +66 -69
- package/dist/NumberField.cjs.map +1 -1
- package/dist/NumberField.css +70 -70
- package/dist/NumberField.css.map +1 -1
- package/dist/NumberField.mjs +67 -70
- package/dist/NumberField.mjs.map +1 -1
- package/dist/Picker.cjs +122 -122
- package/dist/Picker.cjs.map +1 -1
- package/dist/Picker.css +84 -84
- package/dist/Picker.css.map +1 -1
- package/dist/Picker.mjs +123 -123
- package/dist/Picker.mjs.map +1 -1
- package/dist/Popover.cjs +47 -69
- package/dist/Popover.cjs.map +1 -1
- package/dist/Popover.css +55 -126
- package/dist/Popover.css.map +1 -1
- package/dist/Popover.mjs +48 -70
- package/dist/Popover.mjs.map +1 -1
- package/dist/ProgressBar.cjs +85 -87
- package/dist/ProgressBar.cjs.map +1 -1
- package/dist/ProgressBar.css +81 -85
- package/dist/ProgressBar.css.map +1 -1
- package/dist/ProgressBar.mjs +85 -87
- package/dist/ProgressBar.mjs.map +1 -1
- package/dist/ProgressCircle.cjs +16 -18
- package/dist/ProgressCircle.cjs.map +1 -1
- package/dist/ProgressCircle.css +16 -16
- package/dist/ProgressCircle.css.map +1 -1
- package/dist/ProgressCircle.mjs +16 -18
- package/dist/ProgressCircle.mjs.map +1 -1
- package/dist/Provider.cjs +5 -5
- package/dist/Provider.css +6 -6
- package/dist/Provider.mjs +5 -5
- package/dist/Radio.cjs +54 -58
- package/dist/Radio.cjs.map +1 -1
- package/dist/Radio.css +50 -50
- package/dist/Radio.css.map +1 -1
- package/dist/Radio.mjs +55 -59
- package/dist/Radio.mjs.map +1 -1
- package/dist/RadioGroup.cjs +39 -43
- package/dist/RadioGroup.cjs.map +1 -1
- package/dist/RadioGroup.css +32 -32
- package/dist/RadioGroup.css.map +1 -1
- package/dist/RadioGroup.mjs +40 -44
- package/dist/RadioGroup.mjs.map +1 -1
- package/dist/RangeSlider.cjs +2 -3
- package/dist/RangeSlider.cjs.map +1 -1
- package/dist/RangeSlider.mjs +3 -4
- package/dist/RangeSlider.mjs.map +1 -1
- package/dist/SearchField.cjs +34 -37
- package/dist/SearchField.cjs.map +1 -1
- package/dist/SearchField.css +30 -30
- package/dist/SearchField.css.map +1 -1
- package/dist/SearchField.mjs +35 -38
- package/dist/SearchField.mjs.map +1 -1
- package/dist/SegmentedControl.cjs +67 -73
- package/dist/SegmentedControl.cjs.map +1 -1
- package/dist/SegmentedControl.css +63 -63
- package/dist/SegmentedControl.css.map +1 -1
- package/dist/SegmentedControl.mjs +68 -74
- package/dist/SegmentedControl.mjs.map +1 -1
- package/dist/Slider.cjs +111 -112
- package/dist/Slider.cjs.map +1 -1
- package/dist/Slider.css +87 -87
- package/dist/Slider.css.map +1 -1
- package/dist/Slider.mjs +112 -113
- package/dist/Slider.mjs.map +1 -1
- package/dist/StatusLight.cjs +28 -32
- package/dist/StatusLight.cjs.map +1 -1
- package/dist/StatusLight.css +26 -26
- package/dist/StatusLight.css.map +1 -1
- package/dist/StatusLight.mjs +28 -32
- package/dist/StatusLight.mjs.map +1 -1
- package/dist/Switch.cjs +56 -60
- package/dist/Switch.cjs.map +1 -1
- package/dist/Switch.css +48 -48
- package/dist/Switch.css.map +1 -1
- package/dist/Switch.mjs +57 -61
- package/dist/Switch.mjs.map +1 -1
- package/dist/TableView.cjs +209 -196
- package/dist/TableView.cjs.map +1 -1
- package/dist/TableView.css +95 -95
- package/dist/TableView.css.map +1 -1
- package/dist/TableView.mjs +211 -198
- package/dist/TableView.mjs.map +1 -1
- package/dist/Tabs.cjs +59 -62
- package/dist/Tabs.cjs.map +1 -1
- package/dist/Tabs.css +42 -42
- package/dist/Tabs.css.map +1 -1
- package/dist/Tabs.mjs +59 -62
- package/dist/Tabs.mjs.map +1 -1
- package/dist/TagGroup.cjs +122 -124
- package/dist/TagGroup.cjs.map +1 -1
- package/dist/TagGroup.css +93 -93
- package/dist/TagGroup.css.map +1 -1
- package/dist/TagGroup.mjs +122 -124
- package/dist/TagGroup.mjs.map +1 -1
- package/dist/TextField.cjs +44 -55
- package/dist/TextField.cjs.map +1 -1
- package/dist/TextField.css +33 -33
- package/dist/TextField.css.map +1 -1
- package/dist/TextField.mjs +45 -56
- package/dist/TextField.mjs.map +1 -1
- package/dist/ToggleButton.cjs +6 -9
- package/dist/ToggleButton.cjs.map +1 -1
- package/dist/ToggleButton.css +7 -7
- package/dist/ToggleButton.css.map +1 -1
- package/dist/ToggleButton.mjs +6 -9
- package/dist/ToggleButton.mjs.map +1 -1
- package/dist/ToggleButtonGroup.cjs +2 -5
- package/dist/ToggleButtonGroup.cjs.map +1 -1
- package/dist/ToggleButtonGroup.mjs +2 -5
- package/dist/ToggleButtonGroup.mjs.map +1 -1
- package/dist/Tooltip.cjs +48 -48
- package/dist/Tooltip.cjs.map +1 -1
- package/dist/Tooltip.css +55 -70
- package/dist/Tooltip.css.map +1 -1
- package/dist/Tooltip.mjs +49 -49
- package/dist/Tooltip.mjs.map +1 -1
- package/dist/ar-AE.cjs +10 -2
- package/dist/ar-AE.cjs.map +1 -1
- package/dist/ar-AE.mjs +10 -2
- package/dist/ar-AE.mjs.map +1 -1
- package/dist/bg-BG.cjs +11 -2
- package/dist/bg-BG.cjs.map +1 -1
- package/dist/bg-BG.mjs +11 -2
- package/dist/bg-BG.mjs.map +1 -1
- package/dist/cs-CZ.cjs +7 -2
- package/dist/cs-CZ.cjs.map +1 -1
- package/dist/cs-CZ.mjs +7 -2
- package/dist/cs-CZ.mjs.map +1 -1
- package/dist/da-DK.cjs +12 -4
- package/dist/da-DK.cjs.map +1 -1
- package/dist/da-DK.mjs +12 -4
- package/dist/da-DK.mjs.map +1 -1
- package/dist/de-DE.cjs +11 -2
- package/dist/de-DE.cjs.map +1 -1
- package/dist/de-DE.mjs +11 -2
- package/dist/de-DE.mjs.map +1 -1
- package/dist/el-GR.cjs +11 -2
- package/dist/el-GR.cjs.map +1 -1
- package/dist/el-GR.mjs +11 -2
- package/dist/el-GR.mjs.map +1 -1
- package/dist/en-US.cjs +8 -0
- package/dist/en-US.cjs.map +1 -1
- package/dist/en-US.mjs +8 -0
- package/dist/en-US.mjs.map +1 -1
- package/dist/es-ES.cjs +11 -2
- package/dist/es-ES.cjs.map +1 -1
- package/dist/es-ES.mjs +11 -2
- package/dist/es-ES.mjs.map +1 -1
- package/dist/et-EE.cjs +10 -2
- package/dist/et-EE.cjs.map +1 -1
- package/dist/et-EE.mjs +10 -2
- package/dist/et-EE.mjs.map +1 -1
- package/dist/fi-FI.cjs +10 -2
- package/dist/fi-FI.cjs.map +1 -1
- package/dist/fi-FI.mjs +10 -2
- package/dist/fi-FI.mjs.map +1 -1
- package/dist/fr-FR.cjs +11 -2
- package/dist/fr-FR.cjs.map +1 -1
- package/dist/fr-FR.mjs +11 -2
- package/dist/fr-FR.mjs.map +1 -1
- package/dist/he-IL.cjs +11 -2
- package/dist/he-IL.cjs.map +1 -1
- package/dist/he-IL.mjs +11 -2
- package/dist/he-IL.mjs.map +1 -1
- package/dist/hr-HR.cjs +7 -2
- package/dist/hr-HR.cjs.map +1 -1
- package/dist/hr-HR.mjs +7 -2
- package/dist/hr-HR.mjs.map +1 -1
- package/dist/hu-HU.cjs +10 -2
- package/dist/hu-HU.cjs.map +1 -1
- package/dist/hu-HU.mjs +10 -2
- package/dist/hu-HU.mjs.map +1 -1
- package/dist/it-IT.cjs +11 -2
- package/dist/it-IT.cjs.map +1 -1
- package/dist/it-IT.mjs +11 -2
- package/dist/it-IT.mjs.map +1 -1
- package/dist/ja-JP.cjs +10 -2
- package/dist/ja-JP.cjs.map +1 -1
- package/dist/ja-JP.mjs +10 -2
- package/dist/ja-JP.mjs.map +1 -1
- package/dist/ko-KR.cjs +12 -4
- package/dist/ko-KR.cjs.map +1 -1
- package/dist/ko-KR.mjs +12 -4
- package/dist/ko-KR.mjs.map +1 -1
- package/dist/lt-LT.cjs +9 -4
- package/dist/lt-LT.cjs.map +1 -1
- package/dist/lt-LT.mjs +9 -4
- package/dist/lt-LT.mjs.map +1 -1
- package/dist/lv-LV.cjs +11 -3
- package/dist/lv-LV.cjs.map +1 -1
- package/dist/lv-LV.mjs +11 -3
- package/dist/lv-LV.mjs.map +1 -1
- package/dist/main.cjs +4 -0
- package/dist/main.cjs.map +1 -1
- package/dist/module.mjs +3 -1
- package/dist/module.mjs.map +1 -1
- package/dist/nb-NO.cjs +9 -4
- package/dist/nb-NO.cjs.map +1 -1
- package/dist/nb-NO.mjs +9 -4
- package/dist/nb-NO.mjs.map +1 -1
- package/dist/nl-NL.cjs +10 -2
- package/dist/nl-NL.cjs.map +1 -1
- package/dist/nl-NL.mjs +10 -2
- package/dist/nl-NL.mjs.map +1 -1
- package/dist/pl-PL.cjs +8 -3
- package/dist/pl-PL.cjs.map +1 -1
- package/dist/pl-PL.mjs +8 -3
- package/dist/pl-PL.mjs.map +1 -1
- package/dist/pt-BR.cjs +11 -2
- package/dist/pt-BR.cjs.map +1 -1
- package/dist/pt-BR.mjs +11 -2
- package/dist/pt-BR.mjs.map +1 -1
- package/dist/pt-PT.cjs +11 -2
- package/dist/pt-PT.cjs.map +1 -1
- package/dist/pt-PT.mjs +11 -2
- package/dist/pt-PT.mjs.map +1 -1
- package/dist/ro-RO.cjs +12 -3
- package/dist/ro-RO.cjs.map +1 -1
- package/dist/ro-RO.mjs +12 -3
- package/dist/ro-RO.mjs.map +1 -1
- package/dist/ru-RU.cjs +7 -2
- package/dist/ru-RU.cjs.map +1 -1
- package/dist/ru-RU.mjs +7 -2
- package/dist/ru-RU.mjs.map +1 -1
- package/dist/sk-SK.cjs +7 -2
- package/dist/sk-SK.cjs.map +1 -1
- package/dist/sk-SK.mjs +7 -2
- package/dist/sk-SK.mjs.map +1 -1
- package/dist/sl-SI.cjs +7 -2
- package/dist/sl-SI.cjs.map +1 -1
- package/dist/sl-SI.mjs +7 -2
- package/dist/sl-SI.mjs.map +1 -1
- package/dist/sr-SP.cjs +7 -2
- package/dist/sr-SP.cjs.map +1 -1
- package/dist/sr-SP.mjs +7 -2
- package/dist/sr-SP.mjs.map +1 -1
- package/dist/sv-SE.cjs +11 -2
- package/dist/sv-SE.cjs.map +1 -1
- package/dist/sv-SE.mjs +11 -2
- package/dist/sv-SE.mjs.map +1 -1
- package/dist/tr-TR.cjs +10 -2
- package/dist/tr-TR.cjs.map +1 -1
- package/dist/tr-TR.mjs +10 -2
- package/dist/tr-TR.mjs.map +1 -1
- package/dist/types.d.ts +109 -89
- package/dist/types.d.ts.map +1 -1
- package/dist/uk-UA.cjs +7 -2
- package/dist/uk-UA.cjs.map +1 -1
- package/dist/uk-UA.mjs +7 -2
- package/dist/uk-UA.mjs.map +1 -1
- package/dist/zh-CN.cjs +10 -2
- package/dist/zh-CN.cjs.map +1 -1
- package/dist/zh-CN.mjs +10 -2
- package/dist/zh-CN.mjs.map +1 -1
- package/dist/zh-TW.cjs +10 -2
- package/dist/zh-TW.cjs.map +1 -1
- package/dist/zh-TW.mjs +10 -2
- package/dist/zh-TW.mjs.map +1 -1
- package/icons/Skeleton.cjs +2 -2
- package/icons/Skeleton.css +5 -5
- package/icons/Skeleton.mjs +2 -2
- package/package.json +20 -21
- package/src/Accordion.tsx +5 -8
- package/src/ActionBar.tsx +229 -0
- package/src/ActionButton.tsx +25 -52
- package/src/ActionButtonGroup.tsx +9 -11
- package/src/ActionMenu.tsx +5 -8
- package/src/AlertDialog.tsx +5 -8
- package/src/Avatar.tsx +5 -8
- package/src/AvatarGroup.tsx +5 -8
- package/src/Badge.tsx +5 -8
- package/src/Breadcrumbs.tsx +6 -12
- package/src/Button.tsx +197 -154
- package/src/ButtonGroup.tsx +5 -8
- package/src/CardView.tsx +37 -12
- package/src/Checkbox.tsx +6 -9
- package/src/CheckboxGroup.tsx +6 -9
- package/src/ClearButton.tsx +2 -5
- package/src/CloseButton.tsx +21 -31
- package/src/ColorArea.tsx +5 -8
- package/src/ColorField.tsx +5 -8
- package/src/ColorSlider.tsx +5 -8
- package/src/ColorSwatch.tsx +5 -8
- package/src/ColorSwatchPicker.tsx +5 -8
- package/src/ColorWheel.tsx +5 -8
- package/src/ComboBox.tsx +7 -9
- package/src/Content.tsx +12 -30
- package/src/ContextualHelp.tsx +5 -8
- package/src/CustomDialog.tsx +5 -8
- package/src/Dialog.tsx +6 -9
- package/src/Disclosure.tsx +15 -24
- package/src/Divider.tsx +16 -25
- package/src/DropZone.tsx +5 -8
- package/src/Field.tsx +25 -32
- package/src/Form.tsx +5 -8
- package/src/FullscreenDialog.tsx +5 -8
- package/src/IllustratedMessage.tsx +6 -9
- package/src/Image.tsx +3 -6
- package/src/InlineAlert.tsx +6 -10
- package/src/Link.tsx +13 -21
- package/src/Menu.tsx +69 -33
- package/src/Meter.tsx +13 -23
- package/src/Modal.tsx +22 -52
- package/src/NumberField.tsx +5 -8
- package/src/Picker.tsx +7 -9
- package/src/Popover.tsx +30 -104
- package/src/ProgressBar.tsx +14 -24
- package/src/ProgressCircle.tsx +18 -24
- package/src/Radio.tsx +6 -9
- package/src/RadioGroup.tsx +6 -9
- package/src/RangeSlider.tsx +2 -5
- package/src/SearchField.tsx +5 -8
- package/src/SegmentedControl.tsx +10 -16
- package/src/Slider.tsx +2 -5
- package/src/StatusLight.tsx +6 -9
- package/src/Switch.tsx +6 -9
- package/src/TableView.tsx +53 -50
- package/src/Tabs.tsx +5 -8
- package/src/TagGroup.tsx +7 -14
- package/src/TextField.tsx +20 -28
- package/src/ToggleButton.tsx +7 -9
- package/src/ToggleButtonGroup.tsx +5 -8
- package/src/Tooltip.tsx +30 -51
- package/src/bar-utils.ts +3 -10
- package/src/index.ts +2 -0
- package/src/style-utils.ts +15 -8
- package/style/dist/main.cjs +1 -0
- package/style/dist/main.cjs.map +1 -1
- package/style/dist/module.mjs +2 -2
- package/style/dist/module.mjs.map +1 -1
- package/style/dist/spectrum-theme.cjs +72 -5
- package/style/dist/spectrum-theme.cjs.map +1 -1
- package/style/dist/spectrum-theme.mjs +72 -6
- package/style/dist/spectrum-theme.mjs.map +1 -1
- package/style/dist/style-macro.cjs +13 -1
- package/style/dist/style-macro.cjs.map +1 -1
- package/style/dist/style-macro.mjs +13 -1
- package/style/dist/style-macro.mjs.map +1 -1
- package/style/dist/types.d.ts +50 -29
- package/style/dist/types.d.ts.map +1 -1
- package/style/index.ts +1 -1
- package/style/spectrum-theme.ts +72 -7
- package/style/style-macro.ts +20 -4
- package/style/tokens.ts +30 -0
- package/style/types.ts +1 -1
package/src/Divider.tsx
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import {ContextValue, Separator as RACSeparator, SeparatorProps as RACSeparatorProps} from 'react-aria-components';
|
|
14
14
|
import {createContext, forwardRef} from 'react';
|
|
15
15
|
import {DOMRef, DOMRefValue} from '@react-types/shared';
|
|
16
|
-
import {getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};
|
|
16
|
+
import {getAllowedOverrides, staticColor, StyleProps} from './style-utils' with {type: 'macro'};
|
|
17
17
|
import {style} from '../style' with {type: 'macro'};
|
|
18
18
|
import {useDOMRef} from '@react-spectrum/utils';
|
|
19
19
|
import {useSpectrumContextProps} from './useSpectrumContextProps';
|
|
@@ -34,7 +34,7 @@ interface DividerSpectrumProps {
|
|
|
34
34
|
*/
|
|
35
35
|
orientation?: 'horizontal' | 'vertical',
|
|
36
36
|
/** The static color style to apply. Useful when the Divider appears over a color background. */
|
|
37
|
-
staticColor?: 'white' | 'black'
|
|
37
|
+
staticColor?: 'white' | 'black' | 'auto'
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
// TODO: allow overriding height (only when orientation is vertical)??
|
|
@@ -42,25 +42,18 @@ export interface DividerProps extends DividerSpectrumProps, Omit<RACSeparatorPro
|
|
|
42
42
|
|
|
43
43
|
export const DividerContext = createContext<ContextValue<DividerProps, DOMRefValue>>(null);
|
|
44
44
|
|
|
45
|
-
export const divider = style<DividerSpectrumProps>({
|
|
45
|
+
export const divider = style<DividerSpectrumProps & {isStaticColor: boolean}>({
|
|
46
|
+
...staticColor(),
|
|
46
47
|
alignSelf: 'stretch',
|
|
47
48
|
backgroundColor: {
|
|
48
49
|
default: 'gray-200',
|
|
49
50
|
size: {
|
|
50
51
|
L: 'gray-800'
|
|
51
52
|
},
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
L: 'transparent-white-800'
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
black: {
|
|
60
|
-
default: 'transparent-black-200',
|
|
61
|
-
size: {
|
|
62
|
-
L: 'transparent-black-800'
|
|
63
|
-
}
|
|
53
|
+
isStaticColor: {
|
|
54
|
+
default: 'transparent-overlay-200',
|
|
55
|
+
size: {
|
|
56
|
+
L: 'transparent-overlay-800'
|
|
64
57
|
}
|
|
65
58
|
},
|
|
66
59
|
forcedColors: 'ButtonBorder'
|
|
@@ -93,7 +86,11 @@ export const divider = style<DividerSpectrumProps>({
|
|
|
93
86
|
}
|
|
94
87
|
}, getAllowedOverrides());
|
|
95
88
|
|
|
96
|
-
|
|
89
|
+
/**
|
|
90
|
+
* Dividers bring clarity to a layout by grouping and dividing content in close proximity.
|
|
91
|
+
* They can also be used to establish rhythm and hierarchy.
|
|
92
|
+
*/
|
|
93
|
+
export const Divider = /*#__PURE__*/ forwardRef(function Divider(props: DividerProps, ref: DOMRef) {
|
|
97
94
|
[props, ref] = useSpectrumContextProps(props, ref, DividerContext);
|
|
98
95
|
let domRef = useDOMRef(ref);
|
|
99
96
|
|
|
@@ -105,14 +102,8 @@ function Divider(props: DividerProps, ref: DOMRef) {
|
|
|
105
102
|
className={(props.UNSAFE_className || '') + divider({
|
|
106
103
|
size: props.size || 'M',
|
|
107
104
|
orientation: props.orientation || 'horizontal',
|
|
108
|
-
staticColor: props.staticColor
|
|
105
|
+
staticColor: props.staticColor,
|
|
106
|
+
isStaticColor: !!props.staticColor
|
|
109
107
|
}, props.styles)} />
|
|
110
108
|
);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Dividers bring clarity to a layout by grouping and dividing content in close proximity.
|
|
115
|
-
* They can also be used to establish rhythm and hierarchy.
|
|
116
|
-
*/
|
|
117
|
-
let _Divider = /*#__PURE__*/ forwardRef(Divider);
|
|
118
|
-
export {_Divider as Divider};
|
|
109
|
+
});
|
package/src/DropZone.tsx
CHANGED
|
@@ -89,7 +89,10 @@ const banner = style({
|
|
|
89
89
|
padding: '[calc((self(minHeight))/1.5)]'
|
|
90
90
|
});
|
|
91
91
|
|
|
92
|
-
|
|
92
|
+
/**
|
|
93
|
+
* A drop zone is an area into which one or multiple objects can be dragged and dropped.
|
|
94
|
+
*/
|
|
95
|
+
export const DropZone = /*#__PURE__*/ forwardRef(function DropZone(props: DropZoneProps, ref: DOMRef<HTMLDivElement>) {
|
|
93
96
|
let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');
|
|
94
97
|
[props, ref] = useSpectrumContextProps(props, ref, DropZoneContext);
|
|
95
98
|
let {
|
|
@@ -119,10 +122,4 @@ function DropZone(props: DropZoneProps, ref: DOMRef<HTMLDivElement>) {
|
|
|
119
122
|
)}
|
|
120
123
|
</RACDropZone>
|
|
121
124
|
);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* A drop zone is an area into which one or multiple objects can be dragged and dropped.
|
|
126
|
-
*/
|
|
127
|
-
let _DropZone = /*#__PURE__*/ forwardRef(DropZone);
|
|
128
|
-
export {_DropZone as DropZone};
|
|
125
|
+
});
|
package/src/Field.tsx
CHANGED
|
@@ -36,13 +36,13 @@ interface FieldLabelProps extends Omit<LabelProps, 'className' | 'style' | 'chil
|
|
|
36
36
|
labelAlign?: Alignment,
|
|
37
37
|
labelPosition?: 'top' | 'side',
|
|
38
38
|
includeNecessityIndicatorInAccessibilityName?: boolean,
|
|
39
|
-
staticColor?: 'white' | 'black',
|
|
39
|
+
staticColor?: 'white' | 'black' | 'auto',
|
|
40
40
|
contextualHelp?: ReactNode,
|
|
41
41
|
isQuiet?: boolean,
|
|
42
42
|
children?: ReactNode
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
function FieldLabel(props: FieldLabelProps, ref: DOMRef<HTMLLabelElement>) {
|
|
45
|
+
export const FieldLabel = forwardRef(function FieldLabel(props: FieldLabelProps, ref: DOMRef<HTMLLabelElement>) {
|
|
46
46
|
let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');
|
|
47
47
|
let {
|
|
48
48
|
isDisabled,
|
|
@@ -98,7 +98,7 @@ function FieldLabel(props: FieldLabelProps, ref: DOMRef<HTMLLabelElement>) {
|
|
|
98
98
|
{...labelProps}
|
|
99
99
|
ref={domRef}
|
|
100
100
|
style={UNSAFE_style}
|
|
101
|
-
className={UNSAFE_className + mergeStyles(style(fieldLabel())({labelPosition, isDisabled, size, staticColor}), props.styles)}>
|
|
101
|
+
className={UNSAFE_className + mergeStyles(style(fieldLabel())({labelPosition, isDisabled, size, isStaticColor: !!staticColor}), props.styles)}>
|
|
102
102
|
{props.children}
|
|
103
103
|
{(isRequired || necessityIndicator === 'label') && (
|
|
104
104
|
<span className={style({whiteSpace: 'nowrap'})}>
|
|
@@ -127,28 +127,27 @@ function FieldLabel(props: FieldLabelProps, ref: DOMRef<HTMLLabelElement>) {
|
|
|
127
127
|
)}
|
|
128
128
|
</Label>
|
|
129
129
|
{contextualHelp && (
|
|
130
|
-
<
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
130
|
+
<span className={style({whiteSpace: 'nowrap'})}>
|
|
131
|
+
|
|
132
|
+
<CenterBaseline
|
|
133
|
+
styles={style({
|
|
134
|
+
display: 'inline-flex',
|
|
135
|
+
height: 0
|
|
136
|
+
})}>
|
|
137
|
+
<ContextualHelpContext.Provider
|
|
138
|
+
value={{
|
|
139
|
+
id: contextualHelpId,
|
|
140
|
+
'aria-labelledby': labelProps?.id ? `${labelProps.id} ${contextualHelpId}` : undefined,
|
|
141
|
+
size: (size === 'L' || size === 'XL') ? 'S' : 'XS'
|
|
142
|
+
}}>
|
|
143
|
+
{contextualHelp}
|
|
144
|
+
</ContextualHelpContext.Provider>
|
|
145
|
+
</CenterBaseline>
|
|
146
|
+
</span>
|
|
145
147
|
)}
|
|
146
148
|
</div>
|
|
147
149
|
);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
let _FieldLabel = forwardRef(FieldLabel);
|
|
151
|
-
export {_FieldLabel as FieldLabel};
|
|
150
|
+
});
|
|
152
151
|
|
|
153
152
|
interface FieldGroupProps extends Omit<GroupProps, 'className' | 'style' | 'children'>, UnsafeStyles {
|
|
154
153
|
size?: 'S' | 'M' | 'L' | 'XL',
|
|
@@ -193,7 +192,7 @@ const fieldGroupStyles = style({
|
|
|
193
192
|
}
|
|
194
193
|
});
|
|
195
194
|
|
|
196
|
-
function FieldGroup(props: FieldGroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
195
|
+
export const FieldGroup = forwardRef(function FieldGroup(props: FieldGroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
197
196
|
return (
|
|
198
197
|
<Group
|
|
199
198
|
ref={ref}
|
|
@@ -217,14 +216,11 @@ function FieldGroup(props: FieldGroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
|
217
216
|
props.styles
|
|
218
217
|
)} />
|
|
219
218
|
);
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
let _FieldGroup = forwardRef(FieldGroup);
|
|
223
|
-
export {_FieldGroup as FieldGroup};
|
|
219
|
+
});
|
|
224
220
|
|
|
225
221
|
export interface InputProps extends Omit<RACInputProps, 'className' | 'style'>, StyleProps {}
|
|
226
222
|
|
|
227
|
-
function Input(props: InputProps, ref: ForwardedRef<HTMLInputElement>) {
|
|
223
|
+
export const Input = forwardRef(function Input(props: InputProps, ref: ForwardedRef<HTMLInputElement>) {
|
|
228
224
|
let {UNSAFE_className = '', UNSAFE_style, styles, ...otherProps} = props;
|
|
229
225
|
return (
|
|
230
226
|
<RACInput
|
|
@@ -247,10 +243,7 @@ function Input(props: InputProps, ref: ForwardedRef<HTMLInputElement>) {
|
|
|
247
243
|
truncate: true
|
|
248
244
|
}), styles)} />
|
|
249
245
|
);
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
let _Input = forwardRef(Input);
|
|
253
|
-
export {_Input as Input};
|
|
246
|
+
});
|
|
254
247
|
|
|
255
248
|
interface HelpTextProps extends FieldErrorProps {
|
|
256
249
|
size?: 'S' | 'M' | 'L' | 'XL',
|
package/src/Form.tsx
CHANGED
|
@@ -62,7 +62,10 @@ export function useFormProps<T extends FormStyleProps>(props: T): T {
|
|
|
62
62
|
}, [ctx, props, isSkeleton]);
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
/**
|
|
66
|
+
* Forms allow users to enter data that can be submitted while providing alignment and styling for form fields.
|
|
67
|
+
*/
|
|
68
|
+
export const Form = /*#__PURE__*/ forwardRef(function Form(props: FormProps, ref: DOMRef<HTMLFormElement>) {
|
|
66
69
|
let {
|
|
67
70
|
labelPosition = 'top',
|
|
68
71
|
labelAlign,
|
|
@@ -114,10 +117,4 @@ function Form(props: FormProps, ref: DOMRef<HTMLFormElement>) {
|
|
|
114
117
|
</FormContext.Provider>
|
|
115
118
|
</RACForm>
|
|
116
119
|
);
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* Forms allow users to enter data that can be submitted while providing alignment and styling for form fields.
|
|
121
|
-
*/
|
|
122
|
-
let _Form = /*#__PURE__*/ forwardRef(Form);
|
|
123
|
-
export {_Form as Form};
|
|
120
|
+
});
|
package/src/FullscreenDialog.tsx
CHANGED
|
@@ -117,7 +117,10 @@ export const dialogInner = style({
|
|
|
117
117
|
overflow: 'auto'
|
|
118
118
|
});
|
|
119
119
|
|
|
120
|
-
|
|
120
|
+
/**
|
|
121
|
+
* Takeover dialogs are large types of dialogs. They use the totality of the screen and should be used for modal experiences with complex workflows.
|
|
122
|
+
*/
|
|
123
|
+
export const FullscreenDialog = forwardRef(function FullscreenDialog(props: FullscreenDialogProps, ref: DOMRef) {
|
|
121
124
|
let {variant = 'fullscreen', isKeyboardDismissDisabled} = props;
|
|
122
125
|
let domRef = useDOMRef(ref);
|
|
123
126
|
|
|
@@ -145,11 +148,5 @@ function FullscreenDialog(props: FullscreenDialogProps, ref: DOMRef) {
|
|
|
145
148
|
</RACDialog>
|
|
146
149
|
</Modal>
|
|
147
150
|
);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Takeover dialogs are large types of dialogs. They use the totality of the screen and should be used for modal experiences with complex workflows.
|
|
152
|
-
*/
|
|
153
|
-
let _FullscreenDialog = forwardRef(FullscreenDialog);
|
|
154
|
-
export {_FullscreenDialog as FullscreenDialog};
|
|
151
|
+
});
|
|
155
152
|
|
|
@@ -157,7 +157,11 @@ interface IllustratedMessageContextProps extends Partial<S2SpectrumIllustratedMe
|
|
|
157
157
|
|
|
158
158
|
export const IllustratedMessageContext = createContext<ContextValue<IllustratedMessageContextProps, DOMRefValue<HTMLDivElement>>>(null);
|
|
159
159
|
|
|
160
|
-
|
|
160
|
+
/**
|
|
161
|
+
* An IllustratedMessage displays an illustration and a message, usually
|
|
162
|
+
* for an empty state or an error page.
|
|
163
|
+
*/
|
|
164
|
+
export const IllustratedMessage = /*#__PURE__*/ forwardRef(function IllustratedMessage(props: S2SpectrumIllustratedMessageProps, ref: DOMRef<HTMLDivElement>) {
|
|
161
165
|
[props, ref] = useSpectrumContextProps(props, ref, IllustratedMessageContext);
|
|
162
166
|
let domRef = useDOMRef(ref);
|
|
163
167
|
let {
|
|
@@ -191,11 +195,4 @@ function IllustratedMessage(props: S2SpectrumIllustratedMessageProps, ref: DOMRe
|
|
|
191
195
|
</Provider>
|
|
192
196
|
</div>
|
|
193
197
|
);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
/**
|
|
197
|
-
* An IllustratedMessage displays an illustration and a message, usually
|
|
198
|
-
* for an empty state or an error page.
|
|
199
|
-
*/
|
|
200
|
-
let _IllustratedMessage = /*#__PURE__*/ forwardRef(IllustratedMessage);
|
|
201
|
-
export {_IllustratedMessage as IllustratedMessage};
|
|
198
|
+
});
|
package/src/Image.tsx
CHANGED
|
@@ -77,7 +77,7 @@ function createState(src: string): State {
|
|
|
77
77
|
startTime: Date.now(),
|
|
78
78
|
loadTime: 0
|
|
79
79
|
};
|
|
80
|
-
}
|
|
80
|
+
}
|
|
81
81
|
|
|
82
82
|
function reducer(state: State, action: Action): State {
|
|
83
83
|
switch (action.type) {
|
|
@@ -130,7 +130,7 @@ const imgStyles = style({
|
|
|
130
130
|
transitionDuration: 500
|
|
131
131
|
});
|
|
132
132
|
|
|
133
|
-
function Image(props: ImageProps, domRef: ForwardedRef<HTMLDivElement>) {
|
|
133
|
+
export const Image = forwardRef(function Image(props: ImageProps, domRef: ForwardedRef<HTMLDivElement>) {
|
|
134
134
|
[props, domRef] = useSpectrumContextProps(props, domRef, ImageContext);
|
|
135
135
|
|
|
136
136
|
let {
|
|
@@ -236,7 +236,4 @@ function Image(props: ImageProps, domRef: ForwardedRef<HTMLDivElement>) {
|
|
|
236
236
|
)}
|
|
237
237
|
</div>
|
|
238
238
|
), [slot, hidden, domRef, UNSAFE_style, UNSAFE_className, styles, isAnimating, errorState, src, alt, crossOrigin, decoding, loading, referrerPolicy, onLoad, onError, isRevealed, isTransitioning]);
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
const _Image = forwardRef(Image);
|
|
242
|
-
export {_Image as Image};
|
|
239
|
+
});
|
package/src/InlineAlert.tsx
CHANGED
|
@@ -60,7 +60,6 @@ const inlineAlert = style<InlineStylesProps & {isFocusVisible?: boolean}>({
|
|
|
60
60
|
display: 'inline-block',
|
|
61
61
|
position: 'relative',
|
|
62
62
|
boxSizing: 'border-box',
|
|
63
|
-
maxWidth: 320,
|
|
64
63
|
padding: 24,
|
|
65
64
|
borderRadius: 'lg',
|
|
66
65
|
borderStyle: 'solid',
|
|
@@ -209,7 +208,11 @@ const content = style({
|
|
|
209
208
|
}
|
|
210
209
|
});
|
|
211
210
|
|
|
212
|
-
|
|
211
|
+
/**
|
|
212
|
+
* Inline alerts display a non-modal message associated with objects in a view.
|
|
213
|
+
* These are often used in form validation, providing a place to aggregate feedback related to multiple fields.
|
|
214
|
+
*/
|
|
215
|
+
export const InlineAlert = /*#__PURE__*/ forwardRef(function InlineAlert(props: InlineAlertProps, ref: DOMRef<HTMLDivElement>) {
|
|
213
216
|
let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');
|
|
214
217
|
[props, ref] = useSpectrumContextProps(props, ref, InlineAlertContext);
|
|
215
218
|
let {
|
|
@@ -267,11 +270,4 @@ function InlineAlert(props: InlineAlertProps, ref: DOMRef<HTMLDivElement>) {
|
|
|
267
270
|
</div>
|
|
268
271
|
</div>
|
|
269
272
|
);
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
/**
|
|
273
|
-
* Inline alerts display a non-modal message associated with objects in a view.
|
|
274
|
-
* These are often used in form validation, providing a place to aggregate feedback related to multiple fields.
|
|
275
|
-
*/
|
|
276
|
-
const _InlineAlert = /*#__PURE__*/ forwardRef(InlineAlert);
|
|
277
|
-
export {_InlineAlert as InlineAlert};
|
|
273
|
+
});
|
package/src/Link.tsx
CHANGED
|
@@ -14,7 +14,7 @@ import {ContextValue, LinkRenderProps, Link as RACLink, LinkProps as RACLinkProp
|
|
|
14
14
|
import {createContext, forwardRef, ReactNode, useContext} from 'react';
|
|
15
15
|
import {FocusableRef, FocusableRefValue} from '@react-types/shared';
|
|
16
16
|
import {focusRing, style} from '../style' with {type: 'macro'};
|
|
17
|
-
import {getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};
|
|
17
|
+
import {getAllowedOverrides, staticColor, StyleProps} from './style-utils' with {type: 'macro'};
|
|
18
18
|
import {SkeletonContext, useSkeletonText} from './Skeleton';
|
|
19
19
|
import {useFocusableRef} from '@react-spectrum/utils';
|
|
20
20
|
import {useLayoutEffect} from '@react-aria/utils';
|
|
@@ -27,7 +27,7 @@ interface LinkStyleProps {
|
|
|
27
27
|
*/
|
|
28
28
|
variant?: 'primary' | 'secondary',
|
|
29
29
|
/** The static color style to apply. Useful when the link appears over a color background. */
|
|
30
|
-
staticColor?: 'white' | 'black',
|
|
30
|
+
staticColor?: 'white' | 'black' | 'auto',
|
|
31
31
|
/** Whether the link is on its own vs inside a longer string of text. */
|
|
32
32
|
isStandalone?: boolean,
|
|
33
33
|
/** Whether the link should be displayed with a quiet style. */
|
|
@@ -40,8 +40,9 @@ export interface LinkProps extends Omit<RACLinkProps, 'isDisabled' | 'className'
|
|
|
40
40
|
|
|
41
41
|
export const LinkContext = createContext<ContextValue<LinkProps, FocusableRefValue<HTMLAnchorElement>>>(null);
|
|
42
42
|
|
|
43
|
-
const link = style<LinkRenderProps & LinkStyleProps & {isSkeleton: boolean}>({
|
|
43
|
+
const link = style<LinkRenderProps & LinkStyleProps & {isSkeleton: boolean, isStaticColor: boolean}>({
|
|
44
44
|
...focusRing(),
|
|
45
|
+
...staticColor(),
|
|
45
46
|
borderRadius: 'sm',
|
|
46
47
|
font: {
|
|
47
48
|
isStandalone: 'ui'
|
|
@@ -51,10 +52,7 @@ const link = style<LinkRenderProps & LinkStyleProps & {isSkeleton: boolean}>({
|
|
|
51
52
|
primary: 'accent',
|
|
52
53
|
secondary: 'neutral' // TODO: should there be an option to inherit from the paragraph? What about hover states?
|
|
53
54
|
},
|
|
54
|
-
|
|
55
|
-
white: 'white',
|
|
56
|
-
black: 'black'
|
|
57
|
-
},
|
|
55
|
+
isStaticColor: 'transparent-overlay-1000',
|
|
58
56
|
forcedColors: 'LinkText'
|
|
59
57
|
},
|
|
60
58
|
transition: 'default',
|
|
@@ -74,16 +72,17 @@ const link = style<LinkRenderProps & LinkStyleProps & {isSkeleton: boolean}>({
|
|
|
74
72
|
},
|
|
75
73
|
outlineColor: {
|
|
76
74
|
default: 'focus-ring',
|
|
77
|
-
|
|
78
|
-
white: 'white',
|
|
79
|
-
black: 'black'
|
|
80
|
-
},
|
|
75
|
+
isStaticColor: 'transparent-overlay-1000',
|
|
81
76
|
forcedColors: 'Highlight'
|
|
82
77
|
},
|
|
83
78
|
disableTapHighlight: true
|
|
84
79
|
}, getAllowedOverrides());
|
|
85
80
|
|
|
86
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Links allow users to navigate to a different location.
|
|
83
|
+
* They can be presented inline inside a paragraph or as standalone text.
|
|
84
|
+
*/
|
|
85
|
+
export const Link = /*#__PURE__*/ forwardRef(function Link(props: LinkProps, ref: FocusableRef<HTMLAnchorElement>) {
|
|
87
86
|
[props, ref] = useSpectrumContextProps(props, ref, LinkContext);
|
|
88
87
|
let {variant = 'primary', staticColor, isQuiet, isStandalone, UNSAFE_style, UNSAFE_className = '', styles, children} = props;
|
|
89
88
|
|
|
@@ -103,15 +102,8 @@ function Link(props: LinkProps, ref: FocusableRef<HTMLAnchorElement>) {
|
|
|
103
102
|
{...props}
|
|
104
103
|
ref={domRef}
|
|
105
104
|
style={UNSAFE_style}
|
|
106
|
-
className={renderProps => UNSAFE_className + link({...renderProps, variant, staticColor, isQuiet, isStandalone, isSkeleton}, styles)}>
|
|
105
|
+
className={renderProps => UNSAFE_className + link({...renderProps, variant, staticColor, isStaticColor: !!staticColor, isQuiet, isStandalone, isSkeleton}, styles)}>
|
|
107
106
|
{children}
|
|
108
107
|
</RACLink>
|
|
109
108
|
);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* Links allow users to navigate to a different location.
|
|
114
|
-
* They can be presented inline inside a paragraph or as standalone text.
|
|
115
|
-
*/
|
|
116
|
-
const _Link = /*#__PURE__*/ forwardRef(Link);
|
|
117
|
-
export {_Link as Link};
|
|
109
|
+
});
|
package/src/Menu.tsx
CHANGED
|
@@ -32,9 +32,9 @@ import {centerBaseline} from './CenterBaseline';
|
|
|
32
32
|
import {centerPadding, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};
|
|
33
33
|
import CheckmarkIcon from '../ui-icons/Checkmark';
|
|
34
34
|
import ChevronRightIcon from '../ui-icons/Chevron';
|
|
35
|
-
import {createContext, forwardRef, JSX, ReactNode, useContext, useRef} from 'react';
|
|
35
|
+
import {createContext, forwardRef, JSX, ReactNode, useContext, useRef, useState} from 'react';
|
|
36
36
|
import {divider} from './Divider';
|
|
37
|
-
import {DOMRef, DOMRefValue} from '@react-types/shared';
|
|
37
|
+
import {DOMRef, DOMRefValue, PressEvent} from '@react-types/shared';
|
|
38
38
|
import {forwardRefType} from './types';
|
|
39
39
|
import {HeaderContext, HeadingContext, KeyboardContext, Text, TextContext} from './Content';
|
|
40
40
|
import {IconContext} from './Icon'; // chevron right removed??
|
|
@@ -45,6 +45,7 @@ import {Placement, useLocale} from 'react-aria';
|
|
|
45
45
|
import {PopoverBase} from './Popover';
|
|
46
46
|
import {PressResponder} from '@react-aria/interactions';
|
|
47
47
|
import {pressScale} from './pressScale';
|
|
48
|
+
import {useGlobalListeners} from '@react-aria/utils';
|
|
48
49
|
import {useSpectrumContextProps} from './useSpectrumContextProps';
|
|
49
50
|
// viewbox on LinkOut is super weird just because i copied the icon from designs...
|
|
50
51
|
// need to strip id's from icons
|
|
@@ -80,22 +81,26 @@ export interface MenuProps<T> extends Omit<AriaMenuProps<T>, 'children' | 'style
|
|
|
80
81
|
/**
|
|
81
82
|
* The contents of the collection.
|
|
82
83
|
*/
|
|
83
|
-
children?: ReactNode | ((item: T) => ReactNode)
|
|
84
|
+
children?: ReactNode | ((item: T) => ReactNode),
|
|
85
|
+
/** Hides the default link out icons on menu items that open links in a new tab. */
|
|
86
|
+
hideLinkOutIcon?: boolean
|
|
84
87
|
}
|
|
85
88
|
|
|
86
89
|
export const MenuContext = createContext<ContextValue<MenuProps<any>, DOMRefValue<HTMLDivElement>>>(null);
|
|
87
90
|
|
|
91
|
+
const menuItemGrid = {
|
|
92
|
+
size: {
|
|
93
|
+
S: [edgeToText(24), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(24)],
|
|
94
|
+
M: [edgeToText(32), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(32)],
|
|
95
|
+
L: [edgeToText(40), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(40)],
|
|
96
|
+
XL: [edgeToText(48), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(48)]
|
|
97
|
+
}
|
|
98
|
+
} as const;
|
|
99
|
+
|
|
88
100
|
export let menu = style({
|
|
89
101
|
outlineStyle: 'none',
|
|
90
102
|
display: 'grid',
|
|
91
|
-
gridTemplateColumns:
|
|
92
|
-
size: {
|
|
93
|
-
S: [edgeToText(24), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(24)],
|
|
94
|
-
M: [edgeToText(32), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(32)],
|
|
95
|
-
L: [edgeToText(40), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(40)],
|
|
96
|
-
XL: [edgeToText(48), 'auto', 'auto', 'minmax(0, 1fr)', 'auto', 'auto', 'auto', edgeToText(48)]
|
|
97
|
-
}
|
|
98
|
-
},
|
|
103
|
+
gridTemplateColumns: menuItemGrid,
|
|
99
104
|
boxSizing: 'border-box',
|
|
100
105
|
maxHeight: '[inherit]',
|
|
101
106
|
overflow: {
|
|
@@ -120,7 +125,7 @@ export let section = style({
|
|
|
120
125
|
'. checkmark icon label value keyboard descriptor .',
|
|
121
126
|
'. . . description . . . .'
|
|
122
127
|
],
|
|
123
|
-
gridTemplateColumns:
|
|
128
|
+
gridTemplateColumns: menuItemGrid
|
|
124
129
|
});
|
|
125
130
|
|
|
126
131
|
export let sectionHeader = style<{size?: 'S' | 'M' | 'L' | 'XL'}>({
|
|
@@ -309,10 +314,18 @@ let descriptor = style({
|
|
|
309
314
|
}
|
|
310
315
|
});
|
|
311
316
|
|
|
312
|
-
let InternalMenuContext = createContext<{size: 'S' | 'M' | 'L' | 'XL', isSubmenu: boolean
|
|
317
|
+
let InternalMenuContext = createContext<{size: 'S' | 'M' | 'L' | 'XL', isSubmenu: boolean, hideLinkOutIcon: boolean}>({
|
|
318
|
+
size: 'M',
|
|
319
|
+
isSubmenu: false,
|
|
320
|
+
hideLinkOutIcon: false
|
|
321
|
+
});
|
|
322
|
+
|
|
313
323
|
let InternalMenuTriggerContext = createContext<Omit<MenuTriggerProps, 'children'> | null>(null);
|
|
314
324
|
|
|
315
|
-
|
|
325
|
+
/**
|
|
326
|
+
* Menus display a list of actions or options that a user can choose.
|
|
327
|
+
*/
|
|
328
|
+
export const Menu = /*#__PURE__*/ (forwardRef as forwardRefType)(function Menu<T extends object>(props: MenuProps<T>, ref: DOMRef<HTMLDivElement>) {
|
|
316
329
|
[props, ref] = useSpectrumContextProps(props, ref, MenuContext);
|
|
317
330
|
let {isSubmenu, size: ctxSize} = useContext(InternalMenuContext);
|
|
318
331
|
let {
|
|
@@ -320,7 +333,8 @@ function Menu<T extends object>(props: MenuProps<T>, ref: DOMRef<HTMLDivElement>
|
|
|
320
333
|
size = ctxSize,
|
|
321
334
|
UNSAFE_style,
|
|
322
335
|
UNSAFE_className,
|
|
323
|
-
styles
|
|
336
|
+
styles,
|
|
337
|
+
hideLinkOutIcon = false
|
|
324
338
|
} = props;
|
|
325
339
|
let ctx = useContext(InternalMenuTriggerContext);
|
|
326
340
|
let {align = 'start', direction = 'bottom', shouldFlip} = ctx ?? {};
|
|
@@ -345,7 +359,7 @@ function Menu<T extends object>(props: MenuProps<T>, ref: DOMRef<HTMLDivElement>
|
|
|
345
359
|
}
|
|
346
360
|
|
|
347
361
|
let content = (
|
|
348
|
-
<InternalMenuContext.Provider value={{size, isSubmenu: true}}>
|
|
362
|
+
<InternalMenuContext.Provider value={{size, isSubmenu: true, hideLinkOutIcon}}>
|
|
349
363
|
<Provider
|
|
350
364
|
values={[
|
|
351
365
|
[HeaderContext, {styles: sectionHeader({size})}],
|
|
@@ -386,13 +400,7 @@ function Menu<T extends object>(props: MenuProps<T>, ref: DOMRef<HTMLDivElement>
|
|
|
386
400
|
}
|
|
387
401
|
|
|
388
402
|
return content;
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
/**
|
|
392
|
-
* Menus display a list of actions or options that a user can choose.
|
|
393
|
-
*/
|
|
394
|
-
let _Menu = /*#__PURE__*/ (forwardRef as forwardRefType)(Menu);
|
|
395
|
-
export {_Menu as Menu};
|
|
403
|
+
});
|
|
396
404
|
|
|
397
405
|
export function Divider(props: SeparatorProps) {
|
|
398
406
|
return (
|
|
@@ -402,7 +410,7 @@ export function Divider(props: SeparatorProps) {
|
|
|
402
410
|
divider({
|
|
403
411
|
size: 'M',
|
|
404
412
|
orientation: 'horizontal',
|
|
405
|
-
|
|
413
|
+
isStaticColor: false
|
|
406
414
|
}), style({
|
|
407
415
|
display: {
|
|
408
416
|
default: 'grid',
|
|
@@ -419,11 +427,12 @@ export function Divider(props: SeparatorProps) {
|
|
|
419
427
|
export interface MenuSectionProps<T extends object> extends AriaMenuSectionProps<T> {}
|
|
420
428
|
export function MenuSection<T extends object>(props: MenuSectionProps<T>) {
|
|
421
429
|
// remember, context doesn't work if it's around Section nor inside
|
|
430
|
+
let {size} = useContext(InternalMenuContext);
|
|
422
431
|
return (
|
|
423
432
|
<>
|
|
424
433
|
<AriaMenuSection
|
|
425
434
|
{...props}
|
|
426
|
-
className={section}>
|
|
435
|
+
className={section({size})}>
|
|
427
436
|
{props.children}
|
|
428
437
|
</AriaMenuSection>
|
|
429
438
|
<Divider />
|
|
@@ -456,7 +465,7 @@ export function MenuItem(props: MenuItemProps) {
|
|
|
456
465
|
let ref = useRef(null);
|
|
457
466
|
let isLink = props.href != null;
|
|
458
467
|
let isLinkOut = isLink && props.target === '_blank';
|
|
459
|
-
let {size} = useContext(InternalMenuContext);
|
|
468
|
+
let {size, hideLinkOutIcon} = useContext(InternalMenuContext);
|
|
460
469
|
let textValue = props.textValue || (typeof props.children === 'string' ? props.children : undefined);
|
|
461
470
|
let {direction} = useLocale();
|
|
462
471
|
return (
|
|
@@ -489,20 +498,32 @@ export function MenuItem(props: MenuItemProps) {
|
|
|
489
498
|
[KeyboardContext, {styles: keyboard({size, isDisabled: renderProps.isDisabled})}],
|
|
490
499
|
[ImageContext, {styles: image({size})}]
|
|
491
500
|
]}>
|
|
492
|
-
{renderProps.selectionMode === 'single' && !
|
|
493
|
-
{renderProps.selectionMode === 'multiple' && !
|
|
501
|
+
{renderProps.selectionMode === 'single' && !renderProps.hasSubmenu && <CheckmarkIcon size={checkmarkIconSize[size]} className={checkmark({...renderProps, size})} />}
|
|
502
|
+
{renderProps.selectionMode === 'multiple' && !renderProps.hasSubmenu && (
|
|
494
503
|
<div className={mergeStyles(checkbox, box(checkboxRenderProps))}>
|
|
495
504
|
<CheckmarkIcon size={size} className={iconStyles} />
|
|
496
505
|
</div>
|
|
497
506
|
)}
|
|
498
507
|
{typeof children === 'string' ? <Text slot="label">{children}</Text> : children}
|
|
499
|
-
{isLinkOut &&
|
|
508
|
+
{isLinkOut && !hideLinkOutIcon && (
|
|
509
|
+
<div slot="descriptor" className={descriptor}>
|
|
510
|
+
<LinkOutIcon
|
|
511
|
+
size={linkIconSize[size]}
|
|
512
|
+
className={style({
|
|
513
|
+
scaleX: {
|
|
514
|
+
direction: {
|
|
515
|
+
rtl: -1
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
})({direction})} />
|
|
519
|
+
</div>
|
|
520
|
+
)}
|
|
500
521
|
{renderProps.hasSubmenu && (
|
|
501
522
|
<div slot="descriptor" className={descriptor}>
|
|
502
523
|
<ChevronRightIcon
|
|
503
524
|
size={size}
|
|
504
525
|
className={style({
|
|
505
|
-
|
|
526
|
+
scaleX: {
|
|
506
527
|
direction: {
|
|
507
528
|
rtl: -1
|
|
508
529
|
}
|
|
@@ -523,6 +544,23 @@ export function MenuItem(props: MenuItemProps) {
|
|
|
523
544
|
* linking the Menu's open state with the trigger's press state.
|
|
524
545
|
*/
|
|
525
546
|
function MenuTrigger(props: MenuTriggerProps) {
|
|
547
|
+
// RAC sets isPressed via PressResponder when the menu is open.
|
|
548
|
+
// We don't want press scaling to appear to get "stuck", so override this.
|
|
549
|
+
// For mouse interactions, menus open on press start. When the popover underlay appears
|
|
550
|
+
// it covers the trigger button, causing onPressEnd to fire immediately and no press scaling
|
|
551
|
+
// to occur. We override this by listening for pointerup on the document ourselves.
|
|
552
|
+
let [isPressed, setPressed] = useState(false);
|
|
553
|
+
let {addGlobalListener} = useGlobalListeners();
|
|
554
|
+
let onPressStart = (e: PressEvent) => {
|
|
555
|
+
if (e.pointerType !== 'mouse') {
|
|
556
|
+
return;
|
|
557
|
+
}
|
|
558
|
+
setPressed(true);
|
|
559
|
+
addGlobalListener(document, 'pointerup', () => {
|
|
560
|
+
setPressed(false);
|
|
561
|
+
}, {once: true, capture: true});
|
|
562
|
+
};
|
|
563
|
+
|
|
526
564
|
return (
|
|
527
565
|
<InternalMenuTriggerContext.Provider
|
|
528
566
|
value={{
|
|
@@ -531,9 +569,7 @@ function MenuTrigger(props: MenuTriggerProps) {
|
|
|
531
569
|
shouldFlip: props.shouldFlip
|
|
532
570
|
}}>
|
|
533
571
|
<AriaMenuTrigger {...props}>
|
|
534
|
-
{
|
|
535
|
-
We don't want press scaling to appear to get "stuck", so override this. */}
|
|
536
|
-
<PressResponder isPressed={false}>
|
|
572
|
+
<PressResponder onPressStart={onPressStart} isPressed={isPressed}>
|
|
537
573
|
{props.children}
|
|
538
574
|
</PressResponder>
|
|
539
575
|
</AriaMenuTrigger>
|