@coorpacademy/components 11.36.2-alpha.9 → 11.36.2

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 (140) hide show
  1. package/es/atom/button-link/types.d.ts +3 -4
  2. package/es/atom/button-link/types.d.ts.map +1 -1
  3. package/es/atom/button-link/types.js.map +1 -1
  4. package/es/atom/input-switch/index.d.ts +0 -1
  5. package/es/atom/input-switch/index.d.ts.map +1 -1
  6. package/es/atom/input-switch/index.js +5 -18
  7. package/es/atom/input-switch/index.js.map +1 -1
  8. package/es/atom/input-switch/style.css +0 -75
  9. package/es/atom/link/index.d.ts.map +1 -1
  10. package/es/atom/link/index.js +0 -3
  11. package/es/atom/link/index.js.map +1 -1
  12. package/es/molecule/cm-popin/types.d.ts +0 -1
  13. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  14. package/es/molecule/draggable-list/index.d.ts +0 -1
  15. package/es/molecule/setup-section/index.d.ts +0 -1
  16. package/es/molecule/setup-section/index.d.ts.map +1 -1
  17. package/es/molecule/setup-sections/index.d.ts +0 -1
  18. package/es/organism/brand-learning-priorities/index.d.ts +0 -1
  19. package/es/organism/list-items/index.d.ts.map +1 -1
  20. package/es/organism/list-items/index.js +6 -2
  21. package/es/organism/list-items/index.js.map +1 -1
  22. package/es/organism/mooc-header/index.d.ts +0 -1
  23. package/es/organism/mooc-header/index.d.ts.map +1 -1
  24. package/es/organism/mooc-header/index.js +52 -48
  25. package/es/organism/mooc-header/index.js.map +1 -1
  26. package/es/organism/mooc-header/style.css +110 -122
  27. package/es/organism/skill-edition/index.d.ts.map +1 -1
  28. package/es/organism/skill-edition/index.js +49 -3
  29. package/es/organism/skill-edition/index.js.map +1 -1
  30. package/es/organism/skill-edition/types.d.ts +9 -0
  31. package/es/organism/skill-edition/types.d.ts.map +1 -1
  32. package/es/organism/skill-edition/types.js.map +1 -1
  33. package/es/organism/user-preferences/index.d.ts +0 -1
  34. package/es/template/app-player/loading/index.d.ts +0 -1
  35. package/es/template/app-player/player/index.d.ts +0 -2
  36. package/es/template/app-player/player/slides/index.d.ts +0 -1
  37. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  38. package/es/template/app-player/popin-correction/index.d.ts +0 -1
  39. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  40. package/es/template/app-player/popin-end/index.d.ts +0 -1
  41. package/es/template/app-review/index.d.ts +0 -1
  42. package/es/template/app-review/index.d.ts.map +1 -1
  43. package/es/template/app-review/player/prop-types.d.ts +0 -1
  44. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  45. package/es/template/app-review/prop-types.d.ts +0 -1
  46. package/es/template/app-review/prop-types.d.ts.map +1 -1
  47. package/es/template/back-office/brand-update/index.d.ts +0 -2
  48. package/es/template/common/dashboard/index.d.ts +0 -2
  49. package/es/template/common/search-page/index.d.ts +0 -1
  50. package/es/template/external-course/index.d.ts +0 -1
  51. package/es/variables/colors.css +6 -8
  52. package/lib/atom/button-link/types.d.ts +3 -4
  53. package/lib/atom/button-link/types.d.ts.map +1 -1
  54. package/lib/atom/button-link/types.js.map +1 -1
  55. package/lib/atom/input-switch/index.d.ts +0 -1
  56. package/lib/atom/input-switch/index.d.ts.map +1 -1
  57. package/lib/atom/input-switch/index.js +5 -18
  58. package/lib/atom/input-switch/index.js.map +1 -1
  59. package/lib/atom/input-switch/style.css +0 -75
  60. package/lib/atom/link/index.d.ts.map +1 -1
  61. package/lib/atom/link/index.js +0 -3
  62. package/lib/atom/link/index.js.map +1 -1
  63. package/lib/molecule/cm-popin/types.d.ts +0 -1
  64. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  65. package/lib/molecule/draggable-list/index.d.ts +0 -1
  66. package/lib/molecule/setup-section/index.d.ts +0 -1
  67. package/lib/molecule/setup-section/index.d.ts.map +1 -1
  68. package/lib/molecule/setup-sections/index.d.ts +0 -1
  69. package/lib/organism/brand-learning-priorities/index.d.ts +0 -1
  70. package/lib/organism/list-items/index.d.ts.map +1 -1
  71. package/lib/organism/list-items/index.js +6 -2
  72. package/lib/organism/list-items/index.js.map +1 -1
  73. package/lib/organism/mooc-header/index.d.ts +0 -1
  74. package/lib/organism/mooc-header/index.d.ts.map +1 -1
  75. package/lib/organism/mooc-header/index.js +51 -47
  76. package/lib/organism/mooc-header/index.js.map +1 -1
  77. package/lib/organism/mooc-header/style.css +110 -122
  78. package/lib/organism/skill-edition/index.d.ts.map +1 -1
  79. package/lib/organism/skill-edition/index.js +49 -3
  80. package/lib/organism/skill-edition/index.js.map +1 -1
  81. package/lib/organism/skill-edition/types.d.ts +9 -0
  82. package/lib/organism/skill-edition/types.d.ts.map +1 -1
  83. package/lib/organism/skill-edition/types.js.map +1 -1
  84. package/lib/organism/user-preferences/index.d.ts +0 -1
  85. package/lib/template/app-player/loading/index.d.ts +0 -1
  86. package/lib/template/app-player/player/index.d.ts +0 -2
  87. package/lib/template/app-player/player/slides/index.d.ts +0 -1
  88. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  89. package/lib/template/app-player/popin-correction/index.d.ts +0 -1
  90. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  91. package/lib/template/app-player/popin-end/index.d.ts +0 -1
  92. package/lib/template/app-review/index.d.ts +0 -1
  93. package/lib/template/app-review/index.d.ts.map +1 -1
  94. package/lib/template/app-review/player/prop-types.d.ts +0 -1
  95. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  96. package/lib/template/app-review/prop-types.d.ts +0 -1
  97. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  98. package/lib/template/back-office/brand-update/index.d.ts +0 -2
  99. package/lib/template/common/dashboard/index.d.ts +0 -2
  100. package/lib/template/common/search-page/index.d.ts +0 -1
  101. package/lib/template/external-course/index.d.ts +0 -1
  102. package/lib/variables/colors.css +6 -8
  103. package/locales/bs/global.json +2 -2
  104. package/locales/cs/global.json +2 -2
  105. package/locales/de/global.json +2 -2
  106. package/locales/es/global.json +2 -2
  107. package/locales/et/global.json +2 -2
  108. package/locales/fi/global.json +2 -2
  109. package/locales/fr/global.json +2 -2
  110. package/locales/hr/global.json +2 -2
  111. package/locales/hu/global.json +2 -2
  112. package/locales/hy/global.json +2 -2
  113. package/locales/it/global.json +2 -2
  114. package/locales/ja/global.json +2 -2
  115. package/locales/ko/global.json +2 -2
  116. package/locales/nl/global.json +2 -2
  117. package/locales/pl/global.json +2 -2
  118. package/locales/pt/global.json +2 -2
  119. package/locales/ro/global.json +2 -2
  120. package/locales/ru/global.json +2 -2
  121. package/locales/sk/global.json +2 -2
  122. package/locales/sl/global.json +2 -2
  123. package/locales/sv/global.json +2 -2
  124. package/locales/tl/global.json +2 -2
  125. package/locales/tr/global.json +2 -2
  126. package/locales/uk/global.json +2 -2
  127. package/locales/vi/global.json +2 -2
  128. package/locales/zh/global.json +2 -2
  129. package/locales/zh_TW/global.json +2 -2
  130. package/package.json +7 -7
  131. package/es/atom/input-select/index.d.ts +0 -28
  132. package/es/atom/input-select/index.d.ts.map +0 -1
  133. package/es/atom/input-select/index.js +0 -109
  134. package/es/atom/input-select/index.js.map +0 -1
  135. package/es/atom/input-select/style.css +0 -169
  136. package/lib/atom/input-select/index.d.ts +0 -28
  137. package/lib/atom/input-select/index.d.ts.map +0 -1
  138. package/lib/atom/input-select/index.js +0 -116
  139. package/lib/atom/input-select/index.js.map +0 -1
  140. package/lib/atom/input-select/style.css +0 -169
@@ -5,11 +5,11 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
5
5
  import React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import classnames from 'classnames';
