@letar/forms

Обзор типов полей

Все 40+ компонентов полей в @letar/forms

Текстовые поля

КомпонентОписаниеПример
Form.Field.StringОднострочный текстИмя, email, URL
Form.Field.TextareaМногострочный текстОписание, комментарии
Form.Field.PasswordПароль с переключением видимостиФорма входа
Form.Field.MaskedInputВвод с маской форматаТелефон, кредитная карта
Form.Field.EditableРедактируемый текстКлик для редактирования
Form.Field.RichTextВизуальный редакторСтатьи, посты

Числовые поля

КомпонентОписаниеПример
Form.Field.NumberЧисловой ввод со степперомКоличество, возраст
Form.Field.SliderПолзунокГромкость, рейтинг
Form.Field.CurrencyДенежный ввод с символом валютыЦена, зарплата
Form.Field.PercentageПроцентный ввод (0-100%)Скидка, прогресс
Form.Field.RatingЗвёздочный рейтингОтзывы, оценки

Поля выбора

КомпонентОписаниеПример
Form.Field.SelectВыпадающий списокКатегория, статус
Form.Field.ComboboxПоиск с автодополнениемПоиск пользователя
Form.Field.AutocompleteТекстовое поле с подсказкамиГород, тег
Form.Field.ListboxВсегда видимый список выбораФильтры
Form.Field.RadioGroupГруппа радиокнопокПол, тариф
Form.Field.RadioCardКарточки-радиокнопкиТарифный план
Form.Field.SegmentedGroupСегментированный контролРежим отображения
Form.Field.TagsТеги с автодополнениемМетки, навыки
Form.Field.NativeSelectНативный HTML selectПростые списки
Form.Field.CascadingSelectКаскадные зависимые спискиСтрана → город

Логические поля

КомпонентОписаниеПример
Form.Field.CheckboxСтандартный чекбоксУсловия, настройки
Form.Field.SwitchПереключательВкл/выкл
Form.Field.CheckboxCardЧекбокс-карточкаМножественный выбор

Дата и время

КомпонентОписаниеПример
Form.Field.DateВыбор датыДень рождения
Form.Field.DateRangeДиапазон датПериод бронирования
Form.Field.DateTimePickerСовмещённая дата + времяПланирование события
Form.Field.TimeВыбор времениВремя приёма
Form.Field.DurationДлительность (часы/минуты)Длительность задачи
Form.Field.ScheduleНедельная сетка расписанияРабочие часы

Специальные поля

КомпонентОписаниеПример
Form.Field.PhoneТелефон с маскойКонтактная форма
Form.Field.AddressАвтодополнение адресаДоставка, оплата
Form.Field.CityВыбор городаМестоположение
Form.Field.FileUploadЗагрузка файлов с превьюАватар, документы
Form.Field.PinInputВвод PIN-кодаВерификация
Form.Field.OTPInputВвод одноразового пароляДвухфакторка
Form.Field.ColorPickerВыбор цветаБрендинг

Базовое использование

Все поля работают одинаково:

<Form schema={Schema} initialValue={data} onSubmit={save}>
  <Form.Field.String name="fieldName" />
</Form>

Тип поля, лейбл, плейсхолдер и валидация берутся из Zod-схемы. Нужно указать только name, совпадающий с ключом в схеме.

Пользовательские пропсы

Значения из схемы можно переопределить пропами:

<Form.Field.String
  name="title"
  label="Свой лейбл"
  placeholder="Свой плейсхолдер..."
  helperText="Дополнительная подсказка"
  required
/>

On this page