Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
8bda80f
[link, button, base-trigger] changed link styles
ilyabrower Jul 23, 2026
f0e9d62
[link] added isExternal property
ilyabrower Jul 24, 2026
fb67e5d
[link] fixed test story
ilyabrower Jul 24, 2026
f26bd49
[stories] updates test stories
j-mnizhek Jul 24, 2026
a7a1df7
Merge branch 'UIK-5351/add-more-variables-to-theme' into UIK-5553/lin…
j-mnizhek Jul 27, 2026
fcd616a
[link, data-table] added LinkAction component for render links in table
ilyabrower Jul 28, 2026
a4a2768
[chore] Merge branch 'UIK-5553/links-redesign' of github.com:semrush/…
ilyabrower Jul 28, 2026
ea0c373
Merge branch 'UIK-5351/add-more-variables-to-theme' into UIK-5553/lin…
j-mnizhek Jul 28, 2026
40500dd
[chore] Merge remote-tracking branch 'origin/UIK-5351/add-more-variab…
ilyabrower Aug 5, 2026
c5fcfce
Merge branch 'UIK-5351/add-more-variables-to-theme' into UIK-5553/lin…
Valeria-Zimnitskaya Aug 5, 2026
300417c
[button] fixed build
ilyabrower Aug 6, 2026
6296469
[link] update stories
Valeria-Zimnitskaya Aug 6, 2026
c6bbf26
[data-table] fixed build
ilyabrower Aug 6, 2026
1693949
[link] update external link icon sizes and enrich stories
j-mnizhek Aug 7, 2026
e0d8755
[chore] Merge remote-tracking branch 'origin/UIK-5351/add-more-variab…
ilyabrower Aug 10, 2026
529e783
[link] added sr description for external links
ilyabrower Aug 10, 2026
e2dfa9a
[link] fixed width calculation for external links
ilyabrower Aug 10, 2026
e15406d
[link] fixed width calculation for external links
ilyabrower Aug 10, 2026
53966c4
[stories] update test story for different sizes
j-mnizhek Aug 10, 2026
d6c953c
Merge branch 'UIK-5351/add-more-variables-to-theme' into UIK-5553/lin…
Valeria-Zimnitskaya Aug 10, 2026
4c61c19
[link] update test stories
Valeria-Zimnitskaya Aug 10, 2026
c692371
[link] fixed external link with href
ilyabrower Aug 11, 2026
d568a32
[chore] Merge branch 'UIK-5553/links-redesign' of github.com:semrush/…
ilyabrower Aug 11, 2026
66acbb4
Merge branch 'UIK-5351/add-more-variables-to-theme' into UIK-5553/lin…
Valeria-Zimnitskaya Aug 11, 2026
a07962a
[link] fixed external link with href
ilyabrower Aug 11, 2026
815cfe4
[chore] Merge branch 'UIK-5553/links-redesign' of github.com:semrush/…
ilyabrower Aug 11, 2026
a259889
[link] fixed external link with href
ilyabrower Aug 11, 2026
74db61a
[link] fixed external link for components with text
ilyabrower Aug 11, 2026
4d18252
[link] fixed external link for components with text
ilyabrower Aug 11, 2026
5912b91
[link] fixed external link for components with text
ilyabrower Aug 11, 2026
9ac8c70
[link] tests
Valeria-Zimnitskaya Aug 11, 2026
38155f0
[link] fixed URL constructon
ilyabrower Aug 11, 2026
697e99b
[link] update test and story
Valeria-Zimnitskaya Aug 11, 2026
63dd086
[link] update test and story
Valeria-Zimnitskaya Aug 11, 2026
14bfdb7
[link] fixed work with undefined href
ilyabrower Aug 12, 2026
e0eaf9d
[chore] Merge branch 'UIK-5553/links-redesign' of https://github.com/…
Valeria-Zimnitskaya Aug 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 1 addition & 9 deletions crowdin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -120,15 +120,7 @@
"translation": "/%original_path%/%two_letters_code%.json",
},
{
"source": "/semcore/notice/src/translations/en.json",
"translation": "/%original_path%/%two_letters_code%.json",
},
{
"source": "/semcore/notice-bubble/src/translations/en.json",
"translation": "/%original_path%/%two_letters_code%.json",
},
{
"source": "/semcore/notice-global/src/translations/en.json",
"source": "/semcore/link/src/translations/en.json",
"translation": "/%original_path%/%two_letters_code%.json",
},
{
Expand Down
3 changes: 3 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 8 additions & 2 deletions semcore/button/src/component/ButtonLink/ButtonLink.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { Intergalactic } from '@semcore/core';
import type { Intergalactic, IRootComponentProps } from '@semcore/core';
import { createComponent, sstyled, Root, Component } from '@semcore/core';
import Link from '@semcore/link';
import React from 'react';
Expand Down Expand Up @@ -37,6 +37,12 @@ class RootButtonLink extends Component<
}
}

