@automattic/vip-design-system 0.9.6 → 0.10.2

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 (161) hide show
  1. package/.eslintrc.json +2 -5
  2. package/.storybook/decorators/withBoundingBox.jsx +15 -0
  3. package/.storybook/decorators/withColorMode.jsx +45 -0
  4. package/.storybook/decorators/withThemeProvider.jsx +18 -0
  5. package/.storybook/main.js +7 -8
  6. package/.storybook/preview.js +13 -32
  7. package/README.md +4 -4
  8. package/babel.config.js +2 -3
  9. package/build/system/Avatar/Avatar.js +17 -12
  10. package/build/system/Avatar/Avatar.stories.js +1 -9
  11. package/build/system/Avatar/Avatar.test.js +16 -7
  12. package/build/system/Badge/Badge.js +18 -13
  13. package/build/system/Badge/Badge.stories.js +1 -9
  14. package/build/system/Badge/Badge.test.js +16 -7
  15. package/build/system/BlankState/BlankState.js +10 -4
  16. package/build/system/BlankState/BlankState.stories.js +1 -9
  17. package/build/system/BlankState/BlankState.test.js +26 -17
  18. package/build/system/Box/Box.js +19 -4
  19. package/build/system/Box/Box.stories.js +1 -9
  20. package/build/system/Button/Button.js +15 -12
  21. package/build/system/Button/Button.stories.js +3 -3
  22. package/build/system/Button/Button.test.js +14 -5
  23. package/build/system/Card/Card.js +17 -13
  24. package/build/system/Card/Card.stories.js +1 -9
  25. package/build/system/Card/Card.test.js +19 -10
  26. package/build/system/Code/Code.js +16 -12
  27. package/build/system/Code/Code.stories.js +17 -5
  28. package/build/system/Code/Code.test.js +29 -20
  29. package/build/system/ConfirmationDialog/ConfirmationDialog.js +16 -10
  30. package/build/system/ConfirmationDialog/ConfirmationDialog.stories.js +1 -9
  31. package/build/system/Dialog/Dialog.js +9 -8
  32. package/build/system/Dialog/Dialog.stories.js +1 -9
  33. package/build/system/Dialog/DialogButton.js +8 -9
  34. package/build/system/Dialog/DialogContent.js +11 -12
  35. package/build/system/Dialog/DialogDivider.js +5 -3
  36. package/build/system/Dialog/DialogMenu.js +5 -3
  37. package/build/system/Dialog/DialogMenuItem.js +8 -9
  38. package/build/system/Dialog/DialogTrigger.js +9 -2
  39. package/build/system/Flex/Flex.js +9 -2
  40. package/build/system/Flex/Flex.stories.js +1 -9
  41. package/build/system/Form/AsyncSearchSelect.js +8 -10
  42. package/build/system/Form/Checkbox.js +10 -11
  43. package/build/system/Form/InlineSelect.js +12 -14
  44. package/build/system/Form/Input.js +8 -9
  45. package/build/system/Form/Input.stories.js +2 -8
  46. package/build/system/Form/Label.js +9 -2
  47. package/build/system/Form/Radio.js +8 -9
  48. package/build/system/Form/RadioBoxGroup.js +8 -9
  49. package/build/system/Form/RadioBoxGroup.stories.js +53 -0
  50. package/build/system/Form/SearchSelect.js +15 -18
  51. package/build/system/Form/Select.js +10 -10
  52. package/build/system/Form/Select.stories.js +96 -10
  53. package/build/system/Form/Select.test.js +14 -5
  54. package/build/system/Form/Textarea.js +8 -9
  55. package/build/system/Form/Toggle.js +18 -13
  56. package/build/system/Form/ToggleGroup.js +8 -9
  57. package/build/system/Form/ToggleGroup.stories.js +50 -0
  58. package/build/system/Form/ToggleRow.js +9 -10
  59. package/build/system/Form/Validation.js +8 -9
  60. package/build/system/Grid/Grid.js +9 -2
  61. package/build/system/Grid/Grid.stories.js +1 -9
  62. package/build/system/Heading/Heading.js +18 -13
  63. package/build/system/Heading/Heading.stories.js +1 -9
  64. package/build/system/Link/Link.js +9 -10
  65. package/build/system/Link/Link.stories.js +1 -9
  66. package/build/system/Notice/Notice.js +18 -13
  67. package/build/system/Notice/Notice.stories.js +20 -3
  68. package/build/system/Notification/Notification.js +3 -2
  69. package/build/system/Notification/Notification.stories.js +1 -9
  70. package/build/system/OptionRow/OptionRow.js +26 -16
  71. package/build/system/OptionRow/OptionRow.stories.js +12 -12
  72. package/build/system/OptionRow/OptionRow.test.js +93 -0
  73. package/build/system/Progress/Progress.js +17 -12
  74. package/build/system/Progress/Progress.stories.js +1 -9
  75. package/build/system/ResourceList/ResourceItem.js +2 -2
  76. package/build/system/ResourceList/ResourceList.js +14 -4
  77. package/build/system/ResourceList/ResourceList.stories.js +377 -0
  78. package/build/system/Spinner/Spinner.js +17 -12
  79. package/build/system/Spinner/Spinner.stories.js +1 -9
  80. package/build/system/Table/Table.js +10 -13
  81. package/build/system/Table/Table.stories.js +1 -9
  82. package/build/system/Table/TableRow.js +2 -2
  83. package/build/system/Tabs/TabItem.js +10 -10
  84. package/build/system/Tabs/Tabs.js +19 -14
  85. package/build/system/Tabs/Tabs.stories.js +1 -9
  86. package/build/system/Text/Text.js +18 -13
  87. package/build/system/Text/Text.stories.js +1 -9
  88. package/build/system/Time/Time.stories.js +52 -0
  89. package/build/system/Time/index.js +17 -13
  90. package/build/system/Timeline/Timeline.js +17 -11
  91. package/build/system/Timeline/Timeline.stories.js +16 -22
  92. package/build/system/Tooltip/Tooltip.js +10 -11
  93. package/build/system/Tooltip/Tooltip.stories.js +1 -9
  94. package/build/system/UsageChart/UsageChart.stories.js +20 -0
  95. package/build/system/Wizard/Wizard.js +18 -11
  96. package/build/system/Wizard/Wizard.stories.js +5 -4
  97. package/build/system/Wizard/WizardStep.js +8 -4
  98. package/build/system/Wizard/WizardStepHorizontal.js +8 -4
  99. package/build/system/index.js +3 -3
  100. package/build/system/theme/colors.js +1 -1
  101. package/build/system/theme/index.js +10 -5
  102. package/package.json +25 -13
  103. package/src/system/Avatar/Avatar.js +4 -0
  104. package/src/system/Avatar/{Avatar.stories.js → Avatar.stories.jsx} +0 -0
  105. package/src/system/Badge/Badge.js +4 -1
  106. package/src/system/Badge/{Badge.stories.js → Badge.stories.jsx} +0 -0
  107. package/src/system/BlankState/BlankState.js +4 -1
  108. package/src/system/BlankState/{BlankState.stories.js → BlankState.stories.jsx} +0 -0
  109. package/src/system/BlankState/BlankState.test.js +23 -22
  110. package/src/system/Box/Box.js +6 -1
  111. package/src/system/Box/{Box.stories.js → Box.stories.jsx} +0 -0
  112. package/src/system/Button/Button.js +3 -0
  113. package/src/system/Button/{Button.stories.js → Button.stories.jsx} +0 -0
  114. package/src/system/Card/Card.js +4 -1
  115. package/src/system/Card/{Card.stories.js → Card.stories.jsx} +0 -0
  116. package/src/system/Code/Code.js +4 -1
  117. package/src/system/Code/{Code.stories.js → Code.stories.jsx} +0 -0
  118. package/src/system/ConfirmationDialog/ConfirmationDialog.js +4 -2
  119. package/src/system/ConfirmationDialog/{ConfirmationDialog.stories.js → ConfirmationDialog.stories.jsx} +0 -0
  120. package/src/system/Dialog/Dialog.js +1 -1
  121. package/src/system/Dialog/{Dialog.stories.js → Dialog.stories.jsx} +0 -0
  122. package/src/system/Flex/{Flex.stories.js → Flex.stories.jsx} +0 -0
  123. package/src/system/Form/{Input.stories.js → Input.stories.jsx} +0 -0
  124. package/src/system/Form/{RadioBoxGroup.stories.js → RadioBoxGroup.stories.jsx} +0 -0
  125. package/src/system/Form/Select.js +1 -1
  126. package/src/system/Form/{Select.stories.js → Select.stories.jsx} +0 -0
  127. package/src/system/Form/Toggle.js +4 -2
  128. package/src/system/Form/{ToggleGroup.stories.js → ToggleGroup.stories.jsx} +0 -0
  129. package/src/system/Grid/{Grid.stories.js → Grid.stories.jsx} +0 -0
  130. package/src/system/Heading/Heading.js +4 -1
  131. package/src/system/Heading/{Heading.stories.js → Heading.stories.jsx} +0 -0
  132. package/src/system/Link/{Link.stories.js → Link.stories.jsx} +0 -0
  133. package/src/system/Notice/Notice.js +4 -1
  134. package/src/system/Notice/{Notice.stories.js → Notice.stories.jsx} +0 -0
  135. package/src/system/Notification/Notification.js +1 -0
  136. package/src/system/Notification/{Notification.stories.js → Notification.stories.jsx} +0 -0
  137. package/src/system/OptionRow/OptionRow.js +11 -2
  138. package/src/system/OptionRow/{OptionRow.stories.js → OptionRow.stories.jsx} +9 -0
  139. package/src/system/OptionRow/OptionRow.test.js +49 -0
  140. package/src/system/Progress/Progress.js +4 -1
  141. package/src/system/Progress/{Progress.stories.js → Progress.stories.jsx} +0 -0
  142. package/src/system/ResourceList/ResourceList.js +1 -1
  143. package/src/system/ResourceList/{ResourceList.stories.js → ResourceList.stories.jsx} +0 -0
  144. package/src/system/Spinner/Spinner.js +4 -1
  145. package/src/system/Spinner/{Spinner.stories.js → Spinner.stories.jsx} +0 -0
  146. package/src/system/Table/Table.js +1 -1
  147. package/src/system/Table/{Table.stories.js → Table.stories.jsx} +0 -0
  148. package/src/system/Tabs/TabItem.js +1 -0
  149. package/src/system/Tabs/Tabs.js +5 -2
  150. package/src/system/Tabs/{Tabs.stories.js → Tabs.stories.jsx} +0 -0
  151. package/src/system/Text/Text.js +4 -1
  152. package/src/system/Text/{Text.stories.js → Text.stories.jsx} +0 -0
  153. package/src/system/Time/{Time.stories.js → Time.stories.jsx} +0 -0
  154. package/src/system/Time/index.js +4 -1
  155. package/src/system/Timeline/Timeline.js +4 -2
  156. package/src/system/Timeline/{Timeline.stories.js → Timeline.stories.jsx} +0 -0
  157. package/src/system/Tooltip/{Tooltip.stories.js → Tooltip.stories.jsx} +0 -0
  158. package/src/system/Wizard/Wizard.js +6 -2
  159. package/src/system/Wizard/{Wizard.stories.js → Wizard.stories.jsx} +1 -1
  160. package/src/system/Wizard/WizardStep.js +5 -2
  161. package/src/system/Wizard/WizardStepHorizontal.js +4 -1
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
+
7
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
+
9
+ var _react = require("@testing-library/react");
10
+
11
+ var _jestAxe = require("jest-axe");
12
+
13
+ var _OptionRow = require("./OptionRow");
14
+
15
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
16
+
17
+ /**
18
+ * External dependencies
19
+ */
20
+
21
+ /**
22
+ * Internal dependencies
23
+ */
24
+ describe('<OptionRow />', function () {
25
+ it('renders the OptionRow', /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
26
+ var _render, container;
27
+
28
+ return _regenerator["default"].wrap(function _callee$(_context) {
29
+ while (1) {
30
+ switch (_context.prev = _context.next) {
31
+ case 0:
32
+ _render = (0, _react.render)((0, _jsxRuntime.jsx)(_OptionRow.OptionRow, {
33
+ label: "Option Row",
34
+ subTitle: "Mostly used to link off to other pages.",
35
+ as: "a"
36
+ })), container = _render.container;
37
+ expect(_react.screen.getByText('Mostly used to link off to other pages.')).toBeInTheDocument(); // Check for accessibility issues
38
+
39
+ _context.t0 = expect;
40
+ _context.next = 5;
41
+ return (0, _jestAxe.axe)(container);
42
+
43
+ case 5:
44
+ _context.t1 = _context.sent;
45
+ _context.next = 8;
46
+ return (0, _context.t0)(_context.t1).toHaveNoViolations();
47
+
48
+ case 8:
49
+ case "end":
50
+ return _context.stop();
51
+ }
52
+ }
53
+ }, _callee);
54
+ })));
55
+ it('renders a disabled OptionRow', /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
56
+ var image1, _render2, container;
57
+
58
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
59
+ while (1) {
60
+ switch (_context2.prev = _context2.next) {
61
+ case 0:
62
+ // eslint-disable-next-line max-len
63
+ image1 = "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='M71.4 15.3L54.2 4.2C54 4 53.7 4 53.4 4H26.4C26.1 4 25.8 4.1 25.6 4.2L8.29997 15.3C7.89997 15.6 7.59998 16 7.59998 16.5V32.1V63C7.59998 63.5 7.89997 64 8.29997 64.2L25.5 75.3C25.5 75.3 25.6 75.3 25.6 75.4C25.6 75.4 25.7 75.4 25.7 75.5C25.9 75.6 26 75.6 26.2 75.6H53.2C53.4 75.6 53.5 75.6 53.7 75.5C53.8 75.5 53.8 75.5 53.8 75.4C53.8 75.4 53.9 75.4 53.9 75.3L71.4 64.2C71.5 64.1 71.7 64 71.8 63.8C71.8 63.8 71.8 63.7 71.9 63.7C72 63.6 72.1 63.4 72.1 63.2V63.1C72.1 63 72.1 62.9 72.1 62.8V32.1V16.5C72.1 16 71.8 15.6 71.4 15.3ZM24.9 71.4L10.6 62.2V34.8L24.9 44V71.4ZM51.9 72.6H27.8V44.7H51.9V72.6ZM69.1 31.3L52.9 41.7H26.8L10.6 31.3V17.3L26.8 6.9H52.9L69.1 17.3V31.3Z' fill='%23BD9D70' /%3E%3C/svg%3E";
64
+ _render2 = (0, _react.render)((0, _jsxRuntime.jsx)(_OptionRow.OptionRow, {
65
+ image: image1,
66
+ label: "Option Row",
67
+ subTitle: "Mostly used to link off to other pages.",
68
+ as: "a",
69
+ disabled: true,
70
+ meta: ""
71
+ })), container = _render2.container;
72
+ expect(_react.screen.getByAltText('Image representing the list item').closest('div')).toHaveStyle({
73
+ background: 'none'
74
+ });
75
+ expect(_react.screen.queryByTestId('meta')).not.toBeInTheDocument(); // Check for accessibility issues
76
+
77
+ _context2.t0 = expect;
78
+ _context2.next = 7;
79
+ return (0, _jestAxe.axe)(container);
80
+
81
+ case 7:
82
+ _context2.t1 = _context2.sent;
83
+ _context2.next = 10;
84
+ return (0, _context2.t0)(_context2.t1).toHaveNoViolations();
85
+
86
+ case 10:
87
+ case "end":
88
+ return _context2.stop();
89
+ }
90
+ }
91
+ }, _callee2);
92
+ })));
93
+ });
@@ -1,8 +1,14 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
6
  exports.Progress = void 0;
