export const useVariables = () => { const multiSelectClasses = { container: 'relative input input-bordered w-full flex items-center justify-end px-0 min-h-[32px]', containerDisabled: 'cursor-default !bg-base-100', containerOpen: 'rounded-b-none', containerOpenTop: 'rounded-t-none', containerActive: 'ring ring-green-500 ring-opacity-30', wrapper: 'relative mx-auto w-full flex items-center justify-end box-border cursor-pointer outline-none', singleLabel: 'flex items-center h-full max-w-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5 pr-16 box-border rtl:left-auto rtl:right-0 rtl:pl-0 rtl:pr-3.5', singleLabelText: 'overflow-ellipsis overflow-hidden block whitespace-nowrap max-w-full', multipleLabel: 'flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5 rtl:left-auto rtl:right-0 rtl:pl-0 rtl:pr-3.5', search: 'w-full absolute inset-0 outline-none focus:ring-0 appearance-none box-border border-0 text-base font-sans bg-base-100 rounded pl-3.5 rtl:pl-0 rtl:pr-3.5', tags: 'flex-grow flex-shrink flex flex-wrap items-center mt-0 pl-2 min-w-0 rtl:pl-0 rtl:pr-2', tag: 'bg-base-300 h-6 text-base-content text-sm font-bold py-0.5 pl-2 rounded mr-1 my-0.5 flex items-center whitespace-nowrap min-w-0 rtl:pl-0 rtl:pr-2 rtl:mr-0 rtl:ml-1', tagDisabled: 'pr-2 opacity-50 rtl:pl-2', tagWrapper: 'whitespace-nowrap overflow-hidden overflow-ellipsis', tagWrapperBreak: 'whitespace-normal break-all', tagRemove: 'flex items-center justify-center p-1 mx-0.5 rounded-sm hover:bg-black hover:bg-opacity-10 group', tagRemoveIcon: 'bg-multiselect-remove bg-center bg-no-repeat opacity-30 inline-block w-3 h-3 group-hover:opacity-60', tagsSearchWrapper: 'inline-block relative mx-1 flex-grow flex-shrink h-[24px]', tagsSearch: 'absolute inset-0 border-0 outline-none focus:ring-0 appearance-none p-0 text-base font-sans box-border w-full h-full', tagsSearchCopy: 'invisible whitespace-pre-wrap inline-block h-px', placeholder: 'flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5 text-gray-400 rtl:left-auto rtl:right-0 rtl:pl-0 rtl:pr-3.5', caret: 'multiselect-caret bg-center bg-no-repeat w-2.5 h-4 py-px box-content mr-3.5 relative z-10 flex-shrink-0 flex-grow-0 transition-transform transform pointer-events-none rtl:mr-0 rtl:ml-3.5', caretOpen: 'rotate-180 pointer-events-auto', clear: 'pr-3.5 relative z-10 transition duration-300 flex-shrink-0 flex-grow-0 flex hover:opacity-80 rtl:pr-0 rtl:pl-3.5', clearIcon: 'multiselect-clear-icon bg-center bg-no-repeat w-2.5 h-4 py-px box-content inline-block', spinner: 'bg-multiselect-spinner bg-center bg-no-repeat w-4 h-4 z-10 mr-3.5 animate-spin flex-shrink-0 flex-grow-0 rtl:mr-0 rtl:ml-3.5', infinite: 'flex items-center justify-center w-full', infiniteSpinner: 'bg-multiselect-spinner bg-center bg-no-repeat w-4 h-4 z-10 animate-spin flex-shrink-0 flex-grow-0 m-3.5', dropdown: 'max-h-60 absolute -left-px -right-px bottom-0 transform translate-y-full border border-gray-300 -mt-px overflow-y-scroll z-50 bg-base-100 flex flex-col rounded-b', dropdownTop: '-translate-y-full top-px bottom-auto rounded-b-none rounded-t', dropdownHidden: 'hidden', options: 'flex flex-col p-0 m-0 list-none', optionsTop: '', group: 'p-0 m-0', groupLabel: 'flex text-sm box-border items-center justify-start text-left py-1 px-3 font-bold bg-gray-200 cursor-default leading-normal', groupLabelPointable: 'cursor-pointer', groupLabelPointed: 'bg-gray-300 text-gray-700', groupLabelSelected: 'bg-accent text-my-text', groupLabelDisabled: 'bg-gray-100 text-gray-300 cursor-not-allowed', groupLabelSelectedPointed: 'bg-accent text-my-text opacity-90', groupLabelSelectedDisabled: 'text-green-100 bg-green-600 bg-opacity-50 cursor-not-allowed', groupOptions: 'p-0 m-0', option: 'flex items-center justify-start box-border text-left cursor-pointer text-base leading-snug py-2 px-3', optionPointed: 'text-gray-800 bg-secondary', optionSelected: 'text-my-text bg-accent', optionDisabled: 'text-gray-300 cursor-not-allowed', optionSelectedPointed: 'text-my-text bg-link-hover', optionSelectedDisabled: 'text-green-100 bg-green-500 bg-opacity-50 cursor-not-allowed', noOptions: 'py-2 px-3 text-gray-600 bg-base-100 text-left rtl:text-right', noResults: 'py-2 px-3 text-gray-600 bg-base-100 text-left rtl:text-right', fakeInput: 'bg-transparent absolute left-0 right-0 -bottom-px w-full h-px border-0 p-0 appearance-none outline-none text-transparent', assist: 'absolute -m-px w-px h-px overflow-hidden', spacer: 'h-6 py-px box-content', } return { multiSelectClasses, } }