@coorpacademy/components 11.32.1-alpha.26 → 11.32.1-alpha.30.29

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 (32) hide show
  1. package/es/organism/review-no-skills/index.d.ts +2 -2
  2. package/es/organism/review-no-skills/index.js +3 -3
  3. package/es/organism/review-no-skills/index.js.map +1 -1
  4. package/es/organism/review-no-skills/prop-types.d.ts +2 -2
  5. package/es/organism/review-no-skills/prop-types.d.ts.map +1 -1
  6. package/es/organism/review-no-skills/prop-types.js +1 -1
  7. package/es/organism/review-no-skills/prop-types.js.map +1 -1
  8. package/es/organism/review-no-skills/style.css +1 -2
  9. package/es/template/my-learning/index.d.ts.map +1 -1
  10. package/es/template/my-learning/index.js +8 -9
  11. package/es/template/my-learning/index.js.map +1 -1
  12. package/es/util/search-value-included.d.ts +3 -0
  13. package/es/util/search-value-included.d.ts.map +1 -0
  14. package/es/util/search-value-included.js +10 -0
  15. package/es/util/search-value-included.js.map +1 -0
  16. package/lib/organism/review-no-skills/index.d.ts +2 -2
  17. package/lib/organism/review-no-skills/index.js +3 -3
  18. package/lib/organism/review-no-skills/index.js.map +1 -1
  19. package/lib/organism/review-no-skills/prop-types.d.ts +2 -2
  20. package/lib/organism/review-no-skills/prop-types.d.ts.map +1 -1
  21. package/lib/organism/review-no-skills/prop-types.js +1 -1
  22. package/lib/organism/review-no-skills/prop-types.js.map +1 -1
  23. package/lib/organism/review-no-skills/style.css +1 -2
  24. package/lib/template/my-learning/index.d.ts.map +1 -1
  25. package/lib/template/my-learning/index.js +9 -9
  26. package/lib/template/my-learning/index.js.map +1 -1
  27. package/lib/util/search-value-included.d.ts +3 -0
  28. package/lib/util/search-value-included.d.ts.map +1 -0
  29. package/lib/util/search-value-included.js +20 -0
  30. package/lib/util/search-value-included.js.map +1 -0
  31. package/locales/en/global.json +3 -3
  32. package/package.json +2 -2
@@ -1,9 +1,9 @@
1
1
  export default ReviewNoSkills;
