@coorpacademy/components 11.32.14 → 11.32.15-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/atom/button-link/style.css +1 -0
- package/es/atom/select/index.d.ts.map +1 -1
- package/es/atom/select/index.js +2 -1
- package/es/atom/select/index.js.map +1 -1
- package/es/atom/select/style.css +23 -0
- package/es/molecule/cm-popin/types.d.ts +3 -0
- package/es/molecule/cm-popin/types.d.ts.map +1 -1
- package/es/molecule/dashboard/cards-list/index.d.ts +4 -1
- package/es/molecule/dashboard/cards-list/index.d.ts.map +1 -1
- package/es/molecule/dashboard/cards-list/index.js +8 -3
- package/es/molecule/dashboard/cards-list/index.js.map +1 -1
- package/es/molecule/dashboard/cards-list/prop-types.d.ts +3 -1
- package/es/molecule/dashboard/cards-list/prop-types.d.ts.map +1 -1
- package/es/molecule/dashboard/cards-list/prop-types.js.map +1 -1
- package/es/molecule/dashboard/cards-list/style.css +4 -0
- package/es/molecule/discipline-associated-skills/index.d.ts +1 -0
- package/es/molecule/discipline-associated-skills/index.js +2 -1
- package/es/molecule/discipline-associated-skills/index.js.map +1 -1
- package/es/molecule/discipline-associated-skills/style.css +16 -3
- package/es/organism/cards-grid/index.d.ts +3 -0
- package/es/organism/cards-grid/index.js +4 -1
- package/es/organism/cards-grid/index.js.map +1 -1
- package/es/organism/cards-grid/style.css +0 -1
- package/es/template/app-player/loading/index.d.ts +3 -0
- package/es/template/app-player/player/index.d.ts +6 -0
- package/es/template/app-player/player/slides/index.d.ts +3 -0
- package/es/template/app-player/player/slides/index.d.ts.map +1 -1
- package/es/template/app-player/popin-correction/index.d.ts +3 -0
- package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
- package/es/template/app-player/popin-end/index.d.ts +7 -1
- package/es/template/app-player/popin-end/summary.d.ts +4 -1
- package/es/template/app-review/index.d.ts +3 -0
- package/es/template/app-review/index.d.ts.map +1 -1
- package/es/template/app-review/player/prop-types.d.ts +3 -0
- package/es/template/app-review/player/prop-types.d.ts.map +1 -1
- package/es/template/app-review/prop-types.d.ts +3 -0
- package/es/template/app-review/prop-types.d.ts.map +1 -1
- package/es/template/back-office/brand-update/index.d.ts +3 -0
- package/es/template/common/authors/index.d.ts +3 -0
- package/es/template/common/authors/index.d.ts.map +1 -1
- package/es/template/common/dashboard/index.d.ts +6 -0
- package/es/template/common/discipline/index.d.ts +1 -0
- package/es/template/common/discipline/index.js +1 -0
- package/es/template/common/discipline/index.js.map +1 -1
- package/es/template/common/search-page/index.d.ts +10 -1
- package/es/template/external-course/index.d.ts +3 -0
- package/es/template/my-learning/index.d.ts +3 -0
- package/es/template/my-learning/index.d.ts.map +1 -1
- package/es/template/my-learning/index.js +8 -3
- package/es/template/my-learning/index.js.map +1 -1
- package/es/template/skill-detail/all-courses.css +128 -0
- package/es/template/skill-detail/all-courses.d.ts +80 -0
- package/es/template/skill-detail/all-courses.d.ts.map +1 -0
- package/es/template/skill-detail/all-courses.js +195 -0
- package/es/template/skill-detail/all-courses.js.map +1 -0
- package/es/template/skill-detail/continue-learning.css +16 -0
- package/es/template/skill-detail/continue-learning.d.ts +39 -0
- package/es/template/skill-detail/continue-learning.d.ts.map +1 -0
- package/es/template/skill-detail/continue-learning.js +42 -0
- package/es/template/skill-detail/continue-learning.js.map +1 -0
- package/es/template/skill-detail/index.d.ts +101 -0
- package/es/template/skill-detail/index.d.ts.map +1 -0
- package/es/template/skill-detail/index.js +228 -0
- package/es/template/skill-detail/index.js.map +1 -0
- package/es/template/skill-detail/style.css +174 -0
- package/es/template/teams-dashboard/index.d.ts +4 -1
- package/lib/atom/button-link/style.css +1 -0
- package/lib/atom/select/index.d.ts.map +1 -1
- package/lib/atom/select/index.js +2 -1
- package/lib/atom/select/index.js.map +1 -1
- package/lib/atom/select/style.css +23 -0
- package/lib/molecule/cm-popin/types.d.ts +3 -0
- package/lib/molecule/cm-popin/types.d.ts.map +1 -1
- package/lib/molecule/dashboard/cards-list/index.d.ts +4 -1
- package/lib/molecule/dashboard/cards-list/index.d.ts.map +1 -1
- package/lib/molecule/dashboard/cards-list/index.js +8 -4
- package/lib/molecule/dashboard/cards-list/index.js.map +1 -1
- package/lib/molecule/dashboard/cards-list/prop-types.d.ts +3 -1
- package/lib/molecule/dashboard/cards-list/prop-types.d.ts.map +1 -1
- package/lib/molecule/dashboard/cards-list/prop-types.js.map +1 -1
- package/lib/molecule/dashboard/cards-list/style.css +4 -0
- package/lib/molecule/discipline-associated-skills/index.d.ts +1 -0
- package/lib/molecule/discipline-associated-skills/index.js +2 -1
- package/lib/molecule/discipline-associated-skills/index.js.map +1 -1
- package/lib/molecule/discipline-associated-skills/style.css +16 -3
- package/lib/organism/cards-grid/index.d.ts +3 -0
- package/lib/organism/cards-grid/index.js +4 -1
- package/lib/organism/cards-grid/index.js.map +1 -1
- package/lib/organism/cards-grid/style.css +0 -1
- package/lib/template/app-player/loading/index.d.ts +3 -0
- package/lib/template/app-player/player/index.d.ts +6 -0
- package/lib/template/app-player/player/slides/index.d.ts +3 -0
- package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
- package/lib/template/app-player/popin-correction/index.d.ts +3 -0
- package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
- package/lib/template/app-player/popin-end/index.d.ts +7 -1
- package/lib/template/app-player/popin-end/summary.d.ts +4 -1
- package/lib/template/app-review/index.d.ts +3 -0
- package/lib/template/app-review/index.d.ts.map +1 -1
- package/lib/template/app-review/player/prop-types.d.ts +3 -0
- package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
- package/lib/template/app-review/prop-types.d.ts +3 -0
- package/lib/template/app-review/prop-types.d.ts.map +1 -1
- package/lib/template/back-office/brand-update/index.d.ts +3 -0
- package/lib/template/common/authors/index.d.ts +3 -0
- package/lib/template/common/authors/index.d.ts.map +1 -1
- package/lib/template/common/dashboard/index.d.ts +6 -0
- package/lib/template/common/discipline/index.d.ts +1 -0
- package/lib/template/common/discipline/index.js +1 -0
- package/lib/template/common/discipline/index.js.map +1 -1
- package/lib/template/common/search-page/index.d.ts +10 -1
- package/lib/template/external-course/index.d.ts +3 -0
- package/lib/template/my-learning/index.d.ts +3 -0
- package/lib/template/my-learning/index.d.ts.map +1 -1
- package/lib/template/my-learning/index.js +8 -3
- package/lib/template/my-learning/index.js.map +1 -1
- package/lib/template/skill-detail/all-courses.css +128 -0
- package/lib/template/skill-detail/all-courses.d.ts +80 -0
- package/lib/template/skill-detail/all-courses.d.ts.map +1 -0
- package/lib/template/skill-detail/all-courses.js +214 -0
- package/lib/template/skill-detail/all-courses.js.map +1 -0
- package/lib/template/skill-detail/continue-learning.css +16 -0
- package/lib/template/skill-detail/continue-learning.d.ts +39 -0
- package/lib/template/skill-detail/continue-learning.d.ts.map +1 -0
- package/lib/template/skill-detail/continue-learning.js +59 -0
- package/lib/template/skill-detail/continue-learning.js.map +1 -0
- package/lib/template/skill-detail/index.d.ts +101 -0
- package/lib/template/skill-detail/index.d.ts.map +1 -0
- package/lib/template/skill-detail/index.js +250 -0
- package/lib/template/skill-detail/index.js.map +1 -0
- package/lib/template/skill-detail/style.css +174 -0
- package/lib/template/teams-dashboard/index.d.ts +4 -1
- package/locales/en/global.json +8 -0
- package/package.json +2 -2
|
@@ -178,6 +178,7 @@ Discipline.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
178
178
|
shareSuccessWording: _share.ShareFeedback.propTypes.successWording,
|
|
179
179
|
shareErrorWording: _share.ShareFeedback.propTypes.errorWording,
|
|
180
180
|
skills: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
181
|
+
id: _propTypes.default.string,
|
|
181
182
|
ref: _propTypes.default.string,
|
|
182
183
|
locale: _propTypes.default.string,
|
|
183
184
|
focused: _propTypes.default.bool
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Discipline","props","context","selected","level","levels","changeLevel","image","title","video","authors","description","start","buy","startLabel","skills","onSkillClick","buyLabel","shareWording","shareText","shareSuccessWording","shareErrorWording","addToMyListButton","favorite","onFavoriteClick","addToMyListText","removeFromMyListText","disableShare","disableAddToMyList","lastUpdated","authorSection","isEmpty","style","partners","disciplineCTA","disciplineContent","content","disciplineHeader","header","discipline","container","leftSection","mobileAuthorCtaSection","columnReverse","cta","addToMyListBtn","shareBtn","rightSection","stickySection","buttons","shareFeedBack","addToMyListFeedback","addToMyListProviderWrap","shareProviderWrap","propTypes","DisciplineHeader","DisciplineCTA","DisciplinePartners","DisciplineScope","onClick","Share","wording","text","ShareFeedback","successWording","errorWording","PropTypes","arrayOf","shape","ref","string","locale","focused","bool","func","AddToMyListFeedback","AddToMyList","contextTypes","translate"],"sources":["../../../../src/template/common/discipline/index.js"],"sourcesContent":["import React from 'react';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport PropTypes from 'prop-types';\nimport DisciplineCTA from '../../../molecule/discipline-cta';\nimport DisciplineHeader from '../../../molecule/discipline-header';\nimport DisciplinePartners from '../../../molecule/discipline-partners';\nimport DisciplineScope from '../../../molecule/discipline-scope';\nimport DisciplineAssociatedSkills from '../../../molecule/discipline-associated-skills';\nimport Share, {ShareFeedback, ShareStatusProvider} from '../../../molecule/share';\nimport AddToMyList, {\n AddToMyListFeedback,\n AddToMyListStatusProvider\n} from '../../../molecule/add-to-my-list';\nimport style from './style.css';\n\nconst Discipline = (props, context) => {\n const {\n selected = 0,\n level,\n levels,\n changeLevel,\n image,\n title = '',\n video,\n authors = [],\n description = '',\n start,\n buy,\n startLabel,\n skills = [],\n onSkillClick,\n buyLabel,\n shareWording,\n shareText,\n shareSuccessWording,\n shareErrorWording,\n addToMyListButton,\n favorite,\n onFavoriteClick,\n addToMyListText,\n removeFromMyListText,\n disableShare = false,\n disableAddToMyList = false,\n lastUpdated\n } = props;\n\n const authorSection = isEmpty(authors) ? null : (\n <div className={style.partners}>\n <DisciplinePartners authors={authors} />\n </div>\n );\n\n const disciplineCTA = (\n <DisciplineCTA\n type={'discipline'}\n start={start}\n buy={buy}\n startLabel={startLabel}\n buyLabel={buyLabel}\n />\n );\n\n const disciplineContent = (\n <div className={style.content}>\n <DisciplineScope content={level} levels={levels} selected={selected} onClick={changeLevel} />\n </div>\n );\n\n const disciplineHeader = (\n <div className={style.header}>\n <DisciplineHeader\n image={image}\n video={video}\n title={title}\n description={description}\n lastUpdated={lastUpdated}\n />\n </div>\n );\n\n const discipline = (\n <div data-name=\"discipline\" className={style.container} key=\"discipline\">\n <div className={style.leftSection}>\n {disciplineHeader}\n <div className={style.mobileAuthorCtaSection}>\n <div className={style.columnReverse}>\n <div className={style.cta}>{disciplineCTA}</div>\n {disableAddToMyList ? null : (\n <AddToMyList\n style={style.addToMyListBtn}\n addToMyListButton={addToMyListButton}\n favorite={favorite}\n onFavoriteClick={onFavoriteClick}\n key={'addToMyListTablet'}\n />\n )}\n {disableShare ? null : (\n <Share\n style={style.shareBtn}\n wording={shareWording}\n text={shareText}\n key={'shareTablet'}\n />\n )}\n </div>\n <DisciplineAssociatedSkills skills={skills} onSkillClick={onSkillClick} />\n {authorSection}\n </div>\n {disciplineContent}\n </div>\n <div className={style.rightSection}>\n <div className={style.stickySection}>\n <div className={style.cta}>\n {disciplineCTA}\n {disableShare && disableAddToMyList ? null : (\n <div className={style.buttons}>\n {disableShare ? null : (\n <Share\n style={style.shareBtn}\n wording={shareWording}\n text={shareText}\n key={'shareDesktop'}\n />\n )}\n {disableAddToMyList ? null : (\n <AddToMyList\n style={style.addToMyListBtn}\n addToMyListButton={addToMyListButton}\n favorite={favorite}\n onFavoriteClick={onFavoriteClick}\n key={'addToMyListDesktop'}\n />\n )}\n </div>\n )}\n </div>\n <DisciplineAssociatedSkills skills={skills} onSkillClick={onSkillClick} />\n {authorSection}\n </div>\n </div>\n </div>\n );\n\n const shareFeedBack = disableShare ? null : (\n <ShareFeedback\n errorWording={shareErrorWording}\n successWording={shareSuccessWording}\n key=\"shareFeedBack\"\n />\n );\n\n const addToMyListFeedback = disableAddToMyList ? null : (\n <AddToMyListFeedback\n addToMyListText={addToMyListText}\n removeFromMyListText={removeFromMyListText}\n favorite={favorite}\n />\n );\n\n const addToMyListProviderWrap = disableAddToMyList ? (\n <>\n {shareFeedBack}\n {discipline}\n </>\n ) : (\n <AddToMyListStatusProvider>\n {shareFeedBack}\n {addToMyListFeedback}\n {discipline}\n </AddToMyListStatusProvider>\n );\n const shareProviderWrap = disableShare ? (\n addToMyListProviderWrap\n ) : (\n <ShareStatusProvider>{addToMyListProviderWrap}</ShareStatusProvider>\n );\n\n return shareProviderWrap;\n};\n\nDiscipline.propTypes = {\n image: DisciplineHeader.propTypes.image,\n video: DisciplineHeader.propTypes.video,\n title: DisciplineHeader.propTypes.title,\n description: DisciplineHeader.propTypes.description,\n start: DisciplineCTA.propTypes.start,\n buy: DisciplineCTA.propTypes.buy,\n startLabel: DisciplineCTA.propTypes.startLabel,\n buyLabel: DisciplineCTA.propTypes.buyLabel,\n authors: DisciplinePartners.propTypes.authors,\n level: DisciplineScope.propTypes.content,\n levels: DisciplineScope.propTypes.levels,\n selected: DisciplineScope.propTypes.selected,\n changeLevel: DisciplineScope.propTypes.onClick,\n shareWording: Share.propTypes.wording,\n shareText: Share.propTypes.text,\n shareSuccessWording: ShareFeedback.propTypes.successWording,\n shareErrorWording: ShareFeedback.propTypes.errorWording,\n skills: PropTypes.arrayOf(\n PropTypes.shape({\n ref: PropTypes.string,\n locale: PropTypes.string,\n focused: PropTypes.bool\n })\n ),\n onSkillClick: PropTypes.func,\n addToMyListText: AddToMyListFeedback.propTypes.addToMyListText,\n removeFromMyListText: AddToMyListFeedback.propTypes.removeFromMyListText,\n addToMyListButton: AddToMyList.propTypes.addToMyListButton,\n onFavoriteClick: AddToMyList.propTypes.onFavoriteClick,\n favorite: AddToMyList.propTypes.favorite,\n disableShare: PropTypes.bool,\n disableAddToMyList: PropTypes.bool\n};\n\nDiscipline.contextTypes = {\n translate: PropTypes.func\n};\n\nexport default Discipline;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Discipline","props","context","selected","level","levels","changeLevel","image","title","video","authors","description","start","buy","startLabel","skills","onSkillClick","buyLabel","shareWording","shareText","shareSuccessWording","shareErrorWording","addToMyListButton","favorite","onFavoriteClick","addToMyListText","removeFromMyListText","disableShare","disableAddToMyList","lastUpdated","authorSection","isEmpty","style","partners","disciplineCTA","disciplineContent","content","disciplineHeader","header","discipline","container","leftSection","mobileAuthorCtaSection","columnReverse","cta","addToMyListBtn","shareBtn","rightSection","stickySection","buttons","shareFeedBack","addToMyListFeedback","addToMyListProviderWrap","shareProviderWrap","propTypes","DisciplineHeader","DisciplineCTA","DisciplinePartners","DisciplineScope","onClick","Share","wording","text","ShareFeedback","successWording","errorWording","PropTypes","arrayOf","shape","id","string","ref","locale","focused","bool","func","AddToMyListFeedback","AddToMyList","contextTypes","translate"],"sources":["../../../../src/template/common/discipline/index.js"],"sourcesContent":["import React from 'react';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport PropTypes from 'prop-types';\nimport DisciplineCTA from '../../../molecule/discipline-cta';\nimport DisciplineHeader from '../../../molecule/discipline-header';\nimport DisciplinePartners from '../../../molecule/discipline-partners';\nimport DisciplineScope from '../../../molecule/discipline-scope';\nimport DisciplineAssociatedSkills from '../../../molecule/discipline-associated-skills';\nimport Share, {ShareFeedback, ShareStatusProvider} from '../../../molecule/share';\nimport AddToMyList, {\n AddToMyListFeedback,\n AddToMyListStatusProvider\n} from '../../../molecule/add-to-my-list';\nimport style from './style.css';\n\nconst Discipline = (props, context) => {\n const {\n selected = 0,\n level,\n levels,\n changeLevel,\n image,\n title = '',\n video,\n authors = [],\n description = '',\n start,\n buy,\n startLabel,\n skills = [],\n onSkillClick,\n buyLabel,\n shareWording,\n shareText,\n shareSuccessWording,\n shareErrorWording,\n addToMyListButton,\n favorite,\n onFavoriteClick,\n addToMyListText,\n removeFromMyListText,\n disableShare = false,\n disableAddToMyList = false,\n lastUpdated\n } = props;\n\n const authorSection = isEmpty(authors) ? null : (\n <div className={style.partners}>\n <DisciplinePartners authors={authors} />\n </div>\n );\n\n const disciplineCTA = (\n <DisciplineCTA\n type={'discipline'}\n start={start}\n buy={buy}\n startLabel={startLabel}\n buyLabel={buyLabel}\n />\n );\n\n const disciplineContent = (\n <div className={style.content}>\n <DisciplineScope content={level} levels={levels} selected={selected} onClick={changeLevel} />\n </div>\n );\n\n const disciplineHeader = (\n <div className={style.header}>\n <DisciplineHeader\n image={image}\n video={video}\n title={title}\n description={description}\n lastUpdated={lastUpdated}\n />\n </div>\n );\n\n const discipline = (\n <div data-name=\"discipline\" className={style.container} key=\"discipline\">\n <div className={style.leftSection}>\n {disciplineHeader}\n <div className={style.mobileAuthorCtaSection}>\n <div className={style.columnReverse}>\n <div className={style.cta}>{disciplineCTA}</div>\n {disableAddToMyList ? null : (\n <AddToMyList\n style={style.addToMyListBtn}\n addToMyListButton={addToMyListButton}\n favorite={favorite}\n onFavoriteClick={onFavoriteClick}\n key={'addToMyListTablet'}\n />\n )}\n {disableShare ? null : (\n <Share\n style={style.shareBtn}\n wording={shareWording}\n text={shareText}\n key={'shareTablet'}\n />\n )}\n </div>\n <DisciplineAssociatedSkills skills={skills} onSkillClick={onSkillClick} />\n {authorSection}\n </div>\n {disciplineContent}\n </div>\n <div className={style.rightSection}>\n <div className={style.stickySection}>\n <div className={style.cta}>\n {disciplineCTA}\n {disableShare && disableAddToMyList ? null : (\n <div className={style.buttons}>\n {disableShare ? null : (\n <Share\n style={style.shareBtn}\n wording={shareWording}\n text={shareText}\n key={'shareDesktop'}\n />\n )}\n {disableAddToMyList ? null : (\n <AddToMyList\n style={style.addToMyListBtn}\n addToMyListButton={addToMyListButton}\n favorite={favorite}\n onFavoriteClick={onFavoriteClick}\n key={'addToMyListDesktop'}\n />\n )}\n </div>\n )}\n </div>\n <DisciplineAssociatedSkills skills={skills} onSkillClick={onSkillClick} />\n {authorSection}\n </div>\n </div>\n </div>\n );\n\n const shareFeedBack = disableShare ? null : (\n <ShareFeedback\n errorWording={shareErrorWording}\n successWording={shareSuccessWording}\n key=\"shareFeedBack\"\n />\n );\n\n const addToMyListFeedback = disableAddToMyList ? null : (\n <AddToMyListFeedback\n addToMyListText={addToMyListText}\n removeFromMyListText={removeFromMyListText}\n favorite={favorite}\n />\n );\n\n const addToMyListProviderWrap = disableAddToMyList ? (\n <>\n {shareFeedBack}\n {discipline}\n </>\n ) : (\n <AddToMyListStatusProvider>\n {shareFeedBack}\n {addToMyListFeedback}\n {discipline}\n </AddToMyListStatusProvider>\n );\n const shareProviderWrap = disableShare ? (\n addToMyListProviderWrap\n ) : (\n <ShareStatusProvider>{addToMyListProviderWrap}</ShareStatusProvider>\n );\n\n return shareProviderWrap;\n};\n\nDiscipline.propTypes = {\n image: DisciplineHeader.propTypes.image,\n video: DisciplineHeader.propTypes.video,\n title: DisciplineHeader.propTypes.title,\n description: DisciplineHeader.propTypes.description,\n start: DisciplineCTA.propTypes.start,\n buy: DisciplineCTA.propTypes.buy,\n startLabel: DisciplineCTA.propTypes.startLabel,\n buyLabel: DisciplineCTA.propTypes.buyLabel,\n authors: DisciplinePartners.propTypes.authors,\n level: DisciplineScope.propTypes.content,\n levels: DisciplineScope.propTypes.levels,\n selected: DisciplineScope.propTypes.selected,\n changeLevel: DisciplineScope.propTypes.onClick,\n shareWording: Share.propTypes.wording,\n shareText: Share.propTypes.text,\n shareSuccessWording: ShareFeedback.propTypes.successWording,\n shareErrorWording: ShareFeedback.propTypes.errorWording,\n skills: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n ref: PropTypes.string,\n locale: PropTypes.string,\n focused: PropTypes.bool\n })\n ),\n onSkillClick: PropTypes.func,\n addToMyListText: AddToMyListFeedback.propTypes.addToMyListText,\n removeFromMyListText: AddToMyListFeedback.propTypes.removeFromMyListText,\n addToMyListButton: AddToMyList.propTypes.addToMyListButton,\n onFavoriteClick: AddToMyList.propTypes.onFavoriteClick,\n favorite: AddToMyList.propTypes.favorite,\n disableShare: PropTypes.bool,\n disableAddToMyList: PropTypes.bool\n};\n\nDiscipline.contextTypes = {\n translate: PropTypes.func\n};\n\nexport default Discipline;\n"],"mappings":"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"}
|
|
@@ -79,6 +79,9 @@ declare namespace SearchPage {
|
|
|
79
79
|
}>>;
|
|
80
80
|
const cards: PropTypes.Requireable<PropTypes.InferProps<{
|
|
81
81
|
list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
82
|
+
customStyle: PropTypes.Requireable<{
|
|
83
|
+
[x: string]: string | null | undefined;
|
|
84
|
+
}>;
|
|
82
85
|
loading: PropTypes.Requireable<boolean>;
|
|
83
86
|
}>>;
|
|
84
87
|
const clearFilters: PropTypes.Requireable<PropTypes.InferProps<{
|
|
@@ -111,7 +114,7 @@ declare namespace SearchPage {
|
|
|
111
114
|
const recommendations: PropTypes.Requireable<PropTypes.InferProps<{
|
|
112
115
|
contentType: PropTypes.Requireable<string>;
|
|
113
116
|
dataName: PropTypes.Requireable<string>;
|
|
114
|
-
title: PropTypes.Requireable<
|
|
117
|
+
title: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
|
|
115
118
|
showMore: PropTypes.Requireable<string>;
|
|
116
119
|
cards: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
117
120
|
badge: PropTypes.Requireable<string>;
|
|
@@ -165,6 +168,9 @@ declare namespace SearchPage {
|
|
|
165
168
|
adaptive: PropTypes.Requireable<string>;
|
|
166
169
|
}>>;
|
|
167
170
|
}> | null | undefined)[]>;
|
|
171
|
+
customStyle: PropTypes.Requireable<{
|
|
172
|
+
[x: string]: string | null | undefined;
|
|
173
|
+
}>;
|
|
168
174
|
onScroll: PropTypes.Requireable<(...args: any[]) => any>;
|
|
169
175
|
onShowMore: PropTypes.Requireable<(...args: any[]) => any>;
|
|
170
176
|
'arrows-aria-label': PropTypes.Requireable<PropTypes.InferProps<{
|
|
@@ -248,6 +254,9 @@ declare namespace SearchPage {
|
|
|
248
254
|
type: PropTypes.Requireable<string>;
|
|
249
255
|
list: PropTypes.Requireable<NonNullable<PropTypes.InferProps<{
|
|
250
256
|
list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
257
|
+
customStyle: PropTypes.Requireable<{
|
|
258
|
+
[x: string]: string | null | undefined;
|
|
259
|
+
}>;
|
|
251
260
|
loading: PropTypes.Requireable<boolean>;
|
|
252
261
|
}> | PropTypes.InferProps<{
|
|
253
262
|
'aria-label': PropTypes.Requireable<string>;
|
|
@@ -93,6 +93,9 @@ declare namespace ExternalCourse {
|
|
|
93
93
|
type: PropTypes.Requireable<string>;
|
|
94
94
|
list: PropTypes.Requireable<NonNullable<PropTypes.InferProps<{
|
|
95
95
|
list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
96
|
+
customStyle: PropTypes.Requireable<{
|
|
97
|
+
[x: string]: string | null | undefined;
|
|
98
|
+
}>;
|
|
96
99
|
loading: PropTypes.Requireable<boolean>;
|
|
97
100
|
}> | PropTypes.InferProps<{
|
|
98
101
|
'aria-label': PropTypes.Requireable<string>;
|
|
@@ -43,6 +43,9 @@ declare namespace MyLearning {
|
|
|
43
43
|
const skillsLocales: PropTypes.Requireable<{
|
|
44
44
|
[x: string]: string | null | undefined;
|
|
45
45
|
}>;
|
|
46
|
+
const skillIds: PropTypes.Requireable<{
|
|
47
|
+
[x: string]: string | null | undefined;
|
|
48
|
+
}>;
|
|
46
49
|
const learnerFeature: PropTypes.Requireable<boolean>;
|
|
47
50
|
const isLoading: PropTypes.Requireable<boolean>;
|
|
48
51
|
const onSkillFocusConfirm: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AAyHA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AAyHA,mEAwYC"}
|
|
@@ -121,7 +121,7 @@ const FilterButton = (props, context) => {
|
|
|
121
121
|
backgroundColor: active ? (0, _cssColorFunction.convert)(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',
|
|
122
122
|
color: active ? primarySkinColor : '#515161'
|
|
123
123
|
}
|
|
124
|
-
}, skillTotal)), [filter, skillTotal, active]);
|
|
124
|
+
}, skillTotal)), [filter, skillTotal, active, primarySkinColor]);
|
|
125
125
|
const buttonProps = {
|
|
126
126
|
customStyle: {
|
|
127
127
|
backgroundColor: active ? (0, _cssColorFunction.convert)(`color(${primarySkinColor} a(0.07))`) : '#FFFFFF',
|
|
@@ -153,6 +153,7 @@ const MyLearning = (props, context) => {
|
|
|
153
153
|
selectedSkills = [],
|
|
154
154
|
skillsInformation,
|
|
155
155
|
skillsLocales,
|
|
156
|
+
skillIds,
|
|
156
157
|
learnerFeature = true,
|
|
157
158
|
isLoading,
|
|
158
159
|
onSkillFocusConfirm,
|
|
@@ -237,6 +238,9 @@ const MyLearning = (props, context) => {
|
|
|
237
238
|
setSearchValue('');
|
|
238
239
|
setSearchResults(skills);
|
|
239
240
|
}, [skills, setSearchValue, setSearchResults]);
|
|
241
|
+
const handleExploreClick = (0, _react.useCallback)(skillRef => {
|
|
242
|
+
onExploreSkill(skillIds[skillRef]);
|
|
243
|
+
}, [skillIds, onExploreSkill]);
|
|
240
244
|
const ReviewTooltipContent = (0, _react.useCallback)(() => /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("b", null, translate('review_mode_tooltip_header'))), /*#__PURE__*/_react.default.createElement("p", null, translate('review_mode_tooltip_content')), /*#__PURE__*/_react.default.createElement("ol", null, /*#__PURE__*/_react.default.createElement("li", null, translate('review_mode_tooltip_content_part1')), /*#__PURE__*/_react.default.createElement("li", null, translate('review_mode_tooltip_content_part2')), /*#__PURE__*/_react.default.createElement("li", null, translate('review_mode_tooltip_content_part3')), /*#__PURE__*/_react.default.createElement("li", null, translate('review_mode_tooltip_content_part4')))), [translate]);
|
|
241
245
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
242
246
|
className: _style.default.backgroundContainer
|
|
@@ -289,7 +293,7 @@ const MyLearning = (props, context) => {
|
|
|
289
293
|
data: graphDatas,
|
|
290
294
|
legend: graphLegends,
|
|
291
295
|
onClick: handleOnDotClick,
|
|
292
|
-
onExploreClick:
|
|
296
|
+
onExploreClick: handleExploreClick,
|
|
293
297
|
colors: [{
|
|
294
298
|
gradient: {
|
|
295
299
|
fill: ['#0062ffff', '#8000ff85'],
|
|
@@ -408,7 +412,7 @@ const MyLearning = (props, context) => {
|
|
|
408
412
|
}
|
|
409
413
|
|
|
410
414
|
function handleExploreSkill() {
|
|
411
|
-
onExploreSkill(skill);
|
|
415
|
+
onExploreSkill(skillIds[skill]);
|
|
412
416
|
}
|
|
413
417
|
|
|
414
418
|
const {
|
|
@@ -453,6 +457,7 @@ MyLearning.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
453
457
|
})
|
|
454
458
|
})),
|
|
455
459
|
skillsLocales: _propTypes.default.objectOf(_propTypes.default.string),
|
|
460
|
+
skillIds: _propTypes.default.objectOf(_propTypes.default.string),
|
|
456
461
|
learnerFeature: _propTypes.default.bool,
|
|
457
462
|
isLoading: _propTypes.default.bool,
|
|
458
463
|
onSkillFocusConfirm: _propTypes.default.func,
|
|
@@ -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","skillRef","activeFilter","setActiveFilter","skillsReviewReady","useMemo","skill","availableForReview","graphDatas","toFixed","graphLegends","filters","all","review","sumKpi","kpi","skillFocusSelectedOnChartScore","stats","coursedCompletedData","questionsToReviewData","learningTimeData","skillChartPaneLegends","focusedSkill","skillChartPanelProps","title","value","legend","icon","iconName","formatMinutes","handleOnDotClick","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","defaultStats","score","contentCompleted","questionsToReview","handleReviewSkill","handleExploreSkill","includes","arrayOf","objectOf","shape","learningTime"],"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 {get, keys, map, fromPairs, pipe, sumBy, getOr, sortBy} 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 {formatMinutes} from '../../util/time-format';\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 = get('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('skills_change_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 skin: Provider.childContextTypes.skin,\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} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span\n className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}\n style={{\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',\n color: active ? primarySkinColor : '#515161'\n }}\n >\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: '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 skin: Provider.childContextTypes.skin,\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 {skin, translate} = context;\n const primarySkinColor = get('common.primary', skin);\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(\n sortBy(skillRef => -getOr(0, [skillRef, 'stats', 'score'], skillsInformation), skills)\n );\n const [activeFilter, setActiveFilter] = useState('all');\n const [hovered, setHovered] = useState(false);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const skillsReviewReady = useMemo(() => {\n return searchResults.filter(skill =>\n skillsInformation[skill] ? skillsInformation[skill].availableForReview : false\n );\n }, [searchResults, skillsInformation]);\n\n const graphDatas = useMemo(\n () =>\n pipe(\n map(skill => [skill, getOr(0, [skill, 'stats', 'score'], skillsInformation).toFixed(1)]),\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 const skillFocusSelectedOnChartScore = getOr(\n 0,\n [skillFocusSelectedOnChart, 'stats', `${kpi}`],\n skillsInformation\n );\n return skillFocusSelectedOnChart\n ? skillFocusSelectedOnChartScore\n : sumBy(\n skill => (skillsInformation[skill] ? skillsInformation[skill].stats[kpi] : 0),\n selectedSkillsList\n );\n },\n [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]\n );\n\n const coursedCompletedData = useMemo(() => sumKpi('contentCompleted'), [sumKpi]);\n\n const questionsToReviewData = useMemo(() => sumKpi('questionsToReview'), [sumKpi]);\n\n const learningTimeData = useMemo(() => sumKpi('learningTime'), [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_content_completed'),\n value: `${coursedCompletedData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'book-open-cover', backgroundColor: '#D9F4F7'}\n },\n {\n title: translate('skill_chart_side_panel_learning_hours'),\n value: formatMinutes(learningTimeData),\n legend: skillChartPaneLegends,\n icon: {iconName: 'clock', backgroundColor: '#FAD6DE'}\n },\n {\n title: translate('skill_chart_side_panel_questions_to_review'),\n value: `${questionsToReviewData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'circle-question', backgroundColor: '#FFDCD1'}\n }\n ];\n\n const handleOnDotClick = useCallback(\n skillRef => {\n 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 data-name=\"skill-focus-container\" 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 data-name=\"skill-focus-title\" className={style.skillFocusHeaderTitle}>\n {translate('skills_focus')}\n </div>\n <div\n data-name=\"skill-focus-description\"\n className={style.skillFocusHeaderDescription}\n >\n {translate('skills_focus_description')}\n </div>\n </div>\n </div>\n {selectedSkillsList.length >= 3 ? (\n <ChangeSkillFocusButton onClick={handleOpenSkillPicker} />\n ) : null}\n </header>\n {selectedSkillsList.length >= 3 ? (\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 onExploreClick={onExploreSkill}\n colors={[\n {\n gradient: {\n fill: ['#0062ffff', '#8000ff85'],\n stroke: ['#0062ffff', '#8000FF']\n },\n percentage: {\n color: primarySkinColor,\n background: convert(`color(${primarySkinColor} a(0.07))`)\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('skills_focus_empty_title')}\n </div>\n <div className={style.skillFocusEmptyDescription}>\n {translate('skills_focus_empty_description')}\n </div>\n <div onMouseOver={handleMouseOver} onMouseLeave={handleMouseLeave}>\n <ButtonLink\n label={translate('skills_choose_focus')}\n type=\"primary\"\n customStyle={{\n width: 'fit-contain',\n backgroundColor: hovered\n ? convert(`hsl(from ${primarySkinColor} h s calc(l*(1 - 0.08)))`)\n : primarySkinColor\n }}\n onClick={handleOpenSkillPicker}\n />\n </div>\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('close_tooltip_information')}\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_empty')}\n textNoSkills={translate('review_skill_empty_description')}\n iconSkillAriaLabel={translate('review_skill_empty')}\n imagePosition=\"top\"\n />\n </div>\n ) : (\n filters[activeFilter].map((skill, index) => {\n const defaultStats = {\n score: 0,\n content: 0,\n contentCompleted: 0,\n questionsToReview: 0\n };\n\n function handleReviewSkill() {\n onReviewSkill(skill);\n }\n function handleExploreSkill() {\n onExploreSkill(skill);\n }\n const {score, content, questionsToReview, contentCompleted} = skillsInformation[\n skill\n ]\n ? skillsInformation[skill].stats\n : defaultStats;\n return (\n <div key={index}>\n <LearnerSkillCard\n skillTitle={skillsLocales[skill]}\n focus={selectedSkills.includes(skill)}\n metrics={{\n score: score.toFixed(1),\n content,\n questionsToReview,\n contentCompleted\n }}\n review={\n skillsInformation[skill]\n ? skillsInformation[skill].availableForReview\n : false\n }\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 skin: Provider.childContextTypes.skin,\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 content: PropTypes.number,\n contentCompleted: PropTypes.number,\n questionsToReview: PropTypes.number,\n learningTime: 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":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,MAAMA,sBAAsB,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACjD,MAAM,CAACC,OAAD,EAAUC,UAAV,IAAwB,IAAAC,eAAA,EAAS,KAAT,CAA9B;EACA,MAAM;IAACC;EAAD,IAAYL,KAAlB;EACA,MAAM;IAACM,IAAD;IAAOC;EAAP,IAAoBN,OAA1B;EACA,MAAMO,gBAAgB,GAAG,mBAAI,gBAAJ,EAAsBF,IAAtB,CAAzB;EAEA,MAAMG,eAAe,GAAG,IAAAC,kBAAA,EAAY,MAAMP,UAAU,CAAC,IAAD,CAA5B,EAAoC,CAACA,UAAD,CAApC,CAAxB;EAEA,MAAMQ,gBAAgB,GAAG,IAAAD,kBAAA,EAAY,MAAMP,UAAU,CAAC,KAAD,CAA5B,EAAqC,CAACA,UAAD,CAArC,CAAzB;EAEA,oBACE;IACE,aAAU,wBADZ;IAEE,WAAW,EAAEM,eAFf;IAGE,YAAY,EAAEE;EAHhB,gBAKE,6BAAC,mBAAD;IACE,WAAW,EAAE;MACXC,eAAe,EAAEV,OAAO,GACpBM,gBADoB,GAEpB,IAAAK,yBAAA,EAAS,SAAQL,gBAAiB,WAAlC,CAHO;MAIXM,KAAK,EAAEZ,OAAO,GAAG,SAAH,GAAeM,gBAJlB;MAKXO,UAAU,EAAE;IALD,CADf;IAQE,OAAO,EAAEV,OARX;IASE,KAAK,EAAEE,SAAS,CAAC,qBAAD,CATlB;IAUE,aAAU,2BAVZ;IAWE,IAAI,EAAE;MACJS,QAAQ,EAAE,MADN;MAEJC,MAAM,EAAE;QACNC,IAAI,EAAE,eADA;QAENN,eAAe,EAAEV,OAAO,GACpBM,gBADoB,GAEpB,IAAAK,yBAAA,EAAS,SAAQL,gBAAiB,WAAlC,CAJE;QAKNM,KAAK,EAAEZ,OAAO,GAAG,SAAH,GAAeM,gBALvB;QAMNW,IAAI,EAAE;MANA;IAFJ;EAXR,EALF,CADF;AA+BD,CAzCD;;AA2CApB,sBAAsB,CAACqB,YAAvB,GAAsC;EACpCd,IAAI,EAAEe,iBAAA,CAASC,iBAAT,CAA2BhB,IADG;EAEpCC,SAAS,EAAEc,iBAAA,CAASC,iBAAT,CAA2Bf;AAFF,CAAtC;AAKAR,sBAAsB,CAACwB,SAAvB,2CAAmC;EACjClB,OAAO,EAAEmB,kBAAA,CAAUC;AADc,CAAnC;;AAIA,MAAMC,YAAY,GAAG,CAAC1B,KAAD,EAAQC,OAAR,KAAoB;EACvC,MAAM;IAAC0B,MAAD;IAASC,MAAT;IAAiBC,UAAjB;IAA6BxB;EAA7B,IAAwCL,KAA9C;EACA,MAAM;IAACM;EAAD,IAASL,OAAf;EACA,MAAMO,gBAAgB,GAAG,mBAAI,gBAAJ,EAAsBF,IAAtB,CAAzB;EAEA,MAAMwB,OAAO,GAAG,IAAApB,kBAAA,EACd,mBACE,0CACGkB,MADH,eAEE;IACE,SAAS,EAAED,MAAM,GAAGI,cAAA,CAAMC,iBAAT,GAA6BD,cAAA,CAAME,yBADtD;IAEE,KAAK,EAAE;MACLrB,eAAe,EAAEe,MAAM,GAAG,IAAAd,yBAAA,EAAS,SAAQL,gBAAiB,WAAlC,CAAH,GAAmD,SADrE;MAELM,KAAK,EAAEa,MAAM,GAAGnB,gBAAH,GAAsB;IAF9B;EAFT,GAOGqB,UAPH,CAFF,CAFY,EAed,CAACD,MAAD,EAASC,UAAT,EAAqBF,MAArB,CAfc,CAAhB;EAkBA,MAAMO,WAAW,GAAG;IAClBC,WAAW,EAAE;MACXvB,eAAe,EAAEe,MAAM,GAAG,IAAAd,yBAAA,EAAS,SAAQL,gBAAiB,WAAlC,CAAH,GAAmD,SAD/D;MAEXM,KAAK,EAAEa,MAAM,GAAGnB,gBAAH,GAAsB,SAFxB;MAGXO,UAAU,EAAE,6DAHD;MAIXqB,KAAK,EAAE;IAJI,CADK;IAOlB/B,OAPkB;IAQlBgC,OAAO,eAAE,6BAAC,OAAD,OARS;IASlB,aAAa;EATK,CAApB;EAYA,oBAAO,6BAAC,mBAAD,EAAgBH,WAAhB,CAAP;AACD,CApCD;;AAsCAR,YAAY,CAACN,YAAb,GAA4B;EAC1Bd,IAAI,EAAEe,iBAAA,CAASC,iBAAT,CAA2BhB,IADP;EAE1BC,SAAS,EAAEc,iBAAA,CAASC,iBAAT,CAA2Bf;AAFZ,CAA5B;AAKAmB,YAAY,CAACH,SAAb,2CAAyB;EACvBI,MAAM,EAAEH,kBAAA,CAAUc,IADK;EAEvBV,MAAM,EAAEJ,kBAAA,CAAUe,MAFK;EAGvBV,UAAU,EAAEL,kBAAA,CAAUgB,MAHC;EAIvBnC,OAAO,EAAEmB,kBAAA,CAAUC;AAJI,CAAzB;;AAOA,MAAMgB,UAAU,GAAG,CAACzC,KAAD,EAAQC,OAAR,KAAoB;EACrC,MAAM;IACJyC,MADI;IAEJC,cAAc,GAAG,EAFb;IAGJC,iBAHI;IAIJC,aAJI;IAKJC,cAAc,GAAG,IALb;IAMJC,SANI;IAOJC,mBAPI;IAQJC,aARI;IASJC;EATI,IAUFlD,KAVJ;EAWA,MAAM;IAACM,IAAD;IAAOC;EAAP,IAAoBN,OAA1B;EACA,MAAMO,gBAAgB,GAAG,mBAAI,gBAAJ,EAAsBF,IAAtB,CAAzB;EACA,MAAM,CAAC6C,IAAD,EAAOC,OAAP,IAAkB,IAAAhD,eAAA,EAAS,KAAT,CAAxB;EACA,MAAM,CAACiD,kBAAD,EAAqBC,qBAArB,IAA8C,IAAAlD,eAAA,EAASuC,cAAT,CAApD;EACA,MAAM,CAACY,yBAAD,EAA4BC,4BAA5B,IAA4D,IAAApD,eAAA,EAASqD,SAAT,CAAlE;EACA,MAAM,CAACC,WAAD,EAAcC,cAAd,IAAgC,IAAAvD,eAAA,EAAS,EAAT,CAAtC;EACA,MAAM,CAACwD,aAAD,EAAgBC,gBAAhB,IAAoC,IAAAzD,eAAA,EACxC,sBAAO0D,QAAQ,IAAI,CAAC,qBAAM,CAAN,EAAS,CAACA,QAAD,EAAW,OAAX,EAAoB,OAApB,CAAT,EAAuClB,iBAAvC,CAApB,EAA+EF,MAA/E,CADwC,CAA1C;EAGA,MAAM,CAACqB,YAAD,EAAeC,eAAf,IAAkC,IAAA5D,eAAA,EAAS,KAAT,CAAxC;EACA,MAAM,CAACF,OAAD,EAAUC,UAAV,IAAwB,IAAAC,eAAA,EAAS,KAAT,CAA9B;EAEA,MAAMK,eAAe,GAAG,IAAAC,kBAAA,EAAY,MAAMP,UAAU,CAAC,IAAD,CAA5B,EAAoC,CAACA,UAAD,CAApC,CAAxB;EAEA,MAAMQ,gBAAgB,GAAG,IAAAD,kBAAA,EAAY,MAAMP,UAAU,CAAC,KAAD,CAA5B,EAAqC,CAACA,UAAD,CAArC,CAAzB;EAEA,MAAM8D,iBAAiB,GAAG,IAAAC,cAAA,EAAQ,MAAM;IACtC,OAAON,aAAa,CAAChC,MAAd,CAAqBuC,KAAK,IAC/BvB,iBAAiB,CAACuB,KAAD,CAAjB,GAA2BvB,iBAAiB,CAACuB,KAAD,CAAjB,CAAyBC,kBAApD,GAAyE,KADpE,CAAP;EAGD,CAJyB,EAIvB,CAACR,aAAD,EAAgBhB,iBAAhB,CAJuB,CAA1B;EAMA,MAAMyB,UAAU,GAAG,IAAAH,cAAA,EACjB,MACE,oBACE,mBAAIC,KAAK,IAAI,CAACA,KAAD,EAAQ,qBAAM,CAAN,EAAS,CAACA,KAAD,EAAQ,OAAR,EAAiB,OAAjB,CAAT,EAAoCvB,iBAApC,EAAuD0B,OAAvD,CAA+D,CAA/D,CAAR,CAAb,CADF,uBAGEjB,kBAHF,CAFe,EAMjB,CAACA,kBAAD,EAAqBT,iBAArB,CANiB,CAAnB;EASA,MAAM2B,YAAY,GAAG,IAAAL,cAAA,EACnB,MACE,oBACE,mBAAIC,KAAK,IAAI,CAACA,KAAD,EAAQtB,aAAa,CAACsB,KAAD,CAArB,CAAb,CADF,uBAGEd,kBAHF,CAFiB,EAMnB,CAACA,kBAAD,EAAqBR,aAArB,CANmB,CAArB;EASA,MAAM2B,OAAO,GAAG,IAAAN,cAAA,EAAQ,MAAM;IAC5B,OAAO;MACLO,GAAG,EAAEb,aADA;MAELc,MAAM,EAAET;IAFH,CAAP;EAID,CALe,EAKb,CAACL,aAAD,EAAgBK,iBAAhB,CALa,CAAhB;EAOA,MAAMU,MAAM,GAAG,IAAAjE,kBAAA,EACbkE,GAAG,IAAI;IACL,MAAMC,8BAA8B,GAAG,qBACrC,CADqC,EAErC,CAACtB,yBAAD,EAA4B,OAA5B,EAAsC,GAAEqB,GAAI,EAA5C,CAFqC,EAGrChC,iBAHqC,CAAvC;IAKA,OAAOW,yBAAyB,GAC5BsB,8BAD4B,GAE5B,qBACEV,KAAK,IAAKvB,iBAAiB,CAACuB,KAAD,CAAjB,GAA2BvB,iBAAiB,CAACuB,KAAD,CAAjB,CAAyBW,KAAzB,CAA+BF,GAA/B,CAA3B,GAAiE,CAD7E,EAEEvB,kBAFF,CAFJ;EAMD,CAbY,EAcb,CAACE,yBAAD,EAA4BX,iBAA5B,EAA+CS,kBAA/C,CAda,CAAf;EAiBA,MAAM0B,oBAAoB,GAAG,IAAAb,cAAA,EAAQ,MAAMS,MAAM,CAAC,kBAAD,CAApB,EAA0C,CAACA,MAAD,CAA1C,CAA7B;EAEA,MAAMK,qBAAqB,GAAG,IAAAd,cAAA,EAAQ,MAAMS,MAAM,CAAC,mBAAD,CAApB,EAA2C,CAACA,MAAD,CAA3C,CAA9B;EAEA,MAAMM,gBAAgB,GAAG,IAAAf,cAAA,EAAQ,MAAMS,MAAM,CAAC,cAAD,CAApB,EAAsC,CAACA,MAAD,CAAtC,CAAzB;EAEA,MAAMO,qBAAqB,GAAG,IAAAhB,cAAA,EAC5B,MACE3D,SAAS,CAAC,uBAAD,EAA0B;IACjC4E,YAAY,EAAE5B,yBAAyB,GACnCV,aAAa,CAACU,yBAAD,CADsB,GAEnChD,SAAS,CAAC,gBAAD;EAHoB,CAA1B,CAFiB,EAO5B,CAACA,SAAD,EAAYsC,aAAZ,EAA2BU,yBAA3B,CAP4B,CAA9B;EASA,MAAM6B,oBAAoB,GAAG,CAC3B;IACEC,KAAK,EAAE9E,SAAS,CAAC,0CAAD,CADlB;IAEE+E,KAAK,EAAG,GAAEP,oBAAqB,EAFjC;IAGEQ,MAAM,EAAEL,qBAHV;IAIEM,IAAI,EAAE;MAACC,QAAQ,EAAE,iBAAX;MAA8B7E,eAAe,EAAE;IAA/C;EAJR,CAD2B,EAO3B;IACEyE,KAAK,EAAE9E,SAAS,CAAC,uCAAD,CADlB;IAEE+E,KAAK,EAAE,IAAAI,yBAAA,EAAcT,gBAAd,CAFT;IAGEM,MAAM,EAAEL,qBAHV;IAIEM,IAAI,EAAE;MAACC,QAAQ,EAAE,OAAX;MAAoB7E,eAAe,EAAE;IAArC;EAJR,CAP2B,EAa3B;IACEyE,KAAK,EAAE9E,SAAS,CAAC,4CAAD,CADlB;IAEE+E,KAAK,EAAG,GAAEN,qBAAsB,EAFlC;IAGEO,MAAM,EAAEL,qBAHV;IAIEM,IAAI,EAAE;MAACC,QAAQ,EAAE,iBAAX;MAA8B7E,eAAe,EAAE;IAA/C;EAJR,CAb2B,CAA7B;EAqBA,MAAM+E,gBAAgB,GAAG,IAAAjF,kBAAA,EACvBoD,QAAQ,IAAI;IACVN,4BAA4B,CAACM,QAAD,CAA5B;EACD,CAHsB,EAIvB,CAACN,4BAAD,CAJuB,CAAzB;EAMA,MAAMoC,qBAAqB,GAAG,IAAAlF,kBAAA,EAAY,MAAM0C,OAAO,CAAC,IAAD,CAAzB,EAAiC,CAACA,OAAD,CAAjC,CAA9B;EACA,MAAMyC,sBAAsB,GAAG,IAAAnF,kBAAA,EAAY,MAAM0C,OAAO,CAAC,KAAD,CAAzB,EAAkC,CAACA,OAAD,CAAlC,CAA/B;EACA,MAAM0C,wBAAwB,GAAG,IAAApF,kBAAA,EAC/BqF,cAAc,IAAI;IAChBzC,qBAAqB,CAACyC,cAAD,CAArB;IACA/C,mBAAmB,CAAC+C,cAAD,CAAnB;IACA3C,OAAO,CAAC,KAAD,CAAP;EACD,CAL8B,EAM/B,CAACJ,mBAAD,EAAsBM,qBAAtB,EAA6CF,OAA7C,CAN+B,CAAjC;EAQA,MAAM4C,YAAY,GAAG,IAAAtF,kBAAA,EACnB4E,KAAK,IAAI;IACP3B,cAAc,CAAC2B,KAAD,CAAd;IACAzB,gBAAgB,CAACnB,MAAM,CAACd,MAAP,CAAcuC,KAAK,IAAI,IAAA8B,4BAAA,EAAoBpD,aAAa,CAACsB,KAAD,CAAjC,EAA0CmB,KAA1C,CAAvB,CAAD,CAAhB;EACD,CAJkB,EAKnB,CAAC5C,MAAD,EAASG,aAAT,EAAwBc,cAAxB,EAAwCE,gBAAxC,CALmB,CAArB;EAOA,MAAMqC,iBAAiB,GAAG,IAAAxF,kBAAA,EAAY,MAAM;IAC1CiD,cAAc,CAAC,EAAD,CAAd;IACAE,gBAAgB,CAACnB,MAAD,CAAhB;EACD,CAHyB,EAGvB,CAACA,MAAD,EAASiB,cAAT,EAAyBE,gBAAzB,CAHuB,CAA1B;EAKA,MAAMsC,oBAAoB,GAAG,IAAAzF,kBAAA,EAC3B,mBACE,uDACE,uDACE,wCAAIH,SAAS,CAAC,4BAAD,CAAb,CADF,CADF,eAIE,wCAAIA,SAAS,CAAC,6BAAD,CAAb,CAJF,eAKE,sDACE,yCAAKA,SAAS,CAAC,mCAAD,CAAd,CADF,eAEE,yCAAKA,SAAS,CAAC,mCAAD,CAAd,CAFF,eAGE,yCAAKA,SAAS,CAAC,mCAAD,CAAd,CAHF,eAIE,yCAAKA,SAAS,CAAC,mCAAD,CAAd,CAJF,CALF,CAFyB,EAe3B,CAACA,SAAD,CAf2B,CAA7B;EAkBA,oBACE;IAAK,SAAS,EAAEwB,cAAA,CAAMqE;EAAtB,gBACE;IAAK,SAAS,EAAErE,cAAA,CAAMsE;EAAtB,gBACE,6BAAC,yBAAD;IACE,MAAM,EAAE3D,MADV;IAEE,cAAc,EAAEW,kBAFlB;IAGE,aAAa,EAAER,aAHjB;IAIE,MAAM,EAAEM,IAJV;IAKE,SAAS,EAAEJ,SALb;IAME,QAAQ,EAAE8C,sBANZ;IAOE,SAAS,EAAEC,wBAPb;IAQE,OAAO,EAAED;EARX,EADF,EAWG/C,cAAc,gBACb;IAAK,aAAU,uBAAf;IAAuC,SAAS,EAAEf,cAAA,CAAMuE;EAAxD,gBACE;IAAQ,SAAS,EAAEvE,cAAA,CAAMwE;EAAzB,gBACE;IAAK,SAAS,EAAExE,cAAA,CAAMyE;EAAtB,gBACE;IAAK,SAAS,EAAEzE,cAAA,CAAM0E;EAAtB,gBACE,6BAAC,aAAD;IACE,QAAQ,EAAC,gBADX;IAEE,eAAe,EAAC,SAFlB;IAGE,YAAY,EAAC,MAHf;IAIE,IAAI,EAAE;MAACC,MAAM,EAAE,EAAT;MAAaC,WAAW,EAAE;IAA1B;EAJR,EADF,CADF,eASE;IAAK,SAAS,EAAE5E,cAAA,CAAM6E;EAAtB,gBACE;IAAK,aAAU,mBAAf;IAAmC,SAAS,EAAE7E,cAAA,CAAM8E;EAApD,GACGtG,SAAS,CAAC,cAAD,CADZ,CADF,eAIE;IACE,aAAU,yBADZ;IAEE,SAAS,EAAEwB,cAAA,CAAM+E;EAFnB,GAIGvG,SAAS,CAAC,0BAAD,CAJZ,CAJF,CATF,CADF,EAsBG8C,kBAAkB,CAAC0D,MAAnB,IAA6B,CAA7B,gBACC,6BAAC,sBAAD;IAAwB,OAAO,EAAEnB;EAAjC,EADD,GAEG,IAxBN,CADF,EA2BGvC,kBAAkB,CAAC0D,MAAnB,IAA6B,CAA7B,gBACC;IAAK,SAAS,EAAEhF,cAAA,CAAMiF;EAAtB,gBACE;IAAK,SAAS,EAAEjF,cAAA,CAAMkF;EAAtB,gBACE,6BAAC,kCAAD;IACE,YAAY,EAAE,CADhB;IAEE,MAAM,EAAE,GAFV;IAGE,KAAK,EAAE,GAHT;IAIE,IAAI,EAAE5C,UAJR;IAKE,MAAM,EAAEE,YALV;IAME,OAAO,EAAEoB,gBANX;IAOE,cAAc,EAAEzC,cAPlB;IAQE,MAAM,EAAE,CACN;MACEgE,QAAQ,EAAE;QACRC,IAAI,EAAE,CAAC,WAAD,EAAc,WAAd,CADE;QAERC,MAAM,EAAE,CAAC,WAAD,EAAc,SAAd;MAFA,CADZ;MAKEC,UAAU,EAAE;QACVvG,KAAK,EAAEN,gBADG;QAEV8G,UAAU,EAAE,IAAAzG,yBAAA,EAAS,SAAQL,gBAAiB,WAAlC;MAFF,CALd;MASE+G,KAAK,EAAE;QACLzG,KAAK,EAAE;MADF;IATT,CADM;EARV,EADF,CADF,eA2BE,6BAAC,wCAAD;IAAiC,cAAc,EAAEsE;EAAjD,EA3BF,CADD,gBA+BC;IAAK,SAAS,EAAErD,cAAA,CAAMyF;EAAtB,gBACE,6BAAC,gBAAD;IACE,SAAS,EAAEzF,cAAA,CAAM0F,GADnB;IAEE,GAAG,EAAC,4FAFN;IAGE,GAAG,EAAC;EAHN,EADF,eAME;IAAK,SAAS,EAAE1F,cAAA,CAAM2F;EAAtB,GACGnH,SAAS,CAAC,0BAAD,CADZ,CANF,eASE;IAAK,SAAS,EAAEwB,cAAA,CAAM4F;EAAtB,GACGpH,SAAS,CAAC,gCAAD,CADZ,CATF,eAYE;IAAK,WAAW,EAAEE,eAAlB;IAAmC,YAAY,EAAEE;EAAjD,gBACE,6BAAC,mBAAD;IACE,KAAK,EAAEJ,SAAS,CAAC,qBAAD,CADlB;IAEE,IAAI,EAAC,SAFP;IAGE,WAAW,EAAE;MACX6B,KAAK,EAAE,aADI;MAEXxB,eAAe,EAAEV,OAAO,GACpB,IAAAW,yBAAA,EAAS,YAAWL,gBAAiB,0BAArC,CADoB,GAEpBA;IAJO,CAHf;IASE,OAAO,EAAEoF;EATX,EADF,CAZF,CA1DJ,CADa,GAuFX,IAlGN,eAmGE;IAAQ,SAAS,EAAE7D,cAAA,CAAM6F;EAAzB,gBACE;IAAK,SAAS,EAAE7F,cAAA,CAAM8F;EAAtB,gBACE,6BAAC,aAAD;IACE,QAAQ,EAAC,UADX;IAEE,eAAe,EAAC,SAFlB;IAGE,IAAI,EAAE;MAACnB,MAAM,EAAE,EAAT;MAAaC,WAAW,EAAE;IAA1B;EAHR,EADF,CADF,eAQE;IAAK,SAAS,EAAE5E,cAAA,CAAM+F;EAAtB,gBACE;IAAK,SAAS,EAAE/F,cAAA,CAAMgG;EAAtB,GAA6CxH,SAAS,CAAC,sBAAD,CAAtD,CADF,eAEE;IAAK,SAAS,EAAEwB,cAAA,CAAMiG;EAAtB,GACGzH,SAAS,CAAC,4BAAD,CADZ,eAEE,6BAAC,gBAAD;IACE,QAAQ,EAAE,EADZ;IAEE,sBAAsB,EAAEwB,cAAA,CAAMkG,eAFhC;IAGE,gBAAgB,EAAElG,cAAA,CAAMmG,OAH1B;IAIE,cAAc,EAAE/B,oBAJlB;IAKE,oCAAoC,EAAE5F,SAAS,CAAC,2BAAD;EALjD,EAFF,CAFF,CARF,CAnGF,eAyHE;IAAK,SAAS,EAAEwB,cAAA,CAAMoG;EAAtB,gBACE;IAAK,SAAS,EAAEpG,cAAA,CAAMqG;EAAtB,GACG,oBAAK5D,OAAL,EAAc6D,GAAd,CAAkB,CAACzG,MAAD,EAAS0G,KAAT,KAAmB;IACpC,SAASC,iBAAT,GAA6B;MAC3BvE,eAAe,CAACpC,MAAD,CAAf;IACD;;IAED,oBACE;MAAK,GAAG,EAAE0G;IAAV,gBACE,6BAAC,YAAD;MACE,MAAM,EAAEvE,YAAY,KAAKnC,MAD3B;MAEE,MAAM,EACJA,MAAM,KAAK,KAAX,GAAmBrB,SAAS,CAAC,KAAD,CAA5B,GAAsCA,SAAS,CAAC,uBAAD,CAHnD;MAKE,UAAU,EAAEiE,OAAO,CAAC5C,MAAD,CAAP,CAAgBmF,MAL9B;MAME,OAAO,EAAEwB;IANX,EADF,CADF;EAYD,CAjBA,CADH,CADF,eAqBE;IAAK,SAAS,EAAExG,cAAA,CAAMyG;EAAtB,gBACE,6BAAC,mBAAD;IACE,MAAM,EAAE;MACNC,WAAW,EAAElI,SAAS,CAAC,qBAAD,CADhB;MAEN+E,KAAK,EAAE5B,WAFD;MAGNgF,QAAQ,EAAE1C;IAHJ,CADV;IAME,OAAO,EAAEE;EANX,EADF,CArBF,CAzHF,EAyJGxC,WAAW,IAAIE,aAAa,CAACmD,MAAd,KAAyB,CAAxC,gBACC;IAAK,SAAS,EAAEhF,cAAA,CAAM4G;EAAtB,gBACE;IAAK,SAAS,EAAE5G,cAAA,CAAM6G;EAAtB,GACGrI,SAAS,CAAC,2BAAD,EAA8B;IAACmD;EAAD,CAA9B,CADZ,CADF,eAIE;IAAK,SAAS,EAAE3B,cAAA,CAAM8G;EAAtB,GACGtI,SAAS,CAAC,iCAAD,CADZ,CAJF,eAOE;IAAK,SAAS,EAAEwB,cAAA,CAAM+G,4BAAtB;IAAoD,OAAO,EAAE5C;EAA7D,GACG3F,SAAS,CAAC,kCAAD,CADZ,CAPF,CADD,gBAaC;IAAK,SAAS,EAAEwB,cAAA,CAAMgH;EAAtB,GACGhF,YAAY,KAAK,uBAAjB,IAA4CS,OAAO,CAACT,YAAD,CAAP,CAAsBgD,MAAtB,KAAiC,CAA7E,gBACC;IAAK,SAAS,EAAEhF,cAAA,CAAMiH;EAAtB,gBACE,6BAAC,uBAAD;IACE,aAAa,EAAEzI,SAAS,CAAC,oBAAD,CAD1B;IAEE,YAAY,EAAEA,SAAS,CAAC,gCAAD,CAFzB;IAGE,kBAAkB,EAAEA,SAAS,CAAC,oBAAD,CAH/B;IAIE,aAAa,EAAC;EAJhB,EADF,CADD,GAUCiE,OAAO,CAACT,YAAD,CAAP,CAAsBsE,GAAtB,CAA0B,CAAClE,KAAD,EAAQmE,KAAR,KAAkB;IAC1C,MAAMW,YAAY,GAAG;MACnBC,KAAK,EAAE,CADY;MAEnB7G,OAAO,EAAE,CAFU;MAGnB8G,gBAAgB,EAAE,CAHC;MAInBC,iBAAiB,EAAE;IAJA,CAArB;;IAOA,SAASC,iBAAT,GAA6B;MAC3BpG,aAAa,CAACkB,KAAD,CAAb;IACD;;IACD,SAASmF,kBAAT,GAA8B;MAC5BpG,cAAc,CAACiB,KAAD,CAAd;IACD;;IACD,MAAM;MAAC+E,KAAD;MAAQ7G,OAAR;MAAiB+G,iBAAjB;MAAoCD;IAApC,IAAwDvG,iBAAiB,CAC7EuB,KAD6E,CAAjB,GAG1DvB,iBAAiB,CAACuB,KAAD,CAAjB,CAAyBW,KAHiC,GAI1DmE,YAJJ;IAKA,oBACE;MAAK,GAAG,EAAEX;IAAV,gBACE,6BAAC,yBAAD;MACE,UAAU,EAAEzF,aAAa,CAACsB,KAAD,CAD3B;MAEE,KAAK,EAAExB,cAAc,CAAC4G,QAAf,CAAwBpF,KAAxB,CAFT;MAGE,OAAO,EAAE;QACP+E,KAAK,EAAEA,KAAK,CAAC5E,OAAN,CAAc,CAAd,CADA;QAEPjC,OAFO;QAGP+G,iBAHO;QAIPD;MAJO,CAHX;MASE,MAAM,EACJvG,iBAAiB,CAACuB,KAAD,CAAjB,GACIvB,iBAAiB,CAACuB,KAAD,CAAjB,CAAyBC,kBAD7B,GAEI,KAZR;MAcE,aAAa,EAAEiF,iBAdjB;MAeE,cAAc,EAAEC;IAflB,EADF,CADF;EAqBD,CAxCD,CAXJ,CAtKJ,CADF,CADF;AAkOD,CAhYD;;AAkYA7G,UAAU,CAACrB,YAAX,GAA0B;EACxBd,IAAI,EAAEe,iBAAA,CAASC,iBAAT,CAA2BhB,IADT;EAExBC,SAAS,EAAEc,iBAAA,CAASC,iBAAT,CAA2Bf;AAFd,CAA1B;AAKAkC,UAAU,CAAClB,SAAX,2CAAuB;EACrBmB,MAAM,EAAElB,kBAAA,CAAUgI,OAAV,CAAkBhI,kBAAA,CAAUe,MAA5B,CADa;EAErBI,cAAc,EAAEnB,kBAAA,CAAUgI,OAAV,CAAkBhI,kBAAA,CAAUe,MAA5B,CAFK;EAGrBK,iBAAiB,EAAEpB,kBAAA,CAAUiI,QAAV,CACjBjI,kBAAA,CAAUkI,KAAV,CAAgB;IACdtF,kBAAkB,EAAE5C,kBAAA,CAAUc,IADhB;IAEdwC,KAAK,EAAEtD,kBAAA,CAAUkI,KAAV,CAAgB;MACrBR,KAAK,EAAE1H,kBAAA,CAAUgB,MADI;MAErBH,OAAO,EAAEb,kBAAA,CAAUgB,MAFE;MAGrB2G,gBAAgB,EAAE3H,kBAAA,CAAUgB,MAHP;MAIrB4G,iBAAiB,EAAE5H,kBAAA,CAAUgB,MAJR;MAKrBmH,YAAY,EAAEnI,kBAAA,CAAUgB;IALH,CAAhB;EAFO,CAAhB,CADiB,CAHE;EAerBK,aAAa,EAAErB,kBAAA,CAAUiI,QAAV,CAAmBjI,kBAAA,CAAUe,MAA7B,CAfM;EAgBrBO,cAAc,EAAEtB,kBAAA,CAAUc,IAhBL;EAiBrBS,SAAS,EAAEvB,kBAAA,CAAUc,IAjBA;EAkBrBU,mBAAmB,EAAExB,kBAAA,CAAUC,IAlBV;EAmBrBwB,aAAa,EAAEzB,kBAAA,CAAUC,IAnBJ;EAoBrByB,cAAc,EAAE1B,kBAAA,CAAUC;AApBL,CAAvB;eAuBegB,U"}
|
|
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","skillIds","learnerFeature","isLoading","onSkillFocusConfirm","onReviewSkill","onExploreSkill","open","setOpen","selectedSkillsList","setSelectedSkillsList","skillFocusSelectedOnChart","setSkillFocusSelectedOnChart","undefined","searchValue","setSearchValue","searchResults","setSearchResults","skillRef","activeFilter","setActiveFilter","skillsReviewReady","useMemo","skill","availableForReview","graphDatas","toFixed","graphLegends","filters","all","review","sumKpi","kpi","skillFocusSelectedOnChartScore","stats","coursedCompletedData","questionsToReviewData","learningTimeData","skillChartPaneLegends","focusedSkill","skillChartPanelProps","title","value","legend","icon","iconName","formatMinutes","handleOnDotClick","handleOpenSkillPicker","handleCloseSkillPicker","handleConfirmSkillPicker","focusSkillList","handleSearch","searchValueIncluded","handleSearchReset","handleExploreClick","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","defaultStats","score","contentCompleted","questionsToReview","handleReviewSkill","handleExploreSkill","includes","arrayOf","objectOf","shape","learningTime"],"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 {get, keys, map, fromPairs, pipe, sumBy, getOr, sortBy} 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 {formatMinutes} from '../../util/time-format';\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 = get('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('skills_change_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 skin: Provider.childContextTypes.skin,\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} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span\n className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}\n style={{\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',\n color: active ? primarySkinColor : '#515161'\n }}\n >\n {skillTotal}\n </span>\n </div>\n ),\n [filter, skillTotal, active, primarySkinColor]\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: '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 skin: Provider.childContextTypes.skin,\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 skillIds,\n learnerFeature = true,\n isLoading,\n onSkillFocusConfirm,\n onReviewSkill,\n onExploreSkill\n } = props;\n const {skin, translate} = context;\n const primarySkinColor = get('common.primary', skin);\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(\n sortBy(skillRef => -getOr(0, [skillRef, 'stats', 'score'], skillsInformation), skills)\n );\n const [activeFilter, setActiveFilter] = useState('all');\n const [hovered, setHovered] = useState(false);\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const skillsReviewReady = useMemo(() => {\n return searchResults.filter(skill =>\n skillsInformation[skill] ? skillsInformation[skill].availableForReview : false\n );\n }, [searchResults, skillsInformation]);\n\n const graphDatas = useMemo(\n () =>\n pipe(\n map(skill => [skill, getOr(0, [skill, 'stats', 'score'], skillsInformation).toFixed(1)]),\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 const skillFocusSelectedOnChartScore = getOr(\n 0,\n [skillFocusSelectedOnChart, 'stats', `${kpi}`],\n skillsInformation\n );\n return skillFocusSelectedOnChart\n ? skillFocusSelectedOnChartScore\n : sumBy(\n skill => (skillsInformation[skill] ? skillsInformation[skill].stats[kpi] : 0),\n selectedSkillsList\n );\n },\n [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]\n );\n\n const coursedCompletedData = useMemo(() => sumKpi('contentCompleted'), [sumKpi]);\n\n const questionsToReviewData = useMemo(() => sumKpi('questionsToReview'), [sumKpi]);\n\n const learningTimeData = useMemo(() => sumKpi('learningTime'), [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_content_completed'),\n value: `${coursedCompletedData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'book-open-cover', backgroundColor: '#D9F4F7'}\n },\n {\n title: translate('skill_chart_side_panel_learning_hours'),\n value: formatMinutes(learningTimeData),\n legend: skillChartPaneLegends,\n icon: {iconName: 'clock', backgroundColor: '#FAD6DE'}\n },\n {\n title: translate('skill_chart_side_panel_questions_to_review'),\n value: `${questionsToReviewData}`,\n legend: skillChartPaneLegends,\n icon: {iconName: 'circle-question', backgroundColor: '#FFDCD1'}\n }\n ];\n\n const handleOnDotClick = useCallback(\n skillRef => {\n 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 handleExploreClick = useCallback(\n skillRef => {\n onExploreSkill(skillIds[skillRef]);\n },\n [skillIds, onExploreSkill]\n );\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 data-name=\"skill-focus-container\" 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 data-name=\"skill-focus-title\" className={style.skillFocusHeaderTitle}>\n {translate('skills_focus')}\n </div>\n <div\n data-name=\"skill-focus-description\"\n className={style.skillFocusHeaderDescription}\n >\n {translate('skills_focus_description')}\n </div>\n </div>\n </div>\n {selectedSkillsList.length >= 3 ? (\n <ChangeSkillFocusButton onClick={handleOpenSkillPicker} />\n ) : null}\n </header>\n {selectedSkillsList.length >= 3 ? (\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 onExploreClick={handleExploreClick}\n colors={[\n {\n gradient: {\n fill: ['#0062ffff', '#8000ff85'],\n stroke: ['#0062ffff', '#8000FF']\n },\n percentage: {\n color: primarySkinColor,\n background: convert(`color(${primarySkinColor} a(0.07))`)\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('skills_focus_empty_title')}\n </div>\n <div className={style.skillFocusEmptyDescription}>\n {translate('skills_focus_empty_description')}\n </div>\n <div onMouseOver={handleMouseOver} onMouseLeave={handleMouseLeave}>\n <ButtonLink\n label={translate('skills_choose_focus')}\n type=\"primary\"\n customStyle={{\n width: 'fit-contain',\n backgroundColor: hovered\n ? convert(`hsl(from ${primarySkinColor} h s calc(l*(1 - 0.08)))`)\n : primarySkinColor\n }}\n onClick={handleOpenSkillPicker}\n />\n </div>\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('close_tooltip_information')}\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_empty')}\n textNoSkills={translate('review_skill_empty_description')}\n iconSkillAriaLabel={translate('review_skill_empty')}\n imagePosition=\"top\"\n />\n </div>\n ) : (\n filters[activeFilter].map((skill, index) => {\n const defaultStats = {\n score: 0,\n content: 0,\n contentCompleted: 0,\n questionsToReview: 0\n };\n\n function handleReviewSkill() {\n onReviewSkill(skill);\n }\n function handleExploreSkill() {\n onExploreSkill(skillIds[skill]);\n }\n const {score, content, questionsToReview, contentCompleted} = skillsInformation[\n skill\n ]\n ? skillsInformation[skill].stats\n : defaultStats;\n return (\n <div key={index}>\n <LearnerSkillCard\n skillTitle={skillsLocales[skill]}\n focus={selectedSkills.includes(skill)}\n metrics={{\n score: score.toFixed(1),\n content,\n questionsToReview,\n contentCompleted\n }}\n review={\n skillsInformation[skill]\n ? skillsInformation[skill].availableForReview\n : false\n }\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 skin: Provider.childContextTypes.skin,\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 content: PropTypes.number,\n contentCompleted: PropTypes.number,\n questionsToReview: PropTypes.number,\n learningTime: PropTypes.number\n })\n })\n ),\n skillsLocales: PropTypes.objectOf(PropTypes.string),\n skillIds: 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,128 @@
|
|
|
1
|
+
@value colors: "../../variables/colors.css";
|
|
2
|
+
@value breakpoints: "../../variables/breakpoints.css";
|
|
3
|
+
@value tablet from breakpoints;
|
|
4
|
+
@value mobile from breakpoints;
|
|
5
|
+
@value xtraLightGrey from colors;
|
|
6
|
+
@value cm_grey_100 from colors;
|
|
7
|
+
@value cm_grey_200 from colors;
|
|
8
|
+
@value cm_grey_400 from colors;
|
|
9
|
+
|
|
10
|
+
.continueLearningWrapper {
|
|
11
|
+
margin-top: 40px;
|
|
12
|
+
margin-bottom: 16px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.continueLearningTitle {
|
|
16
|
+
font-size: 16px;
|
|
17
|
+
font-weight: 600;
|
|
18
|
+
line-height: 22px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.continueLearningNumber {
|
|
22
|
+
border-radius: 50%;
|
|
23
|
+
background-color: #EAEAEB;
|
|
24
|
+
color: #515161;
|
|
25
|
+
padding: 2px 4px;
|
|
26
|
+
margin-left: 8px;
|
|
27
|
+
font-size: 10px;
|
|
28
|
+
font-weight: 600;
|
|
29
|
+
line-height: 12px;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.searchAndSortSection {
|
|
33
|
+
display: flex;
|
|
34
|
+
margin-bottom: 16px;
|
|
35
|
+
justify-content: space-between;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.searchWrapper {
|
|
39
|
+
border-radius: 12px;
|
|
40
|
+
width: 300px;
|
|
41
|
+
background-color: cm_grey_100;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.sortSection {
|
|
45
|
+
display: flex;
|
|
46
|
+
gap: 32px;
|
|
47
|
+
align-items: center;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.sortWrapper {
|
|
51
|
+
display: flex;
|
|
52
|
+
align-items: center;
|
|
53
|
+
gap: 12px;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.filterWrapper {
|
|
57
|
+
display: flex;
|
|
58
|
+
gap: 12px;
|
|
59
|
+
margin-bottom: 32px;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.filterButtonWrapper {
|
|
63
|
+
display: flex;
|
|
64
|
+
align-items: center;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.divider {
|
|
68
|
+
height: 24px;
|
|
69
|
+
width: 1px;
|
|
70
|
+
background-color: cm_grey_200;
|
|
71
|
+
margin-left: 12px;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.emptySearchResultContainer {
|
|
75
|
+
display: flex;
|
|
76
|
+
flex-direction: column;
|
|
77
|
+
align-items: center;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.emptySearchResultTitle {
|
|
81
|
+
font-size: 20px;
|
|
82
|
+
font-weight: 700;
|
|
83
|
+
line-height: 28px;
|
|
84
|
+
margin-bottom: 8px;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.emptySearchResultDescription {
|
|
88
|
+
font-size: 16px;
|
|
89
|
+
font-weight: 500;
|
|
90
|
+
line-height: 22px;
|
|
91
|
+
margin-bottom: 16px;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.emptySearchResultClearSearch {
|
|
95
|
+
color: #0061FF;
|
|
96
|
+
font-size: 14px;
|
|
97
|
+
font-style: normal;
|
|
98
|
+
font-weight: 600;
|
|
99
|
+
line-height: 20px;
|
|
100
|
+
cursor: pointer;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.emptySearchResultClearSearch:hover {
|
|
104
|
+
text-decoration: underline;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
@media (max-width: 799px) {
|
|
108
|
+
.searchAndSortSection {
|
|
109
|
+
flex-direction: column;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.sortSection {
|
|
113
|
+
margin-top: 16px;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
@media mobile {
|
|
118
|
+
.sortSection {
|
|
119
|
+
flex-direction: column;
|
|
120
|
+
gap: 16px;
|
|
121
|
+
align-items: flex-start;
|
|
122
|
+
margin-top: 16px;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.filterWrapper {
|
|
126
|
+
overflow-x: scroll;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
export default AllCourses;
|
|
2
|
+
declare function AllCourses(props: any, context: any): JSX.Element;
|
|
3
|
+
declare namespace AllCourses {
|
|
4
|
+
namespace contextTypes {
|
|
5
|
+
const skin: PropTypes.Requireable<PropTypes.InferProps<{
|
|
6
|
+
common: PropTypes.Requireable<{
|
|
7
|
+
[x: string]: any;
|
|
8
|
+
}>;
|
|
9
|
+
images: PropTypes.Requireable<PropTypes.InferProps<{
|
|
10
|
+
'logo-mobile': PropTypes.Requireable<any>;
|
|
11
|
+
logo: PropTypes.Requireable<any>;
|
|
12
|
+
'logo-email': PropTypes.Requireable<any>;
|
|
13
|
+
login: PropTypes.Requireable<any>;
|
|
14
|
+
}>>;
|
|
15
|
+
icons: PropTypes.Requireable<{
|
|
16
|
+
[x: string]: any;
|
|
17
|
+
}>;
|
|
18
|
+
mod: PropTypes.Requireable<{
|
|
19
|
+
[x: string]: any;
|
|
20
|
+
}>;
|
|
21
|
+
courses: PropTypes.Requireable<any[]>;
|
|
22
|
+
texts: PropTypes.Requireable<{
|
|
23
|
+
[x: string]: any;
|
|
24
|
+
}>;
|
|
25
|
+
}>>;
|
|
26
|
+
const translate: PropTypes.Requireable<(...args: any[]) => any>;
|
|
27
|
+
}
|
|
28
|
+
namespace propTypes {
|
|
29
|
+
const skillIncludedCourses: PropTypes.Requireable<PropTypes.InferProps<{
|
|
30
|
+
list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
31
|
+
customStyle: PropTypes.Requireable<{
|
|
32
|
+
[x: string]: string | null | undefined;
|
|
33
|
+
}>;
|
|
34
|
+
loading: PropTypes.Requireable<boolean>;
|
|
35
|
+
}>>;
|
|
36
|
+
const totalCourses: PropTypes.Requireable<number>;
|
|
37
|
+
const filters: PropTypes.Requireable<PropTypes.InferProps<{
|
|
38
|
+
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
39
|
+
options: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
40
|
+
name: PropTypes.Validator<string>;
|
|
41
|
+
value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
42
|
+
selected: PropTypes.Requireable<boolean>;
|
|
43
|
+
validOption: PropTypes.Requireable<boolean>;
|
|
44
|
+
}> | null | undefined)[]>;
|
|
45
|
+
}>>;
|
|
46
|
+
const sorting: PropTypes.Requireable<PropTypes.InferProps<{
|
|
47
|
+
title: PropTypes.Requireable<string>;
|
|
48
|
+
name: PropTypes.Requireable<string>;
|
|
49
|
+
className: PropTypes.Requireable<string>;
|
|
50
|
+
borderClassName: PropTypes.Requireable<string>;
|
|
51
|
+
disabled: PropTypes.Requireable<boolean>;
|
|
52
|
+
multiple: PropTypes.Requireable<boolean>;
|
|
53
|
+
description: PropTypes.Requireable<string>;
|
|
54
|
+
required: PropTypes.Requireable<boolean>;
|
|
55
|
+
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
56
|
+
theme: PropTypes.Requireable<string>;
|
|
57
|
+
options: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
58
|
+
name: PropTypes.Validator<string>;
|
|
59
|
+
value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
60
|
+
selected: PropTypes.Requireable<boolean>;
|
|
61
|
+
validOption: PropTypes.Requireable<boolean>;
|
|
62
|
+
}> | null | undefined)[]>;
|
|
63
|
+
optgroups: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
64
|
+
label: PropTypes.Validator<string>;
|
|
65
|
+
options: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
66
|
+
name: PropTypes.Validator<string>;
|
|
67
|
+
value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
68
|
+
selected: PropTypes.Requireable<boolean>;
|
|
69
|
+
validOption: PropTypes.Requireable<boolean>;
|
|
70
|
+
}> | null | undefined)[]>;
|
|
71
|
+
}> | null | undefined)[]>;
|
|
72
|
+
modified: PropTypes.Requireable<boolean>;
|
|
73
|
+
error: PropTypes.Requireable<boolean>;
|
|
74
|
+
'aria-label': PropTypes.Requireable<string>;
|
|
75
|
+
'aria-labelledby': PropTypes.Requireable<string>;
|
|
76
|
+
}>>;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
import PropTypes from "prop-types";
|
|
80
|
+
//# sourceMappingURL=all-courses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all-courses.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/all-courses.js"],"names":[],"mappings":";AA2CA,mEAkIC"}
|