Fix ambigious clearing behaviour on SelectButton (#4107)
parent
0a08c56d3b
commit
b666789c8a
|
@ -51,6 +51,12 @@ const SelectButtonProps = [
|
|||
name: 'unselectable',
|
||||
type: 'boolean',
|
||||
default: 'false',
|
||||
description: 'Whether selection can not be cleared.'
|
||||
},
|
||||
{
|
||||
name: 'allowEmpty',
|
||||
type: 'boolean',
|
||||
default: 'true',
|
||||
description: 'Whether selection can be cleared.'
|
||||
},
|
||||
{
|
||||
|
|
|
@ -16,6 +16,10 @@ export default {
|
|||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
allowEmpty: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
},
|
||||
disabled: Boolean,
|
||||
dataKey: null,
|
||||
'aria-labelledby': {
|
||||
|
|
|
@ -155,10 +155,16 @@ export interface SelectButtonProps {
|
|||
*/
|
||||
dataKey?: string | undefined;
|
||||
/**
|
||||
* Whether selection can be cleared.
|
||||
* Whether selection can not be cleared.
|
||||
* @defaultValue false
|
||||
* @deprecated Use 'allowEmpty' property instead.
|
||||
*/
|
||||
unselectable?: boolean | undefined;
|
||||
/**
|
||||
* Whether selection can be cleared.
|
||||
* @defaultValue true
|
||||
*/
|
||||
allowEmpty?: boolean | undefined;
|
||||
/**
|
||||
* Identifier of the underlying element.
|
||||
*/
|
||||
|
|
|
@ -81,7 +81,7 @@ export default {
|
|||
|
||||
let selected = this.isSelected(option);
|
||||
|
||||
if (selected && this.unselectable) {
|
||||
if (selected && (this.unselectable || !this.allowEmpty)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -42662,6 +42662,15 @@
|
|||
"readonly": false,
|
||||
"type": "boolean",
|
||||
"default": "false",
|
||||
"description": "Whether selection can not be cleared.",
|
||||
"deprecated": "Use 'allowEmpty' property instead."
|
||||
},
|
||||
{
|
||||
"name": "allowEmpty",
|
||||
"optional": true,
|
||||
"readonly": false,
|
||||
"type": "boolean",
|
||||
"default": "true",
|
||||
"description": "Whether selection can be cleared."
|
||||
},
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue