diff --git a/src/client/Elements/Table.jsx b/src/client/Elements/Table.jsx index 8a3727c..c3e6262 100644 --- a/src/client/Elements/Table.jsx +++ b/src/client/Elements/Table.jsx @@ -1,40 +1,88 @@ import { withTableValue } from 'client/hocs/withStore'; +import colors from 'client/UIKit/colors'; +import { Box } from 'client/UIKit/grid'; import React from 'react'; +import styled from 'styled-components'; + +const TableWrapper = styled(Box)` + table { + width: 100%; + text-align: left; + border-radius: 2px 2px 0 0; + border-collapse: separate; + border-spacing: 0; + + tr { + width: 100%; + :last-child { + td { + border-bottom: 0; + } + } + } + + th { + color: rgba(0, 0, 0, 0.85); + font-weight: 500; + text-align: left; + background: ${colors.white[25]}; + transition: background 0.3s ease; + padding: 16px; + } + + th, + td { + width: 25% !important; + position: relative; + overflow-wrap: break-word; + border-bottom: 1px solid ${colors.white[50]}; + } + + td { + padding: 10px 16px; + & :first-child { + margin: 0; + } + } + } +`; const Table = ({ name: tableName, columns, values }) => { return ( - - - - {columns.map(({ name, title }, ci) => { - return ; + +
{title}
+ + + {columns.map(({ name, title }, ci) => { + return ; + })} + + + + {values.map((row, ri) => { + const keys = Object.keys(row); + return ( + + {keys.map((key, ki) => { + const columnIndex = columns.findIndex(c => c.name === key); + const Component = columns[columnIndex].Component; + const Element = withTableValue(Component)({ + tableName, + rowIndex: ri, + propName: key, + }); + return ( + + ); + })} + + ); })} - - - - {values.map((row, ri) => { - const keys = Object.keys(row); - return ( - - {keys.map((key, ki) => { - const columnIndex = columns.findIndex(c => c.name === key); - const Component = columns[columnIndex].Component; - const Element = withTableValue(Component)({ - tableName, - rowIndex: ri, - propName: key, - }); - return ( - - ); - })} - - ); - })} - -
{title}
+ +
- -
+ + + ); }; diff --git a/src/client/UIKit/colors.js b/src/client/UIKit/colors.js index ecbfa4b..d2008bd 100644 --- a/src/client/UIKit/colors.js +++ b/src/client/UIKit/colors.js @@ -17,6 +17,8 @@ module.exports = { white: createColorProxy( { 0: '#FFFFFF', + 25: '#FAFAFA', + 50: '#F0F0F0', 100: '#EDEDED', 200: '#DBDBDB', 300: '#C8C8C8',