@coorpacademy/components 11.38.3-alpha.19 → 11.38.3-alpha.21
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/es/atom/input-search/index.d.ts +2 -0
- package/es/atom/input-search/index.d.ts.map +1 -1
- package/es/atom/input-search/index.js +46 -13
- package/es/atom/input-search/index.js.map +1 -1
- package/es/atom/input-search/style.css +97 -0
- package/es/molecule/card/customer.css +3 -0
- package/es/molecule/card/favorite.d.ts.map +1 -1
- package/es/molecule/card/favorite.js +0 -5
- package/es/molecule/card/favorite.js.map +1 -1
- package/es/molecule/card/index.d.ts.map +1 -1
- package/es/molecule/card/index.js +11 -29
- package/es/molecule/card/index.js.map +1 -1
- package/es/molecule/card/notification.css +16 -39
- package/es/molecule/card/notification.d.ts.map +1 -1
- package/es/molecule/card/notification.js +4 -26
- package/es/molecule/card/notification.js.map +1 -1
- package/es/molecule/card/style.css +14 -16
- package/es/molecule/card-content/index.d.ts.map +1 -1
- package/es/molecule/card-content/index.js +36 -79
- package/es/molecule/card-content/index.js.map +1 -1
- package/es/molecule/card-content/style.css +24 -32
- package/es/molecule/cm-popin/types.d.ts +2 -0
- package/es/molecule/cm-popin/types.d.ts.map +1 -1
- package/es/molecule/external-content-button/style.css +0 -1
- package/es/molecule/multi-filter-panel/index.d.ts +2 -0
- package/es/molecule/multi-filter-panel/index.d.ts.map +1 -1
- package/es/molecule/multi-filter-panel/prop-types.d.ts +2 -0
- package/es/molecule/multi-filter-panel/prop-types.d.ts.map +1 -1
- package/es/molecule/search-form/index.d.ts +5 -0
- package/es/molecule/search-form/index.d.ts.map +1 -1
- package/es/molecule/search-form/index.js +26 -16
- package/es/molecule/search-form/index.js.map +1 -1
- package/es/molecule/search-form/style.css +21 -6
- package/es/organism/brand-table/index.d.ts +2 -0
- package/es/organism/content-skill-modal/index.d.ts +4 -0
- package/es/organism/content-skill-modal/index.d.ts.map +1 -1
- package/es/organism/content-skill-modal/types.d.ts +4 -0
- package/es/organism/content-skill-modal/types.d.ts.map +1 -1
- package/es/organism/filter-checkbox-and-search/index.d.ts +2 -0
- package/es/organism/filter-checkbox-and-search/index.d.ts.map +1 -1
- package/es/organism/filter-checkbox-and-search/props-types.d.ts +2 -0
- package/es/organism/filter-checkbox-and-search/props-types.d.ts.map +1 -1
- package/es/organism/list-items/index.d.ts +2 -0
- package/es/organism/mooc-header/index.d.ts +14 -0
- package/es/organism/mooc-header/index.d.ts.map +1 -1
- package/es/organism/mooc-header/index.js +132 -13
- package/es/organism/mooc-header/index.js.map +1 -1
- package/es/organism/mooc-header/style.css +184 -8
- package/es/template/app-player/loading/index.d.ts +2 -0
- package/es/template/app-player/player/index.d.ts +4 -0
- package/es/template/app-player/player/slides/index.d.ts +2 -0
- package/es/template/app-player/player/slides/index.d.ts.map +1 -1
- package/es/template/app-player/popin-correction/index.d.ts +2 -0
- package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
- package/es/template/app-player/popin-end/index.d.ts +2 -0
- package/es/template/app-review/index.d.ts +2 -0
- package/es/template/app-review/index.d.ts.map +1 -1
- package/es/template/app-review/player/prop-types.d.ts +2 -0
- package/es/template/app-review/player/prop-types.d.ts.map +1 -1
- package/es/template/app-review/prop-types.d.ts +2 -0
- package/es/template/app-review/prop-types.d.ts.map +1 -1
- package/es/template/back-office/brand-update/index.d.ts +12 -0
- package/es/template/common/dashboard/index.d.ts +4 -0
- package/es/template/common/search-page/index.d.ts +2 -0
- package/es/template/external-course/index.d.ts +2 -0
- package/es/util/check-is-mobile.js +3 -2
- package/es/util/check-is-mobile.js.map +1 -1
- package/es/util/external-content.d.ts +4 -38
- package/es/util/external-content.d.ts.map +1 -1
- package/es/util/external-content.js +4 -33
- package/es/util/external-content.js.map +1 -1
- package/es/variables/colors.d.ts +0 -5
- package/es/variables/colors.d.ts.map +1 -1
- package/es/variables/colors.js +1 -6
- package/es/variables/colors.js.map +1 -1
- package/lib/atom/input-search/index.d.ts +2 -0
- package/lib/atom/input-search/index.d.ts.map +1 -1
- package/lib/atom/input-search/index.js +46 -13
- package/lib/atom/input-search/index.js.map +1 -1
- package/lib/atom/input-search/style.css +97 -0
- package/lib/molecule/card/customer.css +3 -0
- package/lib/molecule/card/favorite.d.ts.map +1 -1
- package/lib/molecule/card/favorite.js +0 -5
- package/lib/molecule/card/favorite.js.map +1 -1
- package/lib/molecule/card/index.d.ts.map +1 -1
- package/lib/molecule/card/index.js +10 -28
- package/lib/molecule/card/index.js.map +1 -1
- package/lib/molecule/card/notification.css +16 -39
- package/lib/molecule/card/notification.d.ts.map +1 -1
- package/lib/molecule/card/notification.js +3 -25
- package/lib/molecule/card/notification.js.map +1 -1
- package/lib/molecule/card/style.css +14 -16
- package/lib/molecule/card-content/index.d.ts.map +1 -1
- package/lib/molecule/card-content/index.js +34 -77
- package/lib/molecule/card-content/index.js.map +1 -1
- package/lib/molecule/card-content/style.css +24 -32
- package/lib/molecule/cm-popin/types.d.ts +2 -0
- package/lib/molecule/cm-popin/types.d.ts.map +1 -1
- package/lib/molecule/external-content-button/style.css +0 -1
- package/lib/molecule/multi-filter-panel/index.d.ts +2 -0
- package/lib/molecule/multi-filter-panel/index.d.ts.map +1 -1
- package/lib/molecule/multi-filter-panel/prop-types.d.ts +2 -0
- package/lib/molecule/multi-filter-panel/prop-types.d.ts.map +1 -1
- package/lib/molecule/search-form/index.d.ts +5 -0
- package/lib/molecule/search-form/index.d.ts.map +1 -1
- package/lib/molecule/search-form/index.js +27 -17
- package/lib/molecule/search-form/index.js.map +1 -1
- package/lib/molecule/search-form/style.css +21 -6
- package/lib/organism/brand-table/index.d.ts +2 -0
- package/lib/organism/content-skill-modal/index.d.ts +4 -0
- package/lib/organism/content-skill-modal/index.d.ts.map +1 -1
- package/lib/organism/content-skill-modal/types.d.ts +4 -0
- package/lib/organism/content-skill-modal/types.d.ts.map +1 -1
- package/lib/organism/filter-checkbox-and-search/index.d.ts +2 -0
- package/lib/organism/filter-checkbox-and-search/index.d.ts.map +1 -1
- package/lib/organism/filter-checkbox-and-search/props-types.d.ts +2 -0
- package/lib/organism/filter-checkbox-and-search/props-types.d.ts.map +1 -1
- package/lib/organism/list-items/index.d.ts +2 -0
- package/lib/organism/mooc-header/index.d.ts +14 -0
- package/lib/organism/mooc-header/index.d.ts.map +1 -1
- package/lib/organism/mooc-header/index.js +132 -13
- package/lib/organism/mooc-header/index.js.map +1 -1
- package/lib/organism/mooc-header/style.css +184 -8
- package/lib/template/app-player/loading/index.d.ts +2 -0
- package/lib/template/app-player/player/index.d.ts +4 -0
- package/lib/template/app-player/player/slides/index.d.ts +2 -0
- package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
- package/lib/template/app-player/popin-correction/index.d.ts +2 -0
- package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
- package/lib/template/app-player/popin-end/index.d.ts +2 -0
- package/lib/template/app-review/index.d.ts +2 -0
- package/lib/template/app-review/index.d.ts.map +1 -1
- package/lib/template/app-review/player/prop-types.d.ts +2 -0
- package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
- package/lib/template/app-review/prop-types.d.ts +2 -0
- package/lib/template/app-review/prop-types.d.ts.map +1 -1
- package/lib/template/back-office/brand-update/index.d.ts +12 -0
- package/lib/template/common/dashboard/index.d.ts +4 -0
- package/lib/template/common/search-page/index.d.ts +2 -0
- package/lib/template/external-course/index.d.ts +2 -0
- package/lib/util/check-is-mobile.js +3 -2
- package/lib/util/check-is-mobile.js.map +1 -1
- package/lib/util/external-content.d.ts +4 -38
- package/lib/util/external-content.d.ts.map +1 -1
- package/lib/util/external-content.js +5 -34
- package/lib/util/external-content.js.map +1 -1
- package/lib/variables/colors.d.ts +0 -5
- package/lib/variables/colors.d.ts.map +1 -1
- package/lib/variables/colors.js +1 -6
- package/lib/variables/colors.js.map +1 -1
- package/locales/en/global.json +4 -4
- package/package.json +2 -2
|
@@ -17,6 +17,8 @@ declare class MoocHeader extends React.Component<any, any, any> {
|
|
|
17
17
|
onClear: PropTypes.Requireable<(...args: any[]) => any>;
|
|
18
18
|
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
|
|
19
19
|
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
20
|
+
onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
|
|
21
|
+
inputRef: PropTypes.Requireable<(...args: any[]) => any>;
|
|
20
22
|
theme: PropTypes.Requireable<string>;
|
|
21
23
|
dataTestId: PropTypes.Requireable<string>;
|
|
22
24
|
}>>;
|
|
@@ -146,11 +148,14 @@ declare class MoocHeader extends React.Component<any, any, any> {
|
|
|
146
148
|
}>>;
|
|
147
149
|
};
|
|
148
150
|
constructor(props: any);
|
|
151
|
+
isMobile: boolean;
|
|
149
152
|
state: {
|
|
150
153
|
isSettingsOpen: boolean;
|
|
151
154
|
isMenuOpen: boolean;
|
|
152
155
|
isFocus: boolean;
|
|
153
156
|
isToolTipOpen: boolean;
|
|
157
|
+
isClosing: boolean;
|
|
158
|
+
isClosingStep2: boolean;
|
|
154
159
|
};
|
|
155
160
|
handleSettingsToggle(): void;
|
|
156
161
|
handleMenuToggle(): void;
|
|
@@ -166,7 +171,16 @@ declare class MoocHeader extends React.Component<any, any, any> {
|
|
|
166
171
|
handleOnMouseOver(): void;
|
|
167
172
|
handleOnMouseLeave(): void;
|
|
168
173
|
handleKeyPress(event: any): void;
|
|
174
|
+
handleSearchKeyDown(event: any): void;
|
|
175
|
+
searchBarRef: any;
|
|
176
|
+
searchInputRef: any;
|
|
177
|
+
setSearchBarRef(ref: any): void;
|
|
178
|
+
setSearchInputRef(ref: any): void;
|
|
179
|
+
handleClickOutside(event: any): void;
|
|
180
|
+
handleTransitionEnd(event: any): void;
|
|
181
|
+
componentDidMount(): void;
|
|
169
182
|
componentDidUpdate(prevProps: any, prevState: any, prevContext: any): void;
|
|
183
|
+
componentWillUnmount(): void;
|
|
170
184
|
menuSettings: any;
|
|
171
185
|
createMenuButtons: (items: any, primaryColor: any) => any;
|
|
172
186
|
render(): JSX.Element | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/mooc-header/index.js"],"names":[],"mappings":";AAuBA;IACE
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/mooc-header/index.js"],"names":[],"mappings":";AAuBA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAsGE;IAEF;;;;;;;;;;;;;;;;;;;;;;;MAGE;IAEF,wBAiCC;IA/BC,kBAAiD;IACjD;;;;;;;MAOC;IA8FH,6BAIC;IAED,yBAGC;IAxBD,qCAQC;IAED,wBAGC;IAjBD,+BAEC;IA4BD,2BAiBC;IAED,0BAKC;IAED,sBAIC;IAED,qBAiBC;IAaD,yBAQC;IAED,0BAQC;IAED,0BAIC;IAED,2BAIC;IAED,iCAUC;IAED,sCAKC;IAvMC,kBAAwB;IACxB,oBAA0B;IA0B5B,gCAEC;IAED,kCAEC;IAED,qCAqBC;IAmFD,sCASC;IA5ID,0BAEC;IAED,2EASC;IAED,6BAEC;IAkCC,kBAAsB;IA8IxB,0DAaE;IAEF,6BA6iBC;CACF"}
|
|
@@ -31,11 +31,14 @@ class MoocHeader extends _react.default.Component {
|
|
|
31
31
|
};
|
|
32
32
|
constructor(props) {
|
|
33
33
|
super(props);
|
|
34
|
+
this.isMobile = (0, _checkIsMobile.isMobile)(navigator?.userAgent);
|
|
34
35
|
this.state = {
|
|
35
36
|
isSettingsOpen: false,
|
|
36
37
|
isMenuOpen: false,
|
|
37
38
|
isFocus: false,
|
|
38
|
-
isToolTipOpen: false
|
|
39
|
+
isToolTipOpen: false,
|
|
40
|
+
isClosing: false,
|
|
41
|
+
isClosingStep2: false
|
|
39
42
|
};
|
|
40
43
|
this.handleSettingsToggle = this.handleSettingsToggle.bind(this);
|
|
41
44
|
this.handleMenuToggle = this.handleMenuToggle.bind(this);
|
|
@@ -51,6 +54,16 @@ class MoocHeader extends _react.default.Component {
|
|
|
51
54
|
this.handleOnMouseOver = this.handleOnMouseOver.bind(this);
|
|
52
55
|
this.handleOnMouseLeave = this.handleOnMouseLeave.bind(this);
|
|
53
56
|
this.handleKeyPress = this.handleKeyPress.bind(this);
|
|
57
|
+
this.handleSearchKeyDown = this.handleSearchKeyDown.bind(this);
|
|
58
|
+
this.searchBarRef = null;
|
|
59
|
+
this.searchInputRef = null;
|
|
60
|
+
this.setSearchBarRef = this.setSearchBarRef.bind(this);
|
|
61
|
+
this.setSearchInputRef = this.setSearchInputRef.bind(this);
|
|
62
|
+
this.handleClickOutside = this.handleClickOutside.bind(this);
|
|
63
|
+
this.handleTransitionEnd = this.handleTransitionEnd.bind(this);
|
|
64
|
+
}
|
|
65
|
+
componentDidMount() {
|
|
66
|
+
document.addEventListener('mousedown', this.handleClickOutside);
|
|
54
67
|
}
|
|
55
68
|
componentDidUpdate(prevProps, prevState, prevContext) {
|
|
56
69
|
const {
|
|
@@ -64,6 +77,33 @@ class MoocHeader extends _react.default.Component {
|
|
|
64
77
|
document.removeEventListener('touchstart', this._checkOnClose);
|
|
65
78
|
}
|
|
66
79
|
}
|
|
80
|
+
componentWillUnmount() {
|
|
81
|
+
document.removeEventListener('mousedown', this.handleClickOutside);
|
|
82
|
+
}
|
|
83
|
+
setSearchBarRef(ref) {
|
|
84
|
+
this.searchBarRef = ref;
|
|
85
|
+
}
|
|
86
|
+
setSearchInputRef(ref) {
|
|
87
|
+
this.searchInputRef = ref;
|
|
88
|
+
}
|
|
89
|
+
handleClickOutside(event) {
|
|
90
|
+
const {
|
|
91
|
+
isFocus
|
|
92
|
+
} = this.state;
|
|
93
|
+
if (isFocus) {
|
|
94
|
+
if (event.target.getAttribute('data-name') === 'mobile-overlay') {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const resetButton = event.target.getAttribute('data-name') === 'search-form-reset' || event.target.closest('[data-name="search-form-reset"]');
|
|
98
|
+
if (resetButton) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (this.searchBarRef && this.searchBarRef.contains(event.target)) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
this.handleOnBlur();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
67
107
|
setMenuSettings(el) {
|
|
68
108
|
this.menuSettings = el;
|
|
69
109
|
}
|
|
@@ -99,6 +139,17 @@ class MoocHeader extends _react.default.Component {
|
|
|
99
139
|
const {
|
|
100
140
|
onSubmitSearch
|
|
101
141
|
} = this.props;
|
|
142
|
+
|
|
143
|
+
// Utiliser la ref ou fallback sur querySelector
|
|
144
|
+
const searchInput = this.searchInputRef || document.querySelector('input[name="search"]');
|
|
145
|
+
if (searchInput) {
|
|
146
|
+
searchInput.blur();
|
|
147
|
+
}
|
|
148
|
+
this.setState({
|
|
149
|
+
isFocus: false,
|
|
150
|
+
isClosing: false,
|
|
151
|
+
isClosingStep2: false
|
|
152
|
+
});
|
|
102
153
|
if (onSubmitSearch) {
|
|
103
154
|
onSubmitSearch();
|
|
104
155
|
}
|
|
@@ -117,9 +168,33 @@ class MoocHeader extends _react.default.Component {
|
|
|
117
168
|
}));
|
|
118
169
|
}
|
|
119
170
|
handleOnBlur() {
|
|
120
|
-
this.
|
|
121
|
-
|
|
122
|
-
|
|
171
|
+
if (this.isMobile) {
|
|
172
|
+
this.setState({
|
|
173
|
+
isFocus: false
|
|
174
|
+
});
|
|
175
|
+
} else {
|
|
176
|
+
this.setState({
|
|
177
|
+
isClosing: true
|
|
178
|
+
});
|
|
179
|
+
requestAnimationFrame(() => {
|
|
180
|
+
this.setState({
|
|
181
|
+
isClosing: false,
|
|
182
|
+
isClosingStep2: true
|
|
183
|
+
});
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
handleTransitionEnd(event) {
|
|
188
|
+
const {
|
|
189
|
+
isClosingStep2
|
|
190
|
+
} = this.state;
|
|
191
|
+
if ((event.propertyName === 'max-width' || event.propertyName === 'width') && isClosingStep2) {
|
|
192
|
+
this.setState({
|
|
193
|
+
isFocus: false,
|
|
194
|
+
isClosing: false,
|
|
195
|
+
isClosingStep2: false
|
|
196
|
+
});
|
|
197
|
+
}
|
|
123
198
|
}
|
|
124
199
|
handleOnMenuOpen() {
|
|
125
200
|
const {
|
|
@@ -164,6 +239,12 @@ class MoocHeader extends _react.default.Component {
|
|
|
164
239
|
}));
|
|
165
240
|
}
|
|
166
241
|
}
|
|
242
|
+
handleSearchKeyDown(event) {
|
|
243
|
+
if (event.key === 'Enter') {
|
|
244
|
+
event.preventDefault();
|
|
245
|
+
this.handleSubmitSearch();
|
|
246
|
+
}
|
|
247
|
+
}
|
|
167
248
|
createMenuButtons = (items, primaryColor) => {
|
|
168
249
|
return items.map(item => ({
|
|
169
250
|
label: item.title,
|
|
@@ -200,14 +281,15 @@ class MoocHeader extends _react.default.Component {
|
|
|
200
281
|
isFocus,
|
|
201
282
|
isSettingsOpen,
|
|
202
283
|
isMenuOpen,
|
|
203
|
-
isToolTipOpen
|
|
284
|
+
isToolTipOpen,
|
|
285
|
+
isClosing,
|
|
286
|
+
isClosingStep2
|
|
204
287
|
} = this.state;
|
|
205
288
|
const {
|
|
206
289
|
translate,
|
|
207
290
|
skin
|
|
208
291
|
} = this.context;
|
|
209
|
-
const
|
|
210
|
-
const isMobile = (0, _checkIsMobile.isMobile)(userAgent);
|
|
292
|
+
const isMobile = this.isMobile;
|
|
211
293
|
const {
|
|
212
294
|
'aria-label': logoAriaLabel,
|
|
213
295
|
closeMenuAriaLabel,
|
|
@@ -296,7 +378,7 @@ class MoocHeader extends _react.default.Component {
|
|
|
296
378
|
}));
|
|
297
379
|
});
|
|
298
380
|
pagesView = /*#__PURE__*/_react.default.createElement("div", {
|
|
299
|
-
className:
|
|
381
|
+
className: !user ? _style.default.noItems : _style.default.items
|
|
300
382
|
}, displayedPages, items.more && (isMobile ? /*#__PURE__*/_react.default.createElement("div", {
|
|
301
383
|
className: _style.default.tabletOnlyMoreMenu
|
|
302
384
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -532,14 +614,17 @@ class MoocHeader extends _react.default.Component {
|
|
|
532
614
|
if (search) {
|
|
533
615
|
searchFormView = /*#__PURE__*/_react.default.createElement("div", {
|
|
534
616
|
"data-name": "Search-Bar",
|
|
535
|
-
className: isMenuOpen ? _style.default.hiddenSearchBar : _style.default.searchBar
|
|
617
|
+
className: isMenuOpen && !this.isMobile ? _style.default.hiddenSearchBar : _style.default.searchBar
|
|
536
618
|
}, /*#__PURE__*/_react.default.createElement(_searchForm.default, {
|
|
537
619
|
search: search,
|
|
538
620
|
onSubmit: this.handleSubmitSearch,
|
|
539
621
|
onReset: this.handleResetSearch,
|
|
540
622
|
onSearchFocus: this.handleOnFocus,
|
|
541
623
|
onSearchBlur: this.handleOnBlur,
|
|
542
|
-
|
|
624
|
+
onSearchKeyDown: this.handleSearchKeyDown,
|
|
625
|
+
inputRef: this.setSearchInputRef,
|
|
626
|
+
"search-reset-aria-label": searchResetAriaLabel,
|
|
627
|
+
theme: "mooc"
|
|
543
628
|
}));
|
|
544
629
|
}
|
|
545
630
|
return /*#__PURE__*/_react.default.createElement("header", {
|
|
@@ -549,7 +634,7 @@ class MoocHeader extends _react.default.Component {
|
|
|
549
634
|
"data-open": isMenuOpen,
|
|
550
635
|
className: isMenuOpen ? _style.default.open : _style.default.header
|
|
551
636
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
552
|
-
className: _style.default.logoWrapper,
|
|
637
|
+
className: (0, _classnames.default)(_style.default.logoWrapper, this.isMobile && isFocus && _style.default.logoWrapperMobileHidden),
|
|
553
638
|
"aria-label": toolTipText,
|
|
554
639
|
onMouseOver: this.handleOnMouseOver,
|
|
555
640
|
onMouseLeave: this.handleOnMouseLeave
|
|
@@ -614,10 +699,44 @@ class MoocHeader extends _react.default.Component {
|
|
|
614
699
|
style: {
|
|
615
700
|
color: primaryColor
|
|
616
701
|
}
|
|
617
|
-
}))) : null)),
|
|
702
|
+
}))) : null)), this.isMobile ?
|
|
703
|
+
/*#__PURE__*/
|
|
704
|
+
// Version mobile simplifiée
|
|
705
|
+
_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
706
|
+
className: isFocus ? _style.default.mobileSearchContainerFocus : _style.default.mobileSearchContainer,
|
|
707
|
+
ref: this.setSearchBarRef
|
|
708
|
+
}, searchFormView), isFocus ? /*#__PURE__*/_react.default.createElement("div", {
|
|
709
|
+
className: _style.default.mobileSearchOverlay,
|
|
710
|
+
onClick: this.handleOnBlur,
|
|
711
|
+
"data-name": "mobile-overlay"
|
|
712
|
+
}) : null, /*#__PURE__*/_react.default.createElement("nav", {
|
|
713
|
+
className: isMenuOpen ? _style.default.menuWrapper : _style.default.hiddenMenuWrapper,
|
|
714
|
+
"data-name": "menu-wrapper"
|
|
715
|
+
}, pagesView, userView || linksView, settingsView)) :
|
|
716
|
+
/*#__PURE__*/
|
|
717
|
+
// Version desktop avec toutes les animations complexes
|
|
718
|
+
_react.default.createElement("div", {
|
|
719
|
+
className: (0, _classnames.default)({
|
|
720
|
+
[_style.default.rightZone]: !isFocus && !isClosing && !isClosingStep2
|
|
721
|
+
}, {
|
|
722
|
+
[_style.default.rightZoneFocus]: isFocus || isClosing || isClosingStep2
|
|
723
|
+
}, {
|
|
724
|
+
[_style.default.searchBarActive]: isFocus || isClosing || isClosingStep2
|
|
725
|
+
})
|
|
726
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
727
|
+
className: (0, _classnames.default)(_style.default.floatingSearchBar, {
|
|
728
|
+
[_style.default['floatingSearchBar--expanded']]: isFocus && !isClosing && !isClosingStep2,
|
|
729
|
+
[_style.default['floatingSearchBar--closing']]: isClosing
|
|
730
|
+
}),
|
|
731
|
+
ref: this.setSearchBarRef,
|
|
732
|
+
onTransitionEnd: this.handleTransitionEnd
|
|
733
|
+
}, searchFormView), isFocus || isClosing || isClosingStep2 ? /*#__PURE__*/_react.default.createElement("div", {
|
|
734
|
+
className: _style.default.searchOverlay,
|
|
735
|
+
onClick: this.handleOnBlur
|
|
736
|
+
}) : null, /*#__PURE__*/_react.default.createElement("nav", {
|
|
618
737
|
className: isMenuOpen ? _style.default.menuWrapper : _style.default.hiddenMenuWrapper,
|
|
619
738
|
"data-name": "menu-wrapper"
|
|
620
|
-
}, pagesView, userView || linksView, settingsView)));
|
|
739
|
+
}, pagesView, userView || linksView, settingsView))));
|
|
621
740
|
}
|
|
622
741
|
}
|
|
623
742
|
MoocHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_novaIcons","_reactFontawesome","_provider","_cta","_inputSelect","_picture","_inputSwitch","_link","_inputSearch","_searchForm","_buttonMenuAction","_colors","_checkIsMobile","_style","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","MoocHeader","React","Component","contextTypes","translate","Provider","childContextTypes","skin","constructor","props","state","isSettingsOpen","isMenuOpen","isFocus","isToolTipOpen","handleSettingsToggle","handleMenuToggle","_checkOnClose","handleLinkClick","setMenuSettings","handleSubmitSearch","handleResetSearch","handleOnFocus","handleOnBlur","handleOnMenuOpen","handleOnMenuClose","handleOnMouseOver","handleOnMouseLeave","handleKeyPress","componentDidUpdate","prevProps","prevState","prevContext","document","addEventListener","removeEventListener","el","menuSettings","clickEvent","menu","contains","target","setState","onSubmitSearch","onResetSearch","onMenuOpen","onMenuClose","event","key","createMenuButtons","items","primaryColor","map","item","label","title","disabled","type","link","href","name","customStyle","padding","selected","color","customLabelClassName","style","buttonContentLabel","render","_isEmpty2","logo","pages","settings","user","links","search","searchResetAriaLabel","settingsAriaLabel","activePageAriaLabel","groupAriaLbale","context","userAgent","navigator","isMobile","getIsMobile","logoAriaLabel","closeMenuAriaLabel","openMenuAriaLabel","toolTipText","closeToolTipInformationTextAriaLabel","logoUrl","_get2","logoMobileUrl","_getOr2","pagesView","linksView","userView","settingsView","notificationsView","searchFormView","moreAriaLabel","mediumColor","displayedPages","displayed","index","activeColor","pageCountAriaLabel","itemLabel","pageBadge","counter","createElement","className","classnames","itemBadge","activePage","itemName","hoverColor","COLORS","brand","onClick","bar","backgroundColor","optionsView","more","option","line","value","noItems","tabletOnlyMoreMenu","optionsGroup","desktopOnlyMoreMenu","button","containerCustom","alignItems","closeOnClick","enableScroll","menuWrapper","top","maxWidth","buttons","showFade","ctas","cta","ctaLink","nbNotifications","notificationsAriaLabel","notifications","notificationPageView","notification","active","FontAwesomeIcon","icon","negative_700","neutral_500","stats","stat","stars","yellow_500","ranking","badge","neutral_400","myList","purple_500","avatarWrapper","settingsElements","setting","settingView","options","settingName","ariaLabel","iconView","linkIcon","settingLink","selectProps","values","opt","find","onChange","placeholder","selectBoxes","switchProps","id","titlePosition","theme","ref","userAvatarWrapper","userAvatarOpen","userLinkAvatar","role","avatar","src","picture","alt","profileAvatarAlt","settingsWrapper","settingsWrapperHidden","settingsGroup","hiddenSearchBar","searchBar","onSubmit","onReset","onSearchFocus","onSearchBlur","wrapper","open","header","logoWrapper","onMouseOver","onMouseLeave","navMobile","NovaCompositionNavigationBurger","burgerHidden","burger","NovaCompositionNavigationClose","close","closeHidden","onKeyDown","tabIndex","tooltipIconContainer","NovaCompositionCoorpacademyPlacesHome24","homeIcon","dangerouslySetInnerHTML","__html","hiddenMenuWrapper","propTypes","process","env","NODE_ENV","PropTypes","shape","string","srcMobile","Search","func","arrayOf","oneOf","bool","number","Cta","_default","exports"],"sources":["../../../src/organism/mooc-header/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, get, isEmpty} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {\n NovaCompositionNavigationBurger as BurgerIcon,\n NovaCompositionNavigationClose as CloseIcon,\n NovaCompositionCoorpacademyPlacesHome24 as HomeIcon\n} from '@coorpacademy/nova-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport Provider from '../../atom/provider';\nimport Cta from '../../atom/cta';\nimport InputSelect from '../../atom/input-select';\nimport Picture from '../../atom/picture';\nimport InputSwitch from '../../atom/input-switch';\nimport Link from '../../atom/link';\nimport Search from '../../atom/input-search';\nimport SearchForm from '../../molecule/search-form';\nimport ButtonMenuAction from '../../molecule/button-menu-action';\nimport {COLORS} from '../../variables/colors';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport style from './style.css';\n\nclass MoocHeader extends React.Component {\n static propTypes = {\n logo: PropTypes.shape({\n src: PropTypes.string,\n srcMobile: PropTypes.string,\n href: PropTypes.string,\n 'aria-label': PropTypes.string,\n 'button-aria-label': PropTypes.string,\n toolTipText: PropTypes.string,\n closeToolTipInformationTextAriaLabel: PropTypes.string\n }),\n search: PropTypes.shape(Search.propTypes),\n 'search-reset-aria-label': PropTypes.string,\n onSubmitSearch: PropTypes.func,\n onResetSearch: PropTypes.func,\n pages: PropTypes.shape({\n displayed: PropTypes.arrayOf(\n PropTypes.shape({\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),\n title: PropTypes.string,\n name: PropTypes.string,\n href: PropTypes.string,\n selected: PropTypes.bool,\n disabled: PropTypes.bool,\n counter: PropTypes.number,\n 'page-count-aria-label': PropTypes.string\n })\n ),\n more: PropTypes.arrayOf(\n PropTypes.shape({\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),\n title: PropTypes.string,\n name: PropTypes.string,\n href: PropTypes.string,\n selected: PropTypes.bool,\n disabled: PropTypes.bool,\n counter: PropTypes.number\n })\n )\n }),\n links: PropTypes.arrayOf(PropTypes.shape(Cta.propTypes)),\n user: PropTypes.shape({\n picture: PropTypes.string,\n 'picture-aria-label': PropTypes.string,\n profileAvatarAlt: PropTypes.string,\n href: PropTypes.string,\n notifications: PropTypes.shape({\n href: PropTypes.string,\n value: PropTypes.number,\n 'aria-label': PropTypes.string\n }),\n stats: PropTypes.shape({\n stars: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n ranking: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n badge: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n myList: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n })\n })\n }),\n 'settings-aria-label': PropTypes.string,\n 'active-page-aria-label': PropTypes.string,\n 'group-settings-aria-label': PropTypes.string,\n settings: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n name: PropTypes.string,\n type: PropTypes.oneOf(['select', 'switch', 'link', 'danger-link']),\n color: PropTypes.string,\n 'aria-label': PropTypes.string,\n icon: PropTypes.string,\n options: PropTypes.shape({\n href: PropTypes.string,\n onChange: PropTypes.func,\n value: PropTypes.bool,\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),\n values: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n name: PropTypes.string,\n selected: PropTypes.bool\n })\n )\n })\n })\n ),\n onMenuOpen: PropTypes.func,\n onMenuClose: PropTypes.func,\n enableScroll: PropTypes.bool\n };\n\n static contextTypes = {\n translate: Provider.childContextTypes.translate,\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props) {\n super(props);\n this.state = {\n isSettingsOpen: false,\n isMenuOpen: false,\n isFocus: false,\n isToolTipOpen: false\n };\n\n this.handleSettingsToggle = this.handleSettingsToggle.bind(this);\n this.handleMenuToggle = this.handleMenuToggle.bind(this);\n this._checkOnClose = this._checkOnClose.bind(this);\n this.handleLinkClick = this.handleLinkClick.bind(this);\n this.setMenuSettings = this.setMenuSettings.bind(this);\n this.handleSubmitSearch = this.handleSubmitSearch.bind(this);\n this.handleResetSearch = this.handleResetSearch.bind(this);\n this.handleOnFocus = this.handleOnFocus.bind(this);\n this.handleOnBlur = this.handleOnBlur.bind(this);\n this.handleOnMenuOpen = this.handleOnMenuOpen.bind(this);\n this.handleOnMenuClose = this.handleOnMenuClose.bind(this);\n this.handleOnMouseOver = this.handleOnMouseOver.bind(this);\n this.handleOnMouseLeave = this.handleOnMouseLeave.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n }\n\n componentDidUpdate(prevProps, prevState, prevContext) {\n const {isSettingsOpen} = this.state;\n if (isSettingsOpen) {\n document.addEventListener('click', this._checkOnClose);\n document.addEventListener('touchstart', this._checkOnClose);\n } else {\n document.removeEventListener('click', this._checkOnClose);\n document.removeEventListener('touchstart', this._checkOnClose);\n }\n }\n\n setMenuSettings(el) {\n this.menuSettings = el;\n }\n\n _checkOnClose(clickEvent) {\n const {isSettingsOpen} = this.state;\n if (isSettingsOpen) {\n const menu = this.menuSettings;\n if (menu && !menu.contains(clickEvent.target)) {\n this.handleSettingsToggle();\n }\n }\n }\n\n handleLinkClick() {\n const {isMenuOpen} = this.state;\n isMenuOpen && this.handleMenuToggle();\n }\n\n handleSettingsToggle() {\n this.setState(prevState => ({\n isSettingsOpen: !prevState.isSettingsOpen\n }));\n }\n\n handleMenuToggle() {\n const {isMenuOpen} = this.state;\n isMenuOpen ? this.handleOnMenuClose() : this.handleOnMenuOpen();\n }\n\n handleSubmitSearch() {\n const {onSubmitSearch} = this.props;\n if (onSubmitSearch) {\n onSubmitSearch();\n }\n }\n\n handleResetSearch() {\n const {onResetSearch} = this.props;\n if (onResetSearch) {\n onResetSearch();\n }\n }\n\n handleOnFocus() {\n this.setState(prevState => ({\n isFocus: true\n }));\n }\n\n handleOnBlur() {\n this.setState(prevState => ({\n isFocus: false\n }));\n }\n\n handleOnMenuOpen() {\n const {onMenuOpen} = this.props;\n if (onMenuOpen) {\n onMenuOpen();\n }\n this.setState(() => ({\n isMenuOpen: true\n }));\n }\n\n handleOnMenuClose() {\n const {onMenuClose} = this.props;\n if (onMenuClose) {\n onMenuClose();\n }\n this.setState(() => ({\n isMenuOpen: false\n }));\n }\n\n handleOnMouseOver() {\n this.setState(() => ({\n isToolTipOpen: true\n }));\n }\n\n handleOnMouseLeave() {\n this.setState(() => ({\n isToolTipOpen: false\n }));\n }\n\n handleKeyPress(event) {\n if (event.key === 'Enter') {\n this.setState(() => ({\n isToolTipOpen: true\n }));\n } else if (event.key === 'Tab' || event.key === 'Escape') {\n this.setState(() => ({\n isToolTipOpen: false\n }));\n }\n }\n\n createMenuButtons = (items, primaryColor) => {\n return items.map(item => ({\n label: item.title,\n disabled: item.disabled,\n type: 'defaultLeft',\n link: {href: item.href},\n 'data-name': `item-more-${item.name}`,\n customStyle: {\n padding: '0 16px',\n ...(item.selected && {color: primaryColor})\n },\n customLabelClassName: style.buttonContentLabel\n }));\n };\n\n render() {\n if (isEmpty(this.props)) return null;\n const {\n logo = {},\n pages: items,\n settings,\n user,\n links,\n search,\n 'search-reset-aria-label': searchResetAriaLabel,\n 'settings-aria-label': settingsAriaLabel,\n 'active-page-aria-label': activePageAriaLabel,\n 'group-settings-aria-label': groupAriaLbale\n } = this.props;\n const {isFocus, isSettingsOpen, isMenuOpen, isToolTipOpen} = this.state;\n const {translate, skin} = this.context;\n const userAgent = navigator?.userAgent;\n const isMobile = getIsMobile(userAgent);\n\n const {\n 'aria-label': logoAriaLabel,\n closeMenuAriaLabel,\n openMenuAriaLabel,\n toolTipText,\n closeToolTipInformationTextAriaLabel\n } = logo;\n const logoUrl = get('src', logo) || get('images.logo', skin);\n const logoMobileUrl = get('srcMobile', logo) || getOr(logoUrl, 'images.logo-mobile', skin);\n let pagesView = null;\n let linksView = null;\n let userView = null;\n let settingsView = null;\n let notificationsView = null;\n let searchFormView = null;\n\n const moreAriaLabel = translate('More');\n const primaryColor = get('common.primary', skin);\n const mediumColor = get('common.medium', skin);\n\n if (items) {\n const displayedPages = items.displayed.map((item, index) => {\n const activeColor = item.selected\n ? {\n color: primaryColor\n }\n : null;\n const {'page-count-aria-label': pageCountAriaLabel} = item;\n const itemLabel = item.selected ? `${item.title}. ${activePageAriaLabel}` : item.title;\n const pageBadge =\n item.counter > 0 ? (\n <Link\n href={item.href}\n data-name=\"item-badge\"\n disabled={item.disabled}\n className={classnames(\n style.itemBadge,\n item.selected && style.activePage,\n item.disabled && style.disabled\n )}\n aria-label={pageCountAriaLabel}\n >\n <span className={style.counter}>{item.counter > 99 ? '99+' : item.counter}</span>\n </Link>\n ) : null;\n\n const {name: itemName = index} = item;\n\n return (\n <Link\n key={itemName}\n data-name={`item-${itemName}`}\n href={item.href}\n disabled={item.disabled}\n className={classnames(\n style.item,\n item.disabled && item.selected && style.activePage,\n item.disabled && style.disabled\n )}\n hoverColor={item.disabled ? '' : getOr(COLORS.brand, 'common.primary', skin)}\n onClick={this.handleLinkClick}\n target={item.target || null}\n aria-label={itemLabel}\n style={{\n ...activeColor\n }}\n >\n {item.title}\n {pageBadge}\n <span\n className={style.bar}\n style={{\n backgroundColor: primaryColor\n }}\n />\n </Link>\n );\n });\n\n const optionsView = items.more.map((item, index) => {\n const activeColor = item.selected\n ? {\n color: primaryColor\n }\n : null;\n const itemLabel = item.selected ? `${item.title}. ${activePageAriaLabel}` : item.title;\n const {name: itemName = index} = item;\n return (\n <Link\n href={item.href}\n key={itemName}\n disabled={item.disabled}\n className={classnames(style.option, item.disabled && style.disabled)}\n data-name={`item-more-${itemName}`}\n target={item.target || null}\n aria-label={itemLabel}\n onClick={this.handleLinkClick}\n hoverColor={item.disabled ? '' : getOr(COLORS.brand, 'common.primary', skin)}\n style={{\n ...activeColor\n }}\n >\n {item.title}\n <span\n className={style.line}\n style={{\n backgroundColor: primaryColor\n }}\n />\n </Link>\n );\n });\n pagesView = (\n <div className={search.value || isFocus ? style.noItems : style.items}>\n {displayedPages}\n {items.more &&\n (isMobile ? (\n <div className={style.tabletOnlyMoreMenu}>\n <div className={style.optionsGroup}>{optionsView}</div>\n </div>\n ) : (\n <div className={style.desktopOnlyMoreMenu}>\n <ButtonMenuAction\n button={{\n label: moreAriaLabel,\n 'aria-label': moreAriaLabel,\n 'data-name': 'item-more'\n }}\n type=\"link\"\n primaryColor={primaryColor}\n containerCustom={{alignItems: 'flex-start'}}\n closeOnClick\n enableScroll\n menuWrapper={{\n customStyle: {\n top: '30px',\n maxWidth: 360\n }\n }}\n menu={{\n buttons: this.createMenuButtons(items.more, primaryColor)\n }}\n showFade\n />\n </div>\n ))}\n </div>\n );\n }\n\n if (links) {\n const ctas = links.map((cta, index) => {\n return (\n <Cta {...cta} key={index} className={index + 1 === links.length ? null : style.ctaLink} />\n );\n });\n\n linksView = <div className={style.links}>{ctas}</div>;\n }\n\n if (user) {\n const nbNotifications = getOr(0, 'notifications.value', user);\n const notificationsAriaLabel = getOr('', 'notifications.aria-label', user);\n\n notificationsView =\n nbNotifications > 0 ? (\n <Link\n href={user.notifications.href}\n data-name=\"user-notifications\"\n className={style.notifications}\n >\n {nbNotifications > 99 ? '99+' : nbNotifications}\n </Link>\n ) : null;\n const notificationPageView = (\n <Link\n className={classnames(style.notification, nbNotifications > 0 ? style.active : null)}\n data-name=\"stat-notifications\"\n href={user.notifications.href}\n aria-label={notificationsAriaLabel}\n >\n <FontAwesomeIcon\n icon=\"bell\"\n style={{color: nbNotifications > 0 ? COLORS.negative_700 : COLORS.neutral_500}}\n />\n {notificationsView}\n </Link>\n );\n userView = (\n <div className={style.user}>\n <div className={style.stats}>\n <Link\n className={style.stat}\n data-name=\"stat-stars\"\n href={user.stats.stars.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.stars['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"star\"\n style={{color: COLORS.yellow_500}}\n className={style.stars}\n />\n </div>\n <div data-name=\"value\" className={style.label}>\n {user.stats.stars.label}\n </div>\n </Link>\n <Link\n className={style.stat}\n data-name=\"stat-ranking\"\n href={user.stats.ranking.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.ranking['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"ranking-star\"\n className={style.ranking}\n style={{color: primaryColor}}\n />\n </div>\n\n <div data-name=\"value\" className={style.label}>\n {user.stats.ranking.label}\n </div>\n </Link>\n <Link\n className={style.stat}\n data-name=\"stat-badge\"\n href={user.stats.badge.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.badge['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"trophy\"\n className={style.badge}\n style={{color: COLORS.neutral_400}}\n />\n </div>\n <div className={style.label}>{user.stats.badge.label}</div>\n </Link>\n <Link\n className={style.stat}\n data-name=\"stat-my-list\"\n href={user.stats.myList.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.myList['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"list-check\"\n className={style.icon}\n style={{color: COLORS.purple_500}}\n />\n </div>\n <div className={style.label}>{user.stats.myList.label}</div>\n </Link>\n </div>\n <div className={style.avatarWrapper}>{notificationPageView}</div>\n </div>\n );\n }\n\n if (settings) {\n const settingsElements = settings.map((setting, index) => {\n let settingView = null;\n const {\n options,\n type,\n title,\n name: settingName = index,\n 'aria-label': ariaLabel,\n icon,\n disabled = false\n } = setting;\n\n switch (type) {\n case 'link':\n case 'danger-link': {\n const iconView =\n icon && !isMobile ? <FontAwesomeIcon icon={icon} className={style.linkIcon} /> : null;\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, disabled && style.disabled)}\n key={settingName}\n >\n <Link\n className={style.settingLink}\n href={options.href}\n onClick={this.handleLinkClick}\n target={options.target || null}\n aria-label={ariaLabel || title}\n >\n {iconView}\n {title}\n </Link>\n </div>\n );\n break;\n }\n case 'select': {\n const selectProps = {\n options: options.values.map(opt => ({\n value: opt.value,\n label: opt.name,\n 'data-name': `setting-${settingName}-option-${opt.value}`\n })),\n value: options.values.find(opt => opt.selected)?.value,\n onChange: options.onChange,\n placeholder: title,\n 'aria-label': ariaLabel || title,\n 'button-data-testid': `setting-${settingName}-button`\n };\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, style.selectBoxes)}\n key={settingName}\n >\n <InputSelect {...selectProps} />\n </div>\n );\n break;\n }\n case 'switch': {\n const switchProps = {\n value: options.value,\n id: `input-switch-${index}`,\n onChange: options.onChange,\n titlePosition: 'left',\n theme: 'newMooc',\n type: 'switch',\n title,\n icon\n };\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, disabled && style.disabled)}\n key={settingName}\n aria-label={ariaLabel || title}\n >\n <InputSwitch {...switchProps} aria-labelledby={`title-id-${settingName}`} />\n </div>\n );\n break;\n }\n }\n\n return settingView;\n });\n\n settingsView = (\n <div className={style.settings} ref={this.setMenuSettings}>\n <div\n data-name=\"user-avatar-wrapper\"\n className={classnames(style.userAvatarWrapper, isSettingsOpen && style.userAvatarOpen)}\n >\n <Link\n className={classnames(style.userLinkAvatar)}\n onClick={this.handleSettingsToggle}\n aria-expanded={isSettingsOpen}\n aria-label={settingsAriaLabel}\n aria-haspopup=\"true\"\n role=\"button\"\n >\n <Picture\n className={style.avatar}\n src={user && user.picture}\n alt={user && user.profileAvatarAlt}\n />\n </Link>\n </div>\n <div className={isSettingsOpen ? style.settingsWrapper : style.settingsWrapperHidden}>\n <div\n data-name=\"settings\"\n className={style.settingsGroup}\n role=\"group\"\n aria-label={groupAriaLbale}\n >\n {settingsElements}\n </div>\n </div>\n </div>\n );\n }\n\n if (search) {\n searchFormView = (\n <div\n data-name=\"Search-Bar\"\n className={isMenuOpen ? style.hiddenSearchBar : style.searchBar}\n >\n <SearchForm\n search={search}\n onSubmit={this.handleSubmitSearch}\n onReset={this.handleResetSearch}\n onSearchFocus={this.handleOnFocus}\n onSearchBlur={this.handleOnBlur}\n search-reset-aria-label={searchResetAriaLabel}\n />\n </div>\n );\n }\n\n return (\n <header className={style.wrapper}>\n <div\n data-name=\"moocHeader\"\n data-open={isMenuOpen}\n className={isMenuOpen ? style.open : style.header}\n >\n <div\n className={style.logoWrapper}\n aria-label={toolTipText}\n onMouseOver={this.handleOnMouseOver}\n onMouseLeave={this.handleOnMouseLeave}\n >\n <div className={style.navMobile} data-name=\"nav-mobile\">\n <BurgerIcon\n role=\"button\"\n data-name=\"nav-mobile-open\"\n style={{color: mediumColor}}\n className={isMenuOpen ? style.burgerHidden : style.burger}\n onClick={this.handleOnMenuOpen}\n aria-label={openMenuAriaLabel}\n />\n <CloseIcon\n data-name=\"nav-mobile-close\"\n style={{color: mediumColor}}\n className={isMenuOpen ? style.close : style.closeHidden}\n onClick={this.handleOnMenuClose}\n aria-label={closeMenuAriaLabel}\n />\n <Link data-name=\"logo-mobile\" href={logo.href}>\n <Picture src={logoMobileUrl} alt={logoAriaLabel} />\n </Link>\n </div>\n <Link\n className={style.logo}\n data-name=\"logo\"\n id=\"logo\"\n href={logo.href}\n onKeyDown={this.handleKeyPress}\n tabIndex={0}\n data-testid=\"brand-logo\"\n >\n <Picture src={logoUrl} alt={logoAriaLabel} />\n {isToolTipOpen ? (\n <div aria-label={toolTipText} tabIndex={0} data-testid=\"home-tooltip\">\n <div\n aria-label={`${toolTipText} ${closeToolTipInformationTextAriaLabel}`}\n role=\"tooltip\"\n className={style.tooltipIconContainer}\n tabIndex={0}\n >\n <HomeIcon className={style.homeIcon} style={{color: primaryColor}} />\n <p\n className={style.toolTipText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: toolTipText}}\n style={{color: primaryColor}}\n />\n </div>\n </div>\n ) : null}\n </Link>\n </div>\n {searchFormView}\n <nav\n className={isMenuOpen ? style.menuWrapper : style.hiddenMenuWrapper}\n data-name=\"menu-wrapper\"\n >\n {pagesView}\n {userView || linksView}\n {settingsView}\n </nav>\n </div>\n </header>\n );\n }\n}\n\nexport default MoocHeader;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_novaIcons","_reactFontawesome","_provider","_cta","_inputSelect","_picture","_inputSwitch","_link","_inputSearch","_searchForm","_buttonMenuAction","_colors","_checkIsMobile","_style","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","MoocHeader","React","Component","contextTypes","translate","Provider","childContextTypes","skin","constructor","props","isMobile","getIsMobile","navigator","userAgent","state","isSettingsOpen","isMenuOpen","isFocus","isToolTipOpen","isClosing","isClosingStep2","handleSettingsToggle","handleMenuToggle","_checkOnClose","handleLinkClick","setMenuSettings","handleSubmitSearch","handleResetSearch","handleOnFocus","handleOnBlur","handleOnMenuOpen","handleOnMenuClose","handleOnMouseOver","handleOnMouseLeave","handleKeyPress","handleSearchKeyDown","searchBarRef","searchInputRef","setSearchBarRef","setSearchInputRef","handleClickOutside","handleTransitionEnd","componentDidMount","document","addEventListener","componentDidUpdate","prevProps","prevState","prevContext","removeEventListener","componentWillUnmount","ref","event","target","getAttribute","resetButton","closest","contains","el","menuSettings","clickEvent","menu","setState","onSubmitSearch","searchInput","querySelector","blur","onResetSearch","requestAnimationFrame","propertyName","onMenuOpen","onMenuClose","key","preventDefault","createMenuButtons","items","primaryColor","map","item","label","title","disabled","type","link","href","name","customStyle","padding","selected","color","customLabelClassName","style","buttonContentLabel","render","_isEmpty2","logo","pages","settings","user","links","search","searchResetAriaLabel","settingsAriaLabel","activePageAriaLabel","groupAriaLbale","context","logoAriaLabel","closeMenuAriaLabel","openMenuAriaLabel","toolTipText","closeToolTipInformationTextAriaLabel","logoUrl","_get2","logoMobileUrl","_getOr2","pagesView","linksView","userView","settingsView","notificationsView","searchFormView","moreAriaLabel","mediumColor","displayedPages","displayed","index","activeColor","pageCountAriaLabel","itemLabel","pageBadge","counter","createElement","className","classnames","itemBadge","activePage","itemName","hoverColor","COLORS","brand","onClick","bar","backgroundColor","optionsView","more","option","line","noItems","tabletOnlyMoreMenu","optionsGroup","desktopOnlyMoreMenu","button","containerCustom","alignItems","closeOnClick","enableScroll","menuWrapper","top","maxWidth","buttons","showFade","ctas","cta","ctaLink","nbNotifications","notificationsAriaLabel","notifications","notificationPageView","notification","active","FontAwesomeIcon","icon","negative_700","neutral_500","stats","stat","stars","yellow_500","ranking","badge","neutral_400","myList","purple_500","avatarWrapper","settingsElements","setting","settingView","options","settingName","ariaLabel","iconView","linkIcon","settingLink","selectProps","values","opt","value","find","onChange","placeholder","selectBoxes","switchProps","id","titlePosition","theme","userAvatarWrapper","userAvatarOpen","userLinkAvatar","role","avatar","src","picture","alt","profileAvatarAlt","settingsWrapper","settingsWrapperHidden","settingsGroup","hiddenSearchBar","searchBar","onSubmit","onReset","onSearchFocus","onSearchBlur","onSearchKeyDown","inputRef","wrapper","open","header","logoWrapper","logoWrapperMobileHidden","onMouseOver","onMouseLeave","navMobile","NovaCompositionNavigationBurger","burgerHidden","burger","NovaCompositionNavigationClose","close","closeHidden","onKeyDown","tabIndex","tooltipIconContainer","NovaCompositionCoorpacademyPlacesHome24","homeIcon","dangerouslySetInnerHTML","__html","Fragment","mobileSearchContainerFocus","mobileSearchContainer","mobileSearchOverlay","hiddenMenuWrapper","rightZone","rightZoneFocus","searchBarActive","floatingSearchBar","onTransitionEnd","searchOverlay","propTypes","process","env","NODE_ENV","PropTypes","shape","string","srcMobile","Search","func","arrayOf","oneOf","bool","number","Cta","_default","exports"],"sources":["../../../src/organism/mooc-header/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, get, isEmpty} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {\n NovaCompositionNavigationBurger as BurgerIcon,\n NovaCompositionNavigationClose as CloseIcon,\n NovaCompositionCoorpacademyPlacesHome24 as HomeIcon\n} from '@coorpacademy/nova-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport Provider from '../../atom/provider';\nimport Cta from '../../atom/cta';\nimport InputSelect from '../../atom/input-select';\nimport Picture from '../../atom/picture';\nimport InputSwitch from '../../atom/input-switch';\nimport Link from '../../atom/link';\nimport Search from '../../atom/input-search';\nimport SearchForm from '../../molecule/search-form';\nimport ButtonMenuAction from '../../molecule/button-menu-action';\nimport {COLORS} from '../../variables/colors';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport style from './style.css';\n\nclass MoocHeader extends React.Component {\n static propTypes = {\n logo: PropTypes.shape({\n src: PropTypes.string,\n srcMobile: PropTypes.string,\n href: PropTypes.string,\n 'aria-label': PropTypes.string,\n 'button-aria-label': PropTypes.string,\n toolTipText: PropTypes.string,\n closeToolTipInformationTextAriaLabel: PropTypes.string\n }),\n search: PropTypes.shape(Search.propTypes),\n 'search-reset-aria-label': PropTypes.string,\n onSubmitSearch: PropTypes.func,\n onResetSearch: PropTypes.func,\n pages: PropTypes.shape({\n displayed: PropTypes.arrayOf(\n PropTypes.shape({\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),\n title: PropTypes.string,\n name: PropTypes.string,\n href: PropTypes.string,\n selected: PropTypes.bool,\n disabled: PropTypes.bool,\n counter: PropTypes.number,\n 'page-count-aria-label': PropTypes.string\n })\n ),\n more: PropTypes.arrayOf(\n PropTypes.shape({\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),\n title: PropTypes.string,\n name: PropTypes.string,\n href: PropTypes.string,\n selected: PropTypes.bool,\n disabled: PropTypes.bool,\n counter: PropTypes.number\n })\n )\n }),\n links: PropTypes.arrayOf(PropTypes.shape(Cta.propTypes)),\n user: PropTypes.shape({\n picture: PropTypes.string,\n 'picture-aria-label': PropTypes.string,\n profileAvatarAlt: PropTypes.string,\n href: PropTypes.string,\n notifications: PropTypes.shape({\n href: PropTypes.string,\n value: PropTypes.number,\n 'aria-label': PropTypes.string\n }),\n stats: PropTypes.shape({\n stars: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n ranking: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n badge: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n myList: PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n 'aria-label': PropTypes.string\n })\n })\n }),\n 'settings-aria-label': PropTypes.string,\n 'active-page-aria-label': PropTypes.string,\n 'group-settings-aria-label': PropTypes.string,\n settings: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n name: PropTypes.string,\n type: PropTypes.oneOf(['select', 'switch', 'link', 'danger-link']),\n color: PropTypes.string,\n 'aria-label': PropTypes.string,\n icon: PropTypes.string,\n options: PropTypes.shape({\n href: PropTypes.string,\n onChange: PropTypes.func,\n value: PropTypes.bool,\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),\n values: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n name: PropTypes.string,\n selected: PropTypes.bool\n })\n )\n })\n })\n ),\n onMenuOpen: PropTypes.func,\n onMenuClose: PropTypes.func,\n enableScroll: PropTypes.bool\n };\n\n static contextTypes = {\n translate: Provider.childContextTypes.translate,\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props) {\n super(props);\n this.isMobile = getIsMobile(navigator?.userAgent);\n this.state = {\n isSettingsOpen: false,\n isMenuOpen: false,\n isFocus: false,\n isToolTipOpen: false,\n isClosing: false,\n isClosingStep2: false\n };\n\n this.handleSettingsToggle = this.handleSettingsToggle.bind(this);\n this.handleMenuToggle = this.handleMenuToggle.bind(this);\n this._checkOnClose = this._checkOnClose.bind(this);\n this.handleLinkClick = this.handleLinkClick.bind(this);\n this.setMenuSettings = this.setMenuSettings.bind(this);\n this.handleSubmitSearch = this.handleSubmitSearch.bind(this);\n this.handleResetSearch = this.handleResetSearch.bind(this);\n this.handleOnFocus = this.handleOnFocus.bind(this);\n this.handleOnBlur = this.handleOnBlur.bind(this);\n this.handleOnMenuOpen = this.handleOnMenuOpen.bind(this);\n this.handleOnMenuClose = this.handleOnMenuClose.bind(this);\n this.handleOnMouseOver = this.handleOnMouseOver.bind(this);\n this.handleOnMouseLeave = this.handleOnMouseLeave.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleSearchKeyDown = this.handleSearchKeyDown.bind(this);\n this.searchBarRef = null;\n this.searchInputRef = null;\n this.setSearchBarRef = this.setSearchBarRef.bind(this);\n this.setSearchInputRef = this.setSearchInputRef.bind(this);\n this.handleClickOutside = this.handleClickOutside.bind(this);\n this.handleTransitionEnd = this.handleTransitionEnd.bind(this);\n }\n\n componentDidMount() {\n document.addEventListener('mousedown', this.handleClickOutside);\n }\n\n componentDidUpdate(prevProps, prevState, prevContext) {\n const {isSettingsOpen} = this.state;\n if (isSettingsOpen) {\n document.addEventListener('click', this._checkOnClose);\n document.addEventListener('touchstart', this._checkOnClose);\n } else {\n document.removeEventListener('click', this._checkOnClose);\n document.removeEventListener('touchstart', this._checkOnClose);\n }\n }\n\n componentWillUnmount() {\n document.removeEventListener('mousedown', this.handleClickOutside);\n }\n\n setSearchBarRef(ref) {\n this.searchBarRef = ref;\n }\n\n setSearchInputRef(ref) {\n this.searchInputRef = ref;\n }\n\n handleClickOutside(event) {\n const {isFocus} = this.state;\n if (isFocus) {\n if (event.target.getAttribute('data-name') === 'mobile-overlay') {\n return;\n }\n\n const resetButton =\n event.target.getAttribute('data-name') === 'search-form-reset' ||\n event.target.closest('[data-name=\"search-form-reset\"]');\n\n if (resetButton) {\n return;\n }\n\n if (this.searchBarRef && this.searchBarRef.contains(event.target)) {\n return;\n }\n\n this.handleOnBlur();\n }\n }\n\n setMenuSettings(el) {\n this.menuSettings = el;\n }\n\n _checkOnClose(clickEvent) {\n const {isSettingsOpen} = this.state;\n if (isSettingsOpen) {\n const menu = this.menuSettings;\n if (menu && !menu.contains(clickEvent.target)) {\n this.handleSettingsToggle();\n }\n }\n }\n\n handleLinkClick() {\n const {isMenuOpen} = this.state;\n isMenuOpen && this.handleMenuToggle();\n }\n\n handleSettingsToggle() {\n this.setState(prevState => ({\n isSettingsOpen: !prevState.isSettingsOpen\n }));\n }\n\n handleMenuToggle() {\n const {isMenuOpen} = this.state;\n isMenuOpen ? this.handleOnMenuClose() : this.handleOnMenuOpen();\n }\n\n handleSubmitSearch() {\n const {onSubmitSearch} = this.props;\n\n // Utiliser la ref ou fallback sur querySelector\n const searchInput = this.searchInputRef || document.querySelector('input[name=\"search\"]');\n if (searchInput) {\n searchInput.blur();\n }\n\n this.setState({\n isFocus: false,\n isClosing: false,\n isClosingStep2: false\n });\n if (onSubmitSearch) {\n onSubmitSearch();\n }\n }\n\n handleResetSearch() {\n const {onResetSearch} = this.props;\n if (onResetSearch) {\n onResetSearch();\n }\n }\n\n handleOnFocus() {\n this.setState(prevState => ({\n isFocus: true\n }));\n }\n\n handleOnBlur() {\n if (this.isMobile) {\n this.setState({\n isFocus: false\n });\n } else {\n this.setState({\n isClosing: true\n });\n\n requestAnimationFrame(() => {\n this.setState({\n isClosing: false,\n isClosingStep2: true\n });\n });\n }\n }\n\n handleTransitionEnd(event) {\n const {isClosingStep2} = this.state;\n if ((event.propertyName === 'max-width' || event.propertyName === 'width') && isClosingStep2) {\n this.setState({\n isFocus: false,\n isClosing: false,\n isClosingStep2: false\n });\n }\n }\n\n handleOnMenuOpen() {\n const {onMenuOpen} = this.props;\n if (onMenuOpen) {\n onMenuOpen();\n }\n this.setState(() => ({\n isMenuOpen: true\n }));\n }\n\n handleOnMenuClose() {\n const {onMenuClose} = this.props;\n if (onMenuClose) {\n onMenuClose();\n }\n this.setState(() => ({\n isMenuOpen: false\n }));\n }\n\n handleOnMouseOver() {\n this.setState(() => ({\n isToolTipOpen: true\n }));\n }\n\n handleOnMouseLeave() {\n this.setState(() => ({\n isToolTipOpen: false\n }));\n }\n\n handleKeyPress(event) {\n if (event.key === 'Enter') {\n this.setState(() => ({\n isToolTipOpen: true\n }));\n } else if (event.key === 'Tab' || event.key === 'Escape') {\n this.setState(() => ({\n isToolTipOpen: false\n }));\n }\n }\n\n handleSearchKeyDown(event) {\n if (event.key === 'Enter') {\n event.preventDefault();\n this.handleSubmitSearch();\n }\n }\n\n createMenuButtons = (items, primaryColor) => {\n return items.map(item => ({\n label: item.title,\n disabled: item.disabled,\n type: 'defaultLeft',\n link: {href: item.href},\n 'data-name': `item-more-${item.name}`,\n customStyle: {\n padding: '0 16px',\n ...(item.selected && {color: primaryColor})\n },\n customLabelClassName: style.buttonContentLabel\n }));\n };\n\n render() {\n if (isEmpty(this.props)) return null;\n\n const {\n logo = {},\n pages: items,\n settings,\n user,\n links,\n search,\n 'search-reset-aria-label': searchResetAriaLabel,\n 'settings-aria-label': settingsAriaLabel,\n 'active-page-aria-label': activePageAriaLabel,\n 'group-settings-aria-label': groupAriaLbale\n } = this.props;\n const {isFocus, isSettingsOpen, isMenuOpen, isToolTipOpen, isClosing, isClosingStep2} =\n this.state;\n const {translate, skin} = this.context;\n const isMobile = this.isMobile;\n\n const {\n 'aria-label': logoAriaLabel,\n closeMenuAriaLabel,\n openMenuAriaLabel,\n toolTipText,\n closeToolTipInformationTextAriaLabel\n } = logo;\n const logoUrl = get('src', logo) || get('images.logo', skin);\n const logoMobileUrl = get('srcMobile', logo) || getOr(logoUrl, 'images.logo-mobile', skin);\n let pagesView = null;\n let linksView = null;\n let userView = null;\n let settingsView = null;\n let notificationsView = null;\n let searchFormView = null;\n\n const moreAriaLabel = translate('More');\n const primaryColor = get('common.primary', skin);\n const mediumColor = get('common.medium', skin);\n\n if (items) {\n const displayedPages = items.displayed.map((item, index) => {\n const activeColor = item.selected\n ? {\n color: primaryColor\n }\n : null;\n const {'page-count-aria-label': pageCountAriaLabel} = item;\n const itemLabel = item.selected ? `${item.title}. ${activePageAriaLabel}` : item.title;\n const pageBadge =\n item.counter > 0 ? (\n <Link\n href={item.href}\n data-name=\"item-badge\"\n disabled={item.disabled}\n className={classnames(\n style.itemBadge,\n item.selected && style.activePage,\n item.disabled && style.disabled\n )}\n aria-label={pageCountAriaLabel}\n >\n <span className={style.counter}>{item.counter > 99 ? '99+' : item.counter}</span>\n </Link>\n ) : null;\n\n const {name: itemName = index} = item;\n\n return (\n <Link\n key={itemName}\n data-name={`item-${itemName}`}\n href={item.href}\n disabled={item.disabled}\n className={classnames(\n style.item,\n item.disabled && item.selected && style.activePage,\n item.disabled && style.disabled\n )}\n hoverColor={item.disabled ? '' : getOr(COLORS.brand, 'common.primary', skin)}\n onClick={this.handleLinkClick}\n target={item.target || null}\n aria-label={itemLabel}\n style={{\n ...activeColor\n }}\n >\n {item.title}\n {pageBadge}\n <span\n className={style.bar}\n style={{\n backgroundColor: primaryColor\n }}\n />\n </Link>\n );\n });\n\n const optionsView = items.more.map((item, index) => {\n const activeColor = item.selected\n ? {\n color: primaryColor\n }\n : null;\n const itemLabel = item.selected ? `${item.title}. ${activePageAriaLabel}` : item.title;\n const {name: itemName = index} = item;\n return (\n <Link\n href={item.href}\n key={itemName}\n disabled={item.disabled}\n className={classnames(style.option, item.disabled && style.disabled)}\n data-name={`item-more-${itemName}`}\n target={item.target || null}\n aria-label={itemLabel}\n onClick={this.handleLinkClick}\n hoverColor={item.disabled ? '' : getOr(COLORS.brand, 'common.primary', skin)}\n style={{\n ...activeColor\n }}\n >\n {item.title}\n <span\n className={style.line}\n style={{\n backgroundColor: primaryColor\n }}\n />\n </Link>\n );\n });\n pagesView = (\n <div className={!user ? style.noItems : style.items}>\n {displayedPages}\n {items.more &&\n (isMobile ? (\n <div className={style.tabletOnlyMoreMenu}>\n <div className={style.optionsGroup}>{optionsView}</div>\n </div>\n ) : (\n <div className={style.desktopOnlyMoreMenu}>\n <ButtonMenuAction\n button={{\n label: moreAriaLabel,\n 'aria-label': moreAriaLabel,\n 'data-name': 'item-more'\n }}\n type=\"link\"\n primaryColor={primaryColor}\n containerCustom={{alignItems: 'flex-start'}}\n closeOnClick\n enableScroll\n menuWrapper={{\n customStyle: {\n top: '30px',\n maxWidth: 360\n }\n }}\n menu={{\n buttons: this.createMenuButtons(items.more, primaryColor)\n }}\n showFade\n />\n </div>\n ))}\n </div>\n );\n }\n\n if (links) {\n const ctas = links.map((cta, index) => {\n return (\n <Cta {...cta} key={index} className={index + 1 === links.length ? null : style.ctaLink} />\n );\n });\n\n linksView = <div className={style.links}>{ctas}</div>;\n }\n\n if (user) {\n const nbNotifications = getOr(0, 'notifications.value', user);\n const notificationsAriaLabel = getOr('', 'notifications.aria-label', user);\n\n notificationsView =\n nbNotifications > 0 ? (\n <Link\n href={user.notifications.href}\n data-name=\"user-notifications\"\n className={style.notifications}\n >\n {nbNotifications > 99 ? '99+' : nbNotifications}\n </Link>\n ) : null;\n const notificationPageView = (\n <Link\n className={classnames(style.notification, nbNotifications > 0 ? style.active : null)}\n data-name=\"stat-notifications\"\n href={user.notifications.href}\n aria-label={notificationsAriaLabel}\n >\n <FontAwesomeIcon\n icon=\"bell\"\n style={{color: nbNotifications > 0 ? COLORS.negative_700 : COLORS.neutral_500}}\n />\n {notificationsView}\n </Link>\n );\n userView = (\n <div className={style.user}>\n <div className={style.stats}>\n <Link\n className={style.stat}\n data-name=\"stat-stars\"\n href={user.stats.stars.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.stars['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"star\"\n style={{color: COLORS.yellow_500}}\n className={style.stars}\n />\n </div>\n <div data-name=\"value\" className={style.label}>\n {user.stats.stars.label}\n </div>\n </Link>\n <Link\n className={style.stat}\n data-name=\"stat-ranking\"\n href={user.stats.ranking.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.ranking['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"ranking-star\"\n className={style.ranking}\n style={{color: primaryColor}}\n />\n </div>\n\n <div data-name=\"value\" className={style.label}>\n {user.stats.ranking.label}\n </div>\n </Link>\n <Link\n className={style.stat}\n data-name=\"stat-badge\"\n href={user.stats.badge.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.badge['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"trophy\"\n className={style.badge}\n style={{color: COLORS.neutral_400}}\n />\n </div>\n <div className={style.label}>{user.stats.badge.label}</div>\n </Link>\n <Link\n className={style.stat}\n data-name=\"stat-my-list\"\n href={user.stats.myList.href}\n onClick={this.handleLinkClick}\n aria-label={user.stats.myList['aria-label']}\n >\n <div>\n <FontAwesomeIcon\n icon=\"list-check\"\n className={style.icon}\n style={{color: COLORS.purple_500}}\n />\n </div>\n <div className={style.label}>{user.stats.myList.label}</div>\n </Link>\n </div>\n <div className={style.avatarWrapper}>{notificationPageView}</div>\n </div>\n );\n }\n if (settings) {\n const settingsElements = settings.map((setting, index) => {\n let settingView = null;\n const {\n options,\n type,\n title,\n name: settingName = index,\n 'aria-label': ariaLabel,\n icon,\n disabled = false\n } = setting;\n\n switch (type) {\n case 'link':\n case 'danger-link': {\n const iconView =\n icon && !isMobile ? <FontAwesomeIcon icon={icon} className={style.linkIcon} /> : null;\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, disabled && style.disabled)}\n key={settingName}\n >\n <Link\n className={style.settingLink}\n href={options.href}\n onClick={this.handleLinkClick}\n target={options.target || null}\n aria-label={ariaLabel || title}\n >\n {iconView}\n {title}\n </Link>\n </div>\n );\n break;\n }\n case 'select': {\n const selectProps = {\n options: options.values.map(opt => ({\n value: opt.value,\n label: opt.name,\n 'data-name': `setting-${settingName}-option-${opt.value}`\n })),\n value: options.values.find(opt => opt.selected)?.value,\n onChange: options.onChange,\n placeholder: title,\n 'aria-label': ariaLabel || title,\n 'button-data-testid': `setting-${settingName}-button`\n };\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, style.selectBoxes)}\n key={settingName}\n >\n <InputSelect {...selectProps} />\n </div>\n );\n break;\n }\n case 'switch': {\n const switchProps = {\n value: options.value,\n id: `input-switch-${index}`,\n onChange: options.onChange,\n titlePosition: 'left',\n theme: 'newMooc',\n type: 'switch',\n title,\n icon\n };\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, disabled && style.disabled)}\n key={settingName}\n aria-label={ariaLabel || title}\n >\n <InputSwitch {...switchProps} aria-labelledby={`title-id-${settingName}`} />\n </div>\n );\n break;\n }\n }\n\n return settingView;\n });\n\n settingsView = (\n <div className={style.settings} ref={this.setMenuSettings}>\n <div\n data-name=\"user-avatar-wrapper\"\n className={classnames(style.userAvatarWrapper, isSettingsOpen && style.userAvatarOpen)}\n >\n <Link\n className={classnames(style.userLinkAvatar)}\n onClick={this.handleSettingsToggle}\n aria-expanded={isSettingsOpen}\n aria-label={settingsAriaLabel}\n aria-haspopup=\"true\"\n role=\"button\"\n >\n <Picture\n className={style.avatar}\n src={user && user.picture}\n alt={user && user.profileAvatarAlt}\n />\n </Link>\n </div>\n <div className={isSettingsOpen ? style.settingsWrapper : style.settingsWrapperHidden}>\n <div\n data-name=\"settings\"\n className={style.settingsGroup}\n role=\"group\"\n aria-label={groupAriaLbale}\n >\n {settingsElements}\n </div>\n </div>\n </div>\n );\n }\n\n if (search) {\n searchFormView = (\n <div\n data-name=\"Search-Bar\"\n className={isMenuOpen && !this.isMobile ? style.hiddenSearchBar : style.searchBar}\n >\n <SearchForm\n search={search}\n onSubmit={this.handleSubmitSearch}\n onReset={this.handleResetSearch}\n onSearchFocus={this.handleOnFocus}\n onSearchBlur={this.handleOnBlur}\n onSearchKeyDown={this.handleSearchKeyDown}\n inputRef={this.setSearchInputRef}\n search-reset-aria-label={searchResetAriaLabel}\n theme=\"mooc\"\n />\n </div>\n );\n }\n\n return (\n <header className={style.wrapper}>\n <div\n data-name=\"moocHeader\"\n data-open={isMenuOpen}\n className={isMenuOpen ? style.open : style.header}\n >\n <div\n className={classnames(\n style.logoWrapper,\n this.isMobile && isFocus && style.logoWrapperMobileHidden\n )}\n aria-label={toolTipText}\n onMouseOver={this.handleOnMouseOver}\n onMouseLeave={this.handleOnMouseLeave}\n >\n <div className={style.navMobile} data-name=\"nav-mobile\">\n <BurgerIcon\n role=\"button\"\n data-name=\"nav-mobile-open\"\n style={{color: mediumColor}}\n className={isMenuOpen ? style.burgerHidden : style.burger}\n onClick={this.handleOnMenuOpen}\n aria-label={openMenuAriaLabel}\n />\n <CloseIcon\n data-name=\"nav-mobile-close\"\n style={{color: mediumColor}}\n className={isMenuOpen ? style.close : style.closeHidden}\n onClick={this.handleOnMenuClose}\n aria-label={closeMenuAriaLabel}\n />\n <Link data-name=\"logo-mobile\" href={logo.href}>\n <Picture src={logoMobileUrl} alt={logoAriaLabel} />\n </Link>\n </div>\n <Link\n className={style.logo}\n data-name=\"logo\"\n id=\"logo\"\n href={logo.href}\n onKeyDown={this.handleKeyPress}\n tabIndex={0}\n data-testid=\"brand-logo\"\n >\n <Picture src={logoUrl} alt={logoAriaLabel} />\n {isToolTipOpen ? (\n <div aria-label={toolTipText} tabIndex={0} data-testid=\"home-tooltip\">\n <div\n aria-label={`${toolTipText} ${closeToolTipInformationTextAriaLabel}`}\n role=\"tooltip\"\n className={style.tooltipIconContainer}\n tabIndex={0}\n >\n <HomeIcon className={style.homeIcon} style={{color: primaryColor}} />\n <p\n className={style.toolTipText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: toolTipText}}\n style={{color: primaryColor}}\n />\n </div>\n </div>\n ) : null}\n </Link>\n </div>\n {this.isMobile ? (\n // Version mobile simplifiée\n <>\n <div\n className={isFocus ? style.mobileSearchContainerFocus : style.mobileSearchContainer}\n ref={this.setSearchBarRef}\n >\n {searchFormView}\n </div>\n {isFocus ? (\n <div\n className={style.mobileSearchOverlay}\n onClick={this.handleOnBlur}\n data-name=\"mobile-overlay\"\n />\n ) : null}\n <nav\n className={isMenuOpen ? style.menuWrapper : style.hiddenMenuWrapper}\n data-name=\"menu-wrapper\"\n >\n {pagesView}\n {userView || linksView}\n {settingsView}\n </nav>\n </>\n ) : (\n // Version desktop avec toutes les animations complexes\n <div\n className={classnames(\n {[style.rightZone]: !isFocus && !isClosing && !isClosingStep2},\n {[style.rightZoneFocus]: isFocus || isClosing || isClosingStep2},\n {[style.searchBarActive]: isFocus || isClosing || isClosingStep2}\n )}\n >\n <div\n className={classnames(style.floatingSearchBar, {\n [style['floatingSearchBar--expanded']]: isFocus && !isClosing && !isClosingStep2,\n [style['floatingSearchBar--closing']]: isClosing\n })}\n ref={this.setSearchBarRef}\n onTransitionEnd={this.handleTransitionEnd}\n >\n {searchFormView}\n </div>\n {isFocus || isClosing || isClosingStep2 ? (\n <div className={style.searchOverlay} onClick={this.handleOnBlur} />\n ) : null}\n <nav\n className={isMenuOpen ? style.menuWrapper : style.hiddenMenuWrapper}\n data-name=\"menu-wrapper\"\n >\n {pagesView}\n {userView || linksView}\n {settingsView}\n </nav>\n </div>\n )}\n </div>\n </header>\n );\n }\n}\n\nexport default MoocHeader;\n"],"mappings":"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","ignoreList":[]}
|