Forms · Upload · Stable

Upload

Загрузка файлов: зона выбора или перетаскивания и список файлов под ней, у каждого свой статус — принят, загружается или отклонён. Два размера, кнопка «Добавить файл» вместо зоны, когда места мало. Файл привязывается к заявке только при отправке формы, поэтому удаление строки обратимо и подтверждения не требует.

Зона — размер

md 60 · lg 144
Размер
Пример
MD · Small
Выберите файл или перетяните сюдаПоддерживаемые форматы файлов — pdf, doc, docx.
LG · Big
Выберите файл или перетяните сюдаПоддерживаемые форматы файлов — pdf, doc, docx.

Зона — ошибка и выключено

наведение и нажатие — в State Explorer
Состояние
MD · LG
Ошибка
Файл не загруженФайл больше 10 МБ. Загрузите файл меньше. (code: UPL-413)
Файл не загруженФормат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
Выключено
Выберите файл или перетяните сюдаПоддерживаемые форматы файлов — pdf, doc, docx.
Выберите файл или перетяните сюдаПоддерживаемые форматы файлов — pdf, doc, docx.

Строка файла

uploaded · loading · error · disabled
Статус
MD 48 · LG 60
Принят
Выписка по счёту.pdfPDF | 923 КБ
Выписка по счёту.pdf. Загружено. PDF | 923 КБ
Выписка по счёту.pdfPDF | 923 КБ
Выписка по счёту.pdf. Загружено. PDF | 923 КБ
Загрузка — текстом
Договор брокерского обслуживания.docxЗагрузка — 320 / 1 024 КБ
Договор брокерского обслуживания.docxЗагрузка — 320 / 1 024 КБ
Загрузка — полосой
Анкета клиента.pdf
25%
Анкета клиента.pdf
25%
Ошибка
Скан паспорта.pngФормат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
Скан паспорта.png. Ошибка загрузки. Формат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
Скан паспорта.pngФормат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
Скан паспорта.png. Ошибка загрузки. Формат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
Выключено
Выписка по счёту.pdfPDF | 923 КБ
Выписка по счёту.pdf. Загружено. PDF | 923 КБ
Выписка по счёту.pdfPDF | 923 КБ
Выписка по счёту.pdf. Загружено. PDF | 923 КБ

Группа

Figma 2973:75562 · зона или кнопка + список

Small

Выберите файл или перетяните сюдаПоддерживаемые форматы файлов — pdf, doc, docx.
  • Договор.docxЗагрузка — 320 / 1 024 КБ
  • Скан паспорта.pngФормат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
    Скан паспорта.png. Ошибка загрузки. Формат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
  • Выписка по счёту.pdfPDF | 923 КБ
    Выписка по счёту.pdf. Загружено. PDF | 923 КБ

Big

Выберите файл или перетяните сюдаПоддерживаемые форматы файлов — pdf, doc, docx.
  • Договор.docxЗагрузка — 320 / 1 024 КБ
  • Скан паспорта.pngФормат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
    Скан паспорта.png. Ошибка загрузки. Формат не поддерживается. Загрузите pdf, doc или docx. (code: UPL-415)
  • Выписка по счёту.pdfPDF | 923 КБ
    Выписка по счёту.pdf. Загружено. PDF | 923 КБ

Кнопка вместо зоны

  • Договор.docxЗагрузка — 320 / 1 024 КБ
  • Выписка по счёту.pdfPDF | 923 КБ
    Выписка по счёту.pdf. Загружено. PDF | 923 КБ

Правила

когда применять и когда не стоит

Удаление — без подтверждения

Файл привязывается к заявке только при отправке формы. До неё корзина лишь снимает файл из очереди — это обратимо, диалог не нужен. «Принят» не значит «сохранён».

Ошибка — причина, действие и код

«Ошибка загрузки» недостаточно. Пишите: «Файл больше 10 МБ. Загрузите файл меньше. (code: UPL-413)». Коды UPL и UPQ — в спецификации компонента.

На мобильном — без перетаскивания

Перетащить файл на телефоне нельзя, поэтому заголовок зоны там — «Нажмите, чтобы добавить файл». Отдельного мобильного варианта нет, меняется только текст.

Только выбор файла — не Upload

Если список, ход и статусы не нужны, достаточно кнопки с обычным полем выбора. Готовый файл как метку показывает Tag; Badge — только счётчик.

Ход загрузки не зачитывается

Скринридер объявляет только итог — принят или отклонён. Счётчик «320 / 1 024 КБ» меняется слишком часто, строка на время загрузки помечена занятой.

«File downloded» — пока вне системы

Элемент 2961:71948 на странице макета в сборку не вошёл: его роль не описана. Появится, когда дизайнер её опишет.

State Explorer

интерактивный перебор осей