Telegram Web Link
Привет! Принесли полезные обновления для 2-го поколения Дизайн-системы

Описание работы с дизайн-токенами для разработчиков

Ранее мы добавили отображение дизайн-токенов в Storybook. Вы можете посмотреть как базовые токены, так и компонентные токены (вкладка Design Tokens у каждого компонента).

В дополнение к этому мы опубликовали инструкцию: что такое токены, как их использовать в проекте и как модифицировать тему, изменяя токены.

➡️ Читать инструкцию по дизайн-токенам


Контрибьюция в Дизайн-систему

У нас накопился позитивный опыт совместной работы с разработчиками из других команд. Если вы готовы участвовать в разработке Дизайн-системы, у вас есть наработки для нового компонента или новой функциональности – ждём вас! Давайте развивать Дизайн-систему вместе.

➡️ Читать инструкцию по контрибьюции


Роадмап Дизайн-системы на 2 квартал

Актуализируем наш роадмап. В планах выпуск новых компонентов и улучшение текущих.

➡️ Посмотреть планы развития Дизайн-системы
🔥5👍3
🏕 Релиз 1.9.0 (2-е поколение, React)

Алоха! Небольшое обновление перед праздниками

Изменения:

— PickerDate: Увеличили высоту компонента. Теперь при переходе по месяцам, компонент не будет менять высоту в зависимости от количества дней

— PickerDate: По аналогии с релизом 1.7.0, дали возможность выбирать один и тот же месяц и год

— Loader: Исправили ошибку, которая появлялась при отсутствии высоты

— Box: Поправили ошибки в типах, расширили интерфейс стандартными значениями

— ToastNotification: Убрали устаревший метод findDOMNode

— Обновили внутренние зависимости

— DropdownMenu: Добавили stopPropagation на клик по опции

— DropdownMenu: Добавили новый пример в сторибук с кнопкой "Выбрать всё"

— Overlay/Modal/Drawer: Поправили анимацию в компонентах при открытии/закрытии

— Drawer: Добавили отдельный раздел с рецептами
🔥5👍2
🫧 Релиз 1.5.0 (Vue)

Алоха! Добавили новый компонент и немного обновлений.

Новый компонент:

— Wizard: Позволяет создавать многошаговые интерфейсы с последовательным переходом между этапами, обеспечивая удобную навигацию и управление процессом

Исправлено:

— Drawer: Добавили отдельный раздел с рецептами

— PickerDate: Увеличили высоту компонента. Теперь при переходе по месяцам, компонент не будет менять высоту в зависимости от количества дней

— PickerDate: По аналогии с Релизом 1.4.0, дали возможность выбирать один и тот же месяц и год

— DropdownMenu: Добавили stopPropagation на клик по опции

— DropdownMenu: Добавили новый пример в сторибук с кнопкой "Выбрать всё"

— Loader: Исправили ошибку, которая появлялась при отсутствии высоты

— CheckboxGroup: Исправили баг в сторибуке с кликом по checkbox

— Storybook: Исправили отображение show code для сторей

— Multiselect: Исправили ошибку, из-за которой иконка наезжала на выбранные теги
👍5🔥1
🔥 Релиз 1.9.1 (2-е поколение, React)

Алоха! Мы выпустили хотфикс!

— Multiselect: Исправили визуальный баг при использовании iconPrefix, теги больше не наезжают на иконку

— Accordion: Исправлена ошибка с состоянием defaultOpen
👍5🔥2
💥 Релиз 2.0.0 (2-е поколение, React)

Breaking changes!

— Input/InputCard/InputDate/Select/Multiselect/Textarea: Из стилей компонента убрана минимальная ширина в 280px. Теперь компонент растягивается на всю ширину контейнера. Теперь вы можете, не переопределяя стили задать width всем нашим инпутам, либо оставить их адаптивными под ширину родителя

— DropdownMenu/Tooltip/Popover: Ширина рутового элемента-обертки теперь ориентирована на ширину родителя, а не содержимого. Width: fit-content; заменён на width: 100%;

