@automattic/vip-design-system 0.10.2 → 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.
Files changed (134) hide show
  1. package/.eslines.json +8 -8
  2. package/.eslintrc.json +9 -4
  3. package/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  4. package/.github/workflows/nodejs.yaml +14 -14
  5. package/.prettierrc +1 -2
  6. package/.storybook/main.js +1 -1
  7. package/.storybook/preview.js +4 -8
  8. package/README.md +1 -0
  9. package/babel.config.js +1 -1
  10. package/build/system/Avatar/Avatar.js +2 -1
  11. package/build/system/BlankState/BlankState.stories.js +3 -3
  12. package/build/system/BlankState/BlankState.test.js +2 -2
  13. package/build/system/Card/Card.test.js +0 -2
  14. package/build/system/Code/Code.js +7 -2
  15. package/build/system/Code/Code.test.js +22 -57
  16. package/build/system/Form/Select.stories.js +3 -4
  17. package/build/system/Form/Select.test.js +2 -2
  18. package/build/system/Notification/Notification.js +24 -15
  19. package/build/system/Notification/Notification.stories.js +14 -4
  20. package/build/system/OptionRow/OptionRow.js +23 -17
  21. package/build/system/OptionRow/OptionRow.stories.js +5 -5
  22. package/build/system/OptionRow/OptionRow.test.js +4 -4
  23. package/build/system/ResourceList/ResourceList.js +34 -25
  24. package/build/system/ResourceList/ResourceList.stories.js +2 -0
  25. package/build/system/ScreenReaderText/ScreenReader.test.js +37 -0
  26. package/build/system/ScreenReaderText/ScreenReaderText.js +49 -0
  27. package/build/system/ScreenReaderText/index.js +7 -0
  28. package/build/system/Table/Table.js +15 -15
  29. package/build/system/Table/Table.stories.js +46 -3
  30. package/build/system/Table/TableCell.js +57 -0
  31. package/build/system/Table/TableRow.js +12 -57
  32. package/build/system/Table/index.js +5 -1
  33. package/build/system/Time/index.js +1 -1
  34. package/build/system/Wizard/Wizard.stories.js +1 -1
  35. package/build/system/index.js +1 -0
  36. package/package.json +8 -4
  37. package/src/system/Avatar/Avatar.js +1 -0
  38. package/src/system/Avatar/index.js +0 -1
  39. package/src/system/Badge/index.js +0 -1
  40. package/src/system/BlankState/BlankState.js +8 -5
  41. package/src/system/BlankState/BlankState.stories.jsx +5 -4
  42. package/src/system/BlankState/BlankState.test.js +21 -21
  43. package/src/system/BlankState/index.js +0 -1
  44. package/src/system/Box/Box.js +7 -1
  45. package/src/system/Box/index.js +0 -1
  46. package/src/system/Button/Button.js +3 -3
  47. package/src/system/Button/Button.stories.jsx +2 -2
  48. package/src/system/Button/index.js +0 -1
  49. package/src/system/Card/Card.js +4 -4
  50. package/src/system/Card/Card.test.js +1 -2
  51. package/src/system/Card/index.js +0 -1
  52. package/src/system/Code/Code.js +6 -2
  53. package/src/system/Code/Code.stories.jsx +10 -5
  54. package/src/system/Code/Code.test.js +3 -16
  55. package/src/system/ConfirmationDialog/ConfirmationDialog.js +8 -1
  56. package/src/system/Dialog/Dialog.js +17 -8
  57. package/src/system/Dialog/Dialog.stories.jsx +9 -13
  58. package/src/system/Dialog/DialogButton.js +18 -14
  59. package/src/system/Dialog/DialogDivider.js +1 -1
  60. package/src/system/Dialog/DialogMenu.js +1 -5
  61. package/src/system/Dialog/DialogMenuItem.js +4 -8
  62. package/src/system/Dialog/DialogTrigger.js +1 -1
  63. package/src/system/Dialog/index.js +0 -1
  64. package/src/system/Flex/Flex.js +1 -1
  65. package/src/system/Flex/index.js +0 -1
  66. package/src/system/Form/AsyncSearchSelect.js +3 -7
  67. package/src/system/Form/Checkbox.js +32 -28
  68. package/src/system/Form/InlineSelect.js +21 -17
  69. package/src/system/Form/Input.js +43 -45
  70. package/src/system/Form/Label.js +2 -2
  71. package/src/system/Form/RadioBoxGroup.js +34 -32
  72. package/src/system/Form/RadioBoxGroup.stories.jsx +8 -1
  73. package/src/system/Form/SearchSelect.js +7 -7
  74. package/src/system/Form/Select.js +21 -2
  75. package/src/system/Form/Select.stories.jsx +31 -34
  76. package/src/system/Form/Select.test.js +3 -8
  77. package/src/system/Form/Textarea.js +38 -40
  78. package/src/system/Form/Toggle.js +9 -11
  79. package/src/system/Form/ToggleGroup.js +29 -31
  80. package/src/system/Form/ToggleGroup.stories.jsx +8 -1
  81. package/src/system/Form/ToggleRow.js +6 -1
  82. package/src/system/Form/Validation.js +6 -1
  83. package/src/system/Form/index.js +13 -1
  84. package/src/system/Grid/Grid.js +1 -1
  85. package/src/system/Grid/index.js +0 -1
  86. package/src/system/Heading/Heading.js +4 -4
  87. package/src/system/Heading/index.js +0 -1
  88. package/src/system/Link/index.js +0 -1
  89. package/src/system/Notice/Notice.js +27 -13
  90. package/src/system/Notice/Notice.stories.jsx +6 -8
  91. package/src/system/Notice/index.js +0 -1
  92. package/src/system/Notification/Notification.js +25 -20
  93. package/src/system/Notification/Notification.stories.jsx +4 -4
  94. package/src/system/Notification/index.js +0 -1
  95. package/src/system/OptionRow/OptionRow.js +46 -44
  96. package/src/system/OptionRow/OptionRow.stories.jsx +10 -8
  97. package/src/system/OptionRow/OptionRow.test.js +12 -11
  98. package/src/system/OptionRow/index.js +0 -1
  99. package/src/system/Progress/Progress.js +3 -1
  100. package/src/system/Progress/Progress.stories.jsx +4 -4
  101. package/src/system/Progress/index.js +0 -1
  102. package/src/system/ResourceList/ResourceItem.js +15 -15
  103. package/src/system/ResourceList/ResourceList.js +28 -16
  104. package/src/system/ResourceList/ResourceList.stories.jsx +77 -71
  105. package/src/system/ScreenReaderText/ScreenReader.test.js +22 -0
  106. package/src/system/ScreenReaderText/ScreenReaderText.js +40 -0
  107. package/src/system/ScreenReaderText/index.js +7 -0
  108. package/src/system/Spinner/Spinner.js +4 -4
  109. package/src/system/Spinner/index.js +0 -1
  110. package/src/system/Table/Table.js +10 -9
  111. package/src/system/Table/Table.stories.jsx +39 -9
  112. package/src/system/Table/TableCell.js +48 -0
  113. package/src/system/Table/TableRow.js +10 -47
  114. package/src/system/Table/index.js +2 -2
  115. package/src/system/Tabs/Tabs.js +3 -3
  116. package/src/system/Tabs/index.js +0 -1
  117. package/src/system/Text/Text.js +3 -3
  118. package/src/system/Text/Text.stories.jsx +4 -6
  119. package/src/system/Text/index.js +0 -1
  120. package/src/system/Time/Time.stories.jsx +2 -6
  121. package/src/system/Time/index.js +5 -5
  122. package/src/system/Timeline/Timeline.js +6 -12
  123. package/src/system/Timeline/Timeline.stories.jsx +3 -12
  124. package/src/system/Timeline/index.js +0 -1
  125. package/src/system/Tooltip/Tooltip.js +4 -8
  126. package/src/system/Wizard/Wizard.js +23 -21
  127. package/src/system/Wizard/Wizard.stories.jsx +7 -12
  128. package/src/system/Wizard/WizardStep.js +8 -8
  129. package/src/system/Wizard/WizardStepHorizontal.js +4 -4
  130. package/src/system/Wizard/index.js +0 -1
  131. package/src/system/index.js +2 -1
  132. package/src/system/theme/index.js +3 -4
  133. package/tokens/valet-color.json +1919 -0
  134. package/build/system/UsageChart/UsageChart.stories.js +0 -20
