@occmundial/occ-atomic 3.0.0-beta.49 → 3.0.0-beta.50
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +7 -0
- package/build/Footer/Footer.js +63 -82
- package/build/Footer/List/List.js +89 -124
- package/build/Footer/List/styles.js +85 -31
- package/build/Footer/styles.js +120 -48
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
# [3.0.0-beta.50](https://github.com/occmundial/occ-atomic/compare/v3.0.0-beta.49...v3.0.0-beta.50) (2024-09-03)
|
2
|
+
|
3
|
+
|
4
|
+
### Features
|
5
|
+
|
6
|
+
* Update footer design and use design tokens ([2e83d4f](https://github.com/occmundial/occ-atomic/commit/2e83d4f7f135570a6c4a375c28bedab578f1a8f4))
|
7
|
+
|
1
8
|
# [3.0.0-beta.49](https://github.com/occmundial/occ-atomic/compare/v3.0.0-beta.48...v3.0.0-beta.49) (2024-08-27)
|
2
9
|
|
3
10
|
|
package/build/Footer/Footer.js
CHANGED
@@ -1,105 +1,84 @@
|
|
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 =
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
9
11
|
|
10
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
11
13
|
|
12
|
-
var _Grid = _interopRequireDefault(require("
|
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
|
-
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
23
19
|
|
24
|
-
var
|
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
|
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
|
39
|
-
columns = _ref
|
40
|
-
|
41
|
-
bottomLinks = _ref
|
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
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
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
|
+
return /*#__PURE__*/_react["default"].createElement("footer", {
|
44
|
+
className: classes.footer
|
55
45
|
}, /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
|
56
|
-
fluid:
|
57
|
-
|
58
|
-
|
59
|
-
direction: isMobile ? 'col' : 'row',
|
46
|
+
fluid: isFluid,
|
47
|
+
className: classes.footerContainer
|
48
|
+
}, /*#__PURE__*/(0, _react.isValidElement)(topElement) ? topElement : '', columns.length ? /*#__PURE__*/_react["default"].createElement("section", {
|
60
49
|
className: classes.column
|
61
50
|
}, columns.map(function (column, index) {
|
62
|
-
return /*#__PURE__*/_react["default"].createElement(
|
51
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
63
52
|
key: index,
|
64
|
-
|
65
|
-
className: !isMobile ? classes.list : ''
|
53
|
+
className: classes.listContainer
|
66
54
|
}, column.map(function (list) {
|
67
55
|
return /*#__PURE__*/_react["default"].createElement(_List["default"], {
|
68
|
-
list: list,
|
69
|
-
isMobile: isMobile,
|
70
56
|
key: list.key,
|
57
|
+
list: list,
|
71
58
|
listClassName: listClassName
|
72
59
|
});
|
73
60
|
}));
|
74
|
-
})), /*#__PURE__*/_react["default"].createElement(
|
75
|
-
|
76
|
-
|
77
|
-
className: classes.
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
small: true,
|
91
|
-
mid: true,
|
92
|
-
bottomTiny: true,
|
93
|
-
tag: "div"
|
94
|
-
}, bottomLinks.map(function (item) {
|
95
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
96
|
-
className: isMobile ? classes.mobileListElement : classes.listElement,
|
61
|
+
})) : '', sectionDivider ? /*#__PURE__*/_react["default"].createElement("div", {
|
62
|
+
className: classes.divider
|
63
|
+
}) : '', /*#__PURE__*/_react["default"].createElement("section", {
|
64
|
+
className: classes.bottomSection
|
65
|
+
}, aux ? /*#__PURE__*/_react["default"].createElement("div", {
|
66
|
+
className: classes.auxContainer
|
67
|
+
}, aux.badges ? /*#__PURE__*/_react["default"].createElement("div", {
|
68
|
+
className: classes.badgesContainer
|
69
|
+
}, aux.badges) : '', aux.socialMedia ? /*#__PURE__*/_react["default"].createElement("div", {
|
70
|
+
className: classes.socialMediaContainer
|
71
|
+
}, aux.socialMedia) : '', aux.extraContent) : '', /*#__PURE__*/_react["default"].createElement("div", {
|
72
|
+
className: classes.bottomContainer
|
73
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
74
|
+
className: "".concat(classes.bottomLinksContainer, " ").concat(bottomLinksClassName)
|
75
|
+
}, bottomLinks.map(function (item, index) {
|
76
|
+
return /*#__PURE__*/_react["default"].createElement(_react.Fragment, {
|
97
77
|
key: item.key
|
98
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
testId: item.testId
|
78
|
+
}, index === 0 || index === bottomLinks.length ? '' : /*#__PURE__*/_react["default"].createElement("div", {
|
79
|
+
className: classes.linkDivider
|
80
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
81
|
+
className: classes.listElement
|
103
82
|
}, /*#__PURE__*/_react["default"].createElement("a", {
|
104
83
|
className: classes.link,
|
105
84
|
href: item.href,
|
@@ -107,10 +86,9 @@ var Footer = function Footer(_ref) {
|
|
107
86
|
rel: item.rel,
|
108
87
|
onClick: item.onClick
|
109
88
|
}, item.text)));
|
110
|
-
})), copyText && /*#__PURE__*/_react["default"].createElement(
|
111
|
-
|
112
|
-
|
113
|
-
}, copyText)), bottomItem)));
|
89
|
+
})), copyText && /*#__PURE__*/_react["default"].createElement("div", {
|
90
|
+
className: classes.copyright
|
91
|
+
}, copyText)))));
|
114
92
|
};
|
115
93
|
|
116
94
|
var columnPropTypes = _propTypes["default"].arrayOf(_propTypes["default"].arrayOf(_propTypes["default"].shape({
|
@@ -143,32 +121,35 @@ Footer.propTypes = {
|
|
143
121
|
/** Array of links to render at the bottom. */
|
144
122
|
bottomLinks: _propTypes["default"].array,
|
145
123
|
|
146
|
-
/** Custom component to render on the bottom left. */
|
147
|
-
customBottom: _propTypes["default"].node,
|
148
|
-
|
149
124
|
/** String or component to show as the copyright label. */
|
150
125
|
copyText: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node]),
|
151
126
|
|
152
127
|
/** Object to implement an auxiliar button on the bottom right. */
|
153
128
|
aux: _propTypes["default"].shape({
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
target: _propTypes["default"].string,
|
158
|
-
iconRight: _propTypes["default"].string
|
129
|
+
badges: _propTypes["default"].node,
|
130
|
+
socialMedia: _propTypes["default"].node,
|
131
|
+
extraContent: _propTypes["default"].node
|
159
132
|
}),
|
160
133
|
|
161
134
|
/** Custom component to render on the bottom right, at the end of the footer */
|
162
135
|
bottomItem: _propTypes["default"].node,
|
163
136
|
|
164
137
|
/** Footer list className. */
|
165
|
-
listClassName: _propTypes["default"].string
|
138
|
+
listClassName: _propTypes["default"].string,
|
139
|
+
isFluid: _propTypes["default"]["boolean"],
|
140
|
+
|
141
|
+
/** Custom component to render at the top of the footer, commonly used for brand logo */
|
142
|
+
topElement: _propTypes["default"].node,
|
143
|
+
|
144
|
+
/** Custom classname for bottomLinks container. */
|
145
|
+
bottomLinksClassName: _propTypes["default"].string,
|
146
|
+
|
147
|
+
/** Flag to display an horizontal line between sections */
|
148
|
+
sectionDivider: _propTypes["default"]["boolean"]
|
166
149
|
};
|
167
150
|
Footer.defaultProps = {
|
168
151
|
bottomLinks: [],
|
169
152
|
columns: []
|
170
153
|
};
|
171
|
-
|
172
|
-
var _default = (0, _WindowSize["default"])(Footer);
|
173
|
-
|
154
|
+
var _default = Footer;
|
174
155
|
exports["default"] = _default;
|
@@ -11,13 +11,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
13
13
|
|
14
|
-
var _Text = _interopRequireDefault(require("../../Text"));
|
15
|
-
|
16
14
|
var _Icon = _interopRequireDefault(require("../../Icon"));
|
17
15
|
|
18
|
-
var _spacing = _interopRequireDefault(require("../../
|
16
|
+
var _spacing = _interopRequireDefault(require("../../tokens/spacing.json"));
|
19
17
|
|
20
|
-
var _colors = _interopRequireDefault(require("../../
|
18
|
+
var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
|
21
19
|
|
22
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
23
21
|
|
@@ -25,27 +23,17 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
25
23
|
|
26
24
|
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
25
|
|
28
|
-
function
|
29
|
-
|
30
|
-
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); } }
|
31
|
-
|
32
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
33
|
-
|
34
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
26
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
35
27
|
|
36
|
-
function
|
28
|
+
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."); }
|
37
29
|
|
38
|
-
function
|
30
|
+
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); }
|
39
31
|
|
40
|
-
function
|
32
|
+
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; }
|
41
33
|
|
42
|
-
function
|
34
|
+
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; }
|
43
35
|
|
44
|
-
function
|
45
|
-
|
46
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
47
|
-
|
48
|
-
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; }
|
36
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
49
37
|
|
50
38
|
var itemTypes = {
|
51
39
|
link: 'link',
|
@@ -53,110 +41,87 @@ var itemTypes = {
|
|
53
41
|
custom: 'custom'
|
54
42
|
};
|
55
43
|
|
56
|
-
var List =
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
});
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
listClassName = _this$props.listClassName;
|
138
|
-
var toggle = this.state.toggle;
|
139
|
-
var isCollapsible = collapse || isMobile;
|
140
|
-
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
141
|
-
onClick: isCollapsible ? this.toggleList : null,
|
142
|
-
className: "".concat(classes.title, " ").concat(isCollapsible ? classes.collapsible : '')
|
143
|
-
}, /*#__PURE__*/_react["default"].createElement(_Text["default"], {
|
144
|
-
tag: "span"
|
145
|
-
}, title), isCollapsible && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
146
|
-
iconName: "forward",
|
147
|
-
width: _spacing["default"].small,
|
148
|
-
height: _spacing["default"].small,
|
149
|
-
className: "".concat(classes.arrow, " ").concat(toggle ? classes.arrowUp : classes.arrowDown)
|
150
|
-
})), /*#__PURE__*/_react["default"].createElement("div", {
|
151
|
-
className: "".concat(classes.list, " ").concat(toggle || !isCollapsible ? classes.toggle : '', " ").concat(listClassName)
|
152
|
-
}, items.map(function (item) {
|
153
|
-
return _this2.renderItem(item);
|
154
|
-
})));
|
155
|
-
}
|
156
|
-
}]);
|
157
|
-
|
158
|
-
return List;
|
159
|
-
}(_react.Component);
|
44
|
+
var List = function List(_ref) {
|
45
|
+
var _ref$list = _ref.list,
|
46
|
+
title = _ref$list.title,
|
47
|
+
items = _ref$list.items,
|
48
|
+
listClassName = _ref.listClassName,
|
49
|
+
classes = _ref.classes;
|
50
|
+
|
51
|
+
var _useState = (0, _react.useState)(false),
|
52
|
+
_useState2 = _slicedToArray(_useState, 2),
|
53
|
+
toggle = _useState2[0],
|
54
|
+
setToggle = _useState2[1];
|
55
|
+
|
56
|
+
var _useState3 = (0, _react.useState)(false),
|
57
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
58
|
+
overflowVisible = _useState4[0],
|
59
|
+
setOverflowVisible = _useState4[1];
|
60
|
+
|
61
|
+
var toggleList = (0, _react.useCallback)(function () {
|
62
|
+
return setToggle(!toggle);
|
63
|
+
}, [toggle]);
|
64
|
+
(0, _react.useEffect)(function () {
|
65
|
+
var timeout = setTimeout(function () {
|
66
|
+
return setOverflowVisible(toggle);
|
67
|
+
}, toggle ? 200 : 0);
|
68
|
+
return function () {
|
69
|
+
return clearTimeout(timeout);
|
70
|
+
};
|
71
|
+
}, [toggle]);
|
72
|
+
var renderLink = (0, _react.useCallback)(function (item) {
|
73
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
74
|
+
key: item.key,
|
75
|
+
href: item.href,
|
76
|
+
target: item.target,
|
77
|
+
rel: item.rel,
|
78
|
+
className: classes.link,
|
79
|
+
title: item.title,
|
80
|
+
"data-testid": item.testId
|
81
|
+
}, item.text);
|
82
|
+
}, [classes]);
|
83
|
+
var renderIcon = (0, _react.useCallback)(function (item) {
|
84
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
85
|
+
key: item.key,
|
86
|
+
className: classes.iconWrapper,
|
87
|
+
title: item.title
|
88
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
89
|
+
iconName: item.iconName,
|
90
|
+
onClick: item.onClick,
|
91
|
+
color: _colors["default"].grey600,
|
92
|
+
testId: item.testId
|
93
|
+
}));
|
94
|
+
}, [classes]);
|
95
|
+
var renderCustom = (0, _react.useCallback)(function (item) {
|
96
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
97
|
+
key: item.key
|
98
|
+
}, item.custom);
|
99
|
+
}, []);
|
100
|
+
var renderItem = (0, _react.useCallback)(function (item) {
|
101
|
+
if (item.type === itemTypes.link) return renderLink(item);else if (item.type === itemTypes.icon) return renderIcon(item);else if (item.type === itemTypes.custom) return renderCustom(item);
|
102
|
+
}, [renderLink, renderIcon, renderCustom]);
|
103
|
+
return /*#__PURE__*/_react["default"].createElement(_react.Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
104
|
+
onClick: toggleList,
|
105
|
+
className: "".concat(classes.title, " ").concat(classes.collapsible),
|
106
|
+
"data-testid": "footer-list__title-".concat(title)
|
107
|
+
}, /*#__PURE__*/_react["default"].createElement("h5", {
|
108
|
+
className: classes.titleColor
|
109
|
+
}, title), /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
110
|
+
iconName: "chevron-down",
|
111
|
+
size: _spacing["default"].small,
|
112
|
+
className: "".concat(classes.arrow).concat(toggle ? " ".concat(classes.arrowUp) : '')
|
113
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
114
|
+
className: classes.titleDesktop
|
115
|
+
}, /*#__PURE__*/_react["default"].createElement("h5", {
|
116
|
+
className: classes.titleColor
|
117
|
+
}, title)), /*#__PURE__*/_react["default"].createElement("div", {
|
118
|
+
className: "".concat(classes.list).concat(toggle ? " ".concat(classes.toggle) : '').concat(listClassName ? " ".concat(listClassName) : '')
|
119
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
120
|
+
className: "".concat(classes.content).concat(toggle ? " ".concat(classes.showContent) : '').concat(overflowVisible ? " ".concat(classes.overflowVisible) : '')
|
121
|
+
}, items.map(function (item) {
|
122
|
+
return renderItem(item);
|
123
|
+
}))));
|
124
|
+
};
|
160
125
|
|
161
126
|
List.propTypes = {
|
162
127
|
classes: _propTypes["default"].object,
|
@@ -5,55 +5,109 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
-
var
|
8
|
+
var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
|
9
9
|
|
10
|
-
var
|
10
|
+
var _spacing = _interopRequireDefault(require("../../tokens/spacing.json"));
|
11
|
+
|
12
|
+
var _shadows = _interopRequireDefault(require("../../tokens/shadows.json"));
|
13
|
+
|
14
|
+
var _borderRadius = _interopRequireDefault(require("../../tokens/borderRadius.json"));
|
15
|
+
|
16
|
+
var _grid = _interopRequireDefault(require("../../subatomic/grid"));
|
17
|
+
|
18
|
+
var _fonts = _interopRequireDefault(require("../../tokens/fonts.json"));
|
19
|
+
|
20
|
+
var _styles = require("../../Text/styles");
|
11
21
|
|
12
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
13
23
|
|
24
|
+
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; }
|
25
|
+
|
14
26
|
var _default = {
|
15
|
-
list: {
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
height: 0,
|
20
|
-
transform: "translateY(".concat(-_spacing["default"].small, "px)"),
|
27
|
+
list: _defineProperty({
|
28
|
+
display: 'grid',
|
29
|
+
gridTemplateRows: '0fr',
|
30
|
+
transition: 'grid-template-rows cubic-bezier(0.25,0.46,0.45,0.94) 0.2s 0.05s, opacity cubic-bezier(0.25,0.46,0.45,0.94) 0.2s',
|
21
31
|
opacity: 0
|
22
|
-
},
|
32
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
33
|
+
opacity: 1,
|
34
|
+
gridTemplateRows: '1fr'
|
35
|
+
}),
|
23
36
|
toggle: {
|
24
|
-
height: 'auto',
|
25
|
-
transform: 'translateY(0)',
|
26
37
|
opacity: 1,
|
27
|
-
|
38
|
+
gridTemplateRows: '1fr',
|
39
|
+
transition: 'grid-template-rows cubic-bezier(0.25,0.46,0.45,0.94) 0.2s, opacity cubic-bezier(0.25,0.46,0.45,0.94) 0.2s 0.05s'
|
28
40
|
},
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
41
|
+
content: _defineProperty({
|
42
|
+
overflow: 'hidden',
|
43
|
+
transform: 'translateY(-10px)',
|
44
|
+
transition: 'transform cubic-bezier(0.25,0.46,0.45,0.94) 0.2s',
|
45
|
+
display: 'flex',
|
46
|
+
flexDirection: 'column',
|
47
|
+
rowGap: _spacing["default"]['size-4']
|
48
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
49
|
+
transform: 'translateY(0px)',
|
50
|
+
overflow: 'visible'
|
51
|
+
}),
|
52
|
+
showContent: _defineProperty({}, "@media (max-width: ".concat(_grid["default"].xs - 1, "px)"), {
|
53
|
+
transform: 'translateY(0px)',
|
54
|
+
transition: 'transform cubic-bezier(0.25,0.46,0.45,0.94) 0.2s 0.05s',
|
55
|
+
marginBottom: _spacing["default"]['size-3']
|
56
|
+
}),
|
57
|
+
overflowVisible: {
|
58
|
+
overflow: 'visible'
|
35
59
|
},
|
60
|
+
collapsible: _defineProperty({
|
61
|
+
cursor: 'pointer',
|
62
|
+
display: 'flex',
|
63
|
+
justifyContent: 'space-between'
|
64
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
65
|
+
cursor: 'default'
|
66
|
+
}),
|
67
|
+
arrow: _defineProperty({
|
68
|
+
display: 'inline-block'
|
69
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
70
|
+
display: 'none'
|
71
|
+
}),
|
36
72
|
arrowUp: {
|
37
|
-
transform: 'rotate(-
|
38
|
-
},
|
39
|
-
arrowDown: {
|
40
|
-
transform: 'rotate(90deg)'
|
73
|
+
transform: 'rotate(-180deg)'
|
41
74
|
},
|
42
75
|
link: {
|
43
|
-
|
76
|
+
font: (0, _styles.parseFontValue)(_fonts["default"]['body-regular']),
|
77
|
+
color: _colors["default"].text.corp.secondary,
|
44
78
|
textDecoration: 'none',
|
45
|
-
'
|
46
|
-
|
79
|
+
transition: 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s',
|
80
|
+
'&:hover': {
|
81
|
+
color: _colors["default"].text.corp.primary
|
82
|
+
},
|
83
|
+
'&:focus-visible': {
|
84
|
+
color: _colors["default"].text.corp.primary,
|
85
|
+
boxShadow: _shadows["default"]['focus-corp'],
|
86
|
+
borderRadius: _borderRadius["default"]['br-xs'],
|
87
|
+
outline: 0
|
47
88
|
}
|
48
89
|
},
|
49
|
-
icon: {},
|
50
90
|
iconWrapper: {
|
51
|
-
marginBottom: _spacing["default"]
|
52
|
-
marginRight: _spacing["default"]
|
91
|
+
marginBottom: _spacing["default"]['size-2'],
|
92
|
+
marginRight: _spacing["default"]['size-2'],
|
53
93
|
display: 'inline-block'
|
54
94
|
},
|
55
|
-
title: {
|
56
|
-
|
57
|
-
}
|
95
|
+
title: _defineProperty({
|
96
|
+
padding: [_spacing["default"]['size-4'], 0]
|
97
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
98
|
+
display: 'none',
|
99
|
+
padding: 0,
|
100
|
+
marginBottom: _spacing["default"]['size-5']
|
101
|
+
}),
|
102
|
+
titleColor: {
|
103
|
+
font: (0, _styles.parseFontValue)(_fonts["default"]['heading-h5']),
|
104
|
+
margin: 0
|
105
|
+
},
|
106
|
+
titleDesktop: _defineProperty({
|
107
|
+
display: 'none'
|
108
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
109
|
+
marginBottom: _spacing["default"]['size-5'],
|
110
|
+
display: 'block'
|
111
|
+
})
|
58
112
|
};
|
59
113
|
exports["default"] = _default;
|
package/build/Footer/styles.js
CHANGED
@@ -5,72 +5,144 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
-
var
|
8
|
+
var _colors = _interopRequireDefault(require("../tokens/colors.json"));
|
9
9
|
|
10
|
-
var
|
10
|
+
var _spacing = _interopRequireDefault(require("../tokens/spacing.json"));
|
11
|
+
|
12
|
+
var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
|
13
|
+
|
14
|
+
var _borderRadius = _interopRequireDefault(require("../tokens/borderRadius.json"));
|
11
15
|
|
12
16
|
var _grid = _interopRequireDefault(require("../subatomic/grid"));
|
13
17
|
|
18
|
+
var _fonts = _interopRequireDefault(require("../tokens/fonts.json"));
|
19
|
+
|
20
|
+
var _styles = require("../Text/styles");
|
21
|
+
|
22
|
+
var _footerContainer, _column, _listContainer;
|
23
|
+
|
14
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
15
25
|
|
16
26
|
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; }
|
17
27
|
|
18
28
|
var _default = {
|
19
|
-
footer:
|
20
|
-
backgroundColor: _colors["default"].
|
21
|
-
|
22
|
-
|
23
|
-
padding: [_spacing["default"].medium, 0, _spacing["default"].medium]
|
24
|
-
}),
|
25
|
-
footerWithoutColumns: _defineProperty({
|
26
|
-
backgroundColor: _colors["default"].bgGrey,
|
27
|
-
padding: [0, 0, _spacing["default"].medium]
|
28
|
-
}, "@media (min-width: ".concat(_grid["default"].md, "px)"), {
|
29
|
-
padding: [0, 0, _spacing["default"].medium]
|
30
|
-
}),
|
31
|
-
column: {
|
32
|
-
paddingBottom: _spacing["default"].small
|
33
|
-
},
|
34
|
-
list: {
|
35
|
-
'&:not(:first-child)': {
|
36
|
-
marginLeft: _spacing["default"].small
|
37
|
-
}
|
29
|
+
footer: {
|
30
|
+
backgroundColor: _colors["default"].bg.surface["default"],
|
31
|
+
borderTop: "1px solid ".concat(_colors["default"].border["default"].subtle),
|
32
|
+
padding: [_spacing["default"]['size-7'], 0]
|
38
33
|
},
|
34
|
+
footerContainer: (_footerContainer = {
|
35
|
+
display: 'flex',
|
36
|
+
flexDirection: 'column',
|
37
|
+
rowGap: _spacing["default"]['size-5']
|
38
|
+
}, _defineProperty(_footerContainer, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
39
|
+
rowGap: _spacing["default"]['size-7']
|
40
|
+
}), _defineProperty(_footerContainer, "@media (min-width: ".concat(_grid["default"].md, "px)"), {
|
41
|
+
rowGap: _spacing["default"]['size-8']
|
42
|
+
}), _footerContainer),
|
43
|
+
column: (_column = {
|
44
|
+
display: 'flex',
|
45
|
+
flexDirection: 'column',
|
46
|
+
flexWrap: 'wrap'
|
47
|
+
}, _defineProperty(_column, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
48
|
+
flexDirection: 'row',
|
49
|
+
columnGap: _spacing["default"]['size-4'],
|
50
|
+
rowGap: _spacing["default"]['size-7']
|
51
|
+
}), _defineProperty(_column, "@media (min-width: ".concat(_grid["default"].md, "px)"), {
|
52
|
+
columnGap: _spacing["default"]['size-5'],
|
53
|
+
rowGap: 0
|
54
|
+
}), _column),
|
39
55
|
link: {
|
40
|
-
|
56
|
+
font: (0, _styles.parseFontValue)(_fonts["default"]['body-regular']),
|
57
|
+
color: _colors["default"].text.corp.secondary,
|
41
58
|
textDecoration: 'none',
|
42
|
-
|
43
|
-
'&:hover
|
44
|
-
color: _colors["default"].
|
45
|
-
}
|
46
|
-
},
|
47
|
-
listElement: {
|
48
|
-
paddingLeft: _spacing["default"].small,
|
49
|
-
paddingRight: _spacing["default"].small,
|
50
|
-
position: 'relative',
|
51
|
-
display: 'inline-block',
|
52
|
-
'&:first-child': {
|
53
|
-
paddingLeft: 0
|
59
|
+
transition: 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s',
|
60
|
+
'&:hover': {
|
61
|
+
color: _colors["default"].text.corp.primary
|
54
62
|
},
|
55
|
-
'&:
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
}
|
63
|
+
'&:focus-visible': {
|
64
|
+
color: _colors["default"].text.corp.primary,
|
65
|
+
boxShadow: _shadows["default"]['focus-corp'],
|
66
|
+
borderRadius: _borderRadius["default"]['br-xs'],
|
67
|
+
outline: 0
|
61
68
|
}
|
62
69
|
},
|
63
|
-
|
64
|
-
paddingLeft: 0,
|
70
|
+
listElement: _defineProperty({
|
65
71
|
display: 'block',
|
66
|
-
|
72
|
+
textAlign: 'center'
|
73
|
+
}, "@media (min-width: ".concat(_grid["default"].sm, "px)"), {
|
74
|
+
position: 'relative',
|
75
|
+
display: 'inline-block'
|
76
|
+
}),
|
77
|
+
listContainer: (_listContainer = {
|
78
|
+
flexBasis: '100%'
|
79
|
+
}, _defineProperty(_listContainer, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
80
|
+
flexBasis: "calc(50% - ".concat(_spacing["default"]['size-4'], ")")
|
81
|
+
}), _defineProperty(_listContainer, "@media (min-width: ".concat(_grid["default"].md, "px)"), {
|
82
|
+
flexBasis: "calc(25% - ".concat(_spacing["default"]['size-5'], ")")
|
83
|
+
}), _listContainer),
|
84
|
+
bottomSection: {
|
85
|
+
display: 'flex',
|
86
|
+
flexDirection: 'column',
|
87
|
+
rowGap: _spacing["default"]['size-7']
|
88
|
+
},
|
89
|
+
bottomLinksContainer: _defineProperty({
|
90
|
+
display: 'flex',
|
91
|
+
flexDirection: 'column',
|
92
|
+
justifyContent: 'center',
|
93
|
+
columnGap: _spacing["default"]['size-5'],
|
94
|
+
rowGap: _spacing["default"]['size-4']
|
95
|
+
}, "@media (min-width: ".concat(_grid["default"].sm, "px)"), {
|
96
|
+
flexDirection: 'row',
|
97
|
+
alignItems: 'stretch'
|
98
|
+
}),
|
99
|
+
linkDivider: _defineProperty({
|
100
|
+
width: 1,
|
101
|
+
margin: [_spacing["default"]['size-0'], 0],
|
102
|
+
backgroundColor: _colors["default"].border["default"].bold,
|
103
|
+
alignSelf: 'stretch',
|
104
|
+
display: 'none'
|
105
|
+
}, "@media (min-width: ".concat(_grid["default"].sm, "px)"), {
|
106
|
+
display: 'block'
|
107
|
+
}),
|
108
|
+
copyright: {
|
109
|
+
font: (0, _styles.parseFontValue)(_fonts["default"]['body-regular']),
|
110
|
+
color: _colors["default"].text.corp.secondary,
|
111
|
+
'& > p': {
|
112
|
+
margin: 0
|
113
|
+
}
|
67
114
|
},
|
68
|
-
|
69
|
-
|
70
|
-
|
115
|
+
bottomContainer: _defineProperty({
|
116
|
+
display: 'flex',
|
117
|
+
flexDirection: 'column',
|
118
|
+
rowGap: _spacing["default"]['size-4']
|
119
|
+
}, "@media (min-width: ".concat(_grid["default"].sm, "px)"), {
|
120
|
+
rowGap: _spacing["default"]['size-5']
|
121
|
+
}),
|
122
|
+
divider: {
|
123
|
+
borderTop: "1px solid ".concat(_colors["default"].border["default"].subtle)
|
71
124
|
},
|
72
|
-
|
73
|
-
|
125
|
+
auxContainer: _defineProperty({
|
126
|
+
display: 'flex',
|
127
|
+
alignItems: 'center',
|
128
|
+
justifyContent: 'center',
|
129
|
+
flexDirection: 'column',
|
130
|
+
gap: _spacing["default"]['size-5']
|
131
|
+
}, "@media (min-width: ".concat(_grid["default"].md, "px)"), {
|
132
|
+
flexDirection: 'row',
|
133
|
+
gap: _spacing["default"]['size-9']
|
134
|
+
}),
|
135
|
+
badgesContainer: _defineProperty({
|
136
|
+
display: 'flex',
|
137
|
+
gap: _spacing["default"]['size-4'],
|
138
|
+
flexDirection: 'column'
|
139
|
+
}, "@media (min-width: ".concat(_grid["default"].xs, "px)"), {
|
140
|
+
flexDirection: 'row'
|
141
|
+
}),
|
142
|
+
socialMediaContainer: {
|
143
|
+
display: 'flex',
|
144
|
+
direction: 'row',
|
145
|
+
columnGap: _spacing["default"]['size-1']
|
74
146
|
}
|
75
147
|
};
|
76
148
|
exports["default"] = _default;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@occmundial/occ-atomic",
|
3
|
-
"version": "3.0.0-beta.
|
3
|
+
"version": "3.0.0-beta.50",
|
4
4
|
"description": "Collection of shareable styled React components for OCC applications.",
|
5
5
|
"homepage": "http://occmundial.github.io/occ-atomic",
|
6
6
|
"main": "build/index.js",
|