5
7
 
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
+
6
12
  var _themeUi = require("theme-ui");
7
13
 
8
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -11,25 +17,23 @@ var _Spinner = require("../Spinner");
11
17
 
12
18
  var _ = require("../");
13
19
 
14
- var _jsxRuntime = require("theme-ui/jsx-runtime");
15
-
16
- var _excluded = ["steps", "activeStep", "sx"];
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
20
+ var _classnames = _interopRequireDefault(require("classnames"));
19
21
 
20
- 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); }
22
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
21
23
 
22
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
24
+ var _excluded = ["steps", "activeStep", "sx", "className"];
23
25
 
24
26
  var Progress = function Progress(_ref) {
25
27
  var steps = _ref.steps,
26
28
  activeStep = _ref.activeStep,
27
29
  sx = _ref.sx,
28
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
29
-
30
+ className = _ref.className,
31
+ props = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded);
30
32
  return (0, _jsxRuntime.jsxs)(_.Box, {
31
- children: [(0, _jsxRuntime.jsx)(_themeUi.Progress, _extends({}, props, {
32
- sx: _extends({
33
+ children: [(0, _jsxRuntime.jsx)(_themeUi.Progress, (0, _extends2["default"])({
34
+ className: (0, _classnames["default"])('vip-progress-component', className)
35
+ }, props, {
36
+ sx: (0, _extends2["default"])({
33
37
  color: 'primary'
34
38
  }, sx),
35
39
  max: steps.length,
@@ -63,5 +67,6 @@ exports.Progress = Progress;
63
67
  Progress.propTypes = {
64
68
  steps: _propTypes["default"].array,
65
69
  activeStep: _propTypes["default"].number,
66
- sx: _propTypes["default"].object
70
+ sx: _propTypes["default"].object,
71
+ className: _propTypes["default"].any
67
72
  };
@@ -1,20 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.Default = exports["default"] = void 0;
5
-
6
- var _react = _interopRequireDefault(require("react"));
4
+ exports["default"] = exports.Default = void 0;
7
5
 
8
6
  var _ = require("..");
9
7
 
10
8
  var _jsxRuntime = require("theme-ui/jsx-runtime");
11
9
 
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
-
14
- /**
15
- * External dependencies
16
- */
17
-
18
10
  /**
19
11
  * Internal dependencies
20
12
  */
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
6
  exports.ResourceItem = void 0;
5
7
 
@@ -9,8 +11,6 @@ var _ = require("..");
9
11
 
10
12
  var _jsxRuntime = require("theme-ui/jsx-runtime");
11
13
 
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
-
14
14
  /** @jsxImportSource theme-ui */
15
15
 
16
16
  /**
@@ -1,18 +1,27 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
6
  exports.ResourceList = void 0;
5
7
 
8
+ var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
6
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
7
11
 
8
12
  var _ = require("..");
9
13
 
10
14
  var _jsxRuntime = require("theme-ui/jsx-runtime");
11
15
 
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
16
+ /** @jsxImportSource theme-ui */
13
17
 
14
- 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); }
18
+ /**
19
+ * External dependencies
20
+ */
15
21
 
22
+ /**
23
+ * Internal dependencies
24
+ */
16
25
  var formatterOptions = {
17
26
  weekday: 'long',
18
27
  year: 'numeric',
@@ -37,7 +46,7 @@ var formatDate = function formatDate(date) {
37
46
  };
38
47
 
39
48
  var StyledListItem = function StyledListItem(props) {
40
- return (0, _jsxRuntime.jsx)(_.Box, _extends({
49
+ return (0, _jsxRuntime.jsx)(_.Box, (0, _extends3["default"])({
41
50
  as: "li",
42
51
  sx: {
43
52
  py: 2,
@@ -64,7 +73,7 @@ var ResourceList = function ResourceList(_ref) {
64
73
 
65
74
  var formattedDate = formatDate(item[dateKey]);
66
75
  var itemsAtDate = itemGroups[formattedDate];
67
- return _extends({}, itemGroups, (_extends2 = {}, _extends2[formattedDate] = itemsAtDate ? [].concat(itemsAtDate, [item]) : [item], _extends2));
76
+ return (0, _extends3["default"])({}, itemGroups, (_extends2 = {}, _extends2[formattedDate] = itemsAtDate ? [].concat(itemsAtDate, [item]) : [item], _extends2));
68
77
  }, {});
69
78
  }
70
79
 
@@ -83,6 +92,7 @@ var ResourceList = function ResourceList(_ref) {
83
92
  m: 0,
84
93
  p: 0
85
94
  },
95
+ className: "vip-resource-list-component",
86
96
  children: groupedByDay ? Object.keys(groupedItems).map(function (groupName, index) {
87
97
  return (0, _jsxRuntime.jsxs)(_.Box, {
88
98
  sx: {
@@ -0,0 +1,377 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports["default"] = exports.Relative = exports.Grouped = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _bi = require("react-icons/bi");
11
+
12
+ var _ = require("..");
13
+
14
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
15
+
16
+ /** @jsxImportSource theme-ui */
17
+
18
+ /**
19
+ * External dependencies
20
+ */
21
+
22
+ /**
23
+ * Internal dependencies
24
+ */
25
+ var _default = {
26
+ title: 'ResourceList',
27
+ component: _.ResourceList
28
+ };
29
+ exports["default"] = _default;
30
+ var logs = [{
31
+ actor: 'Saxon Fletcher',
32
+ action: 'switched primary domain to',
33
+ object: 'mydomain.com',
34
+ date: new Date()
35
+ }, {
36
+ actor: 'Saxon Fletcher',
37
+ action: 'switched primary domain to',
38
+ object: 'mydomain.com',
39
+ date: new Date(new Date().setHours(11))
40
+ }, {
41
+ actor: 'Simon Wheatley',
42
+ action: 'deployed to',
43
+ object: 'Production',
44
+ showObject: true,
45
+ date: new Date(new Date().setDate(15))
46
+ }, {
47
+ actor: 'Saxon Fletcher',
48
+ action: 'created a backup on',
49
+ object: 'Production',
50
+ date: new Date(new Date().setDate(13))
51
+ }];
52
+
53
+ var Grouped = function Grouped() {
54
+ return (0, _jsxRuntime.jsxs)(_.Box, {
55
+ sx: {
56
+ p: 5,
57
+ pt: 2
58
+ },
59
+ children: [(0, _jsxRuntime.jsx)(_.Heading, {
60
+ sx: {
61
+ mb: 2
62
+ },
63
+ children: "Audit Log"
64
+ }), (0, _jsxRuntime.jsx)(_.Text, {
65
+ sx: {
66
+ mb: 4
67
+ },
68
+ children: "A live trail of system and human events."
69
+ }), (0, _jsxRuntime.jsx)(_.ResourceList, {
70
+ items: logs,
71
+ dateKey: "date",
72
+ groupedByDay: true,
73
+ renderItem: function renderItem(item) {
74
+ return (0, _jsxRuntime.jsxs)(_.ResourceItem, {
75
+ item: item,
76
+ icon: (0, _jsxRuntime.jsx)(_bi.BiGlobe, {
77
+ sx: {
78
+ color: 'red'
79
+ }
80
+ }),
81
+ dateKey: 'date',
82
+ relativeTime: true,
83
+ timeOnly: true,
84
+ children: [(0, _jsxRuntime.jsxs)(_.Flex, {
85
+ sx: {
86
+ alignItems: 'center',
87
+ gap: 3
88
+ },
89
+ children: [(0, _jsxRuntime.jsx)(_.Avatar, {
90
+ name: item.actor,
91
+ src: "https://uifaces.co/our-content/donated/1H_7AxP0.jpg",
92
+ size: 16
93
+ }), (0, _jsxRuntime.jsxs)(_.Heading, {
94
+ variant: "h4",
95
+ as: "p",
96
+ sx: {
97
+ mb: 0,
98
+ fontWeight: 'normal'
99
+ },
100
+ children: [item.actor, ' ', (0, _jsxRuntime.jsx)(_.Text, {
101
+ as: "span",
102
+ sx: {
103
+ color: 'muted',
104
+ mb: 0
105
+ },
106
+ children: item.action
107
+ }), ' ', item.object]
108
+ })]
109
+ }), item.showObject && (0, _jsxRuntime.jsxs)(_.Box, {
110
+ variant: "indent",
111
+ sx: {
112
+ mt: 2,
113
+ display: 'flex',
114
+ flexWrap: 'wrap',
115
+ gap: 3,
116
+ alignItems: 'center'
117
+ },
118
+ children: [(0, _jsxRuntime.jsxs)(_.Heading, {
119
+ variant: "h5",
120
+ as: "div",
121
+ sx: {
122
+ mb: 0
123
+ },
124
+ children: ["Merge pull request", ' ', (0, _jsxRuntime.jsx)(_.Text, {
125
+ as: "span",
126
+ sx: {
127
+ color: 'muted'
128
+ },
129
+ children: "#443"
130
+ })]
131
+ }), (0, _jsxRuntime.jsxs)(_.Text, {
132
+ sx: {
133
+ mb: 0,
134
+ fontSize: 1,
135
+ display: 'flex',
136
+ alignItems: 'center',
137
+ gap: 1
138
+ },
139
+ children: [(0, _jsxRuntime.jsx)(_.Avatar, {
140
+ name: item.actor,
141
+ src: "https://uifaces.co/our-content/donated/n4Ngwvi7.jpg",
142
+ size: 16
143
+ }), item.actor]
144
+ }), (0, _jsxRuntime.jsxs)(_.Text, {
145
+ sx: {
146
+ mb: 0,
147
+ fontSize: 1,
148
+ display: 'flex',
149
+ alignItems: 'center',
150
+ gap: 1
151
+ },
152
+ children: [(0, _jsxRuntime.jsx)(_bi.BiCheckCircle, {
153
+ size: 16
154
+ }), "Deployed in 31s"]
155
+ })]
156
+ })]
157
+ });
158
+ }
159
+ })]
160
+ });
161
+ };
162
+
163
+ exports.Grouped = Grouped;
164
+ var deploys = [{
165
+ title: 'Merge pull request',
166
+ id: '#773',
167
+ author: 'Saxon Fletcher',
168
+ date: new Date(new Date().setHours(11)),
169
+ status: 'running'
170
+ }, {
171
+ title: 'Update homepage',
172
+ id: '#772',
173
+ author: 'Saxon Fletcher',
174
+ date: new Date(new Date().setHours(9))
175
+ }, {
176
+ title: 'Improve overall performance',
177
+ id: '#771',
178
+ author: 'Saxon Fletcher',
179
+ date: new Date(new Date().setHours(8))
180
+ }, {
181
+ title: 'Merge pull request',
182
+ id: '#770',
183
+ author: 'Saxon Fletcher',
184
+ date: new Date(new Date().setHours(5)),
185
+ status: 'failed'
186
+ }, {
187
+ title: 'Merge pull request',
188
+ id: '#773',
189
+ author: 'Saxon Fletcher',
190
+ date: new Date(new Date().setHours(11))
191
+ }, {
192
+ title: 'Update homepage',
193
+ id: '#772',
194
+ author: 'Saxon Fletcher',
195
+ date: new Date(new Date().setHours(9))
196
+ }, {
197
+ title: 'Improve overall performance',
198
+ id: '#771',
199
+ author: 'Saxon Fletcher',
200
+ date: new Date(new Date().setHours(8))
201
+ }, {
202
+ title: 'Merge pull request',
203
+ id: '#770',
204
+ author: 'Saxon Fletcher',
205
+ date: new Date(new Date().setHours(5))
206
+ }, {
207
+ title: 'Merge pull request',
208
+ id: '#773',
209
+ author: 'Saxon Fletcher',
210
+ date: new Date(new Date().setHours(11))
211
+ }, {
212
+ title: 'Update homepage',
213
+ id: '#772',
214
+ author: 'Saxon Fletcher',
215
+ date: new Date(new Date().setHours(9))
216
+ }, {
217
+ title: 'Improve overall performance',
218
+ id: '#771',
219
+ author: 'Saxon Fletcher',
220
+ date: new Date(new Date().setHours(8))
221
+ }, {
222
+ title: 'Merge pull request',
223
+ id: '#770',
224
+ author: 'Saxon Fletcher',
225
+ date: new Date(new Date().setHours(5))
226
+ }, {
227
+ title: 'Merge pull request',
228
+ id: '#773',
229
+ author: 'Saxon Fletcher',
230
+ date: new Date(new Date().setHours(11))
231
+ }, {
232
+ title: 'Update homepage',
233
+ id: '#772',
234
+ author: 'Saxon Fletcher',
235
+ date: new Date(new Date().setHours(9))
236
+ }, {
237
+ title: 'Improve overall performance',
238
+ id: '#771',
239
+ author: 'Saxon Fletcher',
240
+ date: new Date(new Date().setHours(8))
241
+ }, {
242
+ title: 'Merge pull request',
243
+ id: '#770',
244
+ author: 'Saxon Fletcher',
245
+ date: new Date(new Date().setHours(5))
246
+ }];
247
+
248
+ var Relative = function Relative() {
249
+ return (0, _jsxRuntime.jsxs)(_.Box, {
250
+ sx: {
251
+ p: 5,
252
+ pt: 2
253
+ },
254
+ children: [(0, _jsxRuntime.jsx)(_.Heading, {
255
+ sx: {
256
+ mb: 2
257
+ },
258
+ children: "Deploys"
259
+ }), (0, _jsxRuntime.jsx)(_.Text, {
260
+ sx: {
261
+ mb: 4
262
+ },
263
+ children: "View and manage application deployments."
264
+ }), (0, _jsxRuntime.jsx)(_.Card, {
265
+ variant: "indent",
266
+ sx: {
267
+ mb: 4,
268
+ display: 'flex',
269
+ flexDirection: 'row-reverse',
270
+ gap: 1
271
+ },
272
+ children: deploys.map(function (deploy, index) {
273
+ return (0, _jsxRuntime.jsx)(_.Box, {
274
+ sx: {
275
+ flex: '1 1 auto',
276
+ width: 10,
277
+ height: 4,
278
+ backgroundColor: deploy.status === 'running' ? 'blue.50' : 'green.50',
279
+ borderRadius: 1
280
+ }
281
+ }, index);
282
+ })
283
+ }), (0, _jsxRuntime.jsx)(_.ResourceList, {
284
+ items: deploys,
285
+ dateKey: "date",
286
+ groupedByDay: false,
287
+ renderItem: function renderItem(item) {
288
+ return (0, _jsxRuntime.jsx)(_.ResourceItem, {
289
+ item: item,
290
+ dateKey: 'date',
291
+ relativeTime: true,
292
+ timeOnly: true,
293
+ renderActions: function renderActions() {
294
+ return (0, _jsxRuntime.jsx)(_.Flex, {
295
+ sx: {
296
+ alignItems: 'center'
297
+ },
298
+ children: (0, _jsxRuntime.jsx)(_.Button, {
299
+ variant: "secondary",
300
+ sx: {
301
+ fontSize: 1
302
+ },
303
+ children: "Rollback"
304
+ })
305
+ });
306
+ },
307
+ children: (0, _jsxRuntime.jsxs)(_.Flex, {
308
+ sx: {
309
+ alignItems: 'center',
310
+ gap: 4
311
+ },
312
+ children: [(0, _jsxRuntime.jsxs)(_.Flex, {
313
+ sx: {
314
+ alignItems: 'center',
315
+ gap: 3,
316
+ minWidth: 300
317
+ },
318
+ children: [(0, _jsxRuntime.jsxs)(_.Heading, {
319
+ variant: "h4",
320
+ as: "p",
321
+ sx: {
322
+ mb: 0,
323
+ fontWeight: 'normal'
324
+ },
325
+ children: [item.title, ' ', (0, _jsxRuntime.jsx)(_.Text, {
326
+ as: "span",
327
+ sx: {
328
+ color: 'muted',
329
+ mb: 0
330
+ },
331
+ children: item.id
332
+ })]
333
+ }), item.status === 'running' && (0, _jsxRuntime.jsx)(_.Badge, {
334
+ sx: {
335
+ mb: 0
336
+ },
337
+ children: "Running"
338
+ })]
339
+ }), (0, _jsxRuntime.jsxs)(_.Text, {
340
+ sx: {
341
+ mb: 0,
342
+ color: 'muted',
343
+ display: 'flex',
344
+ alignItems: 'center',
345
+ gap: 2
346
+ },
347
+ children: [(0, _jsxRuntime.jsx)(_.Avatar, {
348
+ name: item.author,
349
+ size: 16,
350
+ src: "https://randomuser.me/api/portraits/men/46.jpg"
351
+ }), item.author]
352
+ }), (0, _jsxRuntime.jsx)(_.Text, {
353
+ sx: {
354
+ mb: 0,
355
+ color: item.status === 'running' ? 'blue.60' : 'muted',
356
+ display: 'flex',
357
+ alignItems: 'center',
358
+ gap: 1
359
+ },
360
+ children: item.status === 'running' ? (0, _jsxRuntime.jsxs)(_react["default"].Fragment, {
361
+ children: [(0, _jsxRuntime.jsx)(_bi.BiRevision, {
362
+ size: 16
363
+ }), "Running for 31s"]
364
+ }) : (0, _jsxRuntime.jsxs)(_react["default"].Fragment, {
365
+ children: [(0, _jsxRuntime.jsx)(_bi.BiCheckCircle, {
366
+ size: 16
367
+ }), "Deployed in 31s"]
368
+ })
369
+ })]
370
+ })
371
+ });
372
+ }
373
+ })]
374
+ });
375
+ };
376
+
377
+ exports.Relative = Relative;
@@ -1,36 +1,41 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
6
  exports.Spinner = void 0;
5
7
 
6
- var _themeUi = require("theme-ui");
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
7
9
 
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
11
 
10
- var _jsxRuntime = require("theme-ui/jsx-runtime");
12
+ var _themeUi = require("theme-ui");
11
13
 
12
- var _excluded = ["sx"];
14
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
15
 
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
16
+ var _classnames = _interopRequireDefault(require("classnames"));
15
17
 
16
- 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); }
18
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
17
19
 
18
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
20
+ var _excluded = ["sx", "className"];
19
21
 
20
22
  var Spinner = function Spinner(_ref) {
21
23
  var sx = _ref.sx,
22
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
23
-
24
- return (0, _jsxRuntime.jsx)(_themeUi.Spinner, _extends({
24
+ _ref$className = _ref.className,
25
+ className = _ref$className === void 0 ? null : _ref$className,
26
+ props = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded);
27
+ return (0, _jsxRuntime.jsx)(_themeUi.Spinner, (0, _extends2["default"])({
25
28
  strokeWidth: 2,
26
29
  sx: {
27
30
  fill: 'none',
28
31
  color: 'primary'
29
- }
32
+ },
33
+ className: (0, _classnames["default"])('vip-spinner-component', className)
30
34
  }, props));
31
35
  };
32
36
 
33
37
  exports.Spinner = Spinner;
34
38
  Spinner.propTypes = {
35
- sx: _propTypes["default"].object
39
+ sx: _propTypes["default"].object,
40
+ className: _propTypes["default"].any
36
41
  };