Skip to content

UIK-4841/button-link-underline-v-17#2730

Open
slizhevskyv-semrush wants to merge 91 commits intorelease/v17from
UIK-4841/button-link-underline-v-17
Open

UIK-4841/button-link-underline-v-17#2730
slizhevskyv-semrush wants to merge 91 commits intorelease/v17from
UIK-4841/button-link-underline-v-17

Conversation

@slizhevskyv-semrush
Copy link
Contributor

@slizhevskyv-semrush slizhevskyv-semrush commented Feb 19, 2026

Motivation and Context

How has this been tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue).
  • New feature (non-breaking change which adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected).
  • Nice improve.

Checklist:

  • I have updated the documentation accordingly.
  • I have added new tests on added of fixed functionality.

ilyabrower and others added 30 commits February 13, 2026 14:21
…#2711)

<!--- Provide a general summary of your changes in the Title above -->

## Motivation and Context

<!--- Why is this change required? What problem does it solve? -->
<!--- If it fixes an open issue, please link to the issue here. -->

## How has this been tested?

<!--- Please describe in detail how you tested your changes. -->
<!--- For example: -->
<!--- I have added unit tests -->
<!--- I have added Voice Over tests -->
<!--- Code cannot be tested automatically so I have tested it only
manually -->

## Screenshots (if appropriate):

## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->

- [ ] Bug fix (non-breaking change which fixes an issue).
- [ ] New feature (non-breaking change which adds functionality).
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected).
- [ ] Nice improve.

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->

- [ ] I have updated the documentation accordingly.
- [ ] I have added new tests on added of fixed functionality.

---------

Co-authored-by: Valeryia Zimnitskaya <valeryia.zimnitskaya@semrush.com>
…nents (#2719)

<!--- Provide a general summary of your changes in the Title above -->

## Motivation and Context

<!--- Why is this change required? What problem does it solve? -->
<!--- If it fixes an open issue, please link to the issue here. -->

## How has this been tested?

<!--- Please describe in detail how you tested your changes. -->
<!--- For example: -->
<!--- I have added unit tests -->
<!--- I have added Voice Over tests -->
<!--- Code cannot be tested automatically so I have tested it only
manually -->

## Screenshots (if appropriate):

## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->

- [ ] Bug fix (non-breaking change which fixes an issue).
- [ ] New feature (non-breaking change which adds functionality).
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected).
- [ ] Nice improve.

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->

- [ ] I have updated the documentation accordingly.
- [ ] I have added new tests on added of fixed functionality.
… folder (#2720)

<!--- Provide a general summary of your changes in the Title above -->

## Motivation and Context

<!--- Why is this change required? What problem does it solve? -->
<!--- If it fixes an open issue, please link to the issue here. -->

## How has this been tested?

<!--- Please describe in detail how you tested your changes. -->
<!--- For example: -->
<!--- I have added unit tests -->
<!--- I have added Voice Over tests -->
<!--- Code cannot be tested automatically so I have tested it only
manually -->

## Screenshots (if appropriate):

## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->

- [ ] Bug fix (non-breaking change which fixes an issue).
- [ ] New feature (non-breaking change which adds functionality).
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected).
- [ ] Nice improve.

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->

- [ ] I have updated the documentation accordingly.
- [ ] I have added new tests on added of fixed functionality.
## Changelog

### @semcore/base-components

#### BREAK

- Removed using `getNodeByRef` in `Portal`, `OutsideClick`, `ScrollArea` components. Use `React.RefObject` instead.

#### Added

- `Hint` component.
## Changelog

### @semcore/core

#### BREAK

- New major version.
- Removed `WithI18n`. Use `useI18n`.
- Removed `WithCSS`. Use `useCss`.
- Removed `WithAutoFocus` and `autoFocusEnhance`.
- Removed `WithKeyboardFocus`. Just don't use.
- Removed `WithRef`. Use `useForkRef`.
## Changelog

### @semcore/icon

#### BREAK

- New major version as a separate package with icons.
## Changelog

### @semcore/accordion

#### BREAK

- New major version.

### @semcore/add-filter

#### BREAK

- New major version.

### @semcore/badge

#### BREAK

- New major version. Added property `type`. Deprecated `color` and `bg`.

### @semcore/breadcrumbs

#### BREAK

- New major version.

### @semcore/bulk-textarea

#### BREAK

- New major version.

### @semcore/card

#### BREAK

- New major version.

### @semcore/carousel

#### BREAK

- New major version.

### @semcore/checkbox

#### BREAK

- New major version.

### @semcore/color-picker

#### BREAK

- New major version.

### @semcore/data-table

#### BREAK

- New major version.

### @semcore/date-picker

#### BREAK

- New major version.

### @semcore/divider

#### BREAK

- New major version.

### @semcore/dot

#### BREAK

- New major version.

### @semcore/drag-and-drop

#### BREAK

- New major version.

### @semcore/dropdown

#### BREAK

- New major version.

### @semcore/dropdown-menu

#### BREAK

- New major version.

### @semcore/ellipsis

#### BREAK

- Deprecated component. Use the new `ellipsis` prop that's built into various components.

### @semcore/errors

#### BREAK

- New major version.

### @semcore/feature-highlight

#### BREAK

- New major version.

### @semcore/feature-popover

#### BREAK

- New major version.

### @semcore/feedback-form

#### BREAK

- New major version.

### @semcore/flags

#### BREAK

- New major version.

### @semcore/inline-edit

#### BREAK

- New major version.

### @semcore/inline-input

#### BREAK

