@automattic/vip-design-system 0.33.1 → 0.33.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.
@@ -17,10 +17,12 @@ var _ScreenReaderText = _interopRequireDefault(require("../ScreenReaderText"));
17
17
 
18
18
  var _Label = require("./Label");
19
19
 
20
+ var _Validation = require("./Validation");
21
+
20
22
  var _jsxRuntime = require("theme-ui/jsx-runtime");
21
23
 
22
24
  var _excluded = ["id", "value", "className", "label", "description", "labelProps"],
23
- _excluded2 = ["optionWidth", "name", "onChange", "groupLabel", "defaultValue", "options", "disabled"];
25
+ _excluded2 = ["optionWidth", "name", "onChange", "groupLabel", "defaultValue", "options", "disabled", "errorMessage", "hasError", "required"];
24
26
 
25
27
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
28
 
@@ -137,6 +139,9 @@ var RadioBoxGroup = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, f
137
139
  defaultValue = _ref2.defaultValue,
138
140
  options = _ref2.options,
139
141
  disabled = _ref2.disabled,
142
+ errorMessage = _ref2.errorMessage,
143
+ hasError = _ref2.hasError,
144
+ required = _ref2.required,
140
145
  props = (0, _objectWithoutPropertiesLoose2["default"])(_ref2, _excluded2);
141
146
  var onChangeHandler = (0, _react.useCallback)(function (e) {
142
147
  var optionTriggered = options.find(function (option) {
@@ -154,29 +159,42 @@ var RadioBoxGroup = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, f
154
159
  width: optionWidth
155
160
  }, (option == null ? void 0 : option.id) || (option == null ? void 0 : option.value));
156
161
  });
157
- return (0, _jsxRuntime.jsxs)("fieldset", (0, _extends2["default"])({
158
- sx: {
159
- border: 0,
160
- padding: 0
161
- },
162
- ref: forwardRef
163
- }, props, {
164
- children: [groupLabel ? (0, _jsxRuntime.jsx)(_Label.Label, {
165
- as: "legend",
166
- sx: {
162
+ return (0, _jsxRuntime.jsxs)("div", {
163
+ children: [(0, _jsxRuntime.jsxs)("fieldset", (0, _extends2["default"])({
164
+ sx: (0, _extends2["default"])({
165
+ border: 0,
166
+ p: hasError ? 2 : 0,
167
+ display: 'inline-block',
167
168
  mb: 2
168
- },
169
- children: groupLabel
170
- }) : (0, _jsxRuntime.jsx)(_ScreenReaderText["default"], {
171
- children: "Choose an option"
172
- }), (0, _jsxRuntime.jsx)("div", {
173
- sx: {
174
- display: 'flex',
175
- gap: 2
176
- },
177
- children: renderedOptions
169
+ }, hasError ? {
170
+ border: '1px solid',
171
+ borderColor: 'input.border.error',
172
+ borderRadius: 2
173
+ } : {}),
174
+ ref: forwardRef
175
+ }, props, {
176
+ children: [groupLabel ? (0, _jsxRuntime.jsx)(_Label.Label, {
177
+ as: "legend",
178
+ sx: {
179
+ mb: 2
180
+ },
181
+ required: required,
182
+ children: groupLabel
183
+ }) : (0, _jsxRuntime.jsx)(_ScreenReaderText["default"], {
184
+ children: "Choose an option"
185
+ }), (0, _jsxRuntime.jsx)("div", {
186
+ sx: {
187
+ display: 'flex',
188
+ gap: 2
189
+ },
190
+ children: renderedOptions
191
+ })]
192
+ })), hasError && errorMessage && (0, _jsxRuntime.jsx)(_Validation.Validation, {
193
+ isValid: false,
194
+ describedId: groupLabel,
195
+ children: errorMessage
178
196
  })]
179
- }));
197
+ });
180
198
  });
181
199
 
182
200
  exports.RadioBoxGroup = RadioBoxGroup;
@@ -188,5 +206,9 @@ RadioBoxGroup.propTypes = {
188
206
  name: _propTypes["default"].string,
189
207
  disabled: _propTypes["default"].bool,
190
208
  groupLabel: _propTypes["default"].string,
191
- optionWidth: _propTypes["default"].string
209
+ id: _propTypes["default"].string,
210
+ optionWidth: _propTypes["default"].string,
211
+ errorMessage: _propTypes["default"].string,
212
+ hasError: _propTypes["default"].bool,
213
+ required: _propTypes["default"].bool
192
214
  };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports["default"] = exports.Default = void 0;
4
+ exports["default"] = exports.Errors = exports.Default = void 0;
5
5
 
6
6
  var _react = require("react");
7
7
 
@@ -50,4 +50,24 @@ var Default = function Default() {
50
50
  });
51
51
  };
52
52
 
53
- exports.Default = Default;
53
+ exports.Default = Default;
54
+
55
+ var Errors = function Errors() {
56
+ var _useState2 = (0, _react.useState)(null),
57
+ value = _useState2[0],
58
+ setValue = _useState2[1];
59
+
60
+ return (0, _jsxRuntime.jsx)(_.RadioBoxGroup, {
61
+ defaultValue: value,
62
+ onChange: function onChange(e) {
63
+ return setValue(e.target.value);
64
+ },
65
+ options: options,
66
+ required: true,
67
+ groupLabel: "Radio Box Group",
68
+ hasError: true,
69
+ errorMessage: "This is an error message"
70
+ });
71
+ };
72
+
73
+ exports.Errors = Errors;
@@ -60,7 +60,7 @@ var ToggleGroup = /*#__PURE__*/_react["default"].forwardRef(function (_ref, forw
60
60
  color: 'heading'
61
61
  },
62
62
  '&[data-state=checked]': {
63
- backgroundColor: 'card',
63
+ backgroundColor: 'background',
64
64
  boxShadow: 'low',
65
65
  color: 'heading'
66
66
  }
@@ -37,7 +37,7 @@ var _Form = require("../Form");
37
37
 
38
38
  var _jsxRuntime = require("theme-ui/jsx-runtime");
39
39
 
40
- var _excluded = ["autoFilter", "className", "debounce", "displayMenu", "dropdownArrow", "errorMessage", "forLabel", "getOptionLabel", "getOptionValue", "hasError", "isInline", "label", "loading", "minLength", "noOptionsMessage", "onChange", "onInputChange", "options", "required", "searchIcon", "showAllValues", "resetOnBlur", "source", "value"];
40
+ var _excluded = ["autoFilter", "className", "debounce", "displayMenu", "dropdownArrow", "forLabel", "getOptionLabel", "getOptionValue", "errorMessage", "hasError", "isInline", "label", "loading", "minLength", "noOptionsMessage", "onChange", "onInputChange", "options", "required", "searchIcon", "showAllValues", "resetOnBlur", "source", "value"];
41
41
 
42
42
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
43
 
@@ -147,11 +147,11 @@ var FormAutocomplete = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
147
147
  displayMenu = _ref$displayMenu === void 0 ? 'overlay' : _ref$displayMenu,
148
148
  _ref$dropdownArrow = _ref.dropdownArrow,
149
149
  dropdownArrow = _ref$dropdownArrow === void 0 ? DefaultArrow : _ref$dropdownArrow,
150
- errorMessage = _ref.errorMessage,
151
150
  _ref$forLabel = _ref.forLabel,
152
151
  forLabel = _ref$forLabel === void 0 ? 'vip-autocomplete' : _ref$forLabel,
153
152
  getOptionLabel = _ref.getOptionLabel,
154
153
  getOptionValue = _ref.getOptionValue,
154
+ errorMessage = _ref.errorMessage,
155
155
  hasError = _ref.hasError,
156
156
  isInline = _ref.isInline,
157
157
  label = _ref.label,
@@ -345,7 +345,9 @@ var FormAutocomplete = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
345
345
  return (0, _jsxRuntime.jsxs)("div", {
346
346
  className: (0, _classnames["default"])('vip-form-autocomplete-component', className),
347
347
  children: [label && !isInline && (0, _jsxRuntime.jsx)(SelectLabel, {}), (0, _jsxRuntime.jsx)("div", {
348
- sx: (0, _extends2["default"])({}, defaultStyles, isInline && inlineStyles, searchIcon && searchIconStyles),
348
+ sx: (0, _extends2["default"])({}, defaultStyles, isInline && inlineStyles, searchIcon && searchIconStyles, hasError ? {
349
+ borderColor: 'input.border.error'
350
+ } : {}),
349
351
  children: (0, _jsxRuntime.jsxs)(_FormSelectContent.FormSelectContent, {
350
352
  isInline: inlineLabel,
351
353
  label: inlineLabel ? (0, _jsxRuntime.jsx)(SelectLabel, {}) : null,
@@ -36,12 +36,15 @@ var NewTabs = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
36
36
  onValueChange = _ref$onValueChange === void 0 ? undefined : _ref$onValueChange,
37
37
  _ref$defaultValue = _ref.defaultValue,
38
38
  defaultValue = _ref$defaultValue === void 0 ? undefined : _ref$defaultValue,
39
+ _ref$value = _ref.value,
40
+ value = _ref$value === void 0 ? undefined : _ref$value,
39
41
  _ref$className = _ref.className,
40
42
  className = _ref$className === void 0 ? null : _ref$className,
41
43
  _ref$sx = _ref.sx,
42
44
  sx = _ref$sx === void 0 ? {} : _ref$sx;
43
45
  return (0, _jsxRuntime.jsx)(TabsPrimitive.Root, {
44
46
  ref: ref,
47
+ value: value,
45
48
  defaultValue: defaultValue,
46
49
  onValueChange: onValueChange,
47
50
  className: (0, _classnames["default"])('vip-tabs-component', className),
@@ -55,6 +58,7 @@ NewTabs.propTypes = {
55
58
  className: _propTypes["default"].any,
56
59
  sx: _propTypes["default"].object,
57
60
  defaultValue: _propTypes["default"].node,
61
+ value: _propTypes["default"].node,
58
62
  onValueChange: _propTypes["default"].func,
59
63
  children: _propTypes["default"].node.isRequired
60
64
  };
@@ -1,12 +1,20 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
- exports["default"] = exports.Default = void 0;
6
+ exports["default"] = exports.SetActiveTab = exports.Default = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
5
9
 
6
10
  var _ = require("..");
7
11
 
8
12
  var _jsxRuntime = require("theme-ui/jsx-runtime");
9
13
 
14
+ /**
15
+ * External dependencies
16
+ */
17
+
10
18
  /**
11
19
  * Internal dependencies
12
20
  */
@@ -58,4 +66,58 @@ var Default = function Default() {
58
66
  });
59
67
  };
60
68
 
61
- exports.Default = Default;
69
+ exports.Default = Default;
70
+
71
+ var SetActiveTab = function SetActiveTab() {
72
+ var _React$useState = _react["default"].useState('all'),
73
+ activeTab = _React$useState[0],
74
+ setActiveTab = _React$useState[1];
75
+
76
+ return (0, _jsxRuntime.jsxs)(_.NewTabs, {
77
+ value: activeTab,
78
+ onValueChange: function onValueChange(val) {
79
+ return setActiveTab(val);
80
+ },
81
+ children: [(0, _jsxRuntime.jsxs)(_.TabsList, {
82
+ title: "See all the content",
83
+ children: [(0, _jsxRuntime.jsx)(_.TabsTrigger, {
84
+ value: "all",
85
+ children: "All (5)"
86
+ }), (0, _jsxRuntime.jsx)(_.TabsTrigger, {
87
+ value: "live",
88
+ children: "Live (2)"
89
+ }), (0, _jsxRuntime.jsx)(_.TabsTrigger, {
90
+ value: "dev",
91
+ children: "In Development (3)"
92
+ }), (0, _jsxRuntime.jsx)(_.TabsTrigger, {
93
+ value: "protect",
94
+ disabled: true,
95
+ children: "Not accessible"
96
+ })]
97
+ }), (0, _jsxRuntime.jsx)(_.TabsContent, {
98
+ value: "all",
99
+ children: (0, _jsxRuntime.jsx)(_.Text, {
100
+ children: (0, _jsxRuntime.jsx)("button", {
101
+ type: "button",
102
+ onClick: function onClick() {
103
+ return setActiveTab('live');
104
+ },
105
+ children: "Switch to live tab"
106
+ })
107
+ })
108
+ }), (0, _jsxRuntime.jsx)(_.TabsContent, {
109
+ value: "live",
110
+ children: "Live content"
111
+ }), (0, _jsxRuntime.jsx)(_.TabsContent, {
112
+ value: "dev",
113
+ children: (0, _jsxRuntime.jsxs)(_.Text, {
114
+ children: ["In Development content ", (0, _jsxRuntime.jsx)("button", {
115
+ type: "button",
116
+ children: "Hey I am a button"
117
+ }), ' ']
118
+ })
119
+ })]
120
+ });
121
+ };
122
+
123
+ exports.SetActiveTab = SetActiveTab;
@@ -33,7 +33,7 @@ var TabsList = function TabsList(_ref) {
33
33
  return (0, _jsxRuntime.jsx)(TabsPrimitive.List, {
34
34
  sx: (0, _extends2["default"])({
35
35
  borderBottom: '1px solid',
36
- borderColor: 'border',
36
+ borderColor: 'borders.2',
37
37
  display: 'flex'
38
38
  }, sx),
39
39
  "aria-label": title,
@@ -7,6 +7,8 @@ exports.TabsTrigger = void 0;
7
7
 
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
 
10
+ var _react = _interopRequireDefault(require("react"));
11
+
10
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
13
 
12
14
  var TabsPrimitive = _interopRequireWildcard(require("@radix-ui/react-tabs"));
@@ -36,19 +38,18 @@ var styles = {
36
38
  px: 0,
37
39
  pb: 3,
38
40
  border: 'none',
39
- color: 'muted',
41
+ color: 'heading',
40
42
  '&[data-state="active"]': {
41
- color: 'heading',
42
- fontWeight: 'body',
43
- boxShadow: function boxShadow(theme) {
44
- return "inset 0 -1px 0 0 " + theme.colors.link + ", 0 1px 0 0 " + theme.colors.link;
45
- }
43
+ color: 'link',
44
+ fontWeight: 'regular',
45
+ boxShadow: 'inset 0 -1px 0 0, 0 1px 0 0',
46
+ boxShadowColor: 'borders.accent'
46
47
  },
47
48
  '&:disabled': {
48
- color: 'grey.70'
49
+ color: 'muted'
49
50
  },
50
51
  ':hover': {
51
- fontWeight: 'body',
52
+ fontWeight: 'regular',
52
53
  color: 'heading'
53
54
  },
54
55
  '&:focus': function focus(theme) {
@@ -59,7 +60,7 @@ var styles = {
59
60
  }
60
61
  };
61
62
 
62
- var TabsTrigger = function TabsTrigger(_ref) {
63
+ var TabsTrigger = /*#__PURE__*/_react["default"].forwardRef(function (_ref, forwardRef) {
63
64
  var value = _ref.value,
64
65
  _ref$disabled = _ref.disabled,
65
66
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
@@ -70,9 +71,10 @@ var TabsTrigger = function TabsTrigger(_ref) {
70
71
  value: value,
71
72
  disabled: disabled,
72
73
  sx: (0, _extends2["default"])({}, styles, sx),
74
+ ref: forwardRef,
73
75
  children: children
74
76
  });
75
- };
77
+ });
76
78
 
77
79
  exports.TabsTrigger = TabsTrigger;
78
80
  TabsTrigger.propTypes = {
@@ -80,4 +82,5 @@ TabsTrigger.propTypes = {
80
82
  value: _propTypes["default"].string,
81
83
  disabled: _propTypes["default"].bool,
82
84
  children: _propTypes["default"].node.isRequired
83
- };
85
+ };
86
+ TabsTrigger.displayName = 'TabsTrigger';
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.ResourceItem = void 0;
7
+
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+
10
+ var _ = require("..");
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
+ var ResourceItem = function ResourceItem(_ref) {
24
+ var children = _ref.children,
25
+ item = _ref.item,
26
+ renderActions = _ref.renderActions,
27
+ _ref$relativeTime = _ref.relativeTime,
28
+ relativeTime = _ref$relativeTime === void 0 ? false : _ref$relativeTime,
29
+ _ref$timeOnly = _ref.timeOnly,
30
+ timeOnly = _ref$timeOnly === void 0 ? false : _ref$timeOnly,
31
+ dateKey = _ref.dateKey,
32
+ _ref$icon = _ref.icon,
33
+ icon = _ref$icon === void 0 ? null : _ref$icon;
34
+ return (0, _jsxRuntime.jsxs)(_.Flex, {
35
+ sx: {
36
+ alignItems: 'center',
37
+ gap: 3
38
+ },
39
+ children: [icon, (0, _jsxRuntime.jsx)(_.Box, {
40
+ sx: {
41
+ flex: '1 1 auto'
42
+ },
43
+ children: children
44
+ }), (0, _jsxRuntime.jsxs)(_.Flex, {
45
+ sx: {
46
+ flex: '0 0 auto',
47
+ alignItems: 'center',
48
+ gap: 3
49
+ },
50
+ children: [(0, _jsxRuntime.jsx)(_.Time, {
51
+ className: "time",
52
+ relativeTime: relativeTime,
53
+ timeOnly: timeOnly,
54
+ time: item[dateKey],
55
+ sx: {
56
+ color: 'muted',
57
+ mb: 0,
58
+ textAlign: 'right',
59
+ flex: '0 0 auto'
60
+ }
61
+ }), renderActions && (0, _jsxRuntime.jsxs)(_.Flex, {
62
+ className: "actions",
63
+ sx: {
64
+ alignItems: 'center',
65
+ gap: 3
66
+ },
67
+ children: [(0, _jsxRuntime.jsx)(_.Box, {
68
+ sx: {
69
+ width: 4,
70
+ height: 4,
71
+ borderRadius: 4,
72
+ bg: 'border'
73
+ }
74
+ }), renderActions(item)]
75
+ })]
76
+ })]
77
+ });
78
+ };
79
+
80
+ exports.ResourceItem = ResourceItem;
81
+ ResourceItem.propTypes = {
82
+ children: _propTypes["default"].node,
83
+ item: _propTypes["default"].object,
84
+ icon: _propTypes["default"].node,
85
+ relativeTime: _propTypes["default"].bool,
86
+ timeOnly: _propTypes["default"].bool,
87
+ dateKey: _propTypes["default"].string,
88
+ renderActions: _propTypes["default"].func
89
+ };
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.ResourceList = void 0;
7
+
8
+ var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ var _react = require("react");
13
+
14
+ var _ = require("..");
15
+
16
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
17
+
18
+ /** @jsxImportSource theme-ui */
19
+
20
+ /**
21
+ * External dependencies
22
+ */
23
+
24
+ /**
25
+ * Internal dependencies
26
+ */
27
+ var formatterOptions = {
28
+ weekday: 'long',
29
+ year: 'numeric',
30
+ month: 'long',
31
+ day: 'numeric'
32
+ };
33
+
34
+ var formatDate = function formatDate(date) {
35
+ var today = new Date();
36
+
37
+ if (date.getFullYear() !== today.getFullYear()) {
38
+ return date.toLocaleDateString(formatterOptions);
39
+ } else if (date.getMonth() !== today.getMonth()) {
40
+ return date.toLocaleDateString(formatterOptions);
41
+ } else if (date.getDate() < today.getDate() - 1) {
42
+ return date.toLocaleDateString(formatterOptions);
43
+ } else if (date.getDate() === today.getDate() - 1) {
44
+ return 'Yesterday';
45
+ }
46
+
47
+ return 'Today';
48
+ };
49
+
50
+ var StyledListItem = function StyledListItem(props) {
51
+ return (0, _jsxRuntime.jsx)(_.Box, (0, _extends3["default"])({
52
+ as: "li",
53
+ sx: {
54
+ py: 2,
55
+ borderBottom: '1px solid',
56
+ borderColor: 'borders.2',
57
+ listStyleType: 'none',
58
+ margin: 0,
59
+ px: 0
60
+ }
61
+ }, props));
62
+ };
63
+
64
+ var ResourceList = function ResourceList(_ref) {
65
+ var _ref$groupedByDay = _ref.groupedByDay,
66
+ groupedByDay = _ref$groupedByDay === void 0 ? false : _ref$groupedByDay,
67
+ items = _ref.items,
68
+ renderItem = _ref.renderItem,
69
+ dateKey = _ref.dateKey;
70
+ var groupedItems = {};
71
+
72
+ if (groupedByDay) {
73
+ groupedItems = items == null ? void 0 : items.reduce(function (itemGroups, item) {
74
+ var _extends2;
75
+
76
+ var formattedDate = formatDate(item[dateKey]);
77
+ var itemsAtDate = itemGroups[formattedDate];
78
+ return (0, _extends3["default"])({}, itemGroups, (_extends2 = {}, _extends2[formattedDate] = itemsAtDate ? [].concat(itemsAtDate, [item]) : [item], _extends2));
79
+ }, {});
80
+ }
81
+
82
+ var renderItemList = function renderItemList(itemsList) {
83
+ return itemsList.map(function (item, index) {
84
+ return (0, _jsxRuntime.jsx)(StyledListItem, {
85
+ children: renderItem(item)
86
+ }, index);
87
+ });
88
+ };
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
+
121
+ return (0, _jsxRuntime.jsx)(_.Box, {
122
+ as: "ul",
123
+ sx: {
124
+ listStyleType: 'none',
125
+ m: 0,
126
+ p: 0
127
+ },
128
+ className: "vip-resource-list-component",
129
+ children: groupedByDay ? renderGoupedItems(groupedItems) : renderItemList(items)
130
+ });
131
+ };
132
+
133
+ exports.ResourceList = ResourceList;
134
+ ResourceList.propTypes = {
135
+ groupedByDay: _propTypes["default"].bool,
136
+ items: _propTypes["default"].array,
137
+ renderItem: _propTypes["default"].func,
138
+ relativeTime: _propTypes["default"].bool,
139
+ dateKey: _propTypes["default"].string
140
+ };