— DropdownMenu: Удалены deprecated props: onChange, value, defaultValue, controlledComponent, deselectEnabled. В параметры headerSlot и footerSlot теперь передаётся два аргумента, вместо трёх (selectedItems отчасти дублировал dropdownItems). Теперь, для того, чтобы компонент работал корректно нужно передавать актуальные items с выбранными опциями isSelected и менять их в зависимости от колбека onClickItem. С примером можно ознакомится в сторе компонента. Дефолтное значение теперь можно задать, передав в items одной или нескольким опциями isSelected: true

— Переработана передача таких атрибутов как className, style, id, /^data-/ в компоненты. Исключены ситуации, когда эти пропсы попадали не на рутовые элементы. Например, при передаче className="123″ DropdownMenu мы увидим класс 123 на самом верхнем уровне рядом с dropdown-menu-root. Если же мы хотим передать класс самому выпадающему меню, то нужно воспользоваться параметром dropdownMenuClassName

— PickerDate: удалены пропсы dayClassName и dayStyle

Изменения:

— Сторибук обновлён до версии 8.6.14, что позволило нам добавить новую вкладку Code с более полным кодом компонента. Реализация вкладки требует доработки, поэтому ждём ваших предложений по улучшению!

— Перенесли лишние зависимости в devDependencies, убрали неиспользуемые

— Исправили инструкции в сторибуке. Добавили раздел «Как отключить визуальный фокус на компоненте» в конец Installation

— Tabs: Добавили возможность вернуть false в onChange, чтобы предотвратить переход на другой TabItem

— Accordion: Добавили пример как можно импортировать компонент к себе в проект
🔥5👍4
💥 Релиз 2.0.0 (Vue)

🔸 Breaking changes!

— Input/InputCard/InputDate/Select/Multiselect/Textarea: Из стилей компонента убрана минимальная ширина в 280px. Теперь компонент растягивается на всю ширину контейнера. Теперь вы можете, не переопределяя стили задать width всем нашим инпутам, либо оставить их адаптивными под ширину родителя

— DropdownMenu/Tooltip/Popover: Ширина рутового элемента-обертки теперь ориентирована на ширину родителя, а не содержимого. Width: fit-content; заменён на width: 100%

— DropdownMenu: Удалены deprecated props: update:modelValue, modelValue, isMultiselect, deselectEnabled. В параметры header и footer теперь передаётся два аргумента, вместо трёх (selectedItems отчасти дублировал dropdownItems). Теперь, для того, чтобы компонент работал корректно нужно передавать актуальные items с выбранными опциями isSelected и менять их в зависимости от колбека click:item. С примером можно ознакомится в сторе компонента. Дефолтное значение теперь можно задать, передав в items одной или нескольким опциями isSelected: true

— Переработана передача таких атрибутов как className, style, id, /^data-/ в компоненты. Исключены ситуации, когда эти пропсы попадали не на рутовые элементы. Например, при передаче className="123″ DropdownMenu мы увидим класс 123 на самом верхнем уровне рядом с dropdown-menu-root. Если же мы хотим передать класс самому выпадающему меню, то нужно воспользоваться параметром dropdownMenuClassName

— PickerDate: удалены пропсы dayClassName и dayStyle

— Поднята минимальная версия Vue с «3.4» до «3.5.0»

🔸 Новый компонент:

— Accordion: Сворачиваемый блок, который может содержать внутри себя контент разного характера

🔸 Изменения:

— Исправили инструкции в сторибуке. Добавили раздел «Как отключить визуальный фокус на компоненте» в конец Installation

— Tabs: Добавили возможность вернуть false в onChange, чтобы предотвратить переход на другой TabItem

— InputDate: Исправлена работа параметров transformationRule, activeDate. Также теперь locale работает не только на календарь, но и на поле ввода

— Multiselect: Не работал параметр isSelectedItemColored, исправлено

— Select: Теперь clearable работает корректно, очищая поле ввода

— Добавили atomaro/themes в зависимости
👍4🔥2
Релиз 7.14.0 (1-е поколение, React)

Алоха! Продолжаем поддерживать первое поколение, исправили пару ошибок

