Skip to content

PLASMA-6873: core improvements in Carousel#2664

Merged
shuga2704 merged 2 commits intodevfrom
plasma-6873
Apr 8, 2026
Merged

PLASMA-6873: core improvements in Carousel#2664
shuga2704 merged 2 commits intodevfrom
plasma-6873

Conversation

@shuga2704
Copy link
Copy Markdown
Contributor

@shuga2704 shuga2704 commented Apr 2, 2026

Core

Carousel

  • добавлен controlled режим для внешнего управления компонентом;
  • добавлено свойство loop для возможности зациклить карусель;
  • добавлен механизм автоматического пролистывания карусели;
  • добавлено свойство swipeEnabled для управления переключением слайдов через touch-events;,

Swipe:
ezgif-8d2bb023af4daabc

Loop + autoplay:
ezgif-879b25a3b93b1632

What/why changed

  • добавлен controlled режим для внешнего управления компонентом;
  • добавлено свойство loop для возможности зациклить карусель;
  • добавлен механизм автоматического пролистывания карусели;
  • добавлено свойство swipeEnabled для управления переключением слайдов через touch-events;
📦 Published PR as canary version: Canary Versions

✨ Test out this PR locally via:

npm install @salutejs/plasma-asdk@0.372.0-canary.2664.24072028295.0
npm install @salutejs/plasma-b2c@1.614.0-canary.2664.24072028295.0
npm install @salutejs/plasma-core@1.223.0-canary.2664.24072028295.0
npm install @salutejs/plasma-giga@0.341.0-canary.2664.24072028295.0
npm install @salutejs/plasma-homeds@0.341.0-canary.2664.24072028295.0
npm install @salutejs/plasma-hope@1.369.0-canary.2664.24072028295.0
npm install @salutejs/plasma-icons@1.235.0-canary.2664.24072028295.0
npm install @salutejs/plasma-new-hope@0.358.0-canary.2664.24072028295.0
npm install @salutejs/plasma-tokens@1.135.0-canary.2664.24072028295.0
npm install @salutejs/plasma-ui@1.345.0-canary.2664.24072028295.0
npm install @salutejs/plasma-web@1.616.0-canary.2664.24072028295.0
npm install @salutejs/sdds-bizcom@0.346.0-canary.2664.24072028295.0
npm install @salutejs/sdds-cs@0.350.0-canary.2664.24072028295.0
npm install @salutejs/sdds-dfa@0.344.0-canary.2664.24072028295.0
npm install @salutejs/sdds-finai@0.337.0-canary.2664.24072028295.0
npm install @salutejs/sdds-insol@0.341.0-canary.2664.24072028295.0
npm install @salutejs/sdds-netology@0.345.0-canary.2664.24072028295.0
npm install @salutejs/sdds-os@0.16.0-canary.2664.24072028295.0
npm install @salutejs/sdds-platform-ai@0.345.0-canary.2664.24072028295.0
npm install @salutejs/sdds-sbcom@0.345.0-canary.2664.24072028295.0
npm install @salutejs/sdds-scan@0.344.0-canary.2664.24072028295.0
npm install @salutejs/sdds-serv@0.345.0-canary.2664.24072028295.0
npm install @salutejs/plasma-themes@0.47.0-canary.2664.24072028295.0
npm install @salutejs/sdds-themes@0.62.0-canary.2664.24072028295.0
npm install @salutejs/sdds-api-tests@0.3.0-canary.2664.24072028295.0
npm install @salutejs/plasma-cy-utils@0.153.0-canary.2664.24072028295.0
npm install @salutejs/plasma-sb-utils@0.223.0-canary.2664.24072028295.0
# or 
yarn add @salutejs/plasma-asdk@0.372.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-b2c@1.614.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-core@1.223.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-giga@0.341.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-homeds@0.341.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-hope@1.369.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-icons@1.235.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-new-hope@0.358.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-tokens@1.135.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-ui@1.345.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-web@1.616.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-bizcom@0.346.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-cs@0.350.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-dfa@0.344.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-finai@0.337.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-insol@0.341.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-netology@0.345.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-os@0.16.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-platform-ai@0.345.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-sbcom@0.345.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-scan@0.344.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-serv@0.345.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-themes@0.47.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-themes@0.62.0-canary.2664.24072028295.0
yarn add @salutejs/sdds-api-tests@0.3.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-cy-utils@0.153.0-canary.2664.24072028295.0
yarn add @salutejs/plasma-sb-utils@0.223.0-canary.2664.24072028295.0

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

