@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.
Files changed (152) hide show
  1. package/es/atom/input-search/index.d.ts +2 -0
  2. package/es/atom/input-search/index.d.ts.map +1 -1
  3. package/es/atom/input-search/index.js +46 -13
  4. package/es/atom/input-search/index.js.map +1 -1
  5. package/es/atom/input-search/style.css +97 -0
  6. package/es/molecule/card/customer.css +3 -0
  7. package/es/molecule/card/favorite.d.ts.map +1 -1
  8. package/es/molecule/card/favorite.js +0 -5
  9. package/es/molecule/card/favorite.js.map +1 -1
  10. package/es/molecule/card/index.d.ts.map +1 -1
  11. package/es/molecule/card/index.js +11 -29
  12. package/es/molecule/card/index.js.map +1 -1
  13. package/es/molecule/card/notification.css +16 -39
  14. package/es/molecule/card/notification.d.ts.map +1 -1
  15. package/es/molecule/card/notification.js +4 -26
  16. package/es/molecule/card/notification.js.map +1 -1
  17. package/es/molecule/card/style.css +14 -16
  18. package/es/molecule/card-content/index.d.ts.map +1 -1
  19. package/es/molecule/card-content/index.js +36 -79
  20. package/es/molecule/card-content/index.js.map +1 -1
  21. package/es/molecule/card-content/style.css +24 -32
  22. package/es/molecule/cm-popin/types.d.ts +2 -0
  23. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  24. package/es/molecule/external-content-button/style.css +0 -1
  25. package/es/molecule/multi-filter-panel/index.d.ts +2 -0
  26. package/es/molecule/multi-filter-panel/index.d.ts.map +1 -1
  27. package/es/molecule/multi-filter-panel/prop-types.d.ts +2 -0
  28. package/es/molecule/multi-filter-panel/prop-types.d.ts.map +1 -1
  29. package/es/molecule/search-form/index.d.ts +5 -0
  30. package/es/molecule/search-form/index.d.ts.map +1 -1
  31. package/es/molecule/search-form/index.js +26 -16
  32. package/es/molecule/search-form/index.js.map +1 -1
  33. package/es/molecule/search-form/style.css +21 -6
  34. package/es/organism/brand-table/index.d.ts +2 -0
  35. package/es/organism/content-skill-modal/index.d.ts +4 -0
  36. package/es/organism/content-skill-modal/index.d.ts.map +1 -1
  37. package/es/organism/content-skill-modal/types.d.ts +4 -0
  38. package/es/organism/content-skill-modal/types.d.ts.map +1 -1
  39. package/es/organism/filter-checkbox-and-search/index.d.ts +2 -0
  40. package/es/organism/filter-checkbox-and-search/index.d.ts.map +1 -1
  41. package/es/organism/filter-checkbox-and-search/props-types.d.ts +2 -0
  42. package/es/organism/filter-checkbox-and-search/props-types.d.ts.map +1 -1
  43. package/es/organism/list-items/index.d.ts +2 -0
  44. package/es/organism/mooc-header/index.d.ts +14 -0
  45. package/es/organism/mooc-header/index.d.ts.map +1 -1
  46. package/es/organism/mooc-header/index.js +132 -13
  47. package/es/organism/mooc-header/index.js.map +1 -1
  48. package/es/organism/mooc-header/style.css +184 -8
  49. package/es/template/app-player/loading/index.d.ts +2 -0
  50. package/es/template/app-player/player/index.d.ts +4 -0
  51. package/es/template/app-player/player/slides/index.d.ts +2 -0
  52. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  53. package/es/template/app-player/popin-correction/index.d.ts +2 -0
  54. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  55. package/es/template/app-player/popin-end/index.d.ts +2 -0
  56. package/es/template/app-review/index.d.ts +2 -0
  57. package/es/template/app-review/index.d.ts.map +1 -1
  58. package/es/template/app-review/player/prop-types.d.ts +2 -0
  59. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  60. package/es/template/app-review/prop-types.d.ts +2 -0
  61. package/es/template/app-review/prop-types.d.ts.map +1 -1
  62. package/es/template/back-office/brand-update/index.d.ts +12 -0
  63. package/es/template/common/dashboard/index.d.ts +4 -0
  64. package/es/template/common/search-page/index.d.ts +2 -0
  65. package/es/template/external-course/index.d.ts +2 -0
  66. package/es/util/check-is-mobile.js +3 -2
  67. package/es/util/check-is-mobile.js.map +1 -1
  68. package/es/util/external-content.d.ts +4 -38
  69. package/es/util/external-content.d.ts.map +1 -1
  70. package/es/util/external-content.js +4 -33
  71. package/es/util/external-content.js.map +1 -1
  72. package/es/variables/colors.d.ts +0 -5
  73. package/es/variables/colors.d.ts.map +1 -1
  74. package/es/variables/colors.js +1 -6
  75. package/es/variables/colors.js.map +1 -1
  76. package/lib/atom/input-search/index.d.ts +2 -0
  77. package/lib/atom/input-search/index.d.ts.map +1 -1
  78. package/lib/atom/input-search/index.js +46 -13
  79. package/lib/atom/input-search/index.js.map +1 -1
  80. package/lib/atom/input-search/style.css +97 -0
  81. package/lib/molecule/card/customer.css +3 -0
  82. package/lib/molecule/card/favorite.d.ts.map +1 -1
  83. package/lib/molecule/card/favorite.js +0 -5
  84. package/lib/molecule/card/favorite.js.map +1 -1
  85. package/lib/molecule/card/index.d.ts.map +1 -1
  86. package/lib/molecule/card/index.js +10 -28
  87. package/lib/molecule/card/index.js.map +1 -1
  88. package/lib/molecule/card/notification.css +16 -39
  89. package/lib/molecule/card/notification.d.ts.map +1 -1
  90. package/lib/molecule/card/notification.js +3 -25
  91. package/lib/molecule/card/notification.js.map +1 -1
  92. package/lib/molecule/card/style.css +14 -16
  93. package/lib/molecule/card-content/index.d.ts.map +1 -1
  94. package/lib/molecule/card-content/index.js +34 -77
  95. package/lib/molecule/card-content/index.js.map +1 -1
  96. package/lib/molecule/card-content/style.css +24 -32
  97. package/lib/molecule/cm-popin/types.d.ts +2 -0
  98. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  99. package/lib/molecule/external-content-button/style.css +0 -1
  100. package/lib/molecule/multi-filter-panel/index.d.ts +2 -0
  101. package/lib/molecule/multi-filter-panel/index.d.ts.map +1 -1
  102. package/lib/molecule/multi-filter-panel/prop-types.d.ts +2 -0
  103. package/lib/molecule/multi-filter-panel/prop-types.d.ts.map +1 -1
  104. package/lib/molecule/search-form/index.d.ts +5 -0
  105. package/lib/molecule/search-form/index.d.ts.map +1 -1
  106. package/lib/molecule/search-form/index.js +27 -17
  107. package/lib/molecule/search-form/index.js.map +1 -1
  108. package/lib/molecule/search-form/style.css +21 -6
  109. package/lib/organism/brand-table/index.d.ts +2 -0
  110. package/lib/organism/content-skill-modal/index.d.ts +4 -0
  111. package/lib/organism/content-skill-modal/index.d.ts.map +1 -1
  112. package/lib/organism/content-skill-modal/types.d.ts +4 -0
  113. package/lib/organism/content-skill-modal/types.d.ts.map +1 -1
  114. package/lib/organism/filter-checkbox-and-search/index.d.ts +2 -0
  115. package/lib/organism/filter-checkbox-and-search/index.d.ts.map +1 -1
  116. package/lib/organism/filter-checkbox-and-search/props-types.d.ts +2 -0
  117. package/lib/organism/filter-checkbox-and-search/props-types.d.ts.map +1 -1
  118. package/lib/organism/list-items/index.d.ts +2 -0
  119. package/lib/organism/mooc-header/index.d.ts +14 -0
  120. package/lib/organism/mooc-header/index.d.ts.map +1 -1
  121. package/lib/organism/mooc-header/index.js +132 -13
  122. package/lib/organism/mooc-header/index.js.map +1 -1
  123. package/lib/organism/mooc-header/style.css +184 -8
  124. package/lib/template/app-player/loading/index.d.ts +2 -0
  125. package/lib/template/app-player/player/index.d.ts +4 -0
  126. package/lib/template/app-player/player/slides/index.d.ts +2 -0
  127. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  128. package/lib/template/app-player/popin-correction/index.d.ts +2 -0
  129. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  130. package/lib/template/app-player/popin-end/index.d.ts +2 -0
  131. package/lib/template/app-review/index.d.ts +2 -0
  132. package/lib/template/app-review/index.d.ts.map +1 -1
  133. package/lib/template/app-review/player/prop-types.d.ts +2 -0
  134. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  135. package/lib/template/app-review/prop-types.d.ts +2 -0
  136. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  137. package/lib/template/back-office/brand-update/index.d.ts +12 -0
  138. package/lib/template/common/dashboard/index.d.ts +4 -0
  139. package/lib/template/common/search-page/index.d.ts +2 -0
  140. package/lib/template/external-course/index.d.ts +2 -0
  141. package/lib/util/check-is-mobile.js +3 -2
  142. package/lib/util/check-is-mobile.js.map +1 -1
  143. package/lib/util/external-content.d.ts +4 -38
  144. package/lib/util/external-content.d.ts.map +1 -1
  145. package/lib/util/external-content.js +5 -34
  146. package/lib/util/external-content.js.map +1 -1
  147. package/lib/variables/colors.d.ts +0 -5
  148. package/lib/variables/colors.d.ts.map +1 -1
  149. package/lib/variables/colors.js +1 -6
  150. package/lib/variables/colors.js.map +1 -1
  151. package/locales/en/global.json +4 -4
  152. 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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAsGE;IAEF;;;;;;;;;;;;;;;;;;;;;;;MAGE;IAEF,wBAuBC;IArBC;;;;;MAKC;IAgDH,6BAIC;IAED,yBAGC;IAxBD,qCAQC;IAED,wBAGC;IAjBD,+BAEC;IA4BD,2BAKC;IAED,0BAKC;IAED,sBAIC;IAED,qBAIC;IAED,yBAQC;IAED,0BAQC;IAED,0BAIC;IAED,2BAIC;IAED,iCAUC;IA7GD,2EASC;IAGC,kBAAsB;IAmGxB,0DAaE;IAEF,6BAufC;CACF"}
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.setState(prevState => ({
121
- isFocus: false
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 userAgent = navigator?.userAgent;
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: search.value || isFocus ? _style.default.noItems : _style.default.items
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
- "search-reset-aria-label": searchResetAriaLabel
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)), searchFormView, /*#__PURE__*/_react.default.createElement("nav", {
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":[]}