Skip to content

Commit 298355a

Browse files
feat(Chip): Simplify remove button logic and improve accessibility
1 parent aedb81c commit 298355a

File tree

1 file changed

+4
-16
lines changed

1 file changed

+4
-16
lines changed

packages/primevue/src/chip/Chip.vue

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,7 @@
77
<div v-if="label !== null" :class="cx('label')" v-bind="ptm('label')">{{ label }}</div>
88
</slot>
99
<slot v-if="removable" name="removeicon" :removeCallback="close" :keydownCallback="onKeydown">
10-
<component
11-
:is="removeIcon ? 'span' : 'TimesCircleIcon'"
12-
:class="[cx('removeIcon'), removeIcon]"
13-
:tabindex="disabled ? -1 : 0"
14-
role="button"
15-
:aria-label="removeAriaLabel"
16-
:aria-disabled="disabled"
17-
@click="!disabled && close($event)"
18-
@keydown="onKeydown"
19-
v-bind="ptm('removeIcon')"
20-
></component>
10+
<component :is="removeIcon ? 'span' : 'TimesCircleIcon'" :class="[cx('removeIcon'), removeIcon]" :tabindex="0" role="button" :aria-label="removeAriaLabel" @click="close($event)" @keydown="onKeydown" v-bind="ptm('removeIcon')"></component>
2111
</slot>
2212
</div>
2313
</template>
@@ -39,16 +29,14 @@ export default {
3929
},
4030
methods: {
4131
onKeydown(event) {
42-
if (!this.disabled && (event.key === 'Enter' || event.key === ' ' || event.key === 'Backspace')) {
32+
if (event.key === 'Enter' || event.key === ' ' || event.key === 'Backspace') {
4333
event.preventDefault();
4434
this.close(event);
4535
}
4636
},
4737
close(event) {
48-
if (!this.disabled) {
49-
this.visible = false;
50-
this.$emit('remove', event);
51-
}
38+
this.visible = false;
39+
this.$emit('remove', event);
5240
}
5341
},
5442
computed: {

0 commit comments

Comments
 (0)