-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
fix(EventStack): fix compatibility with IE11 #3124
Conversation
Signed-off-by: Oleksandr Fediashov <[email protected]>
Codecov Report
@@ Coverage Diff @@
## master #3124 +/- ##
=======================================
Coverage 99.92% 99.92%
=======================================
Files 163 163
Lines 2742 2742
=======================================
Hits 2740 2740
Misses 2 2 Continue to review full report at Codecov.
|
…to fix/stack-ie11
…to fix/stack-ie11
Yes please! |
We have a fork of this in Stardust as well. Yes, I would love to have a single utility here. It is also duplicated in Fabric (Microsoft). One of the goals of Stardust is to normalize these kinds of utilities between frameworks. Let's merge this for now, then we can port it to Stardust and publish it as a monorepo. There might still be a bug here, not sure. Here's what I think I've found. I noticed the bug in #3062 goes away if we fix the When I use |
Released in |
Fixes #3043.
What was done?
Move to a separate repo
EventStack was moved to separate package and was published as
@semantic-ui-react/event-stack
.Motivation: this package requires a specific test config for browsers. However, I'm not happy with this decision, I prefer monorepos 😺 Possible, Stardust will adopt it.
Browser compability
EventStack is now fully compatible with IE11. To avoid regresions I added browser tests:
Performance 🚀
I and my сolleagues carefully profiled this part of the lib, performance was drasticaly improved. The most slow was
EventSet
:constructor()
- almost 10xaddHandlers()
- almost 10xdispatchEvent()
- 10x fordefault
pool, 1.5x for named poolremoveHandlers()
- almost 5xFeel free to edit benchmarks and propose more performant solution.
There I also couple serious bugs with
EventStack
event handling, I will concentrate on them after merge. I'm also planning to move #2990 to this package.