Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plasma-infra(b2c): Migrate to CSF 3 [Migrate SB 7 Part 1] #833

Merged
merged 39 commits into from
Nov 14, 2023

Conversation

Yakutoc
Copy link
Collaborator

@Yakutoc Yakutoc commented Nov 8, 2023

Release Notes

Файлы *.stories переведены на новый формат, необходимый для перехода на Storybook 7

What/why Changed

Для того что бы перейти на Storybook 7 нужно переписать на новый формат все истории.

Основные изменения в том что ориентируются на ESM и теперь storie - это объект, описывающий состояние компонента. В целом такой формат позволяет гибче выстраивать композицию и share code.

Much like its predecessor, CSF3 is based on ESM. The default export contains information about the component, and one or more named exports—stories—capture different component states. The main difference is that stories are now objects, and you can attach a play function to each story to simulate user interactions.

Before (CSF 2)

export const StoryComponent =  (args) => <Component {...args} />;

StoryComponent.args = {};

StoryComponent.argTypes = {};

After (CSF 3)

export const StoryComponent = {
  render: (args) => <Component {...args} />,
  args: {} <-- as props,
  parameters: {} <-- for example docs settings,
};

Обо всех изменениях можно прочитать Component Story Format 3 is here


⚡ Component performance testing

Result: 🟢 OK

⚡ Component performance testing

Result: 🟢 OK