@@ -9,6 +9,8 @@ var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
+ var _react = require("react");
13
+
12
14
  var _ = require("..");
13
15
 
14
16
  var _jsxRuntime = require("theme-ui/jsx-runtime");
@@ -85,6 +87,37 @@ var ResourceList = function ResourceList(_ref) {
85
87
  });
86
88
  };
87
89
 
90
+ var renderGoupedItems = function renderGoupedItems() {
91
+ return (0, _react.useMemo)(function () {
92
+ return Object.keys(groupedItems).map(function (groupName, index) {
93
+ return (0, _jsxRuntime.jsxs)(_.Box, {
94
+ sx: {
95
+ mb: 4
96
+ },
97
+ as: "li",
98
+ children: [(0, _jsxRuntime.jsx)(_.Heading, {
99
+ variant: "h4",
100
+ as: "h4",
101
+ sx: {
102
+ mb: 3
103
+ },
104
+ children: groupName
105
+ }), (0, _jsxRuntime.jsx)(_.Box, {
106
+ as: "ul",
107
+ sx: {
108
+ listStyleType: 'none',
109
+ m: 0,
110
+ p: 0,
111
+ borderTop: '1px solid',
112
+ borderColor: 'border'
113
+ },
114
+ children: renderItemList(groupedItems[groupName])
115
+ })]
116
+ }, index);
117
+ });
118
+ }, [groupedItems]);
119
+ };
120
+
88
121
  return (0, _jsxRuntime.jsx)(_.Box, {
89
122
  as: "ul",
90
123
  sx: {
@@ -93,31 +126,7 @@ var ResourceList = function ResourceList(_ref) {
93
126
  p: 0
94
127
  },
95
128
  className: "vip-resource-list-component",
96
- children: groupedByDay ? Object.keys(groupedItems).map(function (groupName, index) {
97
- return (0, _jsxRuntime.jsxs)(_.Box, {
98
- sx: {
99
- mb: 4
100
- },
101
- children: [(0, _jsxRuntime.jsx)(_.Heading, {
102
- variant: "h4",
103
- as: "h4",
104
- sx: {
105
- mb: 3
106
- },
107
- children: groupName
108
- }), (0, _jsxRuntime.jsx)(_.Box, {
109
- as: "ul",
110
- sx: {
111
- listStyleType: 'none',
112
- m: 0,
113
- p: 0,
114
- borderTop: '1px solid',
115
- borderColor: 'border'
116
- },
117
- children: renderItemList(groupedItems[groupName])
118
- })]
119
- }, index);
120
- }) : renderItemList(items)
129
+ children: groupedByDay ? renderGoupedItems(groupedItems) : renderItemList(items)
121
130
  });
122
131
  };
