@twreporter/universal-header 2.2.15-rc.2 → 2.3.0-rc.0

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.
@@ -0,0 +1,274 @@
1
+ "use strict";
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
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _CSSTransition = _interopRequireDefault(require("react-transition-group/CSSTransition"));
15
+
16
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
+
18
+ var _headerContext = _interopRequireDefault(require("../contexts/header-context"));
19
+
20
+ var _links = _interopRequireDefault(require("../utils/links"));
21
+
22
+ var _theme = _interopRequireDefault(require("../utils/theme"));
23
+
24
+ var _animations = _interopRequireDefault(require("../utils/animations"));
25
+
26
+ var _channelsOld = _interopRequireDefault(require("./channels-old"));
27
+
28
+ var _actionButtonOld = _interopRequireDefault(require("./action-button-old"));
29
+
30
+ var _iconsOld = _interopRequireDefault(require("./icons-old"));
31
+
32
+ var _customizedLink = _interopRequireDefault(require("./customized-link"));
33
+
34
+ var _sloganOld = _interopRequireDefault(require("./slogan-old"));
35
+
36
+ var _mediaQuery = _interopRequireDefault(require("@twreporter/core/lib/utils/media-query"));
37
+
38
+ var _css = require("@twreporter/core/lib/utils/css");
39
+
40
+ var _logo = require("@twreporter/react-components/lib/logo");
41
+
42
+ var _templateObject;
43
+
44
+ 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); }
45
+
46
+ 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; }
47
+
48
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
+
50
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
51
+
52
+ var CHANNEL_HEIGHT = 36; // px
53
+
54
+ var styles = {
55
+ headerHeight: {
56
+ wide: 83,
57
+ // px
58
+ narrow: 46 // px
59
+
60
+ },
61
+ topRowPadding: {
62
+ desktop: [0, 60] // px
63
+
64
+ },
65
+ topRowMaxWidth: {
66
+ desktop: 1024,
67
+ hd: 1440 // px
68
+
69
+ },
70
+ channelMaxWidth: {
71
+ hd: 1320 // px
72
+
73
+ },
74
+ channelTopBorderWidth: [0, 1, 1, 0],
75
+ // px
76
+ channelBottomBorderWidth: [1, 0, 1, 0],
77
+ // px
78
+ iconBorderWidth: {
79
+ wide: [0, 0, 0, 0],
80
+ // px
81
+ narrow: [0, 0, 1, 0] // px
82
+
83
+ },
84
+ zIndex: {
85
+ flexGroup: 3,
86
+ channelBottom: 1,
87
+ channelTop: {
88
+ wide: 2,
89
+ narrow: 4
90
+ }
91
+ }
92
+ };
93
+
94
+ var headerWide = _animations["default"].changeHeight("".concat(styles.headerHeight.narrow, "px"), "".concat(styles.headerHeight.wide, "px"));
95
+
96
+ var headerNarrow = _animations["default"].changeHeight("".concat(styles.headerHeight.wide, "px"), "".concat(styles.headerHeight.narrow, "px"));
97
+
98
+ var HeaderEffect = /*#__PURE__*/(0, _styledComponents.css)([".header-effect-enter{height:", "px;}.header-effect-enter-active{animation:", " 0.2s linear;animation-delay:300ms;}.header-effect-exit-active{animation:", " 0.2s linear;animation-delay:300ms;}.header-effect-exit-done{height:", "px;}"], styles.headerHeight.narrow, headerWide, headerNarrow, styles.headerHeight.narrow);
99
+ var ActionEffect = /*#__PURE__*/(0, _styledComponents.css)([".action-effect-enter{transform:translateX(-40px);}.action-effect-enter-active{animation:", " 0.2s;animation-delay:300ms;}.action-effect-exit-active{animation:", " 0.2s;animation-delay:300ms;}.action-effect-exit-done{transform:translateX(-40px);}"], _animations["default"].changeTranslateX('-40px', 0), _animations["default"].changeTranslateX(0, '-40px'));
100
+ var SloganEffect = /*#__PURE__*/(0, _styledComponents.css)([".slogan-effect-enter{opacity:0;}.slogagn-effect-enter-active{animation:", " 0.2s;animation-delay:300ms;}.slogan-effect-exit-active{animation:", " 0.2s;animation-delay:300ms;}.slogan-effect-exit-done{opacity:0;}"], _animations["default"].changeOpacity('0', '1'), _animations["default"].changeOpacity('1', '0'));
101
+ var channelSlideIn = /*#__PURE__*/(0, _styledComponents.keyframes)(["from{transform:translateY(", "px);opacity:0;}to{transform:translateY(0);opacity:1;}"], -CHANNEL_HEIGHT);
102
+ var channelSlideOut = /*#__PURE__*/(0, _styledComponents.keyframes)(["from{transform:translateY(0);}to{transform:translateY(", "px);}"], -CHANNEL_HEIGHT);
103
+ var ChannelEffect = /*#__PURE__*/(0, _styledComponents.css)([".channel-effect-enter{opacity:0;}.channel-effect-enter-active{animation:", " 0.2s linear;animation-delay:400ms;}.channel-effect-exit-active{animation:", " 0.1s linear;animation-delay:100ms;}"], channelSlideIn, channelSlideOut);
104
+ var LogoEffect = /*#__PURE__*/(0, _styledComponents.css)([".logo-effect-enter{img{width:80%;}}.logo-effect-enter-active{img{animation:", " 0.2s linear;animation-delay:300ms;}}.logo-effect-exit-active{img{animation:", " 0.2s linear;animation-delay:300ms;}}.logo-effect-exit-done{img{width:80%;}}"], _animations["default"].changeWidth('80%', '100%'), _animations["default"].changeWidth('100%', '80%'));
105
+
106
+ var Box = /*#__PURE__*/_styledComponents["default"].div.withConfig({
107
+ displayName: "header-old__Box",
108
+ componentId: "sc-1fortyi-0"
109
+ })(["transform:translateY( ", " );transition:transform 0.3s linear;background-color:", ";box-sizing:border-box;position:relative;width:100%;display:flex;flex-direction:column;align-items:center;a:link,a:visited,a:hover,a:active{text-decoration:none;}", ""], function (props) {
110
+ return props.isHide ? "".concat(-styles.headerHeight.narrow, "px") : 0;
111
+ }, function (props) {
112
+ return props.bgColor;
113
+ }, HeaderEffect);
114
+
115
+ var TopRow = /*#__PURE__*/_styledComponents["default"].div.withConfig({
116
+ displayName: "header-old__TopRow",
117
+ componentId: "sc-1fortyi-1"
118
+ })(["height:", "px;padding:", ";max-width:", "px;width:100%;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;"], styles.headerHeight.wide, (0, _css.arrayToCssShorthand)(styles.topRowPadding.desktop), styles.topRowMaxWidth.hd);
119
+
120
+ var ChannelContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
121
+ displayName: "header-old__ChannelContainer",
122
+ componentId: "sc-1fortyi-2"
123
+ })(["width:calc(100% - 120px);max-width:", "px;z-index:", ";", ""], styles.channelMaxWidth.hd, styles.zIndex.channelBottom, ChannelEffect);
124
+
125
+ var FlexGroup = /*#__PURE__*/_styledComponents["default"].div.withConfig({
126
+ displayName: "header-old__FlexGroup",
127
+ componentId: "sc-1fortyi-3"
128
+ })(["display:flex;z-index:", ";"], styles.zIndex.flexGroup);
129
+
130
+ var FlexItem = /*#__PURE__*/(0, _styledComponents.css)(["margin-right:14px;display:flex;align-items:center;"]);
131
+
132
+ var LogoContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
133
+ displayName: "header-old__LogoContainer",
134
+ componentId: "sc-1fortyi-4"
135
+ })(["", " ", " img{width:210px;}"], FlexItem, LogoEffect);
136
+
137
+ var SloganContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
138
+ displayName: "header-old__SloganContainer",
139
+ componentId: "sc-1fortyi-5"
140
+ })(["", " ", ""], FlexItem, SloganEffect);
141
+
142
+ var ActionContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
143
+ displayName: "header-old__ActionContainer",
144
+ componentId: "sc-1fortyi-6"
145
+ })(["", " ", ""], FlexItem, ActionEffect);
146
+
147
+ var IconContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
148
+ displayName: "header-old__IconContainer",
149
+ componentId: "sc-1fortyi-7"
150
+ })(["", " height:", "px;margin:0;padding-left:14px;border-color:", ";border-style:solid;border-width:", ";transition:border-width 0.1s linear 0.2s;"], FlexItem, styles.headerHeight.narrow, function (props) {
151
+ return props.borderColor;
152
+ }, function (props) {
153
+ return (0, _css.arrayToCssShorthand)(styles.iconBorderWidth[props.headerType]);
154
+ });
155
+
156
+ var ChannelTopContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
157
+ displayName: "header-old__ChannelTopContainer",
158
+ componentId: "sc-1fortyi-8"
159
+ })(["position:absolute;width:calc(100% - 530px);min-width:480px;max-width:910px;height:", "px;right:186px;z-index:", ";", " ", " ", ""], styles.headerHeight.narrow, function (props) {
160
+ return styles.zIndex.channelTop[props.headerType];
161
+ }, FlexItem, ChannelEffect, _mediaQuery["default"].hdOnly(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n right: calc(50% - 540px);\n "]))));
162
+
163
+ var Header = function Header(_ref) {
164
+ var pathname = _ref.pathname,
165
+ channels = _ref.channels,
166
+ services = _ref.services,
167
+ actions = _ref.actions,
168
+ narrowActions = _ref.narrowActions;
169
+ return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Consumer, null, function (_ref2) {
170
+ var releaseBranch = _ref2.releaseBranch,
171
+ isLinkExternal = _ref2.isLinkExternal,
172
+ theme = _ref2.theme,
173
+ toUseNarrow = _ref2.toUseNarrow,
174
+ hideHeader = _ref2.hideHeader;
175
+
176
+ var _themeUtils$selectHea = _theme["default"].selectHeaderTheme(theme),
177
+ bgColor = _themeUtils$selectHea.bgColor,
178
+ borderColor = _themeUtils$selectHea.borderColor;
179
+
180
+ var logoType = _theme["default"].selectLogoType(theme);
181
+
182
+ return /*#__PURE__*/_react["default"].createElement(Box, {
183
+ bgColor: bgColor,
184
+ isHide: hideHeader
185
+ }, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
186
+ "in": !toUseNarrow,
187
+ classNames: "header-effect",
188
+ timeout: {
189
+ appear: 0,
190
+ enter: 500,
191
+ exit: 500
192
+ }
193
+ }, /*#__PURE__*/_react["default"].createElement(TopRow, null, /*#__PURE__*/_react["default"].createElement(FlexGroup, null, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
194
+ "in": !toUseNarrow,
195
+ classNames: "logo-effect",
196
+ timeout: {
197
+ appear: 0,
198
+ enter: 500,
199
+ exit: 500
200
+ }
201
+ }, /*#__PURE__*/_react["default"].createElement(_customizedLink["default"], _links["default"].getLogoLink(isLinkExternal, releaseBranch), /*#__PURE__*/_react["default"].createElement(_logo.LogoHeader, {
202
+ type: logoType,
203
+ releaseBranch: releaseBranch
204
+ })))), /*#__PURE__*/_react["default"].createElement(ActionContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
205
+ "in": !toUseNarrow,
206
+ classNames: "action-effect",
207
+ timeout: {
208
+ appear: 0,
209
+ enter: 500,
210
+ exit: 500
211
+ }
212
+ }, /*#__PURE__*/_react["default"].createElement(_actionButtonOld["default"], {
213
+ actions: toUseNarrow ? narrowActions : actions
214
+ }))), /*#__PURE__*/_react["default"].createElement(SloganContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
215
+ "in": !toUseNarrow,
216
+ classNames: "slogan-effect",
217
+ timeout: {
218
+ appear: 0,
219
+ enter: 500,
220
+ exit: 500
221
+ }
222
+ }, /*#__PURE__*/_react["default"].createElement(_sloganOld["default"], null)))), /*#__PURE__*/_react["default"].createElement(ChannelTopContainer, {
223
+ headerType: toUseNarrow ? 'narrow' : 'wide'
224
+ }, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
225
+ "in": toUseNarrow,
226
+ classNames: "channel-effect",
227
+ timeout: {
228
+ appear: 0,
229
+ enter: 600,
230
+ exit: 200
231
+ },
232
+ unmountOnExit: true
233
+ }, /*#__PURE__*/_react["default"].createElement(_channelsOld["default"], {
234
+ currentPathname: pathname,
235
+ data: channels,
236
+ borderWidth: styles.channelTopBorderWidth
237
+ }))), /*#__PURE__*/_react["default"].createElement(IconContainer, {
238
+ headerType: toUseNarrow ? 'narrow' : 'wide',
239
+ borderColor: borderColor
240
+ }, /*#__PURE__*/_react["default"].createElement(_iconsOld["default"], {
241
+ services: services
242
+ })))), /*#__PURE__*/_react["default"].createElement(ChannelContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
243
+ "in": !toUseNarrow,
244
+ classNames: "channel-effect",
245
+ timeout: {
246
+ appear: 0,
247
+ enter: 600,
248
+ exit: 200
249
+ },
250
+ unmountOnExit: true
251
+ }, /*#__PURE__*/_react["default"].createElement(_channelsOld["default"], {
252
+ currentPathname: pathname,
253
+ data: channels,
254
+ borderWidth: styles.channelBottomBorderWidth
255
+ }))));
256
+ });
257
+ };
258
+
259
+ Header.propTypes = {
260
+ pathname: _propTypes["default"].string,
261
+ channels: _channelsOld["default"].propTypes.data,
262
+ services: _propTypes["default"].array,
263
+ actions: _propTypes["default"].array,
264
+ narrowActions: _propTypes["default"].array
265
+ };
266
+ Header.defaultProps = {
267
+ pathname: '',
268
+ channels: _channelsOld["default"].defaultProps.data,
269
+ services: [],
270
+ actions: [],
271
+ narrowActions: []
272
+ };
273
+ var _default = Header;
274
+ exports["default"] = _default;
@@ -7,13 +7,11 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
 
10
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
- var _CSSTransition = _interopRequireDefault(require("react-transition-group/CSSTransition"));
15
-
16
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
17
15
 
18
16
  var _headerContext = _interopRequireDefault(require("../contexts/header-context"));
19
17
 
@@ -21,254 +19,130 @@ var _links = _interopRequireDefault(require("../utils/links"));
21
19
 
22
20
  var _theme = _interopRequireDefault(require("../utils/theme"));
23
21
 
24
- var _animations = _interopRequireDefault(require("../utils/animations"));
25
-
26
22
  var _channels = _interopRequireDefault(require("./channels"));
27
23
 
28
24
  var _actionButton = _interopRequireDefault(require("./action-button"));
29
25
 
30
26
  var _icons = _interopRequireDefault(require("./icons"));
31
27
 
32
- var _customizedLink = _interopRequireDefault(require("./customized-link"));
33
-
34
28
  var _slogan = _interopRequireDefault(require("./slogan"));
35
29
 
36
- var _mediaQuery = _interopRequireDefault(require("@twreporter/core/lib/utils/media-query"));
30
+ var _customizedLink = _interopRequireDefault(require("@twreporter/react-components/lib/customized-link"));
37
31
 
38
- var _css = require("@twreporter/core/lib/utils/css");
32
+ var _mediaQuery = _interopRequireDefault(require("@twreporter/core/lib/utils/media-query"));
39
33
 
