carbon-react 114.0.0 → 114.2.0

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 (65) hide show
  1. package/esm/__internal__/utils/helpers/events/events.d.ts +5 -0
  2. package/esm/__internal__/utils/helpers/events/events.js +7 -0
  3. package/esm/__spec_helper__/mock-match-media.d.ts +4 -7
  4. package/esm/__spec_helper__/mock-match-media.js +4 -4
  5. package/esm/components/i18n-provider/i18n-provider.component.js +3 -0
  6. package/esm/components/inline-inputs/inline-inputs.component.d.ts +3 -1
  7. package/esm/components/inline-inputs/inline-inputs.component.js +6 -3
  8. package/esm/components/pod/index.d.ts +2 -2
  9. package/esm/components/pod/pod.component.d.ts +47 -0
  10. package/esm/components/pod/pod.component.js +289 -258
  11. package/esm/components/pod/pod.config.d.ts +6 -0
  12. package/esm/components/pod/pod.config.js +2 -2
  13. package/esm/components/pod/pod.style.d.ts +44 -0
  14. package/esm/components/pod/pod.style.js +151 -103
  15. package/esm/components/show-edit-pod/show-edit-pod.style.js +1 -1
  16. package/esm/components/tile/index.d.ts +2 -1
  17. package/esm/components/tile/tile-footer/index.d.ts +2 -1
  18. package/esm/components/tile/tile-footer/tile-footer.component.d.ts +9 -0
  19. package/esm/components/tile/tile-footer/tile-footer.component.js +160 -8
  20. package/esm/components/tile/tile-footer/tile-footer.style.d.ts +5 -0
  21. package/esm/components/tile/tile.component.d.ts +29 -0
  22. package/esm/components/tile/tile.component.js +330 -44
  23. package/esm/components/tile/tile.config.d.ts +2 -0
  24. package/esm/components/tile/tile.style.d.ts +12 -0
  25. package/esm/components/tile/tile.style.js +13 -21
  26. package/esm/hooks/useMediaQuery/useMediaQuery.js +2 -2
  27. package/esm/locales/en-gb.js +3 -0
  28. package/esm/locales/locale.d.ts +3 -0
  29. package/esm/locales/pl-pl.js +3 -0
  30. package/lib/__internal__/utils/helpers/events/events.d.ts +5 -0
  31. package/lib/__internal__/utils/helpers/events/events.js +7 -0
  32. package/lib/__spec_helper__/mock-match-media.d.ts +4 -7
  33. package/lib/__spec_helper__/mock-match-media.js +4 -4
  34. package/lib/components/i18n-provider/i18n-provider.component.js +3 -0
  35. package/lib/components/inline-inputs/inline-inputs.component.d.ts +3 -1
  36. package/lib/components/inline-inputs/inline-inputs.component.js +6 -3
  37. package/lib/components/pod/index.d.ts +2 -2
  38. package/lib/components/pod/pod.component.d.ts +47 -0
  39. package/lib/components/pod/pod.component.js +292 -259
  40. package/lib/components/pod/pod.config.d.ts +6 -0
  41. package/lib/components/pod/pod.config.js +4 -4
  42. package/lib/components/pod/pod.style.d.ts +44 -0
  43. package/lib/components/pod/pod.style.js +153 -106
  44. package/lib/components/show-edit-pod/show-edit-pod.style.js +4 -4
  45. package/lib/components/tile/index.d.ts +2 -1
  46. package/lib/components/tile/tile-footer/index.d.ts +2 -1
  47. package/lib/components/tile/tile-footer/tile-footer.component.d.ts +9 -0
  48. package/lib/components/tile/tile-footer/tile-footer.component.js +157 -11
  49. package/lib/components/tile/tile-footer/tile-footer.style.d.ts +5 -0
  50. package/lib/components/tile/tile.component.d.ts +29 -0
  51. package/lib/components/tile/tile.component.js +329 -46
  52. package/lib/components/tile/tile.config.d.ts +2 -0
  53. package/lib/components/tile/tile.style.d.ts +12 -0
  54. package/lib/components/tile/tile.style.js +13 -22
  55. package/lib/hooks/useMediaQuery/useMediaQuery.js +2 -2
  56. package/lib/locales/en-gb.js +3 -0
  57. package/lib/locales/locale.d.ts +3 -0
  58. package/lib/locales/pl-pl.js +3 -0
  59. package/package.json +6 -16
  60. package/esm/components/pod/pod.d.ts +0 -55
  61. package/esm/components/tile/tile-footer/tile-footer.d.ts +0 -13
  62. package/esm/components/tile/tile.d.ts +0 -46
  63. package/lib/components/pod/pod.d.ts +0 -55
  64. package/lib/components/tile/tile-footer/tile-footer.d.ts +0 -13
  65. package/lib/components/tile/tile.d.ts +0 -46
@@ -9,20 +9,16 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
12
+ var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
13
13
 
14
- var _utils = require("../../style/utils");
14
+ var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
15
15
 
16
- var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
17
-
18
- var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
19
-
20
- var _i18nContext = _interopRequireDefault(require("../../__internal__/i18n-context"));
21
-
22
- var _podStyle = require("./pod.style.js");
16
+ var _pod = require("./pod.style");
23
17
 
24
18
  var _icon = _interopRequireDefault(require("../icon"));
25
19
 
20
+ var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
21
+
26
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
23
 
28
24
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
@@ -31,8 +27,12 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
31
27
 
32
28
  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); }
33
29
 
34
- const marginPropTypes = (0, _utils.filterStyledSystemMarginProps)(_propTypes2.default.space);
35
- const Pod = /*#__PURE__*/(0, _react.forwardRef)(({
30
+ let deprecationOnEditStringWarnTriggered = false;
31
+ let deprecationOnEditObjectWarnTriggered = false;
32
+
33
+ const Pod = /*#__PURE__*/_react.default.forwardRef(({
34
+ "data-element": dataElement,
35
+ "data-role": dataRole,
36
36
  alignTitle = "left",
37
37
  border = true,
38
38
  children,
@@ -53,170 +53,57 @@ const Pod = /*#__PURE__*/(0, _react.forwardRef)(({
53
53
  variant = "primary",
54
54
  ...rest
55
55
  }, ref) => {
56
+ if (!deprecationOnEditStringWarnTriggered && typeof onEdit === "string") {
57
+ deprecationOnEditStringWarnTriggered = true;
58
+
59
+ _logger.default.deprecate("Support for passing strings to the `onEdit` prop of the `Pod` component is now deprecated. Please only pass event handlers to `onEdit`.");
60
+ }
61
+
62
+ if (!deprecationOnEditObjectWarnTriggered && typeof onEdit === "object") {
63
+ deprecationOnEditObjectWarnTriggered = true;
64
+
65
+ _logger.default.deprecate("Support for passing objects to the `onEdit` prop of the `Pod` component is now deprecated. Please only pass event handlers to `onEdit`.");
66
+ }
67
+
56
68
  const [isEditFocused, setEditFocused] = (0, _react.useState)(false);
57
69
  const [isEditHovered, setEditHovered] = (0, _react.useState)(false);
58
70
  const [isDeleteFocused, setDeleteFocused] = (0, _react.useState)(false);
59
71
  const [isDeleteHovered, setDeleteHovered] = (0, _react.useState)(false);
60
72
  const [isUndoFocused, setUndoFocused] = (0, _react.useState)(false);
61
73
  const [isUndoHovered, setUndoHovered] = (0, _react.useState)(false);
62
- let podHeight;
63
-
64
- if (height && typeof height === "number") {
65
- podHeight = `${height}px`;
66
- } else if (height) {
67
- podHeight = height;
68
- }
69
-
70
- const shouldContentHaveEditEvents = (0, _react.useCallback)(() => {
71
- return (triggerEditOnContent || displayEditButtonOnHover) && onEdit;
72
- }, [displayEditButtonOnHover, onEdit, triggerEditOnContent]);
74
+ const l = (0, _useLocale.default)();
75
+ const shouldContentHaveEditEvents = (0, _react.useMemo)(() => !!(onEdit && (triggerEditOnContent || displayEditButtonOnHover)), [displayEditButtonOnHover, onEdit, triggerEditOnContent]);
76
+ const hasButtons = (0, _react.useMemo)(() => !!(onEdit || onDelete || onUndo), [onEdit, onDelete, onUndo]);
73
77
 
74
78
  const processPodAction = action => ev => {
75
- if (_events.default.isEnterKey(ev) || !_events.default.isEventType(ev, "keydown")) {
76
- ev.preventDefault();
77
- action(ev);
78
- }
79
+ if (_events.default.isKeyboardEvent(ev) && _events.default.isEventType(ev, "keydown") && !_events.default.isEnterKey(ev)) return;
80
+ ev.preventDefault();
81
+ action(ev);
79
82
  };
80
83
 
81
- function editEvents() {
82
- const editProps = {
83
- onMouseEnter: () => setEditHovered(true),
84
- onMouseLeave: () => setEditHovered(false),
85
- onFocus: () => setEditFocused(true),
86
- onBlur: () => setEditFocused(false)
87
- };
88
-
89
- if (typeof onEdit === "function") {
90
- editProps.onClick = processPodAction(onEdit);
91
- editProps.onKeyDown = processPodAction(onEdit);
92
- }
93
-
94
- return editProps;
95
- }
96
-
97
- function podHeader() {
98
- if (!title) {
99
- return null;
100
- }
101
-
102
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledHeader, {
103
- alignTitle: alignTitle,
104
- internalEditButton: internalEditButton,
105
- size: size
106
- }, /*#__PURE__*/_react.default.createElement(_podStyle.StyledTitle, {
107
- "data-element": "title"
108
- }, title), subtitle && /*#__PURE__*/_react.default.createElement(_podStyle.StyledSubtitle, {
109
- "data-element": "subtitle"
110
- }, subtitle));
111
- }
112
-
113
- function renderFooter() {
114
- if (!footer) {
115
- return null;
116
- }
117
-
118
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledFooter, {
119
- "data-element": "footer",
120
- size: size,
121
- variant: variant,
122
- softDelete: softDelete
123
- }, footer);
124
- }
125
-
126
- function actionButtons() {
127
- if (softDelete && onUndo) {
128
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledActionsContainer, {
129
- internalEditButton: internalEditButton
130
- }, undo());
131
- }
132
-
133
- if (!softDelete && (onDelete || onEdit)) {
134
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledActionsContainer, {
135
- internalEditButton: internalEditButton
136
- }, onEdit && edit(), onDelete && renderDelete());
137
- }
138
-
139
- return null;
140
- }
141
-
142
- function renderDelete() {
143
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledDeleteButton, {
144
- onMouseEnter: () => setDeleteHovered(true),
145
- onMouseLeave: () => setDeleteHovered(false),
146
- onFocus: () => setDeleteFocused(true),
147
- onBlur: () => setDeleteFocused(false),
148
- "data-element": "delete",
149
- internalEditButton: internalEditButton,
150
- displayOnlyOnHover: displayEditButtonOnHover,
151
- isFocused: isDeleteFocused,
152
- isHovered: isDeleteHovered,
153
- noBorder: !border,
154
- size: size,
155
- variant: variant,
156
- onKeyDown: processPodAction(onDelete),
157
- onAction: processPodAction(onDelete)
158
- }, /*#__PURE__*/_react.default.createElement(_icon.default, {
159
- type: "delete"
160
- }));
161
- }
162
-
163
- function edit() {
164
- return /*#__PURE__*/_react.default.createElement(_i18nContext.default.Consumer, null, l => /*#__PURE__*/_react.default.createElement("div", _extends({}, editEvents(), {
165
- "data-element": "edit-container"
166
- }), /*#__PURE__*/_react.default.createElement(_podStyle.StyledEditAction, _extends({
167
- contentTriggersEdit: triggerEditOnContent,
168
- "data-element": "edit",
169
- displayOnlyOnHover: displayEditButtonOnHover,
170
- icon: "edit",
171
- internalEditButton: internalEditButton,
172
- isFocused: isEditFocused,
173
- isHovered: isEditHovered,
174
- noBorder: !border,
175
- size: size,
176
- variant: variant
177
- }, linkProps()), l.actions.edit())));
178
- }
179
-
180
- function undo() {
181
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledUndoButton, {
182
- onMouseEnter: () => setUndoHovered(true),
183
- onMouseLeave: () => setUndoHovered(false),
184
- onFocus: () => setUndoFocused(true),
185
- onBlur: () => setUndoFocused(false),
186
- "data-element": "undo-container",
187
- internalEditButton: internalEditButton,
188
- isFocused: isUndoFocused,
189
- isHovered: isUndoHovered,
190
- noBorder: !border,
191
- size: size,
192
- variant: variant,
193
- onKeyDown: processPodAction(onUndo),
194
- onAction: processPodAction(onUndo)
195
- }, /*#__PURE__*/_react.default.createElement(_icon.default, {
196
- type: "undo"
197
- }));
198
- }
199
-
200
- function linkProps() {
201
- if (typeof onEdit === "string") {
202
- return {
203
- to: onEdit
204
- };
205
- }
206
-
207
- return onEdit;
208
- }
209
-
210
- return /*#__PURE__*/_react.default.createElement(_podStyle.StyledPod, _extends({}, rest, {
84
+ const editEvents = {
85
+ onMouseEnter: () => setEditHovered(true),
86
+ onMouseLeave: () => setEditHovered(false),
87
+ onFocus: () => setEditFocused(true),
88
+ onBlur: () => setEditFocused(false),
89
+ ...(typeof onEdit === "function" && {
90
+ onClick: processPodAction(onEdit),
91
+ onKeyDown: processPodAction(onEdit)
92
+ })
93
+ };
94
+ return /*#__PURE__*/_react.default.createElement(_pod.StyledPod, _extends({
95
+ alignTitle: alignTitle,
211
96
  className: className,
212
- internalEditButton: internalEditButton
213
- }, (0, _tags.default)("pod", rest), {
214
- height: podHeight,
215
- ref: ref
216
- }), /*#__PURE__*/_react.default.createElement(_podStyle.StyledBlock, _extends({
97
+ internalEditButton: internalEditButton,
98
+ height: typeof height === "number" ? `${height}px` : height,
99
+ ref: ref,
100
+ "data-component": "pod",
101
+ "data-element": dataElement,
102
+ "data-role": dataRole
103
+ }, rest), /*#__PURE__*/_react.default.createElement(_pod.StyledBlock, _extends({
217
104
  "data-element": "block",
218
- contentTriggersEdit: shouldContentHaveEditEvents(),
219
- hasButtons: onEdit || onDelete || onUndo,
105
+ contentTriggersEdit: shouldContentHaveEditEvents,
106
+ hasButtons: hasButtons,
220
107
  fullWidth: editContentFullWidth,
221
108
  internalEditButton: internalEditButton,
222
109
  isFocused: isEditFocused || isDeleteFocused,
@@ -224,106 +111,252 @@ const Pod = /*#__PURE__*/(0, _react.forwardRef)(({
224
111
  noBorder: !border,
225
112
  variant: variant,
226
113
  softDelete: softDelete
227
- }, shouldContentHaveEditEvents() ? { ...editEvents(),
228
- tabIndex: "0"
229
- } : {}), /*#__PURE__*/_react.default.createElement(_podStyle.StyledContent, {
114
+ }, shouldContentHaveEditEvents && { ...editEvents,
115
+ tabIndex: 0
116
+ }), /*#__PURE__*/_react.default.createElement(_pod.StyledContent, {
230
117
  "data-element": "content",
231
118
  size: size
232
- }, podHeader(), /*#__PURE__*/_react.default.createElement("div", null, children)), renderFooter()), actionButtons());
119
+ }, title && /*#__PURE__*/_react.default.createElement(_pod.StyledHeader, {
120
+ alignTitle: alignTitle,
121
+ internalEditButton: internalEditButton,
122
+ size: size
123
+ }, /*#__PURE__*/_react.default.createElement(_pod.StyledTitle, {
124
+ "data-element": "title"
125
+ }, title), subtitle && /*#__PURE__*/_react.default.createElement(_pod.StyledSubtitle, {
126
+ "data-element": "subtitle"
127
+ }, subtitle)), children), footer && /*#__PURE__*/_react.default.createElement(_pod.StyledFooter, {
128
+ "data-element": "footer",
129
+ size: size,
130
+ variant: variant,
131
+ softDelete: softDelete
132
+ }, footer)), hasButtons && /*#__PURE__*/_react.default.createElement(_pod.StyledActionsContainer, {
133
+ "data-element": "action-button-container",
134
+ internalEditButton: internalEditButton
135
+ }, softDelete && onUndo && /*#__PURE__*/_react.default.createElement(_pod.StyledUndoButton, {
136
+ "aria-label": l.pod.undo(),
137
+ onMouseEnter: () => setUndoHovered(true),
138
+ onMouseLeave: () => setUndoHovered(false),
139
+ onFocus: () => setUndoFocused(true),
140
+ onBlur: () => setUndoFocused(false),
141
+ "data-element": "undo",
142
+ internalEditButton: internalEditButton,
143
+ isFocused: isUndoFocused,
144
+ isHovered: isUndoHovered,
145
+ noBorder: !border,
146
+ size: size,
147
+ variant: variant,
148
+ onAction: processPodAction(onUndo)
149
+ }, /*#__PURE__*/_react.default.createElement(_icon.default, {
150
+ type: "undo"
151
+ })), !softDelete && onEdit && /*#__PURE__*/_react.default.createElement(_pod.StyledEditAction, _extends({}, editEvents, {
152
+ "aria-label": l.actions.edit(),
153
+ "data-element": "edit",
154
+ displayOnlyOnHover: displayEditButtonOnHover,
155
+ internalEditButton: internalEditButton,
156
+ isFocused: isEditFocused,
157
+ isHovered: isEditHovered,
158
+ noBorder: !border,
159
+ size: size,
160
+ variant: variant
161
+ }, typeof onEdit === "string" ? {
162
+ href: onEdit
163
+ } : onEdit), /*#__PURE__*/_react.default.createElement(_icon.default, {
164
+ type: "edit"
165
+ })), !softDelete && onDelete && /*#__PURE__*/_react.default.createElement(_pod.StyledDeleteButton, {
166
+ "aria-label": l.actions.delete(),
167
+ "data-element": "delete",
168
+ onMouseEnter: () => setDeleteHovered(true),
169
+ onMouseLeave: () => setDeleteHovered(false),
170
+ onFocus: () => setDeleteFocused(true),
171
+ onBlur: () => setDeleteFocused(false),
172
+ internalEditButton: internalEditButton,
173
+ isFocused: isDeleteFocused,
174
+ isHovered: isDeleteHovered,
175
+ noBorder: !border,
176
+ size: size,
177
+ variant: variant,
178
+ onAction: processPodAction(onDelete)
179
+ }, /*#__PURE__*/_react.default.createElement(_icon.default, {
180
+ type: "delete"
181
+ }))));
233
182
  });
234
- Pod.propTypes = { ...marginPropTypes,
235
-
236
- /**
237
- * Enables/disables the border around the pod.
238
- */
239
- border: _propTypes.default.bool,
240
-
241
- /**
242
- * Children elements
243
- */
244
- children: _propTypes.default.node,
245
-
246
- /**
247
- * Custom className
248
- */
249
- className: _propTypes.default.string,
250
-
251
- /**
252
- * Determines the size of the pod.
253
- */
254
- size: _propTypes.default.oneOf(["none", "extra-small", "small", "medium", "large", "extra-large"]),
255
-
256
- /**
257
- * Prop to apply a theme to the Pod.
258
- */
259
- variant: _propTypes.default.oneOf(["primary", "secondary", "tertiary", "tile", "transparent"]),
260
-
261
- /**
262
- * Title for the pod h4 element
263
- * always shown
264
- */
265
- title: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]),
266
-
267
- /**
268
- * Optional subtitle for the pod
269
- */
270
- subtitle: _propTypes.default.string,
271
-
272
- /**
273
- * Aligns the title to left, right or center
274
- */
275
- alignTitle: _propTypes.default.oneOf(["left", "center", "right"]),
276
-
277
- /**
278
- * A component to render as a Pod footer.
279
- */
280
- footer: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]),
281
-
282
- /**
283
- * Supplies an edit action to the pod.
284
- */
285
- onEdit: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
286
-
287
- /**
288
- * Supplies a delete action to the pod.
289
- */
290
- onDelete: _propTypes.default.func,
291
-
292
- /**
293
- * Supplies an undo action to the pod in soft delete state.
294
- */
295
- onUndo: _propTypes.default.func,
296
-
297
- /**
298
- * Sets soft delete state.
299
- */
300
- softDelete: _propTypes.default.bool,
301
-
302
- /**
303
- * Determines if the editable pod content should be full width.
304
- */
305
- editContentFullWidth: _propTypes.default.bool,
306
-
307
- /**
308
- * Determines if the edit button should be hidden until the user
309
- * hovers over the content.
310
- */
311
- displayEditButtonOnHover: _propTypes.default.bool,
312
-
313
- /**
314
- * Determines if clicking the pod content calls the onEdit action
315
- */
316
- triggerEditOnContent: _propTypes.default.bool,
317
-
318
- /**
319
- * Resets edit button styles to an older version
320
- */
321
- internalEditButton: _propTypes.default.bool,
322
183
 
323
- /**
324
- * Sets Pod height, number is changed to pixels and string is passed as raw css value
325
- */
326
- height: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])
184
+ Pod.propTypes = {
185
+ "alignTitle": _propTypes.default.oneOf(["center", "left", "right"]),
186
+ "border": _propTypes.default.bool,
187
+ "children": _propTypes.default.node,
188
+ "className": _propTypes.default.string,
189
+ "data-element": _propTypes.default.string,
190
+ "data-role": _propTypes.default.string,
191
+ "displayEditButtonOnHover": _propTypes.default.bool,
192
+ "editContentFullWidth": _propTypes.default.bool,
193
+ "footer": _propTypes.default.node,
194
+ "height": _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
195
+ "internalEditButton": _propTypes.default.bool,
196
+ "m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
197
+ "__@toStringTag": _propTypes.default.string.isRequired,
198
+ "description": _propTypes.default.string,
199
+ "toString": _propTypes.default.func.isRequired,
200
+ "valueOf": _propTypes.default.func.isRequired
201
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
202
+ "__@toStringTag": _propTypes.default.string.isRequired,
203
+ "description": _propTypes.default.string,
204
+ "toString": _propTypes.default.func.isRequired,
205
+ "valueOf": _propTypes.default.func.isRequired
206
+ }), _propTypes.default.string]),
207
+ "margin": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
208
+ "__@toStringTag": _propTypes.default.string.isRequired,
209
+ "description": _propTypes.default.string,
210
+ "toString": _propTypes.default.func.isRequired,
211
+ "valueOf": _propTypes.default.func.isRequired
212
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
213
+ "__@toStringTag": _propTypes.default.string.isRequired,
214
+ "description": _propTypes.default.string,
215
+ "toString": _propTypes.default.func.isRequired,
216
+ "valueOf": _propTypes.default.func.isRequired
217
+ }), _propTypes.default.string]),
218
+ "marginBottom": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
219
+ "__@toStringTag": _propTypes.default.string.isRequired,
220
+ "description": _propTypes.default.string,
221
+ "toString": _propTypes.default.func.isRequired,
222
+ "valueOf": _propTypes.default.func.isRequired
223
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
224
+ "__@toStringTag": _propTypes.default.string.isRequired,
225
+ "description": _propTypes.default.string,
226
+ "toString": _propTypes.default.func.isRequired,
227
+ "valueOf": _propTypes.default.func.isRequired
228
+ }), _propTypes.default.string]),
229
+ "marginLeft": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
230
+ "__@toStringTag": _propTypes.default.string.isRequired,
231
+ "description": _propTypes.default.string,
232
+ "toString": _propTypes.default.func.isRequired,
233
+ "valueOf": _propTypes.default.func.isRequired
234
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
235
+ "__@toStringTag": _propTypes.default.string.isRequired,
236
+ "description": _propTypes.default.string,
237
+ "toString": _propTypes.default.func.isRequired,
238
+ "valueOf": _propTypes.default.func.isRequired
239
+ }), _propTypes.default.string]),
240
+ "marginRight": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
241
+ "__@toStringTag": _propTypes.default.string.isRequired,
242
+ "description": _propTypes.default.string,
243
+ "toString": _propTypes.default.func.isRequired,
244
+ "valueOf": _propTypes.default.func.isRequired
245
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
246
+ "__@toStringTag": _propTypes.default.string.isRequired,
247
+ "description": _propTypes.default.string,
248
+ "toString": _propTypes.default.func.isRequired,
249
+ "valueOf": _propTypes.default.func.isRequired
250
+ }), _propTypes.default.string]),
251
+ "marginTop": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
252
+ "__@toStringTag": _propTypes.default.string.isRequired,
253
+ "description": _propTypes.default.string,
254
+ "toString": _propTypes.default.func.isRequired,
255
+ "valueOf": _propTypes.default.func.isRequired
256
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
257
+ "__@toStringTag": _propTypes.default.string.isRequired,
258
+ "description": _propTypes.default.string,
259
+ "toString": _propTypes.default.func.isRequired,
260
+ "valueOf": _propTypes.default.func.isRequired
261
+ }), _propTypes.default.string]),
262
+ "marginX": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
263
+ "__@toStringTag": _propTypes.default.string.isRequired,
264
+ "description": _propTypes.default.string,
265
+ "toString": _propTypes.default.func.isRequired,
266
+ "valueOf": _propTypes.default.func.isRequired
267
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
268
+ "__@toStringTag": _propTypes.default.string.isRequired,
269
+ "description": _propTypes.default.string,
270
+ "toString": _propTypes.default.func.isRequired,
271
+ "valueOf": _propTypes.default.func.isRequired
272
+ }), _propTypes.default.string]),
273
+ "marginY": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
274
+ "__@toStringTag": _propTypes.default.string.isRequired,
275
+ "description": _propTypes.default.string,
276
+ "toString": _propTypes.default.func.isRequired,
277
+ "valueOf": _propTypes.default.func.isRequired
278
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
279
+ "__@toStringTag": _propTypes.default.string.isRequired,
280
+ "description": _propTypes.default.string,
281
+ "toString": _propTypes.default.func.isRequired,
282
+ "valueOf": _propTypes.default.func.isRequired
283
+ }), _propTypes.default.string]),
284
+ "mb": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
285
+ "__@toStringTag": _propTypes.default.string.isRequired,
286
+ "description": _propTypes.default.string,
287
+ "toString": _propTypes.default.func.isRequired,
288
+ "valueOf": _propTypes.default.func.isRequired
289
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
290
+ "__@toStringTag": _propTypes.default.string.isRequired,
291
+ "description": _propTypes.default.string,
292
+ "toString": _propTypes.default.func.isRequired,
293
+ "valueOf": _propTypes.default.func.isRequired
294
+ }), _propTypes.default.string]),
295
+ "ml": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
296
+ "__@toStringTag": _propTypes.default.string.isRequired,
297
+ "description": _propTypes.default.string,
298
+ "toString": _propTypes.default.func.isRequired,
299
+ "valueOf": _propTypes.default.func.isRequired
300
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
301
+ "__@toStringTag": _propTypes.default.string.isRequired,
302
+ "description": _propTypes.default.string,
303
+ "toString": _propTypes.default.func.isRequired,
304
+ "valueOf": _propTypes.default.func.isRequired
305
+ }), _propTypes.default.string]),
306
+ "mr": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
307
+ "__@toStringTag": _propTypes.default.string.isRequired,
308
+ "description": _propTypes.default.string,
309
+ "toString": _propTypes.default.func.isRequired,
310
+ "valueOf": _propTypes.default.func.isRequired
311
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
312
+ "__@toStringTag": _propTypes.default.string.isRequired,
313
+ "description": _propTypes.default.string,
314
+ "toString": _propTypes.default.func.isRequired,
315
+ "valueOf": _propTypes.default.func.isRequired
316
+ }), _propTypes.default.string]),
317
+ "mt": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
318
+ "__@toStringTag": _propTypes.default.string.isRequired,
319
+ "description": _propTypes.default.string,
320
+ "toString": _propTypes.default.func.isRequired,
321
+ "valueOf": _propTypes.default.func.isRequired
322
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
323
+ "__@toStringTag": _propTypes.default.string.isRequired,
324
+ "description": _propTypes.default.string,
325
+ "toString": _propTypes.default.func.isRequired,
326
+ "valueOf": _propTypes.default.func.isRequired
327
+ }), _propTypes.default.string]),
328
+ "mx": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
329
+ "__@toStringTag": _propTypes.default.string.isRequired,
330
+ "description": _propTypes.default.string,
331
+ "toString": _propTypes.default.func.isRequired,
332
+ "valueOf": _propTypes.default.func.isRequired
333
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
334
+ "__@toStringTag": _propTypes.default.string.isRequired,
335
+ "description": _propTypes.default.string,
336
+ "toString": _propTypes.default.func.isRequired,
337
+ "valueOf": _propTypes.default.func.isRequired
338
+ }), _propTypes.default.string]),
339
+ "my": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
340
+ "__@toStringTag": _propTypes.default.string.isRequired,
341
+ "description": _propTypes.default.string,
342
+ "toString": _propTypes.default.func.isRequired,
343
+ "valueOf": _propTypes.default.func.isRequired
344
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
345
+ "__@toStringTag": _propTypes.default.string.isRequired,
346
+ "description": _propTypes.default.string,
347
+ "toString": _propTypes.default.func.isRequired,
348
+ "valueOf": _propTypes.default.func.isRequired
349
+ }), _propTypes.default.string]),
350
+ "onDelete": _propTypes.default.func,
351
+ "onEdit": _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.string]),
352
+ "onUndo": _propTypes.default.func,
353
+ "size": _propTypes.default.oneOf(["extra-large", "extra-small", "large", "medium", "small"]),
354
+ "softDelete": _propTypes.default.bool,
355
+ "subtitle": _propTypes.default.string,
356
+ "title": _propTypes.default.node,
357
+ "triggerEditOnContent": _propTypes.default.bool,
358
+ "variant": _propTypes.default.oneOf(["primary", "secondary", "tertiary", "tile", "transparent"])
327
359
  };
360
+ Pod.displayName = "Pod";
328
361
  var _default = Pod;
329
362
  exports.default = _default;
@@ -0,0 +1,6 @@
1
+ export declare const POD_SIZES: readonly ["extra-small", "small", "medium", "large", "extra-large"];
2
+ export declare const POD_ALIGNMENTS: readonly ["left", "center", "right"];
3
+ export declare const POD_VARIANTS: readonly ["primary", "secondary", "tertiary", "tile", "transparent"];
4
+ export declare type PodSize = typeof POD_SIZES[number];
5
+ export declare type PodAlignment = typeof POD_ALIGNMENTS[number];
6
+ export declare type PodVariant = typeof POD_VARIANTS[number];
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.POD_THEMES = exports.POD_ALIGNMENTS = exports.POD_SIZES = void 0;
6
+ exports.POD_VARIANTS = exports.POD_ALIGNMENTS = exports.POD_SIZES = void 0;
7
7
  const POD_SIZES = ["extra-small", "small", "medium", "large", "extra-large"];
8
8
  exports.POD_SIZES = POD_SIZES;
9
- const POD_ALIGNMENTS = ["center", "left", "right"];
9
+ const POD_ALIGNMENTS = ["left", "center", "right"];
10
10
  exports.POD_ALIGNMENTS = POD_ALIGNMENTS;
11
- const POD_THEMES = ["primary", "secondary", "tertiary", "tile", "transparent"];
12
- exports.POD_THEMES = POD_THEMES;
11
+ const POD_VARIANTS = ["primary", "secondary", "tertiary", "tile", "transparent"];
12
+ exports.POD_VARIANTS = POD_VARIANTS;
@@ -0,0 +1,44 @@
1
+ /// <reference types="react" />
2
+ import { MarginProps } from "styled-system";
3
+ import { PodProps } from "./pod.component";
4
+ import { PodSize, PodVariant } from "./pod.config";
5
+ declare const StyledPod: import("styled-components").StyledComponent<"div", any, MarginProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> & Pick<PodProps, "height" | "alignTitle" | "internalEditButton">, never>;
6
+ interface StyledBlockProps extends Pick<PodProps, "softDelete" | "internalEditButton"> {
7
+ variant: PodVariant;
8
+ noBorder: boolean;
9
+ hasButtons: boolean;
10
+ contentTriggersEdit?: boolean;
11
+ fullWidth?: boolean;
12
+ isHovered?: boolean;
13
+ isFocused?: boolean;
14
+ }
15
+ declare const StyledBlock: import("styled-components").StyledComponent<"div", any, StyledBlockProps, never>;
16
+ declare const StyledContent: import("styled-components").StyledComponent<"div", any, {
17
+ size: PodSize;
18
+ }, never>;
19
+ interface StyledFooterProps extends Pick<PodProps, "softDelete"> {
20
+ variant: PodVariant;
21
+ size: PodSize;
22
+ }
23
+ declare const StyledFooter: import("styled-components").StyledComponent<"div", any, StyledFooterProps, never>;
24
+ declare const StyledActionsContainer: import("styled-components").StyledComponent<"div", any, Pick<PodProps, "internalEditButton">, never>;
25
+ interface CommonPodButtonProps extends Pick<PodProps, "internalEditButton"> {
26
+ isHovered?: boolean;
27
+ isFocused?: boolean;
28
+ size: PodSize;
29
+ noBorder: boolean;
30
+ variant: PodVariant;
31
+ }
32
+ interface StyledEditActionProps extends CommonPodButtonProps {
33
+ displayOnlyOnHover?: boolean;
34
+ }
35
+ declare const StyledEditAction: import("styled-components").StyledComponent<"a", any, StyledEditActionProps, never>;
36
+ declare const StyledDeleteButton: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon-button").IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>, any, CommonPodButtonProps, never>;
37
+ declare const StyledUndoButton: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon-button").IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>, any, CommonPodButtonProps, never>;
38
+ interface StyledHeaderProps extends Pick<PodProps, "alignTitle" | "internalEditButton"> {
39
+ size: PodSize;
40
+ }
41
+ declare const StyledHeader: import("styled-components").StyledComponent<"div", any, StyledHeaderProps, never>;
42
+ declare const StyledSubtitle: import("styled-components").StyledComponent<"h5", any, {}, never>;
43
+ declare const StyledTitle: import("styled-components").StyledComponent<"h4", any, {}, never>;
44
+ export { StyledBlock, StyledContent, StyledEditAction, StyledActionsContainer, StyledDeleteButton, StyledUndoButton, StyledFooter, StyledPod, StyledHeader, StyledSubtitle, StyledTitle, };