- New major version.

### @semcore/input-mask

#### BREAK

- New major version.

### @semcore/input-number

#### BREAK

- New major version.

### @semcore/input-tags

#### BREAK

- New major version.

### @semcore/link

#### BREAK

- New major version.

### @semcore/mini-chart

#### BREAK

- New major version.

### @semcore/modal

#### BREAK

- New major version.

### @semcore/notice

#### BREAK

- New major version.

### @semcore/notice-bubble

#### BREAK

- New major version.

### @semcore/pagination

#### BREAK

- New major version.

### @semcore/pills

#### BREAK

- New major version.

### @semcore/product-head

#### BREAK

- New major version.

### @semcore/progress-bar

#### BREAK

- New major version.

### @semcore/radio

#### BREAK

- New major version.

### @semcore/select

#### BREAK

- New major version.

#### Added

- `Select.Option.Text` component. Use it if you have an options that should be ellipsized.

### @semcore/side-panel

#### BREAK

- New major version.

### @semcore/skeleton

#### BREAK

- New major version.

### @semcore/slider

#### BREAK

- New major version.

### @semcore/spin

#### BREAK

- New major version.

### @semcore/spin-container

#### BREAK

- New major version.

### @semcore/switch

#### BREAK

- New major version.

### @semcore/tab-line

#### BREAK

- New major version.

### @semcore/tab-panel

#### BREAK

- New major version.

### @semcore/tag

#### BREAK

- New major version.

### @semcore/textarea

#### BREAK

- New major version.

### @semcore/tooltip

#### BREAK

- New major version. Deprecated `Tooltip.Hint`.

### @semcore/widget-empty

#### BREAK

- New major version.
- Removed unnecessary `margin-bottom` for the widget container.
## Chandelog

### @semcore/base-trigger

#### BREAK

- New major version.

### @semcore/button

#### BREAK

- New major version.

### @semcore/counter

#### BREAK

- New major version.

### @semcore/fullscreen-modal

#### BREAK

- New major version.

### @semcore/input

#### BREAK

- New major version.

### @semcore/time-picker

#### BREAK

- New major version.

### @semcore/typography

#### BREAK

- New major version.

### @semcore/wizard

#### BREAK

- New major version.
## Changelog

### @semcore/base-trigger

#### BREAK

- New major version.

### @semcore/button

#### BREAK

- New major version.

### @semcore/counter

#### BREAK

- New major version.

### @semcore/fullscreen-modal

#### BREAK

- New major version.

### @semcore/input

#### BREAK

- New major version.

### @semcore/time-picker

#### BREAK

- New major version.

### @semcore/typography

#### BREAK

- New major version.

#### Added

- `ellipsis` property to crop the text out of the box.

### @semcore/wizard

#### BREAK

- New major version.
Valeria-Zimnitskaya and others added 14 commits March 2, 2026 12:56
## Motivation and Context

- simplified underlining styles (moved underline slightly closer to
text)
- removed `bottom-padding` — I think it's not needed now, but I'm not
sure I remember correctly for which case it was added
- fixed `text-decoration-thickness` not applying in secondary button
link
- added explicit size to some link examples (underlining is cropped
without set line-height)

## How has this been tested?

Manually.
Not uploading snapshots here because they haven't been updated in the
parent branch, so they would contain some other changes apart from
these.

## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->

- [x] Bug fix (non-breaking change which fixes an issue).
- [ ] New feature (non-breaking change which adds functionality).
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected).
- [ ] Nice improve.

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->

- [ ] I have updated the documentation accordingly.
- [ ] I have added new tests on added of fixed functionality.
## Motivation and Context

Changed addon positioning in Link and ButtonLink:

- for icons, edited the selector to work both for merged and unmerged
addon, and to not affect addons that don't contain icons
- for icons, replaced vertical-align with negative margin-top so that
parent block element height is not affected
- returned some old attributes to align small addons like badge in the
middle
- removed some attributes that don't apply anymore

Question:

- when addon is Counter, it's slightly misaligned with text size 300. It
looks better with `margin-top: -2px`. Size 300 is the second popular
size, so it's not rare, so correct Counter alignment would be nice. But
adding an additional rule for one size seems wrong. Not sure what to do.
<img width="544" height="438" alt="imagen"
src="https://github.com/user-attachments/assets/92c5b7b9-80f8-41e8-a8e6-28443c48c3b2"
/>


## How has this been tested?

Manually, added stories with props:

-
http://localhost:6006/?path=/story/components-link-tests--link-different-sizes
-
http://localhost:6006/?path=/story/components-button-tests-button-link--button-link-sizes-addons

## Screenshots (if appropriate):

<img width="524" height="426" alt="imagen"
src="https://github.com/user-attachments/assets/ecf597ac-beb9-48bc-93a9-345058f1760e"
/>


## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->

- [x] Bug fix (non-breaking change which fixes an issue).
- [ ] New feature (non-breaking change which adds functionality).
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected).
- [ ] Nice improve.

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->

- [ ] I have updated the documentation accordingly.
- [x] I have added new tests on added of fixed functionality.

---------

Signed-off-by: Valeria-Zimnitskaya <valeryia.zimnitskaya@semrush.com>
Signed-off-by: ilyabrower <ilya-brower@yandex.ru>
Co-authored-by: ilyabrower <ilia.brauer@semrush.com>
Co-authored-by: Valeryia Zimnitskaya <valeryia.zimnitskaya@semrush.com>
Co-authored-by: slizhevskyv-semrush <uladzislau.slizheuski@semrush.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment