4. Минутка дизайн-системы
В Just AI долгое время не было единого компонента Таблицы в дизайн-системе.
Разрабатывала единый компонент под все таблицы: собрала примеры со всех разделов, нашла попробовала несколько концепций, выбрала главную, проверила на таблицах из продукта, проверила на дизайнерах согласовала с разработкой и описала.
В продукте используется множество таблиц с большой вариацией контента: он может идти в 3 строки, каждая строка содержать текст + иконку + бейдж + etc, строки могут быть сворачиваемые и иметь второй уровень, etc. Все это разнообразие, засунутое в 1 вариацию давало сильную нагрузку на память и на некоторых компьютерах отрисовка таблицы или вызов другого варианта вызывало дикие задержки, что, конечно, очень сильно раздражало пользователей. Нужно было искать другой вариант
Вторым важным для меня пунктом была настройка ширины колонок в таблице и шапке.
Таким образом, к чему я пришла:
Пример content-ячейки, которая может находится в начале, середине или конце таблицы, иметь до 3-х строк, в каждой из которых до 6 блоков контента и несколько вариантов типов контента. Все настройки вложенных компонентов доступны сразу с первого уровня (ячейки).
Получается небольшое количество компонентов, гибкая настройка и малое потребление памяти.
Дизайнерам зашло, а разработчики сказали, что им норм 😊
- Не делать суперкомпонентов с миллионами вариаций. Делать отдельными небольшими блоками с вложенными компонентами.
- Основной "строительный блок" — 1 ячейка. Одновременно шаг навстречу оптимизации, облегчения настройки содержимого и балансировки ширины столбцов с шапкой.
- Для облегчения настройки ячейки делятся на 3 типа: left-actions, content и right-actions.
- Собрать полностью рабочий и универсальный компонент таблиц.
- Ограничивающее условие: избежать больших утечек памяти (т.е. чтобы компонент при работе не зависал на относительно старых компьютерах).
Положение ячейки с количеством строк
Количество контента в строке