diff --git a/.github/workflows/init-icon-prerelease.yml b/.github/workflows/init-icon-prerelease.yml index 76971733ab..9c30df3551 100644 --- a/.github/workflows/init-icon-prerelease.yml +++ b/.github/workflows/init-icon-prerelease.yml @@ -38,9 +38,11 @@ jobs: name: Install pnpm id: pnpm-install with: - version: 10.11.1 + version: 10.32.1 run_install: false - uses: actions/setup-node@v4.0.1 + with: + node-version: 24 - name: Get pnpm store directory id: pnpm-cache run: | diff --git a/.github/workflows/init-illustration-prerelease.yml b/.github/workflows/init-illustration-prerelease.yml index b373464588..5bfcebffce 100644 --- a/.github/workflows/init-illustration-prerelease.yml +++ b/.github/workflows/init-illustration-prerelease.yml @@ -38,9 +38,11 @@ jobs: name: Install pnpm id: pnpm-install with: - version: 10.11.1 + version: 10.32.1 run_install: false - uses: actions/setup-node@v4.0.1 + with: + node-version: 24 - name: Get pnpm store directory id: pnpm-cache run: | diff --git a/playground/entries/Tag.tsx b/playground/entries/Tag.tsx index 01be39558e..c7adba5abc 100644 --- a/playground/entries/Tag.tsx +++ b/playground/entries/Tag.tsx @@ -1,5 +1,5 @@ import EditM from '@semcore/icon/Edit/m'; -import type { TagProps } from '@semcore/ui/tag'; +import type { NSTag } from '@semcore/ui/tag'; import { TagContainer } from '@semcore/ui/tag'; import React from 'react'; @@ -13,7 +13,7 @@ type AdditionalJSXProps = { addon: (typeof Addons)[number]; closeIcon: boolean; }; -export type TagJSXProps = JSXProps & AdditionalJSXProps; +export type TagJSXProps = JSXProps & AdditionalJSXProps; function getJSX(props: TagJSXProps) { return ( diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2a53d667a1..77ba9daa3c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -326,7 +326,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography csstype: specifier: 3.1.3 @@ -434,7 +434,7 @@ importers: specifier: ^17.0.1 version: link:../tooltip '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -453,7 +453,7 @@ importers: semcore/breadcrumbs: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -481,7 +481,7 @@ importers: specifier: ^17.0.1 version: link:../tooltip '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography dompurify: specifier: 3.4.0 @@ -512,7 +512,7 @@ importers: specifier: ^17.0.1 version: link:../spin '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -537,7 +537,7 @@ importers: specifier: ^17.0.1 version: link:../tooltip '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -578,7 +578,7 @@ importers: semcore/checkbox: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -597,7 +597,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/divider': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../divider '@semcore/dropdown': specifier: ^17.0.1 @@ -680,13 +680,13 @@ importers: specifier: 2.3.0 version: 2.3.0(typescript@4.9.5) '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/divider': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../divider '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography '@types/d3-shape': specifier: 3.1.7 @@ -762,7 +762,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/spin': specifier: ^17.0.1 @@ -823,10 +823,10 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/divider': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../divider '@semcore/dropdown': specifier: ^17.0.1 @@ -835,13 +835,13 @@ importers: specifier: ^17.0.1 version: link:../input '@semcore/input-mask': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../input-mask '@semcore/tooltip': specifier: ^17.0.1 version: link:../tooltip '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography dayjs: specifier: 1.8.36 @@ -890,7 +890,7 @@ importers: semcore/drag-and-drop: dependencies: '@semcore/card': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../card devDependencies: '@semcore/badge': @@ -933,7 +933,7 @@ importers: specifier: ^17.0.1 version: link:../dropdown '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography classnames: specifier: 2.2.6 @@ -983,7 +983,7 @@ importers: specifier: ^17.0.1 version: link:../illustration '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1008,7 +1008,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/input': specifier: ^17.0.1 @@ -1017,10 +1017,10 @@ importers: specifier: ^17.0.1 version: link:../notice '@semcore/pills': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../pills '@semcore/radio': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../radio '@semcore/select': specifier: ^17.0.1 @@ -1029,10 +1029,10 @@ importers: specifier: ^17.0.1 version: link:../switch '@semcore/tab-line': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../tab-line '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1079,7 +1079,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/illustration': specifier: ^17.0.1 @@ -1109,7 +1109,7 @@ importers: specifier: ^17.0.1 version: link:../tooltip '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography final-form: specifier: 4.20.7 @@ -1174,7 +1174,7 @@ importers: specifier: ^17.0.1 version: link:../modal '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1409,7 +1409,7 @@ importers: semcore/link: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@floating-ui/dom': @@ -1446,7 +1446,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1468,7 +1468,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1518,7 +1518,7 @@ importers: specifier: ^17.0.1 version: link:../link '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1579,7 +1579,7 @@ importers: semcore/radio: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1601,10 +1601,10 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/divider': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../divider '@semcore/dropdown': specifier: ^17.0.1 @@ -1616,7 +1616,7 @@ importers: specifier: ^17.0.1 version: link:../input '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography classnames: specifier: 2.2.6 @@ -1644,7 +1644,7 @@ importers: specifier: ^17.0.1 version: link:../button '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1727,7 +1727,7 @@ importers: semcore/tab-line: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1743,7 +1743,7 @@ importers: semcore/tab-panel: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1762,7 +1762,7 @@ importers: semcore/tag: dependencies: '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography devDependencies: '@semcore/base-components': @@ -1869,7 +1869,7 @@ importers: semcore/ui: dependencies: '@semcore/accordion': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../accordion '@semcore/add-filter': specifier: ^17.0.1 @@ -1878,7 +1878,7 @@ importers: specifier: ^17.0.1 version: link:../badge '@semcore/base-components': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../base-components '@semcore/base-trigger': specifier: ^17.0.1 @@ -1887,19 +1887,19 @@ importers: specifier: ^17.0.1 version: link:../breadcrumbs '@semcore/bulk-textarea': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../bulk-textarea '@semcore/button': specifier: ^17.0.1 version: link:../button '@semcore/card': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../card '@semcore/carousel': specifier: ^17.0.1 version: link:../carousel '@semcore/checkbox': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../checkbox '@semcore/color-picker': specifier: ^17.0.1 @@ -1911,19 +1911,19 @@ importers: specifier: ^17.0.1 version: link:../counter '@semcore/d3-chart': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../d3-chart '@semcore/data-table': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../data-table '@semcore/date-picker': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../date-picker '@semcore/divider': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../divider '@semcore/dot': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../dot '@semcore/drag-and-drop': specifier: ^17.0.1 @@ -1938,7 +1938,7 @@ importers: specifier: ^17.0.1 version: link:../ellipsis '@semcore/errors': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../errors '@semcore/feature-highlight': specifier: ^17.0.1 @@ -1974,7 +1974,7 @@ importers: specifier: ^17.0.1 version: link:../input '@semcore/input-mask': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../input-mask '@semcore/input-number': specifier: ^17.0.1 @@ -2001,25 +2001,25 @@ importers: specifier: ^17.0.1 version: link:../pagination '@semcore/pills': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../pills '@semcore/product-head': specifier: ^17.0.1 version: link:../product-head '@semcore/progress-bar': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../progress-bar '@semcore/radio': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../radio '@semcore/select': specifier: ^17.0.1 version: link:../select '@semcore/side-panel': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../side-panel '@semcore/skeleton': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../skeleton '@semcore/slider': specifier: ^17.0.1 @@ -2034,10 +2034,10 @@ importers: specifier: ^17.0.1 version: link:../switch '@semcore/tab-line': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../tab-line '@semcore/tab-panel': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../tab-panel '@semcore/tag': specifier: ^17.0.1 @@ -2052,7 +2052,7 @@ importers: specifier: ^17.0.1 version: link:../tooltip '@semcore/typography': - specifier: ^17.0.1 + specifier: ^17.0.2 version: link:../typography '@semcore/widget-empty': specifier: ^17.0.1 @@ -19409,7 +19409,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.15 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.13)(@types/node@25.5.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@9.20.3)(jsdom@22.1.0)(lightningcss@1.32.0)(msw@2.12.14(@types/node@25.5.2)(typescript@6.0.2))(sass@1.98.0)(sugarss@5.0.1(postcss@8.4.38))(terser@5.46.1)(yaml@2.8.3) + vitest: 3.2.4(@types/debug@4.1.13)(@types/node@25.5.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@9.20.3)(jsdom@22.1.0)(lightningcss@1.32.0)(msw@2.12.14(@types/node@25.5.2)(typescript@5.9.3))(sass@1.98.0)(sugarss@5.0.1(postcss@8.5.8))(terser@5.46.1)(yaml@2.8.3) '@vitest/utils@3.2.4': dependencies: diff --git a/semcore/accordion/CHANGELOG.md b/semcore/accordion/CHANGELOG.md index c408e56390..f2cc9006f1 100644 --- a/semcore/accordion/CHANGELOG.md +++ b/semcore/accordion/CHANGELOG.md @@ -2,6 +2,13 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSAccordion` +namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/accordion/package.json b/semcore/accordion/package.json index f793c61c55..c887d733c1 100644 --- a/semcore/accordion/package.json +++ b/semcore/accordion/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/accordion", "description": "Semrush Accordion Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -18,11 +18,11 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "csstype": "3.1.3" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/add-filter/package.json b/semcore/add-filter/package.json index 6a63bdaa19..8b6d8596a9 100644 --- a/semcore/add-filter/package.json +++ b/semcore/add-filter/package.json @@ -25,7 +25,7 @@ "@semcore/base-trigger": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/badge/package.json b/semcore/badge/package.json index d75a2bdf09..d037924c32 100644 --- a/semcore/badge/package.json +++ b/semcore/badge/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/base-components/CHANGELOG.md b/semcore/base-components/CHANGELOG.md index e9e6fe3a21..bcc5f22eaf 100644 --- a/semcore/base-components/CHANGELOG.md +++ b/semcore/base-components/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- **flex-box**: Incorrect handling of styles for focus ring offset values. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/base-components/package.json b/semcore/base-components/package.json index e6ece4a8db..0553ac5166 100644 --- a/semcore/base-components/package.json +++ b/semcore/base-components/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/base-components", "description": "Semrush Base Components", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/esm/index.mjs", "typings": "lib/types/index.d.ts", diff --git a/semcore/base-trigger/package.json b/semcore/base-trigger/package.json index 24c500f06a..16ae2499fe 100644 --- a/semcore/base-trigger/package.json +++ b/semcore/base-trigger/package.json @@ -20,11 +20,11 @@ "@semcore/counter": "^17.0.1", "@semcore/spin": "^17.0.1", "@semcore/tooltip": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/button": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/breadcrumbs/package.json b/semcore/breadcrumbs/package.json index f310be569e..2b45fc6cba 100644 --- a/semcore/breadcrumbs/package.json +++ b/semcore/breadcrumbs/package.json @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/bulk-textarea/CHANGELOG.md b/semcore/bulk-textarea/CHANGELOG.md index de9b1d67d3..ddf8c8fa45 100644 --- a/semcore/bulk-textarea/CHANGELOG.md +++ b/semcore/bulk-textarea/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Vulnerabilities were discovered in the `dompurify` version. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/bulk-textarea/package.json b/semcore/bulk-textarea/package.json index 4a0f1766a9..fd01c4799a 100644 --- a/semcore/bulk-textarea/package.json +++ b/semcore/bulk-textarea/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/bulk-textarea", "description": "Semrush BulkTextarea Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -18,13 +18,13 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/counter": "^17.0.1", "@semcore/tooltip": "^17.0.1", "dompurify": "3.4.0" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/button/package.json b/semcore/button/package.json index 4bc3a3c674..1aedf16d14 100644 --- a/semcore/button/package.json +++ b/semcore/button/package.json @@ -18,11 +18,11 @@ }, "dependencies": { "@semcore/spin": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/link": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/card/CHANGELOG.md b/semcore/card/CHANGELOG.md index ae85adb4fe..437b00f978 100644 --- a/semcore/card/CHANGELOG.md +++ b/semcore/card/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSCard` namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/card/package.json b/semcore/card/package.json index abf28d1c29..fc8b5630d7 100644 --- a/semcore/card/package.json +++ b/semcore/card/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/card", "description": "Semrush Card Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,12 +17,12 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/tooltip": "^17.0.1", "@semcore/button": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/carousel/package.json b/semcore/carousel/package.json index 3663fcfa4d..089865a397 100644 --- a/semcore/carousel/package.json +++ b/semcore/carousel/package.json @@ -21,7 +21,7 @@ "@semcore/modal": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/checkbox/CHANGELOG.md b/semcore/checkbox/CHANGELOG.md index 2d0f879623..9af7d92ede 100644 --- a/semcore/checkbox/CHANGELOG.md +++ b/semcore/checkbox/CHANGELOG.md @@ -2,6 +2,13 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSCheckbox` +namespaces. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/checkbox/package.json b/semcore/checkbox/package.json index 9250fc387a..b217807521 100644 --- a/semcore/checkbox/package.json +++ b/semcore/checkbox/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/checkbox", "description": "Semrush Checkbox Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/color-picker/package.json b/semcore/color-picker/package.json index fabe778447..417abaa940 100644 --- a/semcore/color-picker/package.json +++ b/semcore/color-picker/package.json @@ -18,12 +18,12 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/divider": "^17.0.1", + "@semcore/divider": "^17.0.2", "@semcore/dropdown": "^17.0.1", "@semcore/input": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "devDependencies": { diff --git a/semcore/counter/package.json b/semcore/counter/package.json index db5cfde2c4..94e70d15ed 100644 --- a/semcore/counter/package.json +++ b/semcore/counter/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/d3-chart/CHANGELOG.md b/semcore/d3-chart/CHANGELOG.md index 974756f4e0..572c1ab5c6 100644 --- a/semcore/d3-chart/CHANGELOG.md +++ b/semcore/d3-chart/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Vulnerabilities were discovered in the `rollup` version. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/d3-chart/package.json b/semcore/d3-chart/package.json index 5f33dd98fd..f0ffc59862 100644 --- a/semcore/d3-chart/package.json +++ b/semcore/d3-chart/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/d3-chart", "description": "Semrush D3 Chart Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/esm/index.mjs", "typings": "lib/types/index.d.ts", @@ -18,9 +18,9 @@ }, "dependencies": { "@formatjs/intl": "2.3.0", - "@semcore/checkbox": "^17.0.1", - "@semcore/divider": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/checkbox": "^17.0.2", + "@semcore/divider": "^17.0.2", + "@semcore/typography": "^17.0.2", "@types/d3-shape": "3.1.7", "@upsetjs/venn.js": "2.0.0", "d3-array": "3.1.6", @@ -34,7 +34,7 @@ "hoist-non-react-statics": "3.3.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/data-table/CHANGELOG.md b/semcore/data-table/CHANGELOG.md index 258631887c..64cdf6aee6 100644 --- a/semcore/data-table/CHANGELOG.md +++ b/semcore/data-table/CHANGELOG.md @@ -2,6 +2,14 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Lags when scrolling and header sticks +- Checkbox with fixed column - body cell with checkbox is not fixed. +- Incorrect value in css-selectors. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/data-table/package.json b/semcore/data-table/package.json index 74977bb4b1..75b2043d90 100644 --- a/semcore/data-table/package.json +++ b/semcore/data-table/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/data-table", "description": "Semrush DataTable Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -18,7 +18,7 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/checkbox": "^17.0.1", + "@semcore/checkbox": "^17.0.2", "@semcore/spin": "^17.0.1", "@semcore/tooltip": "^17.0.1", "@semcore/widget-empty": "^17.0.1" @@ -41,7 +41,7 @@ "csstype": "3.1.3" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/date-picker/CHANGELOG.md b/semcore/date-picker/CHANGELOG.md index f3bb5cd97f..aa3dbd7986 100644 --- a/semcore/date-picker/CHANGELOG.md +++ b/semcore/date-picker/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Incorrect input trigger width calculation. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/date-picker/__tests__/month-range-comparator.browser-test.tsx b/semcore/date-picker/__tests__/month-range-comparator.browser-test.tsx index 4451aecbe4..00d7f7cc2d 100644 --- a/semcore/date-picker/__tests__/month-range-comparator.browser-test.tsx +++ b/semcore/date-picker/__tests__/month-range-comparator.browser-test.tsx @@ -530,6 +530,9 @@ test.describe(`${TAG.FUNCTIONAL}`, () => { expect(afterRightFrom2).not.toBe(afterUpFrom2); await page.keyboard.press('Shift+Tab'); + if ((await locators.calendar(page).first().evaluate((el) => el === document.activeElement))) { + await page.keyboard.press('Tab'); + } await expect(locators.button(page, 'Next year')).toBeFocused(); await page.keyboard.press('Shift+Tab'); diff --git a/semcore/date-picker/package.json b/semcore/date-picker/package.json index 1e69798fc6..6fb2c7f294 100644 --- a/semcore/date-picker/package.json +++ b/semcore/date-picker/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/date-picker", "description": "Semrush DatePicker Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -19,17 +19,17 @@ "dependencies": { "@semcore/base-trigger": "^17.0.1", "@semcore/button": "^17.0.1", - "@semcore/divider": "^17.0.1", + "@semcore/divider": "^17.0.2", "@semcore/dropdown": "^17.0.1", "@semcore/input": "^17.0.1", - "@semcore/input-mask": "^17.0.1", - "@semcore/typography": "^17.0.1", - "@semcore/checkbox": "^17.0.1", + "@semcore/input-mask": "^17.0.2", + "@semcore/typography": "^17.0.2", + "@semcore/checkbox": "^17.0.2", "@semcore/tooltip": "^17.0.1", "dayjs": "1.8.36" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/divider/CHANGELOG.md b/semcore/divider/CHANGELOG.md index 40b21b92bb..2dceecdb38 100644 --- a/semcore/divider/CHANGELOG.md +++ b/semcore/divider/CHANGELOG.md @@ -2,6 +2,13 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSDivider` +namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/divider/package.json b/semcore/divider/package.json index 7056049866..45244b1fc2 100644 --- a/semcore/divider/package.json +++ b/semcore/divider/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/divider", "description": "Semrush Divider Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/dot/CHANGELOG.md b/semcore/dot/CHANGELOG.md index 99110d019b..5ed53764ea 100644 --- a/semcore/dot/CHANGELOG.md +++ b/semcore/dot/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSDot` namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/dot/package.json b/semcore/dot/package.json index 4ee77689d7..71871d2a4b 100644 --- a/semcore/dot/package.json +++ b/semcore/dot/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/dot", "description": "Semrush Dot Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/drag-and-drop/package.json b/semcore/drag-and-drop/package.json index 1a182e0ec1..d4eedf8e3f 100644 --- a/semcore/drag-and-drop/package.json +++ b/semcore/drag-and-drop/package.json @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/card": "^17.0.1" + "@semcore/card": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/dropdown-menu/package.json b/semcore/dropdown-menu/package.json index 8d80a4380f..0edeafb349 100644 --- a/semcore/dropdown-menu/package.json +++ b/semcore/dropdown-menu/package.json @@ -19,11 +19,11 @@ "dependencies": { "@semcore/button": "^17.0.1", "@semcore/dropdown": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "classnames": "2.2.6" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/dropdown/package.json b/semcore/dropdown/package.json index 3633c7527b..af437a4d8a 100644 --- a/semcore/dropdown/package.json +++ b/semcore/dropdown/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/ellipsis/package.json b/semcore/ellipsis/package.json index 43c5e1b7c1..cd277acdc9 100644 --- a/semcore/ellipsis/package.json +++ b/semcore/ellipsis/package.json @@ -20,7 +20,7 @@ "@semcore/tooltip": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "devDependencies": { "@semcore/core": "workspace:*", diff --git a/semcore/errors/CHANGELOG.md b/semcore/errors/CHANGELOG.md index 4d8e0147b9..4cd63f9297 100644 --- a/semcore/errors/CHANGELOG.md +++ b/semcore/errors/CHANGELOG.md @@ -2,6 +2,14 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of +`NSErrors/NSAccessDenied/NSMaintenance/NSPageError/NSPageNotFound/NSProjectNotFound` +namespaces. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/errors/package.json b/semcore/errors/package.json index 1468f9e387..3303dd9d19 100644 --- a/semcore/errors/package.json +++ b/semcore/errors/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/errors", "description": "Semrush Errors Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -19,10 +19,10 @@ "dependencies": { "@semcore/button": "^17.0.1", "@semcore/illustration": "^17.0.1", - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/feature-highlight/package.json b/semcore/feature-highlight/package.json index ed8037e70c..d441ad157e 100644 --- a/semcore/feature-highlight/package.json +++ b/semcore/feature-highlight/package.json @@ -22,18 +22,18 @@ "@semcore/badge": "^17.0.1", "@semcore/base-trigger": "^17.0.1", "@semcore/button": "^17.0.1", - "@semcore/checkbox": "^17.0.1", + "@semcore/checkbox": "^17.0.2", "@semcore/input": "^17.0.1", "@semcore/notice": "^17.0.1", - "@semcore/pills": "^17.0.1", - "@semcore/radio": "^17.0.1", + "@semcore/pills": "^17.0.2", + "@semcore/radio": "^17.0.2", "@semcore/select": "^17.0.1", "@semcore/switch": "^17.0.1", - "@semcore/tab-line": "^17.0.1", - "@semcore/typography": "^17.0.1" + "@semcore/tab-line": "^17.0.2", + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/feature-popover/package.json b/semcore/feature-popover/package.json index 0b9620cd4a..e59e56796a 100644 --- a/semcore/feature-popover/package.json +++ b/semcore/feature-popover/package.json @@ -20,7 +20,7 @@ "@semcore/button": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/feedback-form/package.json b/semcore/feedback-form/package.json index 3e936076b5..f54c1e923a 100644 --- a/semcore/feedback-form/package.json +++ b/semcore/feedback-form/package.json @@ -17,9 +17,9 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/checkbox": "^17.0.1", + "@semcore/checkbox": "^17.0.2", "@semcore/notice-bubble": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/link": "^17.0.1", "@semcore/modal": "^17.0.1", "@semcore/illustration": "^17.0.1", @@ -34,7 +34,7 @@ "react-final-form": "6.5.9" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/flags/package.json b/semcore/flags/package.json index cbdfd1fdbc..886ffdd509 100644 --- a/semcore/flags/package.json +++ b/semcore/flags/package.json @@ -16,7 +16,7 @@ "classnames": "2.2.6" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/fullscreen-modal/package.json b/semcore/fullscreen-modal/package.json index 253715e202..38bb1e6041 100644 --- a/semcore/fullscreen-modal/package.json +++ b/semcore/fullscreen-modal/package.json @@ -18,11 +18,11 @@ }, "dependencies": { "@semcore/modal": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/button": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/icon/CHANGELOG.md b/semcore/icon/CHANGELOG.md index 498269ee27..b3639828bb 100644 --- a/semcore/icon/CHANGELOG.md +++ b/semcore/icon/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.1.0] - 2026-05-04 + +### Added + +- `Reddit`, `RedditColored` and `Prompt` icons. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/icon/package.json b/semcore/icon/package.json index 4aa64a534e..9ead9b4e26 100644 --- a/semcore/icon/package.json +++ b/semcore/icon/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/icon", "description": "Semrush Icon Component", - "version": "17.0.1", + "version": "17.1.0", "main": "lib/cjs/index.js", "module": "lib/esm/index.mjs", "typings": "lib/types/index.d.ts", @@ -4414,4 +4414,4 @@ "require": "./lib/ZoomPlus/m/index.js" } } -} \ No newline at end of file +} diff --git a/semcore/inline-edit/package.json b/semcore/inline-edit/package.json index d0ce8e53d3..d79d578546 100644 --- a/semcore/inline-edit/package.json +++ b/semcore/inline-edit/package.json @@ -22,7 +22,7 @@ "@semcore/testing-utils": "workspace:*" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/inline-input/package.json b/semcore/inline-input/package.json index 8e1480304a..1c2ad4786b 100644 --- a/semcore/inline-input/package.json +++ b/semcore/inline-input/package.json @@ -32,7 +32,7 @@ "@semcore/tooltip": "workspace:*" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/input-mask/CHANGELOG.md b/semcore/input-mask/CHANGELOG.md index 38faeddf4f..f703877f87 100644 --- a/semcore/input-mask/CHANGELOG.md +++ b/semcore/input-mask/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Incorrect paddings with `neighborLocation=right`. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/input-mask/package.json b/semcore/input-mask/package.json index e3bdfc524f..b84faf08eb 100644 --- a/semcore/input-mask/package.json +++ b/semcore/input-mask/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/input-mask", "description": "Semrush InputMask Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -21,7 +21,7 @@ "text-mask-core": "5.1.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/input-number/package.json b/semcore/input-number/package.json index b38eb4c900..e182046057 100644 --- a/semcore/input-number/package.json +++ b/semcore/input-number/package.json @@ -20,7 +20,7 @@ "@semcore/input": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/input-tags/package.json b/semcore/input-tags/package.json index 3bf0d5c639..0cc379802a 100644 --- a/semcore/input-tags/package.json +++ b/semcore/input-tags/package.json @@ -21,7 +21,7 @@ "@semcore/tag": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/input-tags/src/InputTags.tsx b/semcore/input-tags/src/InputTags.tsx index 6f64041b1c..4344bbe1e0 100644 --- a/semcore/input-tags/src/InputTags.tsx +++ b/semcore/input-tags/src/InputTags.tsx @@ -15,7 +15,7 @@ import fire from '@semcore/core/lib/utils/fire'; import { getAccessibleName } from '@semcore/core/lib/utils/getAccessibleName'; import uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID'; import Input, { type InputProps, type InputValueProps } from '@semcore/input'; -import Tag, { type TagProps, TagContainer, type TagTextProps, type TagContext } from '@semcore/tag'; +import Tag, { type NSTag, TagContainer } from '@semcore/tag'; import React from 'react'; import style from './style/input-tag.shadow.css'; @@ -44,7 +44,7 @@ export type InputTagsProps = Omit & locale?: string; }; -export type InputTagsTagProps = TagProps & { +export type InputTagsTagProps = NSTag.Props & { /** Property enabling the ability to remove a tag on click */ editable?: boolean; }; @@ -399,8 +399,8 @@ const InputTags = createComponent(InputTagsRoot, { Value: typeof Input.Value; TagsContainer: Intergalactic.Component<'ul'>; Tag: Intergalactic.Component<'div', InputTagsTagProps> & { - Text: Intergalactic.Component<'div', TagProps, TagContext> & { - Content: Intergalactic.Component<'div', TagTextProps>; + Text: Intergalactic.Component<'div', NSTag.Props, NSTag.Ctx> & { + Content: Intergalactic.Component<'div', NSTag.Text.Props>; }; Close: typeof TagContainer.Close; Addon: typeof Tag.Addon; diff --git a/semcore/input/package.json b/semcore/input/package.json index 10396cbcae..de1d6a5ae6 100644 --- a/semcore/input/package.json +++ b/semcore/input/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/link/package.json b/semcore/link/package.json index 3112b8816f..72ef11ca14 100644 --- a/semcore/link/package.json +++ b/semcore/link/package.json @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/mini-chart/package.json b/semcore/mini-chart/package.json index d031db2fb8..052c4899d1 100644 --- a/semcore/mini-chart/package.json +++ b/semcore/mini-chart/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/modal/package.json b/semcore/modal/package.json index 4072803b08..b75d8a6355 100644 --- a/semcore/modal/package.json +++ b/semcore/modal/package.json @@ -18,10 +18,10 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/notice-bubble/package.json b/semcore/notice-bubble/package.json index 6388587b41..2b0a7d8b07 100644 --- a/semcore/notice-bubble/package.json +++ b/semcore/notice-bubble/package.json @@ -20,7 +20,7 @@ "@semcore/button": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/notice/package.json b/semcore/notice/package.json index 4bb1769657..d030bcdfc0 100644 --- a/semcore/notice/package.json +++ b/semcore/notice/package.json @@ -18,10 +18,10 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/pagination/package.json b/semcore/pagination/package.json index f218d97633..b5c99ed79c 100644 --- a/semcore/pagination/package.json +++ b/semcore/pagination/package.json @@ -21,10 +21,10 @@ "@semcore/input-number": "^17.0.1", "@semcore/input": "^17.0.1", "@semcore/link": "^17.0.1", - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/pills/CHANGELOG.md b/semcore/pills/CHANGELOG.md index 4667b85920..973e9f2808 100644 --- a/semcore/pills/CHANGELOG.md +++ b/semcore/pills/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSPills` namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/pills/package.json b/semcore/pills/package.json index 9c0cf94bdf..f32cd50a48 100644 --- a/semcore/pills/package.json +++ b/semcore/pills/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/pills", "description": "Semrush Pills Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/product-head/package.json b/semcore/product-head/package.json index bf05df2179..b89d73054d 100644 --- a/semcore/product-head/package.json +++ b/semcore/product-head/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/progress-bar/CHANGELOG.md b/semcore/progress-bar/CHANGELOG.md index ce868ad73a..ad71850239 100644 --- a/semcore/progress-bar/CHANGELOG.md +++ b/semcore/progress-bar/CHANGELOG.md @@ -2,6 +2,13 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic parts are part of `NSProgressBar` +namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/progress-bar/package.json b/semcore/progress-bar/package.json index b0ab26b264..3a62be6e8f 100644 --- a/semcore/progress-bar/package.json +++ b/semcore/progress-bar/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/progress-bar", "description": "Semrush ProgressBar Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/radio/CHANGELOG.md b/semcore/radio/CHANGELOG.md index 778b14deea..331bd108dd 100644 --- a/semcore/radio/CHANGELOG.md +++ b/semcore/radio/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Deprecated atomic types. Atomic types are part of `NSRadio` namespace. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/radio/package.json b/semcore/radio/package.json index 1f8bda2aef..4d1ce5d131 100644 --- a/semcore/radio/package.json +++ b/semcore/radio/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/radio", "description": "Semrush Radio Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/select/package.json b/semcore/select/package.json index 3bbf382146..4ca6b52cbf 100644 --- a/semcore/select/package.json +++ b/semcore/select/package.json @@ -18,16 +18,16 @@ "dependencies": { "@semcore/base-trigger": "^17.0.1", "@semcore/button": "^17.0.1", - "@semcore/checkbox": "^17.0.1", - "@semcore/divider": "^17.0.1", + "@semcore/checkbox": "^17.0.2", + "@semcore/divider": "^17.0.2", "@semcore/dropdown": "^17.0.1", "@semcore/dropdown-menu": "^17.0.1", "@semcore/input": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "classnames": "2.2.6" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/side-panel/CHANGELOG.md b/semcore/side-panel/CHANGELOG.md index b0d20789ad..df6b73f6d3 100644 --- a/semcore/side-panel/CHANGELOG.md +++ b/semcore/side-panel/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Header height doesn't increase as content increases. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/side-panel/package.json b/semcore/side-panel/package.json index 072a7ee8f0..23d9fd7873 100644 --- a/semcore/side-panel/package.json +++ b/semcore/side-panel/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/side-panel", "description": "Semrush SidePanel Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -18,10 +18,10 @@ }, "dependencies": { "@semcore/button": "^17.0.1", - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/skeleton/CHANGELOG.md b/semcore/skeleton/CHANGELOG.md index 03370dd88c..bfcbf57265 100644 --- a/semcore/skeleton/CHANGELOG.md +++ b/semcore/skeleton/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Rewrite component to TS. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/skeleton/package.json b/semcore/skeleton/package.json index d6477aaf09..05733c36cc 100644 --- a/semcore/skeleton/package.json +++ b/semcore/skeleton/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/skeleton", "description": "Semrush Skeleton Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "types": "lib/types/index.d.ts", @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/slider/package.json b/semcore/slider/package.json index f76213d3dd..902c7bc4e6 100644 --- a/semcore/slider/package.json +++ b/semcore/slider/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/spin-container/package.json b/semcore/spin-container/package.json index 326707af9a..e03f8ca5d4 100644 --- a/semcore/spin-container/package.json +++ b/semcore/spin-container/package.json @@ -20,7 +20,7 @@ "@semcore/spin": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/spin/package.json b/semcore/spin/package.json index 6db5b193a9..45931d4461 100644 --- a/semcore/spin/package.json +++ b/semcore/spin/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/switch/package.json b/semcore/switch/package.json index 2b175f6470..58e3e843ff 100644 --- a/semcore/switch/package.json +++ b/semcore/switch/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/tab-line/CHANGELOG.md b/semcore/tab-line/CHANGELOG.md index 40cb78597d..f5e8c4cd1c 100644 --- a/semcore/tab-line/CHANGELOG.md +++ b/semcore/tab-line/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Rewrite component to TS. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/tab-line/package.json b/semcore/tab-line/package.json index 587f5a3bb1..eaddf8b140 100644 --- a/semcore/tab-line/package.json +++ b/semcore/tab-line/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/tab-line", "description": "Semrush TabLine Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/tab-panel/CHANGELOG.md b/semcore/tab-panel/CHANGELOG.md index 5c262c4ca7..2b5a030711 100644 --- a/semcore/tab-panel/CHANGELOG.md +++ b/semcore/tab-panel/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Rewrite component to TS. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/tab-panel/package.json b/semcore/tab-panel/package.json index 840126d88a..92ea490d37 100644 --- a/semcore/tab-panel/package.json +++ b/semcore/tab-panel/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/tab-panel", "description": "Semrush TabPanel Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/tab-panel/src/TabPanel.type.ts b/semcore/tab-panel/src/TabPanel.type.ts index 22d3d856c6..6cf7b8da8e 100644 --- a/semcore/tab-panel/src/TabPanel.type.ts +++ b/semcore/tab-panel/src/TabPanel.type.ts @@ -81,7 +81,7 @@ declare namespace NSTabPanel { /** @deprecated It will be removed in v18. */ export type TabPanelValue = NSTabPanel.Value; /** @deprecated It will be removed in v18. */ -export type TabPanelProps = NSTabPanel.Props; +export type TabPanelProps = NSTabPanel.Props; /** @deprecated It will be removed in v18. */ export type TabPanelItemProps = NSTabPanel.Item.Props; /** @deprecated It will be removed in v18. */ diff --git a/semcore/tag/package.json b/semcore/tag/package.json index a1c5166940..029e4ed8b8 100644 --- a/semcore/tag/package.json +++ b/semcore/tag/package.json @@ -9,7 +9,7 @@ "author": "UI-kit team ", "license": "MIT", "scripts": { - "build": "pnpm semcore-builder --source=js && pnpm vite build" + "build": "pnpm semcore-builder && pnpm vite build" }, "exports": { "types": "./lib/types/index.d.ts", @@ -17,10 +17,10 @@ "require": "./lib/cjs/index.js" }, "dependencies": { - "@semcore/typography": "^17.0.1" + "@semcore/typography": "^17.0.2" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/tag/src/Tag.jsx b/semcore/tag/src/Tag.tsx similarity index 71% rename from semcore/tag/src/Tag.jsx rename to semcore/tag/src/Tag.tsx index 2cdcacc070..88083e79cb 100644 --- a/semcore/tag/src/Tag.jsx +++ b/semcore/tag/src/Tag.tsx @@ -1,4 +1,5 @@ import { Box } from '@semcore/base-components'; +import type { Intergalactic } from '@semcore/core'; import { createComponent, Component, sstyled, Root } from '@semcore/core'; import addonTextChildren from '@semcore/core/lib/utils/addonTextChildren'; import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance'; @@ -12,12 +13,16 @@ import { Text as TypographyText } from '@semcore/typography'; import React from 'react'; import style from './style/tag.shadow.css'; +import type { NSTag } from './Tag.type'; import { localizedMessages } from './translations/__intergalactic-dynamic-locales'; -class RootTag extends Component { +class RootTag extends Component< + Intergalactic.InternalTypings.InferComponentProps, + typeof RootTag.enhance +> { static displayName = 'Tag'; static style = style; - static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()]; + static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()] as const; static defaultProps = { theme: 'primary', color: 'gray-500', @@ -44,12 +49,15 @@ class RootTag extends Component { }; } - handleKeyDown = (event) => { + handleKeyDown = (event: React.KeyboardEvent) => { switch (event.key) { case ' ': case 'Enter': if (this.asProps.onClick) { event.preventDefault(); + + // TODO: Keyboard event isn't assignable to MouseEvent. + // @ts-ignore this.asProps.onClick(event); } break; @@ -75,47 +83,50 @@ class RootTag extends Component { const isInteractive = !disabled && interactive; return sstyled(styles)( - <> - - {addonLeft ? : null} - {addonTextChildren(Children, Tag.Text, [Tag.Addon, TagContainer.Circle])} - {addonRight ? : null} - - , + + {addonLeft ? : null} + {addonTextChildren(Children, Tag.Text, [Tag.Addon, TagContainer.Circle])} + {addonRight ? : null} + , ); } } -class RootTagContainer extends Component { +class RootTagContainer extends Component< + Intergalactic.InternalTypings.InferComponentProps, + typeof RootTagContainer.enhance +> { static displayName = 'TagContainer'; static style = style; - static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()]; + static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()] as const; static defaultProps = { color: 'gray-500', theme: 'primary', }; - tagRef = React.createRef(); + tagRef = React.createRef(); componentWillUnmount() { const tagElement = this.tagRef.current; - if (isFocusInside(tagElement)) { + if (tagElement && isFocusInside(tagElement)) { const nextTagElement = tagElement.nextElementSibling; - if (nextTagElement) { + const nextParentElementSibling = tagElement.parentElement?.nextElementSibling; + + if (nextTagElement && nextTagElement instanceof HTMLElement) { setFocus(nextTagElement); - } else { - setFocus(tagElement.parentElement?.nextElementSibling); + } else if (nextParentElementSibling && nextParentElementSibling instanceof HTMLElement) { + setFocus(nextParentElementSibling); } } } @@ -222,7 +233,10 @@ class RootTagContainer extends Component { } } -class RootCloseTagContainer extends Component { +class Close extends Component< + Intergalactic.InternalTypings.InferComponentProps, + typeof Close.enhance +> { static displayName = 'CloseTagContainer'; static style = style; @@ -233,13 +247,13 @@ class RootCloseTagContainer extends Component { size: 'm', i18n: localizedMessages, locale: 'en', - children: , + children: , }; }; - static enhance = [resolveColorEnhance()]; + static enhance = [resolveColorEnhance()] as const; - handleKeyDown = (event) => { + handleKeyDown = (event: React.KeyboardEvent) => { const { onKeyDown, onClick } = this.asProps; if (onKeyDown) { @@ -248,6 +262,9 @@ class RootCloseTagContainer extends Component { if (onClick && (event.key === 'Enter' || event.key === ' ')) { event.preventDefault(); + + // TODO: Keyboard event isn't assignable to MouseEvent. + // @ts-ignore onClick(event); } }; @@ -272,7 +289,9 @@ class RootCloseTagContainer extends Component { } } -function TagContainerCircle(props) { +function TagContainerCircle( + props: Intergalactic.InternalTypings.InferChildComponentProps, +) { const SAddon = Box; const SCircle = Root; const { styles, color, resolveColor } = props; @@ -283,7 +302,9 @@ function TagContainerCircle(props) { ); } -function Text(props) { +function Text( + props: Intergalactic.InternalTypings.InferChildComponentProps, +) { const SText = Root; const { styles, tagRef } = props; @@ -297,7 +318,9 @@ function Text(props) { ); } -function Addon(props) { +function Addon( + props: Intergalactic.InternalTypings.InferChildComponentProps, +) { const SAddon = Root; const { styles, color, resolveColor } = props; @@ -309,7 +332,10 @@ function Addon(props) { return sstyled(styles)(); } -function Circle(props) { +function Circle( + props: Intergalactic.InternalTypings.InferChildComponentProps + & Intergalactic.InternalTypings.InferChildComponentProps, +) { const SCircle = Root; const { styles, color, resolveColor } = props; const tagColor = React.useMemo(() => { @@ -323,17 +349,13 @@ const Tag = createComponent(RootTag, { Text, Addon, Circle, -}); - -const CloseTagContainer = createComponent(RootCloseTagContainer, { - Close: CloseM, -}); +}) as NSTag.Component; export const TagContainer = createComponent(RootTagContainer, { Tag, Addon, - Close: CloseTagContainer, + Close, Circle: TagContainerCircle, -}); +}) as NSTag.Container.Component; export default Tag; diff --git a/semcore/tag/src/Tag.type.ts b/semcore/tag/src/Tag.type.ts new file mode 100644 index 0000000000..1ed8e5038e --- /dev/null +++ b/semcore/tag/src/Tag.type.ts @@ -0,0 +1,104 @@ +import type { BoxProps } from '@semcore/base-components'; +import type { PropGetterFn, Intergalactic } from '@semcore/core'; +import type { IconProps } from '@semcore/icon'; +import type { NSText } from '@semcore/typography'; +import type React from 'react'; + +declare namespace NSTag { + type Size = 'xl' | 'l' | 'm'; + type Theme = 'primary' | 'secondary' | 'additional'; + type Use = 'primary' | 'secondary'; + type Ctx = Props & { + getCloseProps?: PropGetterFn; + }; + type Props = BoxProps & { + /** Value responsible for tag availability + */ + disabled?: boolean; + /** Value responsible for tag activity + */ + active?: boolean; + /** Interactive tag + */ + interactive?: boolean; + /** Tag theme, there are several default themes or you can use your color + * @default primary + */ + theme?: NSTag.Theme; + /** Tag color text */ + color?: string; + /** Tag size + * @default m + */ + size?: NSTag.Size; + /** Left addon tag */ + addonLeft?: React.ElementType; + /** Right addon tag */ + addonRight?: React.ElementType; + /** Specifies the locale for i18n support */ + locale?: string; + }; + + namespace Text { + type Props = NSText.Props; + type Component = Intergalactic.Component<'div', Props>; + } + + namespace Addon { + type Props = BoxProps; + type Component = Intergalactic.Component<'div', Props>; + } + + namespace Circle { + type Props = BoxProps; + type Component = Intergalactic.Component<'div', Props>; + } + + namespace Close { + type Props = IconProps & { + /** Tag type + * @default secondary + */ + use?: NSTag.Use; + /** Tag theme, there are several default themes or you can use your color + * @default muted + */ + theme?: NSTag.Theme; + }; + type Component = Intergalactic.Component<'button', Props>; + } + + namespace Container { + type Component = Intergalactic.Component<'div', NSTag.Props, NSTag.Ctx> & { + Tag: NSTag.Component; + Close: NSTag.Close.Component; + Addon: NSTag.Addon.Component; + Circle: NSTag.Circle.Component; + }; + } + + type Component = Intergalactic.Component<'div', Props, Ctx> & { + Text: Text.Component; + Addon: Addon.Component; + Circle: Circle.Component; + }; +} + +/** @deprecated It will be removed in v18. */ +export type TagSize = NSTag.Size; +/** @deprecated It will be removed in v18. */ +export type TagTheme = NSTag.Theme; +/** @deprecated It will be removed in v18. */ +export type TagUse = NSTag.Use; +/** @deprecated It will be removed in v18. */ +export type TagProps = NSTag.Props; +/** @deprecated It will be removed in v18. */ +export type TagCloseProps = NSTag.Close.Props; +/** @deprecated It will be removed in v18. */ +export type TagContext = NSTag.Ctx; +/** @deprecated It will be removed in v18. */ +export type TagAddonProps = NSTag.Addon.Props; +/** @deprecated It will be removed in v18. */ +export type TagTextProps = NSTag.Text.Props; + +export type { NSTag }; diff --git a/semcore/tag/src/index.d.ts b/semcore/tag/src/index.d.ts deleted file mode 100644 index a442667552..0000000000 --- a/semcore/tag/src/index.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BoxProps } from '@semcore/base-components'; -import type { PropGetterFn, Intergalactic } from '@semcore/core'; -import type { IconProps } from '@semcore/icon'; -import type { NSText } from '@semcore/typography'; -import type React from 'react'; - -export type TagSize = 'xl' | 'l' | 'm'; - -export type TagTheme = 'primary' | 'secondary' | 'additional'; -export type TagUse = 'primary' | 'secondary'; - -export type TagProps = BoxProps & { - /** Value responsible for tag availability - */ - disabled?: boolean; - /** Value responsible for tag activity - */ - active?: boolean; - /** Interactive tag - */ - interactive?: boolean; - /** Tag theme, there are several default themes or you can use your color - * @default primary - */ - theme?: TagTheme; - /** Tag color text */ - color?: string; - /** Tag size - * @default m - */ - size?: TagSize; - /** Left addon tag */ - addonLeft?: React.ElementType; - /** Right addon tag */ - addonRight?: React.ElementType; - /** Specifies the locale for i18n support */ - locale?: string; -}; - -export type TagCloseProps = IconProps & { - /** Tag type - * @default secondary - */ - use?: TagUse; - /** Tag theme, there are several default themes or you can use your color - * @default muted - */ - theme?: TagTheme; -}; - -export type TagContext = TagProps & { - getCloseProps?: PropGetterFn; -}; - -export type TagAddonProps = BoxProps & {}; - -export type TagTextProps = NSText.Props; - -declare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & { - Text: Intergalactic.Component<'div', TagTextProps>; - Addon: Intergalactic.Component<'div', TagAddonProps>; - Circle: Intergalactic.Component<'div', TagAddonProps>; -}; - -declare const TagContainer: Intergalactic.Component<'div', TagProps, TagContext> & { - Tag: typeof Tag; - Close: Intergalactic.Component<'button'>; - Addon: Intergalactic.Component<'div', TagAddonProps>; - Circle: Intergalactic.Component<'div', TagAddonProps>; -}; - -export default Tag; -export { TagContainer }; diff --git a/semcore/tag/src/index.js b/semcore/tag/src/index.ts similarity index 62% rename from semcore/tag/src/index.js rename to semcore/tag/src/index.ts index dd600c8c0a..e420442d64 100644 --- a/semcore/tag/src/index.js +++ b/semcore/tag/src/index.ts @@ -1 +1,2 @@ export { default, TagContainer } from './Tag'; +export * from './Tag.type'; diff --git a/semcore/tag/vite.config.ts b/semcore/tag/vite.config.ts index 0991a16528..90f46b4cb2 100644 --- a/semcore/tag/vite.config.ts +++ b/semcore/tag/vite.config.ts @@ -7,7 +7,7 @@ export default mergeConfig( defineConfig({ build: { lib: { - entry: './src/index.js', + entry: './src/index.ts', }, rollupOptions: { external: ['react', 'react-dom', 'react/jsx-runtime', /@babel\/runtime\/*/, /@semcore\/*/], diff --git a/semcore/textarea/package.json b/semcore/textarea/package.json index 4ec660bde7..4452f47947 100644 --- a/semcore/textarea/package.json +++ b/semcore/textarea/package.json @@ -17,7 +17,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/time-picker/package.json b/semcore/time-picker/package.json index 943d2cba4b..d8d43df854 100644 --- a/semcore/time-picker/package.json +++ b/semcore/time-picker/package.json @@ -22,7 +22,7 @@ "@semcore/select": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/tooltip/package.json b/semcore/tooltip/package.json index 4a1c2ab649..0b8311c6eb 100644 --- a/semcore/tooltip/package.json +++ b/semcore/tooltip/package.json @@ -18,7 +18,7 @@ "require": "./lib/cjs/index.js" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/typography/CHANGELOG.md b/semcore/typography/CHANGELOG.md index 6272910591..cb4741c6a9 100644 --- a/semcore/typography/CHANGELOG.md +++ b/semcore/typography/CHANGELOG.md @@ -2,6 +2,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). +## [17.0.2] - 2026-04-30 + +### Fixed + +- Rewrite component to TS. + ## [17.0.1] - 2026-04-16 ### Fixed diff --git a/semcore/typography/package.json b/semcore/typography/package.json index b254936838..5f5beff680 100644 --- a/semcore/typography/package.json +++ b/semcore/typography/package.json @@ -1,7 +1,7 @@ { "name": "@semcore/typography", "description": "Semrush Typography Component", - "version": "17.0.1", + "version": "17.0.2", "main": "lib/cjs/index.js", "module": "lib/es6/index.js", "typings": "lib/types/index.d.ts", @@ -18,7 +18,7 @@ }, "dependencies": {}, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/semcore/ui/CHANGELOG.md b/semcore/ui/CHANGELOG.md index 76d7696ce6..bf1286dbc6 100644 --- a/semcore/ui/CHANGELOG.md +++ b/semcore/ui/CHANGELOG.md @@ -1,3 +1,93 @@ +## [17.0.2] - 2026-04-30 + +### @semcore/radio + +- **Fixed** Deprecated atomic types. Atomic types are part of `NSRadio` namespace. + +### @semcore/d3-chart + +- **Fixed** Vulnerabilities were discovered in the `rollup` version. + +### @semcore/bulk-textarea + +- **Fixed** Vulnerabilities were discovered in the `dompurify` version. + +### @semcore/accordion + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSAccordion` +namespace. + +### @semcore/pills + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSPills` namespace. + +### @semcore/progress-bar + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSProgressBar` +namespace. + +### @semcore/typography + +- **Fixed** Rewrite component to TS. + +### @semcore/divider + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSDivider` +namespace. + +### @semcore/dot + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSDot` namespace. + +### @semcore/card + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSCard` namespace. + +### @semcore/errors + +- **Fixed** Deprecated atomic types. Atomic parts are part of +`NSErrors/NSAccessDenied/NSMaintenance/NSPageError/NSPageNotFound/NSProjectNotFound` +namespaces. + +### @semcore/base-components + +- **Fixed** **flex-box**: Incorrect handling of styles for focus ring offset values. + +### @semcore/checkbox + +- **Fixed** Deprecated atomic types. Atomic parts are part of `NSCheckbox` +namespaces. + +### @semcore/skeleton + +- **Fixed** Rewrite component to TS. + +### @semcore/tab-panel + +- **Fixed** Rewrite component to TS. + +### @semcore/tab-line + +- **Fixed** Rewrite component to TS. + +### @semcore/side-panel + +- **Fixed** Header height doesn't increase as content increases. + +### @semcore/data-table + +- **Fixed** Lags when scrolling and header sticks +- **Fixed** Checkbox with fixed column - body cell with checkbox is not fixed. +- **Fixed** Incorrect value in css-selectors. + +### @semcore/input-mask + +- **Fixed** Incorrect paddings with `neighborLocation=right`. + +### @semcore/date-picker + +- **Fixed** Incorrect input trigger width calculation. + ## [17.0.1] - 2026-04-16 ### @semcore/core diff --git a/semcore/ui/package.json b/semcore/ui/package.json index 2314f3be61..9b5552d2c9 100644 --- a/semcore/ui/package.json +++ b/semcore/ui/package.json @@ -1,6 +1,6 @@ { "name": "@semcore/ui", - "version": "17.0.1", + "version": "17.0.2", "description": "Semrush design system package that reexports all other single component packages.", "author": "UI-kit team ", "license": "MIT", @@ -13,30 +13,30 @@ "update-dependencies": "tsm --require=../../.ci/tsm-filter-warnings.js update-dependencies.ts" }, "dependencies": { - "@semcore/accordion": "^17.0.1", + "@semcore/accordion": "^17.0.2", "@semcore/add-filter": "^17.0.1", "@semcore/badge": "^17.0.1", - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/base-trigger": "^17.0.1", "@semcore/breadcrumbs": "^17.0.1", - "@semcore/bulk-textarea": "^17.0.1", + "@semcore/bulk-textarea": "^17.0.2", "@semcore/button": "^17.0.1", - "@semcore/card": "^17.0.1", + "@semcore/card": "^17.0.2", "@semcore/carousel": "^17.0.1", - "@semcore/checkbox": "^17.0.1", + "@semcore/checkbox": "^17.0.2", "@semcore/color-picker": "^17.0.1", "@semcore/core": "^17.0.1", "@semcore/counter": "^17.0.1", - "@semcore/d3-chart": "^17.0.1", - "@semcore/data-table": "^17.0.1", - "@semcore/date-picker": "^17.0.1", - "@semcore/divider": "^17.0.1", - "@semcore/dot": "^17.0.1", + "@semcore/d3-chart": "^17.0.2", + "@semcore/data-table": "^17.0.2", + "@semcore/date-picker": "^17.0.2", + "@semcore/divider": "^17.0.2", + "@semcore/dot": "^17.0.2", "@semcore/drag-and-drop": "^17.0.1", "@semcore/dropdown": "^17.0.1", "@semcore/dropdown-menu": "^17.0.1", "@semcore/ellipsis": "^17.0.1", - "@semcore/errors": "^17.0.1", + "@semcore/errors": "^17.0.2", "@semcore/feature-highlight": "^17.0.1", "@semcore/feature-popover": "^17.0.1", "@semcore/feedback-form": "^17.0.1", @@ -46,7 +46,7 @@ "@semcore/inline-edit": "^17.0.1", "@semcore/inline-input": "^17.0.1", "@semcore/input": "^17.0.1", - "@semcore/input-mask": "^17.0.1", + "@semcore/input-mask": "^17.0.2", "@semcore/input-number": "^17.0.1", "@semcore/input-tags": "^17.0.1", "@semcore/link": "^17.0.1", @@ -55,24 +55,24 @@ "@semcore/notice": "^17.0.1", "@semcore/notice-bubble": "^17.0.1", "@semcore/pagination": "^17.0.1", - "@semcore/pills": "^17.0.1", + "@semcore/pills": "^17.0.2", "@semcore/product-head": "^17.0.1", - "@semcore/progress-bar": "^17.0.1", - "@semcore/radio": "^17.0.1", + "@semcore/progress-bar": "^17.0.2", + "@semcore/radio": "^17.0.2", "@semcore/select": "^17.0.1", - "@semcore/side-panel": "^17.0.1", - "@semcore/skeleton": "^17.0.1", + "@semcore/side-panel": "^17.0.2", + "@semcore/skeleton": "^17.0.2", "@semcore/slider": "^17.0.1", "@semcore/spin": "^17.0.1", "@semcore/spin-container": "^17.0.1", "@semcore/switch": "^17.0.1", - "@semcore/tab-line": "^17.0.1", - "@semcore/tab-panel": "^17.0.1", + "@semcore/tab-line": "^17.0.2", + "@semcore/tab-panel": "^17.0.2", "@semcore/tag": "^17.0.1", "@semcore/textarea": "^17.0.1", "@semcore/time-picker": "^17.0.1", "@semcore/tooltip": "^17.0.1", - "@semcore/typography": "^17.0.1", + "@semcore/typography": "^17.0.2", "@semcore/widget-empty": "^17.0.1", "@semcore/wizard": "^17.0.1" }, diff --git a/semcore/widget-empty/package.json b/semcore/widget-empty/package.json index 55da97b28d..94266eadf8 100644 --- a/semcore/widget-empty/package.json +++ b/semcore/widget-empty/package.json @@ -20,7 +20,7 @@ "@semcore/illustration": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1" + "@semcore/base-components": "^17.0.2" }, "repository": { "type": "git", diff --git a/semcore/wizard/package.json b/semcore/wizard/package.json index ba9a138482..ebffb40eb8 100644 --- a/semcore/wizard/package.json +++ b/semcore/wizard/package.json @@ -21,7 +21,7 @@ "@semcore/modal": "^17.0.1" }, "peerDependencies": { - "@semcore/base-components": "^17.0.1", + "@semcore/base-components": "^17.0.2", "@semcore/icon": "^17.0.1" }, "repository": { diff --git a/stories/components/base-trigger/tests/examples/link-trigger/base.tsx b/stories/components/base-trigger/tests/examples/link-trigger/base.tsx index 6bdfdc10bf..d278c29430 100644 --- a/stories/components/base-trigger/tests/examples/link-trigger/base.tsx +++ b/stories/components/base-trigger/tests/examples/link-trigger/base.tsx @@ -5,7 +5,7 @@ import { LinkTrigger } from '@semcore/ui/base-trigger'; import type { LinkTriggerProps } from '@semcore/ui/base-trigger'; import Counter, { type CounterProps } from '@semcore/ui/counter'; import Flags from '@semcore/ui/flags'; -import Tag, { type TagSize } from '@semcore/ui/tag'; +import Tag, { type NSTag } from '@semcore/ui/tag'; import type { NSText } from '@semcore/ui/typography'; import { Text } from '@semcore/ui/typography'; import React from 'react'; @@ -55,7 +55,7 @@ const Demo = (props: BasicLinktriggerProps) => { counterSize = 'm'; } - let tagSize: TagSize | undefined; + let tagSize: NSTag.Size | undefined; if (numSize >= 600) { tagSize = 'xl'; } else if (numSize >= 300) { diff --git a/stories/components/base-trigger/tests/examples/link-trigger/link-trigger-different-sizes.tsx b/stories/components/base-trigger/tests/examples/link-trigger/link-trigger-different-sizes.tsx index 94c94335da..4eef186883 100644 --- a/stories/components/base-trigger/tests/examples/link-trigger/link-trigger-different-sizes.tsx +++ b/stories/components/base-trigger/tests/examples/link-trigger/link-trigger-different-sizes.tsx @@ -4,7 +4,7 @@ import Badge from '@semcore/ui/badge'; import { LinkTrigger } from '@semcore/ui/base-trigger'; import Counter, { type CounterProps } from '@semcore/ui/counter'; import Flags from '@semcore/ui/flags'; -import Tag, { type TagSize } from '@semcore/ui/tag'; +import Tag, { type NSTag } from '@semcore/ui/tag'; import { Text } from '@semcore/ui/typography'; import React from 'react'; @@ -32,7 +32,7 @@ const Demo = (props: LinkTriggerSizesProps) => { counterSize = 'm'; } - let tagSize: TagSize; + let tagSize: NSTag.Size; if (size >= 600) { tagSize = 'xl'; } else if (size >= 300) { diff --git a/stories/components/base-trigger/tests/examples/link-trigger/with-select.tsx b/stories/components/base-trigger/tests/examples/link-trigger/with-select.tsx index 1910bdc851..8f84a2412e 100644 --- a/stories/components/base-trigger/tests/examples/link-trigger/with-select.tsx +++ b/stories/components/base-trigger/tests/examples/link-trigger/with-select.tsx @@ -7,7 +7,7 @@ import type { LinkTriggerProps } from '@semcore/ui/base-trigger'; import Counter, { type CounterProps } from '@semcore/ui/counter'; import Flags from '@semcore/ui/flags'; import Select from '@semcore/ui/select'; -import Tag, { type TagSize } from '@semcore/ui/tag'; +import Tag, { type NSTag } from '@semcore/ui/tag'; import type { NSText } from '@semcore/ui/typography'; import { Text } from '@semcore/ui/typography'; import React from 'react'; @@ -58,7 +58,7 @@ const Demo = (props: LinkTriggerSelectDDMenuExample) => { counterSize = 'm'; } - let tagSize: TagSize | undefined; + let tagSize: NSTag.Size | undefined; if (numSize >= 600) { tagSize = 'xl'; } else if (numSize >= 300) { diff --git a/stories/components/data-table/advanced/examples/table_perf/cells/payment_status.tsx b/stories/components/data-table/advanced/examples/table_perf/cells/payment_status.tsx index 3e44113834..a68dbefdf4 100644 --- a/stories/components/data-table/advanced/examples/table_perf/cells/payment_status.tsx +++ b/stories/components/data-table/advanced/examples/table_perf/cells/payment_status.tsx @@ -1,5 +1,5 @@ import { Box } from '@semcore/ui/base-components'; -import type { TagProps } from '@semcore/ui/tag'; +import type { NSTag } from '@semcore/ui/tag'; import Tag from '@semcore/ui/tag'; import React from 'react'; import type { FC } from 'react'; @@ -9,7 +9,7 @@ type PaymentStatusProps = { status: 'success' | 'failed'; short?: boolean; testIdPrefix?: string; -} & Omit; +} & Omit; const colorsMap = { success: 'green-500', diff --git a/stories/components/data-table/docs/examples/customizing-header.tsx b/stories/components/data-table/docs/examples/customizing-header.tsx index 14bf9960fa..e65096ca1a 100644 --- a/stories/components/data-table/docs/examples/customizing-header.tsx +++ b/stories/components/data-table/docs/examples/customizing-header.tsx @@ -6,7 +6,9 @@ import { Text } from '@semcore/ui/typography'; import React from 'react'; const Demo = () => { - const [selectedColumn, setSelectedColumn] = React.useState('kd'); + const [selectedColumn, setSelectedColumn] = React.useState('kd'); + const selectTrigger = React.useRef(null); + return ( { visible={isVisible} onVisibleChange={setIsVisible} value={selectedColumn} - onChange={setSelectedColumn} + onChange={(val: string) => { + setSelectedColumn(val); + setTimeout(() => { + selectTrigger.current?.focus(); + }, 0); + }} > { if (!isVisible && (e.key === 'ArrowDown' || e.key === 'ArrowUp')) { diff --git a/stories/components/tag/tests/examples/basic_usage.tsx b/stories/components/tag/tests/examples/basic_usage.tsx index bf57752f7f..ac2caee886 100644 --- a/stories/components/tag/tests/examples/basic_usage.tsx +++ b/stories/components/tag/tests/examples/basic_usage.tsx @@ -2,9 +2,9 @@ import CheckM from '@semcore/icon/Check/m'; import CloseM from '@semcore/icon/Close/m'; import { Box, Flex } from '@semcore/ui/base-components'; import Tag, { TagContainer } from '@semcore/ui/tag'; -import type { TagProps } from '@semcore/ui/tag'; +import type { NSTag } from '@semcore/ui/tag'; import React from 'react'; -export type BasicTagProps = TagProps & { +export type BasicTagProps = NSTag.Props & { text?: string; disabled?: boolean; showAddonLeft?: boolean; diff --git a/stories/patterns/core/tests/all-components/components/Tables/table_perf/cells/payment_status.tsx b/stories/patterns/core/tests/all-components/components/Tables/table_perf/cells/payment_status.tsx index 3e44113834..a68dbefdf4 100644 --- a/stories/patterns/core/tests/all-components/components/Tables/table_perf/cells/payment_status.tsx +++ b/stories/patterns/core/tests/all-components/components/Tables/table_perf/cells/payment_status.tsx @@ -1,5 +1,5 @@ import { Box } from '@semcore/ui/base-components'; -import type { TagProps } from '@semcore/ui/tag'; +import type { NSTag } from '@semcore/ui/tag'; import Tag from '@semcore/ui/tag'; import React from 'react'; import type { FC } from 'react'; @@ -9,7 +9,7 @@ type PaymentStatusProps = { status: 'success' | 'failed'; short?: boolean; testIdPrefix?: string; -} & Omit; +} & Omit; const colorsMap = { success: 'green-500', diff --git a/tools/continuous-delivery/src/utils/changelog.ts b/tools/continuous-delivery/src/utils/changelog.ts index 61261e1e84..17cddb7db2 100644 --- a/tools/continuous-delivery/src/utils/changelog.ts +++ b/tools/continuous-delivery/src/utils/changelog.ts @@ -77,7 +77,10 @@ export class Changelog { } return collectedSet.has(element); - }).concat(...semcoreBaseComponents); + }); + if (collectedSet.has('base-components')) { + allowed.push(...semcoreBaseComponents); + } const allAllowedScopes = new Set(allowed); let traversingComponent: string | null = null; diff --git a/website/docs/components/tag/tag-api.md b/website/docs/components/tag/tag-api.md index 2e3b6c47f4..28abe49099 100644 --- a/website/docs/components/tag/tag-api.md +++ b/website/docs/components/tag/tag-api.md @@ -8,7 +8,7 @@ tabs: Design('tag'), A11y('tag-a11y'), API('tag-api'), Example('tag-code'), Chan `TagContainer` is necessary for the correct appearance and behavior of the **Delete tag** button. - + ## TagContainer.Close @@ -43,7 +43,7 @@ import Tag from '@semcore/ui/tag'; ; ``` - + ## Tag.Circle