convert to emotion

Summary:
My benchmarks have shown react-emotion to be faster than the current implementation of `styled`. For this reason, I am converting all styling to [emotion](https://emotion.sh).

Benchmark results:
{F136839093}

The syntax is very similar between the two libraries. The main difference is that emotion only allows a single function for the whole style attribute, whereas the old implementation had functions for every style-attirbute.

Before:
```
{
  color: props => props.color,
  fontSize: props => props.size,
}
```

After:
```
props => ({
  color: props.color,
  fontSize: props.size,
})
```

Reviewed By: jknoxville

Differential Revision: D9479893

fbshipit-source-id: 2c39e4618f7e52ceacb67bbec8ae26114025723f
This commit is contained in:
Daniel Büchele
2018-08-23 09:32:12 -07:00
committed by Facebook Github Bot
parent 4151c73409
commit 726966fdc0
88 changed files with 886 additions and 4068 deletions

View File

@@ -117,13 +117,11 @@ type ManagedTableState = {|
shouldScrollToBottom: boolean,
|};
/**
* Wrapper around `Table` that handles row state.
*
* If you require lower level access to the state then use [`<Table>`]()
* directly.
*/
class ManagedTable extends styled.StylableComponent<
const Container = styled(FlexColumn)({
flexGrow: 1,
});
class ManagedTable extends React.Component<
ManagedTableProps,
ManagedTableState,
> {
@@ -446,7 +444,7 @@ class ManagedTable extends styled.StylableComponent<
.filter(Boolean);
return (
<FlexColumn style={{flexGrow: 1}}>
<Container>
<TableHead
columnOrder={columnOrder}
onColumnOrder={this.onColumnOrder}
@@ -456,10 +454,7 @@ class ManagedTable extends styled.StylableComponent<
columnSizes={columnSizes}
onSort={this.onSort}
/>
<FlexColumn
style={{
flexGrow: 1,
}}>
<Container>
<AutoSizer>
{({width, height}) => (
<ContextMenu buildItems={this.buildContextMenuItems}>
@@ -500,8 +495,8 @@ class ManagedTable extends styled.StylableComponent<
</ContextMenu>
)}
</AutoSizer>
</FlexColumn>
</FlexColumn>
</Container>
</Container>
);
}
}