/** Input classes for each supported form themes */ export const themes = { default: { default: { wrapper: { sm: 'relative my-1', md: 'relative my-1.5', lg: 'relative my-1.5', }, label: 'text-gray-700 dark:text-gray-300 font-semibold', input: 'flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full bg-white text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 dark:placeholder-gray-500 placeholder-gray-400 shadow-sm focus:outline-none focus:ring-2 focus:border-transparent focus:ring-opacity-100', help: 'text-gray-500', spacing: { horizontal: { sm: 'px-2', md: 'px-4', lg: 'px-5' }, vertical: { sm: 'py-1.5', md: 'py-2', lg: 'py-3' } }, fontSize: { sm: 'text-sm', md: 'text-base', lg: 'text-lg' }, borderRadius: { none: 'rounded-none', small: 'rounded-lg', full: 'rounded-[20px]' } }, ScaleInput: { button: 'cursor-pointer text-gray-700 inline-block border-gray-300 flex-grow dark:bg-notion-dark-light dark:text-gray-300 text-center', unselectedButton: 'bg-white border' }, SliderInput: { stepLabel: 'text-gray-700 dark:text-gray-300 text-center text-xs' }, Button: { body: 'transition ease-in duration-200 text-center font-semibold shadow-md focus:outline-none focus:ring-2 focus:ring-offset-2 filter hover:brightness-90' }, CodeInput: { input: 'overflow-hidden' }, RichTextAreaInput: { input: 'flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full bg-white text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 dark:placeholder-gray-500 placeholder-gray-400 shadow-sm text-base focus:outline-none focus:ring-1 focus:ring-opacity-100 focus:border-transparent focus:ring-2' }, SelectInput: { input: 'relative w-full flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full text-gray-700 dark:text-gray-300 dark:placeholder-gray-600 shadow-sm text-base focus:outline-none focus:ring-2 focus:border-transparent', background: 'bg-white dark:bg-notion-dark-light', chevronGradient: 'bg-gradient-to-r from-transparent to-white dark:to-notion-dark-light', dropdown: 'border border-gray-300 dark:border-gray-600', option: 'rounded', minHeight: { sm: 'min-h-[20px]', md: 'min-h-[24px]', lg: 'min-h-[28px]' } }, PhoneInput: { countrySelectWidth: { sm: 'w-[100px]', md: 'w-[120px]', lg: 'w-[120px]' }, flag: { sm: '!-mt-[14px]', md: '!-mt-[9px] rounded', lg: '!-mt-[9px] rounded' }, flagSize: { sm: 'small', md: 'normal', lg: 'normal' }, maxHeight: { sm: 'max-h-[20px]', md: 'max-h-[24px]', lg: 'max-h-[28px]' } }, FlatSelectInput: { option: 'cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-900 flex items-center gap-x-2 border-t first:border-t-0 px-2', unselectedIcon: 'text-gray-300 dark:text-gray-600', icon: { sm: 'w-4 h-4', md: 'w-5 h-5', lg: 'w-6 h-6 mx-1' } }, DateInput: { input: 'flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full bg-white text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 dark:placeholder-gray-500 placeholder-gray-400 shadow-sm text-base focus:outline-none focus:ring-2 focus:border-transparent focus:ring-opacity-100' }, PaymentInput: { cardContainer: 'transition-all duration-200', focusRing: 'ring-2 ring-primary-500 border-transparent ring-opacity-100' }, CheckboxInput:{ size: { sm: 'w-4 h-4', md: 'w-5 h-5', lg: 'w-5 h-5' }, }, SwitchInput:{ containerSize: { sm: 'h-5 w-10 p-0.5', md: 'h-6 w-12 p-1', lg: 'h-6 w-12 p-1' }, circleSize: { sm: 'h-4 w-4', md: 'h-4 w-4', lg: 'h-4 w-4' }, translatedClass: { sm: 'translate-x-5', md: 'translate-x-6', lg: 'translate-x-6' } }, RatingInput:{ size: { sm: 'w-6 h-6', md: 'w-8 h-8', lg: 'w-10 h-10' }, }, fileInput: { input: 'border border-dashed border-gray-300 dark:border-gray-600 p-4 shadow-none', minHeight: { sm: 'min-h-28', md: 'min-h-40', lg: 'min-h-58' }, inputHover: { light: 'bg-neutral-50', dark: 'bg-notion-dark-light' }, uploadedFile: 'border border-gray-300 dark:border-gray-600 bg-white dark:bg-notion-dark-light rounded-lg shadow-sm max-w-[10rem]' }, SignatureInput: { minHeight: { sm: 'min-h-28', md: 'min-h-40', lg: 'min-h-48' }, }, MatrixInput: { table: 'bg-white dark:bg-notion-dark-light shadow-sm', cell: 'border-gray-300 dark:border-gray-600', cellHover: 'hover:bg-gray-50 dark:hover:bg-gray-900' } }, simple: { default: { wrapper: { sm: 'relative my-1', md: 'relative my-1.5', lg: 'relative my-1.5', }, label: 'text-gray-700 dark:text-gray-300 font-medium', input: 'flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full bg-white text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 dark:placeholder-gray-500 placeholder-gray-400 focus:outline-none focus:ring-2 focus:border-transparent focus:ring-opacity-100', help: 'text-gray-500', spacing: { horizontal: { sm: 'px-2', md: 'px-4', lg: 'px-5' }, vertical: { sm: 'py-1.5', md: 'py-2', lg: 'py-3' } }, fontSize: { sm: 'text-sm', md: 'text-base', lg: 'text-lg' }, borderRadius: { none: 'rounded-none', small: 'rounded-lg', full: 'rounded-[20px]' } }, ScaleInput: { button: 'flex-1 appearance-none border-gray-300 dark:border-gray-600 w-full bg-gray-50 text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 text-center', unselectedButton: 'bg-white border' }, SliderInput: { stepLabel: 'text-gray-700 dark:text-gray-300 text-center text-xs' }, Button: { body: 'transition ease-in duration-200 text-center font-semibold focus:outline-none focus:ring-2 focus:ring-offset-2 filter hover:brightness-90' }, CodeInput: { input: 'overflow-hidden' }, RichTextAreaInput: { input: 'flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full bg-white text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 dark:placeholder-gray-500 placeholder-gray-400 text-base focus:outline-none focus:ring-1 focus:ring-opacity-100 focus:border-transparent focus:ring-2' }, SelectInput: { input: 'relative w-full flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full text-gray-700 dark:text-gray-300 dark:placeholder-gray-600 text-base focus:outline-none focus:ring-2 focus:border-transparent', background: 'bg-white dark:bg-notion-dark-light', chevronGradient: 'bg-gradient-to-r from-transparent to-white dark:to-notion-dark-light', dropdown: 'border border-gray-300 dark:border-gray-600', option: 'rounded', minHeight: { sm: 'min-h-[20px]', md: 'min-h-[24px]', lg: 'min-h-[28px]' } }, PhoneInput: { countrySelectWidth: { sm: 'w-[100px]', md: 'w-[120px]', lg: 'w-[120px]' }, flag: { sm: '!-mt-[14px]', md: '!-mt-[9px] rounded', lg: '!-mt-[9px] rounded' }, flagSize: { sm: 'small', md: 'normal', lg: 'normal' }, maxHeight: { sm: 'max-h-[20px]', md: 'max-h-[24px]', lg: 'max-h-[28px]' } }, FlatSelectInput: { option: 'cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-900 flex items-center space-x-2 border-t first:border-t-0 px-2', unselectedIcon: 'text-gray-300 dark:text-gray-600', icon: { sm: 'w-4 h-4', md: 'w-5 h-5', lg: 'w-6 h-6 mx-1' } }, DateInput: { input: 'flex-1 appearance-none border border-gray-300 dark:border-gray-600 w-full bg-white text-gray-700 dark:bg-notion-dark-light dark:text-gray-300 dark:placeholder-gray-500 placeholder-gray-400 text-base focus:outline-none focus:ring-2 focus:border-transparent focus:ring-opacity-100' }, PaymentInput: { cardContainer: 'transition-all duration-200', focusRing: 'ring-2 ring-primary-500 border-transparent ring-opacity-100' }, CheckboxInput:{ size: { sm: 'w-4 h-4', md: 'w-5 h-5', lg: 'w-5 h-5' }, }, SwitchInput:{ containerSize: { sm: 'h-5 w-10', md: 'h-6 w-12', lg: 'h-6 w-12' }, circleSize: { sm: 'h-4 w-4', md: 'h-4 w-4', lg: 'h-4 w-4' }, }, RatingInput:{ size: { sm: 'w-6 h-6', md: 'w-8 h-8', lg: 'w-10 h-10' }, }, fileInput: { input: 'border border-dashed border-gray-300 dark:border-gray-600 p-4 shadow-none', minHeight: { sm: 'min-h-28', md: 'min-h-40', lg: 'min-h-48' }, inputHover: { light: 'bg-neutral-50', dark: 'bg-notion-dark-light' }, uploadedFile: 'border border-gray-300 dark:border-gray-600 bg-white dark:bg-notion-dark-light shadow-sm max-w-[10rem]' }, SignatureInput: { minHeight: { sm: 'min-h-28', md: 'min-h-40', lg: 'min-h-48' }, }, MatrixInput: { table: 'bg-white dark:bg-notion-dark-light', cell: 'border-gray-300 dark:border-gray-600', cellHover: 'hover:bg-gray-50 dark:hover:bg-gray-900' } }, notion: { default: { wrapper: { sm: 'relative my-1', md: 'relative my-1.5', lg: 'relative my-1.5', }, label: 'text-gray-900 dark:text-gray-100 mb-1 block mt-4', input: 'rounded border border-notion-input-border dark:border-notion-input-borderDark flex-1 appearance-none w-full bg-notion-input-background dark:bg-notion-dark-light text-gray-900 dark:text-gray-100 dark:placeholder-gray-500 placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent', help: 'text-gray-500', spacing: { horizontal: { sm: 'px-2', md: 'px-4', lg: 'px-5' }, vertical: { sm: 'py-1.5', md: 'py-2', lg: 'py-3' } }, fontSize: { sm: 'text-sm', md: 'text-base', lg: 'text-lg' }, borderRadius: { none: 'rounded-none', small: 'rounded', full: 'rounded-[20px]' } }, ScaleInput: { button: 'border border-notion-input-border dark:border-notion-input-borderDark flex-1 appearance-none w-full bg-notion-input-background dark:bg-notion-dark-light text-gray-900 dark:text-gray-100 text-center focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent', unselectedButton: 'bg-notion-input-background dark:bg-notion-dark-light' }, SliderInput: { stepLabel: 'text-gray-700 dark:text-gray-300 text-center text-xs' }, Button: { body: 'transition ease-in duration-200 text-center font-semibold border border-notion-input-border dark:border-notion-input-borderDark focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent filter hover:brightness-90' }, CodeInput: { input: 'border border-notion-input-border dark:border-notion-input-borderDark focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent overflow-hidden' }, RichTextAreaInput: { input: 'flex-1 appearance-none border border-notion-input-border dark:border-notion-input-borderDark w-full bg-notion-input-background dark:bg-notion-dark-light text-gray-900 dark:text-gray-100 dark:placeholder-gray-500 placeholder-gray-400 text-base focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent' }, SelectInput: { input: 'relative w-full border border-notion-input-border dark:border-notion-input-borderDark flex-1 appearance-none w-full text-gray-900 dark:text-gray-100 placeholder-gray-400 dark:placeholder-gray-500 text-base focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent', background: 'bg-notion-input-background dark:bg-notion-dark-light', chevronGradient: 'bg-gradient-to-r from-transparent to-notion-input-background dark:to-notion-dark-light', dropdown: 'border border-notion-input-border dark:border-notion-input-borderDark', option: 'rounded', minHeight: { sm: 'min-h-[20px]', md: 'min-h-[24px]', lg: 'min-h-[28px]' } }, PhoneInput: { countrySelectWidth: { sm: 'w-[100px]', md: 'w-[120px]', lg: 'w-[120px]' }, flag: { sm: '!-mt-[14px]', md: '!-mt-[9px] rounded', lg: '!-mt-[9px] rounded' }, flagSize: { sm: 'small', md: 'normal', lg: 'normal' }, maxHeight: { sm: 'max-h-[20px]', md: 'max-h-[24px]', lg: 'max-h-[28px]' } }, FlatSelectInput: { option: 'cursor-pointer hover:backdrop-brightness-95 flex items-center space-x-2 border-t border-neutral-300 first:border-t-0 px-2', unselectedIcon: 'text-neutral-300 dark:text-neutral-600', icon: { sm: 'w-4 h-4', md: 'w-5 h-5', lg: 'w-6 h-6 mx-1' } }, DateInput: { input: 'border border-notion-input-border dark:border-notion-input-borderDark flex-1 appearance-none w-full bg-notion-input-background dark:bg-notion-dark-light text-gray-900 dark:text-gray-100 placeholder-gray-400 text-base focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent' }, PaymentInput: { cardContainer: 'transition-all duration-200', focusRing: 'ring-2 ring-primary-500 border-transparent ring-opacity-40' }, CheckboxInput:{ size: { sm: 'w-4 h-4', md: 'w-5 h-5', lg: 'w-5 h-5' }, }, SwitchInput:{ containerSize: { sm: 'h-5 w-10', md: 'h-6 w-12', lg: 'h-6 w-12' }, circleSize: { sm: 'h-4 w-4', md: 'h-4 w-4', lg: 'h-4 w-4' }, translatedClass: { sm: 'translate-x-5', md: 'translate-x-6', lg: 'translate-x-6' } }, RatingInput:{ size: { sm: 'w-6 h-6', md: 'w-8 h-8', lg: 'w-10 h-10' }, }, fileInput: { input: 'p-4 rounded border border-dashed border-notion-input-border dark:border-notion-input-borderDark bg-notion-input-background dark:bg-notion-dark-light focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent', minHeight: { sm: 'min-h-28', md: 'min-h-40', lg: 'min-h-48' }, inputHover: { light: 'bg-neutral-50', dark: 'bg-notion-dark-light' }, uploadedFile: 'border border-notion-input-border dark:border-notion-input-borderDark bg-white dark:bg-notion-dark-light rounded max-w-[10rem] focus:outline-none focus:ring-2 focus:ring-opacity-40 focus:border-transparent' }, SignatureInput: { minHeight: { sm: 'min-h-28', md: 'min-h-40', lg: 'min-h-48' }, }, MatrixInput: { table: 'bg-notion-input-background dark:bg-notion-dark-light', cell: 'border-notion-input-border dark:border-notion-input-borderDark', cellHover: 'hover:backdrop-brightness-95' } } }