@coorpacademy/components 11.36.2 → 11.36.4-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/es/atom/button-link/index.d.ts.map +1 -1
  2. package/es/atom/button-link/index.js +1 -0
  3. package/es/atom/button-link/index.js.map +1 -1
  4. package/es/molecule/button-menu-action/index.d.ts +1 -0
  5. package/es/molecule/button-menu-action/index.d.ts.map +1 -1
  6. package/es/molecule/button-menu-action/index.js +11 -2
  7. package/es/molecule/button-menu-action/index.js.map +1 -1
  8. package/es/molecule/button-menu-action/types.d.ts +2 -0
  9. package/es/molecule/button-menu-action/types.d.ts.map +1 -1
  10. package/es/molecule/button-menu-action/types.js +2 -1
  11. package/es/molecule/button-menu-action/types.js.map +1 -1
  12. package/es/molecule/cm-popin/types.d.ts +2 -0
  13. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  14. package/es/molecule/learning-profile-radar-chart/index.d.ts.map +1 -1
  15. package/es/molecule/learning-profile-radar-chart/index.js +1 -2
  16. package/es/molecule/learning-profile-radar-chart/index.js.map +1 -1
  17. package/es/organism/content-skill-modal/index.d.ts +2 -0
  18. package/es/organism/content-skill-modal/index.d.ts.map +1 -1
  19. package/es/organism/content-skill-modal/types.d.ts +2 -0
  20. package/es/organism/content-skill-modal/types.d.ts.map +1 -1
  21. package/es/organism/list-items/index.d.ts +2 -0
  22. package/es/organism/mooc-header/index.d.ts.map +1 -1
  23. package/es/organism/mooc-header/index.js +9 -6
  24. package/es/organism/mooc-header/index.js.map +1 -1
  25. package/es/organism/mooc-header/style.css +0 -4
  26. package/es/template/app-player/loading/index.d.ts +2 -0
  27. package/es/template/app-player/player/index.d.ts +4 -0
  28. package/es/template/app-player/player/slides/index.d.ts +2 -0
  29. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  30. package/es/template/app-player/popin-correction/index.d.ts +2 -0
  31. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  32. package/es/template/app-player/popin-end/index.d.ts +2 -0
  33. package/es/template/app-review/index.d.ts +2 -0
  34. package/es/template/app-review/index.d.ts.map +1 -1
  35. package/es/template/app-review/player/prop-types.d.ts +2 -0
  36. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  37. package/es/template/app-review/prop-types.d.ts +2 -0
  38. package/es/template/app-review/prop-types.d.ts.map +1 -1
  39. package/es/template/back-office/brand-update/index.d.ts +6 -0
  40. package/es/template/common/dashboard/index.d.ts +4 -0
  41. package/es/template/common/search-page/index.d.ts +2 -0
  42. package/es/template/external-course/index.d.ts +2 -0
  43. package/es/util/check-is-mobile.d.ts +1 -1
  44. package/es/util/check-is-mobile.d.ts.map +1 -1
  45. package/es/util/check-is-mobile.js +1 -2
  46. package/es/util/check-is-mobile.js.map +1 -1
  47. package/lib/atom/button-link/index.d.ts.map +1 -1
  48. package/lib/atom/button-link/index.js +1 -0
  49. package/lib/atom/button-link/index.js.map +1 -1
  50. package/lib/molecule/button-menu-action/index.d.ts +1 -0
  51. package/lib/molecule/button-menu-action/index.d.ts.map +1 -1
  52. package/lib/molecule/button-menu-action/index.js +11 -2
  53. package/lib/molecule/button-menu-action/index.js.map +1 -1
  54. package/lib/molecule/button-menu-action/types.d.ts +2 -0
  55. package/lib/molecule/button-menu-action/types.d.ts.map +1 -1
  56. package/lib/molecule/button-menu-action/types.js +2 -1
  57. package/lib/molecule/button-menu-action/types.js.map +1 -1
  58. package/lib/molecule/cm-popin/types.d.ts +2 -0
  59. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  60. package/lib/molecule/learning-profile-radar-chart/index.d.ts.map +1 -1
  61. package/lib/molecule/learning-profile-radar-chart/index.js +1 -2
  62. package/lib/molecule/learning-profile-radar-chart/index.js.map +1 -1
  63. package/lib/organism/content-skill-modal/index.d.ts +2 -0
  64. package/lib/organism/content-skill-modal/index.d.ts.map +1 -1
  65. package/lib/organism/content-skill-modal/types.d.ts +2 -0
  66. package/lib/organism/content-skill-modal/types.d.ts.map +1 -1
  67. package/lib/organism/list-items/index.d.ts +2 -0
  68. package/lib/organism/mooc-header/index.d.ts.map +1 -1
  69. package/lib/organism/mooc-header/index.js +9 -6
  70. package/lib/organism/mooc-header/index.js.map +1 -1
  71. package/lib/organism/mooc-header/style.css +0 -4
  72. package/lib/template/app-player/loading/index.d.ts +2 -0
  73. package/lib/template/app-player/player/index.d.ts +4 -0
  74. package/lib/template/app-player/player/slides/index.d.ts +2 -0
  75. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  76. package/lib/template/app-player/popin-correction/index.d.ts +2 -0
  77. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  78. package/lib/template/app-player/popin-end/index.d.ts +2 -0
  79. package/lib/template/app-review/index.d.ts +2 -0
  80. package/lib/template/app-review/index.d.ts.map +1 -1
  81. package/lib/template/app-review/player/prop-types.d.ts +2 -0
  82. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  83. package/lib/template/app-review/prop-types.d.ts +2 -0
  84. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  85. package/lib/template/back-office/brand-update/index.d.ts +6 -0
  86. package/lib/template/common/dashboard/index.d.ts +4 -0
  87. package/lib/template/common/search-page/index.d.ts +2 -0
  88. package/lib/template/external-course/index.d.ts +2 -0
  89. package/lib/util/check-is-mobile.d.ts +1 -1
  90. package/lib/util/check-is-mobile.d.ts.map +1 -1
  91. package/lib/util/check-is-mobile.js +1 -2
  92. package/lib/util/check-is-mobile.js.map +1 -1
  93. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/button-link/index.tsx"],"names":[],"mappings":";AAOA,OAAkB,EAAC,eAAe,EAAW,MAAM,SAAS,CAAC;AAoD7D,QAAA,MAAM,UAAU;YAAW,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmIzC,CAAC;AAIF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/button-link/index.tsx"],"names":[],"mappings":";AAOA,OAAkB,EAAC,eAAe,EAAW,MAAM,SAAS,CAAC;AAoD7D,QAAA,MAAM,UAAU;YAAW,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoIzC,CAAC;AAIF,eAAe,UAAU,CAAC"}