Изменения:

— InputAmount: Повышена версия react-number-format до 5.4.4 для совместимости с React 19.1

— InlineNotification, Drawer, Modal: Добавлен метод обхода несовместимости с React 19.1 при использовании библиотеки react-transition-group

— PickerDate: Добавлен формат для времени по умолчанию

— TabsItem: Теперь в функцию onChange можно передать значение false, чтобы не выполнять логику выбора

— Добавлена инструкция по подключению иконок из второго поколения в Introduction
3👍3
Релиз 2.1.0 (2-е поколение, React)

Алоха! Перенесли Wizard с Vue, переписали Slider, исправили ошибки


Новый компонент:

— WizardStepsHorizontal: Позволяет создавать многошаговые интерфейсы с последовательным переходом между этапами, обеспечивая удобную навигацию и управление процессом

Исправления:

— Slider: Компонент был полностью переписан с нуля и протестирован. Исправлены ошибки, было улучшено взаимодействие пользователя с компонентом

— InputDate: Выпадающее меню вызывалось по клику на hint. Исправлено

— Select: При открытии нескольких селектов подряд на странице, предыдущие не закрывались. Исправлено

— Исправлено отображение параметров в сторе Box

— Добавили инструкцию по подключению обнуляющих стилей на проект в инструкцию Installation
👍8
🛠️ Релиз 2.1.0 (Vue)

Алоха! Мы отрефакторили Slider, добавили поддержку CommonJS, исправили пару ошибок

Изменения:

— Изменили сборку проекта, добавили поддержку CommonJS

— Slider: Компонент был полностью переписан с нуля и протестирован. Исправлены ошибки, было улучшено взаимодействие пользователя с компонентом

— InputDate: Выпадающее меню вызывалось по клику на hint. Исправлено

— InputDate: Исправлена ошибка в работе валидации, из-за которой не отображались ошибки из переданного параметра validationRules

— WizardStepsHorizontal: Исправлен баг, при котором неправильно рассчитывалась ширина последнего шага

— Добавили инструкцию по подключению обнуляющих стилей на проект в инструкцию Installation
👍3🙏2
‼️ Релиз 1.0.0 (TableGrid, React)

Встречайте, таблицы второго поколения в коде!
Представляем релиз компонента Таблиц на втором поколении React.

В наличии:

— Полное соответствие дизайну с использованием токенов для кастомизации

— Гибкие рендер-функции: кастомизируйте ячейки под любые данные (например, с иконками или ссылками)

— Готовые примеры использования: Стори с различным использованием пропсов компонента

— Широкий набор пропсов: с описаниями, контролами в сторибуке

Пробуйте в деле! Делитесь обратной связью в чате, очень её ждём! Продолжим улучшать и дорабатывать компонент

🔸 Atomaro/tablegrid 1.0.2

— Подняли зависимость atomaro/ui-kit до 2.1.0

🔸 Отличия от TableGrid первого поколения:

— Убрали styled-components, остановились на чистом css и переменных. Смена темы лежит на токенах

— Теперь для внутренних компонентов (чекбоксы, фильтры и тд) используется atomaro/ui-kit

— TableGrid: Исправлено название параметров Expand: hasExpanded и expandedKeys

— TableGrid: Добавлена рендер-функция renderFirstColumnHeader в row.selection, служащая для того, например, чтобы добавить общий чекбокс для выбора строк

— TableGrid: Параметры row и column переименованы в rowConfig и columnConfig соответственно

— TableGrid: Исправлено поведение и вид курсора при перетаскивании колонок

— Параметр size принимает значения s и m

— Исправлены, обновлены и дописаны типы передаваемых параметров

— Обновлены, исправлены примеры в сторибуке
🔥9👍3👏2
Релиз 2.2.0 (2-е поколение, React)

Алоха! У нас изменения в дизайне инпутов и техдолг по модалке

Изменения:

— Обновили зависимость atomaro/themes до 2.2.0. Увеличили отступ внутри поля ввода в Multiselect и добавили красный фон в состоянии ошибки для всех инпутов

— Modal/Drawer: Добавили новые пропсы для передачи className и style непосредственно на всплывающий элемент, а также на Overlay: modalClassName, modalStyle, drawerClassName, drawerStyle, overlayClassName, overlayStyle
🔥5👍2
📙 Релиз 1.1.1 (React Icons)

Алоха! Засинхронизировались с дизайном и обновили пакет иконок

atomaro/icons 1.1.1

— Убрали значение по умолчанию для параметра fill для некоторых иконок, которые неправильно отображались в темной теме

atomaro/icons 1.1.0

— Синхронизировались с дизайном и добавили новые иконки в пакет, обновили некоторые, а также переименовали старые. Полная история изменений иконок в дизайне находится тут

— Перестали использовать styled-components, убрали из зависимостей и оптимизировали все остальные зависимости

Breaking changes

Переименованные иконки:

AlignLeft --> TextAlignLeft
AlignRight --> TextAlignRight
AlignCenter --> TextAlignCenter
AlignJustify --> TextAlignDistance
Divider --> ObjectAlignDividerVertical
StatisticsCircular --> StatisticsCircularOld
StatisticsBoard --> BoardStatistics
MailInbox --> MailNew
NullAdd --> NullDelete
NullDelete --> NullAdd
👍2🔥1
Релиз 2.3.0 (2-е поколение, React)

Алоха! Похолодало, осень, релиз. Исправили ошибки в компонентах и добавили новые параметры

— Обновили зависимость atomaro/icons до 1.1.1

— Select: Компонент не закрывался, находясь в Modal, исправлено

— Multiselect: Добавлен новый параметр hideInvalidTags. При включении больше не добавляет в поле введённые через автокомплит значения, которых нет в переданных items (ранее добавлялось по умолчанию и подсвечивалось красным)

— Multiselect: При включённом autocomplete и срабатывании onBlur поле поиска очищается

— Tooltip: Добавлен проп isOpened. Если параметр передан, компонент работает в контролируемом режиме и не меняет внутреннее состояние

— Tooltip: Добавили onClose при закрытии по клику снаружи и на CloseButton

— Tabs: Тип label изменён со string на ReactNode

— Tabs: Убрана возможность фокуса на TabPanel

— Textarea: Исправили ошибку, которая возникала при передаче className при включённом autoHeight

— Добавили новые рецепты для модального окна. Посмотреть можно в Patterns & Recipes / Modal / Recipes в сторибуке

— Исправления сторибука
👍5
Релиз 2.1.2 (Vue)

Алоха! Повысили качество работы компонентов. Обновили рецепты.

Исправления:

— Tabs: Исправили некорректный фокус по табу на контент

— Select: Исправили работу пропса deselectEnabled

Сторибук:

— Accordion: Обновили рецепты, переработали стори

— Select: Добавили примеры с использованием слотов

— Modal: Добавили рецепты
👍5
Релиз 1.1.0 (Vue Icons)

Алоха! Вслед за React обновляем пакет иконок на Vue

— Синхронизировались с дизайном и добавили новые иконки в пакет, обновили некоторые, а также переименовали старые. Полная история изменений иконок в дизайне находится тут

— Добавили поддержку CommonJS

Breaking changes

Переименованные иконки:

AlignLeft --> TextAlignLeft
AlignRight --> TextAlignRight
AlignCenter --> TextAlignCenter
AlignJustify --> TextAlignDistance
Divider --> ObjectAlignDividerVertical
StatisticsCircular --> StatisticsCircularOld
StatisticsBoard --> BoardStatistics
MailInbox --> MailNew
NullAdd --> NullDelete
NullDelete --> NullAdd
👍5🔥2
Релиз 7.15.0 (1-е поколение, React)

Алоха! Пара новых фичей в старый пакет

Исправления:

— PickerDate/InputDate: Добавлена возможность выбирать один и тот же день, месяц и год в формате isRange

— Multiselect: Добавлен новый параметр в autocomplete clearSearchOnSelect - служит для того, чтобы поле автокомплита очищалось после выбора опции
👍3🔥3
2025/10/31 04:06:05
Back to Top
HTML Embed Code: