@pingux/astro 2.54.0-alpha.0 → 2.54.0-alpha.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 (46) hide show
  1. package/lib/cjs/components/Breadcrumbs/Breadcrumbs.js +1 -1
  2. package/lib/cjs/components/Breadcrumbs/Breadcrumbs.test.js +2 -3
  3. package/lib/cjs/components/HelpHint/HelpHint.stories.js +7 -7
  4. package/lib/cjs/components/IconButton/IconButton.styles.d.ts +72 -1
  5. package/lib/cjs/components/Messages/Message.d.ts +9 -0
  6. package/lib/cjs/components/Messages/Message.js +16 -46
  7. package/lib/cjs/components/Messages/Message.styles.d.ts +151 -0
  8. package/lib/cjs/components/Messages/Messages.d.ts +4 -0
  9. package/lib/cjs/components/Messages/Messages.js +2 -15
  10. package/lib/cjs/components/Messages/Messages.stories.d.ts +128 -0
  11. package/lib/cjs/components/Messages/Messages.stories.js +96 -16
  12. package/lib/cjs/components/Messages/Messages.test.d.ts +1 -0
  13. package/lib/cjs/components/Messages/Messages.test.js +9 -9
  14. package/lib/cjs/components/Messages/index.d.ts +3 -0
  15. package/lib/cjs/components/Messages/index.js +2 -3
  16. package/lib/cjs/components/Messages/utils/index.d.ts +2 -0
  17. package/lib/cjs/components/Messages/utils/messagesReducer.d.ts +107 -0
  18. package/lib/cjs/components/Messages/utils/messagesReducer.js +29 -15
  19. package/lib/cjs/components/Messages/utils/multiMessagesReducer.d.ts +83 -0
  20. package/lib/cjs/components/Messages/utils/multiMessagesReducer.js +20 -14
  21. package/lib/cjs/components/Messages/utils/tests/messagesReducer.test.d.ts +1 -0
  22. package/lib/cjs/components/Messages/utils/tests/messagesReducer.test.js +4 -3
  23. package/lib/cjs/components/Messages/utils/tests/multiMessagesReducer.test.d.ts +1 -0
  24. package/lib/cjs/components/Messages/utils/tests/multiMessagesReducer.test.js +3 -2
  25. package/lib/cjs/types/index.d.ts +1 -0
  26. package/lib/cjs/types/index.js +25 -14
  27. package/lib/cjs/types/item.d.ts +2 -0
  28. package/lib/cjs/types/messages.d.ts +43 -0
  29. package/lib/cjs/types/messages.js +6 -0
  30. package/lib/components/Breadcrumbs/Breadcrumbs.js +1 -1
  31. package/lib/components/Breadcrumbs/Breadcrumbs.test.js +2 -3
  32. package/lib/components/HelpHint/HelpHint.stories.js +7 -7
  33. package/lib/components/Messages/Message.js +14 -46
  34. package/lib/components/Messages/Messages.js +2 -15
  35. package/lib/components/Messages/Messages.stories.js +95 -15
  36. package/lib/components/Messages/Messages.test.js +9 -9
  37. package/lib/components/Messages/index.js +1 -1
  38. package/lib/components/Messages/utils/messagesReducer.js +27 -13
  39. package/lib/components/Messages/utils/multiMessagesReducer.js +20 -10
  40. package/lib/components/Messages/utils/tests/messagesReducer.test.js +4 -3
  41. package/lib/components/Messages/utils/tests/multiMessagesReducer.test.js +9 -8
  42. package/lib/types/index.js +1 -0
  43. package/lib/types/messages.js +1 -0
  44. package/package.json +1 -1
  45. package/lib/cjs/components/Messages/Messages.reducer.js +0 -51
  46. package/lib/components/Messages/Messages.reducer.js +0 -41
@@ -52,7 +52,7 @@ var getComponent = function getComponent() {
52
52
  return renderFn((0, _react2.jsx)(TestComponent, props));
53
53
  };
54
54
  test('should create an empty state', function () {
55
- var state = (0, _messagesReducer["default"])();
55
+ var state = (0, _messagesReducer["default"])([], {});
56
56
  expect(state.length).toBe(0);
57
57
  });