@@ -107,6 +107,7 @@ const ButtonLink = props => {
107
107
  style: customStyle,
108
108
  "data-name": dataName,
109
109
  "data-testid": dataTestId,
110
+ onClick: handleOnClick,
110
111
  "aria-label": ariaLabel || label,
111
112
  hoverColor: hoverColor,
112
113
  hoverBackgroundColor: hoverBackgroundColor,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useCallback","useState","useMemo","classnames","Link","FaIcon","DEFAULT_ICON_COLOR","ICONS","ToolTip","propTypes","style","getButtonContent","icon","content","hovered","hoverBackgroundColor","hoverColor","type","faIcon","position","Icon","createElement","className","buttonContent","label","iconComponent","iconName","name","iconColor","color","backgroundColor","size","faSize","wrapperSize","customStyle","theme","ButtonLink","props","usage","disabled","dataName","dataTestId","ariaLabel","tooltipText","tooltipPlacement","link","onClick","_noop","onKeyDown","useTitle","styleButton","button","iconButton","primary","secondary","tertiary","text","dangerous","setHovered","handleOnClick","event","handleOnKeyDown","handleMouseOver","handleMouseLeave","TooltipContent","tooltipContentWrapper","renderToolTip","closeToolTipInformationTextAriaLabel","fontSize","anchorId","toolTipIsVisible","placement","_customStyle","_extends","title","onMouseEnter","onMouseLeave","onMouseOver","tabIndex","process","env","NODE_ENV"],"sources":["../../../src/atom/button-link/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useMemo} from 'react';\nimport {noop} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Link from '../link';\nimport FaIcon, {DEFAULT_ICON_COLOR, IconProps} from '../icon';\nimport {ICONS} from '../../util/button-icons';\nimport ToolTip from '../tooltip';\nimport propTypes, {ButtonLinkProps, IconType} from './types';\nimport style from './style.css';\n\nconst getButtonContent = (\n icon?: IconType,\n content?: string | React.ReactNode,\n hovered?: boolean,\n hoverBackgroundColor?: string,\n hoverColor?: string\n) => {\n const {type, faIcon, position} = icon || {type: '', position: ''};\n const Icon = type && ICONS[type];\n\n if (!Icon && !faIcon) {\n return (\n <div className={style.buttonContent}>\n <span className={style.label}>{content}</span>\n </div>\n );\n }\n\n const iconComponent = faIcon ? (\n <FaIcon\n {...({\n iconName: faIcon.name,\n iconColor: hovered && hoverColor ? hoverColor : faIcon.color ?? DEFAULT_ICON_COLOR,\n // eslint-disable-next-line no-nested-ternary\n backgroundColor: !faIcon?.backgroundColor\n ? null\n : hovered && hoverBackgroundColor\n ? hoverBackgroundColor\n : faIcon.backgroundColor,\n size: {\n faSize: faIcon.size,\n wrapperSize: faIcon.size\n },\n customStyle: faIcon.customStyle\n } as IconProps)}\n />\n ) : (\n <Icon className={style.icon} theme=\"coorpmanager\" />\n );\n\n return (\n <div className={style.buttonContent}>\n {position === 'left' ? iconComponent : null}\n {content ? <span className={style.label}>{content}</span> : null}\n {position === 'right' ? iconComponent : null}\n </div>\n );\n};\n\nconst ButtonLink = (props: ButtonLinkProps) => {\n const {\n type,\n usage = 'button',\n label,\n content,\n hoverBackgroundColor,\n hoverColor,\n disabled = false,\n icon,\n 'data-name': dataName,\n 'data-testid': dataTestId = 'button-link',\n 'aria-label': ariaLabel,\n tooltipText,\n tooltipPlacement = 'left',\n link,\n onClick = noop,\n onKeyDown = noop,\n className,\n customStyle,\n useTitle = true\n } = props;\n const styleButton = classnames(\n link && style.link,\n className,\n style.button,\n !label && style.iconButton,\n type === 'primary' && style.primary,\n type === 'secondary' && style.secondary,\n type === 'tertiary' && style.tertiary,\n type === 'text' && style.text,\n type === 'dangerous' && style.dangerous,\n disabled && style.disabled\n );\n\n const [hovered, setHovered] = useState(false);\n\n const handleOnClick = useCallback(event => onClick(event), [onClick]);\n\n const handleOnKeyDown = useCallback(event => onKeyDown(event), [onKeyDown]);\n\n const handleMouseOver = useCallback(() => {\n setHovered(true);\n }, [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const TooltipContent = useCallback(\n () => <span className={style.tooltipContentWrapper}>{tooltipText || ariaLabel}</span>,\n [tooltipText, ariaLabel]\n );\n\n const renderToolTip = () => {\n const closeToolTipInformationTextAriaLabel = tooltipText || ariaLabel;\n if (!closeToolTipInformationTextAriaLabel) return null;\n return (\n <ToolTip\n fontSize={12}\n anchorId=\"button-icon\"\n toolTipIsVisible={hovered}\n placement={tooltipPlacement}\n TooltipContent={TooltipContent}\n closeToolTipInformationTextAriaLabel={closeToolTipInformationTextAriaLabel}\n />\n );\n };\n\n const _customStyle = useMemo(() => {\n return {\n ...customStyle,\n ...((hoverBackgroundColor || hoverColor) && hovered\n ? {\n backgroundColor: hoverBackgroundColor,\n color: hoverColor\n }\n : null)\n };\n }, [hoverBackgroundColor, hoverColor, hovered, customStyle]);\n\n if (link) {\n return (\n <Link\n {...link}\n {...(useTitle && {\n title: ariaLabel || label\n })}\n className={styleButton}\n style={customStyle}\n data-name={dataName}\n data-testid={dataTestId}\n aria-label={ariaLabel || label}\n hoverColor={hoverColor}\n hoverBackgroundColor={hoverBackgroundColor}\n onMouseEnter={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n >\n {getButtonContent(icon, content ?? label, hovered, hoverBackgroundColor, hoverColor)}\n {renderToolTip()}\n </Link>\n );\n }\n\n return (\n <button\n {...(useTitle && {\n title: ariaLabel || label\n })}\n {...(ariaLabel && !label\n ? {\n 'data-for': 'button-icon',\n 'data-tip': hovered\n }\n : {})}\n // eslint-disable-next-line react/button-has-type\n type={usage}\n aria-label={ariaLabel || label}\n data-name={dataName}\n data-testid={dataTestId}\n style={_customStyle}\n className={styleButton}\n onClick={handleOnClick}\n onKeyDown={handleOnKeyDown}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n tabIndex={0}\n disabled={disabled}\n >\n {getButtonContent(icon, content ?? label, hovered, hoverBackgroundColor, hoverColor)}\n {renderToolTip()}\n </button>\n );\n};\n\nButtonLink.propTypes = propTypes;\n\nexport default ButtonLink;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","useState","useMemo","classnames","Link","FaIcon","DEFAULT_ICON_COLOR","ICONS","ToolTip","propTypes","style","getButtonContent","icon","content","hovered","hoverBackgroundColor","hoverColor","type","faIcon","position","Icon","createElement","className","buttonContent","label","iconComponent","iconName","name","iconColor","color","backgroundColor","size","faSize","wrapperSize","customStyle","theme","ButtonLink","props","usage","disabled","dataName","dataTestId","ariaLabel","tooltipText","tooltipPlacement","link","onClick","_noop","onKeyDown","useTitle","styleButton","button","iconButton","primary","secondary","tertiary","text","dangerous","setHovered","handleOnClick","event","handleOnKeyDown","handleMouseOver","handleMouseLeave","TooltipContent","tooltipContentWrapper","renderToolTip","closeToolTipInformationTextAriaLabel","fontSize","anchorId","toolTipIsVisible","placement","_customStyle","_extends","title","onMouseEnter","onMouseLeave","onMouseOver","tabIndex","process","env","NODE_ENV"],"sources":["../../../src/atom/button-link/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useMemo} from 'react';\nimport {noop} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Link from '../link';\nimport FaIcon, {DEFAULT_ICON_COLOR, IconProps} from '../icon';\nimport {ICONS} from '../../util/button-icons';\nimport ToolTip from '../tooltip';\nimport propTypes, {ButtonLinkProps, IconType} from './types';\nimport style from './style.css';\n\nconst getButtonContent = (\n icon?: IconType,\n content?: string | React.ReactNode,\n hovered?: boolean,\n hoverBackgroundColor?: string,\n hoverColor?: string\n) => {\n const {type, faIcon, position} = icon || {type: '', position: ''};\n const Icon = type && ICONS[type];\n\n if (!Icon && !faIcon) {\n return (\n <div className={style.buttonContent}>\n <span className={style.label}>{content}</span>\n </div>\n );\n }\n\n const iconComponent = faIcon ? (\n <FaIcon\n {...({\n iconName: faIcon.name,\n iconColor: hovered && hoverColor ? hoverColor : faIcon.color ?? DEFAULT_ICON_COLOR,\n // eslint-disable-next-line no-nested-ternary\n backgroundColor: !faIcon?.backgroundColor\n ? null\n : hovered && hoverBackgroundColor\n ? hoverBackgroundColor\n : faIcon.backgroundColor,\n size: {\n faSize: faIcon.size,\n wrapperSize: faIcon.size\n },\n customStyle: faIcon.customStyle\n } as IconProps)}\n />\n ) : (\n <Icon className={style.icon} theme=\"coorpmanager\" />\n );\n\n return (\n <div className={style.buttonContent}>\n {position === 'left' ? iconComponent : null}\n {content ? <span className={style.label}>{content}</span> : null}\n {position === 'right' ? iconComponent : null}\n </div>\n );\n};\n\nconst ButtonLink = (props: ButtonLinkProps) => {\n const {\n type,\n usage = 'button',\n label,\n content,\n hoverBackgroundColor,\n hoverColor,\n disabled = false,\n icon,\n 'data-name': dataName,\n 'data-testid': dataTestId = 'button-link',\n 'aria-label': ariaLabel,\n tooltipText,\n tooltipPlacement = 'left',\n link,\n onClick = noop,\n onKeyDown = noop,\n className,\n customStyle,\n useTitle = true\n } = props;\n const styleButton = classnames(\n link && style.link,\n className,\n style.button,\n !label && style.iconButton,\n type === 'primary' && style.primary,\n type === 'secondary' && style.secondary,\n type === 'tertiary' && style.tertiary,\n type === 'text' && style.text,\n type === 'dangerous' && style.dangerous,\n disabled && style.disabled\n );\n\n const [hovered, setHovered] = useState(false);\n\n const handleOnClick = useCallback(event => onClick(event), [onClick]);\n\n const handleOnKeyDown = useCallback(event => onKeyDown(event), [onKeyDown]);\n\n const handleMouseOver = useCallback(() => {\n setHovered(true);\n }, [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const TooltipContent = useCallback(\n () => <span className={style.tooltipContentWrapper}>{tooltipText || ariaLabel}</span>,\n [tooltipText, ariaLabel]\n );\n\n const renderToolTip = () => {\n const closeToolTipInformationTextAriaLabel = tooltipText || ariaLabel;\n if (!closeToolTipInformationTextAriaLabel) return null;\n return (\n <ToolTip\n fontSize={12}\n anchorId=\"button-icon\"\n toolTipIsVisible={hovered}\n placement={tooltipPlacement}\n TooltipContent={TooltipContent}\n closeToolTipInformationTextAriaLabel={closeToolTipInformationTextAriaLabel}\n />\n );\n };\n\n const _customStyle = useMemo(() => {\n return {\n ...customStyle,\n ...((hoverBackgroundColor || hoverColor) && hovered\n ? {\n backgroundColor: hoverBackgroundColor,\n color: hoverColor\n }\n : null)\n };\n }, [hoverBackgroundColor, hoverColor, hovered, customStyle]);\n\n if (link) {\n return (\n <Link\n {...link}\n {...(useTitle && {\n title: ariaLabel || label\n })}\n className={styleButton}\n style={customStyle}\n data-name={dataName}\n data-testid={dataTestId}\n onClick={handleOnClick}\n aria-label={ariaLabel || label}\n hoverColor={hoverColor}\n hoverBackgroundColor={hoverBackgroundColor}\n onMouseEnter={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n >\n {getButtonContent(icon, content ?? label, hovered, hoverBackgroundColor, hoverColor)}\n {renderToolTip()}\n </Link>\n );\n }\n\n return (\n <button\n {...(useTitle && {\n title: ariaLabel || label\n })}\n {...(ariaLabel && !label\n ? {\n 'data-for': 'button-icon',\n 'data-tip': hovered\n }\n : {})}\n // eslint-disable-next-line react/button-has-type\n type={usage}\n aria-label={ariaLabel || label}\n data-name={dataName}\n data-testid={dataTestId}\n style={_customStyle}\n className={styleButton}\n onClick={handleOnClick}\n onKeyDown={handleOnKeyDown}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n tabIndex={0}\n disabled={disabled}\n >\n {getButtonContent(icon, content ?? label, hovered, hoverBackgroundColor, hoverColor)}\n {renderToolTip()}\n </button>\n );\n};\n\nButtonLink.propTypes = propTypes;\n\nexport default ButtonLink;\n"],"mappings":"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","ignoreList":[]}
@@ -77,6 +77,7 @@ declare const ButtonMenuAction: {
77
77
  }>>;
78
78
  type: import("prop-types").Requireable<string>;
79
79
  primaryColor: import("prop-types").Requireable<string>;
80
+ closeOnClick: import("prop-types").Requireable<boolean>;
80
81
  };
81
82
  };
82
83
  export default ButtonMenuAction;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/button-menu-action/index.tsx"],"names":[],"mappings":";AAMA,OAAkB,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAGzD,QAAA,MAAM,gBAAgB;YAAW,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgErD,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/button-menu-action/index.tsx"],"names":[],"mappings":";AAOA,OAAkB,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAGzD,QAAA,MAAM,gBAAgB;YAAW,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqFrD,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
@@ -2,6 +2,7 @@ import _noop from "lodash/fp/noop";
2
2
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
3
  import React, { useCallback, useEffect, useState, useRef } from 'react';
4
4
  import classnames from 'classnames';
5
+ import map from 'lodash/fp/map';
5
6
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
6
7
  import ButtonLink from '../../atom/button-link';
7
8
  import ButtonMenu from '../../atom/button-menu';
@@ -14,7 +15,8 @@ const ButtonMenuAction = props => {
14
15
  menuWrapper,
15
16
  type = 'button',
16
17
  primaryColor,
17
- containerCustom
18
+ containerCustom,
19
+ closeOnClick = false
18
20
  } = props;
19
21
  const {
20
22
  onClick = _noop
@@ -36,12 +38,19 @@ const ButtonMenuAction = props => {
36
38
  document.removeEventListener('mousedown', handleMouseDown);
37
39
  };
38
40
  }, [visible, containerRef]);
41
+ const menuWithClose = closeOnClick ? {
42
+ ...menu,
43
+ buttons: map(btn => ({
44
+ ...btn,
45
+ onClick: () => setVisible(false)
46
+ }), menu.buttons)
47
+ } : menu;
39
48
  const _menu = /*#__PURE__*/React.createElement("div", {
40
49
  className: classnames(style.menuWrapper, visible && style.visible),
41
50
  "data-name": "menu-wrapper",
42
51
  "aria-label": menuWrapper?.ariaLabel,
43
52
  style: menuWrapper?.customStyle
44
- }, /*#__PURE__*/React.createElement(ButtonMenu, menu));
53
+ }, /*#__PURE__*/React.createElement(ButtonMenu, menuWithClose));
45
54
  return /*#__PURE__*/React.createElement("div", {
46
55
  className: style.container,
47
56
  "data-name": "button-menu-action-wrapper",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useCallback","useEffect","useState","useRef","classnames","FontAwesomeIcon","ButtonLink","ButtonMenu","propTypes","style","ButtonMenuAction","props","button","menu","menuWrapper","type","primaryColor","containerCustom","onClick","_noop","visible","setVisible","containerRef","toggleVisibility","prevState","handleMouseDown","event","current","contains","target","document","addEventListener","removeEventListener","_menu","createElement","className","ariaLabel","customStyle","container","ref","currentOption","color","undefined","label","icon","caret","_extends","process","env","NODE_ENV"],"sources":["../../../src/molecule/button-menu-action/index.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useState, useRef} from 'react';\nimport classnames from 'classnames';\nimport {noop} from 'lodash/fp';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {ButtonMenuActionProps} from './types';\nimport style from './style.css';\n\nconst ButtonMenuAction = (props: ButtonMenuActionProps) => {\n const {button, menu, menuWrapper, type = 'button', primaryColor, containerCustom} = props;\n const {onClick = noop} = button;\n const [visible, setVisible] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const toggleVisibility = useCallback(() => {\n onClick();\n setVisible(prevState => !prevState);\n }, [onClick]);\n\n useEffect(() => {\n const handleMouseDown = (event: MouseEvent) => {\n if (visible && containerRef.current && !containerRef.current.contains(event.target as Node)) {\n setVisible(false);\n }\n };\n\n document.addEventListener('mousedown', handleMouseDown);\n return () => {\n document.removeEventListener('mousedown', handleMouseDown);\n };\n }, [visible, containerRef]);\n\n const _menu = (\n <div\n className={classnames(style.menuWrapper, visible && style.visible)}\n data-name=\"menu-wrapper\"\n aria-label={menuWrapper?.ariaLabel}\n style={menuWrapper?.customStyle}\n >\n <ButtonMenu {...menu} />\n </div>\n );\n\n return (\n <div\n className={style.container}\n data-name=\"button-menu-action-wrapper\"\n style={containerCustom}\n ref={containerRef}\n >\n {type === 'link' ? (\n <div\n className={style.currentOption}\n data-name={button['data-name']}\n onClick={toggleVisibility}\n aria-expanded={visible}\n aria-haspopup=\"true\"\n >\n <span style={{color: visible ? primaryColor : undefined}}>{button.label}</span>\n <FontAwesomeIcon\n icon={visible ? 'chevron-up' : 'chevron-down'}\n className={style.caret}\n style={{color: visible ? primaryColor : undefined}}\n aria-label={button['aria-label']}\n />\n </div>\n ) : (\n <ButtonLink {...button} onClick={toggleVisibility} />\n )}\n {_menu}\n </div>\n );\n};\n\nButtonMenuAction.propTypes = propTypes;\n\nexport default ButtonMenuAction;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","useEffect","useState","useRef","classnames","map","FontAwesomeIcon","ButtonLink","ButtonMenu","propTypes","style","ButtonMenuAction","props","button","menu","menuWrapper","type","primaryColor","containerCustom","closeOnClick","onClick","_noop","visible","setVisible","containerRef","toggleVisibility","prevState","handleMouseDown","event","current","contains","target","document","addEventListener","removeEventListener","menuWithClose","buttons","btn","_menu","createElement","className","ariaLabel","customStyle","container","ref","currentOption","color","undefined","label","icon","caret","_extends","process","env","NODE_ENV"],"sources":["../../../src/molecule/button-menu-action/index.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useState, useRef} from 'react';\nimport classnames from 'classnames';\nimport {noop} from 'lodash/fp';\nimport map from 'lodash/fp/map';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {ButtonMenuActionProps} from './types';\nimport style from './style.css';\n\nconst ButtonMenuAction = (props: ButtonMenuActionProps) => {\n const {\n button,\n menu,\n menuWrapper,\n type = 'button',\n primaryColor,\n containerCustom,\n closeOnClick = false\n } = props;\n const {onClick = noop} = button;\n const [visible, setVisible] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const toggleVisibility = useCallback(() => {\n onClick();\n setVisible(prevState => !prevState);\n }, [onClick]);\n\n useEffect(() => {\n const handleMouseDown = (event: MouseEvent) => {\n if (visible && containerRef.current && !containerRef.current.contains(event.target as Node)) {\n setVisible(false);\n }\n };\n\n document.addEventListener('mousedown', handleMouseDown);\n return () => {\n document.removeEventListener('mousedown', handleMouseDown);\n };\n }, [visible, containerRef]);\n\n const menuWithClose = closeOnClick\n ? {\n ...menu,\n buttons: map(\n btn => ({\n ...btn,\n onClick: () => setVisible(false)\n }),\n menu.buttons\n )\n }\n : menu;\n\n const _menu = (\n <div\n className={classnames(style.menuWrapper, visible && style.visible)}\n data-name=\"menu-wrapper\"\n aria-label={menuWrapper?.ariaLabel}\n style={menuWrapper?.customStyle}\n >\n <ButtonMenu {...menuWithClose} />\n </div>\n );\n\n return (\n <div\n className={style.container}\n data-name=\"button-menu-action-wrapper\"\n style={containerCustom}\n ref={containerRef}\n >\n {type === 'link' ? (\n <div\n className={style.currentOption}\n data-name={button['data-name']}\n onClick={toggleVisibility}\n aria-expanded={visible}\n aria-haspopup=\"true\"\n >\n <span style={{color: visible ? primaryColor : undefined}}>{button.label}</span>\n <FontAwesomeIcon\n icon={visible ? 'chevron-up' : 'chevron-down'}\n className={style.caret}\n style={{color: visible ? primaryColor : undefined}}\n aria-label={button['aria-label']}\n />\n </div>\n ) : (\n <ButtonLink {...button} onClick={toggleVisibility} />\n )}\n {_menu}\n </div>\n );\n};\n\nButtonMenuAction.propTypes = propTypes;\n\nexport default ButtonMenuAction;\n"],"mappings":"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","ignoreList":[]}
@@ -76,6 +76,7 @@ declare const ButtonMenuActionPropTypes: {
76
76
  }>>;
77
77
  type: PropTypes.Requireable<string>;
78
78
  primaryColor: PropTypes.Requireable<string>;
79
+ closeOnClick: PropTypes.Requireable<boolean>;
79
80
  };