Theme Builder app deployed!

https://plasma.sberdevices.ru/pr/plasma-theme-builder-pr-2664/

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

Documentation preview deployed!

website: https://plasma.sberdevices.ru/pr/pr-2664/
asdk storybook: https://plasma.sberdevices.ru/pr/pr-2664/asdk-storybook/
b2c storybook: https://plasma.sberdevices.ru/pr/pr-2664/b2c-storybook/
giga storybook: https://plasma.sberdevices.ru/pr/pr-2664/giga-storybook/
homeds storybook: https://plasma.sberdevices.ru/pr/pr-2664/homeds-storybook/
new-hope storybook: https://plasma.sberdevices.ru/pr/pr-2664/new-hope-storybook/
ui storybook: https://plasma.sberdevices.ru/pr/pr-2664/ui-storybook/
web storybook: https://plasma.sberdevices.ru/pr/pr-2664/web-storybook/
sdds-bizcom storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-bizcom-storybook/
sdds-cs storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-cs-storybook/
sdds-dfa storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-dfa-storybook/
sdds-finai storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-finai-storybook/
sdds-insol storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-insol-storybook/
sdds-netology storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-netology-storybook/
sdds-os storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-os-storybook/
sdds-platform-ai storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-platform-ai-storybook/
sdds-sbcom storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-sbcom-storybook/
sdds-scan storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-scan-storybook/
sdds-serv storybook: https://plasma.sberdevices.ru/pr/pr-2664/sdds-serv-storybook/

"cy:finai:update:webkit": "BROWSER=webkit PACKAGE_NAME=sdds-finai COMPONENTS=$npm_config_components CYPRESS_updateSnapshots=true npm run cy:run",
"cy:homeds:update:webkit": "BROWSER=webkit PACKAGE_NAME=plasma-homeds COMPONENTS=$npm_config_components CYPRESS_updateSnapshots=true npm run cy:run",
"cy:update": "for package in b2c giga web cs insol serv scan os platform-ai finai homeds; do npm run cy:$package:update || exit 1; done",
"cy:update:webkit": "for package in b2c giga web cs insol serv scan os platform-ai finai homeds; do npm run cy:$package:update:webkit || exit 1; done",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

не забывать бы поддерживать этот список

Copy link
Copy Markdown
Collaborator

@neretin-trike neretin-trike Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

я бы чуть более автоматизированно возможно сделал. чтобы об этом вообще не париться. Типа создать отдельный shell скрипт, который будет парсить package.json, забирать от туда все команды по определенному паттерну (у нас же они одинаково для либ называют) и вызывать их все

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

лишний оверхед как по мне

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ну у нас уже много дизайн систем, какие добавляются, какие удаляются. Нужно постоянно держать в голове и синхронизировать. Если это можно легко автоматизировать (а это мне кажется так), я бы сделал

@Yakutoc @TitanKuzmich

Copy link
Copy Markdown
Contributor Author

@shuga2704 shuga2704 Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Но мы же не забываем добавить специфические команды под конкретную либу cy:finai:update, почему мы тут должны забыть про это?
Писать непонятный шелл, который будет это все парсить и потом что-то запускать, чтобы это автоматизировать, видится мне наихудшим вариантом.
А вот что как мне кажется имеет место быть, это нодовый скрипт, поддерживающий работу с различными флагами и инкапсулирующий в себе всю работу с запуском тестов. Это разгрузит и без того не малый package.json, + через ci легче будет управлять всем. Но делать это надо в отдельной задаче, тут я сделал пока так, ибо чуть с ума не сошел пока запускал тесты вручную.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ну шелл был просто как вариант, не обязательно именно на нём писать, нода тоже хорошо пойдёт. Мы не забываем добавить эти команды под конкретную либу, потому что сами потом сразу и используем. А тут другое, и я прям уверен, что это будет пропускаться

ну оке, твоё целевое предложение мне тоже нравится

@shuga2704 shuga2704 requested a review from luizasok April 7, 2026 07:50
@shuga2704 shuga2704 added this pull request to the merge queue Apr 8, 2026
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 8, 2026
@shuga2704 shuga2704 added this pull request to the merge queue Apr 8, 2026
Merged via the queue into dev with commit 2cc369a Apr 8, 2026
64 checks passed
@shuga2704 shuga2704 deleted the plasma-6873 branch April 8, 2026 07:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants