UI-компоненты, реализующие правила дизайн-системы
APACHE-2.0 License
Bot releases are hidden (Show)
Published by krutoo over 1 year ago
link
: Добавлены возможные цвета по дизайн-гайдам (#252)text-button
: Добавлены возможные цвета по дизайн-гайдам (#252)select
: правки отображения переполнения поля текстом (#256)switcher-row
: для Checkbox/RadioButton
расстояние между полем и текстом теперь 8 вместо 12 (#256)breakpoints.scss
: добавлены миксины с более явными именами, старые помечены как deprecated
(#256)Published by krutoo over 1 year ago
Все компоненты были пересмотрены с учетом проблем, предложений и новых дизайн-гайдов.
Исправления и доработки.
hooks/breakpoint
: попытка исправить runtime-ошибку this is undefined
с matchMedia
(спасибо @next00)hooks/intersection
: правки тестовых утилит (#239) (спасибо @korniux)carousel/draggable
: правки обработки перетаскивания (#226) (спасибо @next00)Price
: правки вывода цен (#212) (спасибо @vatokato)Следующие компоненты/утилиты помечены как deprecated так как более не нужны (будут удалены в будущем).
BorderedLayout
(теперь следует использовать Layout
, отдельный пример есть в Storybook)Card
: слоты Header
, Content
и Footer
помечены как deprecated
(вместо них TopBar
, BottomBar
и CardContent
)CheckboxField
(теперь следует использовать аналогичный SwitcherRow
)DesktopLayout
(теперь следует использовать Layout
в соответствии с новыми дизайн-гайдами)FieldGrid
(больше не используем "склеивание" полей в дизайне)LoadingOverlay
(следует использовать Spinner
)MaskedField
(теперь следует использовать MaskedInput
)MobileLayout
(теперь следует использовать Layout
)Screen
(теперь следует использовать Modal
)TextField
(теперь следует использовать Input
или Textarea
)Tooltip
(теперь следует использовать Popup
)TouchSlider
(больше не используем в дизайне сложную схему обрезания прокручиваемого контента)WithHint
(теперь следует использовать новую реализацию Hint
)WithTooltip
(теперь следует использовать Popup
)Новый функционал существующих компонентов/утилит.
BottomBar
: добавлен возможность задавать размер через css (size='unset'
)BottomBar
: теперь экспортируется BottomBarSize
Button
: добавлен размер xs
в соответствии с гайдамиButton
: добавлен экспорт типов ButtonAppearance
, ButtonIconPosition
Button
: добавлена возможность выводить состояние loading в соответствии с дизайн-гайдамиButton
: теперь экспортируются типы ButtonSize
, ButtonViewType
, ButtonProps
Card
: добавлена возможность выводить TopBar
и BottomBar
в качестве шапки и футера соответственноCleanGroup
: добавлена возможность задавать размер через css (size='unset'
)DropdownItem
: добавлена возможность задать проп value
DropdownItem
: доработан по новым дизайн-гайдамLink
: варианты цвета вынесены в тип LinkColor
Link
: добавлен вариант цвета basic-blue
(по новым дизайн-гайдам)Link
: добавлена возможность задать подчеркивание пропом underline
Panel
: добавлен проп style
Panel
: добавлен компонент Panel.UnknownContent
для вывода неизвестной html-верстки (#167)Plate
: теперь можно выводить без тени и скругленийScreen
: добавлена возможность управлять блокировкой прокруткиScreen
: теперь использует useViewportHeightUnit
Spinner
: добавлен атрибут data-testid
Spinner
: добавлена возможность выводить любой цвет из токенов дизайн-системыSpinner
: добавлена возможность задавать размер коротким названием (s, m, l) (старые значения будут удалены в будущем)Spinner
: svg-элемент вынесен в отдельный компонент для возможности использования без обертки в виде divStepper
: добавлен экспорт типов StepperSide
и StepperStyle
Stepper
: добавлена возможность предотвращать blur на поле при нажатии кнопокStepper
: добавлена возможность управлять состоянием disabled у кнопокTopBar
: в иконке теперь можно задавать текст вместо иконки (по аналогии с удалённым NavBar
)TopBar
: добавлен data-testid
корневому элементу и соответствующий пропTopBar
: добавлен размер s = 56px
(по новым дизайн-гайдам)TopBar
: добавлена возможность задавать размер через css (size='unset'
)UploadArea
: теперь может быть сфокусирован клавиатуройUploadArea
: теперь может быть disabledfit-element-height
: правки для Firefox 106 (подробности)index
: хук useOutsideClick
: теперь может принимать undefined в качестве callback'а и список рефов вместо одногоbreakpoint
: хук useBreakpoint
: теперь не требует наличия BreakpointProvider
выше в деревеКомпоненты/утилиты, добавленные в этой версии библиотеки.
dropdown/utils
- хук useFloatingDropdown
(SERVICE)FieldBlock
(SERVICE) (#168)helpers/events
- утилита triggerInput
для вызова onChange
у полей вручную (SERVICE)helpers/styles
: утилита setViewportHeightUnit
Hint
- альтернатива WithHint
(#247)HintView
- альтернатива Hint
(#247)hooks/styles
- хук useViewportHeightUnit
(SERVICE)Input
- альтернатива <TextField />
(#169)Layout
- альтернатива DesktopLayout
и MobileLayout
(#236)MaskedInput
- альтернатива MaskedField
(#218)ModalOverlay
- затемнение для модальных компонентов (SidePage
, Modal
и тд, SERVICE)Popup
- альтернатива WithTooltip
(#238)PopupView
- альтернатива Tooltip
(#238)RadioButton
- стилизованный <input type='checkbox' />
по дизайн-гайдам (#171)SwitcherRow
- альтернатива CheckboxField
(#110)Textarea
- альтернатива <TextField multiline />
(#169)TextButton
- кнопка, выглядящая как ссылка (Link
)TopBar
: добавлена утилита presetButtons
для быстрого формирования иконок "Назад" и "Закрыть"types
: типы WithTestId
, FieldProps
shadows.scss
: миксин box-shadow
- для добавления теней по токенам из дизайн-гайдовutils.scss
: миксин semi-stylized-scrollbars
- для ограниченной стилизации полос прокрутки без использования JSutils.scss
: миксин button-reset
для сброса стилей button до состояния, сравнимого с divutils.scss
: миксин focus-visible
(стили по умолчанию для фокусировки клавиатурой по дизайн-гайдам, SERVICE)_internal/page-scroll-lock
- две реализации блокировки (BSL и внутренняя, для сравнения) (INTERNAL)_internal/page-scroll-lock
- новый хук блокировки прокрутки страницы с возможностью задавать реализацию (INTERNAL)Следующие компоненты/утилиты имеют изменения, несовместимые с предыдущей версией (ломающие обратную совместимость).
autocomplete >> autocomplete-deprecated
)base-input >> base-input-deprecated
)resolveAppearance
, computeClassName
за ненадобностьюButtonProps
(в зависимости от пропа appearance
доступные разные свойства)select >> select-deprecated
)phone-input >> phone-input-deprecated
но данные и утилиты остались на прежнем месте)upload/area
в upload-area
inline
, color
, icon
, contentColor
, html
(#167)type
для формирования цветов по новым дизайн-гайдам (#167)adornmentStart
и adornmentEnd
для вывода иконок слева и справа (#167)TopBar
) (#170)m
переименован в xl
(по новым дизайн-гайдам) (#170)s
переименован в m
(по новым дизайн-гайдам) (#170)buttonsProps
заменен на buttons
(для краткости)TopBarProps
NavBar
в составе заменен на TopBar
hint >> hint-deprecated
)_internal/body-scroll
удаленallowTouchMove
перенесена в _internal/page-scroll-lock/adapters/body-scroll-lock
BSL_IGNORE_ATTR
перенесена в _internal/page-scroll-lock/adapters/body-scroll-lock
constants
удален (больше нет констант)Checkbox
заданы стили для выравнивания по центру строки текста по вертикали (экспериментально)RadioButton
заданы стили для выравнивания по центру строки текста по вертикали (экспериментально)CheckboxProps
перенесен из _internal
в /types.ts
и переименован в CheckboxInputProps
Published by krutoo about 2 years ago
Checkbox
: добавлен cursor:pointer
при наведении (#165)Published by krutoo about 2 years ago
Autocomplete
: автоматическое предзаполнение в Chrome открывало выпадающее меню (#163)Published by krutoo about 2 years ago
Carousel
: экспериментальная попытка заменить обработку глобального события resize
на использование ResizeObserver
для исправления скачков при свайпе на мобильных устройствах (#160, #161)Published by krutoo about 2 years ago
Screen
: исправлена блокировка прокрутки вложенных элементов (#158, #159)Published by krutoo about 2 years ago
Range
: кнопкам добавлены атрибуты aria-label SEO (#156, #157)Published by krutoo about 2 years ago
Modal
: хук прокрутки теперь экспериментально использует layout effect (#124, #155)Published by krutoo about 2 years ago
Checkbox
: исправлено поведение при контролируемом состоянии (#153, #154)Published by krutoo over 2 years ago
TextField
: обновлены цвета валидации по соглашению с дизайнерами (#151)Published by krutoo over 2 years ago
Expandable
: inline-стили перенесены в scss-файл (#145)Expandable
: правки работы в случае когда все элементы влазят (#146)Expandable
: ширина открывашки теперь фиксирована (#146)Stepper
: внешний вид обновлен в соответствии с новыми дизайн-гайдами (#147)Stepper
: ослаблены типы callback'ов onAdd, onSubtract (#147)Published by krutoo over 2 years ago
Expandable
: небольшие правки семантики верстки (#143, #144)Expandable
: открывашка больше не показывается в SSR (для SEO) (#143, #144)Expandable
: изменена реализация пересчета видимости (меньше хуков, проще логика, в обход react) (#143, #144)Published by krutoo over 2 years ago
Expandable
: добавить возможность выводить "закрывашку" (#138)Modal
: исправить блокировку прокрутки (#141)Expandable
: придумать как реагировать на rerender и другие события (#137)Published by krutoo over 2 years ago
Expandable.Group
и Expandable.Item
(#134, #136, #135)Chips.Item
: при выводе вне Chips
теперь нет отступов (#135)Published by krutoo over 2 years ago
Chips
: чипсы-ссылкы теперь правильно отображаются в состоянии "checked" (#132, #133)Published by krutoo over 2 years ago
WithInViewportObserver
IntersectionObserver
(/helpers/intersection-observer
)useKeyDown
: добавлена передача события в callbackuseKeyDown
: добавлена проверка поля code для вызова callback'аuseIntersection
useIntersection
Clean.Group
: добавлена возможность задавать размер (по гайдам)Clean.Group
: добавлена возможность задавать размер через специальный контекстBottomBar
: задействован контекст CleanGroupSizeContext
для того чтобы дочерние прозрачные кнопки автоматически брали нужный размерSidePage
: добавлена возможность отключать отступы в футере (по гайдам для прозрачных кнопок)Clean.Group
: правки работы пропа asLink
Published by krutoo over 2 years ago
Autocomplete
: теперь при потере фокуса на поле меню опций закрывается (#123)Published by krutoo over 2 years ago
hidden-scrollbars
ArrowButton
: добавлен экспорт типов размера кнопки и направления стрелкиTouchSlider
: обновлена обрезка контента по гайдам (#120)TouchSlider
: задействован scss-mixin hidden-scrollbars
(#121)BaseInput
: задействован scss-mixin hidden-scrollbars
(#121)ArrowButton
: мелкие правки stories (#121)Avatar
: мелкие правки stories (#121)MobileLayout
: мелкие правки stories (#121)DesktopLayout
: мелкие правки stories (#121)Range
: мелкие правки типов (#121)Published by krutoo over 2 years ago
Carousel
: правки для использования в NodeJS (При SSR падала ошибка) (#119)Published by krutoo over 2 years ago
Link
: правки после обновления цветов, не применялся цвет по умолчанию (#113)