80
81
  export default ButtonMenuActionPropTypes;
81
82
  export declare type ButtonMenuActionProps = {
@@ -88,6 +89,7 @@ export declare type ButtonMenuActionProps = {
88
89
  };
89
90
  containerCustom?: Record<string, unknown>;
90
91
  primaryColor?: string;
92
+ closeOnClick?: boolean;
91
93
  };
92
94
  export declare type ButtonMenuActionPropsFixture = {
93
95
  props: ButtonMenuActionProps;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/button-menu-action/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAA4B,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAClF,OAA4B,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAElF,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW9B,CAAC;AACF,eAAe,yBAAyB,CAAC;AAEzC,oBAAY,qBAAqB,GAAG;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACvC,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,oBAAY,4BAA4B,GAAG;IAAC,KAAK,EAAE,qBAAqB,CAAA;CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/button-menu-action/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAA4B,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAClF,OAA4B,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAElF,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAY9B,CAAC;AACF,eAAe,yBAAyB,CAAC;AAEzC,oBAAY,qBAAqB,GAAG;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACvC,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,oBAAY,4BAA4B,GAAG;IAAC,KAAK,EAAE,qBAAqB,CAAA;CAAC,CAAC"}
@@ -9,7 +9,8 @@ const ButtonMenuActionPropTypes = {
9
9
  customStyle: PropTypes.objectOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]))
10
10
  }),
11
11
  type: PropTypes.oneOf(['button', 'link']),
12
- primaryColor: PropTypes.string
12
+ primaryColor: PropTypes.string,
13
+ closeOnClick: PropTypes.bool
13
14
  };
14
15
  export default ButtonMenuActionPropTypes;
15
16
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["PropTypes","ButtonLinkPropTypes","ButtonMenuPropTypes","ButtonMenuActionPropTypes","button","shape","isRequired","menu","menuWrapper","ariaLabel","string","customStyle","objectOf","oneOfType","number","object","type","oneOf","primaryColor"],"sources":["../../../src/molecule/button-menu-action/types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\nimport ButtonLinkPropTypes, {ButtonLinkProps} from '../../atom/button-link/types';\nimport ButtonMenuPropTypes, {ButtonMenuProps} from '../../atom/button-menu/types';\n\nconst ButtonMenuActionPropTypes = {\n button: PropTypes.shape(ButtonLinkPropTypes).isRequired,\n menu: PropTypes.shape(ButtonMenuPropTypes).isRequired,\n menuWrapper: PropTypes.shape({\n ariaLabel: PropTypes.string,\n customStyle: PropTypes.objectOf(\n PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object])\n )\n }),\n type: PropTypes.oneOf(['button', 'link']),\n primaryColor: PropTypes.string\n};\nexport default ButtonMenuActionPropTypes;\n\nexport type ButtonMenuActionProps = {\n button: ButtonLinkProps;\n menu: ButtonMenuProps;\n type?: 'button' | 'link';\n menuWrapper?: {\n ariaLabel?: string;\n customStyle?: Record<string, unknown>;\n };\n containerCustom?: Record<string, unknown>;\n primaryColor?: string;\n};\n\nexport type ButtonMenuActionPropsFixture = {props: ButtonMenuActionProps};\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,mBAAmB,MAAyB,8BAA8B;AACjF,OAAOC,mBAAmB,MAAyB,8BAA8B;AAEjF,MAAMC,yBAAyB,GAAG;EAChCC,MAAM,EAAEJ,SAAS,CAACK,KAAK,CAACJ,mBAAmB,CAAC,CAACK,UAAU;EACvDC,IAAI,EAAEP,SAAS,CAACK,KAAK,CAACH,mBAAmB,CAAC,CAACI,UAAU;EACrDE,WAAW,EAAER,SAAS,CAACK,KAAK,CAAC;IAC3BI,SAAS,EAAET,SAAS,CAACU,MAAM;IAC3BC,WAAW,EAAEX,SAAS,CAACY,QAAQ,CAC7BZ,SAAS,CAACa,SAAS,CAAC,CAACb,SAAS,CAACU,MAAM,EAAEV,SAAS,CAACc,MAAM,EAAEd,SAAS,CAACe,MAAM,CAAC,CAC5E;EACF,CAAC,CAAC;EACFC,IAAI,EAAEhB,SAAS,CAACiB,KAAK,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;EACzCC,YAAY,EAAElB,SAAS,CAACU;AAC1B,CAAC;AACD,eAAeP,yBAAyB","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":["PropTypes","ButtonLinkPropTypes","ButtonMenuPropTypes","ButtonMenuActionPropTypes","button","shape","isRequired","menu","menuWrapper","ariaLabel","string","customStyle","objectOf","oneOfType","number","object","type","oneOf","primaryColor","closeOnClick","bool"],"sources":["../../../src/molecule/button-menu-action/types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\nimport ButtonLinkPropTypes, {ButtonLinkProps} from '../../atom/button-link/types';\nimport ButtonMenuPropTypes, {ButtonMenuProps} from '../../atom/button-menu/types';\n\nconst ButtonMenuActionPropTypes = {\n button: PropTypes.shape(ButtonLinkPropTypes).isRequired,\n menu: PropTypes.shape(ButtonMenuPropTypes).isRequired,\n menuWrapper: PropTypes.shape({\n ariaLabel: PropTypes.string,\n customStyle: PropTypes.objectOf(\n PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object])\n )\n }),\n type: PropTypes.oneOf(['button', 'link']),\n primaryColor: PropTypes.string,\n closeOnClick: PropTypes.bool\n};\nexport default ButtonMenuActionPropTypes;\n\nexport type ButtonMenuActionProps = {\n button: ButtonLinkProps;\n menu: ButtonMenuProps;\n type?: 'button' | 'link';\n menuWrapper?: {\n ariaLabel?: string;\n customStyle?: Record<string, unknown>;\n };\n containerCustom?: Record<string, unknown>;\n primaryColor?: string;\n closeOnClick?: boolean;\n};\n\nexport type ButtonMenuActionPropsFixture = {props: ButtonMenuActionProps};\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,mBAAmB,MAAyB,8BAA8B;AACjF,OAAOC,mBAAmB,MAAyB,8BAA8B;AAEjF,MAAMC,yBAAyB,GAAG;EAChCC,MAAM,EAAEJ,SAAS,CAACK,KAAK,CAACJ,mBAAmB,CAAC,CAACK,UAAU;EACvDC,IAAI,EAAEP,SAAS,CAACK,KAAK,CAACH,mBAAmB,CAAC,CAACI,UAAU;EACrDE,WAAW,EAAER,SAAS,CAACK,KAAK,CAAC;IAC3BI,SAAS,EAAET,SAAS,CAACU,MAAM;IAC3BC,WAAW,EAAEX,SAAS,CAACY,QAAQ,CAC7BZ,SAAS,CAACa,SAAS,CAAC,CAACb,SAAS,CAACU,MAAM,EAAEV,SAAS,CAACc,MAAM,EAAEd,SAAS,CAACe,MAAM,CAAC,CAC5E;EACF,CAAC,CAAC;EACFC,IAAI,EAAEhB,SAAS,CAACiB,KAAK,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;EACzCC,YAAY,EAAElB,SAAS,CAACU,MAAM;EAC9BS,YAAY,EAAEnB,SAAS,CAACoB;AAC1B,CAAC;AACD,eAAejB,yBAAyB","ignoreList":[]}
@@ -423,6 +423,7 @@ declare const propTypes: {
423
423
  }>>;
424
424
  type: PropTypes.Requireable<string>;
425
425
  primaryColor: PropTypes.Requireable<string>;
426
+ closeOnClick: PropTypes.Requireable<boolean>;
426
427
  }> | null | undefined>>;
427
428
  }>>;
428
429
  }> | PropTypes.InferProps<{
@@ -760,6 +761,7 @@ declare const propTypes: {
760
761
  }>>;
761
762
  type: PropTypes.Requireable<string>;
762
763
  primaryColor: PropTypes.Requireable<string>;
764
+ closeOnClick: PropTypes.Requireable<boolean>;
763
765
  }>>;
764
766
  }> | null | undefined>>;
765
767
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/types.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAKnC,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAClD,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAC,SAAS,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAE3D,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDd,CAAC;AAEF,aAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,UAAU,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE;QACZ,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IAC1D,IAAI,EAAE,OAAO,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC5D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;QACzB,IAAI,EACA,SAAS,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,SAAS,CAAC,GAChD,SAAS,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;KACtD,CAAC;IACF,IAAI,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;CACpD,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"names":[],"mappings":";AAiCA,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAGL,gBAAgB,EAChB,kCAAkC,EAGnC,MAAM,SAAS,CAAC;AAoUjB,eAAO,MAAM,UAAU,EAAE,CACvB,MAAM,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,EAC/B,KAAK,EAAE,kCAAkC,CAAC,MAAM,CAAC,KAC9C,gBAAgB,EAOX,CAAC;AAEX,eAAO,MAAM,yBAAyB;0GAWjC,kCAAkC,iBACtB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqJhC,CAAC;AAEF,QAAA,MAAM,mCAAmC;YAAW,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CAIrF,CAAC;AAUF,eAAe,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"names":[],"mappings":";AAiCA,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAGL,gBAAgB,EAChB,kCAAkC,EAGnC,MAAM,SAAS,CAAC;AAoUjB,eAAO,MAAM,UAAU,EAAE,CACvB,MAAM,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,EAC/B,KAAK,EAAE,kCAAkC,CAAC,MAAM,CAAC,KAC9C,gBAAgB,EAOX,CAAC;AAEX,eAAO,MAAM,yBAAyB;0GAWjC,kCAAkC,iBACtB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoJhC,CAAC;AAEF,QAAA,MAAM,mCAAmC;YAAW,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CAIrF,CAAC;AAUF,eAAe,mCAAmC,CAAC"}
@@ -347,8 +347,7 @@ export const LearningProfileRadarChart = ({
347
347
  type: `stroke-${index}`,
348
348
  colors: stroke
349
349
  }))), [formatedColors]);
350
- const userAgent = navigator?.userAgent;
351
- const isMobile_ = useMemo(() => getIsMobile(userAgent), [userAgent]);
350
+ const isMobile_ = getIsMobile();
352
351
  const setIsMobile_ = useCallback(() => {
353
352
  setIsMobile(isMobile_);
354
353
  }, [isMobile_]);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","Fragment","useCallback","useEffect","useMemo","useState","Radar","RadarChart","PolarGrid","PolarAngleAxis","ResponsiveContainer","Tooltip","PolarRadiusAxis","convert","classnames","isMobile","getIsMobile","ButtonLink","Provider","GetSkinFromContext","GetTranslateFromContext","learningProfileRadarChartPropTypes","style","top","offset","x","y","alignment","margin","bottom","right","marginRight","left","marginLeft","BLACK","WHITE","DEFAULT_MAIN_COLOR","DEFAULT_COLORS","gradient","fill","stroke","percentage","color","background","label","CHART_CONFIGS","triangle","name","ticks","sideCount","quadrilateral","pentagon","hexagon","DOT_DEFAULT_PROPS","strokeWidth","strokeOpacity","r","pointerEvents","cursor","DOT_ACTIVE_PROPS","RADAR_DEFAULT_PROPS","fillOpacity","Gradient","type","colors","firstColor","secondColor","createElement","id","x1","y1","x2","y2","stopColor","CustomTooltip","active","payload","length","className","tooltip","tooltipLabel","tooltipValue","value","CustomDot","cx","cy","onDotHover","onDotClick","activeDot","dataName","_extends","subject","onTouchStart","onClick","e","stopPropagation","onMouseOver","onMouseLeave","buildRadars","totalDataset","handleDotHover","handleOnDotClick","_times","index","datakey","dataset","key","dataKey","dot","CustomLabel","percentagesValues","chartType","formatedColors","primarySkinColor","exploreLocale","hoveredDot","onExploreClick","hovered","setHovered","isCurrentDotActive","offsetX","offsetY","rest","onLabelClick","handleExploreClick","buttonExploreProps","customStyle","height","backgroundColor","transition","icon","position","faIcon","size","handleMouseOver","handleMouseLeave","extraOffsetY","tickeForeignObject","tickeForeignObjectFocus","tickWrapper","tickWrapperFocus","tickWrapperHover","alignItems","textAlign","opacity","_isEmpty","map","colorLabel","i","tickValue","tickLabel","buttonWrapper","CHART_CONFIGS_BY_SIDE_COUNT","_pipe","_keyBy","_mapValues","formatValues","values_","_flatten","val","_fromPairs","formatData","legend","data_","_toPairs","_map","ref","LearningProfileRadarChart","data","colorsProps","width","legacyContext","setIsMobile","setActiveDot","setHoveredDot","skin","translate","_get","Object","assign","_getOr","_size","gradients","userAgent","navigator","isMobile_","setIsMobile_","handleClick","undefined","window","addEventListener","removeEventListener","handleOnActiveDotClick","formatedData","find","indexOf","skillRef","_findKey","renderCustomLabel","props","currentData","_omit","_values","outerRadius","strokeDasharray","radialLines","tick","axisLine","domain","content","ResponsiveLearningProfileRadarChart","contextTypes","childContextTypes","propTypes","process","env","NODE_ENV"],"sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"sourcesContent":["import React, {Fragment, useCallback, useEffect, useMemo, useState} from 'react';\nimport {\n Radar,\n RadarChart,\n PolarGrid,\n PolarAngleAxis,\n ResponsiveContainer,\n Tooltip,\n PolarRadiusAxis\n} from 'recharts';\nimport {\n pipe,\n keyBy,\n mapValues,\n size,\n getOr,\n map,\n toPairs,\n values,\n isEmpty,\n omit,\n fromPairs,\n times,\n flatten,\n findKey,\n get\n} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport ButtonLink from '../../atom/button-link';\nimport {ButtonLinkProps} from '../../atom/button-link/types';\nimport Provider, {GetSkinFromContext, GetTranslateFromContext} from '../../atom/provider';\nimport {WebContextValues} from '../../atom/provider/web-context';\nimport {\n ActiveDotType,\n FormatedColorsType,\n FormatedDataType,\n LearningProfileRadarChartPropTypes,\n TickType,\n learningProfileRadarChartPropTypes\n} from './types';\nimport style from './style.css';\n\ntype CHART_TYPE_TYPE = keyof typeof CHART_CONFIGS;\n\n/* TICK_POSITIONS */\nconst top: TickType = {offset: {x: -100, y: -75}, alignment: 'center', margin: 'auto'};\nconst bottom: TickType = {offset: {x: -100, y: 10}, alignment: 'center', margin: 'auto'};\nconst right: TickType = {offset: {x: 30, y: -10}, alignment: 'start', marginRight: 'auto'};\nconst left: TickType = {offset: {x: -230, y: -10}, alignment: 'end', marginLeft: 'auto'};\n\n/* CONSTANTS */\nconst BLACK = '#000000ff';\nconst WHITE = '#ffffffff';\nconst DEFAULT_MAIN_COLOR = '#0062ffff';\n\nconst DEFAULT_COLORS: FormatedColorsType = {\n gradient: {\n fill: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR],\n stroke: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR]\n },\n percentage: {\n color: BLACK,\n background: WHITE\n },\n label: {\n color: BLACK\n }\n};\n\nconst CHART_CONFIGS = {\n triangle: {\n name: 'triangle',\n ticks: [top, right, left],\n sideCount: 3\n },\n quadrilateral: {\n name: 'quadrilateral',\n ticks: [top, right, bottom, left],\n sideCount: 4\n },\n pentagon: {\n name: 'pentagon',\n ticks: [top, right, right, left, left],\n sideCount: 5\n },\n hexagon: {\n name: 'hexagon',\n ticks: [top, right, right, bottom, left, left],\n sideCount: 6\n }\n} as const;\n\nconst DOT_DEFAULT_PROPS = {\n strokeWidth: 2,\n strokeOpacity: 0.4,\n fill: '#fff',\n r: 4,\n pointerEvents: 'all',\n style: {cursor: 'pointer'}\n} as const;\n\nconst DOT_ACTIVE_PROPS = {\n fill: '#fff',\n r: 6,\n strokeWidth: 4,\n strokeOpacity: 0.6\n} as const;\n\nconst RADAR_DEFAULT_PROPS = {\n strokeWidth: 3,\n strokeOpacity: 0.2,\n fillOpacity: 0.2\n} as const;\n\n/* COMPONENTS */\nconst Gradient = ({type, colors: [firstColor, secondColor]}: {type: string; colors: string[]}) => (\n <defs>\n <linearGradient id={`gradient-${type}`} x1=\"0%\" y1=\"0%\" x2=\"0%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={firstColor} />\n <stop offset=\"100%\" stopColor={secondColor} />\n </linearGradient>\n </defs>\n);\n\nconst CustomTooltip = ({\n active,\n payload,\n label\n}: {\n active?: boolean;\n payload?: {value: number}[];\n label?: string;\n}) =>\n active && !!payload?.length ? (\n <div className={style.tooltip}>\n <span className={style.tooltipLabel}>{label}</span>\n <span className={style.tooltipValue}>{payload[0].value}%</span>\n </div>\n ) : null;\n\nconst CustomDot = ({\n cx,\n cy,\n payload,\n onDotHover,\n onDotClick,\n stroke,\n activeDot,\n dataName\n}: {\n cx?: number;\n cy?: number;\n payload?: {payload: {subject: string} & {[datakey: string]: number}; name: string};\n onDotHover: (name: string) => void;\n onDotClick: (name: string) => void;\n dataKey: string;\n stroke: string;\n activeDot?: ActiveDotType;\n dataName: string;\n}) => (\n <circle\n {...{\n ...DOT_DEFAULT_PROPS,\n ...(payload?.payload.subject === activeDot?.label && DOT_ACTIVE_PROPS),\n stroke,\n cx,\n cy,\n onTouchStart: () => {\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onClick: e => {\n e.stopPropagation();\n\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onMouseOver: () => {\n if (!payload?.name) return;\n onDotHover(payload.name);\n },\n onMouseLeave: () => onDotHover(''),\n 'data-name': dataName\n }}\n />\n);\n\nconst buildRadars = (\n totalDataset: number,\n handleDotHover: (name: string) => void,\n handleOnDotClick: (name: string) => void,\n activeDot?: ActiveDotType\n) =>\n times(index => {\n const datakey = `value${index + 1}`;\n const dataset = `dataset-${index + 1}`;\n\n return (\n <Radar\n {...RADAR_DEFAULT_PROPS}\n fill={`url(#gradient-fill-${index})`}\n stroke={`url(#gradient-stroke-${index})`}\n key={dataset}\n name={dataset}\n dataKey={datakey}\n activeDot={{\n ...DOT_ACTIVE_PROPS,\n stroke: `url(#gradient-stroke-${index})`\n }}\n // only on mobile\n // to handle dot style on hover (convert to click)\n // use with the tooltip component\n dot={\n <CustomDot\n onDotHover={handleDotHover}\n onDotClick={handleOnDotClick}\n activeDot={activeDot}\n dataKey={datakey}\n stroke={`url(#gradient-stroke-${index})`}\n dataName={`dot-${dataset}`}\n />\n }\n />\n );\n }, totalDataset);\n\nconst CustomLabel = ({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n primarySkinColor,\n exploreLocale,\n hoveredDot,\n onClick,\n onExploreClick\n}: {\n index: number;\n x: number;\n y: number;\n percentagesValues: number[];\n label: string;\n chartType: CHART_TYPE_TYPE;\n formatedColors: FormatedColorsType[];\n activeDot?: ActiveDotType;\n primarySkinColor: string;\n exploreLocale: string;\n hoveredDot: string;\n onClick: (name: string) => void;\n onExploreClick: (name: string) => void;\n}) => {\n const [hovered, setHovered] = useState(false);\n const isCurrentDotActive = activeDot?.label === label;\n const {\n offset: {x: offsetX, y: offsetY},\n alignment,\n ...rest\n } = CHART_CONFIGS[chartType].ticks[index];\n\n function onLabelClick(e: React.MouseEvent) {\n e.stopPropagation();\n onClick(label);\n }\n\n function handleExploreClick() {\n onExploreClick(label);\n }\n\n const buttonExploreProps: ButtonLinkProps = {\n customStyle: {\n height: '36px',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n onClick: handleExploreClick,\n 'aria-label': `${label}, ${exploreLocale}`,\n label: exploreLocale,\n 'data-name': 'learner-skill-card-explore-button',\n icon: {\n position: 'left',\n faIcon: {\n name: 'compass',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }\n };\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const extraOffsetY = isCurrentDotActive && index === 0 ? -25 : 0;\n\n return (\n <g>\n <foreignObject\n className={classnames(\n style.tickeForeignObject,\n isCurrentDotActive && style.tickeForeignObjectFocus\n )}\n x={x + offsetX}\n y={y + offsetY + extraOffsetY}\n >\n <div\n data-name={label}\n onClick={onLabelClick}\n className={classnames(\n style.tickWrapper,\n isCurrentDotActive && style.tickWrapperFocus,\n hoveredDot === label && style.tickWrapperHover\n )}\n style={{\n ...rest,\n alignItems: alignment,\n textAlign: alignment,\n opacity: !isEmpty(activeDot) && !isCurrentDotActive ? 0.3 : 1\n }}\n >\n {formatedColors.map(\n ({percentage: {color, background}, label: {color: colorLabel}}, i) => (\n <Fragment key={i}>\n <span className={style.tickValue} style={{color, background}}>\n {percentagesValues[i]}\n </span>\n <span className={style.tickLabel} style={{color: colorLabel}}>\n {label}\n </span>\n </Fragment>\n )\n )}\n {isCurrentDotActive ? (\n <div\n className={style.buttonWrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n data-name=\"button-explore-wrapper\"\n >\n <ButtonLink {...buttonExploreProps} />\n </div>\n ) : null}\n </div>\n </foreignObject>\n </g>\n );\n};\n\n/* UTILS */\nconst CHART_CONFIGS_BY_SIDE_COUNT = pipe(keyBy('sideCount'), mapValues('name'))(CHART_CONFIGS);\n\nconst formatValues: (values_: number | number[]) => Record<string, number> = pipe(\n values_ => flatten([values_]),\n values_ => values_.map((val: number, i: number): [string, number] => [`value${i + 1}`, val]),\n fromPairs\n);\n\n/* this convert incoming component data to rechart data structure */\nexport const formatData: (\n legend: {[ref: string]: string},\n data_: LearningProfileRadarChartPropTypes['data']\n) => FormatedDataType[] = (legend, data_) =>\n pipe(\n toPairs,\n map(([ref, values_]: [string, number | number[]]) => ({\n ...formatValues(values_),\n subject: legend[ref]\n }))\n )(data_);\n\nexport const LearningProfileRadarChart = (\n {\n data,\n legend,\n totalDataset,\n colors: colorsProps,\n onClick,\n onExploreClick,\n width,\n height,\n margin\n }: LearningProfileRadarChartPropTypes,\n legacyContext: WebContextValues\n) => {\n const [isMobile, setIsMobile] = useState(false);\n const [activeDot, setActiveDot] = useState<ActiveDotType>();\n const [hoveredDot, setHoveredDot] = useState('');\n const skin = GetSkinFromContext(legacyContext);\n const translate = GetTranslateFromContext(legacyContext);\n const primarySkinColor = get('common.primary', skin);\n\n const formatedColors = times(i => {\n if (!colorsProps?.length) return DEFAULT_COLORS;\n\n const colors = colorsProps[i];\n return colors ? Object.assign({}, DEFAULT_COLORS, colors) : DEFAULT_COLORS;\n })(totalDataset);\n\n const chartType: CHART_TYPE_TYPE = useMemo(\n () => getOr('hexagon', size(data), CHART_CONFIGS_BY_SIDE_COUNT),\n [data]\n );\n\n const gradients = useMemo(\n () =>\n formatedColors.map(({gradient: {fill, stroke}}, index) => (\n <svg key={`gradient-${index}`}>\n <Gradient type={`fill-${index}`} colors={fill} />\n <Gradient type={`stroke-${index}`} colors={stroke} />\n </svg>\n )),\n [formatedColors]\n );\n\n const userAgent = navigator?.userAgent;\n const isMobile_ = useMemo(() => getIsMobile(userAgent), [userAgent]);\n\n const setIsMobile_ = useCallback(() => {\n setIsMobile(isMobile_);\n }, [isMobile_]);\n\n useEffect(() => setIsMobile_(), [setIsMobile_]);\n\n useEffect(() => {\n const handleClick = () => {\n setActiveDot(undefined);\n onClick(undefined);\n };\n\n !isEmpty(activeDot) && window.addEventListener('click', handleClick);\n\n return () => {\n window.removeEventListener('click', handleClick);\n };\n }, [activeDot, onClick, setActiveDot]);\n\n function handleOnActiveDotClick() {\n setActiveDot(undefined);\n onClick(undefined);\n }\n\n function handleOnDotClick(label: string) {\n if (!isEmpty(activeDot) && activeDot?.label === label) {\n handleOnActiveDotClick();\n return;\n }\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const index = formatedData.indexOf(payload);\n const datakey = `value${index + 1}`;\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n setActiveDot({\n key: datakey,\n value: payload[datakey],\n label: payload.subject\n });\n onClick(skillRef);\n }\n }\n\n function handleExploreClick(label: string) {\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n onExploreClick(skillRef);\n }\n }\n\n function renderCustomLabel(props: {\n x: number;\n y: number;\n payload: {value: string};\n index: number;\n }) {\n const {\n x,\n y,\n payload: {value: label},\n index\n } = props;\n const currentData = formatedData.find(({subject}) => subject === label);\n const percentagesValues: number[] = pipe(\n omit('subject'),\n mapValues(value => `${value}%`),\n values\n )(currentData);\n\n return (\n <CustomLabel\n index={index}\n x={x}\n y={y}\n percentagesValues={percentagesValues}\n label={label}\n activeDot={activeDot}\n chartType={chartType}\n formatedColors={formatedColors}\n primarySkinColor={primarySkinColor}\n exploreLocale={translate('Explore')}\n hoveredDot={hoveredDot}\n onClick={handleOnDotClick}\n onExploreClick={handleExploreClick}\n />\n );\n }\n const formatedData = useMemo(() => formatData(legend, data), [legend, data]);\n\n return (\n <RadarChart\n width={width}\n height={height}\n margin={margin ?? (isMobile ? {top: 80} : {top: 180})}\n cx=\"50%\"\n cy=\"50%\"\n outerRadius=\"80%\"\n data={formatedData}\n >\n {gradients}\n <PolarGrid strokeDasharray={10} strokeWidth={2} radialLines={false} />\n <PolarAngleAxis dataKey=\"subject\" tick={!isMobile && renderCustomLabel} />\n <PolarRadiusAxis tick={false} axisLine={false} domain={[0, 100]} />\n {buildRadars(totalDataset, setHoveredDot, handleOnDotClick, activeDot)}\n {isMobile ? <Tooltip cursor={false} content={<CustomTooltip />} /> : null}\n </RadarChart>\n );\n};\n\nconst ResponsiveLearningProfileRadarChart = (props: LearningProfileRadarChartPropTypes) => (\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <LearningProfileRadarChart {...props} />\n </ResponsiveContainer>\n);\n\nLearningProfileRadarChart.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\nResponsiveLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\n\nexport default ResponsiveLearningProfileRadarChart;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","Fragment","useCallback","useEffect","useMemo","useState","Radar","RadarChart","PolarGrid","PolarAngleAxis","ResponsiveContainer","Tooltip","PolarRadiusAxis","convert","classnames","isMobile","getIsMobile","ButtonLink","Provider","GetSkinFromContext","GetTranslateFromContext","learningProfileRadarChartPropTypes","style","top","offset","x","y","alignment","margin","bottom","right","marginRight","left","marginLeft","BLACK","WHITE","DEFAULT_MAIN_COLOR","DEFAULT_COLORS","gradient","fill","stroke","percentage","color","background","label","CHART_CONFIGS","triangle","name","ticks","sideCount","quadrilateral","pentagon","hexagon","DOT_DEFAULT_PROPS","strokeWidth","strokeOpacity","r","pointerEvents","cursor","DOT_ACTIVE_PROPS","RADAR_DEFAULT_PROPS","fillOpacity","Gradient","type","colors","firstColor","secondColor","createElement","id","x1","y1","x2","y2","stopColor","CustomTooltip","active","payload","length","className","tooltip","tooltipLabel","tooltipValue","value","CustomDot","cx","cy","onDotHover","onDotClick","activeDot","dataName","_extends","subject","onTouchStart","onClick","e","stopPropagation","onMouseOver","onMouseLeave","buildRadars","totalDataset","handleDotHover","handleOnDotClick","_times","index","datakey","dataset","key","dataKey","dot","CustomLabel","percentagesValues","chartType","formatedColors","primarySkinColor","exploreLocale","hoveredDot","onExploreClick","hovered","setHovered","isCurrentDotActive","offsetX","offsetY","rest","onLabelClick","handleExploreClick","buttonExploreProps","customStyle","height","backgroundColor","transition","icon","position","faIcon","size","handleMouseOver","handleMouseLeave","extraOffsetY","tickeForeignObject","tickeForeignObjectFocus","tickWrapper","tickWrapperFocus","tickWrapperHover","alignItems","textAlign","opacity","_isEmpty","map","colorLabel","i","tickValue","tickLabel","buttonWrapper","CHART_CONFIGS_BY_SIDE_COUNT","_pipe","_keyBy","_mapValues","formatValues","values_","_flatten","val","_fromPairs","formatData","legend","data_","_toPairs","_map","ref","LearningProfileRadarChart","data","colorsProps","width","legacyContext","setIsMobile","setActiveDot","setHoveredDot","skin","translate","_get","Object","assign","_getOr","_size","gradients","isMobile_","setIsMobile_","handleClick","undefined","window","addEventListener","removeEventListener","handleOnActiveDotClick","formatedData","find","indexOf","skillRef","_findKey","renderCustomLabel","props","currentData","_omit","_values","outerRadius","strokeDasharray","radialLines","tick","axisLine","domain","content","ResponsiveLearningProfileRadarChart","contextTypes","childContextTypes","propTypes","process","env","NODE_ENV"],"sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"sourcesContent":["import React, {Fragment, useCallback, useEffect, useMemo, useState} from 'react';\nimport {\n Radar,\n RadarChart,\n PolarGrid,\n PolarAngleAxis,\n ResponsiveContainer,\n Tooltip,\n PolarRadiusAxis\n} from 'recharts';\nimport {\n pipe,\n keyBy,\n mapValues,\n size,\n getOr,\n map,\n toPairs,\n values,\n isEmpty,\n omit,\n fromPairs,\n times,\n flatten,\n findKey,\n get\n} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport ButtonLink from '../../atom/button-link';\nimport {ButtonLinkProps} from '../../atom/button-link/types';\nimport Provider, {GetSkinFromContext, GetTranslateFromContext} from '../../atom/provider';\nimport {WebContextValues} from '../../atom/provider/web-context';\nimport {\n ActiveDotType,\n FormatedColorsType,\n FormatedDataType,\n LearningProfileRadarChartPropTypes,\n TickType,\n learningProfileRadarChartPropTypes\n} from './types';\nimport style from './style.css';\n\ntype CHART_TYPE_TYPE = keyof typeof CHART_CONFIGS;\n\n/* TICK_POSITIONS */\nconst top: TickType = {offset: {x: -100, y: -75}, alignment: 'center', margin: 'auto'};\nconst bottom: TickType = {offset: {x: -100, y: 10}, alignment: 'center', margin: 'auto'};\nconst right: TickType = {offset: {x: 30, y: -10}, alignment: 'start', marginRight: 'auto'};\nconst left: TickType = {offset: {x: -230, y: -10}, alignment: 'end', marginLeft: 'auto'};\n\n/* CONSTANTS */\nconst BLACK = '#000000ff';\nconst WHITE = '#ffffffff';\nconst DEFAULT_MAIN_COLOR = '#0062ffff';\n\nconst DEFAULT_COLORS: FormatedColorsType = {\n gradient: {\n fill: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR],\n stroke: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR]\n },\n percentage: {\n color: BLACK,\n background: WHITE\n },\n label: {\n color: BLACK\n }\n};\n\nconst CHART_CONFIGS = {\n triangle: {\n name: 'triangle',\n ticks: [top, right, left],\n sideCount: 3\n },\n quadrilateral: {\n name: 'quadrilateral',\n ticks: [top, right, bottom, left],\n sideCount: 4\n },\n pentagon: {\n name: 'pentagon',\n ticks: [top, right, right, left, left],\n sideCount: 5\n },\n hexagon: {\n name: 'hexagon',\n ticks: [top, right, right, bottom, left, left],\n sideCount: 6\n }\n} as const;\n\nconst DOT_DEFAULT_PROPS = {\n strokeWidth: 2,\n strokeOpacity: 0.4,\n fill: '#fff',\n r: 4,\n pointerEvents: 'all',\n style: {cursor: 'pointer'}\n} as const;\n\nconst DOT_ACTIVE_PROPS = {\n fill: '#fff',\n r: 6,\n strokeWidth: 4,\n strokeOpacity: 0.6\n} as const;\n\nconst RADAR_DEFAULT_PROPS = {\n strokeWidth: 3,\n strokeOpacity: 0.2,\n fillOpacity: 0.2\n} as const;\n\n/* COMPONENTS */\nconst Gradient = ({type, colors: [firstColor, secondColor]}: {type: string; colors: string[]}) => (\n <defs>\n <linearGradient id={`gradient-${type}`} x1=\"0%\" y1=\"0%\" x2=\"0%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={firstColor} />\n <stop offset=\"100%\" stopColor={secondColor} />\n </linearGradient>\n </defs>\n);\n\nconst CustomTooltip = ({\n active,\n payload,\n label\n}: {\n active?: boolean;\n payload?: {value: number}[];\n label?: string;\n}) =>\n active && !!payload?.length ? (\n <div className={style.tooltip}>\n <span className={style.tooltipLabel}>{label}</span>\n <span className={style.tooltipValue}>{payload[0].value}%</span>\n </div>\n ) : null;\n\nconst CustomDot = ({\n cx,\n cy,\n payload,\n onDotHover,\n onDotClick,\n stroke,\n activeDot,\n dataName\n}: {\n cx?: number;\n cy?: number;\n payload?: {payload: {subject: string} & {[datakey: string]: number}; name: string};\n onDotHover: (name: string) => void;\n onDotClick: (name: string) => void;\n dataKey: string;\n stroke: string;\n activeDot?: ActiveDotType;\n dataName: string;\n}) => (\n <circle\n {...{\n ...DOT_DEFAULT_PROPS,\n ...(payload?.payload.subject === activeDot?.label && DOT_ACTIVE_PROPS),\n stroke,\n cx,\n cy,\n onTouchStart: () => {\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onClick: e => {\n e.stopPropagation();\n\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onMouseOver: () => {\n if (!payload?.name) return;\n onDotHover(payload.name);\n },\n onMouseLeave: () => onDotHover(''),\n 'data-name': dataName\n }}\n />\n);\n\nconst buildRadars = (\n totalDataset: number,\n handleDotHover: (name: string) => void,\n handleOnDotClick: (name: string) => void,\n activeDot?: ActiveDotType\n) =>\n times(index => {\n const datakey = `value${index + 1}`;\n const dataset = `dataset-${index + 1}`;\n\n return (\n <Radar\n {...RADAR_DEFAULT_PROPS}\n fill={`url(#gradient-fill-${index})`}\n stroke={`url(#gradient-stroke-${index})`}\n key={dataset}\n name={dataset}\n dataKey={datakey}\n activeDot={{\n ...DOT_ACTIVE_PROPS,\n stroke: `url(#gradient-stroke-${index})`\n }}\n // only on mobile\n // to handle dot style on hover (convert to click)\n // use with the tooltip component\n dot={\n <CustomDot\n onDotHover={handleDotHover}\n onDotClick={handleOnDotClick}\n activeDot={activeDot}\n dataKey={datakey}\n stroke={`url(#gradient-stroke-${index})`}\n dataName={`dot-${dataset}`}\n />\n }\n />\n );\n }, totalDataset);\n\nconst CustomLabel = ({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n primarySkinColor,\n exploreLocale,\n hoveredDot,\n onClick,\n onExploreClick\n}: {\n index: number;\n x: number;\n y: number;\n percentagesValues: number[];\n label: string;\n chartType: CHART_TYPE_TYPE;\n formatedColors: FormatedColorsType[];\n activeDot?: ActiveDotType;\n primarySkinColor: string;\n exploreLocale: string;\n hoveredDot: string;\n onClick: (name: string) => void;\n onExploreClick: (name: string) => void;\n}) => {\n const [hovered, setHovered] = useState(false);\n const isCurrentDotActive = activeDot?.label === label;\n const {\n offset: {x: offsetX, y: offsetY},\n alignment,\n ...rest\n } = CHART_CONFIGS[chartType].ticks[index];\n\n function onLabelClick(e: React.MouseEvent) {\n e.stopPropagation();\n onClick(label);\n }\n\n function handleExploreClick() {\n onExploreClick(label);\n }\n\n const buttonExploreProps: ButtonLinkProps = {\n customStyle: {\n height: '36px',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n onClick: handleExploreClick,\n 'aria-label': `${label}, ${exploreLocale}`,\n label: exploreLocale,\n 'data-name': 'learner-skill-card-explore-button',\n icon: {\n position: 'left',\n faIcon: {\n name: 'compass',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }\n };\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const extraOffsetY = isCurrentDotActive && index === 0 ? -25 : 0;\n\n return (\n <g>\n <foreignObject\n className={classnames(\n style.tickeForeignObject,\n isCurrentDotActive && style.tickeForeignObjectFocus\n )}\n x={x + offsetX}\n y={y + offsetY + extraOffsetY}\n >\n <div\n data-name={label}\n onClick={onLabelClick}\n className={classnames(\n style.tickWrapper,\n isCurrentDotActive && style.tickWrapperFocus,\n hoveredDot === label && style.tickWrapperHover\n )}\n style={{\n ...rest,\n alignItems: alignment,\n textAlign: alignment,\n opacity: !isEmpty(activeDot) && !isCurrentDotActive ? 0.3 : 1\n }}\n >\n {formatedColors.map(\n ({percentage: {color, background}, label: {color: colorLabel}}, i) => (\n <Fragment key={i}>\n <span className={style.tickValue} style={{color, background}}>\n {percentagesValues[i]}\n </span>\n <span className={style.tickLabel} style={{color: colorLabel}}>\n {label}\n </span>\n </Fragment>\n )\n )}\n {isCurrentDotActive ? (\n <div\n className={style.buttonWrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n data-name=\"button-explore-wrapper\"\n >\n <ButtonLink {...buttonExploreProps} />\n </div>\n ) : null}\n </div>\n </foreignObject>\n </g>\n );\n};\n\n/* UTILS */\nconst CHART_CONFIGS_BY_SIDE_COUNT = pipe(keyBy('sideCount'), mapValues('name'))(CHART_CONFIGS);\n\nconst formatValues: (values_: number | number[]) => Record<string, number> = pipe(\n values_ => flatten([values_]),\n values_ => values_.map((val: number, i: number): [string, number] => [`value${i + 1}`, val]),\n fromPairs\n);\n\n/* this convert incoming component data to rechart data structure */\nexport const formatData: (\n legend: {[ref: string]: string},\n data_: LearningProfileRadarChartPropTypes['data']\n) => FormatedDataType[] = (legend, data_) =>\n pipe(\n toPairs,\n map(([ref, values_]: [string, number | number[]]) => ({\n ...formatValues(values_),\n subject: legend[ref]\n }))\n )(data_);\n\nexport const LearningProfileRadarChart = (\n {\n data,\n legend,\n totalDataset,\n colors: colorsProps,\n onClick,\n onExploreClick,\n width,\n height,\n margin\n }: LearningProfileRadarChartPropTypes,\n legacyContext: WebContextValues\n) => {\n const [isMobile, setIsMobile] = useState(false);\n const [activeDot, setActiveDot] = useState<ActiveDotType>();\n const [hoveredDot, setHoveredDot] = useState('');\n const skin = GetSkinFromContext(legacyContext);\n const translate = GetTranslateFromContext(legacyContext);\n const primarySkinColor = get('common.primary', skin);\n\n const formatedColors = times(i => {\n if (!colorsProps?.length) return DEFAULT_COLORS;\n\n const colors = colorsProps[i];\n return colors ? Object.assign({}, DEFAULT_COLORS, colors) : DEFAULT_COLORS;\n })(totalDataset);\n\n const chartType: CHART_TYPE_TYPE = useMemo(\n () => getOr('hexagon', size(data), CHART_CONFIGS_BY_SIDE_COUNT),\n [data]\n );\n\n const gradients = useMemo(\n () =>\n formatedColors.map(({gradient: {fill, stroke}}, index) => (\n <svg key={`gradient-${index}`}>\n <Gradient type={`fill-${index}`} colors={fill} />\n <Gradient type={`stroke-${index}`} colors={stroke} />\n </svg>\n )),\n [formatedColors]\n );\n\n const isMobile_ = getIsMobile();\n\n const setIsMobile_ = useCallback(() => {\n setIsMobile(isMobile_ as boolean);\n }, [isMobile_]);\n\n useEffect(() => setIsMobile_(), [setIsMobile_]);\n\n useEffect(() => {\n const handleClick = () => {\n setActiveDot(undefined);\n onClick(undefined);\n };\n\n !isEmpty(activeDot) && window.addEventListener('click', handleClick);\n\n return () => {\n window.removeEventListener('click', handleClick);\n };\n }, [activeDot, onClick, setActiveDot]);\n\n function handleOnActiveDotClick() {\n setActiveDot(undefined);\n onClick(undefined);\n }\n\n function handleOnDotClick(label: string) {\n if (!isEmpty(activeDot) && activeDot?.label === label) {\n handleOnActiveDotClick();\n return;\n }\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const index = formatedData.indexOf(payload);\n const datakey = `value${index + 1}`;\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n setActiveDot({\n key: datakey,\n value: payload[datakey],\n label: payload.subject\n });\n onClick(skillRef);\n }\n }\n\n function handleExploreClick(label: string) {\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n onExploreClick(skillRef);\n }\n }\n\n function renderCustomLabel(props: {\n x: number;\n y: number;\n payload: {value: string};\n index: number;\n }) {\n const {\n x,\n y,\n payload: {value: label},\n index\n } = props;\n const currentData = formatedData.find(({subject}) => subject === label);\n const percentagesValues: number[] = pipe(\n omit('subject'),\n mapValues(value => `${value}%`),\n values\n )(currentData);\n\n return (\n <CustomLabel\n index={index}\n x={x}\n y={y}\n percentagesValues={percentagesValues}\n label={label}\n activeDot={activeDot}\n chartType={chartType}\n formatedColors={formatedColors}\n primarySkinColor={primarySkinColor}\n exploreLocale={translate('Explore')}\n hoveredDot={hoveredDot}\n onClick={handleOnDotClick}\n onExploreClick={handleExploreClick}\n />\n );\n }\n const formatedData = useMemo(() => formatData(legend, data), [legend, data]);\n\n return (\n <RadarChart\n width={width}\n height={height}\n margin={margin ?? (isMobile ? {top: 80} : {top: 180})}\n cx=\"50%\"\n cy=\"50%\"\n outerRadius=\"80%\"\n data={formatedData}\n >\n {gradients}\n <PolarGrid strokeDasharray={10} strokeWidth={2} radialLines={false} />\n <PolarAngleAxis dataKey=\"subject\" tick={!isMobile && renderCustomLabel} />\n <PolarRadiusAxis tick={false} axisLine={false} domain={[0, 100]} />\n {buildRadars(totalDataset, setHoveredDot, handleOnDotClick, activeDot)}\n {isMobile ? <Tooltip cursor={false} content={<CustomTooltip />} /> : null}\n </RadarChart>\n );\n};\n\nconst ResponsiveLearningProfileRadarChart = (props: LearningProfileRadarChartPropTypes) => (\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <LearningProfileRadarChart {...props} />\n </ResponsiveContainer>\n);\n\nLearningProfileRadarChart.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\nResponsiveLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\n\nexport default ResponsiveLearningProfileRadarChart;\n"],"mappings":"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","ignoreList":[]}
@@ -271,6 +271,7 @@ declare const ContentSkillModal: {
271
271
  }>>;
272
272
  type: import("prop-types").Requireable<string>;
273
273
  primaryColor: import("prop-types").Requireable<string>;
274
+ closeOnClick: import("prop-types").Requireable<boolean>;
274
275
  }> | null | undefined>>;
275
276
  }>>;
276
277
  }> | import("prop-types").InferProps<{
@@ -608,6 +609,7 @@ declare const ContentSkillModal: {
608
609
  }>>;
609
610
  type: import("prop-types").Requireable<string>;
610
611
  primaryColor: import("prop-types").Requireable<string>;
612
+ closeOnClick: import("prop-types").Requireable<boolean>;
611
613
  }>>;
612
614
  }>>>;
613
615
  filters: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/content-skill-modal/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAOlD,OAAkB,EAAC,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAE1D,QAAA,MAAM,iBAAiB;YAAW,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DvD,CAAC;AAQF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/content-skill-modal/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAOlD,OAAkB,EAAC,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAE1D,QAAA,MAAM,iBAAiB;YAAW,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DvD,CAAC;AAQF,eAAe,iBAAiB,CAAC"}
@@ -268,6 +268,7 @@ declare const ContentSkillModalPropTypes: {
268
268
  }>>;
269
269
  type: PropTypes.Requireable<string>;
270
270
  primaryColor: PropTypes.Requireable<string>;
271
+ closeOnClick: PropTypes.Requireable<boolean>;
271
272
  }> | null | undefined>>;
272
273
  }>>;
273
274
  }> | PropTypes.InferProps<{
@@ -605,6 +606,7 @@ declare const ContentSkillModalPropTypes: {
605
606
  }>>;
606
607
  type: PropTypes.Requireable<string>;
607
608
  primaryColor: PropTypes.Requireable<string>;
609
+ closeOnClick: PropTypes.Requireable<boolean>;
608
610
  }>>;
609
611
  }>>>;
610
612
  filters: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/organism/content-skill-modal/types.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,SAAS,MAAM,eAAe,CAAC;AACtC,OAAkC,EAChC,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AAStD,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI/B,CAAC;AAEF,eAAe,0BAA0B,CAAC;AAE1C,aAAK,UAAU,GAAG;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,oBAAY,sBAAsB,GAAG;IACnC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;IACpD,OAAO,EAAE,qBAAqB,CAAC;IAC/B,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/organism/content-skill-modal/types.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,SAAS,MAAM,eAAe,CAAC;AACtC,OAAkC,EAChC,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AAStD,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI/B,CAAC;AAEF,eAAe,0BAA0B,CAAC;AAE1C,aAAK,UAAU,GAAG;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,oBAAY,sBAAsB,GAAG;IACnC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;IACpD,OAAO,EAAE,qBAAqB,CAAC;IAC/B,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC"}