function Text(props: IRootComponentProps) {
const SText = Root;
const { styles } = props;
return sstyled(styles)(<SText render={Link.Text} />);
}

/**
* ButtonLink
*
Expand All @@ -45,7 +51,7 @@ class RootButtonLink extends Component<
export const ButtonLink = createComponent<NSButtonLink.Component, typeof RootButtonLink>(
RootButtonLink,
{
Text: Link.Text,
Text,
Addon: Link.Addon,
},
{
Expand Down
16 changes: 12 additions & 4 deletions semcore/button/src/component/ButtonLink/buttonLink.shadow.css
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,20 @@ SButtonLink {
}

SButtonLink[use='primary']:not([color]) {
color: var(--intergalactic-text-link, oklch(0.1 0.03 137 / 0.899)); /* TODO: --intergalactic-text-link-primary */
color: var(--intergalactic-text-link-primary, oklch(0.1 0.03 137 / 0.899));

SText {
text-decoration-color: transparent;
}

&[active],
&:active,
&:hover {
color: var(--intergalactic-text-link-hover-active, oklch(0.1 0.03 137 / 0.899)); /* TODO: --intergalactic-text-link-primary-hover-active */
color: var(--intergalactic-text-link-primary-hover-active, oklch(0.1 0.03 137 / 0.899));

SText {
text-decoration-color: currentColor;
}
}
}

Expand All @@ -19,11 +27,11 @@ SButtonLink[use='secondary']:not([color]) {
&[active],
&:active,
&:hover {
color: var(--intergalactic-text-hint-hover-active, oklch(0.086 0.026 145.8 / 0.605));
color: var(--intergalactic-text-link-primary, oklch(0.1 0.03 137 / 0.899));
}
}

SButtonLink[use='secondary'] SText {
text-decoration-style: dashed;
text-decoration-style: dotted;
text-decoration-color: currentColor;
}
1 change: 1 addition & 0 deletions semcore/data-table/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
"@semcore/checkbox": "^17.2.1",
"@semcore/spin": "^17.2.1",
"@semcore/tooltip": "^17.2.1",
"@semcore/link": "^17.2.1",
"@semcore/widget-empty": "^17.2.1"
},
"devDependencies": {
Expand Down
32 changes: 32 additions & 0 deletions semcore/data-table/src/components/LinkAction/LinkAction.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { ButtonLink } from '@semcore/button';
import Divider from '@semcore/divider';
import LinkExternalM from '@semcore/icon/LinkExternal/m';
import Link from '@semcore/link';
import type { NSText } from '@semcore/typography';
import React from 'react';

interface IProps extends NSText.BaseProps, NSText.EllipsisProps, NSText.HintProps {
displayHref: string;
externalHref: string;
internalAction: string | (() => void);
}

export class LinkAction extends React.PureComponent<IProps> {
render(): React.ReactNode {
const { displayHref, externalHref, internalAction, ...textProps } = this.props;
return (
<>
{typeof internalAction === 'string'
? (<Link href={internalAction}><Link.Text {...textProps}>{displayHref}</Link.Text></Link>)
: (<ButtonLink onClick={internalAction}><ButtonLink.Text {...textProps}>{displayHref}</ButtonLink.Text></ButtonLink>)}
<Divider orientation='vertical' mx={1} hMin={0} my={1} />
<Link
href={externalHref}
color='--gray-400'
addonLeft={() => <LinkExternalM width={14} height={14} />}
aria-label={externalHref}
/>
</>
);
}
}
2 changes: 2 additions & 0 deletions semcore/data-table/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import type {
ColumnGroupConfig,
ColumnItemConfig,
} from './components/DataTable/DataTable.types';
import { LinkAction } from './components/LinkAction/LinkAction';
import { SelectableRows } from './store/SelectableRows';

const wrapDataTable = <PropsExtending extends {}>(
Expand All @@ -32,6 +33,7 @@ export {
ROW_GROUP,
wrapDataTable,
SelectableRows,
LinkAction,
};
export type {
DataTableSort,
Expand Down
Loading
Loading