40
34
  var _logo = require("@twreporter/react-components/lib/logo");
41
35
 
42
- var _templateObject;
43
-
44
- 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); }
36
+ var _button = require("@twreporter/react-components/lib/button");
45
37
 
46
- 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; }
38
+ var _icon = require("@twreporter/react-components/lib/icon");
47
39
 
48
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40
+ var _color = require("@twreporter/core/lib/constants/color");
49
41
 
50
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
42
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
51
43
 
52
- var CHANNEL_HEIGHT = 36; // px
53
-
54
- var styles = {
55
- headerHeight: {
56
- wide: 83,
57
- // px
58
- narrow: 46 // px
59
-
60
- },
61
- topRowPadding: {
62
- desktop: [0, 60] // px
63
-
64
- },
65
- topRowMaxWidth: {
66
- desktop: 1024,
67
- hd: 1440 // px
68
-
69
- },
70
- channelMaxWidth: {
71
- hd: 1320 // px
72
-
73
- },
74
- channelTopBorderWidth: [0, 1, 1, 0],
75
- // px
76
- channelBottomBorderWidth: [1, 0, 1, 0],
77
- // px
78
- iconBorderWidth: {
79
- wide: [0, 0, 0, 0],
80
- // px
81
- narrow: [0, 0, 1, 0] // px
82
-
83
- },
84
- zIndex: {
85
- flexGroup: 3,
86
- channelBottom: 1,
87
- channelTop: {
88
- wide: 2,
89
- narrow: 4
90
- }
91
- }
92
- };
44
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
93
45
 
94
- var headerWide = _animations["default"].changeHeight("".concat(styles.headerHeight.narrow, "px"), "".concat(styles.headerHeight.wide, "px"));
46
+ 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); }
95
47
 
96
- var headerNarrow = _animations["default"].changeHeight("".concat(styles.headerHeight.wide, "px"), "".concat(styles.headerHeight.narrow, "px"));
48
+ 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; }
97
49
 
98
- var HeaderEffect = /*#__PURE__*/(0, _styledComponents.css)([".header-effect-enter{height:", "px;}.header-effect-enter-active{animation:", " 0.2s linear;animation-delay:300ms;}.header-effect-exit-active{animation:", " 0.2s linear;animation-delay:300ms;}.header-effect-exit-done{height:", "px;}"], styles.headerHeight.narrow, headerWide, headerNarrow, styles.headerHeight.narrow);
99
- var ActionEffect = /*#__PURE__*/(0, _styledComponents.css)([".action-effect-enter{transform:translateX(-40px);}.action-effect-enter-active{animation:", " 0.2s;animation-delay:300ms;}.action-effect-exit-active{animation:", " 0.2s;animation-delay:300ms;}.action-effect-exit-done{transform:translateX(-40px);}"], _animations["default"].changeTranslateX('-40px', 0), _animations["default"].changeTranslateX(0, '-40px'));
100
- var SloganEffect = /*#__PURE__*/(0, _styledComponents.css)([".slogan-effect-enter{opacity:0;}.slogagn-effect-enter-active{animation:", " 0.2s;animation-delay:300ms;}.slogan-effect-exit-active{animation:", " 0.2s;animation-delay:300ms;}.slogan-effect-exit-done{opacity:0;}"], _animations["default"].changeOpacity('0', '1'), _animations["default"].changeOpacity('1', '0'));
101
- var channelSlideIn = /*#__PURE__*/(0, _styledComponents.keyframes)(["from{transform:translateY(", "px);opacity:0;}to{transform:translateY(0);opacity:1;}"], -CHANNEL_HEIGHT);
102
- var channelSlideOut = /*#__PURE__*/(0, _styledComponents.keyframes)(["from{transform:translateY(0);}to{transform:translateY(", "px);}"], -CHANNEL_HEIGHT);
103
- var ChannelEffect = /*#__PURE__*/(0, _styledComponents.css)([".channel-effect-enter{opacity:0;}.channel-effect-enter-active{animation:", " 0.2s linear;animation-delay:400ms;}.channel-effect-exit-active{animation:", " 0.1s linear;animation-delay:100ms;}"], channelSlideIn, channelSlideOut);
104
- var LogoEffect = /*#__PURE__*/(0, _styledComponents.css)([".logo-effect-enter{img{width:80%;}}.logo-effect-enter-active{img{animation:", " 0.2s linear;animation-delay:300ms;}}.logo-effect-exit-active{img{animation:", " 0.2s linear;animation-delay:300ms;}}.logo-effect-exit-done{img{width:80%;}}"], _animations["default"].changeWidth('80%', '100%'), _animations["default"].changeWidth('100%', '80%'));
50
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
105
51
 
106
- var Box = /*#__PURE__*/_styledComponents["default"].div.withConfig({
107
- displayName: "header__Box",
52
+ var HeaderContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
53
+ displayName: "header__HeaderContainer",
108
54
  componentId: "sc-1krza7i-0"
109
- })(["transform:translateY( ", " );transition:transform 0.3s linear;background-color:", ";box-sizing:border-box;position:relative;width:100%;display:flex;flex-direction:column;align-items:center;a:link,a:visited,a:hover,a:active{text-decoration:none;}", ""], function (props) {
110
- return props.isHide ? "".concat(-styles.headerHeight.narrow, "px") : 0;
111
- }, function (props) {
112
- return props.bgColor;
113
- }, HeaderEffect);
55
+ })(["display:flex;flex-direction:column;width:100%;margin:auto;", " ", " ", " ", ""], _mediaQuery["default"].hdOnly(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 1280px;\n "]))), _mediaQuery["default"].desktopOnly(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n padding: 0 48px;\n "]))), _mediaQuery["default"].tabletOnly(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n padding: 0 32px;\n "]))), _mediaQuery["default"].mobileOnly(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n padding: 0 24px;\n "]))));
114
56
 
115
- var TopRow = /*#__PURE__*/_styledComponents["default"].div.withConfig({
116
- displayName: "header__TopRow",
57
+ var LogoContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
58
+ displayName: "header__LogoContainer",
117
59
  componentId: "sc-1krza7i-1"
118
- })(["height:", "px;padding:", ";max-width:", "px;width:100%;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;"], styles.headerHeight.wide, (0, _css.arrayToCssShorthand)(styles.topRowPadding.desktop), styles.topRowMaxWidth.hd);
60
+ })(["display:flex;align-items:center;margin-right:16px;"]);
119
61
 
