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

[BREAKING CHANGE] feat(Popover): mv to stable #6129

Merged
merged 3 commits into from
Dec 1, 2023

Conversation

inomdzhon
Copy link
Contributor

@inomdzhon inomdzhon commented Nov 21, 2023


  • Unit-тесты – для утилитарных хуков и функций
  • Документация фичи

Описание

  • пошатал API
    • action -> trigger
    • showDelay/hideDelay -> hoverDelay
    • content – теперь может быть функцией
    • offsetDistance -> offsetByMainAxis
    • offsetSkidding -> offsetByCrossAxis
  • новый API
    • autoFocus
    • noStyling
    • usePortal
  • поправил доку
  • добавил информацию про доступность
  • вынес анимации из стилей в lib/animation.

    В ней создал мапу с базовыми анимациями. Сами анимации описываю в styles/*.module.css.

Видео Popover

2023-12-01.11.02.59.mov

Изменения

  • Создал функцию injectAriaExpandedPropByRole, который добавляет в пропы aria-expanded с тоглом значения

@github-actions github-actions bot added the v5 Автоматизация: PR продублируется в ветку v5 label Nov 21, 2023
Copy link
Contributor

github-actions bot commented Nov 21, 2023

size-limit report 📦

Path Size
JS 342.62 KB (+1.52% 🔺)
JS (gzip) 105.06 KB (+1.74% 🔺)
JS (brotli) 86.4 KB (+1.51% 🔺)
JS import Div (tree shaking) 1.43 KB (0%)
CSS 261.1 KB (+0.4% 🔺)
CSS (gzip) 34 KB (+0.47% 🔺)
CSS (brotli) 27.57 KB (+0.55% 🔺)

Copy link

codesandbox-ci bot commented Nov 21, 2023

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 2f071e9:

Sandbox Source
VKUI TypeScript Configuration

Copy link
Contributor

github-actions bot commented Nov 21, 2023

e2e tests

Playwright Report

Copy link
Contributor

github-actions bot commented Nov 21, 2023

👀 Docs deployed

Commit 2f071e9

Copy link

codecov bot commented Nov 21, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (e7d3e49) 80.16% compared to head (2f071e9) 80.78%.
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6129      +/-   ##
==========================================
+ Coverage   80.16%   80.78%   +0.62%     
==========================================
  Files         312      315       +3     
  Lines        9814     9807       -7     
  Branches     3297     3305       +8     
==========================================
+ Hits         7867     7923      +56     
+ Misses       1947     1884      -63     
Flag Coverage Δ
unittests 80.78% <100.00%> (+0.62%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@inomdzhon inomdzhon force-pushed the imirdzhamolov/issue2523/feat/Popover-to-stable branch from 769d13d to 1563164 Compare November 22, 2023 10:48
@inomdzhon inomdzhon removed the v5 Автоматизация: PR продублируется в ветку v5 label Nov 22, 2023
@inomdzhon inomdzhon force-pushed the imirdzhamolov/issue2523/feat/Popover-to-stable branch from 1563164 to c6505ce Compare November 22, 2023 14:22
@github-actions github-actions bot added the v5 Автоматизация: PR продублируется в ветку v5 label Nov 22, 2023
@inomdzhon inomdzhon force-pushed the imirdzhamolov/issue2523/feat/Popover-to-stable branch from c6505ce to dbd1dae Compare November 22, 2023 14:25
@inomdzhon inomdzhon marked this pull request as ready for review November 22, 2023 14:31
@inomdzhon inomdzhon requested a review from a team as a code owner November 22, 2023 14:31
@inomdzhon inomdzhon force-pushed the imirdzhamolov/issue2523/feat/Popover-to-stable branch from dbd1dae to 66ab260 Compare November 22, 2023 14:55
@inomdzhon inomdzhon removed the v5 Автоматизация: PR продублируется в ветку v5 label Nov 23, 2023
@inomdzhon inomdzhon force-pushed the imirdzhamolov/issue2523/feat/Popover-to-stable branch from 66ab260 to 5b7fb62 Compare November 23, 2023 13:10
@github-actions github-actions bot added the v5 Автоматизация: PR продублируется в ветку v5 label Nov 23, 2023
@inomdzhon inomdzhon removed the v5 Автоматизация: PR продублируется в ветку v5 label Nov 24, 2023
@inomdzhon inomdzhon changed the title feat(Popover): mv to stable BREAKING CHANGE: feat(Popover): mv to stable Nov 24, 2023
@inomdzhon inomdzhon changed the title BREAKING CHANGE: feat(Popover): mv to stable [BREAKING CHANGE] feat(Popover): mv to stable Nov 24, 2023
@inomdzhon inomdzhon marked this pull request as draft November 24, 2023 14:46
@inomdzhon inomdzhon force-pushed the imirdzhamolov/issue2523/feat/Popover-to-stable branch from 5b7fb62 to e026d9e Compare December 1, 2023 07:59
@inomdzhon inomdzhon marked this pull request as ready for review December 1, 2023 08:00
SevereCloud
SevereCloud previously approved these changes Dec 1, 2023
@BlackySoul
Copy link
Contributor

Screenshot_2023-12-01-15-29-35-49_40deb401b9ffe8e1df2f1cc5ba480b12

Пример на мобилке поехал 😃

@inomdzhon
Copy link
Contributor Author

inomdzhon commented Dec 1, 2023

Screenshot_2023-12-01-15-29-35-49_40deb401b9ffe8e1df2f1cc5ba480b12

Пример на мобилке поехал 😃

пля Group фон убирает)) гляну спс ❤️

@BlackySoul
Copy link
Contributor

А в гайде по миграции не нужно расписать, что компонент больше не нестабильный?)

🎉 Теперь экспортируется как стабильный компонент.

```diff
<Popover
- action="hover"
+ trigger="hover"
- offsetDistance={0}
+ offsetByMainAxis={0}
- offsetSkidding={0}
+ offsetByCrossAxis={0}
- shownDelay={0}
- hideDelay={10}
+ hoverDelay={[0, 10]}
>
  <div>Target</div>
</Popover>
```

- `trigger` – помимо `"click"` и `"hover"`, теперь принимает `"focus"` или комбинацию этих событий.
  Также можно передать `"manual"`, что сделает компонент полностью контролируемым, в `onShownChange`
  будет вызываться при нажатии за пределы целевого и всплывающего элементов, по кнопке ESC или при
  вызове `onClose` из свойства `content`.
- `content` теперь принимает [render prop](https://react.dev/reference/react/cloneElement#passing-data-with-a-render-prop).
  В аргументе функции можно получить метод `onClose`, с помощью которого можно программно закрывать
  всплывающий элемента.
- `onShownChange` – вторым аргументом теперь приходит `reason`, который даёт понять по какой причине
  показался/скрылся всплывающий элемент.
- `hoverDelay` – принимает либо общее число задержки для `trigger="hover"`, либо массив чисел типа
  `[<показ>, <скрытие>]`.
- `autoFocus` – включать ли авто-фокусирование на всплывающий элемент (работает при навигации с клавиатуры).
- `noStyling` – убирает стилизацию по умолчанию.
- `usePortal` – рендерить ли всплывающий элемент в портале. Вместо `boolean`, можно передать
  контейнер, куда должен отрендериться всплывающий элемент.
@inomdzhon
Copy link
Contributor Author

А в гайде по миграции не нужно расписать, что компонент больше не нестабильный?)

🙈

Будет в ветке https://github.com/VKCOM/VKUI/tree/blackysoul/update_migration_guide )

@inomdzhon
Copy link
Contributor Author

Screenshot_2023-12-01-15-29-35-49_40deb401b9ffe8e1df2f1cc5ba480b12

Пример на мобилке поехал 😃

Убрал использование Group 🌚

mendrew
mendrew previously approved these changes Dec 1, 2023
Copy link
Contributor

@mendrew mendrew left a comment

Choose a reason for hiding this comment

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

🔥

SevereCloud
SevereCloud previously approved these changes Dec 1, 2023
@inomdzhon inomdzhon dismissed stale reviews from SevereCloud and mendrew via 2f071e9 December 1, 2023 14:12
Copy link
Contributor

@BlackySoul BlackySoul left a comment

Choose a reason for hiding this comment

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

🔥

@inomdzhon inomdzhon merged commit b03d1d5 into master Dec 1, 2023
25 checks passed
@inomdzhon inomdzhon deleted the imirdzhamolov/issue2523/feat/Popover-to-stable branch December 1, 2023 14:28
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.

[Enhancement][Popover] Сделать стабильным
4 participants