File tree Expand file tree Collapse file tree 2 files changed +12
-2
lines changed
packages/kit-headless/src/components/select Expand file tree Collapse file tree 2 files changed +12
-2
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ ' @qwik-ui/headless ' : patch
3
+ ---
4
+
5
+ Fix disabled state handling for Select.Trigger
Original file line number Diff line number Diff line change 3
3
Slot ,
4
4
component$ ,
5
5
sync$ ,
6
+ useComputed$ ,
6
7
useContext ,
7
8
useSignal ,
8
9
type PropsOf ,
@@ -27,6 +28,10 @@ export const HSelectTrigger = component$<SelectTriggerProps>((props) => {
27
28
const contextRefOpts = { context, givenContextRef : context . triggerRef } ;
28
29
const triggerRef = useCombinedRef ( props . ref , contextRefOpts ) ;
29
30
31
+ const isDisabled = useComputed$ ( ( ) =>
32
+ context . isDisabledSig . value || props . disabled ? true : undefined ,
33
+ ) ;
34
+
30
35
const handleClickSync$ = sync$ ( ( e : MouseEvent ) => {
31
36
e . preventDefault ( ) ;
32
37
} ) ;
@@ -132,15 +137,15 @@ export const HSelectTrigger = component$<SelectTriggerProps>((props) => {
132
137
onKeyDown$ = { [ handleKeyDownSync$ , handleKeyDown$ , props . onKeyDown$ ] }
133
138
data-open = { context . isListboxOpenSig . value ? '' : undefined }
134
139
data-closed = { ! context . isListboxOpenSig . value ? '' : undefined }
135
- data-disabled = { context . isDisabledSig . value ? '' : undefined }
140
+ data-disabled = { isDisabled . value ? '' : undefined }
136
141
data-invalid = { context . isInvalidSig ?. value ? '' : undefined }
137
142
aria-labelledby = { `${ valueId } ${ labelId } ` }
138
143
aria-describedby = { `${ descriptionId }
139
144
${ errorMessageId } ` }
140
145
aria-expanded = { context . isListboxOpenSig . value ? true : false }
141
146
aria-haspopup = "listbox"
142
147
aria-controls = { panelId }
143
- disabled = { context . isDisabledSig . value ? true : undefined }
148
+ disabled = { isDisabled . value }
144
149
preventdefault :blur
145
150
>
146
151
< Slot />
You can’t perform that action at this time.
0 commit comments