Semantic-Org/Semantic-UI-React

Update legacy component APIs to the v1 API

levithomason opened this issue ยท 9 comments

Right now, many components still use className for all styling and behavior. Our v1 API, decided in #208, is more declarative. You can see it at play in the Divider, Label, and Dropdown components. As well as any completed task below.

The CONTRIBUTING.md guide details how to go about designing a component API. The Spec out the API section is of primary importance.

You can reference PR #262 as an example of how to upgrade a legacy component API to the v1 API. Below are the remaining legacy components APIs. Any PR to upgrade these components is much welcome.

Collections

Elements

Modules

Views


In addition to these component APIs, we're also removing jQuery and SUI JS from all components. You can see that work in #247.

/cc @eanplatter I know you wanted to get in on this migration. Here is a superb place to do so. If you pickup work on any of these components (or resume work on the Card) I'll go ahead and spec out the API and we can hash it out.

I'll make PR for <Menu> soon, it's mine ๐Ÿ’Ž

Table component hasn't own PR or issue, so I ask there.


It looks that Table can be stateless component, except one case, sortable.

I think about making Table.Sortable that has state and allow it pass shorthands or only components Table.Row, Table.Header, etc. But, it is ugly. Any better ideas there?

Unbelievable, it's almost done โœŒ๏ธ

I know it! Very crazy amount of work. So proud to be a part of this community effort. ๐ŸŽ‰

The closing of #551 checks the last box. Can we mark this issue as closed?

Holy smokes, it is done! ๐ŸŽ‰