58
58
  test('should add a new message', function () {
@@ -76,11 +76,12 @@ test('should clear all messages', function () {
76
76
  expect(state.length).toBe(0);
77
77
  });
78
78
  test('should show and hide a message', function () {
79
+ var _screen$queryByTestId, _screen$queryByTestId2;
79
80
  jest.useFakeTimers();
80
81
  getComponent();
81
- expect(_testWrapper.screen.queryByTestId(testId).children.length).toBe(1);
82
+ expect((_screen$queryByTestId = _testWrapper.screen.queryByTestId(testId)) === null || _screen$queryByTestId === void 0 ? void 0 : _screen$queryByTestId.children.length).toBe(1);
82
83
  (0, _testUtils.act)(function () {
83
84
  jest.runAllTimers();
84
85
  });
85
- expect(_testWrapper.screen.queryByTestId(testId).children.length).toBe(0);
86
+ expect((_screen$queryByTestId2 = _testWrapper.screen.queryByTestId(testId)) === null || _screen$queryByTestId2 === void 0 ? void 0 : _screen$queryByTestId2.children.length).toBe(0);
86
87
  });
@@ -83,11 +83,12 @@ test('should clear all messages', function () {
83
83
  expect(state['container-one'].length).toBe(0);
84
84
  });
85
85
  test('should show and hide a message', function () {
86
+ var _screen$queryByTestId, _screen$queryByTestId2;
86
87
  jest.useFakeTimers();
87
88
  getComponent();
88
- expect(_testWrapper.screen.queryByTestId(testId).children.length).toBe(1);
89
+ expect((_screen$queryByTestId = _testWrapper.screen.queryByTestId(testId)) === null || _screen$queryByTestId === void 0 ? void 0 : _screen$queryByTestId.children.length).toBe(1);
89
90
  (0, _testUtils.act)(function () {
90
91
  jest.runAllTimers();
91
92
  });
92
- expect(_testWrapper.screen.queryByTestId(testId).children.length).toBe(0);
93
+ expect((_screen$queryByTestId2 = _testWrapper.screen.queryByTestId(testId)) === null || _screen$queryByTestId2 === void 0 ? void 0 : _screen$queryByTestId2.children.length).toBe(0);
93
94
  });
@@ -22,6 +22,7 @@ export * from './listItem';
22
22
  export * from './loader';
23
23
  export * from './menu';
24
24
  export * from './menuItem';
25
+ export * from './messages';
25
26
  export * from './Modal';
26
27
  export * from './navBar';
27
28
  export * from './overlayPanel';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18, _context19, _context20, _context21, _context22, _context23, _context24, _context25, _context26, _context27, _context28, _context29, _context30, _context31, _context32, _context33, _context34, _context35, _context36, _context37;
3
+ var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18, _context19, _context20, _context21, _context22, _context23, _context24, _context25, _context26, _context27, _context28, _context29, _context30, _context31, _context32, _context33, _context34, _context35, _context36, _context37, _context38;
4
4
  var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
5
5
  var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
6
6
  var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
@@ -271,8 +271,19 @@ _forEachInstanceProperty(_context24 = _Object$keys(_menuItem)).call(_context24,
271
271
  }
272
272
  });
273
273
  });
274
+ var _messages = require("./messages");
275
+ _forEachInstanceProperty(_context25 = _Object$keys(_messages)).call(_context25, function (key) {
276
+ if (key === "default" || key === "__esModule") return;
277
+ if (key in exports && exports[key] === _messages[key]) return;
278
+ _Object$defineProperty(exports, key, {
279
+ enumerable: true,
280
+ get: function get() {
281
+ return _messages[key];
282
+ }
283
+ });
284
+ });
274
285
  var _Modal = require("./Modal");
