@automattic/vip-design-system 0.11.0 → 0.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/system/Form/MultiSelect.js +25 -45
- package/build/system/Table/Table.stories.js +46 -3
- package/build/system/Table/TableCell.js +57 -0
- package/build/system/Table/TableRow.js +12 -57
- package/build/system/Table/index.js +5 -1
- package/build/system/Time/index.js +1 -1
- package/build/system/UsageChart/UsageChart.js +45 -47
- package/build/system/UsageChart/index.js +3 -3
- package/build/system/index.js +1 -0
- package/package.json +1 -1
- package/src/system/Table/Table.stories.jsx +29 -1
- package/src/system/Table/TableCell.js +48 -0
- package/src/system/Table/TableRow.js +10 -47
- package/src/system/Table/index.js +2 -1
- package/src/system/Time/index.js +1 -1
- package/src/system/index.js +2 -1
- package/build/system/UsageChart/UsageChart.stories.js +0 -20
|
@@ -1,58 +1,38 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.MultiSelect = void 0;
|
|
5
5
|
|
|
6
|
-
var _reactSelect = _interopRequireDefault(
|
|
7
|
-
|
|
8
|
-
var _jsxRuntime = require(
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault( obj
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
function _extends() {
|
|
15
|
-
_extends =
|
|
16
|
-
Object.assign ||
|
|
17
|
-
function ( target ) {
|
|
18
|
-
for ( var i = 1; i < arguments.length; i++ ) {
|
|
19
|
-
var source = arguments[ i ];
|
|
20
|
-
for ( var key in source ) {
|
|
21
|
-
if ( Object.prototype.hasOwnProperty.call( source, key ) ) {
|
|
22
|
-
target[ key ] = source[ key ];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
return target;
|
|
27
|
-
};
|
|
28
|
-
return _extends.apply( this, arguments );
|
|
29
|
-
}
|
|
6
|
+
var _reactSelect = _interopRequireDefault(require("react-select"));
|
|
7
|
+
|
|
8
|
+
var _jsxRuntime = require("theme-ui/jsx-runtime");
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
11
|
+
|
|
12
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
30
13
|
|
|
31
14
|
var vipGold = '#c29c69'; // hardcoding for now
|
|
32
15
|
|
|
33
16
|
var vipGrey2 = '#d7dee2';
|
|
34
17
|
var customStyles = {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
18
|
+
control: function control(styles) {
|
|
19
|
+
return _extends({}, styles, {
|
|
20
|
+
border: "1px solid " + vipGrey2,
|
|
21
|
+
boxShadow: 'none',
|
|
22
|
+
'&:hover': {
|
|
23
|
+
border: "1px solid " + vipGold
|
|
24
|
+
},
|
|
25
|
+
'&:focus': {
|
|
26
|
+
border: "1px solid " + vipGold
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
47
30
|
};
|
|
48
31
|
|
|
49
|
-
var MultiSelect = function MultiSelect(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
styles: customStyles,
|
|
54
|
-
} )
|
|
55
|
-
);
|
|
32
|
+
var MultiSelect = function MultiSelect(props) {
|
|
33
|
+
return (0, _jsxRuntime.jsx)(_reactSelect["default"], _extends({}, props, {
|
|
34
|
+
styles: customStyles
|
|
35
|
+
}));
|
|
56
36
|
};
|
|
57
37
|
|
|
58
|
-
exports.MultiSelect = MultiSelect;
|
|
38
|
+
exports.MultiSelect = MultiSelect;
|
|
@@ -23,8 +23,8 @@ var Default = function Default() {
|
|
|
23
23
|
head: true,
|
|
24
24
|
cells: ['User', 'Command', 'Duration', 'Time']
|
|
25
25
|
})
|
|
26
|
-
}), (0, _jsxRuntime.
|
|
27
|
-
children: (0, _jsxRuntime.jsx)(_.TableRow, {
|
|
26
|
+
}), (0, _jsxRuntime.jsxs)("tbody", {
|
|
27
|
+
children: [(0, _jsxRuntime.jsx)(_.TableRow, {
|
|
28
28
|
cells: [(0, _jsxRuntime.jsx)(_.Flex, {
|
|
29
29
|
sx: {
|
|
30
30
|
alignItems: 'center'
|
|
@@ -56,7 +56,50 @@ var Default = function Default() {
|
|
|
56
56
|
},
|
|
57
57
|
children: "11th Mar 2020, 16:49:22"
|
|
58
58
|
}, "time")]
|
|
59
|
-
})
|
|
59
|
+
}), (0, _jsxRuntime.jsxs)(_.TableRow, {
|
|
60
|
+
children: [(0, _jsxRuntime.jsx)(_.TableCell, {
|
|
61
|
+
sx: {
|
|
62
|
+
backgroundColor: 'lightgray'
|
|
63
|
+
},
|
|
64
|
+
children: (0, _jsxRuntime.jsx)(_.Flex, {
|
|
65
|
+
sx: {
|
|
66
|
+
alignItems: 'center'
|
|
67
|
+
},
|
|
68
|
+
children: (0, _jsxRuntime.jsx)(_.Heading, {
|
|
69
|
+
variant: "h4",
|
|
70
|
+
sx: {
|
|
71
|
+
mb: 0
|
|
72
|
+
},
|
|
73
|
+
children: "simon"
|
|
74
|
+
})
|
|
75
|
+
}, "user")
|
|
76
|
+
}), (0, _jsxRuntime.jsx)(_.TableCell, {
|
|
77
|
+
children: (0, _jsxRuntime.jsx)(_.Heading, {
|
|
78
|
+
variant: "h4",
|
|
79
|
+
sx: {
|
|
80
|
+
mb: 0,
|
|
81
|
+
display: 'flex',
|
|
82
|
+
alignItems: 'center'
|
|
83
|
+
},
|
|
84
|
+
children: "wp posts list"
|
|
85
|
+
}, "command")
|
|
86
|
+
}), (0, _jsxRuntime.jsx)(_.TableCell, {
|
|
87
|
+
children: (0, _jsxRuntime.jsx)(_.Text, {
|
|
88
|
+
sx: {
|
|
89
|
+
mb: 0
|
|
90
|
+
},
|
|
91
|
+
children: "3s"
|
|
92
|
+
}, "duration")
|
|
93
|
+
}), (0, _jsxRuntime.jsx)(_.TableCell, {
|
|
94
|
+
children: (0, _jsxRuntime.jsx)(_.Text, {
|
|
95
|
+
sx: {
|
|
96
|
+
mb: 0,
|
|
97
|
+
color: 'muted'
|
|
98
|
+
},
|
|
99
|
+
children: "3rd May 2021, 13:22:13"
|
|
100
|
+
}, "time")
|
|
101
|
+
})]
|
|
102
|
+
})]
|
|
60
103
|
})]
|
|
61
104
|
});
|
|
62
105
|
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.TableCell = void 0;
|
|
7
|
+
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
|
|
10
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
11
|
+
|
|
12
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
+
|
|
14
|
+
var _ = require("../");
|
|
15
|
+
|
|
16
|
+
var _jsxRuntime = require("theme-ui/jsx-runtime");
|
|
17
|
+
|
|
18
|
+
var _excluded = ["head", "children"];
|
|
19
|
+
|
|
20
|
+
var TableCell = function TableCell(_ref) {
|
|
21
|
+
var head = _ref.head,
|
|
22
|
+
children = _ref.children,
|
|
23
|
+
rest = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded);
|
|
24
|
+
var sx = (0, _extends2["default"])({
|
|
25
|
+
borderBottom: '1px solid',
|
|
26
|
+
borderTop: head ? '1px solid' : 'none',
|
|
27
|
+
// borderColor should come after borderTop so it can override it
|
|
28
|
+
borderColor: 'border',
|
|
29
|
+
fontWeight: 'body',
|
|
30
|
+
px: 3,
|
|
31
|
+
py: 2,
|
|
32
|
+
textAlign: 'left',
|
|
33
|
+
'&:first-of-type': {
|
|
34
|
+
pl: 5
|
|
35
|
+
}
|
|
36
|
+
}, rest.sx);
|
|
37
|
+
return (0, _jsxRuntime.jsx)(_.Box, (0, _extends2["default"])({
|
|
38
|
+
as: head ? 'th' : 'td'
|
|
39
|
+
}, (0, _extends2["default"])({}, rest, {
|
|
40
|
+
sx: sx
|
|
41
|
+
}), {
|
|
42
|
+
children: head ? (0, _jsxRuntime.jsx)(_.Heading, {
|
|
43
|
+
variant: "caps",
|
|
44
|
+
as: "div",
|
|
45
|
+
sx: {
|
|
46
|
+
mb: 0
|
|
47
|
+
},
|
|
48
|
+
children: children
|
|
49
|
+
}) : children
|
|
50
|
+
}));
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
exports.TableCell = TableCell;
|
|
54
|
+
TableCell.propTypes = {
|
|
55
|
+
children: _propTypes["default"].node,
|
|
56
|
+
head: _propTypes["default"].bool
|
|
57
|
+
};
|
|
@@ -7,7 +7,7 @@ exports.TableRow = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _TableCell = require("./TableCell");
|
|
11
11
|
|
|
12
12
|
var _jsxRuntime = require("theme-ui/jsx-runtime");
|
|
13
13
|
|
|
@@ -24,9 +24,9 @@ var TableRow = function TableRow(_ref) {
|
|
|
24
24
|
var onClick = _ref.onClick,
|
|
25
25
|
_ref$head = _ref.head,
|
|
26
26
|
head = _ref$head === void 0 ? false : _ref$head,
|
|
27
|
-
_ref$
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
_ref$cells = _ref.cells,
|
|
28
|
+
cells = _ref$cells === void 0 ? [] : _ref$cells,
|
|
29
|
+
children = _ref.children;
|
|
30
30
|
var hoverStyles = onClick ? {
|
|
31
31
|
cursor: 'pointer',
|
|
32
32
|
'&:hover': {
|
|
@@ -41,69 +41,24 @@ var TableRow = function TableRow(_ref) {
|
|
|
41
41
|
}
|
|
42
42
|
};
|
|
43
43
|
|
|
44
|
-
return (0, _jsxRuntime.
|
|
44
|
+
return (0, _jsxRuntime.jsxs)("tr", {
|
|
45
45
|
sx: hoverStyles,
|
|
46
46
|
onClick: onClick,
|
|
47
47
|
tabIndex: onClick ? 0 : null,
|
|
48
48
|
onKeyDown: handleKeyPress,
|
|
49
|
-
children: cells.map(function (cell, index) {
|
|
50
|
-
return (0, _jsxRuntime.jsx)(TableCell, {
|
|
51
|
-
cell: cell,
|
|
49
|
+
children: [cells.map(function (cell, index) {
|
|
50
|
+
return (0, _jsxRuntime.jsx)(_TableCell.TableCell, {
|
|
52
51
|
head: head,
|
|
53
|
-
|
|
52
|
+
children: cell
|
|
54
53
|
}, index);
|
|
55
|
-
})
|
|
54
|
+
}), children]
|
|
56
55
|
});
|
|
57
56
|
};
|
|
58
57
|
|
|
59
58
|
exports.TableRow = TableRow;
|
|
60
|
-
|
|
61
|
-
var TableCell = function TableCell(_ref2) {
|
|
62
|
-
var head = _ref2.head,
|
|
63
|
-
isRowHead = _ref2.isRowHead,
|
|
64
|
-
cell = _ref2.cell;
|
|
65
|
-
var scope = null;
|
|
66
|
-
|
|
67
|
-
if (head) {
|
|
68
|
-
scope = 'col';
|
|
69
|
-
} else if (isRowHead) {
|
|
70
|
-
scope = 'row';
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
return (0, _jsxRuntime.jsx)(_.Box, {
|
|
74
|
-
as: isRowHead || head ? 'th' : 'td',
|
|
75
|
-
scope: scope,
|
|
76
|
-
sx: {
|
|
77
|
-
px: 3,
|
|
78
|
-
py: 2,
|
|
79
|
-
textAlign: 'left',
|
|
80
|
-
borderBottom: '1px solid',
|
|
81
|
-
fontWeight: 'body',
|
|
82
|
-
borderTop: head ? '1px solid' : 'none',
|
|
83
|
-
borderColor: 'border',
|
|
84
|
-
'&:first-of-type': {
|
|
85
|
-
pl: 5
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
children: head ? (0, _jsxRuntime.jsx)(_.Heading, {
|
|
89
|
-
variant: "caps",
|
|
90
|
-
as: "div",
|
|
91
|
-
sx: {
|
|
92
|
-
mb: 0
|
|
93
|
-
},
|
|
94
|
-
children: cell
|
|
95
|
-
}) : cell
|
|
96
|
-
});
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
TableCell.propTypes = {
|
|
100
|
-
head: _propTypes["default"].bool,
|
|
101
|
-
isRowHead: _propTypes["default"].bool,
|
|
102
|
-
cell: _propTypes["default"].node
|
|
103
|
-
};
|
|
104
59
|
TableRow.propTypes = {
|
|
105
|
-
onClick: _propTypes["default"].func,
|
|
106
|
-
head: _propTypes["default"].bool,
|
|
107
60
|
cells: _propTypes["default"].array,
|
|
108
|
-
|
|
61
|
+
children: _propTypes["default"].node,
|
|
62
|
+
head: _propTypes["default"].bool,
|
|
63
|
+
onClick: _propTypes["default"].func
|
|
109
64
|
};
|
|
@@ -88,7 +88,7 @@ var Time = function Time(_ref) {
|
|
|
88
88
|
|
|
89
89
|
exports.Time = Time;
|
|
90
90
|
Time.propTypes = {
|
|
91
|
-
time: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].
|
|
91
|
+
time: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].instanceOf(Date)]),
|
|
92
92
|
timeOnly: _propTypes["default"].bool,
|
|
93
93
|
relativeTime: _propTypes["default"].bool,
|
|
94
94
|
className: _propTypes["default"].any
|
|
@@ -1,62 +1,60 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.UsageChart = void 0;
|
|
5
5
|
|
|
6
|
-
var _framerMotion = require(
|
|
6
|
+
var _framerMotion = require("framer-motion");
|
|
7
7
|
|
|
8
|
-
var _propTypes = _interopRequireDefault(
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
|
|
10
|
-
var _jsxRuntime = require(
|
|
10
|
+
var _jsxRuntime = require("theme-ui/jsx-runtime");
|
|
11
11
|
|
|
12
|
-
function _interopRequireDefault( obj
|
|
13
|
-
return obj && obj.__esModule ? obj : { default: obj };
|
|
14
|
-
}
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
13
|
|
|
16
14
|
/**
|
|
17
15
|
* External dependencies
|
|
18
16
|
*/
|
|
19
|
-
var UsageChart = function UsageChart(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
17
|
+
var UsageChart = function UsageChart(_ref) {
|
|
18
|
+
var total = _ref.total,
|
|
19
|
+
max = _ref.max,
|
|
20
|
+
_ref$variant = _ref.variant,
|
|
21
|
+
variant = _ref$variant === void 0 ? 'primary' : _ref$variant;
|
|
22
|
+
var width = total / max * 100 + '%';
|
|
23
|
+
var formattedTotal = total;
|
|
24
|
+
|
|
25
|
+
if (total > 1000000) {
|
|
26
|
+
formattedTotal = (total / 1000000).toFixed(2) + "M";
|
|
27
|
+
} else if (total > 1000) {
|
|
28
|
+
formattedTotal = (total / 1000).toFixed(2) + "K";
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return (0, _jsxRuntime.jsx)("div", {
|
|
32
|
+
sx: {
|
|
33
|
+
height: variant === 'primary' ? 32 : 8,
|
|
34
|
+
overflow: 'hidden',
|
|
35
|
+
backgroundColor: variant === 'primary' ? 'border' : 'transparent'
|
|
36
|
+
},
|
|
37
|
+
children: (0, _jsxRuntime.jsx)(_framerMotion.motion.div, {
|
|
38
|
+
initial: {
|
|
39
|
+
width: 0
|
|
40
|
+
},
|
|
41
|
+
animate: {
|
|
42
|
+
width: width
|
|
43
|
+
},
|
|
44
|
+
transition: {
|
|
45
|
+
duration: 0.7
|
|
46
|
+
},
|
|
47
|
+
sx: {
|
|
48
|
+
height: '100%',
|
|
49
|
+
backgroundColor: variant === 'primary' ? 'primary' : 'grey.40'
|
|
50
|
+
}
|
|
51
|
+
})
|
|
52
|
+
});
|
|
55
53
|
};
|
|
56
54
|
|
|
57
55
|
exports.UsageChart = UsageChart;
|
|
58
56
|
UsageChart.propTypes = {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
};
|
|
57
|
+
total: _propTypes["default"].number,
|
|
58
|
+
max: _propTypes["default"].number,
|
|
59
|
+
variant: _propTypes["default"].string
|
|
60
|
+
};
|
package/build/system/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Internal dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { Table, TableRow, Flex, Heading, Text } from '..';
|
|
4
|
+
import { Table, TableRow, Flex, Heading, Text, TableCell } from '..';
|
|
5
5
|
|
|
6
6
|
export default {
|
|
7
7
|
title: 'Table',
|
|
@@ -36,6 +36,34 @@ export const Default = () => (
|
|
|
36
36
|
</Text>,
|
|
37
37
|
] }
|
|
38
38
|
/>
|
|
39
|
+
<TableRow>
|
|
40
|
+
<TableCell sx={ { backgroundColor: 'lightgray' } }>
|
|
41
|
+
<Flex sx={ { alignItems: 'center' } } key="user">
|
|
42
|
+
<Heading variant="h4" sx={ { mb: 0 } }>
|
|
43
|
+
simon
|
|
44
|
+
</Heading>
|
|
45
|
+
</Flex>
|
|
46
|
+
</TableCell>
|
|
47
|
+
<TableCell>
|
|
48
|
+
<Heading
|
|
49
|
+
variant="h4"
|
|
50
|
+
key="command"
|
|
51
|
+
sx={ { mb: 0, display: 'flex', alignItems: 'center' } }
|
|
52
|
+
>
|
|
53
|
+
wp posts list
|
|
54
|
+
</Heading>
|
|
55
|
+
</TableCell>
|
|
56
|
+
<TableCell>
|
|
57
|
+
<Text sx={ { mb: 0 } } key="duration">
|
|
58
|
+
3s
|
|
59
|
+
</Text>
|
|
60
|
+
</TableCell>
|
|
61
|
+
<TableCell>
|
|
62
|
+
<Text sx={ { mb: 0, color: 'muted' } } key="time">
|
|
63
|
+
3rd May 2021, 13:22:13
|
|
64
|
+
</Text>
|
|
65
|
+
</TableCell>
|
|
66
|
+
</TableRow>
|
|
39
67
|
</tbody>
|
|
40
68
|
</Table>
|
|
41
69
|
);
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/** @jsxImportSource theme-ui */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* External dependencies
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import PropTypes from 'prop-types';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
import { Heading, Box } from '../';
|
|
13
|
+
|
|
14
|
+
const TableCell = ( { head, children, ...rest } ) => {
|
|
15
|
+
const sx = {
|
|
16
|
+
borderBottom: '1px solid',
|
|
17
|
+
borderTop: head ? '1px solid' : 'none',
|
|
18
|
+
// borderColor should come after borderTop so it can override it
|
|
19
|
+
borderColor: 'border',
|
|
20
|
+
fontWeight: 'body',
|
|
21
|
+
px: 3,
|
|
22
|
+
py: 2,
|
|
23
|
+
textAlign: 'left',
|
|
24
|
+
'&:first-of-type': {
|
|
25
|
+
pl: 5,
|
|
26
|
+
},
|
|
27
|
+
...rest.sx,
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
return (
|
|
31
|
+
<Box as={ head ? 'th' : 'td' } { ...{ ...rest, sx } }>
|
|
32
|
+
{ head ? (
|
|
33
|
+
<Heading variant="caps" as="div" sx={ { mb: 0 } }>
|
|
34
|
+
{ children }
|
|
35
|
+
</Heading>
|
|
36
|
+
) : (
|
|
37
|
+
children
|
|
38
|
+
) }
|
|
39
|
+
</Box>
|
|
40
|
+
);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
TableCell.propTypes = {
|
|
44
|
+
children: PropTypes.node,
|
|
45
|
+
head: PropTypes.bool,
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export { TableCell };
|
|
@@ -9,9 +9,9 @@ import PropTypes from 'prop-types';
|
|
|
9
9
|
/**
|
|
10
10
|
* Internal dependencies
|
|
11
11
|
*/
|
|
12
|
-
import {
|
|
12
|
+
import { TableCell } from './TableCell';
|
|
13
13
|
|
|
14
|
-
const TableRow = ( { onClick, head = false,
|
|
14
|
+
const TableRow = ( { onClick, head = false, cells = [], children } ) => {
|
|
15
15
|
const hoverStyles = onClick
|
|
16
16
|
? { cursor: 'pointer', '&:hover': { bg: 'hover', borderRadius: 2 } }
|
|
17
17
|
: {};
|
|
@@ -30,58 +30,21 @@ const TableRow = ( { onClick, head = false, rowHead = false, cells } ) => {
|
|
|
30
30
|
onKeyDown={ handleKeyPress }
|
|
31
31
|
>
|
|
32
32
|
{ cells.map( ( cell, index ) => (
|
|
33
|
-
<TableCell key={ index }
|
|
33
|
+
<TableCell key={ index } head={ head }>
|
|
34
|
+
{ cell }
|
|
35
|
+
</TableCell>
|
|
34
36
|
) ) }
|
|
35
|
-
</tr>
|
|
36
|
-
);
|
|
37
|
-
};
|
|
38
37
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
if ( head ) {
|
|
42
|
-
scope = 'col';
|
|
43
|
-
} else if ( isRowHead ) {
|
|
44
|
-
scope = 'row';
|
|
45
|
-
}
|
|
46
|
-
return (
|
|
47
|
-
<Box
|
|
48
|
-
as={ isRowHead || head ? 'th' : 'td' }
|
|
49
|
-
scope={ scope }
|
|
50
|
-
sx={ {
|
|
51
|
-
px: 3,
|
|
52
|
-
py: 2,
|
|
53
|
-
textAlign: 'left',
|
|
54
|
-
borderBottom: '1px solid',
|
|
55
|
-
fontWeight: 'body',
|
|
56
|
-
borderTop: head ? '1px solid' : 'none',
|
|
57
|
-
borderColor: 'border',
|
|
58
|
-
'&:first-of-type': {
|
|
59
|
-
pl: 5,
|
|
60
|
-
},
|
|
61
|
-
} }
|
|
62
|
-
>
|
|
63
|
-
{ head ? (
|
|
64
|
-
<Heading variant="caps" as="div" sx={ { mb: 0 } }>
|
|
65
|
-
{ cell }
|
|
66
|
-
</Heading>
|
|
67
|
-
) : (
|
|
68
|
-
cell
|
|
69
|
-
) }
|
|
70
|
-
</Box>
|
|
38
|
+
{ children }
|
|
39
|
+
</tr>
|
|
71
40
|
);
|
|
72
41
|
};
|
|
73
42
|
|
|
74
|
-
TableCell.propTypes = {
|
|
75
|
-
head: PropTypes.bool,
|
|
76
|
-
isRowHead: PropTypes.bool,
|
|
77
|
-
cell: PropTypes.node,
|
|
78
|
-
};
|
|
79
|
-
|
|
80
43
|
TableRow.propTypes = {
|
|
81
|
-
onClick: PropTypes.func,
|
|
82
|
-
head: PropTypes.bool,
|
|
83
44
|
cells: PropTypes.array,
|
|
84
|
-
|
|
45
|
+
children: PropTypes.node,
|
|
46
|
+
head: PropTypes.bool,
|
|
47
|
+
onClick: PropTypes.func,
|
|
85
48
|
};
|
|
86
49
|
|
|
87
50
|
export { TableRow };
|
package/src/system/Time/index.js
CHANGED
|
@@ -56,7 +56,7 @@ const Time = ( { time, relativeTime = false, timeOnly = false, className = null,
|
|
|
56
56
|
};
|
|
57
57
|
|
|
58
58
|
Time.propTypes = {
|
|
59
|
-
time: PropTypes.oneOfType( [ PropTypes.string, PropTypes.
|
|
59
|
+
time: PropTypes.oneOfType( [ PropTypes.string, PropTypes.instanceOf( Date ) ] ),
|
|
60
60
|
timeOnly: PropTypes.bool,
|
|
61
61
|
relativeTime: PropTypes.bool,
|
|
62
62
|
className: PropTypes.any,
|
package/src/system/index.js
CHANGED
|
@@ -44,7 +44,7 @@ import { Time } from './Time';
|
|
|
44
44
|
import { Timeline } from './Timeline';
|
|
45
45
|
import { Notification } from './Notification';
|
|
46
46
|
import { OptionRow } from './OptionRow';
|
|
47
|
-
import { Table, TableRow } from './Table';
|
|
47
|
+
import { Table, TableRow, TableCell } from './Table';
|
|
48
48
|
import { TabItem, Tabs } from './Tabs';
|
|
49
49
|
import { Text } from './Text';
|
|
50
50
|
import theme from './theme';
|
|
@@ -77,6 +77,7 @@ export {
|
|
|
77
77
|
Spinner,
|
|
78
78
|
Table,
|
|
79
79
|
TableRow,
|
|
80
|
+
TableCell,
|
|
80
81
|
Tooltip,
|
|
81
82
|
Notification,
|
|
82
83
|
Link,
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import React from 'react';
|
|
5
|
-
/**
|
|
6
|
-
* Internal dependencies
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import { UsageChart } from '..';
|
|
10
|
-
export default {
|
|
11
|
-
title: 'UsageChart',
|
|
12
|
-
component: UsageChart,
|
|
13
|
-
};
|
|
14
|
-
export var Default = function Default() {
|
|
15
|
-
return /*#__PURE__*/ React.createElement( UsageChart, {
|
|
16
|
-
total: 50,
|
|
17
|
-
max: 75,
|
|
18
|
-
variant: 'primary',
|
|
19
|
-
} );
|
|
20
|
-
};
|