123
132
 
@@ -129,6 +129,7 @@ var Grouped = function Grouped() {
129
129
  children: "#443"
130
130
  })]
131
131
  }), (0, _jsxRuntime.jsxs)(_.Text, {
132
+ as: "div",
132
133
  sx: {
133
134
  mb: 0,
134
135
  fontSize: 1,
@@ -337,6 +338,7 @@ var Relative = function Relative() {
337
338
  children: "Running"
338
339
  })]
339
340
  }), (0, _jsxRuntime.jsxs)(_.Text, {
341
+ as: "div",
340
342
  sx: {
341
343
  mb: 0,
342
344
  color: 'muted',
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
6
+
7
+ var _react = require("@testing-library/react");
8
+
9
+ require("@testing-library/jest-dom");
10
+
11
+ var _ScreenReaderText = _interopRequireDefault(require("./ScreenReaderText"));
12
+
13
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
14
+
15
+ /**
16
+ * External dependencies
17
+ */
18
+
19
+ /**
20
+ * Internal dependencies
21
+ */
22
+ describe('<ScreenReaderText />', function () {
23
+ it('should render correctly', function () {
24
+ var props = {};
25
+ var text = 'Hello there';
26
+
27
+ var _render = (0, _react.render)((0, _jsxRuntime.jsx)(_ScreenReaderText["default"], (0, _extends2["default"])({}, props, {
28
+ children: text
29
+ }))),
30
+ container = _render.container; // we're using the querySelector to ensure the class is rendered since it affects the A11Y
31
+ // in case it's removed it could compromise the A11Y of the components using it.
32
+
33
+
34
+ expect(container.querySelector('.screen-reader-text')).toBeInTheDocument();
35
+ expect(_react.screen.queryByText(text)).toBeInTheDocument();
36
+ });
37
+ });
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports["default"] = ScreenReaderText;
7
+
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
13
+
14
+ /** @jsxImportSource theme-ui */
15
+
16
+ /**
17
+ * External dependencies
18
+ */
19
+
20
+ /**
21
+ * Internal dependencies
22
+ */
23
+ function ScreenReaderText(props) {
24
+ return (0, _jsxRuntime.jsx)("span", (0, _extends2["default"])({
25
+ className: "screen-reader-text",
26
+ sx: {
27
+ border: 'none',
28
+ clip: 'rect(1px, 1px, 1px, 1px)',
29
+ clipPath: 'inset(50%)',
30
+ height: '1px',
31
+ margin: '-1px',
32
+ overflow: 'hidden',
33
+ padding: '0',
34
+ position: 'absolute',
35
+ width: '1px',
36
+ wordWrap: 'normal !important'
37
+ }
38
+ }, props, {
39
+ children: props.children
40
+ }));
41
+ }
42
+ /**
43
+ * propTypes
44
+ */
45
+
46
+
47
+ ScreenReaderText.propTypes = {
48
+ children: _propTypes["default"].node.isRequired
49
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _ScreenReaderText = require("./ScreenReaderText");
6
+
7
+ exports.ScreenReaderText = _ScreenReaderText.ScreenReaderText;
@@ -11,29 +11,29 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
11
11
 
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
+ var _classnames = _interopRequireDefault(require("classnames"));
15
+
14
16
  var _jsxRuntime = require("theme-ui/jsx-runtime");
15
17
 
16
- var _excluded = ["sx"];
18
+ var _excluded = ["sx", "className"];
17
19
 
18
20
  var Table = function Table(_ref) {
19
21
  var sx = _ref.sx,
22
+ className = _ref.className,
20
23
  props = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded);
21
- return (0, _jsxRuntime.jsx)("div", {
22
- sx: {
23
- overflowX: 'auto'
24
- },
25
- children: (0, _jsxRuntime.jsx)("table", (0, _extends2["default"])({
26
- sx: (0, _extends2["default"])({
27
- width: '100%',
28
- minWidth: 1024
29
- }, sx),
30
- cellPadding: 0,
31
- cellSpacing: 0
32
- }, props))
33
- });
24
+ return (0, _jsxRuntime.jsx)("table", (0, _extends2["default"])({
25
+ sx: (0, _extends2["default"])({
26
+ width: '100%',
27
+ minWidth: 1024
28
+ }, sx),
29
+ cellPadding: 0,
30
+ cellSpacing: 0,
31
+ className: (0, _classnames["default"])('vip-table-component', className)
32
+ }, props));
34
33
  };
35
34
 
36
35
  exports.Table = Table;
37
36
  Table.propTypes = {
38
- sx: _propTypes["default"].object
37
+ sx: _propTypes["default"].object,
38
+ className: _propTypes["default"].any
39
39
  };
@@ -23,8 +23,8 @@ var Default = function Default() {
23
23
  head: true,
24
24
  cells: ['User', 'Command', 'Duration', 'Time']
25
25
  })
26
- }), (0, _jsxRuntime.jsx)("tbody", {
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 _ = require("../");
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$rowHead = _ref.rowHead,
28
- rowHead = _ref$rowHead === void 0 ? false : _ref$rowHead,
29
- cells = _ref.cells;
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.jsx)("tr", {
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
- isRowHead: index === 0 && rowHead
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
- rowHead: _propTypes["default"].bool
61
+ children: _propTypes["default"].node,
62
+ head: _propTypes["default"].bool,
63
+ onClick: _propTypes["default"].func
109
64
  };
@@ -8,4 +8,8 @@ exports.Table = _Table.Table;
8
8
 
9
9
  var _TableRow = require("./TableRow");
10
10
 
11
- exports.TableRow = _TableRow.TableRow;
11
+ exports.TableRow = _TableRow.TableRow;
12
+
13
+ var _TableCell = require("./TableCell");
14
+
15
+ exports.TableCell = _TableCell.TableCell;
@@ -88,7 +88,7 @@ var Time = function Time(_ref) {
88
88
 
89
89
  exports.Time = Time;
90
90
  Time.propTypes = {
91
- time: _propTypes["default"].string,
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
@@ -61,7 +61,7 @@ var Default = function Default() {
61
61
  alignItems: 'center',
62
62
  mb: 1
63
63
  },
64
- children: ["Add Domain:", ' ', (0, _jsxRuntime.jsx)("span", {
64
+ children: ["Add Domain: ", (0, _jsxRuntime.jsx)("span", {
65
65
  sx: {
66
66
  color: 'muted',
67
67
  ml: 2
@@ -117,6 +117,7 @@ var _Table = require("./Table");
117
117
 
118
118
  exports.Table = _Table.Table;
119
119
  exports.TableRow = _Table.TableRow;
120
+ exports.TableCell = _Table.TableCell;
120
121
 
121
122
  var _Tabs = require("./Tabs");
122
123
 
package/package.json CHANGED
@@ -1,15 +1,16 @@
1
1
  {
2
2
  "name": "@automattic/vip-design-system",
3
- "version": "0.10.2",
3
+ "version": "0.11.1",
4
4
  "main": "build/system/index.js",
5
5
  "scripts": {
6
6
  "build-storybook": "build-storybook",
7
7
  "build": "cross-env NODE_ENV=production babel src --out-dir build",
8
- "format": "eslint . --fix",
8
+ "format": "prettier --write \"src/**/*.{js,ts,tsx,md,mdx,json}\"",
9
+ "format:check": "prettier --list-different -- \"src/**/*.{js,ts,tsx,md,mdx,json}\"",
9
10
  "jest": "NODE_ENV=test jest --detectOpenHandles --env=jsdom",
10
11
  "jest:coverage": "npm run jest && open-cli ./coverage/index.html",
11
12
  "jest:watch": "npm run jest --watch",
12
- "lint": "eslint . -f json | eslines --quiet",
13
+ "lint": "eslint . --fix --max-warnings 0",
13
14
  "storybook": "start-storybook -p 6006",
14
15
  "dev": "npm run storybook",
15
16
  "test": "npm run lint && npm run jest",
@@ -92,12 +93,14 @@
92
93
  "cross-env": "^7.0.3",
93
94
  "eslines": "2.1.0",
94
95
  "eslint": "7.32.0",
96
+ "eslint-config-prettier": "^8.5.0",
95
97
  "eslint-config-react-app": "6.0.0",
96
- "eslint-config-wpvip": "automattic/eslint-config-wpvip#c6605d1c3a545d43ac2149cd464ec3c38ebc58d5",
98
+ "eslint-config-wpvip": "github:automattic/eslint-config-wpvip#b73cd84",
97
99
  "eslint-plugin-jest": "24.4.2",
98
100
  "eslint-plugin-json": "3.1.0",
99
101
  "eslint-plugin-jsx-a11y": "6.4.1",
100
102
  "eslint-plugin-no-async-foreach": "0.1.1",
103
+ "eslint-plugin-prettier": "^4.2.1",
101
104
  "eslint-plugin-react": "7.25.3",
102
105
  "eslint-plugin-storybook": "^0.5.12",
103
106
  "eslint-plugin-wpcalypso": "4.1.0",
@@ -109,6 +112,7 @@
109
112
  "jsdom-global": "3.0.2",
110
113
  "open-cli": "^7.0.1",
111
114
  "optimize-css-assets-webpack-plugin": "^6.0.1",
115
+ "prettier": "npm:wp-prettier@^2.6.2",
112
116
  "react": "^17.0.2",
113
117
  "react-dom": "^17.0.2",
114
118
  "react-input-autosize": "^3.0.0",
@@ -37,6 +37,7 @@ const Avatar = ( {
37
37
  textAlign: 'center',
38
38
  } }
39
39
  className={ classNames( 'vip-avatar-component', className ) }
40
+ aria-hidden="true"
40
41
  { ...props }
41
42
  >
42
43
  { src ? (
@@ -1,4 +1,3 @@
1
-
2
1
  /**
3
2
  * Internal dependencies
4
3
  */
@@ -1,4 +1,3 @@
1
-
2
1
  /**
3
2
  * Internal dependencies
4
3
  */
@@ -21,11 +21,14 @@ const BlankState = ( {
21
21
  className = null,
22
22
  } ) => {
23
23
  return (
24
- <Box sx={{ textAlign: 'center', padding: 5 }} className={ classNames( 'vip-blank-state-component', className ) }>
25
- {icon ? icon : <img src={image} sx={{ mb: 3 }} alt={imageAlt} />}
26
- <Heading variant="h4">{title}</Heading>
27
- <Text>{body}</Text>
28
- <Box sx={{ mt: 3 }}>{cta}</Box>
24
+ <Box
25
+ sx={ { textAlign: 'center', padding: 5 } }
26
+ className={ classNames( 'vip-blank-state-component', className ) }
27
+ >
28
+ { icon ? icon : <img src={ image } sx={ { mb: 3 } } alt={ imageAlt } /> }
29
+ <Heading variant="h4">{ title }</Heading>
30
+ <Text>{ body }</Text>
31
+ <Box sx={ { mt: 3 } }>{ cta }</Box>
29
32
  </Box>
30
33
  );
31
34
  };
@@ -8,16 +8,17 @@ export default {
8
8
  component: BlankState,
9
9
  };
10
10
 
11
- // eslint-disable-next-line max-len
12
- const image2 = "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='79' height='79' viewBox='0 0 79 79' fill='none'%3E%3Cpath d='M66.3001 15.9C66.3001 15.9 66.3 15.8 66.2 15.8C66.1 15.7 66 15.5 65.9001 15.4C65.9001 15.4 65.9001 15.4 65.9001 15.3L44.4001 0.2C44.3001 0.0999998 44.2 0.0999994 44.1 0.0999994C44 0.0999994 44.0001 0 43.9001 0H43.3C43.2 0 43.1 0.0999994 43.1 0.0999994C43 0.0999994 42.9 0.2 42.8 0.2L28.2001 10.3C28.1 10.4 28.0001 10.5 27.9001 10.6C27.9001 10.6 27.9001 10.6 27.9001 10.7C27.8001 10.8 27.7001 11 27.7001 11.2C27.7001 11.2 27.7001 11.2 27.7001 11.3V31.1L13.9 40.8L13.7001 41C13.6001 41.1 13.6 41.1 13.6 41.2L13.5 41.3C13.5 41.4 13.4 41.5 13.4 41.5V41.6C13.4 41.7 13.3 41.8 13.3 42V62.2C13.3 62.4 13.3 62.6 13.4 62.7V62.8C13.5 62.9 13.6001 63.1 13.7001 63.2C13.7001 63.2 13.7 63.2 13.8 63.3L13.9 63.4L35.3 78.6H35.4001C35.4001 78.6 35.5 78.6 35.5 78.7H35.6C35.8 78.8 36 78.8 36.2001 78.8C36.3001 78.8 36.5 78.8 36.6 78.7H36.7001C36.8001 78.7 36.8001 78.7 36.9001 78.6C36.9001 78.6 37 78.6 37 78.5H37.1L66 58.3C66.1 58.2 66.2001 58.1 66.3001 58V15.9ZM34.6 74.5L16.1 61.3V44.7L34.6 57.8V74.5ZM36 55.3L17.2001 41.9L29 33.5L47.9001 46.9L36 55.3ZM49 44.1L30.5 31V14.4L49 27.5V44.1ZM50.5 24.9L31.6 11.5L43.5 3.2L62.4001 16.6L50.5 24.9Z' fill='%23BD9D70'/%3E%3C/svg%3E";
11
+ const image2 =
12
+ // eslint-disable-next-line max-len
13
+ "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='79' height='79' viewBox='0 0 79 79' fill='none'%3E%3Cpath d='M66.3001 15.9C66.3001 15.9 66.3 15.8 66.2 15.8C66.1 15.7 66 15.5 65.9001 15.4C65.9001 15.4 65.9001 15.4 65.9001 15.3L44.4001 0.2C44.3001 0.0999998 44.2 0.0999994 44.1 0.0999994C44 0.0999994 44.0001 0 43.9001 0H43.3C43.2 0 43.1 0.0999994 43.1 0.0999994C43 0.0999994 42.9 0.2 42.8 0.2L28.2001 10.3C28.1 10.4 28.0001 10.5 27.9001 10.6C27.9001 10.6 27.9001 10.6 27.9001 10.7C27.8001 10.8 27.7001 11 27.7001 11.2C27.7001 11.2 27.7001 11.2 27.7001 11.3V31.1L13.9 40.8L13.7001 41C13.6001 41.1 13.6 41.1 13.6 41.2L13.5 41.3C13.5 41.4 13.4 41.5 13.4 41.5V41.6C13.4 41.7 13.3 41.8 13.3 42V62.2C13.3 62.4 13.3 62.6 13.4 62.7V62.8C13.5 62.9 13.6001 63.1 13.7001 63.2C13.7001 63.2 13.7 63.2 13.8 63.3L13.9 63.4L35.3 78.6H35.4001C35.4001 78.6 35.5 78.6 35.5 78.7H35.6C35.8 78.8 36 78.8 36.2001 78.8C36.3001 78.8 36.5 78.8 36.6 78.7H36.7001C36.8001 78.7 36.8001 78.7 36.9001 78.6C36.9001 78.6 37 78.6 37 78.5H37.1L66 58.3C66.1 58.2 66.2001 58.1 66.3001 58V15.9ZM34.6 74.5L16.1 61.3V44.7L34.6 57.8V74.5ZM36 55.3L17.2001 41.9L29 33.5L47.9001 46.9L36 55.3ZM49 44.1L30.5 31V14.4L49 27.5V44.1ZM50.5 24.9L31.6 11.5L43.5 3.2L62.4001 16.6L50.5 24.9Z' fill='%23BD9D70'/%3E%3C/svg%3E";
13
14
 
14
15
  export const Default = () => (
15
16
  <BlankState
16
- image={image2}
17
+ image={ image2 }
17
18
  title="Power up your application"
18
19
  body="Add-ons give you the ability to bolt on extra capabilities to
19
20
  your application, including logging, analytics and performance
20
21
  monitoring."
21
- cta={<Link as="a">Explore add-ons →</Link>}
22
+ cta={ <Link as="a">Explore add-ons →</Link> }
22
23
  />
23
24
  );