120
- var ChannelContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
121
- displayName: "header__ChannelContainer",
62
+ var HideWhenNarrow = /*#__PURE__*/_styledComponents["default"].div.withConfig({
63
+ displayName: "header__HideWhenNarrow",
122
64
  componentId: "sc-1krza7i-2"
123
- })(["width:calc(100% - 120px);max-width:", "px;z-index:", ";", ""], styles.channelMaxWidth.hd, styles.zIndex.channelBottom, ChannelEffect);
65
+ })([""]);
124
66
 
125
- var FlexGroup = /*#__PURE__*/_styledComponents["default"].div.withConfig({
126
- displayName: "header__FlexGroup",
67
+ var ShowWhenNarrow = /*#__PURE__*/_styledComponents["default"].div.withConfig({
68
+ displayName: "header__ShowWhenNarrow",
127
69
  componentId: "sc-1krza7i-3"
128
- })(["display:flex;z-index:", ";"], styles.zIndex.flexGroup);
129
-
130
- var FlexItem = /*#__PURE__*/(0, _styledComponents.css)(["margin-right:14px;display:flex;align-items:center;"]);
70
+ })([""]);
131
71
 
132
- var LogoContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
133
- displayName: "header__LogoContainer",
72
+ var TopRow = /*#__PURE__*/_styledComponents["default"].div.withConfig({
73
+ displayName: "header__TopRow",
134
74
  componentId: "sc-1krza7i-4"
135
- })(["", " ", " img{width:210px;}"], FlexItem, LogoEffect);
75
+ })(["display:flex;align-items:center;justify-content:space-between;padding:", " 16px;background-color:", ";z-index:501;", "{opacity:", ";transition:opacity 100ms;transition-delay:", ";}", "{opacity:", ";transition:opacity 100ms;}", "{margin-left:", ";transform:translateX(", ");transition:transform 100ms;img,a{height:", ";transition:height 100ms;}}"], function (props) {
76
+ return props.toUseNarrow ? '16px' : '24px';
77
+ }, _color.colorGrayscale.gray100, ShowWhenNarrow, function (props) {
78
+ return props.toUseNarrow ? '1' : '0';
79
+ }, function (props) {
80
+ return props.toUseNarrow ? '100ms' : 0;
81
+ }, HideWhenNarrow, function (props) {
82
+ return props.toUseNarrow ? '0' : '1';
83
+ }, LogoContainer, function (props) {
84
+ return props.toUseNarrow ? '24px' : '0';
85
+ }, function (props) {
86
+ return props.toUseNarrow ? '0' : '-24px';
87
+ }, function (props) {
88
+ return props.toUseNarrow ? '24px' : '32px';
89
+ });
136
90
 
137
- var SloganContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
138
- displayName: "header__SloganContainer",
91
+ var IconContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
92
+ displayName: "header__IconContainer",
139
93
  componentId: "sc-1krza7i-5"
140
- })(["", " ", ""], FlexItem, SloganEffect);
94
+ })(["margin-left:24px;"]);
141
95
 
142
- var ActionContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
143
- displayName: "header__ActionContainer",
96
+ var FlexGroup = /*#__PURE__*/_styledComponents["default"].div.withConfig({
97
+ displayName: "header__FlexGroup",
144
98
  componentId: "sc-1krza7i-6"
145
- })(["", " ", ""], FlexItem, ActionEffect);
99
+ })(["display:flex;align-items:center;"]);
146
100
 
