-
Notifications
You must be signed in to change notification settings - Fork 4k
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
chore(Visibility): remove component #4257
Conversation
Codecov Report
@@ Coverage Diff @@
## next-v3 #4257 +/- ##
===========================================
+ Coverage 99.49% 99.55% +0.05%
===========================================
Files 187 181 -6
Lines 3561 3350 -211
===========================================
- Hits 3543 3335 -208
+ Misses 18 15 -3
Continue to review full report at Codecov.
|
edb7787
to
8799180
Compare
* chore(Visibility): remove component * remove behaviors section
* chore(Visibility): remove component * remove behaviors section
* chore(Visibility): remove component * remove behaviors section
* chore(Visibility): remove component * remove behaviors section
* chore(Visibility): remove component * remove behaviors section
* chore(Visibility): remove component * remove behaviors section
* chore: remove .state() assertions in tests (#4232) * Ember: remove .state() usage in Enzyme * AccordionAccordion: remove .state() usage in Enzyme * Checkbox: remove .state() usage in Enzyme * TransitionablePortal: remove .state() usage in Enzyme * Transition: remove .state() usage in Enzyme * Dropdown: remove .state() usage in Enzyme * chore(Image): use React.forwardRef() (#4234) * chore(Placeholder): use React.forwardRef() (#4236) * chore(Header): use React.forwardRef() (#4237) * chore(Segment): use React.forwardRef() (#4238) * chore(Table): use React.forwardRef() (#4239) * chore(Table): use React.forwardRef() * fix naming * chore(Step): use React.forwardRef() (#4240) * chore: disable ESLint rule for function names (#4241) * chore(Comment): use React.forwardRef() (#4242) * chore(Comment): use React.forwardRef() * fix displayName * fix tests * chore(Card): use React.forwardRef() (#4243) * chore(Feed): use React.forwardRef() (#4244) * chore(Statistic): use React.forwardRef() (#4245) * chore(Item): use React.forwardRef() (#4247) * chore(Container|Divider|Loader|Rail): use React.forwardRef() (#4248) * chore(Accordion): use React.forwardRef() (#4249) * chore(Advertisement|Breadcrumb): use React.forwardRef() (#4250) * chore(Message): use React.forwardRef() (#4251) * chore(Label|List): use React.forwardRef() (#4252) * chore(Menu): use React.forwardRef() (#4254) * chore(Pagination): use React.forwardRef() (#4255) * chore(Button): use React.forwardRef() (#4256) * chore(Modal|Portal|Popup): use React.forwardRef() (#4253) * chore(Modal|Portal): use React.forwardRef() * remove redundant statics * migrate Popup * chore(Rating|Reveal): use React.forwardRef() (#4258) * chore(Dimmer|Grid|Sidebar): use React.forwardRef() (#4260) * chore(Modal*|Popup*): use React.forwardRef() (#4261) * chore(Confirm|Checkbox|Embed|Radio|TextArea): use React.forwardRef() (#4262) * chore(Flag|Icon|ImageGroup): use React.forwardRef() (#4264) * chore(Tab): use React.forwardRef() (#4265) * chore(TransitionGroup): use React.forwardRef() (#4266) * chore(Input): use React.forwardRef() (#4267) * chore(Sticky): use React.forwardRef() (#4263) * chore(TransitionablePortal): convert to be functional component (#4269) * chore(Search*): use React.forwardRef() (#4270) * chore(Dropdown*): use React.forwardRef() (#4273) * chore(Dropdown*): use React.forwardRef() * fix examples-test * chore(Visibility): remove component (#4257) * chore(Visibility): remove component * remove behaviors section * chore(Ref): remove component (#4286) * chore(Ref): remove component * fix tests * chore(Search): use React.forwardRef() (#4330) * chore(Search): use React.forwardRef() * add test for ref forwarding * fix tests, add comments * chore: refactor Modal tests (#4339) * chore: remove unused test utils (#4340) * chore: refactor tests for classnames to use mount() (#4341) * chore: refactor tests for shorthands to use mount() (#4342) * chore: refactor tests for shorthands to use mount() * add comment * fix tests with unmount * fix(Dropdown): use ref forwarding (#4338) * Add forward ref to Form (#4364) * Convert form to function component * Add ref forwarding to Form component * Update test/specs/collections/Form/Form-test.js Co-authored-by: Oleksandr Fediashov <[email protected]> Co-authored-by: Oleksandr Fediashov <[email protected]> * Add ref to components (#4373) * Add ref to FormButton * Add ref to FormCheckbox * Add forwardRef to FormGroup * Remove accidental `only` calls * chore(FormField): use React.forwardRef() (#4359) * Add ref to form field component * Move ref to controlProps * Add more forwardsRef tests * Remove unnecessary describe wrapper * update tests Co-authored-by: Oleksandr Fediashov <[email protected]> * chore(FormTextArea): use React.forwardRef() (#4405) * chore(FormRadio): use React.forwardRef() (#4406) * chore(FormInput): use React.forwardRef() (#4407) * chore(Select,FormSelect,FormDropdown): use React.forwardRef() (#4408) * chore(Select): use React.forwardRef() * chore(FormSelect): use React.forwardRef() * chore(FormDropdown): use React.forwardRef() * fix tests, fix Dropdown component Co-authored-by: Oleksandr Fediashov <[email protected]> --------- Co-authored-by: Brandon Olivier <[email protected]> Co-authored-by: Felix Mosheev <[email protected]>
BREAKING CHANGE
This PR removes
Visibility
component.The main reason is performance that is far away from native APIs, even in our docs we use Intersection Observer API (#3985).
Migration
We suggest to use Intersection Observer API directly or via React wrappers, for example: react-intersection-observer.
As it's not a straightforward replacement that may cause issues with adoption we moved out
Visibility
component to a separate package (@semantic-ui-react/component-visibility
). This means that you can use it already with v2 or upcoming v3:⚠ Notice
@semantic-ui-react/component-visibility
is considered as a deprecated package, we don't plan maintain it, so please consider migration anyway. It also will not receive fixes related to usage of deprecated APIs from React.