@coorpacademy/components 11.38.2 → 11.38.3-alpha.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.
- 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/cm-popin/types.d.ts +2 -0
- package/es/molecule/cm-popin/types.d.ts.map +1 -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 +182 -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.d.ts +1 -1
- package/es/util/check-is-mobile.d.ts.map +1 -1
- package/es/util/check-is-mobile.js +4 -2
- package/es/util/check-is-mobile.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/cm-popin/types.d.ts +2 -0
- package/lib/molecule/cm-popin/types.d.ts.map +1 -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 +182 -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.d.ts +1 -1
- package/lib/util/check-is-mobile.d.ts.map +1 -1
- package/lib/util/check-is-mobile.js +4 -2
- package/lib/util/check-is-mobile.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"props-types.d.ts","sourceRoot":"","sources":["../../../src/organism/filter-checkbox-and-search/props-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,QAAA,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"props-types.d.ts","sourceRoot":"","sources":["../../../src/organism/filter-checkbox-and-search/props-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;CAcd,CAAC;AAEF,oBAAY,8BAA8B,GAAG;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,aAAK,UAAU,GAAG;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,GAAG,cAAc,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,oBAAY,4BAA4B,GAAG;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,EAAE,UAAU,CAAC;IAC1B,OAAO,EAAE,8BAA8B,EAAE,CAAC;CAC3C,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -499,6 +499,8 @@ declare namespace ListItems {
|
|
|
499
499
|
onClear: PropTypes.Requireable<(...args: any[]) => any>;
|
|
500
500
|
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
|
|
501
501
|
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
502
|
+
onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
|
|
503
|
+
inputRef: PropTypes.Requireable<(...args: any[]) => any>;
|
|
502
504
|
theme: PropTypes.Requireable<string>;
|
|
503
505
|
dataTestId: PropTypes.Requireable<string>;
|
|
504
506
|
}>>;
|
|
@@ -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,kBAAuD;IACvD;;;;;;;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"}
|
|
@@ -26,11 +26,14 @@ class MoocHeader extends React.Component {
|
|
|
26
26
|
};
|
|
27
27
|
constructor(props) {
|
|
28
28
|
super(props);
|
|
29
|
+
this.isMobile = getIsMobile(navigator?.userAgent, true); // true = inclure les tablettes
|
|
29
30
|
this.state = {
|
|
30
31
|
isSettingsOpen: false,
|
|
31
32
|
isMenuOpen: false,
|
|
32
33
|
isFocus: false,
|
|
33
|
-
isToolTipOpen: false
|
|
34
|
+
isToolTipOpen: false,
|
|
35
|
+
isClosing: false,
|
|
36
|
+
isClosingStep2: false
|
|
34
37
|
};
|
|
35
38
|
this.handleSettingsToggle = this.handleSettingsToggle.bind(this);
|
|
36
39
|
this.handleMenuToggle = this.handleMenuToggle.bind(this);
|
|
@@ -46,6 +49,16 @@ class MoocHeader extends React.Component {
|
|
|
46
49
|
this.handleOnMouseOver = this.handleOnMouseOver.bind(this);
|
|
47
50
|
this.handleOnMouseLeave = this.handleOnMouseLeave.bind(this);
|
|
48
51
|
this.handleKeyPress = this.handleKeyPress.bind(this);
|
|
52
|
+
this.handleSearchKeyDown = this.handleSearchKeyDown.bind(this);
|
|
53
|
+
this.searchBarRef = null;
|
|
54
|
+
this.searchInputRef = null;
|
|
55
|
+
this.setSearchBarRef = this.setSearchBarRef.bind(this);
|
|
56
|
+
this.setSearchInputRef = this.setSearchInputRef.bind(this);
|
|
57
|
+
this.handleClickOutside = this.handleClickOutside.bind(this);
|
|
58
|
+
this.handleTransitionEnd = this.handleTransitionEnd.bind(this);
|
|
59
|
+
}
|
|
60
|
+
componentDidMount() {
|
|
61
|
+
document.addEventListener('mousedown', this.handleClickOutside);
|
|
49
62
|
}
|
|
50
63
|
componentDidUpdate(prevProps, prevState, prevContext) {
|
|
51
64
|
const {
|
|
@@ -59,6 +72,33 @@ class MoocHeader extends React.Component {
|
|
|
59
72
|
document.removeEventListener('touchstart', this._checkOnClose);
|
|
60
73
|
}
|
|
61
74
|
}
|
|
75
|
+
componentWillUnmount() {
|
|
76
|
+
document.removeEventListener('mousedown', this.handleClickOutside);
|
|
77
|
+
}
|
|
78
|
+
setSearchBarRef(ref) {
|
|
79
|
+
this.searchBarRef = ref;
|
|
80
|
+
}
|
|
81
|
+
setSearchInputRef(ref) {
|
|
82
|
+
this.searchInputRef = ref;
|
|
83
|
+
}
|
|
84
|
+
handleClickOutside(event) {
|
|
85
|
+
const {
|
|
86
|
+
isFocus
|
|
87
|
+
} = this.state;
|
|
88
|
+
if (isFocus) {
|
|
89
|
+
if (event.target.getAttribute('data-name') === 'mobile-overlay') {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
const resetButton = event.target.getAttribute('data-name') === 'search-form-reset' || event.target.closest('[data-name="search-form-reset"]');
|
|
93
|
+
if (resetButton) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
if (this.searchBarRef && this.searchBarRef.contains(event.target)) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
this.handleOnBlur();
|
|
100
|
+
}
|
|
101
|
+
}
|
|
62
102
|
setMenuSettings(el) {
|
|
63
103
|
this.menuSettings = el;
|
|
64
104
|
}
|
|
@@ -94,6 +134,17 @@ class MoocHeader extends React.Component {
|
|
|
94
134
|
const {
|
|
95
135
|
onSubmitSearch
|
|
96
136
|
} = this.props;
|
|
137
|
+
|
|
138
|
+
// Utiliser la ref ou fallback sur querySelector
|
|
139
|
+
const searchInput = this.searchInputRef || document.querySelector('input[name="search"]');
|
|
140
|
+
if (searchInput) {
|
|
141
|
+
searchInput.blur();
|
|
142
|
+
}
|
|
143
|
+
this.setState({
|
|
144
|
+
isFocus: false,
|
|
145
|
+
isClosing: false,
|
|
146
|
+
isClosingStep2: false
|
|
147
|
+
});
|
|
97
148
|
if (onSubmitSearch) {
|
|
98
149
|
onSubmitSearch();
|
|
99
150
|
}
|
|
@@ -112,9 +163,33 @@ class MoocHeader extends React.Component {
|
|
|
112
163
|
}));
|
|
113
164
|
}
|
|
114
165
|
handleOnBlur() {
|
|
115
|
-
this.
|
|
116
|
-
|
|
117
|
-
|
|
166
|
+
if (this.isMobile) {
|
|
167
|
+
this.setState({
|
|
168
|
+
isFocus: false
|
|
169
|
+
});
|
|
170
|
+
} else {
|
|
171
|
+
this.setState({
|
|
172
|
+
isClosing: true
|
|
173
|
+
});
|
|
174
|
+
requestAnimationFrame(() => {
|
|
175
|
+
this.setState({
|
|
176
|
+
isClosing: false,
|
|
177
|
+
isClosingStep2: true
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
handleTransitionEnd(event) {
|
|
183
|
+
const {
|
|
184
|
+
isClosingStep2
|
|
185
|
+
} = this.state;
|
|
186
|
+
if ((event.propertyName === 'max-width' || event.propertyName === 'width') && isClosingStep2) {
|
|
187
|
+
this.setState({
|
|
188
|
+
isFocus: false,
|
|
189
|
+
isClosing: false,
|
|
190
|
+
isClosingStep2: false
|
|
191
|
+
});
|
|
192
|
+
}
|
|
118
193
|
}
|
|
119
194
|
handleOnMenuOpen() {
|
|
120
195
|
const {
|
|
@@ -159,6 +234,12 @@ class MoocHeader extends React.Component {
|
|
|
159
234
|
}));
|
|
160
235
|
}
|
|
161
236
|
}
|
|
237
|
+
handleSearchKeyDown(event) {
|
|
238
|
+
if (event.key === 'Enter') {
|
|
239
|
+
event.preventDefault();
|
|
240
|
+
this.handleSubmitSearch();
|
|
241
|
+
}
|
|
242
|
+
}
|
|
162
243
|
createMenuButtons = (items, primaryColor) => {
|
|
163
244
|
return items.map(item => ({
|
|
164
245
|
label: item.title,
|
|
@@ -195,14 +276,15 @@ class MoocHeader extends React.Component {
|
|
|
195
276
|
isFocus,
|
|
196
277
|
isSettingsOpen,
|
|
197
278
|
isMenuOpen,
|
|
198
|
-
isToolTipOpen
|
|
279
|
+
isToolTipOpen,
|
|
280
|
+
isClosing,
|
|
281
|
+
isClosingStep2
|
|
199
282
|
} = this.state;
|
|
200
283
|
const {
|
|
201
284
|
translate,
|
|
202
285
|
skin
|
|
203
286
|
} = this.context;
|
|
204
|
-
const
|
|
205
|
-
const isMobile = getIsMobile(userAgent);
|
|
287
|
+
const isMobile = this.isMobile;
|
|
206
288
|
const {
|
|
207
289
|
'aria-label': logoAriaLabel,
|
|
208
290
|
closeMenuAriaLabel,
|
|
@@ -291,7 +373,7 @@ class MoocHeader extends React.Component {
|
|
|
291
373
|
}));
|
|
292
374
|
});
|
|
293
375
|
pagesView = /*#__PURE__*/React.createElement("div", {
|
|
294
|
-
className:
|
|
376
|
+
className: !user ? style.noItems : style.items
|
|
295
377
|
}, displayedPages, items.more && (isMobile ? /*#__PURE__*/React.createElement("div", {
|
|
296
378
|
className: style.tabletOnlyMoreMenu
|
|
297
379
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -527,14 +609,17 @@ class MoocHeader extends React.Component {
|
|
|
527
609
|
if (search) {
|
|
528
610
|
searchFormView = /*#__PURE__*/React.createElement("div", {
|
|
529
611
|
"data-name": "Search-Bar",
|
|
530
|
-
className: isMenuOpen ? style.hiddenSearchBar : style.searchBar
|
|
612
|
+
className: isMenuOpen && !this.isMobile ? style.hiddenSearchBar : style.searchBar
|
|
531
613
|
}, /*#__PURE__*/React.createElement(SearchForm, {
|
|
532
614
|
search: search,
|
|
533
615
|
onSubmit: this.handleSubmitSearch,
|
|
534
616
|
onReset: this.handleResetSearch,
|
|
535
617
|
onSearchFocus: this.handleOnFocus,
|
|
536
618
|
onSearchBlur: this.handleOnBlur,
|
|
537
|
-
|
|
619
|
+
onSearchKeyDown: this.handleSearchKeyDown,
|
|
620
|
+
inputRef: this.setSearchInputRef,
|
|
621
|
+
"search-reset-aria-label": searchResetAriaLabel,
|
|
622
|
+
theme: "mooc"
|
|
538
623
|
}));
|
|
539
624
|
}
|
|
540
625
|
return /*#__PURE__*/React.createElement("header", {
|
|
@@ -544,7 +629,7 @@ class MoocHeader extends React.Component {
|
|
|
544
629
|
"data-open": isMenuOpen,
|
|
545
630
|
className: isMenuOpen ? style.open : style.header
|
|
546
631
|
}, /*#__PURE__*/React.createElement("div", {
|
|
547
|
-
className: style.logoWrapper,
|
|
632
|
+
className: classnames(style.logoWrapper, this.isMobile && isFocus && style.logoWrapperMobileHidden),
|
|
548
633
|
"aria-label": toolTipText,
|
|
549
634
|
onMouseOver: this.handleOnMouseOver,
|
|
550
635
|
onMouseLeave: this.handleOnMouseLeave
|
|
@@ -609,10 +694,44 @@ class MoocHeader extends React.Component {
|
|
|
609
694
|
style: {
|
|
610
695
|
color: primaryColor
|
|
611
696
|
}
|
|
612
|
-
}))) : null)),
|
|
697
|
+
}))) : null)), this.isMobile ?
|
|
698
|
+
/*#__PURE__*/
|
|
699
|
+
// Version mobile simplifiée
|
|
700
|
+
React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
701
|
+
className: isFocus ? style.mobileSearchContainerFocus : style.mobileSearchContainer,
|
|
702
|
+
ref: this.setSearchBarRef
|
|
703
|
+
}, searchFormView), isFocus ? /*#__PURE__*/React.createElement("div", {
|
|
704
|
+
className: style.mobileSearchOverlay,
|
|
705
|
+
onClick: this.handleOnBlur,
|
|
706
|
+
"data-name": "mobile-overlay"
|
|
707
|
+
}) : null, /*#__PURE__*/React.createElement("nav", {
|
|
708
|
+
className: isMenuOpen ? style.menuWrapper : style.hiddenMenuWrapper,
|
|
709
|
+
"data-name": "menu-wrapper"
|
|
710
|
+
}, pagesView, userView || linksView, settingsView)) :
|
|
711
|
+
/*#__PURE__*/
|
|
712
|
+
// Version desktop avec toutes les animations complexes
|
|
713
|
+
React.createElement("div", {
|
|
714
|
+
className: classnames({
|
|
715
|
+
[style.rightZone]: !isFocus && !isClosing && !isClosingStep2
|
|
716
|
+
}, {
|
|
717
|
+
[style.rightZoneFocus]: isFocus || isClosing || isClosingStep2
|
|
718
|
+
}, {
|
|
719
|
+
[style.searchBarActive]: isFocus || isClosing || isClosingStep2
|
|
720
|
+
})
|
|
721
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
722
|
+
className: classnames(style.floatingSearchBar, {
|
|
723
|
+
[style['floatingSearchBar--expanded']]: isFocus && !isClosing && !isClosingStep2,
|
|
724
|
+
[style['floatingSearchBar--closing']]: isClosing
|
|
725
|
+
}),
|
|
726
|
+
ref: this.setSearchBarRef,
|
|
727
|
+
onTransitionEnd: this.handleTransitionEnd
|
|
728
|
+
}, searchFormView), isFocus || isClosing || isClosingStep2 ? /*#__PURE__*/React.createElement("div", {
|
|
729
|
+
className: style.searchOverlay,
|
|
730
|
+
onClick: this.handleOnBlur
|
|
731
|
+
}) : null, /*#__PURE__*/React.createElement("nav", {
|
|
613
732
|
className: isMenuOpen ? style.menuWrapper : style.hiddenMenuWrapper,
|
|
614
733
|
"data-name": "menu-wrapper"
|
|
615
|
-
}, pagesView, userView || linksView, settingsView)));
|
|
734
|
+
}, pagesView, userView || linksView, settingsView))));
|
|
616
735
|
}
|
|
617
736
|
}
|
|
618
737
|
MoocHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","classnames","NovaCompositionNavigationBurger","BurgerIcon","NovaCompositionNavigationClose","CloseIcon","NovaCompositionCoorpacademyPlacesHome24","HomeIcon","FontAwesomeIcon","Provider","Cta","InputSelect","Picture","InputSwitch","Link","Search","SearchForm","ButtonMenuAction","COLORS","isMobile","getIsMobile","style","MoocHeader","Component","contextTypes","translate","childContextTypes","skin","constructor","props","state","isSettingsOpen","isMenuOpen","isFocus","isToolTipOpen","handleSettingsToggle","bind","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","buttonContentLabel","render","_isEmpty","logo","pages","settings","user","links","search","searchResetAriaLabel","settingsAriaLabel","activePageAriaLabel","groupAriaLbale","context","userAgent","navigator","logoAriaLabel","closeMenuAriaLabel","openMenuAriaLabel","toolTipText","closeToolTipInformationTextAriaLabel","logoUrl","_get","logoMobileUrl","_getOr","pagesView","linksView","userView","settingsView","notificationsView","searchFormView","moreAriaLabel","mediumColor","displayedPages","displayed","index","activeColor","pageCountAriaLabel","itemLabel","pageBadge","counter","createElement","className","itemBadge","activePage","itemName","hoverColor","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","_extends","length","ctaLink","nbNotifications","notificationsAriaLabel","notifications","notificationPageView","notification","active","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","burgerHidden","burger","close","closeHidden","onKeyDown","tabIndex","tooltipIconContainer","homeIcon","dangerouslySetInnerHTML","__html","hiddenMenuWrapper","propTypes","process","env","NODE_ENV","shape","string","srcMobile","func","arrayOf","oneOf","bool","number"],"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","PropTypes","classnames","NovaCompositionNavigationBurger","BurgerIcon","NovaCompositionNavigationClose","CloseIcon","NovaCompositionCoorpacademyPlacesHome24","HomeIcon","FontAwesomeIcon","Provider","Cta","InputSelect","Picture","InputSwitch","Link","Search","SearchForm","ButtonMenuAction","COLORS","isMobile","getIsMobile","style","MoocHeader","Component","contextTypes","translate","childContextTypes","skin","constructor","props","navigator","userAgent","state","isSettingsOpen","isMenuOpen","isFocus","isToolTipOpen","isClosing","isClosingStep2","handleSettingsToggle","bind","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","buttonContentLabel","render","_isEmpty","logo","pages","settings","user","links","search","searchResetAriaLabel","settingsAriaLabel","activePageAriaLabel","groupAriaLbale","context","logoAriaLabel","closeMenuAriaLabel","openMenuAriaLabel","toolTipText","closeToolTipInformationTextAriaLabel","logoUrl","_get","logoMobileUrl","_getOr","pagesView","linksView","userView","settingsView","notificationsView","searchFormView","moreAriaLabel","mediumColor","displayedPages","displayed","index","activeColor","pageCountAriaLabel","itemLabel","pageBadge","counter","createElement","className","itemBadge","activePage","itemName","hoverColor","brand","onClick","bar","backgroundColor","optionsView","more","option","line","noItems","tabletOnlyMoreMenu","optionsGroup","desktopOnlyMoreMenu","button","containerCustom","alignItems","closeOnClick","enableScroll","menuWrapper","top","maxWidth","buttons","showFade","ctas","cta","_extends","length","ctaLink","nbNotifications","notificationsAriaLabel","notifications","notificationPageView","notification","active","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","burgerHidden","burger","close","closeHidden","onKeyDown","tabIndex","tooltipIconContainer","homeIcon","dangerouslySetInnerHTML","__html","Fragment","mobileSearchContainerFocus","mobileSearchContainer","mobileSearchOverlay","hiddenMenuWrapper","rightZone","rightZoneFocus","searchBarActive","floatingSearchBar","onTransitionEnd","searchOverlay","propTypes","process","env","NODE_ENV","shape","string","srcMobile","func","arrayOf","oneOf","bool","number"],"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, true); // true = inclure les tablettes\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":[]}
|