2
- declare function ReviewNoSkills({ titleNoSkills, textNoSkills, iconSkillAriaLabel, directionReverse }: {
2
+ declare function ReviewNoSkills({ titleNoSkills, textNoSkills, iconSkillAriaLabel, imagePosition }: {
3
3
  titleNoSkills: any;
4
4
  textNoSkills: any;
5
5
  iconSkillAriaLabel: any;
6
- directionReverse?: boolean | undefined;
6
+ imagePosition?: string | undefined;
7
7
  }): JSX.Element;
8
8
  declare namespace ReviewNoSkills {
9
9
  export { propTypes };
@@ -7,18 +7,18 @@ const ReviewNoSkills = ({
7
7
  titleNoSkills,
8
8
  textNoSkills,
9
9
  iconSkillAriaLabel,
10
- directionReverse = false
10
+ imagePosition = 'bottom'
11
11
  }) => {
12
12
  return /*#__PURE__*/React.createElement("div", {
13
13
  className: style.noSkillsContainer
14
- }, directionReverse ? /*#__PURE__*/React.createElement(EmptyStateHomeRevision, {
14
+ }, imagePosition === 'top' ? /*#__PURE__*/React.createElement(EmptyStateHomeRevision, {
15
15
  className: style.imgNoSkillsReverse,
16
16
  "aria-label": iconSkillAriaLabel
17
17
  }) : null, /*#__PURE__*/React.createElement("div", {
18
18
  className: style.titleNoSkills
19
19
  }, titleNoSkills), /*#__PURE__*/React.createElement("div", {
20
20
  className: style.textNoSkills
21
- }, " ", textNoSkills), !directionReverse ? /*#__PURE__*/React.createElement(EmptyStateHomeRevision, {
21
+ }, " ", textNoSkills), imagePosition === 'bottom' ? /*#__PURE__*/React.createElement(EmptyStateHomeRevision, {
22
22
  className: style.imgNoSkills,
23
23
  "aria-label": iconSkillAriaLabel
24
24
  }) : null);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","NovaCompositionCoorpacademyEmptyStateHomeRevision","EmptyStateHomeRevision","style","propTypes","ReviewNoSkills","titleNoSkills","textNoSkills","iconSkillAriaLabel","directionReverse","noSkillsContainer","imgNoSkillsReverse","imgNoSkills"],"sources":["../../../src/organism/review-no-skills/index.js"],"sourcesContent":["import React from 'react';\nimport {NovaCompositionCoorpacademyEmptyStateHomeRevision as EmptyStateHomeRevision} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ReviewNoSkills = ({\n titleNoSkills,\n textNoSkills,\n iconSkillAriaLabel,\n directionReverse = false\n}) => {\n return (\n <div className={style.noSkillsContainer}>\n {directionReverse ? (\n <EmptyStateHomeRevision\n className={style.imgNoSkillsReverse}\n aria-label={iconSkillAriaLabel}\n />\n ) : null}\n <div className={style.titleNoSkills}>{titleNoSkills}</div>\n <div className={style.textNoSkills}> {textNoSkills}</div>\n {!directionReverse ? (\n <EmptyStateHomeRevision className={style.imgNoSkills} aria-label={iconSkillAriaLabel} />\n ) : null}\n </div>\n );\n};\n\nReviewNoSkills.propTypes = propTypes;\n\nexport default ReviewNoSkills;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAAQC,iDAAiD,IAAIC,sBAA7D,QAA0F,0BAA1F;AACA,OAAOC,KAAP,MAAkB,aAAlB;AACA,OAAOC,SAAP,MAAsB,cAAtB;;AAEA,MAAMC,cAAc,GAAG,CAAC;EACtBC,aADsB;EAEtBC,YAFsB;EAGtBC,kBAHsB;EAItBC,gBAAgB,GAAG;AAJG,CAAD,KAKjB;EACJ,oBACE;IAAK,SAAS,EAAEN,KAAK,CAACO;EAAtB,GACGD,gBAAgB,gBACf,oBAAC,sBAAD;IACE,SAAS,EAAEN,KAAK,CAACQ,kBADnB;IAEE,cAAYH;EAFd,EADe,GAKb,IANN,eAOE;IAAK,SAAS,EAAEL,KAAK,CAACG;EAAtB,GAAsCA,aAAtC,CAPF,eAQE;IAAK,SAAS,EAAEH,KAAK,CAACI;EAAtB,QAAsCA,YAAtC,CARF,EASG,CAACE,gBAAD,gBACC,oBAAC,sBAAD;IAAwB,SAAS,EAAEN,KAAK,CAACS,WAAzC;IAAsD,cAAYJ;EAAlE,EADD,GAEG,IAXN,CADF;AAeD,CArBD;;AAuBAH,cAAc,CAACD,SAAf,2CAA2BA,SAA3B;AAEA,eAAeC,cAAf"}
1
+ {"version":3,"file":"index.js","names":["React","NovaCompositionCoorpacademyEmptyStateHomeRevision","EmptyStateHomeRevision","style","propTypes","ReviewNoSkills","titleNoSkills","textNoSkills","iconSkillAriaLabel","imagePosition","noSkillsContainer","imgNoSkillsReverse","imgNoSkills"],"sources":["../../../src/organism/review-no-skills/index.js"],"sourcesContent":["import React from 'react';\nimport {NovaCompositionCoorpacademyEmptyStateHomeRevision as EmptyStateHomeRevision} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ReviewNoSkills = ({\n titleNoSkills,\n textNoSkills,\n iconSkillAriaLabel,\n imagePosition = 'bottom'\n}) => {\n return (\n <div className={style.noSkillsContainer}>\n {imagePosition === 'top' ? (\n <EmptyStateHomeRevision\n className={style.imgNoSkillsReverse}\n aria-label={iconSkillAriaLabel}\n />\n ) : null}\n <div className={style.titleNoSkills}>{titleNoSkills}</div>\n <div className={style.textNoSkills}> {textNoSkills}</div>\n {imagePosition === 'bottom' ? (\n <EmptyStateHomeRevision className={style.imgNoSkills} aria-label={iconSkillAriaLabel} />\n ) : null}\n </div>\n );\n};\n\nReviewNoSkills.propTypes = propTypes;\n\nexport default ReviewNoSkills;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAAQC,iDAAiD,IAAIC,sBAA7D,QAA0F,0BAA1F;AACA,OAAOC,KAAP,MAAkB,aAAlB;AACA,OAAOC,SAAP,MAAsB,cAAtB;;AAEA,MAAMC,cAAc,GAAG,CAAC;EACtBC,aADsB;EAEtBC,YAFsB;EAGtBC,kBAHsB;EAItBC,aAAa,GAAG;AAJM,CAAD,KAKjB;EACJ,oBACE;IAAK,SAAS,EAAEN,KAAK,CAACO;EAAtB,GACGD,aAAa,KAAK,KAAlB,gBACC,oBAAC,sBAAD;IACE,SAAS,EAAEN,KAAK,CAACQ,kBADnB;IAEE,cAAYH;EAFd,EADD,GAKG,IANN,eAOE;IAAK,SAAS,EAAEL,KAAK,CAACG;EAAtB,GAAsCA,aAAtC,CAPF,eAQE;IAAK,SAAS,EAAEH,KAAK,CAACI;EAAtB,QAAsCA,YAAtC,CARF,EASGE,aAAa,KAAK,QAAlB,gBACC,oBAAC,sBAAD;IAAwB,SAAS,EAAEN,KAAK,CAACS,WAAzC;IAAsD,cAAYJ;EAAlE,EADD,GAEG,IAXN,CADF;AAeD,CArBD;;AAuBAH,cAAc,CAACD,SAAf,2CAA2BA,SAA3B;AAEA,eAAeC,cAAf"}
@@ -3,13 +3,13 @@ declare const propTypes: {
3
3
  titleNoSkills: PropTypes.Validator<string>;
4
4
  textNoSkills: PropTypes.Validator<string>;
5
5
  iconSkillAriaLabel: PropTypes.Validator<string>;
6
- directionReverse: PropTypes.Requireable<boolean>;
6
+ imagePosition: PropTypes.Requireable<string>;
7
7
  };
8
8
  export default propTypes;
9
9
  export declare type NoSkillsProps = {
10
10
  titleNoSkills: string;
11
11
  textNoSkills: string;
12
12
  iconSkillAriaLabel: string;
13
- directionReverse?: boolean;
13
+ imagePosition?: 'top' | 'bottom';
14
14
  };
15
15
  //# sourceMappingURL=prop-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/organism/review-no-skills/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,QAAA,MAAM,SAAS;;;;;CAKd,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,oBAAY,aAAa,GAAG;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC"}
1
+ {"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/organism/review-no-skills/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,QAAA,MAAM,SAAS;;;;;CAKd,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,oBAAY,aAAa,GAAG;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CAClC,CAAC"}
@@ -3,7 +3,7 @@ const propTypes = {
3
3
  titleNoSkills: PropTypes.string.isRequired,
4
4
  textNoSkills: PropTypes.string.isRequired,
5
5
  iconSkillAriaLabel: PropTypes.string.isRequired,
6
- directionReverse: PropTypes.bool
6
+ imagePosition: PropTypes.oneOf(['top', 'bottom'])
7
7
  };
8
8
  export default propTypes;
9
9
  //# sourceMappingURL=prop-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prop-types.js","names":["PropTypes","propTypes","titleNoSkills","string","isRequired","textNoSkills","iconSkillAriaLabel","directionReverse","bool"],"sources":["../../../src/organism/review-no-skills/prop-types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nconst propTypes = {\n titleNoSkills: PropTypes.string.isRequired,\n textNoSkills: PropTypes.string.isRequired,\n iconSkillAriaLabel: PropTypes.string.isRequired,\n directionReverse: PropTypes.bool\n};\n\nexport default propTypes;\n\nexport type NoSkillsProps = {\n titleNoSkills: string;\n textNoSkills: string;\n iconSkillAriaLabel: string;\n directionReverse?: boolean;\n};\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,MAAMC,SAAS,GAAG;EAChBC,aAAa,EAAEF,SAAS,CAACG,MAAV,CAAiBC,UADhB;EAEhBC,YAAY,EAAEL,SAAS,CAACG,MAAV,CAAiBC,UAFf;EAGhBE,kBAAkB,EAAEN,SAAS,CAACG,MAAV,CAAiBC,UAHrB;EAIhBG,gBAAgB,EAAEP,SAAS,CAACQ;AAJZ,CAAlB;AAOA,eAAeP,SAAf"}
1
+ {"version":3,"file":"prop-types.js","names":["PropTypes","propTypes","titleNoSkills","string","isRequired","textNoSkills","iconSkillAriaLabel","imagePosition","oneOf"],"sources":["../../../src/organism/review-no-skills/prop-types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nconst propTypes = {\n titleNoSkills: PropTypes.string.isRequired,\n textNoSkills: PropTypes.string.isRequired,\n iconSkillAriaLabel: PropTypes.string.isRequired,\n imagePosition: PropTypes.oneOf(['top', 'bottom'])\n};\n\nexport default propTypes;\n\nexport type NoSkillsProps = {\n titleNoSkills: string;\n textNoSkills: string;\n iconSkillAriaLabel: string;\n imagePosition?: 'top' | 'bottom';\n};\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,MAAMC,SAAS,GAAG;EAChBC,aAAa,EAAEF,SAAS,CAACG,MAAV,CAAiBC,UADhB;EAEhBC,YAAY,EAAEL,SAAS,CAACG,MAAV,CAAiBC,UAFf;EAGhBE,kBAAkB,EAAEN,SAAS,CAACG,MAAV,CAAiBC,UAHrB;EAIhBG,aAAa,EAAEP,SAAS,CAACQ,KAAV,CAAgB,CAAC,KAAD,EAAQ,QAAR,CAAhB;AAJC,CAAlB;AAOA,eAAeP,SAAf"}
@@ -47,10 +47,9 @@
47
47
  }
48
48
 
49
49
  .imgNoSkillsReverse {
50
- height: 361px;
50
+ composes: imgNoSkills;
51
51
  margin-top: 0px;
52
52
  margin-bottom: 8px;
53
- width: 361px;
54
53
  }
55
54
 
56
55
  @media tablet {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AA+GA,mEAoVC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AAgHA,mEAkVC"}
@@ -18,6 +18,7 @@ import SkillPickerModal from '../../molecule/skill-picker-modal';
18
18
  import ResponsiveLearningProfileRadarChart from '../../molecule/learning-profile-radar-chart';
19
19
  import SkillsChartSideInformationPanel from '../../molecule/skills-chart-side-information-panel';
20
20
  import LearnerSkillCard from '../../molecule/learner-skill-card';
21
+ import searchValueIncluded from '../../util/search-value-included';
21
22
  import style from './style.css';
22
23
 
23
24
  const ChangeSkillFocusButton = (props, context) => {
@@ -136,14 +137,14 @@ const MyLearning = (props, context) => {
136
137
  const filters = useMemo(() => {
137
138
  return {
138
139
  all: searchResults,
139
- review_mode_available: skillsReviewReady
140
+ review: skillsReviewReady
140
141
  };
141
142
  }, [searchResults, skillsReviewReady]);
142
143
  const sumKpi = useCallback(kpi => skillFocusSelectedOnChart ? skillsInformation[skillFocusSelectedOnChart].stats[kpi] : _sumBy(skill => skillsInformation[skill].stats[kpi], selectedSkillsList), [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]);
143
144
  const coursedCompletedData = useMemo(() => sumKpi('coursesCompleted'), [sumKpi]);
144
145
  const questionsAnsweredData = useMemo(() => sumKpi('questionsAnswered'), [sumKpi]);
145
146
  const learningHoursData = useMemo(() => sumKpi('learningHours'), [sumKpi]);
146
- const skillChartPaneLegends = useMemo(() => translate('on', {
147
+ const skillChartPaneLegends = useMemo(() => translate('skill_scope_specifier', {
147
148
  focusedSkill: skillFocusSelectedOnChart ? skillsLocales[skillFocusSelectedOnChart] : translate('focused_skills')
148
149
  }), [translate, skillsLocales, skillFocusSelectedOnChart]);
149
150
  const skillChartPanelProps = [{
@@ -183,9 +184,7 @@ const MyLearning = (props, context) => {
183
184
  }, [onSkillFocusConfirm, setSelectedSkillsList, setOpen]);
184
185
  const handleSearch = useCallback(value => {
185
186
  setSearchValue(value);
186
- setSearchResults(skills.filter(skill => {
187
- return skillsLocales[skill].toLowerCase().includes(value.toLowerCase());
188
- }));
187
+ setSearchResults(skills.filter(skill => searchValueIncluded(skillsLocales[skill], value)));
189
188
  }, [skills, skillsLocales, setSearchValue, setSearchResults]);
190
189
  const handleSearchReset = useCallback(() => {
191
190
  setSearchValue('');
@@ -287,9 +286,9 @@ const MyLearning = (props, context) => {
287
286
  className: style.skillListHeaderContent
288
287
  }, /*#__PURE__*/React.createElement("div", {
289
288
  className: style.skillListHeaderTitle
290
- }, translate('skills')), /*#__PURE__*/React.createElement("div", {
289
+ }, translate('skills_section_title')), /*#__PURE__*/React.createElement("div", {
291
290
  className: style.skillListHeaderDescription
292
- }, translate('Explore or review skills'), /*#__PURE__*/React.createElement(ToolTip, {
291
+ }, translate('skills_section_description'), /*#__PURE__*/React.createElement(ToolTip, {
293
292
  fontSize: 12,
294
293
  iconContainerClassName: style.infoIconTooltip,
295
294
  tooltipClassName: style.tooltip,
@@ -308,7 +307,7 @@ const MyLearning = (props, context) => {
308
307
  key: index
309
308
  }, /*#__PURE__*/React.createElement(FilterButton, {
310
309
  active: activeFilter === filter,
311
- filter: translate(filter),
310
+ filter: filter === 'all' ? translate('all') : translate('review_mode_available'),
312
311
  skillTotal: filters[filter].length,
313
312
  onClick: handleFilterClick
314
313
  }));
@@ -340,7 +339,7 @@ const MyLearning = (props, context) => {
340
339
  titleNoSkills: translate('review_skill_epmty'),
341
340
  textNoSkills: translate('review_skill_epmty_description'),
342
341
  iconSkillAriaLabel: translate('review_skill_epmty'),
343
- directionReverse: true
342
+ imagePosition: "top"
344
343
  })) : filters[activeFilter].map((skill, index) => {
345
344
  function handleReviewSkill() {
346
345
  onReviewSkill(skill);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useCallback","useState","useMemo","PropTypes","convert","Provider","Icon","Picture","ButtonLink","ToolTip","ReviewNoSkills","SearchForm","SkillPickerModal","ResponsiveLearningProfileRadarChart","SkillsChartSideInformationPanel","LearnerSkillCard","style","ChangeSkillFocusButton","props","context","hovered","setHovered","onClick","skin","translate","primarySkinColor","handleMouseOver","handleMouseLeave","backgroundColor","color","transition","position","faIcon","name","size","contextTypes","childContextTypes","propTypes","func","FilterButton","active","filter","skillTotal","Content","skillFilterNumber","skillFilterNumberInActive","buttonProps","customStyle","width","content","bool","string","number","MyLearning","skills","selectedSkills","skillsInformation","skillsLocales","learnerFeature","isLoading","onSkillFocusConfirm","onReviewSkill","onExploreSkill","open","setOpen","selectedSkillsList","setSelectedSkillsList","skillFocusSelectedOnChart","setSkillFocusSelectedOnChart","undefined","searchValue","setSearchValue","searchResults","setSearchResults","activeFilter","setActiveFilter","skillsReviewReady","skill","availableForReview","graphDatas","stats","score","graphLegends","filters","all","review_mode_available","sumKpi","kpi","coursedCompletedData","questionsAnsweredData","learningHoursData","skillChartPaneLegends","focusedSkill","skillChartPanelProps","title","value","legend","icon","iconName","handleOnDotClick","skillRef","handleOpenSkillPicker","handleCloseSkillPicker","handleConfirmSkillPicker","focusSkillList","handleSearch","toLowerCase","includes","handleSearchReset","ReviewTooltipContent","backgroundContainer","container","skillFocusContainer","skillFocusHeader","skillFocusHeaderWrapper","skillFocusHeaderIcon","faSize","wrapperSize","skillFocusHeaderContent","skillFocusHeaderTitle","skillFocusHeaderDescription","length","skillFocusContent","radarContainer","gradient","fill","stroke","percentage","background","label","skillFocusEmpty","img","skillFocusEmptyTitle","skillFocusEmptyDescription","skillListHeader","skillListHeaderIcon","skillListHeaderContent","skillListHeaderTitle","skillListHeaderDescription","infoIconTooltip","tooltip","toolBarContainer","skillFilterContainer","map","index","handleFilterClick","searchWrapper","placeholder","onChange","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","skillListContainer","skillListEmptyContainer","handleReviewSkill","handleExploreSkill","skillCourses","courses","skillQuestions","questionsAnswered","completedCourses","coursesCompleted","arrayOf","objectOf","shape","learningHours"],"sources":["../../../src/template/my-learning/index.js"],"sourcesContent":["import React, {useCallback, useState, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport {getOr, keys, map, fromPairs, pipe, sumBy} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Icon from '../../atom/icon';\nimport Picture from '../../atom/picture';\nimport ButtonLink from '../../atom/button-link';\nimport ToolTip from '../../atom/tooltip';\nimport ReviewNoSkills from '../../organism/review-no-skills';\nimport SearchForm from '../../molecule/search-form';\nimport SkillPickerModal from '../../molecule/skill-picker-modal';\nimport ResponsiveLearningProfileRadarChart from '../../molecule/learning-profile-radar-chart';\nimport SkillsChartSideInformationPanel from '../../molecule/skills-chart-side-information-panel';\nimport LearnerSkillCard from '../../molecule/learner-skill-card';\nimport style from './style.css';\n\nconst ChangeSkillFocusButton = (props, context) => {\n const [hovered, setHovered] = useState(false);\n const {onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n return (\n <div\n data-name=\"button-explore-wrapper\"\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n >\n <ButtonLink\n customStyle={{\n backgroundColor: hovered\n ? primarySkinColor\n : 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={onClick}\n label={translate('change_skill_focus')}\n data-name=\"change-skill-focus-button\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'arrows-rotate',\n backgroundColor: hovered\n ? primarySkinColor\n : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }}\n />\n </div>\n );\n};\n\nChangeSkillFocusButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nChangeSkillFocusButton.propTypes = {\n onClick: PropTypes.func\n};\n\nconst FilterButton = (props, context) => {\n const {active, filter, skillTotal, onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}>\n {skillTotal}\n </span>\n </div>\n ),\n [filter, skillTotal, active]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#FFFFFF',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: filter === translate('review_mode_available') ? '200px' : 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n skillTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst MyLearning = (props, context) => {\n const {\n skills,\n selectedSkills = [],\n skillsInformation,\n skillsLocales,\n learnerFeature = true,\n isLoading,\n onSkillFocusConfirm,\n onReviewSkill,\n onExploreSkill\n } = props;\n const {translate} = context;\n const [open, setOpen] = useState(false);\n const [selectedSkillsList, setSelectedSkillsList] = useState(selectedSkills);\n const [skillFocusSelectedOnChart, setSkillFocusSelectedOnChart] = useState(undefined);\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(skills);\n const [activeFilter, setActiveFilter] = useState('all');\n\n const skillsReviewReady = useMemo(() => {\n return searchResults.filter(skill => skillsInformation[skill].availableForReview);\n }, [searchResults, skillsInformation]);\n\n const graphDatas = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsInformation[skill].stats.score]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsInformation]\n );\n\n const graphLegends = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsLocales[skill]]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsLocales]\n );\n\n const filters = useMemo(() => {\n return {\n all: searchResults,\n review_mode_available: skillsReviewReady\n };\n }, [searchResults, skillsReviewReady]);\n\n const sumKpi = useCallback(\n kpi =>\n skillFocusSelectedOnChart\n ? skillsInformation[skillFocusSelectedOnChart].stats[kpi]\n : sumBy(skill => skillsInformation[skill].stats[kpi], selectedSkillsList),\n [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]\n );\n\n const coursedCompletedData = useMemo(() => sumKpi('coursesCompleted'), [sumKpi]);\n\n const questionsAnsweredData = useMemo(() => sumKpi('questionsAnswered'), [sumKpi]);\n\n const learningHoursData = useMemo(() => sumKpi('learningHours'), [sumKpi]);\n\n const skillChartPaneLegends = useMemo(\n () =>\n translate('on', {\n focusedSkill: skillFocusSelectedOnChart\n ? skillsLocales[skillFocusSelectedOnChart]\n : translate('focused_skills')\n }),\n [translate, skillsLocales, skillFocusSelectedOnChart]\n );\n const skillChartPanelProps = [\n {\n title: translate('skill_chart_side_panel_courses_completed'),\n value: `${coursedCompletedData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'book-open-cover', backgroundColor: '#D9F4F7'}\n },\n {\n title: translate('skill_chart_side_panel_questions_answered'),\n value: `${questionsAnsweredData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'circle-question', backgroundColor: '#FFDCD1'}\n },\n {\n title: translate('skill_chart_side_panel_learning_hours'),\n value: `${learningHoursData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'clock', backgroundColor: '#FAD6DE'}\n }\n ];\n\n const handleOnDotClick = useCallback(\n skillRef => {\n skillRef && setSkillFocusSelectedOnChart(skillRef);\n },\n [setSkillFocusSelectedOnChart]\n );\n const handleOpenSkillPicker = useCallback(() => setOpen(true), [setOpen]);\n const handleCloseSkillPicker = useCallback(() => setOpen(false), [setOpen]);\n const handleConfirmSkillPicker = useCallback(\n focusSkillList => {\n setSelectedSkillsList(focusSkillList);\n onSkillFocusConfirm(focusSkillList);\n setOpen(false);\n },\n [onSkillFocusConfirm, setSelectedSkillsList, setOpen]\n );\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(\n skills.filter(skill => {\n return skillsLocales[skill].toLowerCase().includes(value.toLowerCase());\n })\n );\n },\n [skills, skillsLocales, setSearchValue, setSearchResults]\n );\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(skills);\n }, [skills, setSearchValue, setSearchResults]);\n\n const ReviewTooltipContent = useCallback(\n () => (\n <div>\n <div>\n <b>{translate('review_mode_tooltip_header')}</b>\n </div>\n <p>{translate('review_mode_tooltip_content')}</p>\n <ol>\n <li>{translate('review_mode_tooltip_content_part1')}</li>\n <li>{translate('review_mode_tooltip_content_part2')}</li>\n <li>{translate('review_mode_tooltip_content_part3')}</li>\n <li>{translate('review_mode_tooltip_content_part4')}</li>\n </ol>\n </div>\n ),\n [translate]\n );\n\n return (\n <div className={style.backgroundContainer}>\n <div className={style.container}>\n <SkillPickerModal\n skills={skills}\n selectedSkills={selectedSkillsList}\n skillsLocales={skillsLocales}\n isOpen={open}\n isLoading={isLoading}\n onCancel={handleCloseSkillPicker}\n onConfirm={handleConfirmSkillPicker}\n onClose={handleCloseSkillPicker}\n />\n {learnerFeature ? (\n <div className={style.skillFocusContainer}>\n <header className={style.skillFocusHeader}>\n <div className={style.skillFocusHeaderWrapper}>\n <div className={style.skillFocusHeaderIcon}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor=\"#DDD1FF\"\n borderRadius=\"12px\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillFocusHeaderContent}>\n <div className={style.skillFocusHeaderTitle}>{translate('skill_focus')}</div>\n <div className={style.skillFocusHeaderDescription}>\n {translate('skills_focus_description')}\n </div>\n </div>\n </div>\n {selectedSkillsList.length > 0 ? (\n <ChangeSkillFocusButton onClick={handleOpenSkillPicker} />\n ) : null}\n </header>\n {selectedSkillsList.length > 0 ? (\n <div className={style.skillFocusContent}>\n <div className={style.radarContainer}>\n <ResponsiveLearningProfileRadarChart\n totalDataset={1}\n height={424}\n width={680}\n data={graphDatas}\n legend={graphLegends}\n onClick={handleOnDotClick}\n colors={[\n {\n gradient: {\n fill: ['#0062ffff', '#8000ff85'],\n stroke: ['#0062ffff', '#8000FF']\n },\n percentage: {\n color: '#0061FF',\n background:\n 'linear-gradient(180deg, rgba(0, 97, 255, 0.10) 0%, rgba(147, 107, 255, 0.10) 100%)'\n },\n label: {\n color: '#020202ff'\n }\n }\n ]}\n />\n </div>\n <SkillsChartSideInformationPanel sidePanelItems={skillChartPanelProps} />\n </div>\n ) : (\n <div className={style.skillFocusEmpty}>\n <Picture\n className={style.img}\n src=\"https://static.coorpacademy.com/assets/images/mylearning-no-skill-selected-placeholder.svg\"\n alt=\"demo\"\n />\n <div className={style.skillFocusEmptyTitle}>\n {translate('skill_focus_empty_title')}\n </div>\n <div className={style.skillFocusEmptyDescription}>\n {translate('skills_focus_empty_description')}\n </div>\n <ButtonLink\n label={translate('choose_your_focus')}\n type=\"primary\"\n customStyle={{width: '168px'}}\n onClick={handleOpenSkillPicker}\n />\n </div>\n )}\n </div>\n ) : null}\n <header className={style.skillListHeader}>\n <div className={style.skillListHeaderIcon}>\n <Icon\n iconName=\"dumbbell\"\n backgroundColor=\"#FFF9D1\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillListHeaderContent}>\n <div className={style.skillListHeaderTitle}>{translate('skills')}</div>\n <div className={style.skillListHeaderDescription}>\n {translate('Explore or review skills')}\n <ToolTip\n fontSize={12}\n iconContainerClassName={style.infoIconTooltip}\n tooltipClassName={style.tooltip}\n TooltipContent={ReviewTooltipContent}\n closeToolTipInformationTextAriaLabel={translate(\n 'Press the escape key to close the information text'\n )}\n />\n </div>\n </div>\n </header>\n <div className={style.toolBarContainer}>\n <div className={style.skillFilterContainer}>\n {keys(filters).map((filter, index) => {\n function handleFilterClick() {\n setActiveFilter(filter);\n }\n\n return (\n <div key={index}>\n <FilterButton\n active={activeFilter === filter}\n filter={translate(filter)}\n skillTotal={filters[filter].length}\n onClick={handleFilterClick}\n />\n </div>\n );\n })}\n </div>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n </div>\n {searchValue && searchResults.length === 0 ? (\n <div className={style.emptySearchResultContainer}>\n <div className={style.emptySearchResultTitle}>\n {translate('empty_search_result_title', {searchValue})}\n </div>\n <div className={style.emptySearchResultDescription}>\n {translate('empty_search_result_description')}\n </div>\n <div className={style.emptySearchResultClearSearch} onClick={handleSearchReset}>\n {translate('empty_search_result_clear_search')}\n </div>\n </div>\n ) : (\n <div className={style.skillListContainer}>\n {activeFilter === 'review_mode_available' && filters[activeFilter].length === 0 ? (\n <div className={style.skillListEmptyContainer}>\n <ReviewNoSkills\n titleNoSkills={translate('review_skill_epmty')}\n textNoSkills={translate('review_skill_epmty_description')}\n iconSkillAriaLabel={translate('review_skill_epmty')}\n directionReverse\n />\n </div>\n ) : (\n filters[activeFilter].map((skill, index) => {\n function handleReviewSkill() {\n onReviewSkill(skill);\n }\n function handleExploreSkill() {\n onExploreSkill(skill);\n }\n return (\n <div key={index}>\n <LearnerSkillCard\n skillTitle={skillsLocales[skill]}\n focus={selectedSkills.includes(skill)}\n metrics={{\n skillCourses: skillsInformation[skill].stats.courses,\n skillQuestions: skillsInformation[skill].stats.questionsAnswered,\n completedCourses: skillsInformation[skill].stats.coursesCompleted\n }}\n review={skillsInformation[skill].availableForReview}\n onReviewClick={handleReviewSkill}\n onExploreClick={handleExploreSkill}\n />\n </div>\n );\n })\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nMyLearning.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nMyLearning.propTypes = {\n skills: PropTypes.arrayOf(PropTypes.string),\n selectedSkills: PropTypes.arrayOf(PropTypes.string),\n skillsInformation: PropTypes.objectOf(\n PropTypes.shape({\n availableForReview: PropTypes.bool,\n stats: PropTypes.shape({\n score: PropTypes.number,\n courses: PropTypes.number,\n coursesCompleted: PropTypes.number,\n questionsAnswered: PropTypes.number,\n learningHours: PropTypes.number\n })\n })\n ),\n skillsLocales: PropTypes.objectOf(PropTypes.string),\n learnerFeature: PropTypes.bool,\n isLoading: PropTypes.bool,\n onSkillFocusConfirm: PropTypes.func,\n onReviewSkill: PropTypes.func,\n onExploreSkill: PropTypes.func\n};\n\nexport default MyLearning;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","useState","useMemo","PropTypes","convert","Provider","Icon","Picture","ButtonLink","ToolTip","ReviewNoSkills","SearchForm","SkillPickerModal","ResponsiveLearningProfileRadarChart","SkillsChartSideInformationPanel","LearnerSkillCard","searchValueIncluded","style","ChangeSkillFocusButton","props","context","hovered","setHovered","onClick","skin","translate","primarySkinColor","handleMouseOver","handleMouseLeave","backgroundColor","color","transition","position","faIcon","name","size","contextTypes","childContextTypes","propTypes","func","FilterButton","active","filter","skillTotal","Content","skillFilterNumber","skillFilterNumberInActive","buttonProps","customStyle","width","content","bool","string","number","MyLearning","skills","selectedSkills","skillsInformation","skillsLocales","learnerFeature","isLoading","onSkillFocusConfirm","onReviewSkill","onExploreSkill","open","setOpen","selectedSkillsList","setSelectedSkillsList","skillFocusSelectedOnChart","setSkillFocusSelectedOnChart","undefined","searchValue","setSearchValue","searchResults","setSearchResults","activeFilter","setActiveFilter","skillsReviewReady","skill","availableForReview","graphDatas","stats","score","graphLegends","filters","all","review","sumKpi","kpi","coursedCompletedData","questionsAnsweredData","learningHoursData","skillChartPaneLegends","focusedSkill","skillChartPanelProps","title","value","legend","icon","iconName","handleOnDotClick","skillRef","handleOpenSkillPicker","handleCloseSkillPicker","handleConfirmSkillPicker","focusSkillList","handleSearch","handleSearchReset","ReviewTooltipContent","backgroundContainer","container","skillFocusContainer","skillFocusHeader","skillFocusHeaderWrapper","skillFocusHeaderIcon","faSize","wrapperSize","skillFocusHeaderContent","skillFocusHeaderTitle","skillFocusHeaderDescription","length","skillFocusContent","radarContainer","gradient","fill","stroke","percentage","background","label","skillFocusEmpty","img","skillFocusEmptyTitle","skillFocusEmptyDescription","skillListHeader","skillListHeaderIcon","skillListHeaderContent","skillListHeaderTitle","skillListHeaderDescription","infoIconTooltip","tooltip","toolBarContainer","skillFilterContainer","map","index","handleFilterClick","searchWrapper","placeholder","onChange","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","skillListContainer","skillListEmptyContainer","handleReviewSkill","handleExploreSkill","includes","skillCourses","courses","skillQuestions","questionsAnswered","completedCourses","coursesCompleted","arrayOf","objectOf","shape","learningHours"],"sources":["../../../src/template/my-learning/index.js"],"sourcesContent":["import React, {useCallback, useState, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport {getOr, keys, map, fromPairs, pipe, sumBy} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Icon from '../../atom/icon';\nimport Picture from '../../atom/picture';\nimport ButtonLink from '../../atom/button-link';\nimport ToolTip from '../../atom/tooltip';\nimport ReviewNoSkills from '../../organism/review-no-skills';\nimport SearchForm from '../../molecule/search-form';\nimport SkillPickerModal from '../../molecule/skill-picker-modal';\nimport ResponsiveLearningProfileRadarChart from '../../molecule/learning-profile-radar-chart';\nimport SkillsChartSideInformationPanel from '../../molecule/skills-chart-side-information-panel';\nimport LearnerSkillCard from '../../molecule/learner-skill-card';\nimport searchValueIncluded from '../../util/search-value-included';\nimport style from './style.css';\n\nconst ChangeSkillFocusButton = (props, context) => {\n const [hovered, setHovered] = useState(false);\n const {onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n return (\n <div\n data-name=\"button-explore-wrapper\"\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n >\n <ButtonLink\n customStyle={{\n backgroundColor: hovered\n ? primarySkinColor\n : 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={onClick}\n label={translate('change_skill_focus')}\n data-name=\"change-skill-focus-button\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'arrows-rotate',\n backgroundColor: hovered\n ? primarySkinColor\n : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }}\n />\n </div>\n );\n};\n\nChangeSkillFocusButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nChangeSkillFocusButton.propTypes = {\n onClick: PropTypes.func\n};\n\nconst FilterButton = (props, context) => {\n const {active, filter, skillTotal, onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}>\n {skillTotal}\n </span>\n </div>\n ),\n [filter, skillTotal, active]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#FFFFFF',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: filter === translate('review_mode_available') ? '200px' : 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n skillTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst MyLearning = (props, context) => {\n const {\n skills,\n selectedSkills = [],\n skillsInformation,\n skillsLocales,\n learnerFeature = true,\n isLoading,\n onSkillFocusConfirm,\n onReviewSkill,\n onExploreSkill\n } = props;\n const {translate} = context;\n const [open, setOpen] = useState(false);\n const [selectedSkillsList, setSelectedSkillsList] = useState(selectedSkills);\n const [skillFocusSelectedOnChart, setSkillFocusSelectedOnChart] = useState(undefined);\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(skills);\n const [activeFilter, setActiveFilter] = useState('all');\n\n const skillsReviewReady = useMemo(() => {\n return searchResults.filter(skill => skillsInformation[skill].availableForReview);\n }, [searchResults, skillsInformation]);\n\n const graphDatas = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsInformation[skill].stats.score]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsInformation]\n );\n\n const graphLegends = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsLocales[skill]]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsLocales]\n );\n\n const filters = useMemo(() => {\n return {\n all: searchResults,\n review: skillsReviewReady\n };\n }, [searchResults, skillsReviewReady]);\n\n const sumKpi = useCallback(\n kpi =>\n skillFocusSelectedOnChart\n ? skillsInformation[skillFocusSelectedOnChart].stats[kpi]\n : sumBy(skill => skillsInformation[skill].stats[kpi], selectedSkillsList),\n [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]\n );\n\n const coursedCompletedData = useMemo(() => sumKpi('coursesCompleted'), [sumKpi]);\n\n const questionsAnsweredData = useMemo(() => sumKpi('questionsAnswered'), [sumKpi]);\n\n const learningHoursData = useMemo(() => sumKpi('learningHours'), [sumKpi]);\n\n const skillChartPaneLegends = useMemo(\n () =>\n translate('skill_scope_specifier', {\n focusedSkill: skillFocusSelectedOnChart\n ? skillsLocales[skillFocusSelectedOnChart]\n : translate('focused_skills')\n }),\n [translate, skillsLocales, skillFocusSelectedOnChart]\n );\n const skillChartPanelProps = [\n {\n title: translate('skill_chart_side_panel_courses_completed'),\n value: `${coursedCompletedData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'book-open-cover', backgroundColor: '#D9F4F7'}\n },\n {\n title: translate('skill_chart_side_panel_questions_answered'),\n value: `${questionsAnsweredData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'circle-question', backgroundColor: '#FFDCD1'}\n },\n {\n title: translate('skill_chart_side_panel_learning_hours'),\n value: `${learningHoursData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'clock', backgroundColor: '#FAD6DE'}\n }\n ];\n\n const handleOnDotClick = useCallback(\n skillRef => {\n skillRef && setSkillFocusSelectedOnChart(skillRef);\n },\n [setSkillFocusSelectedOnChart]\n );\n const handleOpenSkillPicker = useCallback(() => setOpen(true), [setOpen]);\n const handleCloseSkillPicker = useCallback(() => setOpen(false), [setOpen]);\n const handleConfirmSkillPicker = useCallback(\n focusSkillList => {\n setSelectedSkillsList(focusSkillList);\n onSkillFocusConfirm(focusSkillList);\n setOpen(false);\n },\n [onSkillFocusConfirm, setSelectedSkillsList, setOpen]\n );\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(skills.filter(skill => searchValueIncluded(skillsLocales[skill], value)));\n },\n [skills, skillsLocales, setSearchValue, setSearchResults]\n );\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(skills);\n }, [skills, setSearchValue, setSearchResults]);\n\n const ReviewTooltipContent = useCallback(\n () => (\n <div>\n <div>\n <b>{translate('review_mode_tooltip_header')}</b>\n </div>\n <p>{translate('review_mode_tooltip_content')}</p>\n <ol>\n <li>{translate('review_mode_tooltip_content_part1')}</li>\n <li>{translate('review_mode_tooltip_content_part2')}</li>\n <li>{translate('review_mode_tooltip_content_part3')}</li>\n <li>{translate('review_mode_tooltip_content_part4')}</li>\n </ol>\n </div>\n ),\n [translate]\n );\n\n return (\n <div className={style.backgroundContainer}>\n <div className={style.container}>\n <SkillPickerModal\n skills={skills}\n selectedSkills={selectedSkillsList}\n skillsLocales={skillsLocales}\n isOpen={open}\n isLoading={isLoading}\n onCancel={handleCloseSkillPicker}\n onConfirm={handleConfirmSkillPicker}\n onClose={handleCloseSkillPicker}\n />\n {learnerFeature ? (\n <div className={style.skillFocusContainer}>\n <header className={style.skillFocusHeader}>\n <div className={style.skillFocusHeaderWrapper}>\n <div className={style.skillFocusHeaderIcon}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor=\"#DDD1FF\"\n borderRadius=\"12px\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillFocusHeaderContent}>\n <div className={style.skillFocusHeaderTitle}>{translate('skill_focus')}</div>\n <div className={style.skillFocusHeaderDescription}>\n {translate('skills_focus_description')}\n </div>\n </div>\n </div>\n {selectedSkillsList.length > 0 ? (\n <ChangeSkillFocusButton onClick={handleOpenSkillPicker} />\n ) : null}\n </header>\n {selectedSkillsList.length > 0 ? (\n <div className={style.skillFocusContent}>\n <div className={style.radarContainer}>\n <ResponsiveLearningProfileRadarChart\n totalDataset={1}\n height={424}\n width={680}\n data={graphDatas}\n legend={graphLegends}\n onClick={handleOnDotClick}\n colors={[\n {\n gradient: {\n fill: ['#0062ffff', '#8000ff85'],\n stroke: ['#0062ffff', '#8000FF']\n },\n percentage: {\n color: '#0061FF',\n background:\n 'linear-gradient(180deg, rgba(0, 97, 255, 0.10) 0%, rgba(147, 107, 255, 0.10) 100%)'\n },\n label: {\n color: '#020202ff'\n }\n }\n ]}\n />\n </div>\n <SkillsChartSideInformationPanel sidePanelItems={skillChartPanelProps} />\n </div>\n ) : (\n <div className={style.skillFocusEmpty}>\n <Picture\n className={style.img}\n src=\"https://static.coorpacademy.com/assets/images/mylearning-no-skill-selected-placeholder.svg\"\n alt=\"demo\"\n />\n <div className={style.skillFocusEmptyTitle}>\n {translate('skill_focus_empty_title')}\n </div>\n <div className={style.skillFocusEmptyDescription}>\n {translate('skills_focus_empty_description')}\n </div>\n <ButtonLink\n label={translate('choose_your_focus')}\n type=\"primary\"\n customStyle={{width: '168px'}}\n onClick={handleOpenSkillPicker}\n />\n </div>\n )}\n </div>\n ) : null}\n <header className={style.skillListHeader}>\n <div className={style.skillListHeaderIcon}>\n <Icon\n iconName=\"dumbbell\"\n backgroundColor=\"#FFF9D1\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillListHeaderContent}>\n <div className={style.skillListHeaderTitle}>{translate('skills_section_title')}</div>\n <div className={style.skillListHeaderDescription}>\n {translate('skills_section_description')}\n <ToolTip\n fontSize={12}\n iconContainerClassName={style.infoIconTooltip}\n tooltipClassName={style.tooltip}\n TooltipContent={ReviewTooltipContent}\n closeToolTipInformationTextAriaLabel={translate(\n 'Press the escape key to close the information text'\n )}\n />\n </div>\n </div>\n </header>\n <div className={style.toolBarContainer}>\n <div className={style.skillFilterContainer}>\n {keys(filters).map((filter, index) => {\n function handleFilterClick() {\n setActiveFilter(filter);\n }\n\n return (\n <div key={index}>\n <FilterButton\n active={activeFilter === filter}\n filter={\n filter === 'all' ? translate('all') : translate('review_mode_available')\n }\n skillTotal={filters[filter].length}\n onClick={handleFilterClick}\n />\n </div>\n );\n })}\n </div>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n </div>\n {searchValue && searchResults.length === 0 ? (\n <div className={style.emptySearchResultContainer}>\n <div className={style.emptySearchResultTitle}>\n {translate('empty_search_result_title', {searchValue})}\n </div>\n <div className={style.emptySearchResultDescription}>\n {translate('empty_search_result_description')}\n </div>\n <div className={style.emptySearchResultClearSearch} onClick={handleSearchReset}>\n {translate('empty_search_result_clear_search')}\n </div>\n </div>\n ) : (\n <div className={style.skillListContainer}>\n {activeFilter === 'review_mode_available' && filters[activeFilter].length === 0 ? (\n <div className={style.skillListEmptyContainer}>\n <ReviewNoSkills\n titleNoSkills={translate('review_skill_epmty')}\n textNoSkills={translate('review_skill_epmty_description')}\n iconSkillAriaLabel={translate('review_skill_epmty')}\n imagePosition=\"top\"\n />\n </div>\n ) : (\n filters[activeFilter].map((skill, index) => {\n function handleReviewSkill() {\n onReviewSkill(skill);\n }\n function handleExploreSkill() {\n onExploreSkill(skill);\n }\n return (\n <div key={index}>\n <LearnerSkillCard\n skillTitle={skillsLocales[skill]}\n focus={selectedSkills.includes(skill)}\n metrics={{\n skillCourses: skillsInformation[skill].stats.courses,\n skillQuestions: skillsInformation[skill].stats.questionsAnswered,\n completedCourses: skillsInformation[skill].stats.coursesCompleted\n }}\n review={skillsInformation[skill].availableForReview}\n onReviewClick={handleReviewSkill}\n onExploreClick={handleExploreSkill}\n />\n </div>\n );\n })\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nMyLearning.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nMyLearning.propTypes = {\n skills: PropTypes.arrayOf(PropTypes.string),\n selectedSkills: PropTypes.arrayOf(PropTypes.string),\n skillsInformation: PropTypes.objectOf(\n PropTypes.shape({\n availableForReview: PropTypes.bool,\n stats: PropTypes.shape({\n score: PropTypes.number,\n courses: PropTypes.number,\n coursesCompleted: PropTypes.number,\n questionsAnswered: PropTypes.number,\n learningHours: PropTypes.number\n })\n })\n ),\n skillsLocales: PropTypes.objectOf(PropTypes.string),\n learnerFeature: PropTypes.bool,\n isLoading: PropTypes.bool,\n onSkillFocusConfirm: PropTypes.func,\n onReviewSkill: PropTypes.func,\n onExploreSkill: PropTypes.func\n};\n\nexport default MyLearning;\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export default searchValueIncluded;
2
+ declare function searchValueIncluded(skill: any, value: any): boolean;
3
+ //# sourceMappingURL=search-value-included.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-value-included.d.ts","sourceRoot":"","sources":["../../src/util/search-value-included.js"],"names":[],"mappings":";AAEA,sEAEC"}
@@ -0,0 +1,10 @@
1
+ import _pipe from "lodash/fp/pipe";
2
+ import _toLower from "lodash/fp/toLower";
3
+ import _includes from "lodash/fp/includes";
4
+
5
+ const searchValueIncluded = (skill, value) => {
6
+ return _pipe(_toLower, _includes(_toLower(value)))(skill);
7
+ };
8
+
9
+ export default searchValueIncluded;
10
+ //# sourceMappingURL=search-value-included.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-value-included.js","names":["searchValueIncluded","skill","value"],"sources":["../../src/util/search-value-included.js"],"sourcesContent":["import {includes, toLower, pipe} from 'lodash/fp';\n\nconst searchValueIncluded = (skill, value) => {\n return pipe(toLower, includes(toLower(value)))(skill);\n};\n\nexport default searchValueIncluded;\n"],"mappings":";;;;AAEA,MAAMA,mBAAmB,GAAG,CAACC,KAAD,EAAQC,KAAR,KAAkB;EAC5C,OAAO,gBAAc,UAAS,SAAQA,KAAR,CAAT,CAAd,EAAwCD,KAAxC,CAAP;AACD,CAFD;;AAIA,eAAeD,mBAAf"}
@@ -1,9 +1,9 @@
1
1
  export default ReviewNoSkills;
2
- declare function ReviewNoSkills({ titleNoSkills, textNoSkills, iconSkillAriaLabel, directionReverse }: {
2
+ declare function ReviewNoSkills({ titleNoSkills, textNoSkills, iconSkillAriaLabel, imagePosition }: {
3
3
  titleNoSkills: any;
4
4
  textNoSkills: any;
5
5
  iconSkillAriaLabel: any;
6
- directionReverse?: boolean | undefined;
6
+ imagePosition?: string | undefined;
7
7
  }): JSX.Element;
8
8
  declare namespace ReviewNoSkills {
9
9
  export { propTypes };
@@ -17,18 +17,18 @@ const ReviewNoSkills = ({
17
17
  titleNoSkills,
18
18
  textNoSkills,
19
19
  iconSkillAriaLabel,
20
- directionReverse = false
20
+ imagePosition = 'bottom'
21
21
  }) => {
22
22
  return /*#__PURE__*/_react.default.createElement("div", {
23
23
  className: _style.default.noSkillsContainer
24
- }, directionReverse ? /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyEmptyStateHomeRevision, {
24
+ }, imagePosition === 'top' ? /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyEmptyStateHomeRevision, {
25
25
  className: _style.default.imgNoSkillsReverse,
26
26
  "aria-label": iconSkillAriaLabel
27
27
  }) : null, /*#__PURE__*/_react.default.createElement("div", {
28
28
  className: _style.default.titleNoSkills
29
29
  }, titleNoSkills), /*#__PURE__*/_react.default.createElement("div", {
30
30
  className: _style.default.textNoSkills
31
- }, " ", textNoSkills), !directionReverse ? /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyEmptyStateHomeRevision, {
31
+ }, " ", textNoSkills), imagePosition === 'bottom' ? /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyEmptyStateHomeRevision, {
32
32
  className: _style.default.imgNoSkills,
33
33
  "aria-label": iconSkillAriaLabel
34
34
  }) : null);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ReviewNoSkills","titleNoSkills","textNoSkills","iconSkillAriaLabel","directionReverse","style","noSkillsContainer","imgNoSkillsReverse","imgNoSkills","propTypes"],"sources":["../../../src/organism/review-no-skills/index.js"],"sourcesContent":["import React from 'react';\nimport {NovaCompositionCoorpacademyEmptyStateHomeRevision as EmptyStateHomeRevision} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ReviewNoSkills = ({\n titleNoSkills,\n textNoSkills,\n iconSkillAriaLabel,\n directionReverse = false\n}) => {\n return (\n <div className={style.noSkillsContainer}>\n {directionReverse ? (\n <EmptyStateHomeRevision\n className={style.imgNoSkillsReverse}\n aria-label={iconSkillAriaLabel}\n />\n ) : null}\n <div className={style.titleNoSkills}>{titleNoSkills}</div>\n <div className={style.textNoSkills}> {textNoSkills}</div>\n {!directionReverse ? (\n <EmptyStateHomeRevision className={style.imgNoSkills} aria-label={iconSkillAriaLabel} />\n ) : null}\n </div>\n );\n};\n\nReviewNoSkills.propTypes = propTypes;\n\nexport default ReviewNoSkills;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,cAAc,GAAG,CAAC;EACtBC,aADsB;EAEtBC,YAFsB;EAGtBC,kBAHsB;EAItBC,gBAAgB,GAAG;AAJG,CAAD,KAKjB;EACJ,oBACE;IAAK,SAAS,EAAEC,cAAA,CAAMC;EAAtB,GACGF,gBAAgB,gBACf,6BAAC,4DAAD;IACE,SAAS,EAAEC,cAAA,CAAME,kBADnB;IAEE,cAAYJ;EAFd,EADe,GAKb,IANN,eAOE;IAAK,SAAS,EAAEE,cAAA,CAAMJ;EAAtB,GAAsCA,aAAtC,CAPF,eAQE;IAAK,SAAS,EAAEI,cAAA,CAAMH;EAAtB,QAAsCA,YAAtC,CARF,EASG,CAACE,gBAAD,gBACC,6BAAC,4DAAD;IAAwB,SAAS,EAAEC,cAAA,CAAMG,WAAzC;IAAsD,cAAYL;EAAlE,EADD,GAEG,IAXN,CADF;AAeD,CArBD;;AAuBAH,cAAc,CAACS,SAAf,2CAA2BA,kBAA3B;eAEeT,c"}
1
+ {"version":3,"file":"index.js","names":["ReviewNoSkills","titleNoSkills","textNoSkills","iconSkillAriaLabel","imagePosition","style","noSkillsContainer","imgNoSkillsReverse","imgNoSkills","propTypes"],"sources":["../../../src/organism/review-no-skills/index.js"],"sourcesContent":["import React from 'react';\nimport {NovaCompositionCoorpacademyEmptyStateHomeRevision as EmptyStateHomeRevision} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ReviewNoSkills = ({\n titleNoSkills,\n textNoSkills,\n iconSkillAriaLabel,\n imagePosition = 'bottom'\n}) => {\n return (\n <div className={style.noSkillsContainer}>\n {imagePosition === 'top' ? (\n <EmptyStateHomeRevision\n className={style.imgNoSkillsReverse}\n aria-label={iconSkillAriaLabel}\n />\n ) : null}\n <div className={style.titleNoSkills}>{titleNoSkills}</div>\n <div className={style.textNoSkills}> {textNoSkills}</div>\n {imagePosition === 'bottom' ? (\n <EmptyStateHomeRevision className={style.imgNoSkills} aria-label={iconSkillAriaLabel} />\n ) : null}\n </div>\n );\n};\n\nReviewNoSkills.propTypes = propTypes;\n\nexport default ReviewNoSkills;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,cAAc,GAAG,CAAC;EACtBC,aADsB;EAEtBC,YAFsB;EAGtBC,kBAHsB;EAItBC,aAAa,GAAG;AAJM,CAAD,KAKjB;EACJ,oBACE;IAAK,SAAS,EAAEC,cAAA,CAAMC;EAAtB,GACGF,aAAa,KAAK,KAAlB,gBACC,6BAAC,4DAAD;IACE,SAAS,EAAEC,cAAA,CAAME,kBADnB;IAEE,cAAYJ;EAFd,EADD,GAKG,IANN,eAOE;IAAK,SAAS,EAAEE,cAAA,CAAMJ;EAAtB,GAAsCA,aAAtC,CAPF,eAQE;IAAK,SAAS,EAAEI,cAAA,CAAMH;EAAtB,QAAsCA,YAAtC,CARF,EASGE,aAAa,KAAK,QAAlB,gBACC,6BAAC,4DAAD;IAAwB,SAAS,EAAEC,cAAA,CAAMG,WAAzC;IAAsD,cAAYL;EAAlE,EADD,GAEG,IAXN,CADF;AAeD,CArBD;;AAuBAH,cAAc,CAACS,SAAf,2CAA2BA,kBAA3B;eAEeT,c"}
@@ -3,13 +3,13 @@ declare const propTypes: {
3
3
  titleNoSkills: PropTypes.Validator<string>;
4
4
  textNoSkills: PropTypes.Validator<string>;
5
5
  iconSkillAriaLabel: PropTypes.Validator<string>;
6
- directionReverse: PropTypes.Requireable<boolean>;
6
+ imagePosition: PropTypes.Requireable<string>;
7
7
  };
8
8
  export default propTypes;
9
9
  export declare type NoSkillsProps = {
10
10
  titleNoSkills: string;
11
11
  textNoSkills: string;
12
12
  iconSkillAriaLabel: string;
13
- directionReverse?: boolean;
13
+ imagePosition?: 'top' | 'bottom';
14
14
  };
15
15
  //# sourceMappingURL=prop-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/organism/review-no-skills/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,QAAA,MAAM,SAAS;;;;;CAKd,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,oBAAY,aAAa,GAAG;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC"}
1
+ {"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/organism/review-no-skills/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,QAAA,MAAM,SAAS;;;;;CAKd,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,oBAAY,aAAa,GAAG;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CAClC,CAAC"}
@@ -11,7 +11,7 @@ const propTypes = {
11
11
  titleNoSkills: _propTypes.default.string.isRequired,
12
12
  textNoSkills: _propTypes.default.string.isRequired,
13
13
  iconSkillAriaLabel: _propTypes.default.string.isRequired,
14
- directionReverse: _propTypes.default.bool
14
+ imagePosition: _propTypes.default.oneOf(['top', 'bottom'])
15
15
  };
16
16
  var _default = propTypes;
17
17
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"prop-types.js","names":["propTypes","titleNoSkills","PropTypes","string","isRequired","textNoSkills","iconSkillAriaLabel","directionReverse","bool"],"sources":["../../../src/organism/review-no-skills/prop-types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nconst propTypes = {\n titleNoSkills: PropTypes.string.isRequired,\n textNoSkills: PropTypes.string.isRequired,\n iconSkillAriaLabel: PropTypes.string.isRequired,\n directionReverse: PropTypes.bool\n};\n\nexport default propTypes;\n\nexport type NoSkillsProps = {\n titleNoSkills: string;\n textNoSkills: string;\n iconSkillAriaLabel: string;\n directionReverse?: boolean;\n};\n"],"mappings":";;;;;AAAA;;;;AAEA,MAAMA,SAAS,GAAG;EAChBC,aAAa,EAAEC,kBAAA,CAAUC,MAAV,CAAiBC,UADhB;EAEhBC,YAAY,EAAEH,kBAAA,CAAUC,MAAV,CAAiBC,UAFf;EAGhBE,kBAAkB,EAAEJ,kBAAA,CAAUC,MAAV,CAAiBC,UAHrB;EAIhBG,gBAAgB,EAAEL,kBAAA,CAAUM;AAJZ,CAAlB;eAOeR,S"}
1
+ {"version":3,"file":"prop-types.js","names":["propTypes","titleNoSkills","PropTypes","string","isRequired","textNoSkills","iconSkillAriaLabel","imagePosition","oneOf"],"sources":["../../../src/organism/review-no-skills/prop-types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nconst propTypes = {\n titleNoSkills: PropTypes.string.isRequired,\n textNoSkills: PropTypes.string.isRequired,\n iconSkillAriaLabel: PropTypes.string.isRequired,\n imagePosition: PropTypes.oneOf(['top', 'bottom'])\n};\n\nexport default propTypes;\n\nexport type NoSkillsProps = {\n titleNoSkills: string;\n textNoSkills: string;\n iconSkillAriaLabel: string;\n imagePosition?: 'top' | 'bottom';\n};\n"],"mappings":";;;;;AAAA;;;;AAEA,MAAMA,SAAS,GAAG;EAChBC,aAAa,EAAEC,kBAAA,CAAUC,MAAV,CAAiBC,UADhB;EAEhBC,YAAY,EAAEH,kBAAA,CAAUC,MAAV,CAAiBC,UAFf;EAGhBE,kBAAkB,EAAEJ,kBAAA,CAAUC,MAAV,CAAiBC,UAHrB;EAIhBG,aAAa,EAAEL,kBAAA,CAAUM,KAAV,CAAgB,CAAC,KAAD,EAAQ,QAAR,CAAhB;AAJC,CAAlB;eAOeR,S"}
@@ -47,10 +47,9 @@
47
47
  }
48
48
 
49
49
  .imgNoSkillsReverse {
50
- height: 361px;
50
+ composes: imgNoSkills;
51
51
  margin-top: 0px;
52
52
  margin-bottom: 8px;
53
- width: 361px;
54
53
  }
55
54
 
56
55
  @media tablet {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AA+GA,mEAoVC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AAgHA,mEAkVC"}
@@ -43,6 +43,8 @@ var _skillsChartSideInformationPanel = _interopRequireDefault(require("../../mol
43
43
 
44
44
  var _learnerSkillCard = _interopRequireDefault(require("../../molecule/learner-skill-card"));
45
45
 
46
+ var _searchValueIncluded = _interopRequireDefault(require("../../util/search-value-included"));
47
+
46
48
  var _style = _interopRequireDefault(require("./style.css"));
47
49
 
48
50
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -163,14 +165,14 @@ const MyLearning = (props, context) => {
163
165
  const filters = (0, _react.useMemo)(() => {
164
166
  return {
165
167
  all: searchResults,
166
- review_mode_available: skillsReviewReady
168
+ review: skillsReviewReady
167
169
  };
168
170
  }, [searchResults, skillsReviewReady]);
169
171
  const sumKpi = (0, _react.useCallback)(kpi => skillFocusSelectedOnChart ? skillsInformation[skillFocusSelectedOnChart].stats[kpi] : (0, _sumBy2.default)(skill => skillsInformation[skill].stats[kpi], selectedSkillsList), [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]);
170
172
  const coursedCompletedData = (0, _react.useMemo)(() => sumKpi('coursesCompleted'), [sumKpi]);
171
173
  const questionsAnsweredData = (0, _react.useMemo)(() => sumKpi('questionsAnswered'), [sumKpi]);
172
174
  const learningHoursData = (0, _react.useMemo)(() => sumKpi('learningHours'), [sumKpi]);
173
- const skillChartPaneLegends = (0, _react.useMemo)(() => translate('on', {
175
+ const skillChartPaneLegends = (0, _react.useMemo)(() => translate('skill_scope_specifier', {
174
176
  focusedSkill: skillFocusSelectedOnChart ? skillsLocales[skillFocusSelectedOnChart] : translate('focused_skills')
175
177
  }), [translate, skillsLocales, skillFocusSelectedOnChart]);
176
178
  const skillChartPanelProps = [{
@@ -210,9 +212,7 @@ const MyLearning = (props, context) => {
210
212
  }, [onSkillFocusConfirm, setSelectedSkillsList, setOpen]);
211
213
  const handleSearch = (0, _react.useCallback)(value => {
212
214
  setSearchValue(value);
213
- setSearchResults(skills.filter(skill => {
214
- return skillsLocales[skill].toLowerCase().includes(value.toLowerCase());
215
- }));
215
+ setSearchResults(skills.filter(skill => (0, _searchValueIncluded.default)(skillsLocales[skill], value)));
216
216
  }, [skills, skillsLocales, setSearchValue, setSearchResults]);
217
217
  const handleSearchReset = (0, _react.useCallback)(() => {
218
218
  setSearchValue('');
@@ -314,9 +314,9 @@ const MyLearning = (props, context) => {
314
314
  className: _style.default.skillListHeaderContent
315
315
  }, /*#__PURE__*/_react.default.createElement("div", {
316
316
  className: _style.default.skillListHeaderTitle
317
- }, translate('skills')), /*#__PURE__*/_react.default.createElement("div", {
317
+ }, translate('skills_section_title')), /*#__PURE__*/_react.default.createElement("div", {
318
318
  className: _style.default.skillListHeaderDescription
319
- }, translate('Explore or review skills'), /*#__PURE__*/_react.default.createElement(_tooltip.default, {
319
+ }, translate('skills_section_description'), /*#__PURE__*/_react.default.createElement(_tooltip.default, {
320
320
  fontSize: 12,
321
321
  iconContainerClassName: _style.default.infoIconTooltip,
322
322
  tooltipClassName: _style.default.tooltip,
@@ -335,7 +335,7 @@ const MyLearning = (props, context) => {
335
335
  key: index
336
336
  }, /*#__PURE__*/_react.default.createElement(FilterButton, {
337
337
  active: activeFilter === filter,
338
- filter: translate(filter),
338
+ filter: filter === 'all' ? translate('all') : translate('review_mode_available'),
339
339
  skillTotal: filters[filter].length,
340
340
  onClick: handleFilterClick
341
341
  }));
@@ -367,7 +367,7 @@ const MyLearning = (props, context) => {
367
367
  titleNoSkills: translate('review_skill_epmty'),
368
368
  textNoSkills: translate('review_skill_epmty_description'),
369
369
  iconSkillAriaLabel: translate('review_skill_epmty'),
370
- directionReverse: true
370
+ imagePosition: "top"
371
371
  })) : filters[activeFilter].map((skill, index) => {
372
372
  function handleReviewSkill() {
373
373
  onReviewSkill(skill);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ChangeSkillFocusButton","props","context","hovered","setHovered","useState","onClick","skin","translate","primarySkinColor","handleMouseOver","useCallback","handleMouseLeave","backgroundColor","convert","color","transition","position","faIcon","name","size","contextTypes","Provider","childContextTypes","propTypes","PropTypes","func","FilterButton","active","filter","skillTotal","Content","style","skillFilterNumber","skillFilterNumberInActive","buttonProps","customStyle","width","content","bool","string","number","MyLearning","skills","selectedSkills","skillsInformation","skillsLocales","learnerFeature","isLoading","onSkillFocusConfirm","onReviewSkill","onExploreSkill","open","setOpen","selectedSkillsList","setSelectedSkillsList","skillFocusSelectedOnChart","setSkillFocusSelectedOnChart","undefined","searchValue","setSearchValue","searchResults","setSearchResults","activeFilter","setActiveFilter","skillsReviewReady","useMemo","skill","availableForReview","graphDatas","stats","score","graphLegends","filters","all","review_mode_available","sumKpi","kpi","coursedCompletedData","questionsAnsweredData","learningHoursData","skillChartPaneLegends","focusedSkill","skillChartPanelProps","title","value","legend","icon","iconName","handleOnDotClick","skillRef","handleOpenSkillPicker","handleCloseSkillPicker","handleConfirmSkillPicker","focusSkillList","handleSearch","toLowerCase","includes","handleSearchReset","ReviewTooltipContent","backgroundContainer","container","skillFocusContainer","skillFocusHeader","skillFocusHeaderWrapper","skillFocusHeaderIcon","faSize","wrapperSize","skillFocusHeaderContent","skillFocusHeaderTitle","skillFocusHeaderDescription","length","skillFocusContent","radarContainer","gradient","fill","stroke","percentage","background","label","skillFocusEmpty","img","skillFocusEmptyTitle","skillFocusEmptyDescription","skillListHeader","skillListHeaderIcon","skillListHeaderContent","skillListHeaderTitle","skillListHeaderDescription","infoIconTooltip","tooltip","toolBarContainer","skillFilterContainer","map","index","handleFilterClick","searchWrapper","placeholder","onChange","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","skillListContainer","skillListEmptyContainer","handleReviewSkill","handleExploreSkill","skillCourses","courses","skillQuestions","questionsAnswered","completedCourses","coursesCompleted","arrayOf","objectOf","shape","learningHours"],"sources":["../../../src/template/my-learning/index.js"],"sourcesContent":["import React, {useCallback, useState, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport {getOr, keys, map, fromPairs, pipe, sumBy} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Icon from '../../atom/icon';\nimport Picture from '../../atom/picture';\nimport ButtonLink from '../../atom/button-link';\nimport ToolTip from '../../atom/tooltip';\nimport ReviewNoSkills from '../../organism/review-no-skills';\nimport SearchForm from '../../molecule/search-form';\nimport SkillPickerModal from '../../molecule/skill-picker-modal';\nimport ResponsiveLearningProfileRadarChart from '../../molecule/learning-profile-radar-chart';\nimport SkillsChartSideInformationPanel from '../../molecule/skills-chart-side-information-panel';\nimport LearnerSkillCard from '../../molecule/learner-skill-card';\nimport style from './style.css';\n\nconst ChangeSkillFocusButton = (props, context) => {\n const [hovered, setHovered] = useState(false);\n const {onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n return (\n <div\n data-name=\"button-explore-wrapper\"\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n >\n <ButtonLink\n customStyle={{\n backgroundColor: hovered\n ? primarySkinColor\n : 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={onClick}\n label={translate('change_skill_focus')}\n data-name=\"change-skill-focus-button\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'arrows-rotate',\n backgroundColor: hovered\n ? primarySkinColor\n : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }}\n />\n </div>\n );\n};\n\nChangeSkillFocusButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nChangeSkillFocusButton.propTypes = {\n onClick: PropTypes.func\n};\n\nconst FilterButton = (props, context) => {\n const {active, filter, skillTotal, onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}>\n {skillTotal}\n </span>\n </div>\n ),\n [filter, skillTotal, active]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#FFFFFF',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: filter === translate('review_mode_available') ? '200px' : 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n skillTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst MyLearning = (props, context) => {\n const {\n skills,\n selectedSkills = [],\n skillsInformation,\n skillsLocales,\n learnerFeature = true,\n isLoading,\n onSkillFocusConfirm,\n onReviewSkill,\n onExploreSkill\n } = props;\n const {translate} = context;\n const [open, setOpen] = useState(false);\n const [selectedSkillsList, setSelectedSkillsList] = useState(selectedSkills);\n const [skillFocusSelectedOnChart, setSkillFocusSelectedOnChart] = useState(undefined);\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(skills);\n const [activeFilter, setActiveFilter] = useState('all');\n\n const skillsReviewReady = useMemo(() => {\n return searchResults.filter(skill => skillsInformation[skill].availableForReview);\n }, [searchResults, skillsInformation]);\n\n const graphDatas = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsInformation[skill].stats.score]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsInformation]\n );\n\n const graphLegends = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsLocales[skill]]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsLocales]\n );\n\n const filters = useMemo(() => {\n return {\n all: searchResults,\n review_mode_available: skillsReviewReady\n };\n }, [searchResults, skillsReviewReady]);\n\n const sumKpi = useCallback(\n kpi =>\n skillFocusSelectedOnChart\n ? skillsInformation[skillFocusSelectedOnChart].stats[kpi]\n : sumBy(skill => skillsInformation[skill].stats[kpi], selectedSkillsList),\n [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]\n );\n\n const coursedCompletedData = useMemo(() => sumKpi('coursesCompleted'), [sumKpi]);\n\n const questionsAnsweredData = useMemo(() => sumKpi('questionsAnswered'), [sumKpi]);\n\n const learningHoursData = useMemo(() => sumKpi('learningHours'), [sumKpi]);\n\n const skillChartPaneLegends = useMemo(\n () =>\n translate('on', {\n focusedSkill: skillFocusSelectedOnChart\n ? skillsLocales[skillFocusSelectedOnChart]\n : translate('focused_skills')\n }),\n [translate, skillsLocales, skillFocusSelectedOnChart]\n );\n const skillChartPanelProps = [\n {\n title: translate('skill_chart_side_panel_courses_completed'),\n value: `${coursedCompletedData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'book-open-cover', backgroundColor: '#D9F4F7'}\n },\n {\n title: translate('skill_chart_side_panel_questions_answered'),\n value: `${questionsAnsweredData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'circle-question', backgroundColor: '#FFDCD1'}\n },\n {\n title: translate('skill_chart_side_panel_learning_hours'),\n value: `${learningHoursData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'clock', backgroundColor: '#FAD6DE'}\n }\n ];\n\n const handleOnDotClick = useCallback(\n skillRef => {\n skillRef && setSkillFocusSelectedOnChart(skillRef);\n },\n [setSkillFocusSelectedOnChart]\n );\n const handleOpenSkillPicker = useCallback(() => setOpen(true), [setOpen]);\n const handleCloseSkillPicker = useCallback(() => setOpen(false), [setOpen]);\n const handleConfirmSkillPicker = useCallback(\n focusSkillList => {\n setSelectedSkillsList(focusSkillList);\n onSkillFocusConfirm(focusSkillList);\n setOpen(false);\n },\n [onSkillFocusConfirm, setSelectedSkillsList, setOpen]\n );\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(\n skills.filter(skill => {\n return skillsLocales[skill].toLowerCase().includes(value.toLowerCase());\n })\n );\n },\n [skills, skillsLocales, setSearchValue, setSearchResults]\n );\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(skills);\n }, [skills, setSearchValue, setSearchResults]);\n\n const ReviewTooltipContent = useCallback(\n () => (\n <div>\n <div>\n <b>{translate('review_mode_tooltip_header')}</b>\n </div>\n <p>{translate('review_mode_tooltip_content')}</p>\n <ol>\n <li>{translate('review_mode_tooltip_content_part1')}</li>\n <li>{translate('review_mode_tooltip_content_part2')}</li>\n <li>{translate('review_mode_tooltip_content_part3')}</li>\n <li>{translate('review_mode_tooltip_content_part4')}</li>\n </ol>\n </div>\n ),\n [translate]\n );\n\n return (\n <div className={style.backgroundContainer}>\n <div className={style.container}>\n <SkillPickerModal\n skills={skills}\n selectedSkills={selectedSkillsList}\n skillsLocales={skillsLocales}\n isOpen={open}\n isLoading={isLoading}\n onCancel={handleCloseSkillPicker}\n onConfirm={handleConfirmSkillPicker}\n onClose={handleCloseSkillPicker}\n />\n {learnerFeature ? (\n <div className={style.skillFocusContainer}>\n <header className={style.skillFocusHeader}>\n <div className={style.skillFocusHeaderWrapper}>\n <div className={style.skillFocusHeaderIcon}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor=\"#DDD1FF\"\n borderRadius=\"12px\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillFocusHeaderContent}>\n <div className={style.skillFocusHeaderTitle}>{translate('skill_focus')}</div>\n <div className={style.skillFocusHeaderDescription}>\n {translate('skills_focus_description')}\n </div>\n </div>\n </div>\n {selectedSkillsList.length > 0 ? (\n <ChangeSkillFocusButton onClick={handleOpenSkillPicker} />\n ) : null}\n </header>\n {selectedSkillsList.length > 0 ? (\n <div className={style.skillFocusContent}>\n <div className={style.radarContainer}>\n <ResponsiveLearningProfileRadarChart\n totalDataset={1}\n height={424}\n width={680}\n data={graphDatas}\n legend={graphLegends}\n onClick={handleOnDotClick}\n colors={[\n {\n gradient: {\n fill: ['#0062ffff', '#8000ff85'],\n stroke: ['#0062ffff', '#8000FF']\n },\n percentage: {\n color: '#0061FF',\n background:\n 'linear-gradient(180deg, rgba(0, 97, 255, 0.10) 0%, rgba(147, 107, 255, 0.10) 100%)'\n },\n label: {\n color: '#020202ff'\n }\n }\n ]}\n />\n </div>\n <SkillsChartSideInformationPanel sidePanelItems={skillChartPanelProps} />\n </div>\n ) : (\n <div className={style.skillFocusEmpty}>\n <Picture\n className={style.img}\n src=\"https://static.coorpacademy.com/assets/images/mylearning-no-skill-selected-placeholder.svg\"\n alt=\"demo\"\n />\n <div className={style.skillFocusEmptyTitle}>\n {translate('skill_focus_empty_title')}\n </div>\n <div className={style.skillFocusEmptyDescription}>\n {translate('skills_focus_empty_description')}\n </div>\n <ButtonLink\n label={translate('choose_your_focus')}\n type=\"primary\"\n customStyle={{width: '168px'}}\n onClick={handleOpenSkillPicker}\n />\n </div>\n )}\n </div>\n ) : null}\n <header className={style.skillListHeader}>\n <div className={style.skillListHeaderIcon}>\n <Icon\n iconName=\"dumbbell\"\n backgroundColor=\"#FFF9D1\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillListHeaderContent}>\n <div className={style.skillListHeaderTitle}>{translate('skills')}</div>\n <div className={style.skillListHeaderDescription}>\n {translate('Explore or review skills')}\n <ToolTip\n fontSize={12}\n iconContainerClassName={style.infoIconTooltip}\n tooltipClassName={style.tooltip}\n TooltipContent={ReviewTooltipContent}\n closeToolTipInformationTextAriaLabel={translate(\n 'Press the escape key to close the information text'\n )}\n />\n </div>\n </div>\n </header>\n <div className={style.toolBarContainer}>\n <div className={style.skillFilterContainer}>\n {keys(filters).map((filter, index) => {\n function handleFilterClick() {\n setActiveFilter(filter);\n }\n\n return (\n <div key={index}>\n <FilterButton\n active={activeFilter === filter}\n filter={translate(filter)}\n skillTotal={filters[filter].length}\n onClick={handleFilterClick}\n />\n </div>\n );\n })}\n </div>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n </div>\n {searchValue && searchResults.length === 0 ? (\n <div className={style.emptySearchResultContainer}>\n <div className={style.emptySearchResultTitle}>\n {translate('empty_search_result_title', {searchValue})}\n </div>\n <div className={style.emptySearchResultDescription}>\n {translate('empty_search_result_description')}\n </div>\n <div className={style.emptySearchResultClearSearch} onClick={handleSearchReset}>\n {translate('empty_search_result_clear_search')}\n </div>\n </div>\n ) : (\n <div className={style.skillListContainer}>\n {activeFilter === 'review_mode_available' && filters[activeFilter].length === 0 ? (\n <div className={style.skillListEmptyContainer}>\n <ReviewNoSkills\n titleNoSkills={translate('review_skill_epmty')}\n textNoSkills={translate('review_skill_epmty_description')}\n iconSkillAriaLabel={translate('review_skill_epmty')}\n directionReverse\n />\n </div>\n ) : (\n filters[activeFilter].map((skill, index) => {\n function handleReviewSkill() {\n onReviewSkill(skill);\n }\n function handleExploreSkill() {\n onExploreSkill(skill);\n }\n return (\n <div key={index}>\n <LearnerSkillCard\n skillTitle={skillsLocales[skill]}\n focus={selectedSkills.includes(skill)}\n metrics={{\n skillCourses: skillsInformation[skill].stats.courses,\n skillQuestions: skillsInformation[skill].stats.questionsAnswered,\n completedCourses: skillsInformation[skill].stats.coursesCompleted\n }}\n review={skillsInformation[skill].availableForReview}\n onReviewClick={handleReviewSkill}\n onExploreClick={handleExploreSkill}\n />\n </div>\n );\n })\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nMyLearning.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nMyLearning.propTypes = {\n skills: PropTypes.arrayOf(PropTypes.string),\n selectedSkills: PropTypes.arrayOf(PropTypes.string),\n skillsInformation: PropTypes.objectOf(\n PropTypes.shape({\n availableForReview: PropTypes.bool,\n stats: PropTypes.shape({\n score: PropTypes.number,\n courses: PropTypes.number,\n coursesCompleted: PropTypes.number,\n questionsAnswered: PropTypes.number,\n learningHours: PropTypes.number\n })\n })\n ),\n skillsLocales: PropTypes.objectOf(PropTypes.string),\n learnerFeature: PropTypes.bool,\n isLoading: PropTypes.bool,\n onSkillFocusConfirm: PropTypes.func,\n onReviewSkill: PropTypes.func,\n onExploreSkill: PropTypes.func\n};\n\nexport default MyLearning;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["ChangeSkillFocusButton","props","context","hovered","setHovered","useState","onClick","skin","translate","primarySkinColor","handleMouseOver","useCallback","handleMouseLeave","backgroundColor","convert","color","transition","position","faIcon","name","size","contextTypes","Provider","childContextTypes","propTypes","PropTypes","func","FilterButton","active","filter","skillTotal","Content","style","skillFilterNumber","skillFilterNumberInActive","buttonProps","customStyle","width","content","bool","string","number","MyLearning","skills","selectedSkills","skillsInformation","skillsLocales","learnerFeature","isLoading","onSkillFocusConfirm","onReviewSkill","onExploreSkill","open","setOpen","selectedSkillsList","setSelectedSkillsList","skillFocusSelectedOnChart","setSkillFocusSelectedOnChart","undefined","searchValue","setSearchValue","searchResults","setSearchResults","activeFilter","setActiveFilter","skillsReviewReady","useMemo","skill","availableForReview","graphDatas","stats","score","graphLegends","filters","all","review","sumKpi","kpi","coursedCompletedData","questionsAnsweredData","learningHoursData","skillChartPaneLegends","focusedSkill","skillChartPanelProps","title","value","legend","icon","iconName","handleOnDotClick","skillRef","handleOpenSkillPicker","handleCloseSkillPicker","handleConfirmSkillPicker","focusSkillList","handleSearch","searchValueIncluded","handleSearchReset","ReviewTooltipContent","backgroundContainer","container","skillFocusContainer","skillFocusHeader","skillFocusHeaderWrapper","skillFocusHeaderIcon","faSize","wrapperSize","skillFocusHeaderContent","skillFocusHeaderTitle","skillFocusHeaderDescription","length","skillFocusContent","radarContainer","gradient","fill","stroke","percentage","background","label","skillFocusEmpty","img","skillFocusEmptyTitle","skillFocusEmptyDescription","skillListHeader","skillListHeaderIcon","skillListHeaderContent","skillListHeaderTitle","skillListHeaderDescription","infoIconTooltip","tooltip","toolBarContainer","skillFilterContainer","map","index","handleFilterClick","searchWrapper","placeholder","onChange","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","skillListContainer","skillListEmptyContainer","handleReviewSkill","handleExploreSkill","includes","skillCourses","courses","skillQuestions","questionsAnswered","completedCourses","coursesCompleted","arrayOf","objectOf","shape","learningHours"],"sources":["../../../src/template/my-learning/index.js"],"sourcesContent":["import React, {useCallback, useState, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport {getOr, keys, map, fromPairs, pipe, sumBy} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Icon from '../../atom/icon';\nimport Picture from '../../atom/picture';\nimport ButtonLink from '../../atom/button-link';\nimport ToolTip from '../../atom/tooltip';\nimport ReviewNoSkills from '../../organism/review-no-skills';\nimport SearchForm from '../../molecule/search-form';\nimport SkillPickerModal from '../../molecule/skill-picker-modal';\nimport ResponsiveLearningProfileRadarChart from '../../molecule/learning-profile-radar-chart';\nimport SkillsChartSideInformationPanel from '../../molecule/skills-chart-side-information-panel';\nimport LearnerSkillCard from '../../molecule/learner-skill-card';\nimport searchValueIncluded from '../../util/search-value-included';\nimport style from './style.css';\n\nconst ChangeSkillFocusButton = (props, context) => {\n const [hovered, setHovered] = useState(false);\n const {onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n return (\n <div\n data-name=\"button-explore-wrapper\"\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n >\n <ButtonLink\n customStyle={{\n backgroundColor: hovered\n ? primarySkinColor\n : 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={onClick}\n label={translate('change_skill_focus')}\n data-name=\"change-skill-focus-button\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'arrows-rotate',\n backgroundColor: hovered\n ? primarySkinColor\n : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }}\n />\n </div>\n );\n};\n\nChangeSkillFocusButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nChangeSkillFocusButton.propTypes = {\n onClick: PropTypes.func\n};\n\nconst FilterButton = (props, context) => {\n const {active, filter, skillTotal, onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = getOr('#0061FF', 'common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}>\n {skillTotal}\n </span>\n </div>\n ),\n [filter, skillTotal, active]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#FFFFFF',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: filter === translate('review_mode_available') ? '200px' : 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n skillTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst MyLearning = (props, context) => {\n const {\n skills,\n selectedSkills = [],\n skillsInformation,\n skillsLocales,\n learnerFeature = true,\n isLoading,\n onSkillFocusConfirm,\n onReviewSkill,\n onExploreSkill\n } = props;\n const {translate} = context;\n const [open, setOpen] = useState(false);\n const [selectedSkillsList, setSelectedSkillsList] = useState(selectedSkills);\n const [skillFocusSelectedOnChart, setSkillFocusSelectedOnChart] = useState(undefined);\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(skills);\n const [activeFilter, setActiveFilter] = useState('all');\n\n const skillsReviewReady = useMemo(() => {\n return searchResults.filter(skill => skillsInformation[skill].availableForReview);\n }, [searchResults, skillsInformation]);\n\n const graphDatas = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsInformation[skill].stats.score]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsInformation]\n );\n\n const graphLegends = useMemo(\n () =>\n pipe(\n map(skill => [skill, skillsLocales[skill]]),\n fromPairs\n )(selectedSkillsList),\n [selectedSkillsList, skillsLocales]\n );\n\n const filters = useMemo(() => {\n return {\n all: searchResults,\n review: skillsReviewReady\n };\n }, [searchResults, skillsReviewReady]);\n\n const sumKpi = useCallback(\n kpi =>\n skillFocusSelectedOnChart\n ? skillsInformation[skillFocusSelectedOnChart].stats[kpi]\n : sumBy(skill => skillsInformation[skill].stats[kpi], selectedSkillsList),\n [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]\n );\n\n const coursedCompletedData = useMemo(() => sumKpi('coursesCompleted'), [sumKpi]);\n\n const questionsAnsweredData = useMemo(() => sumKpi('questionsAnswered'), [sumKpi]);\n\n const learningHoursData = useMemo(() => sumKpi('learningHours'), [sumKpi]);\n\n const skillChartPaneLegends = useMemo(\n () =>\n translate('skill_scope_specifier', {\n focusedSkill: skillFocusSelectedOnChart\n ? skillsLocales[skillFocusSelectedOnChart]\n : translate('focused_skills')\n }),\n [translate, skillsLocales, skillFocusSelectedOnChart]\n );\n const skillChartPanelProps = [\n {\n title: translate('skill_chart_side_panel_courses_completed'),\n value: `${coursedCompletedData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'book-open-cover', backgroundColor: '#D9F4F7'}\n },\n {\n title: translate('skill_chart_side_panel_questions_answered'),\n value: `${questionsAnsweredData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'circle-question', backgroundColor: '#FFDCD1'}\n },\n {\n title: translate('skill_chart_side_panel_learning_hours'),\n value: `${learningHoursData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'clock', backgroundColor: '#FAD6DE'}\n }\n ];\n\n const handleOnDotClick = useCallback(\n skillRef => {\n skillRef && setSkillFocusSelectedOnChart(skillRef);\n },\n [setSkillFocusSelectedOnChart]\n );\n const handleOpenSkillPicker = useCallback(() => setOpen(true), [setOpen]);\n const handleCloseSkillPicker = useCallback(() => setOpen(false), [setOpen]);\n const handleConfirmSkillPicker = useCallback(\n focusSkillList => {\n setSelectedSkillsList(focusSkillList);\n onSkillFocusConfirm(focusSkillList);\n setOpen(false);\n },\n [onSkillFocusConfirm, setSelectedSkillsList, setOpen]\n );\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(skills.filter(skill => searchValueIncluded(skillsLocales[skill], value)));\n },\n [skills, skillsLocales, setSearchValue, setSearchResults]\n );\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(skills);\n }, [skills, setSearchValue, setSearchResults]);\n\n const ReviewTooltipContent = useCallback(\n () => (\n <div>\n <div>\n <b>{translate('review_mode_tooltip_header')}</b>\n </div>\n <p>{translate('review_mode_tooltip_content')}</p>\n <ol>\n <li>{translate('review_mode_tooltip_content_part1')}</li>\n <li>{translate('review_mode_tooltip_content_part2')}</li>\n <li>{translate('review_mode_tooltip_content_part3')}</li>\n <li>{translate('review_mode_tooltip_content_part4')}</li>\n </ol>\n </div>\n ),\n [translate]\n );\n\n return (\n <div className={style.backgroundContainer}>\n <div className={style.container}>\n <SkillPickerModal\n skills={skills}\n selectedSkills={selectedSkillsList}\n skillsLocales={skillsLocales}\n isOpen={open}\n isLoading={isLoading}\n onCancel={handleCloseSkillPicker}\n onConfirm={handleConfirmSkillPicker}\n onClose={handleCloseSkillPicker}\n />\n {learnerFeature ? (\n <div className={style.skillFocusContainer}>\n <header className={style.skillFocusHeader}>\n <div className={style.skillFocusHeaderWrapper}>\n <div className={style.skillFocusHeaderIcon}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor=\"#DDD1FF\"\n borderRadius=\"12px\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillFocusHeaderContent}>\n <div className={style.skillFocusHeaderTitle}>{translate('skill_focus')}</div>\n <div className={style.skillFocusHeaderDescription}>\n {translate('skills_focus_description')}\n </div>\n </div>\n </div>\n {selectedSkillsList.length > 0 ? (\n <ChangeSkillFocusButton onClick={handleOpenSkillPicker} />\n ) : null}\n </header>\n {selectedSkillsList.length > 0 ? (\n <div className={style.skillFocusContent}>\n <div className={style.radarContainer}>\n <ResponsiveLearningProfileRadarChart\n totalDataset={1}\n height={424}\n width={680}\n data={graphDatas}\n legend={graphLegends}\n onClick={handleOnDotClick}\n colors={[\n {\n gradient: {\n fill: ['#0062ffff', '#8000ff85'],\n stroke: ['#0062ffff', '#8000FF']\n },\n percentage: {\n color: '#0061FF',\n background:\n 'linear-gradient(180deg, rgba(0, 97, 255, 0.10) 0%, rgba(147, 107, 255, 0.10) 100%)'\n },\n label: {\n color: '#020202ff'\n }\n }\n ]}\n />\n </div>\n <SkillsChartSideInformationPanel sidePanelItems={skillChartPanelProps} />\n </div>\n ) : (\n <div className={style.skillFocusEmpty}>\n <Picture\n className={style.img}\n src=\"https://static.coorpacademy.com/assets/images/mylearning-no-skill-selected-placeholder.svg\"\n alt=\"demo\"\n />\n <div className={style.skillFocusEmptyTitle}>\n {translate('skill_focus_empty_title')}\n </div>\n <div className={style.skillFocusEmptyDescription}>\n {translate('skills_focus_empty_description')}\n </div>\n <ButtonLink\n label={translate('choose_your_focus')}\n type=\"primary\"\n customStyle={{width: '168px'}}\n onClick={handleOpenSkillPicker}\n />\n </div>\n )}\n </div>\n ) : null}\n <header className={style.skillListHeader}>\n <div className={style.skillListHeaderIcon}>\n <Icon\n iconName=\"dumbbell\"\n backgroundColor=\"#FFF9D1\"\n size={{faSize: 20, wrapperSize: 48}}\n />\n </div>\n <div className={style.skillListHeaderContent}>\n <div className={style.skillListHeaderTitle}>{translate('skills_section_title')}</div>\n <div className={style.skillListHeaderDescription}>\n {translate('skills_section_description')}\n <ToolTip\n fontSize={12}\n iconContainerClassName={style.infoIconTooltip}\n tooltipClassName={style.tooltip}\n TooltipContent={ReviewTooltipContent}\n closeToolTipInformationTextAriaLabel={translate(\n 'Press the escape key to close the information text'\n )}\n />\n </div>\n </div>\n </header>\n <div className={style.toolBarContainer}>\n <div className={style.skillFilterContainer}>\n {keys(filters).map((filter, index) => {\n function handleFilterClick() {\n setActiveFilter(filter);\n }\n\n return (\n <div key={index}>\n <FilterButton\n active={activeFilter === filter}\n filter={\n filter === 'all' ? translate('all') : translate('review_mode_available')\n }\n skillTotal={filters[filter].length}\n onClick={handleFilterClick}\n />\n </div>\n );\n })}\n </div>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n </div>\n {searchValue && searchResults.length === 0 ? (\n <div className={style.emptySearchResultContainer}>\n <div className={style.emptySearchResultTitle}>\n {translate('empty_search_result_title', {searchValue})}\n </div>\n <div className={style.emptySearchResultDescription}>\n {translate('empty_search_result_description')}\n </div>\n <div className={style.emptySearchResultClearSearch} onClick={handleSearchReset}>\n {translate('empty_search_result_clear_search')}\n </div>\n </div>\n ) : (\n <div className={style.skillListContainer}>\n {activeFilter === 'review_mode_available' && filters[activeFilter].length === 0 ? (\n <div className={style.skillListEmptyContainer}>\n <ReviewNoSkills\n titleNoSkills={translate('review_skill_epmty')}\n textNoSkills={translate('review_skill_epmty_description')}\n iconSkillAriaLabel={translate('review_skill_epmty')}\n imagePosition=\"top\"\n />\n </div>\n ) : (\n filters[activeFilter].map((skill, index) => {\n function handleReviewSkill() {\n onReviewSkill(skill);\n }\n function handleExploreSkill() {\n onExploreSkill(skill);\n }\n return (\n <div key={index}>\n <LearnerSkillCard\n skillTitle={skillsLocales[skill]}\n focus={selectedSkills.includes(skill)}\n metrics={{\n skillCourses: skillsInformation[skill].stats.courses,\n skillQuestions: skillsInformation[skill].stats.questionsAnswered,\n completedCourses: skillsInformation[skill].stats.coursesCompleted\n }}\n review={skillsInformation[skill].availableForReview}\n onReviewClick={handleReviewSkill}\n onExploreClick={handleExploreSkill}\n />\n </div>\n );\n })\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nMyLearning.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nMyLearning.propTypes = {\n skills: PropTypes.arrayOf(PropTypes.string),\n selectedSkills: PropTypes.arrayOf(PropTypes.string),\n skillsInformation: PropTypes.objectOf(\n PropTypes.shape({\n availableForReview: PropTypes.bool,\n stats: PropTypes.shape({\n score: PropTypes.number,\n courses: PropTypes.number,\n coursesCompleted: PropTypes.number,\n questionsAnswered: PropTypes.number,\n learningHours: PropTypes.number\n })\n })\n ),\n skillsLocales: PropTypes.objectOf(PropTypes.string),\n learnerFeature: PropTypes.bool,\n isLoading: PropTypes.bool,\n onSkillFocusConfirm: PropTypes.func,\n onReviewSkill: PropTypes.func,\n onExploreSkill: PropTypes.func\n};\n\nexport default MyLearning;\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export default searchValueIncluded;
2
+ declare function searchValueIncluded(skill: any, value: any): boolean;
3
+ //# sourceMappingURL=search-value-included.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-value-included.d.ts","sourceRoot":"","sources":["../../src/util/search-value-included.js"],"names":[],"mappings":";AAEA,sEAEC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+
6
+ var _pipe2 = _interopRequireDefault(require("lodash/fp/pipe"));
7
+
8
+ var _toLower2 = _interopRequireDefault(require("lodash/fp/toLower"));
9
+
10
+ var _includes2 = _interopRequireDefault(require("lodash/fp/includes"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ const searchValueIncluded = (skill, value) => {
15
+ return (0, _pipe2.default)(_toLower2.default, (0, _includes2.default)((0, _toLower2.default)(value)))(skill);
16
+ };
17
+
18
+ var _default = searchValueIncluded;
19
+ exports.default = _default;
20
+ //# sourceMappingURL=search-value-included.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-value-included.js","names":["searchValueIncluded","skill","value"],"sources":["../../src/util/search-value-included.js"],"sourcesContent":["import {includes, toLower, pipe} from 'lodash/fp';\n\nconst searchValueIncluded = (skill, value) => {\n return pipe(toLower, includes(toLower(value)))(skill);\n};\n\nexport default searchValueIncluded;\n"],"mappings":";;;;;;;;;;;;;AAEA,MAAMA,mBAAmB,GAAG,CAACC,KAAD,EAAQC,KAAR,KAAkB;EAC5C,OAAO,uCAAc,wBAAS,uBAAQA,KAAR,CAAT,CAAd,EAAwCD,KAAxC,CAAP;AACD,CAFD;;eAIeD,mB"}
@@ -72,7 +72,8 @@
72
72
  "Show more": "Show more",
73
73
  "Show": "Show",
74
74
  "Start battle": "Start battle",
75
- "skills": "Skills",
75
+ "skills_section_title": "Skills",
76
+ "skills_section_description": "Explore or review skills",
76
77
  "skill_focus_empty_title": "Choose the skills you want to improve",
77
78
  "skills_focus_description": "Focus on skills you want to improve and track your progress",
78
79
  "skills_focus_empty_description": "Practice regularly, track your progress to master your chosen skills and unlock your potential.",
@@ -95,7 +96,6 @@
95
96
  "skill_chart_side_panel_questions_answered": "Questions answered",
96
97
  "skill_chart_side_panel_learning_hours": "Learning hours",
97
98
  "selected": "selected",
98
- "Explore or review skills": "Explore or review skills",
99
99
  "This message has been removed by its author": "This message has been removed by its author.",
100
100
  "unsubscribe": "Unsubscribe from Coorpacademy",
101
101
  "Validated": "Validated",
@@ -131,7 +131,7 @@
131
131
  "validate_aria_label": "Validate your answer and go to next step",
132
132
  "stars": "stars",
133
133
  "questions": "Questions",
134
- "on": "on <b>{{focusedSkill}}</b>",
134
+ "skill_scope_specifier": "on <b>{{focusedSkill}}</b>",
135
135
  "focused_skills": "focused skills",
136
136
  "custom":{
137
137
  "digitlearning": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coorpacademy/components",
3
- "version": "11.32.1-alpha.26+7094cac54",
3
+ "version": "11.32.1-alpha.30.29+091e2130a",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -176,5 +176,5 @@
176
176
  "last 2 versions",
177
177
  "IE 11"
178
178
  ],
179
- "gitHead": "7094cac5490e0dd72f5f67a4860d147d9586a440"
179
+ "gitHead": "091e2130a0ba99dc04572d3a13bcf6baf5dbbc83"
180
180
  }