8
- import { NovaCompositionNavigationBurger as BurgerIcon, NovaCompositionNavigationClose as CloseIcon, NovaCompositionCoorpacademyPlacesHome24 as HomeIcon } from '@coorpacademy/nova-icons';
8
+ import { NovaCompositionNavigationBurger as BurgerIcon, NovaCompositionNavigationClose as CloseIcon, NovaCompositionCoorpacademyCog as CogIcon, NovaCompositionCoorpacademyPlacesHome24 as HomeIcon } from '@coorpacademy/nova-icons';
9
9
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
10
10
  import Provider from '../../atom/provider';
11
11
  import Cta from '../../atom/cta';
12
- import InputSelect from '../../atom/input-select';
12
+ import Select from '../../atom/select';
13
13
  import Picture from '../../atom/picture';
14
14
  import InputSwitch from '../../atom/input-switch';
15
15
  import Link from '../../atom/link';
@@ -166,7 +166,7 @@ class MoocHeader extends React.Component {
166
166
  link: {
167
167
  href: item.href
168
168
  },
169
- 'data-name': `item-more-${item.title}`,
169
+ 'data-name': `item-more-${item.name}`,
170
170
  customStyle: {
171
171
  padding: '0 16px',
172
172
  ...(item.selected && {
@@ -217,6 +217,7 @@ class MoocHeader extends React.Component {
217
217
  const moreAriaLabel = translate('More');
218
218
  const primaryColor = _get('common.primary', skin);
219
219
  const mediumColor = _get('common.medium', skin);
220
+ const darkColor = _get('common.dark', skin);
220
221
  if (items) {
221
222
  const displayedPages = items.displayed.map((item, index) => {
222
223
  const activeColor = item.selected ? {
@@ -395,7 +396,18 @@ class MoocHeader extends React.Component {
395
396
  className: style.label
396
397
  }, user.stats.badge.label))), /*#__PURE__*/React.createElement("div", {
397
398
  className: style.avatarWrapper
398
- }, notificationPageView));
399
+ }, notificationPageView, /*#__PURE__*/React.createElement("div", {
400
+ className: style.avatar,
401
+ "data-name": "user-avatar"
402
+ }, /*#__PURE__*/React.createElement(Link, {
403
+ href: user.href,
404
+ className: style.userLink,
405
+ onClick: this.handleLinkClick,
406
+ "aria-label": user['picture-aria-label']
407
+ }, /*#__PURE__*/React.createElement(Picture, {
408
+ src: user.picture,
409
+ alt: user.profileAvatarAlt
410
+ })))));
399
411
  }
400
412
  if (settings) {
401
413
  const settingsElements = settings.map((setting, index) => {
@@ -405,48 +417,47 @@ class MoocHeader extends React.Component {
405
417
  type,
406
418
  title,
407
419
  name: settingName = index,
408
- 'aria-label': ariaLabel,
409
- icon,
410
- disabled = false
420
+ color,
421
+ hoverColor,
422
+ 'aria-label': ariaLabel
411
423
  } = setting;
412
424
  switch (type) {
413
425
  case 'link':
414
- case 'danger-link':
415
426
  {
416
- const iconView = icon ? /*#__PURE__*/React.createElement(FontAwesomeIcon, {
417
- icon: icon,
418
- className: style.linkIcon
419
- }) : null;
420
427
  settingView = /*#__PURE__*/React.createElement("div", {
421
428
  "data-name": `setting-${settingName}`,
422
- className: classnames(style.setting, disabled && style.disabled),
429
+ className: style.setting,
423
430
  key: settingName
424
431
  }, /*#__PURE__*/React.createElement(Link, {
425
- className: style.settingLink,
432
+ className: style.link,
426
433
  href: options.href,
434
+ hoverColor: hoverColor,
427
435
  onClick: this.handleLinkClick,
428
436
  target: options.target || null,
429
- "aria-label": ariaLabel || title
430
- }, iconView, title));
437
+ "aria-label": ariaLabel || title,
438
+ style: {
439
+ color
440
+ }
441
+ }, title));
431
442
  break;
432
443
  }
433
444
  case 'select':
434
445
  {
435
- const selectProps = {
436
- options: options.values.map(opt => ({
437
- value: opt.value,
438
- label: opt.name
439
- })),
440
- value: options.values.find(opt => opt.selected)?.value,
441
- onChange: options.onChange,
442
- placeholder: title,
443
- 'aria-label': ariaLabel || title
444
- };
446
+ const selectProps = {};
447
+ selectProps.options = options.values;
448
+ selectProps.title = '';
449
+ selectProps.theme = 'header';
450
+ selectProps.onChange = options.onChange;
451
+ selectProps.className = style.languageSelect;
445
452
  settingView = /*#__PURE__*/React.createElement("div", {
446
453
  "data-name": `setting-${settingName}`,
447
454
  className: classnames(style.setting, style.selectBoxes),
448
455
  key: settingName
449
- }, /*#__PURE__*/React.createElement(InputSelect, selectProps));
456
+ }, /*#__PURE__*/React.createElement("span", {
457
+ className: style.label
458
+ }, title), /*#__PURE__*/React.createElement(Select, _extends({}, selectProps, {
459
+ "aria-label": ariaLabel || title
460
+ })));
450
461
  break;
451
462
  }
452
463
  case 'switch':
@@ -455,19 +466,17 @@ class MoocHeader extends React.Component {
455
466
  switchProps.value = options.value;
456
467
  switchProps.id = `input-switch-${index}`;
457
468
  switchProps.onChange = options.onChange;
458
- switchProps.titlePosition = 'left';
459
- switchProps.theme = 'newMooc';
460
- switchProps.type = 'switch';
461
- switchProps.title = title;
462
- switchProps.icon = icon;
463
469
  settingView = /*#__PURE__*/React.createElement("div", {
464
470
  "data-name": `setting-${settingName}`,
465
- className: classnames(style.setting, disabled && style.disabled),
471
+ className: style.setting,
466
472
  key: settingName,
467
473
  "aria-label": ariaLabel || title
468
474
  }, /*#__PURE__*/React.createElement(InputSwitch, _extends({}, switchProps, {
469
475
  "aria-labelledby": `title-id-${settingName}`
470
- })));
476
+ })), /*#__PURE__*/React.createElement("span", {
477
+ id: `title-id-${settingName}`,
478
+ className: style.label
479
+ }, title));
471
480
  break;
472
481
  }
473
482
  }
