@occmundial/occ-atomic 3.0.0-beta.5 → 3.0.0-beta.51

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. package/CHANGELOG.md +414 -0
  2. package/build/Avatar/Avatar.js +69 -21
  3. package/build/Avatar/Avatar.test.js +15 -8
  4. package/build/Avatar/AvatarContent/AvatarContent.js +61 -21
  5. package/build/Avatar/AvatarContent/AvatarContent.test.js +4 -18
  6. package/build/Avatar/AvatarContent/__snapshots__/AvatarContent.test.js.snap +75 -15
  7. package/build/Avatar/AvatarContent/styles.js +88 -21
  8. package/build/Avatar/__snapshots__/Avatar.test.js.snap +11 -2
  9. package/build/Avatar/styles.js +18 -7
  10. package/build/Banner/Banner.js +30 -40
  11. package/build/Banner/Banner.test.js +64 -17
  12. package/build/Banner/__snapshots__/Banner.test.js.snap +0 -28
  13. package/build/Banner/index.js +1 -6
  14. package/build/Button/Button.js +1 -1
  15. package/build/Button/Button.test.js +0 -11
  16. package/build/Button/__snapshots__/Button.test.js.snap +54 -60
  17. package/build/Button/styles.js +42 -75
  18. package/build/Checkbox/Checkbox.js +48 -3
  19. package/build/Checkbox/__snapshots__/Checkbox.test.js.snap +81 -49
  20. package/build/Checkbox/styles.js +91 -48
  21. package/build/Fab/__snapshots__/Fab.test.js.snap +2 -2
  22. package/build/Footer/Footer.js +63 -84
  23. package/build/Footer/List/List.js +89 -124
  24. package/build/Footer/List/styles.js +85 -31
  25. package/build/Footer/__snapshots__/Footer.test.js.snap +113 -57
  26. package/build/Footer/styles.js +119 -53
  27. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  28. package/build/Grid/Col/styles.js +12 -6
  29. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  30. package/build/Grid/Row/styles.js +15 -5
  31. package/build/Grid/styles.js +26 -9
  32. package/build/Modal/Modal.js +94 -66
  33. package/build/Modal/Modal.test.js +14 -7
  34. package/build/Modal/__snapshots__/Modal.test.js.snap +155 -100
  35. package/build/Modal/styles.js +165 -143
  36. package/build/Pager/Page/Page.js +8 -5
  37. package/build/Pager/Page/Page.test.js +13 -9
  38. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  39. package/build/Pager/Page/styles.js +48 -14
  40. package/build/Pager/Pager.js +139 -235
  41. package/build/Pager/Pager.test.js +81 -36
  42. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  43. package/build/Pager/styles.js +5 -40
  44. package/build/Pill/Choice/Choice.js +6 -4
  45. package/build/Pill/Choice/styles.js +13 -10
  46. package/build/Pill/Group/styles.js +5 -5
  47. package/build/Pill/Stack/Stack.js +2 -2
  48. package/build/Pill/Stack/styles.js +5 -8
  49. package/build/Placeholder/Placeholder.js +29 -12
  50. package/build/Placeholder/Placeholder.test.js +4 -4
  51. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  52. package/build/Placeholder/styles.js +86 -42
  53. package/build/Provider/usePrevious.js +1 -1
  54. package/build/Radio/Radio.js +42 -6
  55. package/build/Radio/__snapshots__/Radio.test.js.snap +81 -80
  56. package/build/Radio/styles.js +93 -85
  57. package/build/SlideDown/SlideDown.js +162 -169
  58. package/build/SlideDown/SlideDown.test.js +49 -44
  59. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +45 -13
  60. package/build/SlideDown/styles.js +52 -18
  61. package/build/SlideToggle/SlideToggle.js +38 -6
  62. package/build/SlideToggle/SlideToggle.test.js +2 -2
  63. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +53 -37
  64. package/build/SlideToggle/styles.js +64 -45
  65. package/build/Tabs/Tab/Tab.js +73 -0
  66. package/build/Tabs/Tab/index.js +34 -0
  67. package/build/Tabs/Tab/index.test.js +132 -0
  68. package/build/Tabs/Tab/styles.js +74 -0
  69. package/build/Tabs/TabContent/TabContent.js +76 -0
  70. package/build/Tabs/TabContent/index.js +34 -0
  71. package/build/Tabs/TabContent/index.test.js +68 -0
  72. package/build/Tabs/TabContent/styles.js +23 -0
  73. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  74. package/build/Tabs/TabIndicator/index.js +34 -0
  75. package/build/Tabs/TabIndicator/styles.js +24 -0
  76. package/build/Tabs/TabList/TabList.js +108 -0
  77. package/build/Tabs/TabList/index.js +34 -0
  78. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  79. package/build/Tabs/Tabs.js +74 -0
  80. package/build/Tabs/context.js +94 -0
  81. package/build/Tabs/index.js +34 -0
  82. package/build/Tabs/index.test.js +157 -0
  83. package/build/Tabs/styles.js +19 -0
  84. package/build/Tag/Tag.js +2 -2
  85. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  86. package/build/Tag/styles.js +76 -82
  87. package/build/Text/Text.js +6 -3
  88. package/build/TextField/TextField.js +7 -6
  89. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  90. package/build/TextField/styles.js +3 -0
  91. package/build/Tip/Tip.js +62 -95
  92. package/build/Tip/Tip.test.js +29 -6
  93. package/build/Tip/TipText/index.js +32 -0
  94. package/build/Tip/__snapshots__/Tip.test.js.snap +127 -15
  95. package/build/Tip/styles.js +125 -31
  96. package/build/Toaster/Toast/Toast.js +76 -64
  97. package/build/Toaster/Toast/styles.js +118 -46
  98. package/build/Toaster/Toaster.js +3 -2
  99. package/build/Toaster/Toaster.test.js +5 -2
  100. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  101. package/build/Toaster/functions.js +4 -0
  102. package/build/Toaster/styles.js +3 -3
  103. package/build/Tooltip/Tooltip.js +73 -22
  104. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  105. package/build/Tooltip/styles.js +32 -10
  106. package/build/index.js +14 -1
  107. package/build/subatomic/grid.js +5 -5
  108. package/build/tokens/colors.json +35 -3
  109. package/package.json +4 -1
  110. package/build/Banner/styles.js +0 -41
  111. package/build/Pager/Break/Break.js +0 -27
  112. package/build/Pager/Break/Break.test.js +0 -53
  113. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  114. package/build/Pager/Break/index.js +0 -18
  115. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -9,40 +9,77 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
+ var _Icon = _interopRequireDefault(require("../../Icon"));
13
+
14
+ var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
15
+
12
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
17
 
14
- var capitalLetter = function capitalLetter(name) {
15
- if (name) {
16
- var capitals = name.toUpperCase().split(" ");
17
- capitals = capitals.filter(Boolean);
18
- return /*#__PURE__*/_react["default"].createElement("span", null, capitals[0] ? capitals[0].charAt(0) : 'N', capitals[1] ? capitals[1].charAt(0) : 'O');
18
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
19
+
20
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
21
+
22
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
23
+
24
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
25
+
26
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
27
+
28
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
29
+
30
+ var getInitials = function getInitials(name) {
31
+ if (name && name.trim()) {
32
+ var _name$trim$replace$to = name.trim().replace(/\s+/g, ' ').toUpperCase().split(' '),
33
+ _name$trim$replace$to2 = _slicedToArray(_name$trim$replace$to, 2),
34
+ firstName = _name$trim$replace$to2[0],
35
+ lastName = _name$trim$replace$to2[1];
36
+
37
+ return "".concat(firstName === null || firstName === void 0 ? void 0 : firstName.charAt(0)).concat(lastName === null || lastName === void 0 ? void 0 : lastName.charAt(0));
19
38
  }
20
39
 
21
- return "";
40
+ return null;
22
41
  };
23
42
 
24
43
  var AvatarContent = function AvatarContent(_ref) {
25
44
  var classes = _ref.classes,
26
45
  photo = _ref.photo,
27
- gender = _ref.gender,
28
46
  name = _ref.name,
29
- size = _ref.size;
47
+ size = _ref.size,
48
+ onEdit = _ref.onEdit,
49
+ onClick = _ref.onClick,
50
+ disabled = _ref.disabled;
51
+ var initials = getInitials(name);
30
52
  return /*#__PURE__*/_react["default"].createElement("div", {
31
53
  className: classes.wrap
32
- }, gender && /*#__PURE__*/_react["default"].createElement("div", {
33
- className: "".concat(classes.cont, " ").concat(classes[gender])
34
- }), !gender && name && /*#__PURE__*/_react["default"].createElement("div", {
35
- className: "".concat(classes.cont, " ").concat(classes.capital),
54
+ }, /*#__PURE__*/_react["default"].createElement("div", {
55
+ className: "".concat(classes.cont).concat(onClick ? " ".concat(classes.clickable) : '').concat(onEdit ? " ".concat(classes.editable) : '').concat(disabled ? " ".concat(classes.disabled) : '').concat(photo ? " ".concat(classes.photo) : '').concat(photo && (onClick || onEdit) ? " ".concat(classes.hoverPhoto) : ''),
56
+ style: photo ? {
57
+ background: "url('".concat(photo, "') no-repeat center center / cover")
58
+ } : null
59
+ }, !photo ? initials ? /*#__PURE__*/_react["default"].createElement("span", {
60
+ className: "".concat(classes.initials, " ").concat(disabled ? classes.disabledInitials : ''),
36
61
  style: size ? {
37
- fontSize: "".concat(size * 0.4, "px"),
38
- lineHeight: "".concat(size, "px")
62
+ transform: "scale(".concat(size / 40, ")")
39
63
  } : {}
40
- }, capitalLetter(name)), photo && /*#__PURE__*/_react["default"].createElement("div", {
41
- className: classes.cont,
42
- style: {
43
- background: "url('".concat(photo, "') no-repeat center center / cover")
44
- }
45
- }));
64
+ }, initials) : /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
65
+ iconName: "person",
66
+ className: classes.person,
67
+ colors: [disabled ? _colors["default"].icon["default"].disabled : _colors["default"].icon.brand["default"]],
68
+ size: 24,
69
+ style: size ? {
70
+ transform: "scale(".concat(size / 40, ")")
71
+ } : {}
72
+ }) : null, /*#__PURE__*/_react["default"].createElement("div", {
73
+ className: classes.overlay
74
+ }, onEdit && !disabled && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
75
+ iconName: "camera",
76
+ className: classes.camera,
77
+ colors: [disabled ? _colors["default"].icon["default"].disabled : _colors["default"].icon.inverse["default"]],
78
+ size: 24,
79
+ style: size ? {
80
+ transform: "scale(".concat(size / 40, ")")
81
+ } : {}
82
+ }))));
46
83
  };
47
84
 
48
85
  AvatarContent.propTypes = {
@@ -50,7 +87,10 @@ AvatarContent.propTypes = {
50
87
  photo: _propTypes["default"].string,
51
88
  gender: _propTypes["default"].string,
52
89
  name: _propTypes["default"].string,
53
- size: _propTypes["default"].number
90
+ size: _propTypes["default"].number,
91
+ onEdit: _propTypes["default"].func,
92
+ onClick: _propTypes["default"].func,
93
+ disabled: _propTypes["default"].bool
54
94
  };
55
95
  var _default = AvatarContent;
56
96
  exports["default"] = _default;
@@ -27,25 +27,12 @@ describe("AvatarContent", function () {
27
27
  }));