275
- _forEachInstanceProperty(_context25 = _Object$keys(_Modal)).call(_context25, function (key) {
286
+ _forEachInstanceProperty(_context26 = _Object$keys(_Modal)).call(_context26, function (key) {
276
287
  if (key === "default" || key === "__esModule") return;
277
288
  if (key in exports && exports[key] === _Modal[key]) return;
278
289
  _Object$defineProperty(exports, key, {
@@ -283,7 +294,7 @@ _forEachInstanceProperty(_context25 = _Object$keys(_Modal)).call(_context25, fun
283
294
  });
284
295
  });
285
296
  var _navBar = require("./navBar");
286
- _forEachInstanceProperty(_context26 = _Object$keys(_navBar)).call(_context26, function (key) {
297
+ _forEachInstanceProperty(_context27 = _Object$keys(_navBar)).call(_context27, function (key) {
287
298
  if (key === "default" || key === "__esModule") return;
288
299
  if (key in exports && exports[key] === _navBar[key]) return;
289
300
  _Object$defineProperty(exports, key, {
@@ -294,7 +305,7 @@ _forEachInstanceProperty(_context26 = _Object$keys(_navBar)).call(_context26, fu
294
305
  });
295
306
  });
296
307
  var _overlayPanel = require("./overlayPanel");
297
- _forEachInstanceProperty(_context27 = _Object$keys(_overlayPanel)).call(_context27, function (key) {
308
+ _forEachInstanceProperty(_context28 = _Object$keys(_overlayPanel)).call(_context28, function (key) {
298
309
  if (key === "default" || key === "__esModule") return;
299
310
  if (key in exports && exports[key] === _overlayPanel[key]) return;
300
311
  _Object$defineProperty(exports, key, {
@@ -305,7 +316,7 @@ _forEachInstanceProperty(_context27 = _Object$keys(_overlayPanel)).call(_context
305
316
  });
306
317
  });
307
318
  var _popoverContainer = require("./popoverContainer");
308
- _forEachInstanceProperty(_context28 = _Object$keys(_popoverContainer)).call(_context28, function (key) {
319
+ _forEachInstanceProperty(_context29 = _Object$keys(_popoverContainer)).call(_context29, function (key) {
309
320
  if (key === "default" || key === "__esModule") return;
310
321
  if (key in exports && exports[key] === _popoverContainer[key]) return;
311
322
  _Object$defineProperty(exports, key, {
@@ -316,7 +327,7 @@ _forEachInstanceProperty(_context28 = _Object$keys(_popoverContainer)).call(_con
316
327
  });
317
328
  });
318
329
  var _popoverMenu = require("./popoverMenu");
319
- _forEachInstanceProperty(_context29 = _Object$keys(_popoverMenu)).call(_context29, function (key) {
330
+ _forEachInstanceProperty(_context30 = _Object$keys(_popoverMenu)).call(_context30, function (key) {
320
331
  if (key === "default" || key === "__esModule") return;
321
332
  if (key in exports && exports[key] === _popoverMenu[key]) return;
322
333
  _Object$defineProperty(exports, key, {
@@ -327,7 +338,7 @@ _forEachInstanceProperty(_context29 = _Object$keys(_popoverMenu)).call(_context2
327
338
  });
328
339
  });
329
340
  var _requirementsList = require("./requirementsList");
330
- _forEachInstanceProperty(_context30 = _Object$keys(_requirementsList)).call(_context30, function (key) {
341
+ _forEachInstanceProperty(_context31 = _Object$keys(_requirementsList)).call(_context31, function (key) {
331
342
  if (key === "default" || key === "__esModule") return;
332
343
  if (key in exports && exports[key] === _requirementsList[key]) return;
333
344
  _Object$defineProperty(exports, key, {
@@ -338,7 +349,7 @@ _forEachInstanceProperty(_context30 = _Object$keys(_requirementsList)).call(_con
338
349
  });
339
350
  });
340
351
  var _rockerButtonGroup = require("./rockerButtonGroup");
341
- _forEachInstanceProperty(_context31 = _Object$keys(_rockerButtonGroup)).call(_context31, function (key) {
352
+ _forEachInstanceProperty(_context32 = _Object$keys(_rockerButtonGroup)).call(_context32, function (key) {
342
353
  if (key === "default" || key === "__esModule") return;
343
354
  if (key in exports && exports[key] === _rockerButtonGroup[key]) return;
344
355
  _Object$defineProperty(exports, key, {
@@ -349,7 +360,7 @@ _forEachInstanceProperty(_context31 = _Object$keys(_rockerButtonGroup)).call(_co
349
360
  });
350
361
  });
351
362
  var _scrollBox = require("./scrollBox");
352
- _forEachInstanceProperty(_context32 = _Object$keys(_scrollBox)).call(_context32, function (key) {
363
+ _forEachInstanceProperty(_context33 = _Object$keys(_scrollBox)).call(_context33, function (key) {
353
364
  if (key === "default" || key === "__esModule") return;
354
365
  if (key in exports && exports[key] === _scrollBox[key]) return;
355
366
  _Object$defineProperty(exports, key, {
@@ -360,7 +371,7 @@ _forEachInstanceProperty(_context32 = _Object$keys(_scrollBox)).call(_context32,
360
371
  });
361
372
  });
362
373
  var _separator = require("./separator");
363
- _forEachInstanceProperty(_context33 = _Object$keys(_separator)).call(_context33, function (key) {
374
+ _forEachInstanceProperty(_context34 = _Object$keys(_separator)).call(_context34, function (key) {
364
375
  if (key === "default" || key === "__esModule") return;
365
376
  if (key in exports && exports[key] === _separator[key]) return;
366
377
  _Object$defineProperty(exports, key, {
@@ -371,7 +382,7 @@ _forEachInstanceProperty(_context33 = _Object$keys(_separator)).call(_context33,
371
382
  });
372
383
  });
373
384
  var _shared = require("./shared");
374
- _forEachInstanceProperty(_context34 = _Object$keys(_shared)).call(_context34, function (key) {
385
+ _forEachInstanceProperty(_context35 = _Object$keys(_shared)).call(_context35, function (key) {
375
386
  if (key === "default" || key === "__esModule") return;
376
387
  if (key in exports && exports[key] === _shared[key]) return;
377
388
  _Object$defineProperty(exports, key, {
@@ -382,7 +393,7 @@ _forEachInstanceProperty(_context34 = _Object$keys(_shared)).call(_context34, fu
382
393
  });
383
394
  });
384
395
  var _table = require("./table");
385
- _forEachInstanceProperty(_context35 = _Object$keys(_table)).call(_context35, function (key) {
396
+ _forEachInstanceProperty(_context36 = _Object$keys(_table)).call(_context36, function (key) {
386
397
  if (key === "default" || key === "__esModule") return;
387
398
  if (key in exports && exports[key] === _table[key]) return;
388
399
  _Object$defineProperty(exports, key, {
@@ -393,7 +404,7 @@ _forEachInstanceProperty(_context35 = _Object$keys(_table)).call(_context35, fun
393
404
  });
394
405
  });
395
406
  var _text = require("./text");
396
- _forEachInstanceProperty(_context36 = _Object$keys(_text)).call(_context36, function (key) {
407
+ _forEachInstanceProperty(_context37 = _Object$keys(_text)).call(_context37, function (key) {
397
408
  if (key === "default" || key === "__esModule") return;
398
409
  if (key in exports && exports[key] === _text[key]) return;
399
410
  _Object$defineProperty(exports, key, {
@@ -404,7 +415,7 @@ _forEachInstanceProperty(_context36 = _Object$keys(_text)).call(_context36, func
404
415
  });
405
416
  });
406
417
  var _tooltipTrigger = require("./tooltipTrigger");
407
- _forEachInstanceProperty(_context37 = _Object$keys(_tooltipTrigger)).call(_context37, function (key) {
418
+ _forEachInstanceProperty(_context38 = _Object$keys(_tooltipTrigger)).call(_context38, function (key) {
408
419
  if (key === "default" || key === "__esModule") return;
409
420
  if (key in exports && exports[key] === _tooltipTrigger[key]) return;
410
421
  _Object$defineProperty(exports, key, {
@@ -1,5 +1,6 @@
1
1
  import { ElementType, Key } from 'react';
2
2
  import type { ItemProps } from '@react-types/shared';
3
+ import { IconTypeExtended } from './icon';
3
4
  import { DOMAttributes, StyleProps } from './shared';
4
5
  export interface Status {
5
6
  status?: 'default' | 'error' | 'success' | 'warning';
@@ -31,6 +32,7 @@ declare module '@react-types/shared' {
31
32
  slots?: {
32
33
  postHeading: React.ReactNode;
33
34
  };
35
+ icon?: IconTypeExtended;
34
36
  /** isCurrent for the Breadcrumbs item. */
35
37
  isCurrent?: boolean;
36
38
  }
@@ -0,0 +1,43 @@
1
+ import { Key, ReactElement } from 'react';
2
+ import type { Collection, CollectionChildren, CollectionStateBase, Node } from '@react-types/shared';
3
+ import { ThemeUICSSObject } from 'theme-ui';
4
+ import { Status } from './item';
5
+ export interface MessageItemProps {
6
+ children?: React.ReactNode | string;
7
+ bg?: string;
8
+ color?: string;
9
+ icon?: React.ElementType;
10
+ isHidden?: boolean;
11
+ 'data-id'?: string;
12
+ status?: Status;
13
+ }
14
+ export interface MessageItem {
15
+ text?: string;
16
+ node?: React.ReactNode;
17
+ key?: Key;
18
+ props?: MessageItemProps;
19
+ status?: Status;
20
+ }
21
+ export interface CollectionOptions<T, C extends Collection<Node<T>>> extends Omit<CollectionStateBase<T, C>, 'children'> {
22
+ children?: ReactElement | ReactElement[] | ((item: T) => ReactElement);
23
+ }
24
+ export interface MessagesProps<T> {
25
+ children: CollectionChildren<T>;
26
+ items?: MessageItem[];
27
+ onClose?: (key: Key) => void;
28
+ sx?: ThemeUICSSObject;
29
+ }
30
+ export interface CloseButtonProps {
31
+ color?: string;
32
+ onPress?: () => void;
33
+ variant?: string;
34
+ className?: string;
35
+ }
36
+ export interface MessageProps {
37
+ className?: string;
38
+ item: {
39
+ key?: Key;
40
+ props?: MessageItemProps;
41
+ };
42
+ onClose?: (key: Key) => void;
43
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
@@ -26,7 +26,7 @@ var Breadcrumbs = /*#__PURE__*/forwardRef(function (props, ref) {
26
26
  var breadcrumbsRef = useLocalOrForwardRef(ref);
27
27
  usePropWarning(props, 'disabled', 'isDisabled');
28
28
  var createBreadcrumb = useCallback(function (child, idx) {
29
- var isCurrentItem = idx && _Array$isArray(children) && _Array$isArray(filteredChildren) && filteredChildren.length > 1 ? idx === children.length - 1 : true;
29
+ var isCurrentItem = _Array$isArray(filteredChildren) && filteredChildren.length > 1 ? idx === React.Children.toArray(children).length - 1 : true;
30
30
  return ___EmotionJSX(React.Fragment, {
31
31
  key: "li-".concat(child.key)
32
32
  }, ___EmotionJSX(BreadcrumbItem, _extends({
@@ -51,11 +51,10 @@ test('should render nodes from the children', function () {
51
51
  test('should render correct amount of icons', function () {
52
52
  getComponent({
53
53
  iconProps: {
54
- 'data-testid': testIconId,
55
- icon: ChevronRightIcon
54
+ 'data-testid': testIconId
56
55
  }
57
56
  });
58
- expect(screen.getAllByTestId(testIconId).length).toBe(testItemsArr.length - 2);
57
+ expect(screen.getAllByTestId(testIconId).length).toBe(testItemsArr.length - 1);
59
58
  });
60
59
  test('breadcrumbItem should render breadcrumbItem as a Text component when appropriate elementType passed', function () {
61
60
  getComponent({}, {
@@ -26,12 +26,12 @@ export default {
26
26
  }
27
27
  },
28
28
  args: {
29
- children: 'Text of the popover right here...'
29
+ children: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua'
30
30
  }
31
31
  };
32
32
  export var Default = function Default(args) {
33
33
  return ___EmotionJSX(Box, {
34
- p: 50
34
+ p: 100
35
35
  }, ___EmotionJSX(HelpHint, args));
36
36
  };
37
37
  Default.parameters = {
@@ -42,7 +42,7 @@ Default.parameters = {
42
42
  };
43
43
  export var WithPopoverAndIconButtonProps = function WithPopoverAndIconButtonProps() {
44
44
  return ___EmotionJSX(Box, {
45
- p: 50
45
+ p: 100
46
46
  }, ___EmotionJSX(HelpHint, {
47
47
  popoverProps: {
48
48
  'data-testid': 'popover-container'
@@ -51,14 +51,14 @@ export var WithPopoverAndIconButtonProps = function WithPopoverAndIconButtonProp
51
51
  'aria-label': 'Help hint'
52
52
  },
53
53
  direction: "bottom"
54
- }, "Text of the popover right here..."));
54
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua"));
55
55
  };
56
56
  export var ContentWithLink = function ContentWithLink() {
57
57
  return ___EmotionJSX(Box, {
58
- p: 70
58
+ p: 100
59
59
  }, ___EmotionJSX(HelpHint, null, ___EmotionJSX(Text, {
60
60
  variant: "popover"
61
- }, "Text of the popover right here... "), ___EmotionJSX(Link, {
61
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua"), ___EmotionJSX(Link, {
62
62
  variant: "popover",
63
63
  href: "https://uilibrary.ping-eng.com/",
64
64
  target: "_blank"
@@ -72,7 +72,7 @@ ContentWithLink.parameters = {
72
72
  };
73
73
  export var WithDelay = function WithDelay(args) {
74
74
  return ___EmotionJSX(Box, {
75
- p: 50
75
+ p: 100
76
76
  }, ___EmotionJSX(HelpHint, _extends({}, args, {
77
77
  closeDelay: 5000
78
78
  })));
@@ -1,24 +1,13 @@
1
- import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
2
- import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
3
- import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
4
- import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
5
- import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
6
- import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
7
- import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
8
- import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
9
1
  import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
10
2
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
11
3
  import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
12
4
  import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
13
5
  var _excluded = ["color"];
14
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
16
6
  import React, { forwardRef, useLayoutEffect, useRef, useState } from 'react';
17
7
  import CloseIcon from '@pingux/mdi-react/CloseIcon';
18
- import PropTypes from 'prop-types';
19
8
  import { Box, Icon, IconButton, Text } from '../..';
20
9
  import useStatusClasses from '../../hooks/useStatusClasses';
21
- import { statusPropTypes } from '../../utils/docUtils/statusProp';
10
+ import statuses from '../../utils/devUtils/constants/statuses';
22
11
  import { NoticeIcon } from '../Icon/NoticeIcon';
23
12
  import { jsx as ___EmotionJSX } from "@emotion/react";
24
13
  export var ARIA_STATUSES = {
@@ -44,28 +33,26 @@ var CloseButton = function CloseButton(_ref) {
44
33
  }
45
34
  }));
46
35
  };
47
- CloseButton.propTypes = {
48
- color: PropTypes.string
49
- };
50
36
  var Message = /*#__PURE__*/forwardRef(function (_ref2, ref) {
51
37
  var className = _ref2.className,
52
38
  item = _ref2.item,
53
39
  onClose = _ref2.onClose;
54
40
  var key = item.key,
55
41
  itemProps = item.props;
56
- var children = itemProps.children,
57
- _itemProps$status = itemProps.status,
58
- status = _itemProps$status === void 0 ? 'default' : _itemProps$status,
59
- bg = itemProps.bg,
60
- color = itemProps.color,
61
- icon = itemProps.icon,
62
- _itemProps$isHidden = itemProps.isHidden,
63
- isHidden = _itemProps$isHidden === void 0 ? false : _itemProps$isHidden,
64
- dataId = itemProps['data-id'];
42
+ var _ref3 = itemProps,
43
+ children = _ref3.children,
44
+ _ref3$status = _ref3.status,
45
+ status = _ref3$status === void 0 ? statuses.DEFAULT : _ref3$status,
46
+ bg = _ref3.bg,
47
+ color = _ref3.color,
48
+ icon = _ref3.icon,
49
+ _ref3$isHidden = _ref3.isHidden,
50
+ isHidden = _ref3$isHidden === void 0 ? false : _ref3$isHidden,
51
+ dataId = _ref3['data-id'];
65
52
  var _useStatusClasses = useStatusClasses(className, _defineProperty({}, "is-".concat(status), true)),
66
53
  statusClasses = _useStatusClasses.classNames;
67
54
  var onCloseHandler = function onCloseHandler() {
68
- if (onClose) {
55
+ if (onClose && key) {
69
56
  onClose(key);
70
57
  }
71
58
  };
@@ -75,7 +62,8 @@ var Message = /*#__PURE__*/forwardRef(function (_ref2, ref) {
75
62
  innerHeight = _useState2[0],
76
63
  setInnerHeight = _useState2[1];
77
64
  useLayoutEffect(function () {
78
- setInnerHeight(innerRef.current.clientHeight);
65
+ var _innerRef$current$cli, _innerRef$current;
66
+ setInnerHeight((_innerRef$current$cli = (_innerRef$current = innerRef.current) === null || _innerRef$current === void 0 ? void 0 : _innerRef$current.clientHeight) !== null && _innerRef$current$cli !== void 0 ? _innerRef$current$cli : 0);
79
67
  }, [children]);
80
68
  var _useStatusClasses3 = useStatusClasses(className, {
81
69
  isHidden: isHidden
@@ -133,24 +121,4 @@ var Message = /*#__PURE__*/forwardRef(function (_ref2, ref) {
133
121
  color: color
134
122
  }))));
135
123
  });
136
- Message.propTypes = {
137
- item: PropTypes.shape({
138
- key: PropTypes.string,
139
- props: PropTypes.shape({
140
- children: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
141
- /* Background color */
142
- bg: PropTypes.string,
143
- /* Text color */
144
- color: PropTypes.string,
145
- /* Message icon */
146
- icon: PropTypes.elementType,
147
- /* Hides the message with an animated transition */
148
- isHidden: PropTypes.bool,
149
- 'data-id': PropTypes.string,
150
- status: _objectSpread({}, statusPropTypes).status
151
- })
152
- }),
153
- /* Callback for clicking the message's close button */
154
- onClose: PropTypes.func
155
- };
156
124
  export default Message;
@@ -9,7 +9,7 @@ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
9
9
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
10
10
  import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
11
11
  import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
12
- var _excluded = ["items", "onClose"];
12
+ var _excluded = ["onClose"];
13
13
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
14
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
15
15
  import _Array$from from "@babel/runtime-corejs3/core-js-stable/array/from";
@@ -19,14 +19,11 @@ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/insta
19
19
  import React, { forwardRef, useCallback, useEffect, useState } from 'react';
20
20
  import { useCollection } from '@react-stately/collections';
21
21
  import { ListCollection } from '@react-stately/list';
22
- import PropTypes from 'prop-types';
23
- import { statusPropTypes } from '../../utils/docUtils/statusProp';
24
22
  import Box from '../Box';
25
23
  import Message from './Message';
26
24
  import { jsx as ___EmotionJSX } from "@emotion/react";
27
25
  var Messages = /*#__PURE__*/forwardRef(function (props, ref) {
28
- var items = props.items,
29
- onClose = props.onClose,
26
+ var onClose = props.onClose,
30
27
  others = _objectWithoutProperties(props, _excluded);
31
28
  var _useState = useState([]),
32
29
  _useState2 = _slicedToArray(_useState, 2),
@@ -70,16 +67,6 @@ var Messages = /*#__PURE__*/forwardRef(function (props, ref) {
70
67
  });
71
68
  }));
72
69
  });
73
- Messages.propTypes = {
74
- /* For use with [dynamic collections](https://react-spectrum.adobe.com/react-stately/collections.html#dynamic-collections). */
75
- items: PropTypes.arrayOf(PropTypes.shape(_objectSpread({
76
- key: PropTypes.string,
77
- text: PropTypes.string,
78
- node: PropTypes.node
79
- }, statusPropTypes))),
80
- /* Callback for clicking the message's close button */
81
- onClose: PropTypes.func
82
- };
83
70
  Messages.defaultProps = {
84
71
  items: []
85
72
  };
@@ -21,7 +21,7 @@ import AccountIcon from '@pingux/mdi-react/AccountIcon';
21
21
  import { withDesign } from 'storybook-addon-designs';
22
22
  import DocsLayout from '../../../.storybook/storybookDocsLayout';
23
23
  import { Box, Button, Messages } from '../../index';
24
- import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks.ts';
24
+ import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks';
25
25
  import statuses from '../../utils/devUtils/constants/statuses';
26
26
  import { messagesReducerStory as messagesReducer, multiMessagesReducerStory as multiMessagesReducer } from './index';
27
27
  import MessagesReadme from './Messages.mdx';
@@ -60,15 +60,15 @@ var messages = [{
60
60
  }, {
61
61
  key: 'message2',
62
62
  text: loremText,
63
- status: 'success'
63
+ status: statuses.SUCCESS
64
64
  }, {
65
65
  key: 'message3',
66
66
  text: loremText,
67
- status: 'warning'
67
+ status: statuses.WARNING
68
68
  }, {
69
69
  key: 'message4',
70
70
  text: loremText,
71
- status: 'error'
71
+ status: statuses.ERROR
72
72
  }];
73
73
  export var Default = function Default(args) {
74
74
  return ___EmotionJSX(Messages, args, ___EmotionJSX(Item, {
@@ -77,7 +77,7 @@ export var Default = function Default(args) {
77
77
  }, loremText), ___EmotionJSX(Item, {
78
78
  key: "message2",
79
79
  "data-id": "message2",
80
- status: "success"
80
+ status: statuses.SUCCESS
81
81
  }, loremText));
82
82
  };
83
83
  Default.parameters = {
@@ -87,17 +87,25 @@ Default.parameters = {
87
87
  }
88
88
  };
89
89
  export var DefaultDynamic = function DefaultDynamic(args) {
90
- return (
91
- // messages = [{...}]
92
- ___EmotionJSX(Messages, _extends({}, args, {
93
- items: messages
94
- }), function (item) {
95
- return ___EmotionJSX(Item, item, item.text);
96
- })
97
- );
90
+ return ___EmotionJSX(Messages, _extends({}, args, {
91
+ items: messages
92
+ }), function (item) {
93
+ return ___EmotionJSX(Item, item, item.text);
94
+ });
95
+ };
96
+
97
+ // Added to bypass color contrast in safari
98
+ DefaultDynamic.parameters = {
99
+ a11y: {
100
+ config: {
101
+ rules: [{
102
+ id: 'color-contrast',
103
+ enabled: false
104
+ }]
105
+ }
106
+ }
98
107
  };
99
108
  export var Controlled = function Controlled(args) {
100
- // messages = [{...}]
101
109
  var _useState = useState([]),
102
110
  _useState2 = _slicedToArray(_useState, 2),
103
111
  items = _useState2[0],
@@ -124,6 +132,18 @@ export var Controlled = function Controlled(args) {
124
132
  return ___EmotionJSX(Item, item, item.text);
125
133
  });
126
134
  };
135
+
136
+ // Added to bypass color contrast in safari
137
+ Controlled.parameters = {
138
+ a11y: {
139
+ config: {
140
+ rules: [{
141
+ id: 'color-contrast',
142
+ enabled: false
143
+ }]
144
+ }
145
+ }
146
+ };
127
147
  export var ControlledWithButton = function ControlledWithButton(args) {
128
148
  var _useState3 = useState([]),
129
149
  _useState4 = _slicedToArray(_useState3, 2),
@@ -158,6 +178,18 @@ export var ControlledWithButton = function ControlledWithButton(args) {
158
178
  return ___EmotionJSX(Item, item, item.text);
159
179
  }));
160
180
  };
181
+
182
+ // Added to bypass color contrast in safari
183
+ ControlledWithButton.parameters = {
184
+ a11y: {
185
+ config: {
186
+ rules: [{
187
+ id: 'color-contrast',
188
+ enabled: false
189
+ }]
190
+ }
191
+ }
192
+ };
161
193
  export var WithCustomColorsAndIcons = function WithCustomColorsAndIcons(args) {
162
194
  return ___EmotionJSX(Messages, args, ___EmotionJSX(Item, {
163
195
  bg: "accent.99",
@@ -165,6 +197,18 @@ export var WithCustomColorsAndIcons = function WithCustomColorsAndIcons(args) {
165
197
  icon: AccountIcon
166
198
  }, loremText));
167
199
  };
200
+
201
+ // Added to bypass color contrast in safari
202
+ WithCustomColorsAndIcons.parameters = {
203
+ a11y: {
204
+ config: {
205
+ rules: [{
206
+ id: 'color-contrast',
207
+ enabled: false
208
+ }]
209
+ }
210
+ }
211
+ };
168
212
  export var UseReducer = function UseReducer() {
169
213
  // import { messagesReducer as messagesReducerCore } from '@pingux/astro';
170
214
  // const messagesReducer = messagesReducerCore;
@@ -179,7 +223,7 @@ export var UseReducer = function UseReducer() {
179
223
  // showWarningMessage: makeShowMessage('warning', -1),
180
224
  // };
181
225
 
182
- var _useReducer = useReducer(messagesReducer),
226
+ var _useReducer = useReducer(messagesReducer, []),
183
227
  _useReducer2 = _slicedToArray(_useReducer, 2),
184
228
  items = _useReducer2[0],
185
229
  dispatch = _useReducer2[1];
@@ -207,6 +251,18 @@ export var UseReducer = function UseReducer() {
207
251
  return ___EmotionJSX(Item, item, item.text);
208
252
  }));
209
253
  };
254
+
255
+ // Added to bypass color contrast in safari
256
+ UseReducer.parameters = {
257
+ a11y: {
258
+ config: {
259
+ rules: [{
260
+ id: 'color-contrast',
261
+ enabled: false
262
+ }]
263
+ }
264
+ }
265
+ };
210
266
  export var UseReducerWithMultipleContainers = function UseReducerWithMultipleContainers() {
211
267
  var _useReducer3 = useReducer(multiMessagesReducer, {
212
268
  'container-one': [],
@@ -258,6 +314,18 @@ export var UseReducerWithMultipleContainers = function UseReducerWithMultipleCon
258
314
  return ___EmotionJSX(Item, item, item.text);
259
315
  }));
260
316
  };
317
+
318
+ // Added to bypass color contrast in safari
319
+ UseReducerWithMultipleContainers.parameters = {
320
+ a11y: {
321
+ config: {
322
+ rules: [{
323
+ id: 'color-contrast',
324
+ enabled: false
325
+ }]
326
+ }
327
+ }
328
+ };
261
329
  export var WithTextStyling = function WithTextStyling(args) {
262
330
  var items = [{
263
331
  key: 'message1',
@@ -280,4 +348,16 @@ export var WithTextStyling = function WithTextStyling(args) {
280
348
  }), function (item) {
281
349
  return ___EmotionJSX(Item, item, item.node || item.text);
282
350
  });
351
+ };
352
+
353
+ // Added to bypass color contrast in safari
354
+ WithTextStyling.parameters = {
355
+ a11y: {
356
+ config: {
357
+ rules: [{
358
+ id: 'color-contrast',
359
+ enabled: false
360
+ }]
361
+ }
362
+ }
283
363
  };