147
- var IconContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
148
- displayName: "header__IconContainer",
101
+ var StyledChannel = /*#__PURE__*/(0, _styledComponents["default"])(_channels["default"]).withConfig({
102
+ displayName: "header__StyledChannel",
149
103
  componentId: "sc-1krza7i-7"
150
- })(["", " height:", "px;margin:0;padding-left:14px;border-color:", ";border-style:solid;border-width:", ";transition:border-width 0.1s linear 0.2s;"], FlexItem, styles.headerHeight.narrow, function (props) {
151
- return props.borderColor;
152
- }, function (props) {
153
- return (0, _css.arrayToCssShorthand)(styles.iconBorderWidth[props.headerType]);
104
+ })(["transform:translateY(", ");transition:transform 300ms z-index:500;"], function (props) {
105
+ return props.toUseNarrow ? '-50px' : '0';
154
106
  });
155
107
 
156
- var ChannelTopContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
157
- displayName: "header__ChannelTopContainer",
158
- componentId: "sc-1krza7i-8"
159
- })(["position:absolute;width:calc(100% - 530px);min-width:480px;max-width:910px;height:", "px;right:186px;z-index:", ";", " ", " ", ""], styles.headerHeight.narrow, function (props) {
160
- return styles.zIndex.channelTop[props.headerType];
161
- }, FlexItem, ChannelEffect, _mediaQuery["default"].hdOnly(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n right: calc(50% - 540px);\n "]))));
162
-
163
108
  var Header = function Header(_ref) {
164
- var pathname = _ref.pathname,
165
- channels = _ref.channels,
166
- services = _ref.services,
167
- actions = _ref.actions,
168
- narrowActions = _ref.narrowActions;
169
- return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Consumer, null, function (_ref2) {
170
- var releaseBranch = _ref2.releaseBranch,
171
- isLinkExternal = _ref2.isLinkExternal,
172
- theme = _ref2.theme,
173
- toUseNarrow = _ref2.toUseNarrow,
174
- hideHeader = _ref2.hideHeader;
175
-
176
- var _themeUtils$selectHea = _theme["default"].selectHeaderTheme(theme),
177
- bgColor = _themeUtils$selectHea.bgColor,
178
- borderColor = _themeUtils$selectHea.borderColor;
179
-
180
- var logoType = _theme["default"].selectLogoType(theme);
181
-
182
- return /*#__PURE__*/_react["default"].createElement(Box, {
183
- bgColor: bgColor,
184
- isHide: hideHeader
185
- }, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
186
- "in": !toUseNarrow,
187
- classNames: "header-effect",
188
- timeout: {
189
- appear: 0,
190
- enter: 500,
191
- exit: 500
192
- }
193
- }, /*#__PURE__*/_react["default"].createElement(TopRow, null, /*#__PURE__*/_react["default"].createElement(FlexGroup, null, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
194
- "in": !toUseNarrow,
195
- classNames: "logo-effect",
196
- timeout: {
197
- appear: 0,
198
- enter: 500,
199
- exit: 500
200
- }
201
- }, /*#__PURE__*/_react["default"].createElement(_customizedLink["default"], _links["default"].getLogoLink(isLinkExternal, releaseBranch), /*#__PURE__*/_react["default"].createElement(_logo.LogoHeader, {
202
- type: logoType,
203
- releaseBranch: releaseBranch
204
- })))), /*#__PURE__*/_react["default"].createElement(ActionContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
205
- "in": !toUseNarrow,
206
- classNames: "action-effect",
207
- timeout: {
208
- appear: 0,
209
- enter: 500,
210
- exit: 500
211
- }
212
- }, /*#__PURE__*/_react["default"].createElement(_actionButton["default"], {
213
- actions: toUseNarrow ? narrowActions : actions
214
- }))), /*#__PURE__*/_react["default"].createElement(SloganContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
215
- "in": !toUseNarrow,
216
- classNames: "slogan-effect",
217
- timeout: {
218
- appear: 0,
219
- enter: 500,
220
- exit: 500
221
- }
222
- }, /*#__PURE__*/_react["default"].createElement(_slogan["default"], null)))), /*#__PURE__*/_react["default"].createElement(ChannelTopContainer, {
223
- headerType: toUseNarrow ? 'narrow' : 'wide'
224
- }, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
225
- "in": toUseNarrow,
226
- classNames: "channel-effect",
227
- timeout: {
228
- appear: 0,
229
- enter: 600,
230
- exit: 200
231
- },
232
- unmountOnExit: true
233
- }, /*#__PURE__*/_react["default"].createElement(_channels["default"], {
234
- currentPathname: pathname,
235
- data: channels,
236
- borderWidth: styles.channelTopBorderWidth
237
- }))), /*#__PURE__*/_react["default"].createElement(IconContainer, {
238
- headerType: toUseNarrow ? 'narrow' : 'wide',
239
- borderColor: borderColor
240
- }, /*#__PURE__*/_react["default"].createElement(_icons["default"], {
241
- services: services
242
- })))), /*#__PURE__*/_react["default"].createElement(ChannelContainer, null, /*#__PURE__*/_react["default"].createElement(_CSSTransition["default"], {
243
- "in": !toUseNarrow,
244
- classNames: "channel-effect",
245
- timeout: {
246
- appear: 0,
247
- enter: 600,
248
- exit: 200
249
- },
250
- unmountOnExit: true
251
- }, /*#__PURE__*/_react["default"].createElement(_channels["default"], {
252
- currentPathname: pathname,
253
- data: channels,
254
- borderWidth: styles.channelBottomBorderWidth
255
- }))));
109
+ var _ref$pathname = _ref.pathname,
110
+ pathname = _ref$pathname === void 0 ? '' : _ref$pathname,
111
+ _ref$actions = _ref.actions,
112
+ actions = _ref$actions === void 0 ? [] : _ref$actions;
113
+
114
+ var _useContext = (0, _react.useContext)(_headerContext["default"]),
115
+ releaseBranch = _useContext.releaseBranch,
116
+ isLinkExternal = _useContext.isLinkExternal,
117
+ theme = _useContext.theme,
118
+ toUseNarrow = _useContext.toUseNarrow;
119
+
120
+ var logoLink = _links["default"].getLogoLink(isLinkExternal, releaseBranch);
121
+
122
+ var logoType = _theme["default"].selectLogoType(theme);
123
+
124
+ var HamburgerIcon = /*#__PURE__*/_react["default"].createElement(_icon.Hamburger, {
125
+ releaseBranch: releaseBranch
256
126
  });
