|
@@ -1,7 +1,7 @@
|
|
|
'use client'
|
|
|
import type { FC } from 'react'
|
|
|
-import React, { Fragment, useEffect, useState } from 'react'
|
|
|
-import { Combobox, ComboboxButton, ComboboxInput, ComboboxOption, ComboboxOptions, Listbox, ListboxButton, ListboxOption, ListboxOptions, Transition } from '@headlessui/react'
|
|
|
+import React, { useEffect, useState } from 'react'
|
|
|
+import { Combobox, ComboboxButton, ComboboxInput, ComboboxOption, ComboboxOptions, Listbox, ListboxButton, ListboxOption, ListboxOptions } from '@headlessui/react'
|
|
|
import { ChevronDownIcon, ChevronUpIcon, XMarkIcon } from '@heroicons/react/20/solid'
|
|
|
import Badge from '../badge/index'
|
|
|
import { RiCheckLine } from '@remixicon/react'
|
|
@@ -238,48 +238,40 @@ const SimpleSelect: FC<ISelectProps> = ({
|
|
|
)}
|
|
|
|
|
|
{!disabled && (
|
|
|
- <Transition
|
|
|
- as={Fragment}
|
|
|
- leave="transition ease-in duration-100"
|
|
|
- leaveFrom="opacity-100"
|
|
|
- leaveTo="opacity-0"
|
|
|
- >
|
|
|
-
|
|
|
- <ListboxOptions className={classNames('absolute z-10 mt-1 px-1 max-h-60 w-full overflow-auto rounded-md bg-components-panel-bg-blur backdrop-blur-sm py-1 text-base shadow-lg border-components-panel-border border-[0.5px] focus:outline-none sm:text-sm', optionWrapClassName)}>
|
|
|
- {items.map((item: Item) => (
|
|
|
- <ListboxOption
|
|
|
- key={item.value}
|
|
|
- className={
|
|
|
- classNames(
|
|
|
- 'relative cursor-pointer select-none py-2 pl-3 pr-9 rounded-lg hover:bg-state-base-hover text-text-secondary',
|
|
|
- optionClassName,
|
|
|
- )
|
|
|
- }
|
|
|
- value={item}
|
|
|
- disabled={disabled}
|
|
|
- >
|
|
|
- {({ /* active, */ selected }) => (
|
|
|
- <>
|
|
|
- {renderOption
|
|
|
- ? renderOption({ item, selected })
|
|
|
- : (<>
|
|
|
- <span className={classNames('block', selected && 'font-normal')}>{item.name}</span>
|
|
|
- {selected && !hideChecked && (
|
|
|
- <span
|
|
|
- className={classNames(
|
|
|
- 'absolute inset-y-0 right-0 flex items-center pr-4 text-text-accent',
|
|
|
- )}
|
|
|
- >
|
|
|
- <RiCheckLine className="h-4 w-4" aria-hidden="true" />
|
|
|
- </span>
|
|
|
- )}
|
|
|
- </>)}
|
|
|
- </>
|
|
|
- )}
|
|
|
- </ListboxOption>
|
|
|
- ))}
|
|
|
- </ListboxOptions>
|
|
|
- </Transition>
|
|
|
+ <ListboxOptions className={classNames('absolute z-10 mt-1 px-1 max-h-60 w-full overflow-auto rounded-md bg-components-panel-bg-blur backdrop-blur-sm py-1 text-base shadow-lg border-components-panel-border border-[0.5px] focus:outline-none sm:text-sm', optionWrapClassName)}>
|
|
|
+ {items.map((item: Item) => (
|
|
|
+ <ListboxOption
|
|
|
+ key={item.value}
|
|
|
+ className={
|
|
|
+ classNames(
|
|
|
+ 'relative cursor-pointer select-none py-2 pl-3 pr-9 rounded-lg hover:bg-state-base-hover text-text-secondary',
|
|
|
+ optionClassName,
|
|
|
+ )
|
|
|
+ }
|
|
|
+ value={item}
|
|
|
+ disabled={disabled}
|
|
|
+ >
|
|
|
+ {({ /* active, */ selected }) => (
|
|
|
+ <>
|
|
|
+ {renderOption
|
|
|
+ ? renderOption({ item, selected })
|
|
|
+ : (<>
|
|
|
+ <span className={classNames('block', selected && 'font-normal')}>{item.name}</span>
|
|
|
+ {selected && !hideChecked && (
|
|
|
+ <span
|
|
|
+ className={classNames(
|
|
|
+ 'absolute inset-y-0 right-0 flex items-center pr-4 text-text-accent',
|
|
|
+ )}
|
|
|
+ >
|
|
|
+ <RiCheckLine className="h-4 w-4" aria-hidden="true" />
|
|
|
+ </span>
|
|
|
+ )}
|
|
|
+ </>)}
|
|
|
+ </>
|
|
|
+ )}
|
|
|
+ </ListboxOption>
|
|
|
+ ))}
|
|
|
+ </ListboxOptions>
|
|
|
)}
|
|
|
</div>
|
|
|
</Listbox>
|