@@ -46,78 +46,75 @@ export function Multiselect(p: Multiselect2Props) {
4646 p . class ,
4747 ) }
4848 >
49- < SelectedValues2 valueSignal = { p . valueSignal } valueText = { p . valueText } />
49+ < SelectedValues valueSignal = { p . valueSignal } valueText = { p . valueText } />
5050 < CorvuPopover { ...buttonProps } >
51- < div class = { classArr ( "bg-white dark:bg-black" , "max-h-dvh" , " grid grid-cols-3 gap-x-2 gap-y-1") } >
52- < OptionList2 valueSignal = { p . valueSignal } getOptions = { p . getOptions } valueText = { p . valueText } />
51+ < div class = { classArr ( "grid grid-cols-3 gap-x-2 gap-y-1" ) } >
52+ < OptionList valueSignal = { p . valueSignal } getOptions = { p . getOptions } valueText = { p . valueText } />
5353 </ div >
5454 </ CorvuPopover >
5555 </ div >
5656 )
5757}
5858
59- interface Multiselect2OptionState {
59+ interface MultiselectOptionState {
6060 option : string
61- }
62-
63- interface Multiselect2OptionState {
6461 valueSignal : SignalObject < string [ ] >
6562 valueText ?: ( value : string ) => string
6663}
6764
68- function SelectedValues2 ( p : { valueSignal : SignalObject < string [ ] > ; valueText ?: ( value : string ) => string } ) {
65+ function SelectedValues ( p : { valueSignal : SignalObject < string [ ] > ; valueText ?: ( value : string ) => string } ) {
6966 return (
7067 < div class = { "flex flex-wrap gap-1" } >
71- < Key each = { p . valueSignal . get ( ) } by = { ( item ) => item } fallback = { < NoItems2 /> } >
72- { ( item ) => < SelectedValue2 option = { item ( ) } valueSignal = { p . valueSignal } valueText = { p . valueText } /> }
68+ < Key each = { p . valueSignal . get ( ) } by = { ( item ) => item } fallback = { < NoItems /> } >
69+ { ( item ) => < SelectedValue option = { item ( ) } valueSignal = { p . valueSignal } valueText = { p . valueText } /> }
7370 </ Key >
7471 </ div >
7572 )
7673}
7774
78- function SelectedValue2 ( p : Multiselect2OptionState ) {
75+ function SelectedValue ( p : MultiselectOptionState ) {
7976 const label = ( ) => ( p . valueText ? p . valueText ( p . option ) : p . option )
8077 return (
8178 < ButtonIcon
8279 variant = { buttonVariant . outline }
8380 iconRight = { mdiClose }
8481 class = { "text-sm px-2 py-1" }
8582 data-value = { p . option }
86- onMouseDown = { ( e ) => optionRemove2 ( p ) }
87- onClick = { ( e ) => optionRemove2 ( p ) }
83+ onMouseDown = { ( e ) => optionRemove ( p ) }
84+ onClick = { ( e ) => optionRemove ( p ) }
8885 title = { ct1 ( t4multiselect . Remove_x , label ( ) ) }
8986 >
9087 { label ( ) }
9188 </ ButtonIcon >
9289 )
9390}
9491
95- function OptionList2 ( p : {
92+ function OptionList ( p : {
9693 valueSignal : SignalObject < string [ ] >
9794 getOptions : Accessor < string [ ] >
9895 valueText ?: ( value : string ) => string
9996} ) {
10097 return (
10198 < >
102- < Key each = { p . getOptions ( ) } by = { ( item ) => item } fallback = { < NoItems2 /> } >
103- { ( item ) => < ListOption2 option = { item ( ) } valueSignal = { p . valueSignal } valueText = { p . valueText } /> }
99+ < Key each = { p . getOptions ( ) } by = { ( item ) => item } fallback = { < NoItems /> } >
100+ { ( item ) => < ListOption option = { item ( ) } valueSignal = { p . valueSignal } valueText = { p . valueText } /> }
104101 </ Key >
105102 </ >
106103 )
107104}
108105
109- function ListOption2 ( p : Multiselect2OptionState ) {
106+ function ListOption ( p : MultiselectOptionState ) {
110107 const label = ( ) => ( p . valueText ? p . valueText ( p . option ) : p . option )
111108 return (
112109 < >
113110 < ButtonIcon
114111 type = "button"
115112 role = "checkbox"
116- aria-checked = { optionIsSelected2 ( p ) }
117- data-state = { optionIsSelected2 ( p ) }
118- iconRight = { optionIsSelected2 ( p ) ? mdiCheck : undefined }
113+ aria-checked = { optionIsSelected ( p ) }
114+ data-state = { optionIsSelected ( p ) }
115+ iconRight = { optionIsSelected ( p ) ? mdiCheck : undefined }
119116 onClick = { ( e ) => {
120- toggleOption2 ( p )
117+ toggleOption ( p )
121118 } }
122119 variant = { buttonVariant . ghost }
123120 class = { "justify-start" }
@@ -128,30 +125,30 @@ function ListOption2(p: Multiselect2OptionState) {
128125 )
129126}
130127
131- function toggleOption2 ( p : Multiselect2OptionState ) {
132- const hasOption = optionIsSelected2 ( p )
128+ function toggleOption ( p : MultiselectOptionState ) {
129+ const hasOption = optionIsSelected ( p )
133130 if ( hasOption ) {
134- return optionRemove2 ( p )
131+ return optionRemove ( p )
135132 }
136- return optionAdd2 ( p )
133+ return optionAdd ( p )
137134}
138135
139- function optionRemove2 ( p : Multiselect2OptionState ) {
136+ function optionRemove ( p : MultiselectOptionState ) {
140137 const newValues = p . valueSignal . get ( ) . filter ( ( v ) => v !== p . option )
141138 p . valueSignal . set ( newValues )
142139}
143140
144- function optionAdd2 ( p : Multiselect2OptionState ) {
141+ function optionAdd ( p : MultiselectOptionState ) {
145142 const newValues = [ ...p . valueSignal . get ( ) , p . option ]
146143 newValues . sort ( ( a , b ) => a . localeCompare ( b ) )
147144 p . valueSignal . set ( newValues )
148145}
149146
150- function optionIsSelected2 ( p : Multiselect2OptionState ) {
147+ function optionIsSelected ( p : MultiselectOptionState ) {
151148 return p . valueSignal . get ( ) . includes ( p . option )
152149}
153150
154- function NoItems2 ( p : MayHaveClass = { } ) {
151+ function NoItems ( p : MayHaveClass = { } ) {
155152 return (
156153 < div
157154 class = { classMerge (
0 commit comments