@@ -277,6 +277,7 @@ declare namespace ListItems {
277
277
  }>>;
278
278
  type: PropTypes.Requireable<string>;
279
279
  primaryColor: PropTypes.Requireable<string>;
280
+ closeOnClick: PropTypes.Requireable<boolean>;
280
281
  }> | null | undefined>>;
281
282
  }>>;
282
283
  }> | PropTypes.InferProps<{
@@ -614,6 +615,7 @@ declare namespace ListItems {
614
615
  }>>;
615
616
  type: PropTypes.Requireable<string>;
616
617
  primaryColor: PropTypes.Requireable<string>;
618
+ closeOnClick: PropTypes.Requireable<boolean>;
617
619
  }>>;
618
620
  };
619
621
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/mooc-header/index.js"],"names":[],"mappings":";AAuBA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA+FE;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,0DASE;IAEF,6BAqdC;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/mooc-header/index.js"],"names":[],"mappings":";AAwBA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA+FE;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,0DASE;IAEF,6BAydC;CACF"}
@@ -17,6 +17,7 @@ import Search from '../../atom/input-search';
17
17
  import SearchForm from '../../molecule/search-form';
18
18
  import ButtonMenuAction from '../../molecule/button-menu-action';
19
19
  import { COLORS } from '../../variables/colors';
20
+ import { isMobile as getIsMobile } from '../../util/check-is-mobile';
20
21
  import style from './style.css';
21
22
  class MoocHeader extends React.Component {
22
23
  static contextTypes = {
@@ -199,6 +200,7 @@ class MoocHeader extends React.Component {
199
200
  translate,
200
201
  skin
201
202
  } = this.context;
203
+ const isMobile = getIsMobile();
202
204
  const {
203
205
  'aria-label': logoAriaLabel,
204
206
  closeMenuAriaLabel,
@@ -289,7 +291,11 @@ class MoocHeader extends React.Component {
289
291
  });
290
292
  pagesView = /*#__PURE__*/React.createElement("div", {
291
293
  className: search.value || isFocus ? style.noItems : style.items
292
- }, displayedPages, items.more ? /*#__PURE__*/React.createElement("div", {
294
+ }, displayedPages, items.more && (isMobile ? /*#__PURE__*/React.createElement("div", {
295
+ className: style.tabletOnlyMoreMenu
296
+ }, /*#__PURE__*/React.createElement("div", {
297
+ className: style.optionsGroup
298
+ }, optionsView)) : /*#__PURE__*/React.createElement("div", {
293
299
  className: style.desktopOnlyMoreMenu
294
300
  }, /*#__PURE__*/React.createElement(ButtonMenuAction, {
295
301
  button: {
@@ -302,6 +308,7 @@ class MoocHeader extends React.Component {
302
308
  containerCustom: {
303
309
  alignItems: 'flex-start'
304
310
  },
311
+ closeOnClick: true,
305
312
  menuWrapper: {
306
313
  customStyle: {
307
314
  top: '30px'
@@ -310,11 +317,7 @@ class MoocHeader extends React.Component {
310
317
  menu: {
311
318
  buttons: this.createMenuButtons(items.more, primaryColor)
312
319
  }
313
- })) : null, /*#__PURE__*/React.createElement("div", {
314
- className: style.tabletOnlyMoreMenu
315
- }, /*#__PURE__*/React.createElement("div", {
316
- className: style.optionsGroup
317
- }, optionsView)));
320
+ }))));
318
321
  }
319
322
  if (links) {
320
323
  const ctas = links.map((cta, index) => {