@occmundial/occ-atomic 3.0.0-beta.7 → 3.0.0-beta.71

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 (171) hide show
  1. package/CHANGELOG.md +556 -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 +63 -67
  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/Drawer/Drawer.js +40 -0
  22. package/build/{Header/Nav/Nav.js → Drawer/index.js} +54 -39
  23. package/build/Drawer/index.test.js +52 -0
  24. package/build/Drawer/styles.js +61 -0
  25. package/build/Droplist/__snapshots__/Droplist.test.js.snap +5 -5
  26. package/build/Fab/__snapshots__/Fab.test.js.snap +2 -2
  27. package/build/Footer/Footer.js +81 -87
  28. package/build/Footer/List/List.js +89 -124
  29. package/build/Footer/List/styles.js +85 -31
  30. package/build/Footer/__snapshots__/Footer.test.js.snap +109 -59
  31. package/build/Footer/styles.js +116 -51
  32. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  33. package/build/Grid/Col/styles.js +12 -6
  34. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  35. package/build/Grid/Row/styles.js +15 -5
  36. package/build/Grid/styles.js +26 -9
  37. package/build/Menu/Menu.js +96 -0
  38. package/build/Menu/index.js +34 -0
  39. package/build/Menu/styles.js +25 -0
  40. package/build/MenuDivider/MenuDivider.js +47 -0
  41. package/build/MenuDivider/index.js +18 -0
  42. package/build/MenuDivider/styles.js +21 -0
  43. package/build/MenuItem/MenuItem.js +160 -0
  44. package/build/{Header/Menu → MenuItem}/index.js +2 -2
  45. package/build/MenuItem/styles.js +25 -0
  46. package/build/MenuItemBase/MenuItemBase.js +94 -0
  47. package/build/MenuItemBase/index.js +18 -0
  48. package/build/MenuItemBase/styles.js +57 -0
  49. package/build/MenuList/MenuList.js +71 -0
  50. package/build/{Header → MenuList}/index.js +2 -2
  51. package/build/MenuList/styles.js +54 -0
  52. package/build/MenuUser/MenuUser.js +152 -0
  53. package/build/MenuUser/index.js +18 -0
  54. package/build/MenuUser/styles.js +22 -0
  55. package/build/Modal/Modal.js +94 -66
  56. package/build/Modal/Modal.test.js +14 -7
  57. package/build/Modal/__snapshots__/Modal.test.js.snap +155 -100
  58. package/build/Modal/styles.js +165 -143
  59. package/build/NavAside/NavAside.js +54 -113
  60. package/build/NavAside/NavAside.test.js +0 -57
  61. package/build/NavAside/__snapshots__/NavAside.test.js.snap +35 -43
  62. package/build/NavAside/index.js +6 -0
  63. package/build/NavAside/styles.js +45 -63
  64. package/build/NavAvatarButton/NavAvatarButton.js +134 -0
  65. package/build/{NavIcon → NavAvatarButton}/index.js +2 -2
  66. package/build/NavAvatarButton/styles.js +33 -0
  67. package/build/NavButton/NavButton.js +73 -0
  68. package/build/{Header/Nav → NavButton}/index.js +2 -2
  69. package/build/NavButton/styles.js +79 -0
  70. package/build/NavItem/styles.js +4 -4
  71. package/build/NavTab/NavTab.js +45 -32
  72. package/build/NavTab/styles.js +59 -27
  73. package/build/NavTop/styles.js +6 -6
  74. package/build/OrderBy/OrderBy.js +2 -1
  75. package/build/Pager/Page/Page.js +11 -6
  76. package/build/Pager/Page/Page.test.js +13 -9
  77. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  78. package/build/Pager/Page/styles.js +48 -14
  79. package/build/Pager/Pager.js +144 -235
  80. package/build/Pager/Pager.test.js +81 -36
  81. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  82. package/build/Pager/styles.js +5 -40
  83. package/build/Pill/Choice/Choice.js +6 -4
  84. package/build/Pill/Choice/styles.js +13 -10
  85. package/build/Pill/Group/styles.js +5 -5
  86. package/build/Pill/Stack/Stack.js +2 -2
  87. package/build/Pill/Stack/styles.js +5 -8
  88. package/build/Placeholder/Placeholder.js +29 -12
  89. package/build/Placeholder/Placeholder.test.js +4 -4
  90. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  91. package/build/Placeholder/styles.js +86 -42
  92. package/build/Provider/MenuListProvider.js +38 -0
  93. package/build/Provider/usePrevious.js +1 -1
  94. package/build/Radio/Radio.js +22 -7
  95. package/build/Radio/__snapshots__/Radio.test.js.snap +71 -79
  96. package/build/Radio/styles.js +84 -85
  97. package/build/SlideDown/SlideDown.js +167 -169
  98. package/build/SlideDown/SlideDown.test.js +49 -44
  99. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +44 -15
  100. package/build/SlideDown/styles.js +51 -20
  101. package/build/SlideToggle/SlideToggle.js +38 -6
  102. package/build/SlideToggle/SlideToggle.test.js +2 -2
  103. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +53 -38
  104. package/build/SlideToggle/styles.js +64 -45
  105. package/build/Tabs/Tab/Tab.js +73 -0
  106. package/build/Tabs/Tab/index.js +34 -0
  107. package/build/Tabs/Tab/index.test.js +132 -0
  108. package/build/Tabs/Tab/styles.js +74 -0
  109. package/build/Tabs/TabContent/TabContent.js +76 -0
  110. package/build/Tabs/TabContent/index.js +34 -0
  111. package/build/Tabs/TabContent/index.test.js +68 -0
  112. package/build/Tabs/TabContent/styles.js +23 -0
  113. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  114. package/build/Tabs/TabIndicator/index.js +34 -0
  115. package/build/Tabs/TabIndicator/styles.js +24 -0
  116. package/build/Tabs/TabList/TabList.js +108 -0
  117. package/build/Tabs/TabList/index.js +34 -0
  118. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  119. package/build/Tabs/Tabs.js +74 -0
  120. package/build/Tabs/context.js +94 -0
  121. package/build/Tabs/index.js +34 -0
  122. package/build/Tabs/index.test.js +157 -0
  123. package/build/Tabs/styles.js +19 -0
  124. package/build/Tag/Tag.js +2 -2
  125. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  126. package/build/Tag/styles.js +76 -82
  127. package/build/Text/Text.js +2 -1
  128. package/build/TextField/TextField.js +7 -6
  129. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  130. package/build/TextField/styles.js +3 -0
  131. package/build/Tip/Tip.js +62 -95
  132. package/build/Tip/Tip.test.js +29 -6
  133. package/build/Tip/TipText/index.js +32 -0
  134. package/build/Tip/__snapshots__/Tip.test.js.snap +127 -15
  135. package/build/Tip/styles.js +125 -31
  136. package/build/Toaster/Toast/Toast.js +76 -64
  137. package/build/Toaster/Toast/styles.js +118 -46
  138. package/build/Toaster/Toaster.js +3 -2
  139. package/build/Toaster/Toaster.test.js +5 -2
  140. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  141. package/build/Toaster/functions.js +4 -0
  142. package/build/Toaster/styles.js +3 -3
  143. package/build/Tooltip/Tooltip.js +73 -22
  144. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  145. package/build/Tooltip/styles.js +32 -10
  146. package/build/index.js +33 -19
  147. package/build/plugin/babel.js +0 -2
  148. package/build/subatomic/grid.js +5 -5
  149. package/build/tokens/colors.json +94 -60
  150. package/build/tokens/index.js +12 -31
  151. package/build/tokens/shadows.json +3 -3
  152. package/package.json +5 -2
  153. package/build/Banner/styles.js +0 -41
  154. package/build/Header/Header.js +0 -163
  155. package/build/Header/Header.test.js +0 -118
  156. package/build/Header/Menu/Menu.js +0 -135
  157. package/build/Header/Menu/Menu.test.js +0 -107
  158. package/build/Header/Menu/__snapshots__/Menu.test.js.snap +0 -113
  159. package/build/Header/Menu/styles.js +0 -123
  160. package/build/Header/Nav/Nav.test.js +0 -81
  161. package/build/Header/Nav/__snapshots__/Nav.test.js.snap +0 -101
  162. package/build/Header/Nav/styles.js +0 -110
  163. package/build/Header/__snapshots__/Header.test.js.snap +0 -79
  164. package/build/Header/styles.js +0 -94
  165. package/build/NavIcon/NavIcon.js +0 -112
  166. package/build/NavIcon/styles.js +0 -81
  167. package/build/Pager/Break/Break.js +0 -27
  168. package/build/Pager/Break/Break.test.js +0 -53
  169. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  170. package/build/Pager/Break/index.js +0 -18
  171. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = Drawer;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
+
14
+ function Drawer(_ref) {
15
+ var classes = _ref.classes,
16
+ header = _ref.header,
17
+ children = _ref.children,
18
+ testId = _ref.testId,
19
+ show = _ref.show,
20
+ _onAnimationEnd = _ref.onAnimationEnd;
21
+ return /*#__PURE__*/_react["default"].createElement("div", {
22
+ className: "".concat(classes.container, " ").concat(show ? classes.show : classes.hide),
23
+ onAnimationEnd: function onAnimationEnd(e) {
24
+ if (_onAnimationEnd) _onAnimationEnd(e);
25
+ },
26
+ "data-testid": testId
27
+ }, header, /*#__PURE__*/_react["default"].createElement("div", {
28
+ className: classes.content
29
+ }, children));
30
+ }
31
+
32
+ ;
33
+ Drawer.propTypes = {
34
+ classes: _propTypes["default"].object,
35
+ header: _propTypes["default"].node,
36
+ children: _propTypes["default"].node,
37
+ testId: _propTypes["default"].string,
38
+ show: _propTypes["default"].bool,
39
+ onAnimationEnd: _propTypes["default"].func
40
+ };
@@ -11,12 +11,18 @@ var _react = _interopRequireDefault(require("react"));
11
11
 
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
- var _Icon = _interopRequireDefault(require("../../Icon"));
14
+ var _reactDom = _interopRequireDefault(require("react-dom"));
15
15
 
16
- var _colors = _interopRequireDefault(require("../../subatomic/colors"));
16
+ var _reactJss = _interopRequireDefault(require("react-jss"));
17
+
18
+ var _Drawer = _interopRequireDefault(require("./Drawer"));
19
+
20
+ var _styles = _interopRequireDefault(require("./styles"));
17
21
 
18
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
23
 
24
+ 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); }
25
+
20
26
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
21
27
 
22
28
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
@@ -37,59 +43,68 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
37
43
 
38
44
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
39
45
 
40
- var Nav = /*#__PURE__*/function (_React$Component) {
41
- _inherits(Nav, _React$Component);
46
+ var Drawer = (0, _reactJss["default"])(_styles["default"])(_Drawer["default"]);
47
+
48
+ var DrawerPortal = /*#__PURE__*/function (_React$Component) {
49
+ _inherits(DrawerPortal, _React$Component);
50
+
51
+ var _super = _createSuper(DrawerPortal);
42
52
 
43
- var _super = _createSuper(Nav);
53
+ function DrawerPortal(props) {
54
+ var _this;
44
55
 
45
- function Nav() {
46
- _classCallCheck(this, Nav);
56
+ _classCallCheck(this, DrawerPortal);
47
57
 
48
- return _super.apply(this, arguments);
58
+ _this = _super.call(this, props);
59
+ _this.state = {
60
+ mount: false
61
+ };
62
+ _this.onAnimationEnd = _this.onAnimationEnd.bind(_assertThisInitialized(_this));
63
+ return _this;
49
64
  }
50
65
 
51
- _createClass(Nav, [{
52
- key: "componentDidMount",
53
- value: function componentDidMount() {
54
- if (process.env.NODE_ENV === 'development') {
55
- console.warn('DEPRECATED: The Nav component will be removed soon. Please look for another solution.');
66
+ _createClass(DrawerPortal, [{
67
+ key: "componentWillReceiveProps",
68
+ value: function componentWillReceiveProps(props) {
69
+ if (props.show && !this.props.show) {
70
+ this.setState({
71
+ mount: true
72
+ });
56
73
  }
57
74
  }
75
+ }, {
76
+ key: "onAnimationEnd",
77
+ value: function onAnimationEnd() {
78
+ this.setState({
79
+ mount: false
80
+ });
81
+ }
58
82
  }, {
59
83
  key: "render",
60
84
  value: function render() {
85
+ var mount = this.state.mount;
61
86
  var _this$props = this.props,
62
- classes = _this$props.classes,
63
- active = _this$props.active,
64
- navigate = _this$props.navigate,
65
- buttons = _this$props.buttons;
66
- return /*#__PURE__*/_react["default"].createElement("ul", {
67
- className: classes.menu
68
- }, buttons.map(function (button) {
69
- return /*#__PURE__*/_react["default"].createElement("li", {
70
- key: button.id,
71
- onClick: navigate,
72
- className: "".concat(classes.listItem, " ").concat(active == button.id ? classes.activeItem : ''),
73
- id: button.id
74
- }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
75
- iconName: button.icon,
76
- colors: active == button.id ? [_colors["default"].white] : [_colors["default"].darkBlue],
77
- className: classes.icon
78
- }), /*#__PURE__*/_react["default"].createElement("a", {
79
- className: classes.listAnchor
80
- }, button.label));
87
+ container = _this$props.container,
88
+ show = _this$props.show;
89
+
90
+ var DrawerComponent = /*#__PURE__*/_react["default"].createElement(Drawer, _extends({}, this.props, {
91
+ onAnimationEnd: !show && mount ? this.onAnimationEnd : null
81
92
  }));
93
+
94
+ if (container) {
95
+ return mount ? /*#__PURE__*/_reactDom["default"].createPortal(DrawerComponent, container) : null;
96
+ } else {
97
+ return mount ? DrawerComponent : null;
98
+ }
82
99
  }
83
100
  }]);
84
101
 
85
- return Nav;
102
+ return DrawerPortal;
86
103
  }(_react["default"].Component);
87
104
 
88
- Nav.propTypes = {
89
- classes: _propTypes["default"].object,
90
- active: _propTypes["default"].string,
91
- navigate: _propTypes["default"].func,
92
- buttons: _propTypes["default"].array
105
+ DrawerPortal.propTypes = {
106
+ show: _propTypes["default"].bool,
107
+ container: _propTypes["default"].object
93
108
  };
94
- var _default = Nav;
109
+ var _default = DrawerPortal;
95
110
  exports["default"] = _default;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _enzyme = require("enzyme");
6
+
7
+ var _Drawer = _interopRequireDefault(require("./Drawer"));
8
+
9
+ var _styles = _interopRequireDefault(require("./styles"));
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
+
13
+ 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; }
14
+
15
+ var reduceClasses = function reduceClasses(prev, curr) {
16
+ return Object.assign({}, prev, _defineProperty({}, curr, curr));
17
+ };
18
+
19
+ var classes = Object.keys(_styles["default"]).reduce(reduceClasses, {});
20
+ describe('Drawer', function () {
21
+ it('should render', function () {
22
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
23
+ classes: classes,
24
+ show: true
25
+ }, "Test"));
26
+ expect(wrapper.exists()).toBe(true);
27
+ expect(wrapper.text()).toContain('Test');
28
+ });
29
+ it('should apply the correct classes based on the show prop', function () {
30
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
31
+ classes: classes,
32
+ show: true
33
+ }, "Test"));
34
+ expect(wrapper.find('.show').exists()).toBe(true);
35
+ expect(wrapper.find('.hide').exists()).toBe(false);
36
+ wrapper.setProps({
37
+ show: false
38
+ });
39
+ expect(wrapper.find('.show').exists()).toBe(false);
40
+ expect(wrapper.find('.hide').exists()).toBe(true);
41
+ });
42
+ it('should call onAnimationEnd when animation ends', function () {
43
+ var onAnimationEndMock = jest.fn();
44
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
45
+ classes: classes,
46
+ show: true,
47
+ onAnimationEnd: onAnimationEndMock
48
+ }, "Test"));
49
+ wrapper.find('div.container').simulate('animationEnd');
50
+ expect(onAnimationEndMock).toHaveBeenCalled();
51
+ });
52
+ });
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _colors = _interopRequireDefault(require("../tokens/colors.json"));
9
+
10
+ var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
11
+
12
+ var _spacing = _interopRequireDefault(require("../tokens/spacing.json"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
16
+ var _default = {
17
+ '@global': {
18
+ body: {
19
+ overflow: 'hidden'
20
+ }
21
+ },
22
+ '@keyframes expand': {
23
+ from: {
24
+ height: 0
25
+ },
26
+ to: {
27
+ height: '100%'
28
+ }
29
+ },
30
+ '@keyframes collapse': {
31
+ from: {
32
+ height: '100%'
33
+ },
34
+ to: {
35
+ height: 0
36
+ }
37
+ },
38
+ container: {
39
+ display: 'flex',
40
+ flexDirection: 'column',
41
+ height: '100%',
42
+ width: '100%',
43
+ position: 'fixed',
44
+ top: 0,
45
+ left: 0,
46
+ zIndex: 1000,
47
+ backgroundColor: _colors["default"].bg.surface["default"],
48
+ overflow: 'hidden',
49
+ boxShadow: _shadows["default"]['elevation-elevation-3']
50
+ },
51
+ show: {
52
+ animation: 'expand 0.4s cubic-bezier(.4,0,.2,1)'
53
+ },
54
+ hide: {
55
+ animation: 'collapse 0.4s cubic-bezier(.4,0,.2,1)'
56
+ },
57
+ content: {
58
+ padding: _spacing["default"]['size-3']
59
+ }
60
+ };
61
+ exports["default"] = _default;
@@ -36,7 +36,7 @@ Object {
36
36
  "font": "400 14px/1.5 'OccText', sans-serif",
37
37
  },
38
38
  "highlighted": Object {
39
- "background": "hsl(221 91.2% 35.7% / 0.05)",
39
+ "background": "rgba(8, 60, 174, 0.05)",
40
40
  "font": "400 16px/1.5 'OccText', sans-serif",
41
41
  },
42
42
  "icon": Object {
@@ -47,10 +47,10 @@ Object {
47
47
  "& > $rightText": Object {
48
48
  "color": "#080D39",
49
49
  },
50
- "background": "hsl(221 91.2% 35.7% / 0.1)",
50
+ "background": "rgba(8, 60, 174, 0.1)",
51
51
  },
52
52
  "&:hover": Object {
53
- "background": "hsl(221 91.2% 35.7% / 0.05)",
53
+ "background": "rgba(8, 60, 174, 0.05)",
54
54
  },
55
55
  "alignItems": "center",
56
56
  "borderRadius": "4px",
@@ -77,9 +77,9 @@ Object {
77
77
  },
78
78
  "onFocus": Object {
79
79
  "&:hover": Object {
80
- "background": "hsl(221 91.2% 35.7% / 0.1)",
80
+ "background": "rgba(8, 60, 174, 0.1)",
81
81
  },
82
- "background": "hsl(221 91.2% 35.7% / 0.1)",
82
+ "background": "rgba(8, 60, 174, 0.1)",
83
83
  },
84
84
  "right": Object {
85
85
  "marginLeft": "16px",
@@ -2,11 +2,11 @@
2
2
 
3
3
  exports[`FAB matches the snapshot 1`] = `
4
4
  <button
5
- className="Button-btn-0-1-28 Button-btn-0-1-1 Button-tertiary-0-1-23 Button-tertiary-0-1-6 fab Button-iconOnly-0-1-38 Button-iconOnly-0-1-18 Button-round-0-1-40 Button-round-0-1-20"
5
+ className="Button-btn-0-1-22 Button-btn-0-1-1 Button-tertiary-0-1-27 Button-tertiary-0-1-6 fab Button-iconOnly-0-1-38 Button-iconOnly-0-1-18 Button-round-0-1-40 Button-round-0-1-20"
6
6
  disabled={false}
7
7
  >
8
8
  <span
9
- className="Button-cont-0-1-29 Button-cont-0-1-2"
9
+ className="Button-cont-0-1-23 Button-cont-0-1-2"
10
10
  >
11
11
  <span
12
12
  className="Icon-oldIcon-0-1-45 Icon-oldIcon-0-1-43 Button-icon-0-1-36 Button-icon-0-1-16"
@@ -1,118 +1,97 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports["default"] = void 0;
7
9
 
8
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
9
11
 
10
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
13
 
12
- var _Grid = _interopRequireDefault(require("../Grid"));
13
-
14
- var _WindowSize = _interopRequireDefault(require("../WindowSize"));
15
-
16
- var _Flexbox = _interopRequireDefault(require("../Flexbox"));
17
-
18
- var _grid = _interopRequireDefault(require("../subatomic/grid"));
14
+ var _Grid = _interopRequireDefault(require("./../Grid"));
19
15
 
20
16
  var _List = _interopRequireDefault(require("./List"));
21
17
 
22
- var _Text = _interopRequireDefault(require("../Text"));
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
19
 
24
- var _Button = _interopRequireDefault(require("../Button"));
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
21
 
26
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
23
 
28
24
  var itemTypes = {
29
25
  link: 'link',
30
26
  icon: 'icon',
31
27
  custom: 'custom'
32
28
  };
33
- /** Customisable footer component. This component can receive an array of columns. Those columns can contain an array of lists, and those lists can contain a title and and array of items. The items are objects that must define a type (one of 'link,', 'icon' or 'cursom').
34
- It can also receive a copy string, to show the copyright data, and an array of links to show above it.
35
- */
36
29
 
37
30
  var Footer = function Footer(_ref) {
38
- var classes = _ref.classes,
39
- columns = _ref.columns,
40
- winWidth = _ref.winWidth,
41
- bottomLinks = _ref.bottomLinks,
31
+ var _ref$columns = _ref.columns,
32
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
33
+ _ref$bottomLinks = _ref.bottomLinks,
34
+ bottomLinks = _ref$bottomLinks === void 0 ? [] : _ref$bottomLinks,
42
35
  copyText = _ref.copyText,
43
36
  aux = _ref.aux,
44
- bottomItem = _ref.bottomItem,
45
- listClassName = _ref.listClassName;
46
- var text = aux.text,
47
- icon = aux.icon,
48
- href = aux.href,
49
- target = aux.target,
50
- iconRight = aux.iconRight,
51
- auxClassName = aux.className;
52
- var isMobile = winWidth < _grid["default"].sm;
53
- return /*#__PURE__*/_react["default"].createElement("div", {
54
- className: columns.length > 0 ? classes.footer : classes.footerWithoutColumns
37
+ listClassName = _ref.listClassName,
38
+ isFluid = _ref.isFluid,
39
+ topElement = _ref.topElement,
40
+ bottomLinksClassName = _ref.bottomLinksClassName,
41
+ sectionDivider = _ref.sectionDivider,
42
+ classes = _ref.classes,
43
+ footerDivider = _ref.footerDivider,
44
+ containerDivider = _ref.containerDivider,
45
+ transparent = _ref.transparent;
46
+ return /*#__PURE__*/_react["default"].createElement("footer", {
47
+ className: "".concat(transparent ? classes.footerTransparent : classes.footer).concat(footerDivider ? " ".concat(classes.borderTop) : '')
55
48
  }, /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
56
- fluid: winWidth < _grid["default"].xl
57
- }, /*#__PURE__*/_react["default"].createElement(_Grid["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
58
- display: "flex",
59
- direction: isMobile ? 'col' : 'row',
49
+ fluid: isFluid,
50
+ className: "".concat(classes.footerContainer).concat(containerDivider ? " ".concat(classes.borderTop) : '')
51
+ }, /*#__PURE__*/(0, _react.isValidElement)(topElement) ? topElement : '', columns.length ? /*#__PURE__*/_react["default"].createElement("section", {
60
52
  className: classes.column
61
53
  }, columns.map(function (column, index) {
62
- return /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
63
- key: index,
64
- flex: "1",
65
- className: !isMobile ? classes.list : ''
54
+ return /*#__PURE__*/_react["default"].createElement("div", {
55
+ key: index
66
56
  }, column.map(function (list) {
67
57
  return /*#__PURE__*/_react["default"].createElement(_List["default"], {
68
- list: list,
69
- isMobile: isMobile,
70
58
  key: list.key,
59
+ list: list,
71
60
  listClassName: listClassName
72
61
  });
73
62
  }));
74
- })), /*#__PURE__*/_react["default"].createElement("div", {
75
- className: classes.footerBottom
76
- }, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
77
- display: "flex",
78
- alignItems: "start",
79
- className: classes.bottomWrap,
80
- direction: isMobile ? 'col' : 'row'
81
- }, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
82
- flex: "1"
83
- }, aux && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
84
- href: href,
85
- target: target,
86
- icon: icon,
87
- iconRight: iconRight,
88
- size: "md",
89
- theme: "ghostPink",
90
- className: "".concat(isMobile ? classes.buttonMobile : '', " ").concat(auxClassName)
91
- }, text), /*#__PURE__*/_react["default"].createElement(_Text["default"], {
92
- small: true,
93
- mid: true,
94
- bottomTiny: true,
95
- tag: "div"
96
- }, bottomLinks.map(function (item) {
97
- return /*#__PURE__*/_react["default"].createElement("div", {
98
- className: isMobile ? classes.mobileListElement : classes.listElement,
63
+ })) : '', sectionDivider ? /*#__PURE__*/_react["default"].createElement("div", {
64
+ className: classes.divider
65
+ }) : '', /*#__PURE__*/_react["default"].createElement("section", {
66
+ className: classes.bottomSection
67
+ }, aux ? /*#__PURE__*/_react["default"].createElement("div", {
68
+ className: classes.auxContainer
69
+ }, aux.badges ? /*#__PURE__*/_react["default"].createElement("div", {
70
+ className: classes.badgesContainer
71
+ }, aux.badges) : '', aux.socialMedia ? /*#__PURE__*/_react["default"].createElement("div", {
72
+ className: classes.socialMediaContainer
73
+ }, aux.socialMedia) : '', aux.extraContent) : '', /*#__PURE__*/_react["default"].createElement("div", {
74
+ className: classes.bottomContainer
75
+ }, /*#__PURE__*/_react["default"].createElement("div", {
76
+ className: "".concat(classes.bottomLinksContainer, " ").concat(bottomLinksClassName)
77
+ }, bottomLinks.map(function (item, index) {
78
+ return /*#__PURE__*/_react["default"].createElement(_react.Fragment, {
99
79
  key: item.key
100
- }, /*#__PURE__*/_react["default"].createElement(_Text["default"], {
101
- tag: "label",
102
- small: true,
103
- mid: true,
104
- testId: item.testId
80
+ }, index === 0 || index === bottomLinks.length ? '' : /*#__PURE__*/_react["default"].createElement("div", {
81
+ className: classes.linkDivider
82
+ }), /*#__PURE__*/_react["default"].createElement("div", {
83
+ className: classes.listElement
105
84
  }, /*#__PURE__*/_react["default"].createElement("a", {
106
85
  className: classes.link,
107
86
  href: item.href,
108
87
  target: item.target,
109
88
  rel: item.rel,
110
- onClick: item.onClick
89
+ onClick: item.onClick,
90
+ tabIndex: 0
111
91
  }, item.text)));
112
- })), copyText && /*#__PURE__*/_react["default"].createElement(_Text["default"], {
113
- small: true,
114
- mid: true
115
- }, copyText)), bottomItem)))));
92
+ })), copyText && /*#__PURE__*/_react["default"].createElement("div", {
93
+ className: classes.copyright
94
+ }, copyText)))));
116
95
  };
117
96
 
118
97
  var columnPropTypes = _propTypes["default"].arrayOf(_propTypes["default"].arrayOf(_propTypes["default"].shape({
@@ -145,32 +124,47 @@ Footer.propTypes = {
145
124
  /** Array of links to render at the bottom. */
146
125
  bottomLinks: _propTypes["default"].array,
147
126
 
148
- /** Custom component to render on the bottom left. */
149
- customBottom: _propTypes["default"].node,
150
-
151
127
  /** String or component to show as the copyright label. */
152
128
  copyText: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node]),
153
129
 
154
130
  /** Object to implement an auxiliar button on the bottom right. */
155
131
  aux: _propTypes["default"].shape({
156
- text: _propTypes["default"].string,
157
- icon: _propTypes["default"].string,
158
- href: _propTypes["default"].string,
159
- target: _propTypes["default"].string,
160
- iconRight: _propTypes["default"].string
132
+ badges: _propTypes["default"].node,
133
+ socialMedia: _propTypes["default"].node,
134
+ extraContent: _propTypes["default"].node
161
135
  }),
162
136
 
163
137
  /** Custom component to render on the bottom right, at the end of the footer */
164
138
  bottomItem: _propTypes["default"].node,
165
139
 
166
140
  /** Footer list className. */
167
- listClassName: _propTypes["default"].string
141
+ listClassName: _propTypes["default"].string,
142
+ isFluid: _propTypes["default"].bool,
143
+
144
+ /** Custom component to render at the top of the footer, commonly used for brand logo */
145
+ topElement: _propTypes["default"].node,
146
+
147
+ /** Custom classname for bottomLinks container. */
148
+ bottomLinksClassName: _propTypes["default"].string,
149
+
150
+ /** Flag to display an horizontal line between sections */
151
+ sectionDivider: _propTypes["default"].bool,
152
+
153
+ /** Flag to display a border top in footer element */
154
+ footerDivider: _propTypes["default"].bool,
155
+
156
+ /** Flag to display a border top in footer container child */
157
+ containerDivider: _propTypes["default"].bool,
158
+
159
+ /** Flag to set transparent background color to footer element */
160
+ transparent: _propTypes["default"].bool
168
161
  };
169
162
  Footer.defaultProps = {
170
163
  bottomLinks: [],
171
- columns: []
164
+ columns: [],
165
+ footerDivider: false,
166
+ containerDivider: false,
167
+ transparent: false
172
168
  };
173
-
174
- var _default = (0, _WindowSize["default"])(Footer);
175
-
169
+ var _default = Footer;
176
170
  exports["default"] = _default;