28
28
  expect(wrapper).toMatchSnapshot();
29
29
  });
30
- it('returns the first two capital letters of the name', function () {
30
+ it('returns the first two initial letters of the name', function () {
31
31
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
32
32
  name: "John Doe",
33
33
  classes: classes
34
34
  }));
35
- expect(wrapper.find('.capital span').text()).toEqual('JD');
36
- });
37
- it('shows the right gender icon', function () {
38
- var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
39
- gender: "m",
40
- classes: classes
41
- }));
42
- expect(wrapper.find('.m').length).toBe(1);
43
- expect(wrapper.find('.f').length).toBe(0);
44
- wrapper.setProps({
45
- gender: 'f'
46
- });
47
- expect(wrapper.find('.m').length).toBe(0);
48
- expect(wrapper.find('.f').length).toBe(1);
35
+ expect(wrapper.find('.initials').text()).toEqual('JD');
49
36
  });
50
37
  it('renders the photo as a background', function () {
51
38
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
@@ -60,9 +47,8 @@ describe("AvatarContent", function () {
60
47
  size: 50,
61
48
  classes: classes
62
49
  }));
63
- var styles = wrapper.find('.capital').prop('style');
64
- expect(styles).toHaveProperty('fontSize', '20px');
65
- expect(styles).toHaveProperty('lineHeight', '50px');
50
+ var styles = wrapper.find('.initials').prop('style');
51
+ expect(styles).toHaveProperty('transform', 'scale(1.25)');
66
52
  });
67
53
  });
68
54
  describe("AvatarContentJSS", function () {
@@ -4,31 +4,91 @@ exports[`AvatarContent matches the snapshot 1`] = `ShallowWrapper {}`;
4
4
 
5
5
  exports[`AvatarContent styles matches the snapshot 1`] = `
6
6
  Object {
7
- "capital": Object {
8
- "background": "#f5f5f5",
9
- "color": "#dddddd",
10
- "fontFamily": "'OccText', sans-serif",
11
- "fontSize": "57px",
12
- "fontStyle": "normal",
13
- "fontWeight": "400",
14
- "letterSpacing": -2,
15
- "lineHeight": "72px",
16
- "textAlign": "center",
7
+ "camera": Object {
8
+ "gridColumnStart": 1,
9
+ "gridRowStart": 1,
10
+ "opacity": 0,
11
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
12
+ },
13
+ "clickable": Object {
14
+ "&:active": Object {
15
+ "background": "#ABBDE4",
16
+ },
17
+ "&:hover": Object {
18
+ "background": "#CAD5EE",
19
+ },
20
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
17
21
  },
18
22
  "cont": Object {
19
- "borderRadius": "50%",
23
+ "alignItems": "center",
24
+ "background": "#E9EEF8",
25
+ "borderRadius": "9999px",
26
+ "display": "grid",
20
27
  "height": "100%",
28
+ "justifyContent": "center",
21
29
  "left": "0",
22
30
  "overflow": "hidden",
23
31
  "position": "absolute",
24
32
  "top": "0",
25
33
  "width": "100%",
26
34
  },
27
- "f": Object {
28
- "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJCQkgdmlld0JveD0iMCAwIDcwIDcwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA3MCA3MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgoJCTxyZWN0IHk9IjAiIGZpbGw9IiNFOEVFRjgiIHdpZHRoPSI3MCIgaGVpZ2h0PSI3MCIvPgoJCTxwYXRoIGZpbGw9IiNEMEQ5RUQiIGQ9Ik00OS42LDI4LjRjLTAuOCwxLTIuNywxLjktNiwzLjJjLTQuOCwyLTkuNiwwLjYtMTEuOCwwYy03LjYtMS45LTExLDQuOC04LjQsMTEuM2MwLjQsMS4xLDAuOSwyLjUsMS40LDMuOQoJCQljLTAuOC01LjgtMC41LTE0LjUsNS41LTEzLjFjMi40LDAuNiw3LjgsMi4yLDEzLDBjMi45LTEuMiw1LjItMi43LDYuNS00YzAsMCwwLDAsMCwwYzAuMS0wLjUsMC4yLTAuOSwwLjMtMS40CgkJCUM0OS44LDI4LjUsNDkuNywyOC40LDQ5LjYsMjguNHoiLz4KCQk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjMzLjMxMzUiIHkxPSI1Ny42MTI4IiB4Mj0iMzUuODEzNSIgeTI9IjY2LjM2MjgiPgoJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojQzJDREUyIi8+CgkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNEOUUxRUYiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxwYXRoIGZpbGw9InVybCgjU1ZHSURfMV8pIiBkPSJNNDMuNSw1NS43QzQzLjUsNTUuNyw0My41LDU1LjYsNDMuNSw1NS43YzAsMC0wLjEsMC0wLjIsMC4xYy0wLjgsMC43LTEuNiwxLjQtMi41LDIuMQoJCQljLTMuMSwyLjQtNy4yLDIuNy0xMC41LDAuOWMtMC41LTAuMy0wLjktMC41LTEuMy0wLjljLTAuOC0wLjYtMS41LTEuMi0yLjEtMS43YzAuNSwzLjcsMC41LDcuMy0wLjQsMTAuMmMtMC4xLDAuNC0wLjMsMC44LTAuNSwxLjIKCQkJYzAsMC40LTAuMSwwLjgtMC4xLDEuMmMwLjIsMCwwLjMsMC4xLDAuNSwwLjFDMjksNjkuNiwzMiw3MCwzNSw3MGMzLDAsNS44LTAuNCw4LjYtMS4xYzAuMSwwLDAuMy0wLjEsMC40LTAuMQoJCQlDNDMuNCw2NC41LDQzLjIsNTguNiw0My41LDU1Ljd6Ii8+CgkJPHBhdGggZmlsbD0iI0JEQzhERiIgZD0iTTU1LjIsNDcuNWMxLjItNC4yLDEuOC05LjQsMS43LTEzLjZjMC0xNi4zLTExLjItMjUuNC0yMS41LTI1LjRDMTkuNiw4LjQsMTIuNiwyNS42LDEyLjUsMzkKCQkJYy0xLjEsOC45LTEuMywxOC41LDAuMSwyMi44YzAsMCwwLDAuMSwwLDAuMWMwLDAsMCwwLDAsMGMwLDAsMCwwLDAsMGMzLjcsMyw4LDUuMywxMi43LDYuN2MwLjEsMCwwLjMsMC4xLDAuNCwwLjEKCQkJYzAuMiwwLDAuMywwLjEsMC41LDAuMWMwLjEtMC44LDAuMS0xLjYsMC4yLTIuNWMxLTIuOSwxLTYuNiwwLjQtMTAuMmMwLTAuMy0wLjEtMC43LTAuMi0xYy0wLjEtMC40LTAuMS0wLjgtMC4yLTEuMgoJCQljLTAuNS0yLjUtMS4xLTQuOS0xLjgtNy4xYy0wLjUtMS41LTAuOS0yLjgtMS40LTMuOWMtMi41LTYuNSwwLjktMTMuMyw4LjQtMTEuM2MyLjIsMC42LDcsMiwxMS44LDBjMy4zLTEuNCw1LjItMi4yLDYtMy4yCgkJCWMwLjEsMCwwLjIsMC4xLDAuMywwLjFjLTAuMSwwLjQtMC4yLDAuOS0wLjMsMS40Yy0wLjMsMi0wLjYsNC40LTAuOCw2LjhjMS41LTEuNSwyLjQtMS42LDIuOS0wLjhjMC43LDEsMC4zLDIuMywwLDQuMwoJCQljLTAuMSwwLjgtMC40LDMtMC40LDMuNWMwLDEuMi0xLjIsMi4yLTIuNiwxLjhjMCwwLjMsMCwwLjYsMCwxYy0wLjMsMi40LTEuMyw0LjYtMi44LDYuM2MtMC44LDEtMS42LDItMi40LDIuOQoJCQljLTAuMSwwLjEtMC4xLDAuMS0wLjIsMC4yYy0wLjIsMy42LTAuMSw5LjMsMC4yLDEzLjFjMC4xLDAsMC4zLTAuMSwwLjQtMC4xYzYuMi0xLjYsMTEuNy00LjksMTYtOS4zQzU2LjIsNTYuMiw1My45LDUyLjEsNTUuMiw0Ny41CgkJCXoiLz4KCQk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzJfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjkzLjQ2OTUiIHkxPSIxNzYuODA2MiIgeDI9IjM3LjIxOTUiIHkyPSI0MC41NTYyIj4KCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0M3RDJFNyIvPgoJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRTBFN0YyIi8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8cGF0aCBmaWxsPSJ1cmwoI1NWR0lEXzJfKSIgZD0iTTUxLjcsMzUuOWMtMC41LTAuOC0xLjQtMC44LTIuOSwwLjhjMC4yLTIuNCwwLjUtNC45LDAuOC02LjhjMCwwLDAsMCwwLDBjLTEuMywxLjMtMy42LDIuNy02LjUsNAoJCQljLTUuMSwyLjItMTAuNiwwLjYtMTMsMGMtNi4xLTEuNC02LjMsNy4yLTUuNSwxMy4xYzAuNywyLjEsMS4zLDQuNiwxLjgsNy4xYzAuMSwwLjQsMC4xLDAuOCwwLjIsMS4yYzAuMSwwLjMsMC4xLDAuNywwLjIsMQoJCQljMC43LDAuNiwxLjQsMS4xLDIuMSwxLjdjMC40LDAuMywwLjksMC42LDEuMywwLjljMy4zLDEuOCw3LjUsMS41LDEwLjUtMC45YzAuOS0wLjcsMS43LTEuNCwyLjUtMi4xYzAsMCwwLDAuMSwwLDAuMQoJCQljMC4xLTAuMSwwLjEtMC4xLDAuMi0wLjJjMC45LTAuOSwxLjctMS45LDIuNC0yLjljMS41LTEuNywyLjUtMy45LDIuOC02LjNjMC0wLjMsMC0wLjcsMC0xYzEuNSwwLjQsMi42LTAuNiwyLjYtMS44CgkJCWMwLTAuNSwwLjMtMi43LDAuNC0zLjVDNTIsMzguMiw1Mi4zLDM2LjksNTEuNywzNS45eiIvPgoJCTwvc3ZnPg==)",
35
+ "disabled": Object {
36
+ "& $camera": Object {
37
+ "opacity": 1,
38
+ },
39
+ "background": "#EDEDF1",
40
+ "pointerEvents": "none",
41
+ },
42
+ "disabledInitials": Object {
43
+ "color": "#878A9F",
44
+ },
45
+ "editable": Object {
46
+ "&:active $overlay": Object {
47
+ "background": "hsl(234 75.4% 12.7% / 0.4)",
48
+ },
49
+ "&:hover $camera": Object {
50
+ "opacity": 1,
51
+ },
52
+ "&:hover $overlay": Object {
53
+ "background": "hsl(234 75.4% 12.7% / 0.3)",
54
+ },
55
+ },
56
+ "hoverPhoto": Object {
57
+ "&:active $overlay": Object {
58
+ "background": "hsl(234 75.4% 12.7% / 0.4)",
59
+ },
60
+ "&:hover $overlay": Object {
61
+ "background": "hsl(234 75.4% 12.7% / 0.3)",
62
+ },
63
+ },
64
+ "initials": Object {
65
+ "color": "#083CAE",
66
+ "display": "inline-block",
67
+ "font": "400 16px/1.5 'OccText', sans-serif",
68
+ "gridColumnStart": "1",
69
+ "gridRowStart": "1",
70
+ "textAlign": "center",
71
+ },
72
+ "overlay": Object {
73
+ "alignItems": "center",
74
+ "border": "1px solid transparent",
75
+ "borderRadius": "50%",
76
+ "display": "grid",
77
+ "height": "100%",
78
+ "justifyContent": "center",
79
+ "left": "0",
80
+ "position": "absolute",
81
+ "top": "0",
82
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
83
+ "width": "100%",
84
+ },
85
+ "person": Object {
86
+ "gridColumnStart": 1,
87
+ "gridRowStart": 1,
88
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
29
89
  },
30
- "m": Object {
31
- "background": "url(data:image/svg+xml;base64,CgkJPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJCQkgdmlld0JveD0iMCAwIDcwIDcwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA3MCA3MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgoJCTxyZWN0IHk9IjAiIGZpbGw9IiNFOEVFRjgiIHdpZHRoPSI3MCIgaGVpZ2h0PSI3MCIvPgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iLTM2OS43ODE5IiB5MT0iMzMzLjIwODgiIHgyPSItMzY5LjMxMjIiIHkyPSIzMzIuMjQ1MSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMzMuMDAyNCAzLjQ2ODcgLTMuNTUwNiAtMzMuNzgxNSAtMTA5NzYuNDAwNCAxMjU3Ny45Mzg1KSI+CgkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNDMkNERTIiLz4KCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0Q5RTFFRiIvPgoJCTwvbGluZWFyR3JhZGllbnQ+CgkJPHBhdGggZmlsbD0idXJsKCNTVkdJRF8xXykiIGQ9Ik00Mi4yLDYxLjFjLTMsMi42LTcuNCwyLjYtMTAuNCwwYy00LjQtMy43LTcuNC02LTkuNC04LjJjMC4xLDMuMi0wLjMsOS40LTIuNCwxMy43QzI0LjYsNjguOCwyOS43LDcwLDM1LDcwCgkJCWM2LDAsMTEuNi0xLjUsMTYuNS00LjJjLTEtMi42LTEuNC03LjctMS41LTExLjhDNDguMyw1Niw0NS43LDU4LjEsNDIuMiw2MS4xeiIvPgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMl8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iNzkuMzcwNSIgeTE9IjE4NC44MTkyIiB4Mj0iMzYuOTAyOSIgeTI9IjQzLjM0NjUiPgoJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojQzdEMkU3Ii8+CgkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNFMEU3RjIiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxwYXRoIGZpbGw9InVybCgjU1ZHSURfMl8pIiBkPSJNNTIuNSw0NC4yYy0xLjUtMC4yLTEuNC0yLjEtMS4yLTQuNmMwLjEtMS44LDAtMywwLjMtNGMwLDAtMC4xLDAtMC4xLDAuMWMtMi4zLDEuNC0xLjUtNC44LTItOS40CgkJCWMtMC4xLTEuMS0wLjItMy4xLTAuOC01LjNjMC0wLjEtMC4xLTAuMi0wLjEtMC4zYy0wLjMtMS0wLjYtMi0xLTIuOWMwLDAuNS0wLjIsMC42LTAuMi0wLjJjMC0wLjktMi4zLDEzLjMtMTguOCwxMy4zCgkJCWMtMS45LDAtMy45LTAuMi01LjgtMC41YzAuMSw0LjYsMCwxMC4xLTEuNyw2LjhjLTAuMy0wLjYtMC41LTEtMC43LTEuMmMwLjMsMSwwLjIsMi4xLDAuMywzLjhjMC4xLDIuNCwwLjIsNC4zLTEuMiw0LjYKCQkJYy0wLjEsMC0wLjEsMC0wLjIsMGMwLjEsMi43LDAuNCw0LjgsMC45LDUuOGMwLjUsMSwxLjIsMS45LDIuMSwyLjljMiwyLjEsNSw0LjUsOS40LDguMmMzLDIuNiw3LjQsMi42LDEwLjQsMAoJCQljMy41LTIuOSw2LjEtNS4xLDcuOC03YzEuNC0xLjYsMi4xLTMsMi4xLTQuNWMwLTAuMiwwLjQtMy4xLDAuNy01LjRDNTIuNyw0NC4yLDUyLjYsNDQuMiw1Mi41LDQ0LjJ6Ii8+CgkJPHBhdGggZmlsbD0iI0QwRDlFRCIgZD0iTTI2LjcsMjguOWMtMS4zLDAtMi41LTAuMS0zLjgtMC4yYzAsMC41LDAsMSwwLDEuNWMxLjksMC4zLDMuOCwwLjUsNS44LDAuNWMxNi41LDAsMTguOC0xNC4yLDE4LjgtMTMuMwoJCQljMCwwLjgsMC4yLDAuNywwLjIsMC4yYy0wLjEtMC4zLTAuMy0wLjUtMC40LTAuOEM0Ni43LDE2LDQ0LjYsMjguOSwyNi43LDI4Ljl6Ii8+CgkJPHBhdGggZmlsbD0iI0Q5RTFFRiIgZD0iTTU1LjUsMzNjLTAuMS0wLjMtMC4zLTAuNS0wLjUtMC42Yy0wLjUtMC4zLTEuMiwwLjMtMS44LDFjLTAuNCwwLjQtMC43LDAuOS0xLDEuMmMtMC4zLDAuMy0wLjQsMC42LTAuNiwxCgkJCWMtMC40LDEtMC4yLDIuMi0wLjMsNGMtMC4xLDIuNC0wLjIsNC4zLDEuMiw0LjZjMC4xLDAsMC4yLDAsMC4zLDBjMS4zLDAsMi4yLTEuMiwyLjItM0M1NS4xLDM5LjMsNTYuMywzNC43LDU1LjUsMzN6Ii8+CgkJPHBhdGggZmlsbD0iI0JEQzhERiIgZD0iTTU1LjEsMjEuMmMtMC4zLTIuNC0xLjUtNC44LTMuNi02LjhjLTAuMS0wLjEtMS45LTAuNS0yLjQtMC40Yy0wLjEtMC41LTAuNy0xLjktMS4xLTIuMQoJCQljLTIuNC0xLjMtNS41LTIuMi05LjItMi42QzM3LjMsOSwzNS43LDguOSwzNCw5LjJjLTUuNywxLTksOC4zLTEzLjcsOS45Yy00LjcsMS42LTQuMywxLjItNC4zLDUuNWMwLDEuMywwLjcsMi4yLDEuOCwyLjcKCQkJYzAsMS40LDAuMSwzLDAuMiw0LjRjMCwwLjIsMC4xLDAuNSwwLjEsMC44YzAuNCwwLjMsMC44LDAuNywxLjIsMS4yYzAuMiwwLjMsMC40LDAuNiwwLjYsMC44YzAuMywwLjQsMC41LDAuOCwwLjYsMS4yCgkJCWMwLjIsMC4yLDAuNCwwLjYsMC43LDEuMmMxLjYsMy4yLDEuNy0yLjMsMS43LTYuOGMwLTAuNSwwLTEsMC0xLjVjMS4zLDAuMSwyLjUsMC4yLDMuOCwwLjJjMTcuOSwwLDIwLTEyLjksMjAuNS0xMi4xCgkJCWMwLjEsMC4zLDAuMywwLjUsMC40LDAuOGMwLjQsMC45LDAuOCwxLjksMSwyLjljMCwwLjEsMC4xLDAuMiwwLjEsMC4zYzAuNSwyLjIsMC43LDQuMiwwLjgsNS4zYzAuNCw0LjctMC4zLDEwLjgsMiw5LjQKCQkJYzAsMCwwLjEsMCwwLjEtMC4xYzAuMS0wLjMsMC4zLTAuNywwLjYtMWMwLjMtMC40LDAuNy0wLjgsMS0xLjJjMC42LTAuNywxLjMtMS4zLDEuOC0xQzU1LjMsMjksNTUuNSwyNC40LDU1LjEsMjEuMnoiLz4KCQk8cGF0aCBmaWxsPSIjREVFNUYxIiBkPSJNMjAuOCwzOS42Yy0wLjEtMS43LDAtMi44LTAuMy0zLjhjLTAuMS0wLjQtMC4zLTAuOC0wLjYtMS4yYy0wLjItMC4yLTAuNC0wLjUtMC42LTAuOAoJCQljLTAuNC0wLjUtMC44LTAuOS0xLjItMS4yYy0wLjYtMC40LTEuMS0wLjUtMS41LDAuNGMtMC44LDEuNywwLjQsNi4zLDAuNCw4LjNjMC4xLDEuOCwxLDMuMSwyLjQsM2MwLjEsMCwwLjEsMCwwLjIsMAoJCQlDMjEuMSw0My45LDIwLjksNDIsMjAuOCwzOS42eiIvPgoJCTwvc3ZnPg==)",
90
+ "photo": Object {
91
+ "border": "1px solid #EDEDF1",
32
92
  },
33
93
  "wrap": Object {
34
94
  "height": "100%",
@@ -5,14 +5,21 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
 
8
- var _fonts = _interopRequireDefault(require("../../subatomic/fonts"));
8
+ var _fonts = _interopRequireDefault(require("../../tokens/fonts.json"));
9
9
 
10
- var _icons = _interopRequireDefault(require("../../subatomic/icons"));
10
+ var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
11
11
 
12
- var _colors = _interopRequireDefault(require("../../subatomic/colors"));
12
+ var _borderRadius = _interopRequireDefault(require("../../tokens/borderRadius.json"));
13
+
14
+ var _fonts2 = _interopRequireDefault(require("../../subatomic/fonts"));
13
15
 
14
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
17
 
18
+ var avatar = _colors["default"].avatar,
19
+ text = _colors["default"].text,
20
+ border = _colors["default"].border;
21
+ var transition = 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s';
22
+ var font = _fonts["default"]['body-regular-strong'];
16
23
  var _default = {
17
24
  wrap: {
18
25
  position: 'relative',
@@ -25,25 +32,85 @@ var _default = {
25
32
  left: '0',
26
33
  width: '100%',
27
34
  height: '100%',
35
+ borderRadius: _borderRadius["default"]['br-full'],
36
+ overflow: 'hidden',
37
+ background: avatar.bg["default"],
38
+ display: 'grid',
39
+ alignItems: 'center',
40
+ justifyContent: 'center'
41
+ },
42
+ initials: {
43
+ display: 'inline-block',
44
+ font: "".concat(font.fontWeight, " ").concat(font.fontSize, "/").concat(font.lineHeight, " ").concat(_fonts2["default"].body),
45
+ color: text.indigo.primary,
46
+ gridRowStart: '1',
47
+ gridColumnStart: '1',
48
+ textAlign: 'center'
49
+ },
50
+ disabled: {
51
+ pointerEvents: 'none',
52
+ background: avatar.bg.disabled,
53
+ '& $camera': {
54
+ opacity: 1
55
+ }
56
+ },
57
+ disabledInitials: {
58
+ color: text.corp.disabled
59
+ },
60
+ clickable: {
61
+ transition: transition,
62
+ '&:hover': {
63
+ background: avatar.bg.hover
64
+ },
65
+ '&:active': {
66
+ background: avatar.bg.active
67
+ }
68
+ },
69
+ editable: {
70
+ '&:hover $camera': {
71
+ opacity: 1
72
+ },
73
+ '&:hover $overlay': {
74
+ background: avatar.bg.overlay.hover
75
+ },
76
+ '&:active $overlay': {
77
+ background: avatar.bg.overlay.active
78
+ }
79
+ },
80
+ person: {
81
+ gridRowStart: 1,
82
+ gridColumnStart: 1,
83
+ transition: transition
84
+ },
85
+ photo: {
86
+ border: "1px solid ".concat(border["default"].subtle)
87
+ },
88
+ hoverPhoto: {
89
+ '&:hover $overlay': {
90
+ background: avatar.bg.overlay.hover
91
+ },
92
+ '&:active $overlay': {
93
+ background: avatar.bg.overlay.active
94
+ }
95
+ },
96
+ camera: {
97
+ gridRowStart: 1,
98
+ gridColumnStart: 1,
99
+ opacity: 0,
100
+ transition: transition
101
+ },
102
+ overlay: {
28
103
  borderRadius: '50%',
29
- overflow: 'hidden'
30
- },
31
- m: {
32
- background: _icons["default"].base(_icons["default"].male.icon())
33
- },
34
- f: {
35
- background: _icons["default"].base(_icons["default"].female.icon())
36
- },
37
- capital: {
38
- fontFamily: _fonts["default"].body,
39
- fontSize: '57px',
40
- lineHeight: '72px',
41
- fontWeight: '400',
42
- background: _colors["default"].grey100,
43
- color: _colors["default"].grey200,
44
- textAlign: 'center',
45
- letterSpacing: -2,
46
- fontStyle: 'normal'
104
+ position: 'absolute',
105
+ top: '0',
106
+ left: '0',
107
+ width: '100%',
108
+ height: '100%',
109
+ display: 'grid',
110
+ alignItems: 'center',
111
+ justifyContent: 'center',
112
+ transition: transition,
113
+ border: "1px solid transparent"
47
114
  }
48
115
  };
49
116
  exports["default"] = _default;
@@ -6,10 +6,19 @@ exports[`Avatar styles matches the snapshot 1`] = `
6
6
  Object {
7
7
  "circle": Object {
8
8
  "borderRadius": "50%",
9
- "height": [Function],
9
+ "outline": "none",
10
10
  "overflow": "hidden",
11
11
  "position": "relative",
12
- "width": [Function],
12
+ },
13
+ "disabled": Object {
14
+ "pointerEvents": "none",
15
+ },
16
+ "editable": Object {
17
+ "&:focus-visible": Object {
18
+ "boxShadow": "0 0 0 8px rgba(0,110,255,0.3)",
19
+ },
20
+ "cursor": "pointer",
21
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
13
22
  },
14
23
  }
15
24
  `;
@@ -4,17 +4,28 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+
8
+ var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+
12
+ var transition = 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s';
7
13
  var _default = {
8
14
  circle: {
9
15
  position: 'relative',
10
- width: function width(props) {
11
- return props.size ? props.size : 70;
12
- },
13
- height: function height(props) {
14
- return props.size ? props.size : 70;
15
- },
16
16
  borderRadius: '50%',
17
- overflow: 'hidden'
17
+ overflow: 'hidden',
18
+ outline: 'none'
19
+ },
20
+ editable: {
21
+ cursor: 'pointer',
22
+ transition: transition,
23
+ '&:focus-visible': {
24
+ boxShadow: _shadows["default"]['focus-bright-blue']
25
+ }
26
+ },
27
+ disabled: {
28
+ pointerEvents: 'none'
18
29
  }
19
30
  };
20
31
  exports["default"] = _default;
@@ -9,17 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _Flexbox = _interopRequireDefault(require("../Flexbox"));
13
-
14
- var _WindowSize = _interopRequireDefault(require("../WindowSize"));
15
-
16
- var _Text = _interopRequireDefault(require("../Text"));
17
-
18
- var _Icon = _interopRequireDefault(require("../Icon"));
19
-
20
- var _grid = _interopRequireDefault(require("../subatomic/grid"));
21
-
22
- var _colors = _interopRequireDefault(require("../subatomic/colors"));
12
+ var _Tip = _interopRequireDefault(require("../Tip"));
23
13
 
24
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
15
 
@@ -27,38 +17,29 @@ var Banner = function Banner(_ref) {
27
17
  var id = _ref.id,
28
18
  style = _ref.style,
29
19
  className = _ref.className,
30
- classes = _ref.classes,
31
20
  children = _ref.children,
32
21
  onClose = _ref.onClose,
33
- winWidth = _ref.winWidth;
34
- var isMobile = winWidth < _grid["default"].xs;
35
- return /*#__PURE__*/_react["default"].createElement("div", {
22
+ cta = _ref.cta,
23
+ _ref$theme = _ref.theme,
24
+ theme = _ref$theme === void 0 ? 'promote' : _ref$theme,
25
+ _ref$size = _ref.size,
26
+ size = _ref$size === void 0 ? 'large' : _ref$size,
27
+ testId = _ref.testId;
28
+ return /*#__PURE__*/_react["default"].createElement(_Tip["default"], {
36
29
  id: id,
30
+ style: style,
37
31
  className: className,
38
- style: style
39
- }, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
40
- display: "flex",
41
- className: classes.container
42
- }, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
43
- flex: "1",
44
- className: classes.textFlex
45
- }, /*#__PURE__*/_react["default"].createElement(_Text["default"], {
46
- white: true,
47
- small: isMobile,
48
- tag: "div",
49
- className: classes.textBanner
50
- }, children)), /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
51
- className: classes.iconFlex
52
- }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
53
- iconName: "close",
54
- colors: [_colors["default"].bgWhite],
55
- onClick: onClose,
56
- className: classes.icon
57
- }))));
32
+ onClose: onClose,
33
+ banner: true,
34
+ cta: cta,
35
+ theme: theme,
36
+ icon: true,
37
+ size: size,
38
+ testId: testId
39
+ }, children);
58
40
  };
59
41
 
60
42
  Banner.propTypes = {
61
- classes: _propTypes["default"].object.isRequired,
62
43
  winWidth: _propTypes["default"].number,
63
44
 
64
45
  /** Text of the tip. If you put text between two * characters that text will be displayed as bold. */
@@ -68,9 +49,18 @@ Banner.propTypes = {
68
49
  id: _propTypes["default"].string,
69
50
  className: _propTypes["default"].string,
70
51
  style: _propTypes["default"].object,
71
- onClose: _propTypes["default"].func
52
+ onClose: _propTypes["default"].func,
53
+ cta: _propTypes["default"].shape({
54
+ text: _propTypes["default"].string,
55
+ href: _propTypes["default"].string,
56
+ target: _propTypes["default"].string,
57
+ onClick: _propTypes["default"].func
58
+ }),
59
+ theme: _propTypes["default"].oneOf(['info', 'warning', 'success', 'error', 'promote']),
60
+ size: _propTypes["default"].oneOf(['large', 'small']),
61
+
62
+ /** The testId property adds the data attribute data-testid to the main element and should be used for testing only. */
63
+ testId: _propTypes["default"].string
72
64
  };
73
-
74
- var _default = (0, _WindowSize["default"])(Banner);
75
-
65
+ var _default = Banner;
76
66
  exports["default"] = _default;
@@ -6,35 +6,82 @@ var _enzyme = require("enzyme");
6
6
 
7
7
  var _Banner = _interopRequireDefault(require("./Banner"));
8
8
 
9
- var _styles = _interopRequireDefault(require("./styles"));
10
-
11
9
  var _index = _interopRequireDefault(require("./index"));
12
10
 
13
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
12
 
15
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
-
17
- var reduceClasses = function reduceClasses(prev, curr) {
18
- return Object.assign({}, prev, _defineProperty({}, curr, curr));
19
- };
20
-
21
- var classes = Object.keys(_styles["default"]).reduce(reduceClasses, {});
22
13
  describe("Banner", function () {
23
14
  it('matches the snapshot', function () {
24
15
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Banner["default"], {
25
- classes: classes
26
- }));
16
+ onClose: function onClose() {},
17
+ cta: {
18
+ text: 'Lorem ipsum.',
19
+ onClick: function onClick() {
20
+ return alert('CTA clicked!');
21
+ }
22
+ },
23
+ theme: "info"
24
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat"));
27
25
  expect(wrapper).toMatchSnapshot();
28
26
  });
27
+ it('Has content centered', function () {
28
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Banner["default"], {
29
+ onClose: function onClose() {},
30
+ cta: {
31
+ text: 'Lorem ipsum.',
32
+ onClick: function onClick() {
33
+ return alert('CTA clicked!');
34
+ }
35
+ },
36
+ theme: "info"
37
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat"));
38
+ expect(wrapper.prop('banner')).toEqual(true);
39
+ });
40
+ it('has a close icon button', function () {
41
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Banner["default"], {
42
+ onClose: function onClose() {},
43
+ cta: {
44
+ text: 'Lorem ipsum.',
45
+ onClick: function onClick() {
46
+ return alert('CTA clicked!');
47
+ }
48
+ },
49
+ theme: "info",
50
+ testId: "banner-test"
51
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat"));
52
+ expect(wrapper.find({
53
+ "data-testid": 'banner-test__close-icon'
54
+ }).length).toBe(1);
55
+ });
56
+ it('has a link', function () {
57
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Banner["default"], {
58
+ onClose: function onClose() {},
59
+ cta: {
60
+ text: 'Lorem ipsum.',
61
+ onClick: function onClick() {
62
+ return alert('CTA clicked!');
63
+ }
64
+ },
65
+ theme: "info",
66
+ testId: "banner-test"
67
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat"));
68
+ expect(wrapper.find({
69
+ "data-testid": 'banner-test__link'
70
+ }).length).toBe(1);
71
+ });
29
72
  });
30
73
  describe("BannerJSS", function () {
31
74
  it('matches the snapshot', function () {
32
- var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index["default"], null));
75
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index["default"], {
76
+ onClose: function onClose() {},
77
+ cta: {
78
+ text: 'Lorem ipsum.',
79
+ onClick: function onClick() {
80
+ return alert('CTA clicked!');
81
+ }
82
+ },
83
+ theme: "info"
84
+ }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat"));
33
85
  expect(wrapper).toMatchSnapshot();
34
86
  });
35
- });
36
- describe("Banner styles", function () {
37
- it('matches the snapshot', function () {
38
- expect(_styles["default"]).toMatchSnapshot();
39
- });
40
87
  });