import type { SurfaceColor, SurfaceEmphasis } from '../../types/surfaceColor'; import type { FieldState } from './resolveFieldState'; export interface ResolvedFieldPresentation { helperColor?: Extract; helperEmphasis: Extract; labelColor?: Extract; labelEmphasis: Extract; } export function resolveFieldPresentation(fieldState: FieldState): ResolvedFieldPresentation { if (fieldState.invalid) { return { helperColor: 'error', helperEmphasis: 'default', labelColor: 'error', labelEmphasis: 'default', }; } if (fieldState.disabled || fieldState.readOnly) { return { helperEmphasis: 'muted', labelEmphasis: 'muted', }; } return { helperEmphasis: 'default', labelEmphasis: 'default', }; }