import { useLingui } from '@lingui/react/macro'; import { type MessageDescriptor } from '@lingui/core'; import { EmailAlignmentInput } from '@/side-panel/pages/email-block-settings/components/EmailAlignmentInput'; import { EmailColorInput } from '@/side-panel/pages/email-block-settings/components/EmailColorInput'; import { EmailSizeInput } from '@/side-panel/pages/email-block-settings/components/EmailSizeInput'; import { StyledEmailFieldLabel } from '@/side-panel/pages/email-block-settings/components/StyledEmailFieldLabel'; import { TextArea } from '@/ui/input/components/TextArea'; import { TextInput } from '@/ui/input/components/TextInput'; export type EmailStyleFieldKind = | 'text' | 'color' | 'box' | 'size' | 'alignment' | 'textarea'; type EmailBlockSettingsFieldInputProps = { field: { label: MessageDescriptor; input: EmailStyleFieldKind; placeholder?: string; }; value: string; onChange: (value: string) => void; }; export const EmailBlockSettingsFieldInput = ({ field, value, onChange, }: EmailBlockSettingsFieldInputProps) => { const { i18n } = useLingui(); const label = i18n._(field.label); switch (field.input) { case 'color': return ( ); case 'size': return ( ); case 'alignment': return ( ); case 'textarea': return (
{label}