@twreporter/universal-header 2.2.15-rc.2 → 2.3.0-rc.1
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.
- package/CHANGELOG.md +24 -0
- package/lib/components/action-button-old.js +218 -0
- package/lib/components/action-button.js +68 -143
- package/lib/components/action-button.stories.js +125 -0
- package/lib/components/channels-old.js +420 -0
- package/lib/components/channels.js +49 -381
- package/lib/components/channels.stories.js +44 -0
- package/lib/components/header-old.js +274 -0
- package/lib/components/header.js +83 -209
- package/lib/components/header.stories.js +64 -0
- package/lib/components/icons-old.js +274 -0
- package/lib/components/icons.js +174 -208
- package/lib/components/icons.stories.js +59 -0
- package/lib/components/slogan-old.js +57 -0
- package/lib/components/slogan.js +22 -29
- package/lib/components/slogan.stories.js +38 -0
- package/lib/constants/actions-old.js +35 -0
- package/lib/constants/actions.js +13 -12
- package/lib/containers/header-old.js +389 -0
- package/lib/containers/header.js +11 -104
- package/lib/index.js +9 -2
- package/lib/utils/links.js +14 -4
- package/lib/utils/theme.js +20 -1
- package/package.json +19 -5
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,30 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [2.3.0-rc.1](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/universal-header@2.3.0-rc.0...@twreporter/universal-header@2.3.0-rc.1) (2022-10-21)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @twreporter/universal-header
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [2.3.0-rc.0](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/universal-header@2.2.15-rc.2...@twreporter/universal-header@2.3.0-rc.0) (2022-10-12)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* address review comment ([2cf0499](https://github.com/twreporter/twreporter-npm-packages/commit/2cf04990d34e0f26c7aee5519fb120ce99c12776))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Features
|
|
23
|
+
|
|
24
|
+
* add new info structure desktop header ([855aa82](https://github.com/twreporter/twreporter-npm-packages/commit/855aa8288116610592452e66827f8421b9a99c7e))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
6
30
|
## [2.2.15-rc.2](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/universal-header@2.2.15-rc.1...@twreporter/universal-header@2.2.15-rc.2) (2022-09-27)
|
|
7
31
|
|
|
8
32
|
**Note:** Version bump only for package @twreporter/universal-header
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
|
+
|
|
14
|
+
var _headerContext = _interopRequireDefault(require("../contexts/header-context"));
|
|
15
|
+
|
|
16
|
+
var _links = _interopRequireDefault(require("../utils/links"));
|
|
17
|
+
|
|
18
|
+
var _theme = _interopRequireDefault(require("../utils/theme"));
|
|
19
|
+
|
|
20
|
+
var _fonts = _interopRequireDefault(require("../constants/fonts"));
|
|
21
|
+
|
|
22
|
+
var _actionsOld = require("../constants/actions-old");
|
|
23
|
+
|
|
24
|
+
var _customizedLink = _interopRequireDefault(require("./customized-link"));
|
|
25
|
+
|
|
26
|
+
var _css = require("@twreporter/core/lib/utils/css");
|
|
27
|
+
|
|
28
|
+
var _mediaQuery = _interopRequireDefault(require("@twreporter/core/lib/utils/media-query"));
|
|
29
|
+
|
|
30
|
+
var _color = require("@twreporter/core/lib/constants/color");
|
|
31
|
+
|
|
32
|
+
var _map = _interopRequireDefault(require("lodash/map"));
|
|
33
|
+
|
|
34
|
+
var _excluded = ["actions", "direction"];
|
|
35
|
+
|
|
36
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
37
|
+
|
|
38
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
39
|
+
|
|
40
|
+
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); }
|
|
41
|
+
|
|
42
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
43
|
+
|
|
44
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
45
|
+
|
|
46
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
47
|
+
|
|
48
|
+
var _ = {
|
|
49
|
+
map: _map["default"]
|
|
50
|
+
};
|
|
51
|
+
var styles = {
|
|
52
|
+
itemWidth: {
|
|
53
|
+
mobile: {
|
|
54
|
+
row: '48px',
|
|
55
|
+
column: '100%'
|
|
56
|
+
},
|
|
57
|
+
tablet: {
|
|
58
|
+
row: '70px',
|
|
59
|
+
column: '100%'
|
|
60
|
+
},
|
|
61
|
+
desktop: '70px'
|
|
62
|
+
},
|
|
63
|
+
itemHeight: {
|
|
64
|
+
mobile: {
|
|
65
|
+
row: 24,
|
|
66
|
+
// px
|
|
67
|
+
column: 40 // px
|
|
68
|
+
|
|
69
|
+
},
|
|
70
|
+
tablet: {
|
|
71
|
+
row: 30,
|
|
72
|
+
// px
|
|
73
|
+
column: 40 // px
|
|
74
|
+
|
|
75
|
+
},
|
|
76
|
+
desktop: 30 // px
|
|
77
|
+
|
|
78
|
+
},
|
|
79
|
+
itemMargin: {
|
|
80
|
+
row: [0, 0, 0, 10],
|
|
81
|
+
// px
|
|
82
|
+
column: [7, 0, 0, 0] // px
|
|
83
|
+
|
|
84
|
+
},
|
|
85
|
+
fontSize: {
|
|
86
|
+
mobile: {
|
|
87
|
+
row: _fonts["default"].size.small,
|
|
88
|
+
column: _fonts["default"].size.medium
|
|
89
|
+
},
|
|
90
|
+
tablet: {
|
|
91
|
+
row: _fonts["default"].size.base,
|
|
92
|
+
column: _fonts["default"].size.medium
|
|
93
|
+
},
|
|
94
|
+
desktop: _fonts["default"].size.base
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
var ActionsContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
|
99
|
+
displayName: "action-button-old__ActionsContainer",
|
|
100
|
+
componentId: "sc-1lcbmya-0"
|
|
101
|
+
})(["display:flex;align-items:center;flex-direction:", ";width:100%;"], function (props) {
|
|
102
|
+
return props.direction;
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
var ActionContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
|
106
|
+
displayName: "action-button-old__ActionContainer",
|
|
107
|
+
componentId: "sc-1lcbmya-1"
|
|
108
|
+
})(["transition:opacity 0.1s;transition-delay:300ms;opacity:", ";pointer-events:", ";margin:", ";width:100%;&:first-child{margin-top:0;margin-left:0;}a,a:link,a:visited{color:", ";font-size:", ";font-weight:", ";", " ", "}"], function (props) {
|
|
109
|
+
return props.isActive ? 1 : 0;
|
|
110
|
+
}, function (props) {
|
|
111
|
+
return props.isActive ? 'auto' : 'none';
|
|
112
|
+
}, function (props) {
|
|
113
|
+
return (0, _css.arrayToCssShorthand)(styles.itemMargin[props.direction]);
|
|
114
|
+
}, function (props) {
|
|
115
|
+
return props.color || 'white';
|
|
116
|
+
}, styles.fontSize.desktop, _fonts["default"].weight.bold, _mediaQuery["default"].tabletOnly(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n cursor: default;\n font-size: ", ";\n "])), function (props) {
|
|
117
|
+
return styles.fontSize.tablet[props.direction];
|
|
118
|
+
}), _mediaQuery["default"].mobileOnly(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n cursor: default;\n font-size: ", ";\n "])), function (props) {
|
|
119
|
+
return styles.fontSize.mobile[props.direction];
|
|
120
|
+
}));
|
|
121
|
+
|
|
122
|
+
var ActionItem = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
|
123
|
+
displayName: "action-button-old__ActionItem",
|
|
124
|
+
componentId: "sc-1lcbmya-2"
|
|
125
|
+
})(["background-color:", ";width:", ";max-width:316px;height:", "px;border-radius:50px;display:flex;align-items:center;justify-content:center;margin:0 auto;&:hover{background-color:", ";}", " ", ""], function (props) {
|
|
126
|
+
return props.bgColor || _color.colorBrand.heavy;
|
|
127
|
+
}, styles.itemWidth.desktop, styles.itemHeight.desktop, function (props) {
|
|
128
|
+
return props.hoverBgColor || _color.colorBrand.heavy;
|
|
129
|
+
}, _mediaQuery["default"].tabletOnly(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n height: ", "px;\n width: ", ";\n "])), function (props) {
|
|
130
|
+
return styles.itemHeight.tablet[props.direction];
|
|
131
|
+
}, function (props) {
|
|
132
|
+
return styles.itemWidth.tablet[props.direction];
|
|
133
|
+
}), _mediaQuery["default"].mobileOnly(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n height: ", "px;\n width: ", ";\n "])), function (props) {
|
|
134
|
+
return styles.itemHeight.mobile[props.direction];
|
|
135
|
+
}, function (props) {
|
|
136
|
+
return styles.itemWidth.mobile[props.direction];
|
|
137
|
+
}));
|
|
138
|
+
|
|
139
|
+
var ActionButtonItem = function ActionButtonItem(_ref) {
|
|
140
|
+
var _action$active;
|
|
141
|
+
|
|
142
|
+
var action = _ref.action,
|
|
143
|
+
direction = _ref.direction,
|
|
144
|
+
themeFunction = _ref.themeFunction,
|
|
145
|
+
callback = _ref.callback;
|
|
146
|
+
var actionKey = action.key;
|
|
147
|
+
var isActive = (_action$active = action.active) !== null && _action$active !== void 0 ? _action$active : true;
|
|
148
|
+
var actionLabel = _actionsOld.actionLabels[actionKey];
|
|
149
|
+
|
|
150
|
+
var actionLink = _links["default"].getActionLinks()[actionKey];
|
|
151
|
+
|
|
152
|
+
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Consumer, null, function (_ref2) {
|
|
153
|
+
var theme = _ref2.theme;
|
|
154
|
+
|
|
155
|
+
var _themeFunction = themeFunction(theme),
|
|
156
|
+
color = _themeFunction.color,
|
|
157
|
+
bgColor = _themeFunction.bgColor,
|
|
158
|
+
hoverBgColor = _themeFunction.hoverBgColor;
|
|
159
|
+
|
|
160
|
+
return /*#__PURE__*/_react["default"].createElement(ActionContainer, {
|
|
161
|
+
color: color,
|
|
162
|
+
direction: direction,
|
|
163
|
+
isActive: isActive,
|
|
164
|
+
onClick: callback
|
|
165
|
+
}, /*#__PURE__*/_react["default"].createElement(_customizedLink["default"], actionLink, /*#__PURE__*/_react["default"].createElement(ActionItem, {
|
|
166
|
+
direction: direction,
|
|
167
|
+
bgColor: bgColor,
|
|
168
|
+
hoverBgColor: hoverBgColor
|
|
169
|
+
}, actionLabel)));
|
|
170
|
+
});
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
ActionButtonItem.propTypes = {
|
|
174
|
+
action: _propTypes["default"].shape({
|
|
175
|
+
key: _propTypes["default"].string,
|
|
176
|
+
active: _propTypes["default"]["boolean"]
|
|
177
|
+
}),
|
|
178
|
+
direction: _propTypes["default"].string,
|
|
179
|
+
themeFunction: _propTypes["default"].func,
|
|
180
|
+
callback: _propTypes["default"].func
|
|
181
|
+
};
|
|
182
|
+
ActionButtonItem.defaultProps = {
|
|
183
|
+
action: {},
|
|
184
|
+
direction: 'row',
|
|
185
|
+
themeFunction: _theme["default"].selectActionButtonTheme,
|
|
186
|
+
callback: function callback() {}
|
|
187
|
+
};
|
|
188
|
+
|
|
189
|
+
var ActionButton = function ActionButton(_ref3) {
|
|
190
|
+
var actions = _ref3.actions,
|
|
191
|
+
direction = _ref3.direction,
|
|
192
|
+
rest = _objectWithoutProperties(_ref3, _excluded);
|
|
193
|
+
|
|
194
|
+
return /*#__PURE__*/_react["default"].createElement(ActionsContainer, {
|
|
195
|
+
direction: direction
|
|
196
|
+
}, _.map(actions, function (action) {
|
|
197
|
+
return /*#__PURE__*/_react["default"].createElement(ActionButtonItem, _extends({
|
|
198
|
+
action: action,
|
|
199
|
+
direction: direction,
|
|
200
|
+
key: action.key
|
|
201
|
+
}, rest));
|
|
202
|
+
}));
|
|
203
|
+
};
|
|
204
|
+
|
|
205
|
+
ActionButton.propTypes = {
|
|
206
|
+
actions: _propTypes["default"].arrayOf(_propTypes["default"].shape(ActionButtonItem.propTypes)),
|
|
207
|
+
direction: _propTypes["default"].string,
|
|
208
|
+
themeFunction: _propTypes["default"].func,
|
|
209
|
+
callback: _propTypes["default"].func
|
|
210
|
+
};
|
|
211
|
+
ActionButton.defaultProps = {
|
|
212
|
+
actions: [],
|
|
213
|
+
direction: 'row',
|
|
214
|
+
themeFunction: _theme["default"].selectActionButtonTheme,
|
|
215
|
+
callback: function callback() {}
|
|
216
|
+
};
|
|
217
|
+
var _default = ActionButton;
|
|
218
|
+
exports["default"] = _default;
|
|
@@ -1,11 +1,13 @@
|
|
|
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
|
|
|
@@ -13,183 +15,113 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
13
15
|
|
|
14
16
|
var _headerContext = _interopRequireDefault(require("../contexts/header-context"));
|
|
15
17
|
|
|
16
|
-
var _links =
|
|
17
|
-
|
|
18
|
-
var _theme = _interopRequireDefault(require("../utils/theme"));
|
|
19
|
-
|
|
20
|
-
var _fonts = _interopRequireDefault(require("../constants/fonts"));
|
|
18
|
+
var _links = require("../utils/links");
|
|
21
19
|
|
|
22
20
|
var _actions = require("../constants/actions");
|
|
23
21
|
|
|
24
|
-
var _customizedLink = _interopRequireDefault(require("
|
|
22
|
+
var _customizedLink = _interopRequireDefault(require("@twreporter/react-components/lib/customized-link"));
|
|
25
23
|
|
|
26
24
|
var _css = require("@twreporter/core/lib/utils/css");
|
|
27
25
|
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
var _color = require("@twreporter/core/lib/constants/color");
|
|
26
|
+
var _button = require("@twreporter/react-components/lib/button");
|
|
31
27
|
|
|
32
28
|
var _map = _interopRequireDefault(require("lodash/map"));
|
|
33
29
|
|
|
34
|
-
var _excluded = ["actions", "direction"];
|
|
35
|
-
|
|
36
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
30
|
+
var _excluded = ["actions", "direction", "callback"];
|
|
37
31
|
|
|
38
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
39
33
|
|
|
34
|
+
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); }
|
|
35
|
+
|
|
36
|
+
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; }
|
|
37
|
+
|
|
40
38
|
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); }
|
|
41
39
|
|
|
42
40
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
43
41
|
|
|
44
42
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
45
43
|
|
|
46
|
-
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
47
|
-
|
|
48
44
|
var _ = {
|
|
49
45
|
map: _map["default"]
|
|
50
|
-
};
|
|
46
|
+
}; // global var
|
|
47
|
+
|
|
48
|
+
var defaultFunc = function defaultFunc() {};
|
|
49
|
+
|
|
51
50
|
var styles = {
|
|
52
|
-
itemWidth: {
|
|
53
|
-
mobile: {
|
|
54
|
-
row: '48px',
|
|
55
|
-
column: '100%'
|
|
56
|
-
},
|
|
57
|
-
tablet: {
|
|
58
|
-
row: '70px',
|
|
59
|
-
column: '100%'
|
|
60
|
-
},
|
|
61
|
-
desktop: '70px'
|
|
62
|
-
},
|
|
63
|
-
itemHeight: {
|
|
64
|
-
mobile: {
|
|
65
|
-
row: 24,
|
|
66
|
-
// px
|
|
67
|
-
column: 40 // px
|
|
68
|
-
|
|
69
|
-
},
|
|
70
|
-
tablet: {
|
|
71
|
-
row: 30,
|
|
72
|
-
// px
|
|
73
|
-
column: 40 // px
|
|
74
|
-
|
|
75
|
-
},
|
|
76
|
-
desktop: 30 // px
|
|
77
|
-
|
|
78
|
-
},
|
|
79
51
|
itemMargin: {
|
|
80
|
-
row: [0, 0, 0,
|
|
52
|
+
row: [0, 0, 0, 16],
|
|
81
53
|
// px
|
|
82
|
-
column: [
|
|
83
|
-
|
|
84
|
-
},
|
|
85
|
-
fontSize: {
|
|
86
|
-
mobile: {
|
|
87
|
-
row: _fonts["default"].size.small,
|
|
88
|
-
column: _fonts["default"].size.medium
|
|
89
|
-
},
|
|
90
|
-
tablet: {
|
|
91
|
-
row: _fonts["default"].size.base,
|
|
92
|
-
column: _fonts["default"].size.medium
|
|
93
|
-
},
|
|
94
|
-
desktop: _fonts["default"].size.base
|
|
54
|
+
column: [16, 0, 0, 0] // px
|
|
55
|
+
|
|
95
56
|
}
|
|
96
57
|
};
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
displayName: "action-button__ActionsContainer",
|
|
58
|
+
var StyledPillButton = /*#__PURE__*/(0, _styledComponents["default"])(_button.PillButton).withConfig({
|
|
59
|
+
displayName: "action-button__StyledPillButton",
|
|
100
60
|
componentId: "sc-4wc24t-0"
|
|
101
|
-
})(["
|
|
102
|
-
return props.direction;
|
|
61
|
+
})(["justify-content:center;", ""], function (props) {
|
|
62
|
+
return props.direction === 'column' ? 'width: auto;' : '';
|
|
103
63
|
});
|
|
104
64
|
|
|
105
|
-
var
|
|
106
|
-
displayName: "action-
|
|
65
|
+
var ActionItem = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
|
66
|
+
displayName: "action-button__ActionItem",
|
|
107
67
|
componentId: "sc-4wc24t-1"
|
|
108
|
-
})(["
|
|
109
|
-
return props.isActive ? 1 : 0;
|
|
110
|
-
}, function (props) {
|
|
111
|
-
return props.isActive ? 'auto' : 'none';
|
|
112
|
-
}, function (props) {
|
|
68
|
+
})(["display:flex;align-items:center;justify-content:center;margin:", ";&:first-child{margin-top:0;margin-left:0;}a{text-decoration:none;}"], function (props) {
|
|
113
69
|
return (0, _css.arrayToCssShorthand)(styles.itemMargin[props.direction]);
|
|
114
|
-
}
|
|
115
|
-
return props.color || 'white';
|
|
116
|
-
}, styles.fontSize.desktop, _fonts["default"].weight.bold, _mediaQuery["default"].tabletOnly(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n cursor: default;\n font-size: ", ";\n "])), function (props) {
|
|
117
|
-
return styles.fontSize.tablet[props.direction];
|
|
118
|
-
}), _mediaQuery["default"].mobileOnly(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n cursor: default;\n font-size: ", ";\n "])), function (props) {
|
|
119
|
-
return styles.fontSize.mobile[props.direction];
|
|
120
|
-
}));
|
|
70
|
+
});
|
|
121
71
|
|
|
122
|
-
var
|
|
123
|
-
displayName: "action-
|
|
72
|
+
var ActionsContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
|
73
|
+
displayName: "action-button__ActionsContainer",
|
|
124
74
|
componentId: "sc-4wc24t-2"
|
|
125
|
-
})(["
|
|
126
|
-
return props.
|
|
127
|
-
},
|
|
128
|
-
return props.
|
|
129
|
-
}
|
|
130
|
-
return styles.itemHeight.tablet[props.direction];
|
|
131
|
-
}, function (props) {
|
|
132
|
-
return styles.itemWidth.tablet[props.direction];
|
|
133
|
-
}), _mediaQuery["default"].mobileOnly(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n height: ", "px;\n width: ", ";\n "])), function (props) {
|
|
134
|
-
return styles.itemHeight.mobile[props.direction];
|
|
135
|
-
}, function (props) {
|
|
136
|
-
return styles.itemWidth.mobile[props.direction];
|
|
137
|
-
}));
|
|
75
|
+
})(["display:flex;align-items:center;flex-direction:", ";&,", ",a{", "}"], function (props) {
|
|
76
|
+
return props.direction;
|
|
77
|
+
}, ActionItem, function (props) {
|
|
78
|
+
return props.direction === 'column' ? 'width: 100%;' : '';
|
|
79
|
+
});
|
|
138
80
|
|
|
139
81
|
var ActionButtonItem = function ActionButtonItem(_ref) {
|
|
140
|
-
var
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
direction = _ref
|
|
144
|
-
|
|
145
|
-
callback = _ref
|
|
146
|
-
var actionKey = action.key;
|
|
147
|
-
var isActive = (_action$active = action.active) !== null && _action$active !== void 0 ? _action$active : true;
|
|
148
|
-
var actionLabel = _actions.actionLabels[actionKey];
|
|
82
|
+
var _ref$action = _ref.action,
|
|
83
|
+
action = _ref$action === void 0 ? {} : _ref$action,
|
|
84
|
+
_ref$direction = _ref.direction,
|
|
85
|
+
direction = _ref$direction === void 0 ? 'row' : _ref$direction,
|
|
86
|
+
_ref$callback = _ref.callback,
|
|
87
|
+
callback = _ref$callback === void 0 ? defaultFunc : _ref$callback;
|
|
149
88
|
|
|
150
|
-
var
|
|
89
|
+
var _useContext = (0, _react.useContext)(_headerContext["default"]),
|
|
90
|
+
theme = _useContext.theme;
|
|
151
91
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
bgColor: bgColor,
|
|
168
|
-
hoverBgColor: hoverBgColor
|
|
169
|
-
}, actionLabel)));
|
|
170
|
-
});
|
|
92
|
+
var actionKey = action.key;
|
|
93
|
+
var actionLabel = _actions.ACTION_LABEL[direction][actionKey];
|
|
94
|
+
var actionLink = (0, _links.getActionLinks)()[actionKey];
|
|
95
|
+
var buttonType = _actions.ACTION_BUTTON_TYPE[actionKey];
|
|
96
|
+
var buttonSize = direction === 'column' ? 'L' : 'S';
|
|
97
|
+
return /*#__PURE__*/_react["default"].createElement(ActionItem, {
|
|
98
|
+
onClick: callback,
|
|
99
|
+
direction: direction
|
|
100
|
+
}, /*#__PURE__*/_react["default"].createElement(_customizedLink["default"], actionLink, /*#__PURE__*/_react["default"].createElement(StyledPillButton, {
|
|
101
|
+
text: actionLabel,
|
|
102
|
+
theme: theme,
|
|
103
|
+
type: buttonType,
|
|
104
|
+
size: buttonSize,
|
|
105
|
+
direction: direction
|
|
106
|
+
})));
|
|
171
107
|
};
|
|
172
108
|
|
|
173
109
|
ActionButtonItem.propTypes = {
|
|
174
110
|
action: _propTypes["default"].shape({
|
|
175
|
-
key: _propTypes["default"].string
|
|
176
|
-
active: _propTypes["default"]["boolean"]
|
|
111
|
+
key: _propTypes["default"].string
|
|
177
112
|
}),
|
|
178
|
-
direction: _propTypes["default"].
|
|
179
|
-
themeFunction: _propTypes["default"].func,
|
|
113
|
+
direction: _propTypes["default"].oneOf(['row', 'column']),
|
|
180
114
|
callback: _propTypes["default"].func
|
|
181
115
|
};
|
|
182
|
-
ActionButtonItem.defaultProps = {
|
|
183
|
-
action: {},
|
|
184
|
-
direction: 'row',
|
|
185
|
-
themeFunction: _theme["default"].selectActionButtonTheme,
|
|
186
|
-
callback: function callback() {}
|
|
187
|
-
};
|
|
188
116
|
|
|
189
|
-
var ActionButton = function ActionButton(
|
|
190
|
-
var actions =
|
|
191
|
-
|
|
192
|
-
|
|
117
|
+
var ActionButton = function ActionButton(_ref2) {
|
|
118
|
+
var _ref2$actions = _ref2.actions,
|
|
119
|
+
actions = _ref2$actions === void 0 ? [] : _ref2$actions,
|
|
120
|
+
_ref2$direction = _ref2.direction,
|
|
121
|
+
direction = _ref2$direction === void 0 ? 'row' : _ref2$direction,
|
|
122
|
+
_ref2$callback = _ref2.callback,
|
|
123
|
+
callback = _ref2$callback === void 0 ? defaultFunc : _ref2$callback,
|
|
124
|
+
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
193
125
|
|
|
194
126
|
return /*#__PURE__*/_react["default"].createElement(ActionsContainer, {
|
|
195
127
|
direction: direction
|
|
@@ -203,16 +135,9 @@ var ActionButton = function ActionButton(_ref3) {
|
|
|
203
135
|
};
|
|
204
136
|
|
|
205
137
|
ActionButton.propTypes = {
|
|
206
|
-
actions: _propTypes["default"].arrayOf(
|
|
207
|
-
direction:
|
|
208
|
-
themeFunction: _propTypes["default"].func,
|
|
138
|
+
actions: _propTypes["default"].arrayOf(ActionButtonItem.propTypes.action),
|
|
139
|
+
direction: ActionButtonItem.propTypes.direction,
|
|
209
140
|
callback: _propTypes["default"].func
|
|
210
141
|
};
|
|
211
|
-
ActionButton.defaultProps = {
|
|
212
|
-
actions: [],
|
|
213
|
-
direction: 'row',
|
|
214
|
-
themeFunction: _theme["default"].selectActionButtonTheme,
|
|
215
|
-
callback: function callback() {}
|
|
216
|
-
};
|
|
217
142
|
var _default = ActionButton;
|
|
218
143
|
exports["default"] = _default;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.hamburger = exports.transparentTheme = exports.photographyTheme = exports.actionButton = exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
11
|
+
|
|
12
|
+
var _actionButton = _interopRequireDefault(require("./action-button"));
|
|
13
|
+
|
|
14
|
+
var _headerContext = _interopRequireDefault(require("../contexts/header-context"));
|
|
15
|
+
|
|
16
|
+
var _theme = require("@twreporter/core/lib/constants/theme");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
|
+
|
|
20
|
+
/* eslint-disable react/prop-types */
|
|
21
|
+
var _default = {
|
|
22
|
+
title: 'Action Button',
|
|
23
|
+
component: _actionButton["default"],
|
|
24
|
+
argTypes: {
|
|
25
|
+
theme: _theme.THEME_STORYBOOK_ARG_TYPE,
|
|
26
|
+
direction: {
|
|
27
|
+
defaultValue: 'row',
|
|
28
|
+
options: ['row', 'column'],
|
|
29
|
+
control: {
|
|
30
|
+
type: 'radio'
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
exports["default"] = _default;
|
|
36
|
+
|
|
37
|
+
var Container = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
|
38
|
+
displayName: "action-buttonstories__Container",
|
|
39
|
+
componentId: "dkic70-0"
|
|
40
|
+
})(["max-width:500px;width:100%;"]);
|
|
41
|
+
|
|
42
|
+
var defaultActions = [{
|
|
43
|
+
key: 'newsLetter'
|
|
44
|
+
}, {
|
|
45
|
+
key: 'support'
|
|
46
|
+
}];
|
|
47
|
+
|
|
48
|
+
var actionButton = function actionButton(props) {
|
|
49
|
+
var theme = props.theme;
|
|
50
|
+
var context = {
|
|
51
|
+
theme: theme
|
|
52
|
+
};
|
|
53
|
+
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
|
|
54
|
+
value: context
|
|
55
|
+
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButton["default"], props)));
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
exports.actionButton = actionButton;
|
|
59
|
+
actionButton.args = {
|
|
60
|
+
actions: defaultActions
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
var photographyTheme = function photographyTheme(props) {
|
|
64
|
+
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
|
|
65
|
+
value: {
|
|
66
|
+
theme: _theme.THEME.photography
|
|
67
|
+
}
|
|
68
|
+
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButton["default"], props)));
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
exports.photographyTheme = photographyTheme;
|
|
72
|
+
photographyTheme.args = {
|
|
73
|
+
actions: defaultActions
|
|
74
|
+
};
|
|
75
|
+
photographyTheme.parameters = {
|
|
76
|
+
backgrounds: {
|
|
77
|
+
"default": _theme.THEME.photography
|
|
78
|
+
},
|
|
79
|
+
controls: {
|
|
80
|
+
exclude: ['actions', 'callback', 'theme']
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
var transparentTheme = function transparentTheme(props) {
|
|
85
|
+
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
|
|
86
|
+
value: {
|
|
87
|
+
theme: _theme.THEME.transparent
|
|
88
|
+
}
|
|
89
|
+
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButton["default"], props)));
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
exports.transparentTheme = transparentTheme;
|
|
93
|
+
transparentTheme.args = {
|
|
94
|
+
actions: defaultActions
|
|
95
|
+
};
|
|
96
|
+
transparentTheme.parameters = {
|
|
97
|
+
backgrounds: {
|
|
98
|
+
"default": _theme.THEME.transparent
|
|
99
|
+
},
|
|
100
|
+
controls: {
|
|
101
|
+
exclude: ['actions', 'callback', 'theme']
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
var hamburger = function hamburger(props) {
|
|
106
|
+
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
|
|
107
|
+
value: {
|
|
108
|
+
theme: _theme.THEME.normal
|
|
109
|
+
}
|
|
110
|
+
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButton["default"], props)));
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
exports.hamburger = hamburger;
|
|
114
|
+
hamburger.args = {
|
|
115
|
+
actions: defaultActions,
|
|
116
|
+
direction: 'column'
|
|
117
|
+
};
|
|
118
|
+
hamburger.parameters = {
|
|
119
|
+
backgrounds: {
|
|
120
|
+
"default": 'white'
|
|
121
|
+
},
|
|
122
|
+
controls: {
|
|
123
|
+
exclude: ['actions', 'callback', 'theme']
|
|
124
|
+
}
|
|
125
|
+
};
|