@@ -476,20 +485,16 @@ class MoocHeader extends React.Component {
476
485
  settingsView = /*#__PURE__*/React.createElement("div", {
477
486
  className: style.settings,
478
487
  ref: this.setMenuSettings
479
- }, /*#__PURE__*/React.createElement("div", {
480
- className: classnames(style.userAvatarWrapper, isSettingsOpen && style.userAvatarOpen)
481
- }, /*#__PURE__*/React.createElement(Link, {
482
- className: classnames(style.userLinkAvatar),
488
+ }, /*#__PURE__*/React.createElement(CogIcon, {
489
+ "data-name": "settings-toggle",
490
+ style: {
491
+ color: darkColor
492
+ },
493
+ className: style.settingsToggle,
483
494
  onClick: this.handleSettingsToggle,
484
495
  "aria-expanded": isSettingsOpen,
485
- "aria-label": settingsAriaLabel,
486
- "aria-haspopup": "true",
487
- role: "button"
488
- }, /*#__PURE__*/React.createElement(Picture, {
489
- className: style.avatar,
490
- src: user && user.picture,
491
- alt: user && user.profileAvatarAlt
492
- }))), /*#__PURE__*/React.createElement("div", {
496
+ "aria-label": settingsAriaLabel
497
+ }), /*#__PURE__*/React.createElement("div", {
493
498
  className: isSettingsOpen ? style.settingsWrapper : style.settingsWrapperHidden
494
499
  }, /*#__PURE__*/React.createElement("div", {
495
500
  "data-name": "settings",
@@ -659,10 +664,9 @@ MoocHeader.propTypes = process.env.NODE_ENV !== "production" ? {
659
664
  settings: PropTypes.arrayOf(PropTypes.shape({
660
665
  title: PropTypes.string,
661
666
  name: PropTypes.string,
662
- type: PropTypes.oneOf(['select', 'switch', 'link', 'danger-link']),
667
+ type: PropTypes.oneOf(['select', 'switch', 'link']),
663
668
  color: PropTypes.string,
664
669
  'aria-label': PropTypes.string,
665
- icon: PropTypes.string,
666
670
  options: PropTypes.shape({
667
671
  href: PropTypes.string,
668
672
  onChange: PropTypes.func,
@@ -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","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","customStyle","padding","selected","color","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","name","itemName","hoverColor","brand","onClick","bar","backgroundColor","optionsView","more","option","line","value","noItems","desktopOnlyMoreMenu","button","containerCustom","alignItems","menuWrapper","top","buttons","tabletOnlyMoreMenu","optionsGroup","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","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 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 })\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 };\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.title}`,\n customStyle: {padding: '0 16px', ...(item.selected && {color: primaryColor})}\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 {\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 <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 menuWrapper={{\n customStyle: {\n top: '30px'\n }\n }}\n menu={{\n buttons: this.createMenuButtons(items.more, primaryColor)\n }}\n />\n </div>\n ) : null}\n <div className={style.tabletOnlyMoreMenu}>\n <div className={style.optionsGroup}>{optionsView}</div>\n </div>\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 </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 = icon ? (\n <FontAwesomeIcon icon={icon} className={style.linkIcon} />\n ) : 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 })),\n value: options.values.find(opt => opt.selected)?.value,\n onChange: options.onChange,\n placeholder: title,\n 'aria-label': ariaLabel || title\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 switchProps.value = options.value;\n switchProps.id = `input-switch-${index}`;\n switchProps.onChange = options.onChange;\n switchProps.titlePosition = 'left';\n switchProps.theme = 'newMooc';\n switchProps.type = 'switch';\n switchProps.title = title;\n switchProps.icon = icon;\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 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","NovaCompositionCoorpacademyCog","CogIcon","NovaCompositionCoorpacademyPlacesHome24","HomeIcon","FontAwesomeIcon","Provider","Cta","Select","Picture","InputSwitch","Link","Search","SearchForm","ButtonMenuAction","COLORS","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","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","darkColor","displayedPages","displayed","index","activeColor","pageCountAriaLabel","itemLabel","pageBadge","counter","createElement","className","itemBadge","activePage","itemName","hoverColor","brand","onClick","bar","backgroundColor","optionsView","more","option","line","value","noItems","desktopOnlyMoreMenu","button","containerCustom","alignItems","menuWrapper","top","buttons","tabletOnlyMoreMenu","optionsGroup","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","avatarWrapper","avatar","userLink","src","picture","alt","profileAvatarAlt","settingsElements","setting","settingView","options","settingName","ariaLabel","selectProps","values","theme","onChange","languageSelect","selectBoxes","switchProps","id","ref","settingsToggle","settingsWrapper","settingsWrapperHidden","settingsGroup","role","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 NovaCompositionCoorpacademyCog as CogIcon,\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 Select from '../../atom/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 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 })\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']),\n color: PropTypes.string,\n 'aria-label': 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 };\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: {padding: '0 16px', ...(item.selected && {color: primaryColor})}\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 {\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 const darkColor = get('common.dark', 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 <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 menuWrapper={{\n customStyle: {\n top: '30px'\n }\n }}\n menu={{\n buttons: this.createMenuButtons(items.more, primaryColor)\n }}\n />\n </div>\n ) : null}\n <div className={style.tabletOnlyMoreMenu}>\n <div className={style.optionsGroup}>{optionsView}</div>\n </div>\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 </div>\n <div className={style.avatarWrapper}>\n {notificationPageView}\n <div className={style.avatar} data-name=\"user-avatar\">\n <Link\n href={user.href}\n className={style.userLink}\n onClick={this.handleLinkClick}\n aria-label={user['picture-aria-label']}\n >\n <Picture src={user.picture} alt={user.profileAvatarAlt} />\n </Link>\n </div>\n </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 color,\n hoverColor,\n 'aria-label': ariaLabel\n } = setting;\n\n switch (type) {\n case 'link': {\n settingView = (\n <div data-name={`setting-${settingName}`} className={style.setting} key={settingName}>\n <Link\n className={style.link}\n href={options.href}\n hoverColor={hoverColor}\n onClick={this.handleLinkClick}\n target={options.target || null}\n aria-label={ariaLabel || title}\n style={{\n color\n }}\n >\n {title}\n </Link>\n </div>\n );\n break;\n }\n case 'select': {\n const selectProps = {};\n selectProps.options = options.values;\n selectProps.title = '';\n selectProps.theme = 'header';\n selectProps.onChange = options.onChange;\n selectProps.className = style.languageSelect;\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={classnames(style.setting, style.selectBoxes)}\n key={settingName}\n >\n <span className={style.label}>{title}</span>\n <Select {...selectProps} aria-label={ariaLabel || title} />\n </div>\n );\n break;\n }\n case 'switch': {\n const switchProps = {};\n switchProps.value = options.value;\n switchProps.id = `input-switch-${index}`;\n switchProps.onChange = options.onChange;\n\n settingView = (\n <div\n data-name={`setting-${settingName}`}\n className={style.setting}\n key={settingName}\n aria-label={ariaLabel || title}\n >\n <InputSwitch {...switchProps} aria-labelledby={`title-id-${settingName}`} />\n <span id={`title-id-${settingName}`} className={style.label}>\n {title}\n </span>\n </div>\n );\n break;\n }\n }\n\n return settingView;\n });\n\n settingsView = (\n <div className={style.settings} ref={this.setMenuSettings}>\n <CogIcon\n data-name=\"settings-toggle\"\n style={{color: darkColor}}\n className={style.settingsToggle}\n onClick={this.handleSettingsToggle}\n aria-expanded={isSettingsOpen}\n aria-label={settingsAriaLabel}\n />\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":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,+BAA+B,IAAIC,UAAU,EAC7CC,8BAA8B,IAAIC,SAAS,EAC3CC,8BAA8B,IAAIC,OAAO,EACzCC,uCAAuC,IAAIC,QAAQ,QAC9C,0BAA0B;AACjC,SAAQC,eAAe,QAAO,gCAAgC;AAC9D,OAAOC,QAAQ,MAAM,qBAAqB;AAC1C,OAAOC,GAAG,MAAM,gBAAgB;AAChC,OAAOC,MAAM,MAAM,mBAAmB;AACtC,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,WAAW,MAAM,yBAAyB;AACjD,OAAOC,IAAI,MAAM,iBAAiB;AAClC,OAAOC,MAAM,MAAM,yBAAyB;AAC5C,OAAOC,UAAU,MAAM,4BAA4B;AACnD,OAAOC,gBAAgB,MAAM,mCAAmC;AAChE,SAAQC,MAAM,QAAO,wBAAwB;AAC7C,OAAOC,KAAK,MAAM,aAAa;AAE/B,MAAMC,UAAU,SAASvB,KAAK,CAACwB,SAAS,CAAC;EAkGvC,OAAOC,YAAY,GAAG;IACpBC,SAAS,EAAEd,QAAQ,CAACe,iBAAiB,CAACD,SAAS;IAC/CE,IAAI,EAAEhB,QAAQ,CAACe,iBAAiB,CAACC;EACnC,CAAC;EAEDC,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IACZ,IAAI,CAACC,KAAK,GAAG;MACXC,cAAc,EAAE,KAAK;MACrBC,UAAU,EAAE,KAAK;MACjBC,OAAO,EAAE,KAAK;MACdC,aAAa,EAAE;IACjB,CAAC;IAED,IAAI,CAACC,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACC,IAAI,CAAC,IAAI,CAAC;IAChE,IAAI,CAACC,gBAAgB,GAAG,IAAI,CAACA,gBAAgB,CAACD,IAAI,CAAC,IAAI,CAAC;IACxD,IAAI,CAACE,aAAa,GAAG,IAAI,CAACA,aAAa,CAACF,IAAI,CAAC,IAAI,CAAC;IAClD,IAAI,CAACG,eAAe,GAAG,IAAI,CAACA,eAAe,CAACH,IAAI,CAAC,IAAI,CAAC;IACtD,IAAI,CAACI,eAAe,GAAG,IAAI,CAACA,eAAe,CAACJ,IAAI,CAAC,IAAI,CAAC;IACtD,IAAI,CAACK,kBAAkB,GAAG,IAAI,CAACA,kBAAkB,CAACL,IAAI,CAAC,IAAI,CAAC;IAC5D,IAAI,CAACM,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACN,IAAI,CAAC,IAAI,CAAC;IAC1D,IAAI,CAACO,aAAa,GAAG,IAAI,CAACA,aAAa,CAACP,IAAI,CAAC,IAAI,CAAC;IAClD,IAAI,CAACQ,YAAY,GAAG,IAAI,CAACA,YAAY,CAACR,IAAI,CAAC,IAAI,CAAC;IAChD,IAAI,CAACS,gBAAgB,GAAG,IAAI,CAACA,gBAAgB,CAACT,IAAI,CAAC,IAAI,CAAC;IACxD,IAAI,CAACU,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACV,IAAI,CAAC,IAAI,CAAC;IAC1D,IAAI,CAACW,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACX,IAAI,CAAC,IAAI,CAAC;IAC1D,IAAI,CAACY,kBAAkB,GAAG,IAAI,CAACA,kBAAkB,CAACZ,IAAI,CAAC,IAAI,CAAC;IAC5D,IAAI,CAACa,cAAc,GAAG,IAAI,CAACA,cAAc,CAACb,IAAI,CAAC,IAAI,CAAC;EACtD;EAEAc,kBAAkBA,CAACC,SAAS,EAAEC,SAAS,EAAEC,WAAW,EAAE;IACpD,MAAM;MAACtB;IAAc,CAAC,GAAG,IAAI,CAACD,KAAK;IACnC,IAAIC,cAAc,EAAE;MAClBuB,QAAQ,CAACC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAACjB,aAAa,CAAC;MACtDgB,QAAQ,CAACC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAACjB,aAAa,CAAC;IAC7D,CAAC,MAAM;MACLgB,QAAQ,CAACE,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAClB,aAAa,CAAC;MACzDgB,QAAQ,CAACE,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAClB,aAAa,CAAC;IAChE;EACF;EAEAE,eAAeA,CAACiB,EAAE,EAAE;IAClB,IAAI,CAACC,YAAY,GAAGD,EAAE;EACxB;EAEAnB,aAAaA,CAACqB,UAAU,EAAE;IACxB,MAAM;MAAC5B;IAAc,CAAC,GAAG,IAAI,CAACD,KAAK;IACnC,IAAIC,cAAc,EAAE;MAClB,MAAM6B,IAAI,GAAG,IAAI,CAACF,YAAY;MAC9B,IAAIE,IAAI,IAAI,CAACA,IAAI,CAACC,QAAQ,CAACF,UAAU,CAACG,MAAM,CAAC,EAAE;QAC7C,IAAI,CAAC3B,oBAAoB,CAAC,CAAC;MAC7B;IACF;EACF;EAEAI,eAAeA,CAAA,EAAG;IAChB,MAAM;MAACP;IAAU,CAAC,GAAG,IAAI,CAACF,KAAK;IAC/BE,UAAU,IAAI,IAAI,CAACK,gBAAgB,CAAC,CAAC;EACvC;EAEAF,oBAAoBA,CAAA,EAAG;IACrB,IAAI,CAAC4B,QAAQ,CAACX,SAAS,KAAK;MAC1BrB,cAAc,EAAE,CAACqB,SAAS,CAACrB;IAC7B,CAAC,CAAC,CAAC;EACL;EAEAM,gBAAgBA,CAAA,EAAG;IACjB,MAAM;MAACL;IAAU,CAAC,GAAG,IAAI,CAACF,KAAK;IAC/BE,UAAU,GAAG,IAAI,CAACc,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAACD,gBAAgB,CAAC,CAAC;EACjE;EAEAJ,kBAAkBA,CAAA,EAAG;IACnB,MAAM;MAACuB;IAAc,CAAC,GAAG,IAAI,CAACnC,KAAK;IACnC,IAAImC,cAAc,EAAE;MAClBA,cAAc,CAAC,CAAC;IAClB;EACF;EAEAtB,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAACuB;IAAa,CAAC,GAAG,IAAI,CAACpC,KAAK;IAClC,IAAIoC,aAAa,EAAE;MACjBA,aAAa,CAAC,CAAC;IACjB;EACF;EAEAtB,aAAaA,CAAA,EAAG;IACd,IAAI,CAACoB,QAAQ,CAACX,SAAS,KAAK;MAC1BnB,OAAO,EAAE;IACX,CAAC,CAAC,CAAC;EACL;EAEAW,YAAYA,CAAA,EAAG;IACb,IAAI,CAACmB,QAAQ,CAACX,SAAS,KAAK;MAC1BnB,OAAO,EAAE;IACX,CAAC,CAAC,CAAC;EACL;EAEAY,gBAAgBA,CAAA,EAAG;IACjB,MAAM;MAACqB;IAAU,CAAC,GAAG,IAAI,CAACrC,KAAK;IAC/B,IAAIqC,UAAU,EAAE;MACdA,UAAU,CAAC,CAAC;IACd;IACA,IAAI,CAACH,QAAQ,CAAC,OAAO;MACnB/B,UAAU,EAAE;IACd,CAAC,CAAC,CAAC;EACL;EAEAc,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAACqB;IAAW,CAAC,GAAG,IAAI,CAACtC,KAAK;IAChC,IAAIsC,WAAW,EAAE;MACfA,WAAW,CAAC,CAAC;IACf;IACA,IAAI,CAACJ,QAAQ,CAAC,OAAO;MACnB/B,UAAU,EAAE;IACd,CAAC,CAAC,CAAC;EACL;EAEAe,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACgB,QAAQ,CAAC,OAAO;MACnB7B,aAAa,EAAE;IACjB,CAAC,CAAC,CAAC;EACL;EAEAc,kBAAkBA,CAAA,EAAG;IACnB,IAAI,CAACe,QAAQ,CAAC,OAAO;MACnB7B,aAAa,EAAE;IACjB,CAAC,CAAC,CAAC;EACL;EAEAe,cAAcA,CAACmB,KAAK,EAAE;IACpB,IAAIA,KAAK,CAACC,GAAG,KAAK,OAAO,EAAE;MACzB,IAAI,CAACN,QAAQ,CAAC,OAAO;QACnB7B,aAAa,EAAE;MACjB,CAAC,CAAC,CAAC;IACL,CAAC,MAAM,IAAIkC,KAAK,CAACC,GAAG,KAAK,KAAK,IAAID,KAAK,CAACC,GAAG,KAAK,QAAQ,EAAE;MACxD,IAAI,CAACN,QAAQ,CAAC,OAAO;QACnB7B,aAAa,EAAE;MACjB,CAAC,CAAC,CAAC;IACL;EACF;EAEAoC,iBAAiB,GAAGA,CAACC,KAAK,EAAEC,YAAY,KAAK;IAC3C,OAAOD,KAAK,CAACE,GAAG,CAACC,IAAI,KAAK;MACxBC,KAAK,EAAED,IAAI,CAACE,KAAK;MACjBC,QAAQ,EAAEH,IAAI,CAACG,QAAQ;MACvBC,IAAI,EAAE,aAAa;MACnBC,IAAI,EAAE;QAACC,IAAI,EAAEN,IAAI,CAACM;MAAI,CAAC;MACvB,WAAW,EAAE,aAAaN,IAAI,CAACO,IAAI,EAAE;MACrCC,WAAW,EAAE;QAACC,OAAO,EAAE,QAAQ;QAAE,IAAIT,IAAI,CAACU,QAAQ,IAAI;UAACC,KAAK,EAAEb;QAAY,CAAC;MAAC;IAC9E,CAAC,CAAC,CAAC;EACL,CAAC;EAEDc,MAAMA,CAAA,EAAG;IACP,IAAIC,QAAA,CAAQ,IAAI,CAAC1D,KAAK,CAAC,EAAE,OAAO,IAAI;IACpC,MAAM;MACJ2D,IAAI,GAAG,CAAC,CAAC;MACTC,KAAK,EAAElB,KAAK;MACZmB,QAAQ;MACRC,IAAI;MACJC,KAAK;MACLC,MAAM;MACN,yBAAyB,EAAEC,oBAAoB;MAC/C,qBAAqB,EAAEC,iBAAiB;MACxC,wBAAwB,EAAEC,mBAAmB;MAC7C,2BAA2B,EAAEC;IAC/B,CAAC,GAAG,IAAI,CAACpE,KAAK;IACd,MAAM;MAACI,OAAO;MAAEF,cAAc;MAAEC,UAAU;MAAEE;IAAa,CAAC,GAAG,IAAI,CAACJ,KAAK;IACvE,MAAM;MAACL,SAAS;MAAEE;IAAI,CAAC,GAAG,IAAI,CAACuE,OAAO;IACtC,MAAM;MACJ,YAAY,EAAEC,aAAa;MAC3BC,kBAAkB;MAClBC,iBAAiB;MACjBC,WAAW;MACXC;IACF,CAAC,GAAGf,IAAI;IACR,MAAMgB,OAAO,GAAGC,IAAA,CAAI,KAAK,EAAEjB,IAAI,CAAC,IAAIiB,IAAA,CAAI,aAAa,EAAE9E,IAAI,CAAC;IAC5D,MAAM+E,aAAa,GAAGD,IAAA,CAAI,WAAW,EAAEjB,IAAI,CAAC,IAAImB,MAAA,CAAMH,OAAO,EAAE,oBAAoB,EAAE7E,IAAI,CAAC;IAC1F,IAAIiF,SAAS,GAAG,IAAI;IACpB,IAAIC,SAAS,GAAG,IAAI;IACpB,IAAIC,QAAQ,GAAG,IAAI;IACnB,IAAIC,YAAY,GAAG,IAAI;IACvB,IAAIC,iBAAiB,GAAG,IAAI;IAC5B,IAAIC,cAAc,GAAG,IAAI;IAEzB,MAAMC,aAAa,GAAGzF,SAAS,CAAC,MAAM,CAAC;IACvC,MAAM+C,YAAY,GAAGiC,IAAA,CAAI,gBAAgB,EAAE9E,IAAI,CAAC;IAChD,MAAMwF,WAAW,GAAGV,IAAA,CAAI,eAAe,EAAE9E,IAAI,CAAC;IAC9C,MAAMyF,SAAS,GAAGX,IAAA,CAAI,aAAa,EAAE9E,IAAI,CAAC;IAE1C,IAAI4C,KAAK,EAAE;MACT,MAAM8C,cAAc,GAAG9C,KAAK,CAAC+C,SAAS,CAAC7C,GAAG,CAAC,CAACC,IAAI,EAAE6C,KAAK,KAAK;QAC1D,MAAMC,WAAW,GAAG9C,IAAI,CAACU,QAAQ,GAC7B;UACEC,KAAK,EAAEb;QACT,CAAC,GACD,IAAI;QACR,MAAM;UAAC,uBAAuB,EAAEiD;QAAkB,CAAC,GAAG/C,IAAI;QAC1D,MAAMgD,SAAS,GAAGhD,IAAI,CAACU,QAAQ,GAAG,GAAGV,IAAI,CAACE,KAAK,KAAKoB,mBAAmB,EAAE,GAAGtB,IAAI,CAACE,KAAK;QACtF,MAAM+C,SAAS,GACbjD,IAAI,CAACkD,OAAO,GAAG,CAAC,gBACd7H,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;UACHgE,IAAI,EAAEN,IAAI,CAACM,IAAK;UAChB,aAAU,YAAY;UACtBH,QAAQ,EAAEH,IAAI,CAACG,QAAS;UACxBiD,SAAS,EAAE7H,UAAU,CACnBoB,KAAK,CAAC0G,SAAS,EACfrD,IAAI,CAACU,QAAQ,IAAI/D,KAAK,CAAC2G,UAAU,EACjCtD,IAAI,CAACG,QAAQ,IAAIxD,KAAK,CAACwD,QACzB,CAAE;UACF,cAAY4C;QAAmB,gBAE/B1H,KAAA,CAAA8H,aAAA;UAAMC,SAAS,EAAEzG,KAAK,CAACuG;QAAQ,GAAElD,IAAI,CAACkD,OAAO,GAAG,EAAE,GAAG,KAAK,GAAGlD,IAAI,CAACkD,OAAc,CAC5E,CAAC,GACL,IAAI;QAEV,MAAM;UAAC3C,IAAI,EAAEgD,QAAQ,GAAGV;QAAK,CAAC,GAAG7C,IAAI;QAErC,oBACE3E,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;UACHqD,GAAG,EAAE4D,QAAS;UACd,aAAW,QAAQA,QAAQ,EAAG;UAC9BjD,IAAI,EAAEN,IAAI,CAACM,IAAK;UAChBH,QAAQ,EAAEH,IAAI,CAACG,QAAS;UACxBiD,SAAS,EAAE7H,UAAU,CACnBoB,KAAK,CAACqD,IAAI,EACVA,IAAI,CAACG,QAAQ,IAAIH,IAAI,CAACU,QAAQ,IAAI/D,KAAK,CAAC2G,UAAU,EAClDtD,IAAI,CAACG,QAAQ,IAAIxD,KAAK,CAACwD,QACzB,CAAE;UACFqD,UAAU,EAAExD,IAAI,CAACG,QAAQ,GAAG,EAAE,GAAG8B,MAAA,CAAMvF,MAAM,CAAC+G,KAAK,EAAE,gBAAgB,EAAExG,IAAI,CAAE;UAC7EyG,OAAO,EAAE,IAAI,CAAC7F,eAAgB;UAC9BuB,MAAM,EAAEY,IAAI,CAACZ,MAAM,IAAI,IAAK;UAC5B,cAAY4D,SAAU;UACtBrG,KAAK,EAAE;YACL,GAAGmG;UACL;QAAE,GAED9C,IAAI,CAACE,KAAK,EACV+C,SAAS,eACV5H,KAAA,CAAA8H,aAAA;UACEC,SAAS,EAAEzG,KAAK,CAACgH,GAAI;UACrBhH,KAAK,EAAE;YACLiH,eAAe,EAAE9D;UACnB;QAAE,CACH,CACG,CAAC;MAEX,CAAC,CAAC;MAEF,MAAM+D,WAAW,GAAGhE,KAAK,CAACiE,IAAI,CAAC/D,GAAG,CAAC,CAACC,IAAI,EAAE6C,KAAK,KAAK;QAClD,MAAMC,WAAW,GAAG9C,IAAI,CAACU,QAAQ,GAC7B;UACEC,KAAK,EAAEb;QACT,CAAC,GACD,IAAI;QACR,MAAMkD,SAAS,GAAGhD,IAAI,CAACU,QAAQ,GAAG,GAAGV,IAAI,CAACE,KAAK,KAAKoB,mBAAmB,EAAE,GAAGtB,IAAI,CAACE,KAAK;QACtF,MAAM;UAACK,IAAI,EAAEgD,QAAQ,GAAGV;QAAK,CAAC,GAAG7C,IAAI;QACrC,oBACE3E,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;UACHgE,IAAI,EAAEN,IAAI,CAACM,IAAK;UAChBX,GAAG,EAAE4D,QAAS;UACdpD,QAAQ,EAAEH,IAAI,CAACG,QAAS;UACxBiD,SAAS,EAAE7H,UAAU,CAACoB,KAAK,CAACoH,MAAM,EAAE/D,IAAI,CAACG,QAAQ,IAAIxD,KAAK,CAACwD,QAAQ,CAAE;UACrE,aAAW,aAAaoD,QAAQ,EAAG;UACnCnE,MAAM,EAAEY,IAAI,CAACZ,MAAM,IAAI,IAAK;UAC5B,cAAY4D,SAAU;UACtBU,OAAO,EAAE,IAAI,CAAC7F,eAAgB;UAC9B2F,UAAU,EAAExD,IAAI,CAACG,QAAQ,GAAG,EAAE,GAAG8B,MAAA,CAAMvF,MAAM,CAAC+G,KAAK,EAAE,gBAAgB,EAAExG,IAAI,CAAE;UAC7EN,KAAK,EAAE;YACL,GAAGmG;UACL;QAAE,GAED9C,IAAI,CAACE,KAAK,eACX7E,KAAA,CAAA8H,aAAA;UACEC,SAAS,EAAEzG,KAAK,CAACqH,IAAK;UACtBrH,KAAK,EAAE;YACLiH,eAAe,EAAE9D;UACnB;QAAE,CACH,CACG,CAAC;MAEX,CAAC,CAAC;MACFoC,SAAS,gBACP7G,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEjC,MAAM,CAAC8C,KAAK,IAAI1G,OAAO,GAAGZ,KAAK,CAACuH,OAAO,GAAGvH,KAAK,CAACkD;MAAM,GACnE8C,cAAc,EACd9C,KAAK,CAACiE,IAAI,gBACTzI,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACwH;MAAoB,gBACxC9I,KAAA,CAAA8H,aAAA,CAAC1G,gBAAgB;QACf2H,MAAM,EAAE;UACNnE,KAAK,EAAEuC,aAAa;UACpB,YAAY,EAAEA,aAAa;UAC3B,WAAW,EAAE;QACf,CAAE;QACFpC,IAAI,EAAC,MAAM;QACXN,YAAY,EAAEA,YAAa;QAC3BuE,eAAe,EAAE;UAACC,UAAU,EAAE;QAAY,CAAE;QAC5CC,WAAW,EAAE;UACX/D,WAAW,EAAE;YACXgE,GAAG,EAAE;UACP;QACF,CAAE;QACFtF,IAAI,EAAE;UACJuF,OAAO,EAAE,IAAI,CAAC7E,iBAAiB,CAACC,KAAK,CAACiE,IAAI,EAAEhE,YAAY;QAC1D;MAAE,CACH,CACE,CAAC,GACJ,IAAI,eACRzE,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAAC+H;MAAmB,gBACvCrJ,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACgI;MAAa,GAAEd,WAAiB,CACnD,CACF,CACN;IACH;IAEA,IAAI3C,KAAK,EAAE;MACT,MAAM0D,IAAI,GAAG1D,KAAK,CAACnB,GAAG,CAAC,CAAC8E,GAAG,EAAEhC,KAAK,KAAK;QACrC,oBACExH,KAAA,CAAA8H,aAAA,CAACjH,GAAG,EAAA4I,QAAA,KAAKD,GAAG;UAAElF,GAAG,EAAEkD,KAAM;UAACO,SAAS,EAAEP,KAAK,GAAG,CAAC,KAAK3B,KAAK,CAAC6D,MAAM,GAAG,IAAI,GAAGpI,KAAK,CAACqI;QAAQ,EAAE,CAAC;MAE9F,CAAC,CAAC;MAEF7C,SAAS,gBAAG9G,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACuE;MAAM,GAAE0D,IAAU,CAAC;IACvD;IAEA,IAAI3D,IAAI,EAAE;MACR,MAAMgE,eAAe,GAAGhD,MAAA,CAAM,CAAC,EAAE,qBAAqB,EAAEhB,IAAI,CAAC;MAC7D,MAAMiE,sBAAsB,GAAGjD,MAAA,CAAM,EAAE,EAAE,0BAA0B,EAAEhB,IAAI,CAAC;MAE1EqB,iBAAiB,GACf2C,eAAe,GAAG,CAAC,gBACjB5J,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;QACHgE,IAAI,EAAEW,IAAI,CAACkE,aAAa,CAAC7E,IAAK;QAC9B,aAAU,oBAAoB;QAC9B8C,SAAS,EAAEzG,KAAK,CAACwI;MAAc,GAE9BF,eAAe,GAAG,EAAE,GAAG,KAAK,GAAGA,eAC5B,CAAC,GACL,IAAI;MACV,MAAMG,oBAAoB,gBACxB/J,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;QACH8G,SAAS,EAAE7H,UAAU,CAACoB,KAAK,CAAC0I,YAAY,EAAEJ,eAAe,GAAG,CAAC,GAAGtI,KAAK,CAAC2I,MAAM,GAAG,IAAI,CAAE;QACrF,aAAU,oBAAoB;QAC9BhF,IAAI,EAAEW,IAAI,CAACkE,aAAa,CAAC7E,IAAK;QAC9B,cAAY4E;MAAuB,gBAEnC7J,KAAA,CAAA8H,aAAA,CAACnH,eAAe;QACduJ,IAAI,EAAC,MAAM;QACX5I,KAAK,EAAE;UAACgE,KAAK,EAAEsE,eAAe,GAAG,CAAC,GAAGvI,MAAM,CAAC8I,YAAY,GAAG9I,MAAM,CAAC+I;QAAW;MAAE,CAChF,CAAC,EACDnD,iBACG,CACP;MACDF,QAAQ,gBACN/G,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACsE;MAAK,gBACzB5F,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAAC+I;MAAM,gBAC1BrK,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;QACH8G,SAAS,EAAEzG,KAAK,CAACgJ,IAAK;QACtB,aAAU,YAAY;QACtBrF,IAAI,EAAEW,IAAI,CAACyE,KAAK,CAACE,KAAK,CAACtF,IAAK;QAC5BoD,OAAO,EAAE,IAAI,CAAC7F,eAAgB;QAC9B,cAAYoD,IAAI,CAACyE,KAAK,CAACE,KAAK,CAAC,YAAY;MAAE,gBAE3CvK,KAAA,CAAA8H,aAAA,2BACE9H,KAAA,CAAA8H,aAAA,CAACnH,eAAe;QACduJ,IAAI,EAAC,MAAM;QACX5I,KAAK,EAAE;UAACgE,KAAK,EAAEjE,MAAM,CAACmJ;QAAU,CAAE;QAClCzC,SAAS,EAAEzG,KAAK,CAACiJ;MAAM,CACxB,CACE,CAAC,eACNvK,KAAA,CAAA8H,aAAA;QAAK,aAAU,OAAO;QAACC,SAAS,EAAEzG,KAAK,CAACsD;MAAM,GAC3CgB,IAAI,CAACyE,KAAK,CAACE,KAAK,CAAC3F,KACf,CACD,CAAC,eACP5E,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;QACH8G,SAAS,EAAEzG,KAAK,CAACgJ,IAAK;QACtB,aAAU,cAAc;QACxBrF,IAAI,EAAEW,IAAI,CAACyE,KAAK,CAACI,OAAO,CAACxF,IAAK;QAC9BoD,OAAO,EAAE,IAAI,CAAC7F,eAAgB;QAC9B,cAAYoD,IAAI,CAACyE,KAAK,CAACI,OAAO,CAAC,YAAY;MAAE,gBAE7CzK,KAAA,CAAA8H,aAAA,2BACE9H,KAAA,CAAA8H,aAAA,CAACnH,eAAe;QACduJ,IAAI,EAAC,cAAc;QACnBnC,SAAS,EAAEzG,KAAK,CAACmJ,OAAQ;QACzBnJ,KAAK,EAAE;UAACgE,KAAK,EAAEb;QAAY;MAAE,CAC9B,CACE,CAAC,eAENzE,KAAA,CAAA8H,aAAA;QAAK,aAAU,OAAO;QAACC,SAAS,EAAEzG,KAAK,CAACsD;MAAM,GAC3CgB,IAAI,CAACyE,KAAK,CAACI,OAAO,CAAC7F,KACjB,CACD,CAAC,eACP5E,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;QACH8G,SAAS,EAAEzG,KAAK,CAACgJ,IAAK;QACtB,aAAU,YAAY;QACtBrF,IAAI,EAAEW,IAAI,CAACyE,KAAK,CAACK,KAAK,CAACzF,IAAK;QAC5BoD,OAAO,EAAE,IAAI,CAAC7F,eAAgB;QAC9B,cAAYoD,IAAI,CAACyE,KAAK,CAACK,KAAK,CAAC,YAAY;MAAE,gBAE3C1K,KAAA,CAAA8H,aAAA,2BACE9H,KAAA,CAAA8H,aAAA,CAACnH,eAAe;QACduJ,IAAI,EAAC,QAAQ;QACbnC,SAAS,EAAEzG,KAAK,CAACoJ,KAAM;QACvBpJ,KAAK,EAAE;UAACgE,KAAK,EAAEjE,MAAM,CAACsJ;QAAW;MAAE,CACpC,CACE,CAAC,eACN3K,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACsD;MAAM,GAAEgB,IAAI,CAACyE,KAAK,CAACK,KAAK,CAAC9F,KAAW,CACtD,CACH,CAAC,eACN5E,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACsJ;MAAc,GACjCb,oBAAoB,eACrB/J,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACuJ,MAAO;QAAC,aAAU;MAAa,gBACnD7K,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;QACHgE,IAAI,EAAEW,IAAI,CAACX,IAAK;QAChB8C,SAAS,EAAEzG,KAAK,CAACwJ,QAAS;QAC1BzC,OAAO,EAAE,IAAI,CAAC7F,eAAgB;QAC9B,cAAYoD,IAAI,CAAC,oBAAoB;MAAE,gBAEvC5F,KAAA,CAAA8H,aAAA,CAAC/G,OAAO;QAACgK,GAAG,EAAEnF,IAAI,CAACoF,OAAQ;QAACC,GAAG,EAAErF,IAAI,CAACsF;MAAiB,CAAE,CACrD,CACH,CACF,CACF,CACN;IACH;IAEA,IAAIvF,QAAQ,EAAE;MACZ,MAAMwF,gBAAgB,GAAGxF,QAAQ,CAACjB,GAAG,CAAC,CAAC0G,OAAO,EAAE5D,KAAK,KAAK;QACxD,IAAI6D,WAAW,GAAG,IAAI;QACtB,MAAM;UACJC,OAAO;UACPvG,IAAI;UACJF,KAAK;UACLK,IAAI,EAAEqG,WAAW,GAAG/D,KAAK;UACzBlC,KAAK;UACL6C,UAAU;UACV,YAAY,EAAEqD;QAChB,CAAC,GAAGJ,OAAO;QAEX,QAAQrG,IAAI;UACV,KAAK,MAAM;YAAE;cACXsG,WAAW,gBACTrL,KAAA,CAAA8H,aAAA;gBAAK,aAAW,WAAWyD,WAAW,EAAG;gBAACxD,SAAS,EAAEzG,KAAK,CAAC8J,OAAQ;gBAAC9G,GAAG,EAAEiH;cAAY,gBACnFvL,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;gBACH8G,SAAS,EAAEzG,KAAK,CAAC0D,IAAK;gBACtBC,IAAI,EAAEqG,OAAO,CAACrG,IAAK;gBACnBkD,UAAU,EAAEA,UAAW;gBACvBE,OAAO,EAAE,IAAI,CAAC7F,eAAgB;gBAC9BuB,MAAM,EAAEuH,OAAO,CAACvH,MAAM,IAAI,IAAK;gBAC/B,cAAYyH,SAAS,IAAI3G,KAAM;gBAC/BvD,KAAK,EAAE;kBACLgE;gBACF;cAAE,GAEDT,KACG,CACH,CACN;cACD;YACF;UACA,KAAK,QAAQ;YAAE;cACb,MAAM4G,WAAW,GAAG,CAAC,CAAC;cACtBA,WAAW,CAACH,OAAO,GAAGA,OAAO,CAACI,MAAM;cACpCD,WAAW,CAAC5G,KAAK,GAAG,EAAE;cACtB4G,WAAW,CAACE,KAAK,GAAG,QAAQ;cAC5BF,WAAW,CAACG,QAAQ,GAAGN,OAAO,CAACM,QAAQ;cACvCH,WAAW,CAAC1D,SAAS,GAAGzG,KAAK,CAACuK,cAAc;cAC5CR,WAAW,gBACTrL,KAAA,CAAA8H,aAAA;gBACE,aAAW,WAAWyD,WAAW,EAAG;gBACpCxD,SAAS,EAAE7H,UAAU,CAACoB,KAAK,CAAC8J,OAAO,EAAE9J,KAAK,CAACwK,WAAW,CAAE;gBACxDxH,GAAG,EAAEiH;cAAY,gBAEjBvL,KAAA,CAAA8H,aAAA;gBAAMC,SAAS,EAAEzG,KAAK,CAACsD;cAAM,GAAEC,KAAY,CAAC,eAC5C7E,KAAA,CAAA8H,aAAA,CAAChH,MAAM,EAAA2I,QAAA,KAAKgC,WAAW;gBAAE,cAAYD,SAAS,IAAI3G;cAAM,EAAE,CACvD,CACN;cACD;YACF;UACA,KAAK,QAAQ;YAAE;cACb,MAAMkH,WAAW,GAAG,CAAC,CAAC;cACtBA,WAAW,CAACnD,KAAK,GAAG0C,OAAO,CAAC1C,KAAK;cACjCmD,WAAW,CAACC,EAAE,GAAG,gBAAgBxE,KAAK,EAAE;cACxCuE,WAAW,CAACH,QAAQ,GAAGN,OAAO,CAACM,QAAQ;cAEvCP,WAAW,gBACTrL,KAAA,CAAA8H,aAAA;gBACE,aAAW,WAAWyD,WAAW,EAAG;gBACpCxD,SAAS,EAAEzG,KAAK,CAAC8J,OAAQ;gBACzB9G,GAAG,EAAEiH,WAAY;gBACjB,cAAYC,SAAS,IAAI3G;cAAM,gBAE/B7E,KAAA,CAAA8H,aAAA,CAAC9G,WAAW,EAAAyI,QAAA,KAAKsC,WAAW;gBAAE,mBAAiB,YAAYR,WAAW;cAAG,EAAE,CAAC,eAC5EvL,KAAA,CAAA8H,aAAA;gBAAMkE,EAAE,EAAE,YAAYT,WAAW,EAAG;gBAACxD,SAAS,EAAEzG,KAAK,CAACsD;cAAM,GACzDC,KACG,CACH,CACN;cACD;YACF;QACF;QAEA,OAAOwG,WAAW;MACpB,CAAC,CAAC;MAEFrE,YAAY,gBACVhH,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAEzG,KAAK,CAACqE,QAAS;QAACsG,GAAG,EAAE,IAAI,CAACxJ;MAAgB,gBACxDzC,KAAA,CAAA8H,aAAA,CAACtH,OAAO;QACN,aAAU,iBAAiB;QAC3Bc,KAAK,EAAE;UAACgE,KAAK,EAAE+B;QAAS,CAAE;QAC1BU,SAAS,EAAEzG,KAAK,CAAC4K,cAAe;QAChC7D,OAAO,EAAE,IAAI,CAACjG,oBAAqB;QACnC,iBAAeJ,cAAe;QAC9B,cAAYgE;MAAkB,CAC/B,CAAC,eACFhG,KAAA,CAAA8H,aAAA;QAAKC,SAAS,EAAE/F,cAAc,GAAGV,KAAK,CAAC6K,eAAe,GAAG7K,KAAK,CAAC8K;MAAsB,gBACnFpM,KAAA,CAAA8H,aAAA;QACE,aAAU,UAAU;QACpBC,SAAS,EAAEzG,KAAK,CAAC+K,aAAc;QAC/BC,IAAI,EAAC,OAAO;QACZ,cAAYpG;MAAe,GAE1BiF,gBACE,CACF,CACF,CACN;IACH;IAEA,IAAIrF,MAAM,EAAE;MACVoB,cAAc,gBACZlH,KAAA,CAAA8H,aAAA;QACE,aAAU,YAAY;QACtBC,SAAS,EAAE9F,UAAU,GAAGX,KAAK,CAACiL,eAAe,GAAGjL,KAAK,CAACkL;MAAU,gBAEhExM,KAAA,CAAA8H,aAAA,CAAC3G,UAAU;QACT2E,MAAM,EAAEA,MAAO;QACf2G,QAAQ,EAAE,IAAI,CAAC/J,kBAAmB;QAClCgK,OAAO,EAAE,IAAI,CAAC/J,iBAAkB;QAChCgK,aAAa,EAAE,IAAI,CAAC/J,aAAc;QAClCgK,YAAY,EAAE,IAAI,CAAC/J,YAAa;QAChC,2BAAyBkD;MAAqB,CAC/C,CACE,CACN;IACH;IAEA,oBACE/F,KAAA,CAAA8H,aAAA;MAAQC,SAAS,EAAEzG,KAAK,CAACuL;IAAQ,gBAC/B7M,KAAA,CAAA8H,aAAA;MACE,aAAU,YAAY;MACtB,aAAW7F,UAAW;MACtB8F,SAAS,EAAE9F,UAAU,GAAGX,KAAK,CAACwL,IAAI,GAAGxL,KAAK,CAACyL;IAAO,gBAElD/M,KAAA,CAAA8H,aAAA;MACEC,SAAS,EAAEzG,KAAK,CAAC0L,WAAY;MAC7B,cAAYzG,WAAY;MACxB0G,WAAW,EAAE,IAAI,CAACjK,iBAAkB;MACpCkK,YAAY,EAAE,IAAI,CAACjK;IAAmB,gBAEtCjD,KAAA,CAAA8H,aAAA;MAAKC,SAAS,EAAEzG,KAAK,CAAC6L,SAAU;MAAC,aAAU;IAAY,gBACrDnN,KAAA,CAAA8H,aAAA,CAAC1H,UAAU;MACTkM,IAAI,EAAC,QAAQ;MACb,aAAU,iBAAiB;MAC3BhL,KAAK,EAAE;QAACgE,KAAK,EAAE8B;MAAW,CAAE;MAC5BW,SAAS,EAAE9F,UAAU,GAAGX,KAAK,CAAC8L,YAAY,GAAG9L,KAAK,CAAC+L,MAAO;MAC1DhF,OAAO,EAAE,IAAI,CAACvF,gBAAiB;MAC/B,cAAYwD;IAAkB,CAC/B,CAAC,eACFtG,KAAA,CAAA8H,aAAA,CAACxH,SAAS;MACR,aAAU,kBAAkB;MAC5BgB,KAAK,EAAE;QAACgE,KAAK,EAAE8B;MAAW,CAAE;MAC5BW,SAAS,EAAE9F,UAAU,GAAGX,KAAK,CAACgM,KAAK,GAAGhM,KAAK,CAACiM,WAAY;MACxDlF,OAAO,EAAE,IAAI,CAACtF,iBAAkB;MAChC,cAAYsD;IAAmB,CAChC,CAAC,eACFrG,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;MAAC,aAAU,aAAa;MAACgE,IAAI,EAAEQ,IAAI,CAACR;IAAK,gBAC5CjF,KAAA,CAAA8H,aAAA,CAAC/G,OAAO;MAACgK,GAAG,EAAEpE,aAAc;MAACsE,GAAG,EAAE7E;IAAc,CAAE,CAC9C,CACH,CAAC,eACNpG,KAAA,CAAA8H,aAAA,CAAC7G,IAAI;MACH8G,SAAS,EAAEzG,KAAK,CAACmE,IAAK;MACtB,aAAU,MAAM;MAChBuG,EAAE,EAAC,MAAM;MACT/G,IAAI,EAAEQ,IAAI,CAACR,IAAK;MAChBuI,SAAS,EAAE,IAAI,CAACtK,cAAe;MAC/BuK,QAAQ,EAAE,CAAE;MACZ,eAAY;IAAY,gBAExBzN,KAAA,CAAA8H,aAAA,CAAC/G,OAAO;MAACgK,GAAG,EAAEtE,OAAQ;MAACwE,GAAG,EAAE7E;IAAc,CAAE,CAAC,EAC5CjE,aAAa,gBACZnC,KAAA,CAAA8H,aAAA;MAAK,cAAYvB,WAAY;MAACkH,QAAQ,EAAE,CAAE;MAAC,eAAY;IAAc,gBACnEzN,KAAA,CAAA8H,aAAA;MACE,cAAY,GAAGvB,WAAW,IAAIC,oCAAoC,EAAG;MACrE8F,IAAI,EAAC,SAAS;MACdvE,SAAS,EAAEzG,KAAK,CAACoM,oBAAqB;MACtCD,QAAQ,EAAE;IAAE,gBAEZzN,KAAA,CAAA8H,aAAA,CAACpH,QAAQ;MAACqH,SAAS,EAAEzG,KAAK,CAACqM,QAAS;MAACrM,KAAK,EAAE;QAACgE,KAAK,EAAEb;MAAY;IAAE,CAAE,CAAC,eACrEzE,KAAA,CAAA8H,aAAA;MACEC,SAAS,EAAEzG,KAAK,CAACiF;MACjB;MAAA;MACAqH,uBAAuB,EAAE;QAACC,MAAM,EAAEtH;MAAW,CAAE;MAC/CjF,KAAK,EAAE;QAACgE,KAAK,EAAEb;MAAY;IAAE,CAC9B,CACE,CACF,CAAC,GACJ,IACA,CACH,CAAC,EACLyC,cAAc,eACflH,KAAA,CAAA8H,aAAA;MACEC,SAAS,EAAE9F,UAAU,GAAGX,KAAK,CAAC4H,WAAW,GAAG5H,KAAK,CAACwM,iBAAkB;MACpE,aAAU;IAAc,GAEvBjH,SAAS,EACTE,QAAQ,IAAID,SAAS,EACrBE,YACE,CACF,CACC,CAAC;EAEb;AACF;AAhtBMzF,UAAU,CACPwM,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACjBzI,IAAI,EAAExF,SAAS,CAACkO,KAAK,CAAC;IACpBpD,GAAG,EAAE9K,SAAS,CAACmO,MAAM;IACrBC,SAAS,EAAEpO,SAAS,CAACmO,MAAM;IAC3BnJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;IACtB,YAAY,EAAEnO,SAAS,CAACmO,MAAM;IAC9B,mBAAmB,EAAEnO,SAAS,CAACmO,MAAM;IACrC7H,WAAW,EAAEtG,SAAS,CAACmO,MAAM;IAC7B5H,oCAAoC,EAAEvG,SAAS,CAACmO;EAClD,CAAC,CAAC;EACFtI,MAAM,EAAE7F,SAAS,CAACkO,KAAK,CAACjN,MAAM,CAAC6M,SAAS,CAAC;EACzC,yBAAyB,EAAE9N,SAAS,CAACmO,MAAM;EAC3CnK,cAAc,EAAEhE,SAAS,CAACqO,IAAI;EAC9BpK,aAAa,EAAEjE,SAAS,CAACqO,IAAI;EAC7B5I,KAAK,EAAEzF,SAAS,CAACkO,KAAK,CAAC;IACrB5G,SAAS,EAAEtH,SAAS,CAACsO,OAAO,CAC1BtO,SAAS,CAACkO,KAAK,CAAC;MACdpK,MAAM,EAAE9D,SAAS,CAACuO,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;MAC/D3J,KAAK,EAAE5E,SAAS,CAACmO,MAAM;MACvBlJ,IAAI,EAAEjF,SAAS,CAACmO,MAAM;MACtBnJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;MACtB/I,QAAQ,EAAEpF,SAAS,CAACwO,IAAI;MACxB3J,QAAQ,EAAE7E,SAAS,CAACwO,IAAI;MACxB5G,OAAO,EAAE5H,SAAS,CAACyO,MAAM;MACzB,uBAAuB,EAAEzO,SAAS,CAACmO;IACrC,CAAC,CACH,CAAC;IACD3F,IAAI,EAAExI,SAAS,CAACsO,OAAO,CACrBtO,SAAS,CAACkO,KAAK,CAAC;MACdpK,MAAM,EAAE9D,SAAS,CAACuO,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;MAC/D3J,KAAK,EAAE5E,SAAS,CAACmO,MAAM;MACvBlJ,IAAI,EAAEjF,SAAS,CAACmO,MAAM;MACtBnJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;MACtB/I,QAAQ,EAAEpF,SAAS,CAACwO,IAAI;MACxB3J,QAAQ,EAAE7E,SAAS,CAACwO,IAAI;MACxB5G,OAAO,EAAE5H,SAAS,CAACyO;IACrB,CAAC,CACH;EACF,CAAC,CAAC;EACF7I,KAAK,EAAE5F,SAAS,CAACsO,OAAO,CAACtO,SAAS,CAACkO,KAAK,CAACtN,GAAG,CAACkN,SAAS,CAAC,CAAC;EACxDnI,IAAI,EAAE3F,SAAS,CAACkO,KAAK,CAAC;IACpBnD,OAAO,EAAE/K,SAAS,CAACmO,MAAM;IACzB,oBAAoB,EAAEnO,SAAS,CAACmO,MAAM;IACtClD,gBAAgB,EAAEjL,SAAS,CAACmO,MAAM;IAClCnJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;IACtBtE,aAAa,EAAE7J,SAAS,CAACkO,KAAK,CAAC;MAC7BlJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;MACtBxF,KAAK,EAAE3I,SAAS,CAACyO,MAAM;MACvB,YAAY,EAAEzO,SAAS,CAACmO;IAC1B,CAAC,CAAC;IACF/D,KAAK,EAAEpK,SAAS,CAACkO,KAAK,CAAC;MACrB5D,KAAK,EAAEtK,SAAS,CAACkO,KAAK,CAAC;QACrBlJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;QACtBxJ,KAAK,EAAE3E,SAAS,CAACmO,MAAM;QACvB,YAAY,EAAEnO,SAAS,CAACmO;MAC1B,CAAC,CAAC;MACF3D,OAAO,EAAExK,SAAS,CAACkO,KAAK,CAAC;QACvBlJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;QACtBxJ,KAAK,EAAE3E,SAAS,CAACmO,MAAM;QACvB,YAAY,EAAEnO,SAAS,CAACmO;MAC1B,CAAC,CAAC;MACF1D,KAAK,EAAEzK,SAAS,CAACkO,KAAK,CAAC;QACrBlJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;QACtBxJ,KAAK,EAAE3E,SAAS,CAACmO,MAAM;QACvB,YAAY,EAAEnO,SAAS,CAACmO;MAC1B,CAAC;IACH,CAAC;EACH,CAAC,CAAC;EACF,qBAAqB,EAAEnO,SAAS,CAACmO,MAAM;EACvC,wBAAwB,EAAEnO,SAAS,CAACmO,MAAM;EAC1C,2BAA2B,EAAEnO,SAAS,CAACmO,MAAM;EAC7CzI,QAAQ,EAAE1F,SAAS,CAACsO,OAAO,CACzBtO,SAAS,CAACkO,KAAK,CAAC;IACdtJ,KAAK,EAAE5E,SAAS,CAACmO,MAAM;IACvBlJ,IAAI,EAAEjF,SAAS,CAACmO,MAAM;IACtBrJ,IAAI,EAAE9E,SAAS,CAACuO,KAAK,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnDlJ,KAAK,EAAErF,SAAS,CAACmO,MAAM;IACvB,YAAY,EAAEnO,SAAS,CAACmO,MAAM;IAC9B9C,OAAO,EAAErL,SAAS,CAACkO,KAAK,CAAC;MACvBlJ,IAAI,EAAEhF,SAAS,CAACmO,MAAM;MACtBxC,QAAQ,EAAE3L,SAAS,CAACqO,IAAI;MACxB1F,KAAK,EAAE3I,SAAS,CAACwO,IAAI;MACrB1K,MAAM,EAAE9D,SAAS,CAACuO,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;MAC/D9C,MAAM,EAAEzL,SAAS,CAACsO,OAAO,CACvBtO,SAAS,CAACkO,KAAK,CAAC;QACdvF,KAAK,EAAE3I,SAAS,CAACmO,MAAM;QACvBlJ,IAAI,EAAEjF,SAAS,CAACmO,MAAM;QACtB/I,QAAQ,EAAEpF,SAAS,CAACwO;MACtB,CAAC,CACH;IACF,CAAC;EACH,CAAC,CACH,CAAC;EACDtK,UAAU,EAAElE,SAAS,CAACqO,IAAI;EAC1BlK,WAAW,EAAEnE,SAAS,CAACqO;AACzB,CAAC;AAknBH,eAAe/M,UAAU","ignoreList":[]}