🐤 Download canary assets:
borderRadius
borderRadius_default_react-native--canary.833.6858366168.ts
borderRadius_plasma_b2c_react-native--canary.833.6858366168.ts
borderRadius_plasma_web_react-native--canary.833.6858366168.ts
borderRadius_sberHealth_react-native--canary.833.6858366168.ts
borderRadius_sbermarket_business_react-native--canary.833.6858366168.ts
borderRadius_sbermarket_metro_react-native--canary.833.6858366168.ts
borderRadius_sbermarket_react-native--canary.833.6858366168.ts
borderRadius_sbermarket_selgros_react-native--canary.833.6858366168.ts
borderRadius_sbermarket_wlbusiness_react-native--canary.833.6858366168.ts
borderRadius_sberonline_react-native--canary.833.6858366168.ts
borderRadius_sberprime_react-native--canary.833.6858366168.ts
borderRadius_stylesSalute_react-native--canary.833.6858366168.ts
shadow
shadow_default_react-native--canary.833.6858366168.ts
shadow_plasma_b2c_react-native--canary.833.6858366168.ts
shadow_plasma_web_react-native--canary.833.6858366168.ts
shadow_sberHealth_react-native--canary.833.6858366168.ts
shadow_sbermarket_business_react-native--canary.833.6858366168.ts
shadow_sbermarket_metro_react-native--canary.833.6858366168.ts
shadow_sbermarket_react-native--canary.833.6858366168.ts
shadow_sbermarket_selgros_react-native--canary.833.6858366168.ts
shadow_sbermarket_wlbusiness_react-native--canary.833.6858366168.ts
shadow_sberonline_react-native--canary.833.6858366168.ts
shadow_sberprime_react-native--canary.833.6858366168.ts
shadow_stylesSalute_react-native--canary.833.6858366168.ts
color
color_default_ios-swift--canary.833.6858366168.swift
color_default_kotlin--canary.833.6858366168.kt
color_default_react-native--canary.833.6858366168.ts
color_default_xml--canary.833.6858366168.xml
color_plasma_b2c_ios-swift--canary.833.6858366168.swift
color_plasma_b2c_kotlin--canary.833.6858366168.kt
color_plasma_b2c_react-native--canary.833.6858366168.ts
color_plasma_b2c_xml--canary.833.6858366168.xml
color_plasma_web_ios-swift--canary.833.6858366168.swift
color_plasma_web_kotlin--canary.833.6858366168.kt
color_plasma_web_react-native--canary.833.6858366168.ts
color_plasma_web_xml--canary.833.6858366168.xml
color_sberHealth_ios-swift--canary.833.6858366168.swift
color_sberHealth_kotlin--canary.833.6858366168.kt
color_sberHealth_react-native--canary.833.6858366168.ts
color_sberHealth_xml--canary.833.6858366168.xml
color_sbermarket_business_ios-swift--canary.833.6858366168.swift
color_sbermarket_business_kotlin--canary.833.6858366168.kt
color_sbermarket_business_react-native--canary.833.6858366168.ts
color_sbermarket_business_xml--canary.833.6858366168.xml
color_sbermarket_ios-swift--canary.833.6858366168.swift
color_sbermarket_kotlin--canary.833.6858366168.kt
color_sbermarket_metro_ios-swift--canary.833.6858366168.swift
color_sbermarket_metro_kotlin--canary.833.6858366168.kt
color_sbermarket_metro_react-native--canary.833.6858366168.ts
color_sbermarket_metro_xml--canary.833.6858366168.xml
color_sbermarket_react-native--canary.833.6858366168.ts
color_sbermarket_selgros_ios-swift--canary.833.6858366168.swift
color_sbermarket_selgros_kotlin--canary.833.6858366168.kt
color_sbermarket_selgros_react-native--canary.833.6858366168.ts
color_sbermarket_selgros_xml--canary.833.6858366168.xml
color_sbermarket_wlbusiness_ios-swift--canary.833.6858366168.swift
color_sbermarket_wlbusiness_kotlin--canary.833.6858366168.kt
color_sbermarket_wlbusiness_react-native--canary.833.6858366168.ts
color_sbermarket_wlbusiness_xml--canary.833.6858366168.xml
color_sbermarket_xml--canary.833.6858366168.xml
color_sberonline_ios-swift--canary.833.6858366168.swift
color_sberonline_kotlin--canary.833.6858366168.kt
color_sberonline_react-native--canary.833.6858366168.ts
color_sberonline_xml--canary.833.6858366168.xml
color_sberprime_ios-swift--canary.833.6858366168.swift
color_sberprime_kotlin--canary.833.6858366168.kt
color_sberprime_react-native--canary.833.6858366168.ts
color_sberprime_xml--canary.833.6858366168.xml
color_stylesSalute_ios-swift--canary.833.6858366168.swift
color_stylesSalute_kotlin--canary.833.6858366168.kt
color_stylesSalute_react-native--canary.833.6858366168.ts
color_stylesSalute_xml--canary.833.6858366168.xml
spacing
spacing_default_react-native--canary.833.6858366168.ts
spacing_plasma_b2c_react-native--canary.833.6858366168.ts
spacing_plasma_web_react-native--canary.833.6858366168.ts
spacing_sberHealth_react-native--canary.833.6858366168.ts
spacing_sbermarket_business_react-native--canary.833.6858366168.ts
spacing_sbermarket_metro_react-native--canary.833.6858366168.ts
spacing_sbermarket_react-native--canary.833.6858366168.ts
spacing_sbermarket_selgros_react-native--canary.833.6858366168.ts
spacing_sbermarket_wlbusiness_react-native--canary.833.6858366168.ts
spacing_sberonline_react-native--canary.833.6858366168.ts
spacing_sberprime_react-native--canary.833.6858366168.ts
spacing_stylesSalute_react-native--canary.833.6858366168.ts
typo
typo_mage_ios-swift--canary.833.6858366168.swift
typo_mage_kotlin--canary.833.6858366168.kt
typo_mage_react-native--canary.833.6858366168.ts
typo_plasma_ios-swift--canary.833.6858366168.swift
typo_plasma_kotlin--canary.833.6858366168.kt
typo_plasma_react-native--canary.833.6858366168.ts
typo_ruler_ios-swift--canary.833.6858366168.swift
typo_ruler_kotlin--canary.833.6858366168.kt
typo_ruler_react-native--canary.833.6858366168.ts
typo_sage_ios-swift--canary.833.6858366168.swift
typo_sage_kotlin--canary.833.6858366168.kt
typo_sage_react-native--canary.833.6858366168.ts
typo_sbermarket_ios-swift--canary.833.6858366168.swift
typo_sbermarket_kotlin--canary.833.6858366168.kt
typo_sbermarket_react-native--canary.833.6858366168.ts
typo_soulmate_ios-swift--canary.833.6858366168.swift
typo_soulmate_kotlin--canary.833.6858366168.kt
typo_soulmate_react-native--canary.833.6858366168.ts
📦 Published PR as canary version: Canary Versions

✨ Test out this PR locally via:

npm install @salutejs/[email protected]
npm install @salutejs/[email protected]
npm install @salutejs/[email protected]
npm install @salutejs/[email protected]
# or 
yarn add @salutejs/[email protected]
yarn add @salutejs/[email protected]
yarn add @salutejs/[email protected]
yarn add @salutejs/[email protected]

Version

Published prerelease version: @salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]
@salutejs/[email protected]

Changelog

Release Notes

plasma-infra(b2c): Migrate to CSF 3 [Migrate SB 7 Part 1] (#833)

Файлы *.stories переведены на новый формат, необходимый для перехода на Storybook 7

What/why Changed

Для того что бы перейти на Storybook 7 нужно переписать на новый формат все истории.

Основные изменения в том что ориентируются на ESM и теперь storie - это объект, описывающий состояние компонента. В целом такой формат позволяет гибче выстраивать композицию и share code.

Much like its predecessor, CSF3 is based on ESM. The default export contains information about the component, and one or more named exports—stories—capture different component states. The main difference is that stories are now objects, and you can attach a play function to each story to simulate user interactions.

Before (CSF 2)

export const StoryComponent =  (args) => <Component {...args} />;

StoryComponent.args = {};

StoryComponent.argTypes = {};

After (CSF 3)

export const StoryComponent = {
  render: (args) => <Component {...args} />,
  args: {} <-- as props,
  parameters: {} <-- for example docs settings,
};

Обо всех изменениях можно прочитать Component Story Format 3 is here


⚡ Component performance testing

Result: 🟢 OK

⚡ Component performance testing

Result: 🟢 OK

plasma-infra: Bump [email protected] (#843)

Переход на версию [email protected]

What/why Changed

Чтобы безболезненно перейти на Storybook 7 нужно обновить typescript.

Иначе придется ставить ряд пакетов подтипу @types/package@ и версия под [email protected]

Сборка и использование не выявили регресса.

https://github.com/microsoft/TypeScript/wiki/Breaking-Changes#typescript-42


ci: write report comment instead of writing to PR description (#838)

Отчет перфтестов писать в комментах, а не в шапке PR, как было ранее.
Тест в #839

What/why Changed

Писать отчет в шапку PR оказалось плохой идеей, поскольку технически сложно гарантировать отсутствие коллизий с release джобой. Синхронизация затруднительна из-за того, что мы поддерживаем не весь код, который пишет в шапку.

plasma-ASDK: Add new package "ASDK" (#835)

Plasma-asdk:

  • Поднят storybook
  • Опубликован npm пакет
  • Обновлена/добавлнена Typography (в виде компонентов как старого, так и нового формата)
  • Добавлены компоненты: Button, Checkbox, Link, Radiobox, Spinner

Plasma-new-hope:

Добавлена типографика в виде компонент как старой, так и новой типографики, а так же в виде mixins.


plasma-infra: Add .editorconfig (#837)

Добавлен:

  • .editorconfig
  • package.json в .prettierignore

What/why Changed

Что бы локальные настройки IDE форматирования не применялись для файлов проекта.

Для консистентного форматирования добавлен.editorconfig и для всех package.json сделано форматирование с учетом отступа в 4 пробела.

Так же добавлено правило .prettierignore для package.json, что бы lintstaged не применял для него форматирование.

⚡ Component performance testing

Result: 🟢 OK

plasma-infra(audit): Resolve root dependencies(dev) vulnerabilities (#824)

Почищен корневой package.json:

  1. Удален storybook
  2. Исправлен ряд critical vulnerabilities
  3. Добавлены зависимости, которые раньше доставлялись транзитивно из-за установки storybook.

What/why Changed

Storybook удален так как является рудиментом от установки/использования библиотеки chromatic.

Screenshot 2023-10-11 at 12 42 31

Resolve transitive dev dependencies

  • @babel/plugin-proposal-class-properties
  • @babel/plugin-transform-react-constant-elements
  • babel-loader
  • url-loader

Note: ранее доставлялись транзитивно из-за установки storybook и его плагинов

Для корректного запуска perf test:

  • react - для запуска perf test
  • react-dom - для запуска perf test

feat(plasma-new-hope): Add calendar with new architecture (#821)

Добавлена реализация компонента Calendar в новой архитектуре.

Добавлены сборки компонента для новых тем plasma_web, plasma_b2c, sds_engineer.

Добавлены сборки компонента для старых библиотек @salutejs/plasma-web, @salutejs/plasma-b2c.

Удалён компонент Calendar из @salutejs/plasma-hope.

Поправил небольшой баг (issue) с типизацией для mergeConfig: если у компонента были обязательные пропсы ts ругался, что их не хватает в самом конфиге.

fixes: #597

⚡ Component performance testing

Result: 🟢 OK

⚡ Component performance testing

Result: 🟢 OK

⚡ Component performance testing

Result: 🟢 OK

⚡ Component performance testing

Result: 🟢 OK

⚡ Component performance testing

Result: 🟢 OK


🚀 Enhancement

  • build: update @salutejs/perftool #838 (@akhdrv)
  • ci: write report comment instead of writing to PR description #838 (@akhdrv)
  • plasma-ASDK: Add new package "ASDK" #835 (@TitanKuzmich)
  • @salutejs/plasma-asdk, @salutejs/plasma-b2c, @salutejs/plasma-core, @salutejs/plasma-hope, @salutejs/plasma-web
  • @salutejs/plasma-asdk, @salutejs/plasma-b2c, @salutejs/plasma-core, @salutejs/plasma-hope, @salutejs/plasma-new-hope, @salutejs/plasma-ui, @salutejs/plasma-web
  • @salutejs/plasma-asdk
  • @salutejs/plasma-tokens, @salutejs/plasma-typo
  • @salutejs/plasma-asdk, @salutejs/plasma-new-hope
  • @salutejs/plasma-icons
  • @salutejs/plasma-new-hope
  • @salutejs/plasma-b2c, @salutejs/plasma-new-hope, @salutejs/plasma-web
  • @salutejs/plasma-hope
  • @salutejs/plasma-b2c, @salutejs/plasma-hope, @salutejs/plasma-web

🐛 Bug Fix

  • ci(perftest): add asdk to scope #842 (@TitanKuzmich)
  • chore(website): reformat package.json #837 (@Yakutoc)
  • plasma-infra: Add .editorconfig #837 (@Yakutoc)
  • plasma-infra(audit): Resolve root dependencies(dev) vulnerabilities #824 (@Yakutoc)
  • @salutejs/plasma-b2c
    • chore(plasma-b2c): migrate to CSF 3 [TextField] #833 (@Yakutoc)
    • plasma-infra(b2c): Migrate to CSF 3 [Migrate SB 7 Part 1] #833 (@Yakutoc)
  • @salutejs/plasma-hope
    • plasma-infra(b2c): Migrate to CSF 3 [Migrate SB 7 Part 1] #833 (@Yakutoc)
  • @salutejs/plasma-cy-utils, @salutejs/plasma-sb-utils, @salutejs/plasma-tokens-utils
  • @salutejs/plasma-b2c, @salutejs/plasma-colors, @salutejs/plasma-core, @salutejs/plasma-hope, @salutejs/plasma-icons, @salutejs/plasma-new-hope, @salutejs/cra-template-plasma-shop-template, @salutejs/plasma-temple, @salutejs/plasma-tokens-b2b, @salutejs/plasma-tokens-b2c, @salutejs/plasma-tokens-core, @salutejs/plasma-tokens-web, @salutejs/plasma-tokens, @salutejs/plasma-typo, @salutejs/plasma-ui, @salutejs/plasma-web
  • @salutejs/plasma-temple
    • chore(plasma-temple): add "@storybook/addon-knobs" #824 (@Yakutoc)
  • @salutejs/plasma-ui
    • plasma-infra(audit): Resolve root dependencies(dev) vulnerabilities #824 (@Yakutoc)

⚠️ Pushed to dev

  • Update versions (@Salute-Eva)
  • @salutejs/plasma-asdk, @salutejs/plasma-b2c, @salutejs/plasma-core, @salutejs/plasma-hope, @salutejs/plasma-icons, @salutejs/plasma-new-hope, @salutejs/plasma-temple, @salutejs/plasma-ui, @salutejs/plasma-web, @salutejs/plasma-sb-utils
  • @salutejs/plasma-asdk, @salutejs/plasma-b2c, @salutejs/plasma-colors, @salutejs/plasma-core, @salutejs/plasma-hope, @salutejs/plasma-icons, @salutejs/plasma-new-hope, @salutejs/cra-template-plasma-shop-template, @salutejs/plasma-temple, @salutejs/plasma-tokens-b2b, @salutejs/plasma-tokens-b2c, @salutejs/plasma-tokens-core, @salutejs/plasma-tokens-web, @salutejs/plasma-tokens, @salutejs/plasma-typo, @salutejs/plasma-ui, @salutejs/plasma-web, @salutejs/plasma-cy-utils, @salutejs/plasma-sb-utils, @salutejs/plasma-tokens-utils
  • @salutejs/plasma-b2c, @salutejs/plasma-colors, @salutejs/plasma-core, @salutejs/plasma-hope, @salutejs/plasma-icons, @salutejs/plasma-new-hope, @salutejs/cra-template-plasma-shop-template, @salutejs/plasma-temple, @salutejs/plasma-tokens-b2b, @salutejs/plasma-tokens-b2c, @salutejs/plasma-tokens-core, @salutejs/plasma-tokens-web, @salutejs/plasma-tokens, @salutejs/plasma-typo, @salutejs/plasma-ui, @salutejs/plasma-web, @salutejs/plasma-cy-utils, @salutejs/plasma-sb-utils, @salutejs/plasma-tokens-utils
  • @salutejs/plasma-b2c, @salutejs/plasma-hope, @salutejs/plasma-icons, @salutejs/plasma-temple, @salutejs/plasma-ui, @salutejs/plasma-web
  • @salutejs/plasma-temple, @salutejs/plasma-ui
  • @salutejs/plasma-b2c, @salutejs/plasma-hope, @salutejs/plasma-new-hope, @salutejs/plasma-web

Authors: 5

@Yakutoc Yakutoc self-assigned this Nov 8, 2023
@Salute-Eva
Copy link
Contributor

Theme Builder app deployed!

http://plasma.sberdevices.ru/pr/plasma-theme-builder-pr-833/

@Salute-Eva
Copy link
Contributor

@Yakutoc Yakutoc marked this pull request as ready for review November 9, 2023 04:19
@Yakutoc Yakutoc requested review from TitanKuzmich and removed request for Yeti-or and neretin-trike November 9, 2023 04:19
@Yakutoc
Copy link
Collaborator Author

Yakutoc commented Nov 9, 2023

Важный момент

In CSF3, if you don’t specify the render function, each story renders the component and passes in all arguments. This greatly simplifies your code.

export const EmptyForm = {
  // render: (args) => <RegistrationForm {...args} />, -- now optional!
  args: { /* ... */ },
  parameters: {  /* ... */ },
};

То есть в ряде случаев можно снизить количество кода! Но это уже будем делать отдельными задачами, ИМХО.

@Yakutoc Yakutoc force-pushed the feat-migrate-csf-to-3 branch from d93d8a0 to c26e120 Compare November 9, 2023 08:16
@Salute-Eva
Copy link
Contributor

Theme Builder app deployed!

http://plasma.sberdevices.ru/pr/plasma-theme-builder-pr-833/

@Salute-Eva
Copy link
Contributor

@@ -112,7 +112,7 @@ export interface AudioPlayerProps {
*/
title: string;
/**
* Адрес расплололжения трека.
* Адрес расположения трека.
Copy link
Contributor

Choose a reason for hiding this comment

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

👍

@Yakutoc Yakutoc changed the title plasma-infra(b2c): Migrate CSF to 3 plasma-infra(b2c): Migrate CSF to 3 [Migrate SB 7 Part 2] Nov 10, 2023
@Yakutoc Yakutoc changed the title plasma-infra(b2c): Migrate CSF to 3 [Migrate SB 7 Part 2] plasma-infra(b2c): Migrate to CSF 3 [Migrate SB 7 Part 2] Nov 10, 2023
@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

1 similar comment
@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

23 similar comments
@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva
Copy link
Contributor

🚀 This PR is included in version: @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected], @salutejs/[email protected] 🚀

@Salute-Eva Salute-Eva mentioned this pull request Nov 15, 2023
13 tasks
@Salute-Eva Salute-Eva mentioned this pull request Jan 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

plasma-web: Calendar - redesign & refactoring ( PLASMA-2085 )
4 participants