@@ -489,7 +489,7 @@ export class UUIColorPickerElement extends LabelMixin('label', LitElement) {
489
489
event . stopImmediatePropagation ( ) ;
490
490
491
491
const target = event . target as HTMLElement ;
492
- const popover = target . nextElementSibling as UUIPopoverElement ;
492
+ const popover = target . parentElement as UUIPopoverElement ;
493
493
494
494
popover . open = ! popover ?. open ;
495
495
@@ -498,7 +498,7 @@ export class UUIColorPickerElement extends LabelMixin('label', LitElement) {
498
498
499
499
closeColorPicker ( event : Event ) {
500
500
const target = event . target as UUIPopoverElement ;
501
- const trigger = target . previousElementSibling ;
501
+ const trigger = target . querySelector ( "button[part=trigger]" ) ;
502
502
503
503
if ( trigger ) {
504
504
trigger . setAttribute ( 'aria-expanded' , 'false' ) ;
@@ -661,28 +661,29 @@ export class UUIColorPickerElement extends LabelMixin('label', LitElement) {
661
661
}
662
662
663
663
private _renderPreviewButton ( ) {
664
- return html `< button
665
- type ="button "
666
- slot ="trigger "
667
- aria-label ="${ this . label || 'Open Color picker' } "
668
- class =${ classMap ( {
669
- 'color-picker__trigger' : true ,
670
- 'color-dropdown__trigger--disabled' : this . disabled ,
671
- 'color-dropdown__trigger--small' : this . size === 'small' ,
672
- 'color-dropdown__trigger--medium' : this . size === 'medium' ,
673
- 'color-dropdown__trigger--large' : this . size === 'large' ,
674
- 'color-picker__transparent-bg' : true ,
675
- } ) }
676
- style =${ styleMap ( {
677
- '--preview-color' : `hsla(${ this . hue } deg, ${ this . saturation } %, ${
678
- this . lightness
679
- } %, ${ this . alpha / 100 } )`,
680
- } ) }
681
- ?disabled=${ this . disabled }
682
- @click=${ this . openColorPicker }
683
- aria-haspopup="true"
684
- aria-expanded="false"> </ button >
685
- < uui-popover placement ="bottom-start " @close =${ this . closeColorPicker } >
664
+ return html `< uui-popover placement ="bottom-start " @close =${ this . closeColorPicker } >
665
+ < button
666
+ type ="button "
667
+ part ="trigger "
668
+ slot ="trigger "
669
+ aria-label ="${ this . label || 'Open Color picker' } "
670
+ class =${ classMap ( {
671
+ 'color-picker__trigger' : true ,
672
+ 'color-dropdown__trigger--disabled' : this . disabled ,
673
+ 'color-dropdown__trigger--small' : this . size === 'small' ,
674
+ 'color-dropdown__trigger--medium' : this . size === 'medium' ,
675
+ 'color-dropdown__trigger--large' : this . size === 'large' ,
676
+ 'color-picker__transparent-bg' : true ,
677
+ } ) }
678
+ style =${ styleMap ( {
679
+ '--preview-color' : `hsla(${ this . hue } deg, ${ this . saturation } %, ${
680
+ this . lightness
681
+ } %, ${ this . alpha / 100 } )`,
682
+ } ) }
683
+ ?disabled=${ this . disabled }
684
+ @click=${ this . openColorPicker }
685
+ aria-haspopup="true"
686
+ aria-expanded="false"> </ button >
686
687
< div slot ="popover "> ${ this . _renderColorPicker ( ) } </ div >
687
688
</ uui-popover > ` ;
688
689
}
0 commit comments