127
+
128
+ return /*#__PURE__*/_react["default"].createElement(HeaderContainer, null, /*#__PURE__*/_react["default"].createElement(TopRow, {
129
+ toUseNarrow: toUseNarrow
130
+ }, /*#__PURE__*/_react["default"].createElement(FlexGroup, null, /*#__PURE__*/_react["default"].createElement(ShowWhenNarrow, null, /*#__PURE__*/_react["default"].createElement(_button.IconButton, {
131
+ iconComponent: HamburgerIcon,
132
+ theme: theme
133
+ })), /*#__PURE__*/_react["default"].createElement(LogoContainer, null, /*#__PURE__*/_react["default"].createElement(_customizedLink["default"], logoLink, /*#__PURE__*/_react["default"].createElement(_logo.LogoHeader, {
134
+ type: logoType,
135
+ releaseBranch: releaseBranch
136
+ }))), /*#__PURE__*/_react["default"].createElement(HideWhenNarrow, null, /*#__PURE__*/_react["default"].createElement(_slogan["default"], null))), /*#__PURE__*/_react["default"].createElement(FlexGroup, null, /*#__PURE__*/_react["default"].createElement(HideWhenNarrow, null, /*#__PURE__*/_react["default"].createElement(_actionButton["default"], {
137
+ actions: actions
138
+ })), /*#__PURE__*/_react["default"].createElement(IconContainer, null, /*#__PURE__*/_react["default"].createElement(_icons["default"], null)))), /*#__PURE__*/_react["default"].createElement(StyledChannel, {
139
+ toUseNarrow: toUseNarrow
140
+ }));
257
141
  };
258
142
 
259
143
  Header.propTypes = {
260
144
  pathname: _propTypes["default"].string,
261
- channels: _channels["default"].propTypes.data,
262
- services: _propTypes["default"].array,
263
- actions: _propTypes["default"].array,
264
- narrowActions: _propTypes["default"].array
265
- };
266
- Header.defaultProps = {
267
- pathname: '',
268
- channels: _channels["default"].defaultProps.data,
269
- services: [],
270
- actions: [],
271
- narrowActions: []
145
+ actions: _propTypes["default"].array
272
146
  };
273
147
  var _default = Header;
274
148
  exports["default"] = _default;