@coorpacademy/components 11.32.7 → 11.32.8

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 (67) hide show
  1. package/es/hoc/transition/test/fixtures/style.css +45 -0
  2. package/es/molecule/discipline-associated-skills/index.d.ts.map +1 -1
  3. package/es/molecule/discipline-associated-skills/index.js +11 -2
  4. package/es/molecule/discipline-associated-skills/index.js.map +1 -1
  5. package/es/molecule/discipline-associated-skills/style.css +35 -3
  6. package/es/molecule/learner-skill-card/index.d.ts +3 -3
  7. package/es/molecule/learner-skill-card/index.js +15 -15
  8. package/es/molecule/learner-skill-card/index.js.map +1 -1
  9. package/es/molecule/select-multiple/test/snapshots/index.js.md +211 -0
  10. package/es/molecule/select-multiple/test/snapshots/index.js.snap +0 -0
  11. package/es/template/my-learning/index.d.ts +4 -4
  12. package/es/template/my-learning/index.d.ts.map +1 -1
  13. package/es/template/my-learning/index.js +23 -22
  14. package/es/template/my-learning/index.js.map +1 -1
  15. package/es/util/test/fixtures/steps.json +34 -0
  16. package/es/util/time-format.d.ts +2 -0
  17. package/es/util/time-format.d.ts.map +1 -0
  18. package/es/util/time-format.js +18 -0
  19. package/es/util/time-format.js.map +1 -0
  20. package/lib/hoc/transition/test/fixtures/style.css +45 -0
  21. package/lib/molecule/discipline-associated-skills/index.d.ts.map +1 -1
  22. package/lib/molecule/discipline-associated-skills/index.js +11 -2
  23. package/lib/molecule/discipline-associated-skills/index.js.map +1 -1
  24. package/lib/molecule/discipline-associated-skills/style.css +35 -3
  25. package/lib/molecule/learner-skill-card/index.d.ts +3 -3
  26. package/lib/molecule/learner-skill-card/index.js +15 -15
  27. package/lib/molecule/learner-skill-card/index.js.map +1 -1
  28. package/lib/molecule/select-multiple/test/snapshots/index.js.md +211 -0
  29. package/lib/molecule/select-multiple/test/snapshots/index.js.snap +0 -0
  30. package/lib/template/my-learning/index.d.ts +4 -4
  31. package/lib/template/my-learning/index.d.ts.map +1 -1
  32. package/lib/template/my-learning/index.js +24 -22
  33. package/lib/template/my-learning/index.js.map +1 -1
  34. package/lib/util/test/fixtures/steps.json +34 -0
  35. package/lib/util/time-format.d.ts +2 -0
  36. package/lib/util/time-format.d.ts.map +1 -0
  37. package/lib/util/time-format.js +21 -0
  38. package/lib/util/time-format.js.map +1 -0
  39. package/locales/bs/global.json +5 -5
  40. package/locales/cs/global.json +5 -5
  41. package/locales/de/global.json +5 -5
  42. package/locales/en/global.json +3 -3
  43. package/locales/es/global.json +5 -5
  44. package/locales/et/global.json +5 -5
  45. package/locales/fi/global.json +5 -5
  46. package/locales/fr/global.json +3 -3
  47. package/locales/hr/global.json +5 -5
  48. package/locales/hu/global.json +5 -5
  49. package/locales/hy/global.json +5 -5
  50. package/locales/it/global.json +5 -5
  51. package/locales/ja/global.json +4 -4
  52. package/locales/ko/global.json +5 -5
  53. package/locales/nl/global.json +5 -5
  54. package/locales/pl/global.json +5 -5
  55. package/locales/pt/global.json +5 -5
  56. package/locales/ro/global.json +5 -5
  57. package/locales/ru/global.json +5 -5
  58. package/locales/sk/global.json +5 -5
  59. package/locales/sl/global.json +5 -5
  60. package/locales/sv/global.json +5 -5
  61. package/locales/tl/global.json +5 -5
  62. package/locales/tr/global.json +5 -5
  63. package/locales/uk/global.json +5 -5
  64. package/locales/vi/global.json +5 -5
  65. package/locales/zh/global.json +4 -4
  66. package/locales/zh_TW/global.json +5 -5
  67. package/package.json +3 -2
@@ -38,9 +38,9 @@ const LearnerSkillCard = (props, context) => {
38
38
  } = props;
39
39
  const {
40
40
  score,
41
- skillCourses,
42
- skillQuestions,
43
- completedCourses = 0
41
+ content,
42
+ questionsToReview,
43
+ contentCompleted = 0
44
44
  } = metrics;
45
45
  const {
46
46
  skin,
@@ -53,7 +53,7 @@ const LearnerSkillCard = (props, context) => {
53
53
  const coursesLocale = translate('courses');
54
54
  const questionsLocale = translate('questions');
55
55
  const skillFocusLocale = translate('skill_focus');
56
- const coursesCompletedLocale = translate('courses_completed');
56
+ const contentCompletedLocale = translate('courses_completed');
57
57
  const handleMouseOver = (0, _react.useCallback)(() => setHovered(true), [setHovered]);
58
58
  const handleMouseLeave = (0, _react.useCallback)(() => setHovered(false), [setHovered]);
59
59
  const buttonReviewProps = {
@@ -88,7 +88,7 @@ const LearnerSkillCard = (props, context) => {
88
88
  }
89
89
  };
90
90
  const ProgressBar = (0, _react.useCallback)(() => {
91
- if (!skillCourses) return null;
91
+ if (!content) return null;
92
92
  const progressBarColor = '#3EC483';
93
93
  const inlineProgressValueStyle = {
94
94
  backgroundColor: progressBarColor,
@@ -103,24 +103,24 @@ const LearnerSkillCard = (props, context) => {
103
103
  role: "progressbar",
104
104
  "aria-label": (0, _get2.default)('progression', ariaLabel)
105
105
  }));
106
- }, [score, ariaLabel, skillCourses]);
106
+ }, [score, ariaLabel, content]);
107
107
  return /*#__PURE__*/_react.default.createElement("div", {
108
108
  className: _style.default.learnerSkillCardWrapper,
109
109
  "data-name": "learner-skill-card-wrapper",
110
110
  "aria-label": ariaLabel
111
- }, skillCourses || skillQuestions ? /*#__PURE__*/_react.default.createElement("div", {
111
+ }, content || questionsToReview ? /*#__PURE__*/_react.default.createElement("div", {
112
112
  className: _style.default.skillCoursesAndQuestionsWrapper
113
- }, skillCourses ? /*#__PURE__*/_react.default.createElement("div", {
113
+ }, content ? /*#__PURE__*/_react.default.createElement("div", {
114
114
  className: _style.default.skillInformation,
115
115
  "data-name": "skill-courses"
116
116
  }, /*#__PURE__*/_react.default.createElement("span", {
117
117
  className: _style.default.skillInformationNumber
118
- }, skillCourses), " ", coursesLocale) : null, skillQuestions ? /*#__PURE__*/_react.default.createElement("div", {
118
+ }, content), " ", coursesLocale) : null, questionsToReview ? /*#__PURE__*/_react.default.createElement("div", {
119
119
  className: _style.default.skillInformation,
120
120
  "data-name": "skill-questions"
121
121
  }, /*#__PURE__*/_react.default.createElement("span", {
122
122
  className: _style.default.skillInformationNumber
123
- }, skillQuestions), "\xA0", questionsLocale) : null) : null, /*#__PURE__*/_react.default.createElement("div", {
123
+ }, questionsToReview), "\xA0", questionsLocale) : null) : null, /*#__PURE__*/_react.default.createElement("div", {
124
124
  className: _style.default.skillTitleWrapper
125
125
  }, /*#__PURE__*/_react.default.createElement("div", {
126
126
  "data-name": "skill-title",
@@ -137,12 +137,12 @@ const LearnerSkillCard = (props, context) => {
137
137
  }
138
138
  }), skillFocusLocale) : null), /*#__PURE__*/_react.default.createElement(ProgressBar, null), /*#__PURE__*/_react.default.createElement("div", {
139
139
  className: _style.default.progressInformations
140
- }, skillCourses && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
140
+ }, content && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
141
141
  className: _style.default.progressInformation,
142
142
  "data-name": "skill-completed-courses"
143
143
  }, /*#__PURE__*/_react.default.createElement("span", {
144
144
  className: _style.default.progressInformationNumber
145
- }, completedCourses), ` ${coursesCompletedLocale}`), /*#__PURE__*/_react.default.createElement("div", {
145
+ }, contentCompleted), ` ${contentCompletedLocale}`), /*#__PURE__*/_react.default.createElement("div", {
146
146
  className: _style.default.progressInformation,
147
147
  "data-name": "completed-percentage"
148
148
  }, /*#__PURE__*/_react.default.createElement("span", {
@@ -169,9 +169,9 @@ LearnerSkillCard.propTypes = process.env.NODE_ENV !== "production" ? {
169
169
  focus: _propTypes.default.bool,
170
170
  metrics: _propTypes.default.shape({
171
171
  score: _propTypes.default.number,
172
- skillCourses: _propTypes.default.number,
173
- skillQuestions: _propTypes.default.number,
174
- completedCourses: _propTypes.default.number
172
+ content: _propTypes.default.number,
173
+ questionsToReview: _propTypes.default.number,
174
+ contentCompleted: _propTypes.default.number
175
175
  }),
176
176
  review: _propTypes.default.bool,
177
177
  onReviewClick: _propTypes.default.func,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["LearnerSkillCard","props","context","ariaLabel","skillTitle","skillAriaLabel","focus","metrics","review","onReviewClick","onExploreClick","score","skillCourses","skillQuestions","completedCourses","skin","translate","hovered","setHovered","useState","primarySkinColor","reviewLocale","exploreLocale","coursesLocale","questionsLocale","skillFocusLocale","coursesCompletedLocale","handleMouseOver","useCallback","handleMouseLeave","buttonReviewProps","customStyle","backgroundColor","transition","disabled","onClick","label","buttonExploreProps","convert","color","icon","position","faIcon","name","size","ProgressBar","progressBarColor","inlineProgressValueStyle","width","style","progressWrapper","progress","learnerSkillCardWrapper","skillCoursesAndQuestionsWrapper","skillInformation","skillInformationNumber","skillTitleWrapper","skillFocusBadge","faSize","wrapperSize","progressInformations","progressInformation","progressInformationNumber","ctaWrapper","buttonWrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","bool","shape","number","func"],"sources":["../../../src/molecule/learner-skill-card/index.js"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport {convert} from 'css-color-function';\nimport {get} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport Icon from '../../atom/icon';\nimport ButtonLink from '../../atom/button-link';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nconst LearnerSkillCard = (props, context) => {\n const {\n 'aria-label': ariaLabel,\n skillTitle,\n skillAriaLabel,\n focus = false,\n metrics,\n review = false,\n onReviewClick,\n onExploreClick\n } = props;\n const {score, skillCourses, skillQuestions, completedCourses = 0} = metrics;\n const {skin, translate} = context;\n const [hovered, setHovered] = useState(false);\n const primarySkinColor = get('common.primary', skin);\n\n const reviewLocale = translate('Review');\n const exploreLocale = translate('Explore');\n const coursesLocale = translate('courses');\n const questionsLocale = translate('questions');\n const skillFocusLocale = translate('skill_focus');\n const coursesCompletedLocale = translate('courses_completed');\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const buttonReviewProps = {\n customStyle: {\n backgroundColor: '#FFF',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n disabled: !review,\n onClick: onReviewClick,\n 'aria-label': `${skillTitle}, ${reviewLocale}`,\n label: reviewLocale,\n 'data-name': 'learner-skill-card-review-button'\n };\n\n const buttonExploreProps = {\n customStyle: {\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n onClick: onExploreClick,\n 'aria-label': `${skillTitle}, ${exploreLocale}`,\n label: exploreLocale,\n 'data-name': 'learner-skill-card-explore-button',\n icon: {\n position: 'left',\n faIcon: {\n name: 'compass',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }\n };\n\n const ProgressBar = useCallback(() => {\n if (!skillCourses) return null;\n\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${score}%`\n };\n\n return (\n <div className={style.progressWrapper}>\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n role=\"progressbar\"\n aria-label={get('progression', ariaLabel)}\n />\n </div>\n );\n }, [score, ariaLabel, skillCourses]);\n\n return (\n <div\n className={style.learnerSkillCardWrapper}\n data-name=\"learner-skill-card-wrapper\"\n aria-label={ariaLabel}\n >\n {skillCourses || skillQuestions ? (\n <div className={style.skillCoursesAndQuestionsWrapper}>\n {skillCourses ? (\n <div className={style.skillInformation} data-name=\"skill-courses\">\n <span className={style.skillInformationNumber}>{skillCourses}</span> {coursesLocale}\n </div>\n ) : null}\n {skillQuestions ? (\n <div className={style.skillInformation} data-name=\"skill-questions\">\n <span className={style.skillInformationNumber}>{skillQuestions}</span>\n &nbsp;{questionsLocale}\n </div>\n ) : null}\n </div>\n ) : null}\n <div className={style.skillTitleWrapper}>\n <div\n data-name=\"skill-title\"\n className={style.skillTitle}\n aria-label={skillAriaLabel || skillTitle}\n >\n {skillTitle}\n </div>\n {focus ? (\n <div className={style.skillFocusBadge}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor=\"#DDD1FF\"\n size={{\n faSize: 10,\n wrapperSize: 16\n }}\n />\n {skillFocusLocale}\n </div>\n ) : null}\n </div>\n <ProgressBar />\n <div className={style.progressInformations}>\n {skillCourses && (\n <>\n <div className={style.progressInformation} data-name=\"skill-completed-courses\">\n <span className={style.progressInformationNumber}>{completedCourses}</span>\n {` ${coursesCompletedLocale}`}\n </div>\n <div className={style.progressInformation} data-name=\"completed-percentage\">\n <span className={style.progressInformationNumber}>{score}%</span>\n </div>\n </>\n )}\n </div>\n <div className={style.ctaWrapper} data-name=\"cta-wrapper\">\n <ButtonLink {...buttonReviewProps} />\n <div\n className={style.buttonWrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n data-name=\"button-explore-wrapper\"\n >\n <ButtonLink {...buttonExploreProps} />\n </div>\n </div>\n </div>\n );\n};\n\nLearnerSkillCard.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nLearnerSkillCard.propTypes = {\n 'aria-label': PropTypes.string,\n skillTitle: PropTypes.string,\n skillAriaLabel: PropTypes.string,\n focus: PropTypes.bool,\n metrics: PropTypes.shape({\n score: PropTypes.number,\n skillCourses: PropTypes.number,\n skillQuestions: PropTypes.number,\n completedCourses: PropTypes.number\n }),\n review: PropTypes.bool,\n onReviewClick: PropTypes.func,\n onExploreClick: PropTypes.func\n};\n\nexport default LearnerSkillCard;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["LearnerSkillCard","props","context","ariaLabel","skillTitle","skillAriaLabel","focus","metrics","review","onReviewClick","onExploreClick","score","content","questionsToReview","contentCompleted","skin","translate","hovered","setHovered","useState","primarySkinColor","reviewLocale","exploreLocale","coursesLocale","questionsLocale","skillFocusLocale","contentCompletedLocale","handleMouseOver","useCallback","handleMouseLeave","buttonReviewProps","customStyle","backgroundColor","transition","disabled","onClick","label","buttonExploreProps","convert","color","icon","position","faIcon","name","size","ProgressBar","progressBarColor","inlineProgressValueStyle","width","style","progressWrapper","progress","learnerSkillCardWrapper","skillCoursesAndQuestionsWrapper","skillInformation","skillInformationNumber","skillTitleWrapper","skillFocusBadge","faSize","wrapperSize","progressInformations","progressInformation","progressInformationNumber","ctaWrapper","buttonWrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","bool","shape","number","func"],"sources":["../../../src/molecule/learner-skill-card/index.js"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport {convert} from 'css-color-function';\nimport {get} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport Icon from '../../atom/icon';\nimport ButtonLink from '../../atom/button-link';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nconst LearnerSkillCard = (props, context) => {\n const {\n 'aria-label': ariaLabel,\n skillTitle,\n skillAriaLabel,\n focus = false,\n metrics,\n review = false,\n onReviewClick,\n onExploreClick\n } = props;\n const {score, content, questionsToReview, contentCompleted = 0} = metrics;\n const {skin, translate} = context;\n const [hovered, setHovered] = useState(false);\n const primarySkinColor = get('common.primary', skin);\n\n const reviewLocale = translate('Review');\n const exploreLocale = translate('Explore');\n const coursesLocale = translate('courses');\n const questionsLocale = translate('questions');\n const skillFocusLocale = translate('skill_focus');\n const contentCompletedLocale = translate('courses_completed');\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const buttonReviewProps = {\n customStyle: {\n backgroundColor: '#FFF',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n disabled: !review,\n onClick: onReviewClick,\n 'aria-label': `${skillTitle}, ${reviewLocale}`,\n label: reviewLocale,\n 'data-name': 'learner-skill-card-review-button'\n };\n\n const buttonExploreProps = {\n customStyle: {\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n onClick: onExploreClick,\n 'aria-label': `${skillTitle}, ${exploreLocale}`,\n label: exploreLocale,\n 'data-name': 'learner-skill-card-explore-button',\n icon: {\n position: 'left',\n faIcon: {\n name: 'compass',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }\n };\n\n const ProgressBar = useCallback(() => {\n if (!content) return null;\n\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${score}%`\n };\n\n return (\n <div className={style.progressWrapper}>\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n role=\"progressbar\"\n aria-label={get('progression', ariaLabel)}\n />\n </div>\n );\n }, [score, ariaLabel, content]);\n\n return (\n <div\n className={style.learnerSkillCardWrapper}\n data-name=\"learner-skill-card-wrapper\"\n aria-label={ariaLabel}\n >\n {content || questionsToReview ? (\n <div className={style.skillCoursesAndQuestionsWrapper}>\n {content ? (\n <div className={style.skillInformation} data-name=\"skill-courses\">\n <span className={style.skillInformationNumber}>{content}</span> {coursesLocale}\n </div>\n ) : null}\n {questionsToReview ? (\n <div className={style.skillInformation} data-name=\"skill-questions\">\n <span className={style.skillInformationNumber}>{questionsToReview}</span>\n &nbsp;{questionsLocale}\n </div>\n ) : null}\n </div>\n ) : null}\n <div className={style.skillTitleWrapper}>\n <div\n data-name=\"skill-title\"\n className={style.skillTitle}\n aria-label={skillAriaLabel || skillTitle}\n >\n {skillTitle}\n </div>\n {focus ? (\n <div className={style.skillFocusBadge}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor=\"#DDD1FF\"\n size={{\n faSize: 10,\n wrapperSize: 16\n }}\n />\n {skillFocusLocale}\n </div>\n ) : null}\n </div>\n <ProgressBar />\n <div className={style.progressInformations}>\n {content && (\n <>\n <div className={style.progressInformation} data-name=\"skill-completed-courses\">\n <span className={style.progressInformationNumber}>{contentCompleted}</span>\n {` ${contentCompletedLocale}`}\n </div>\n <div className={style.progressInformation} data-name=\"completed-percentage\">\n <span className={style.progressInformationNumber}>{score}%</span>\n </div>\n </>\n )}\n </div>\n <div className={style.ctaWrapper} data-name=\"cta-wrapper\">\n <ButtonLink {...buttonReviewProps} />\n <div\n className={style.buttonWrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n data-name=\"button-explore-wrapper\"\n >\n <ButtonLink {...buttonExploreProps} />\n </div>\n </div>\n </div>\n );\n};\n\nLearnerSkillCard.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nLearnerSkillCard.propTypes = {\n 'aria-label': PropTypes.string,\n skillTitle: PropTypes.string,\n skillAriaLabel: PropTypes.string,\n focus: PropTypes.bool,\n metrics: PropTypes.shape({\n score: PropTypes.number,\n content: PropTypes.number,\n questionsToReview: PropTypes.number,\n contentCompleted: PropTypes.number\n }),\n review: PropTypes.bool,\n onReviewClick: PropTypes.func,\n onExploreClick: PropTypes.func\n};\n\nexport default LearnerSkillCard;\n"],"mappings":"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"}
@@ -0,0 +1,211 @@
1
+ # Snapshot report for `src/molecule/select-multiple/test/index.js`
2
+
3
+ The actual snapshot is saved in `index.js.snap`.
4
+
5
+ Generated by [AVA](https://ava.li).
6
+
7
+ ## should shallow render when select is opened
8
+
9
+ > Snapshot 1
10
+
11
+ ShallowWrapper {
12
+ <div
13
+ className="select-multiple__default variables__defaultText"
14
+ >
15
+ <span
16
+ className="select-multiple__title"
17
+ >
18
+ Learning Path:
19
+ </span>
20
+ <div
21
+ className="select-multiple__select"
22
+ onClick={Function {}}
23
+ title="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut"
24
+ >
25
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut
26
+ <SvgComponent⍟
27
+ className="select-multiple__arrow select-multiple__down"
28
+ color={undefined}
29
+ />
30
+ </div>
31
+ <div
32
+ className="select-multiple__activeChoices"
33
+ >
34
+ <ul
35
+ className="select-multiple__list"
36
+ >
37
+ <li
38
+ className="select-multiple__choice"
39
+ key="0"
40
+ >
41
+ <TitledCheckbox⍟
42
+ background={undefined}
43
+ choice={
44
+ {
45
+ i: 0,
46
+ name: 'Digital',
47
+ selected: false,
48
+ value: 'digital',
49
+ }
50
+ }
51
+ onToggle={Function {}}
52
+ />
53
+ </li>
54
+ <li
55
+ className="select-multiple__choice"
56
+ key="1"
57
+ >
58
+ <TitledCheckbox⍟
59
+ background={undefined}
60
+ choice={
61
+ {
62
+ i: 1,
63
+ name: 'Esprit du temps',
64
+ selected: false,
65
+ value: 'espritDuTemps',
66
+ }
67
+ }
68
+ onToggle={Function {}}
69
+ />
70
+ </li>
71
+ <li
72
+ className="select-multiple__choice"
73
+ key="2"
74
+ >
75
+ <TitledCheckbox⍟
76
+ background={undefined}
77
+ choice={
78
+ {
79
+ i: 2,
80
+ name: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut',
81
+ selected: true,
82
+ value: 'loremIpsum',
83
+ }
84
+ }
85
+ onToggle={Function {}}
86
+ />
87
+ </li>
88
+ <li
89
+ className="select-multiple__choice"
90
+ key="3"
91
+ >
92
+ <TitledCheckbox⍟
93
+ background={undefined}
94
+ choice={
95
+ {
96
+ i: 3,
97
+ name: 'Le monde du projet',
98
+ selected: false,
99
+ value: 'project',
100
+ }
101
+ }
102
+ onToggle={Function {}}
103
+ />
104
+ </li>
105
+ </ul>
106
+ </div>
107
+ </div>,
108
+ }
109
+
110
+ ## should shallow render with default props
111
+
112
+ > Snapshot 1
113
+
114
+ ShallowWrapper {
115
+ <div
116
+ className="select-multiple__default variables__defaultText"
117
+ >
118
+ <span
119
+ className="select-multiple__title"
120
+ >
121
+ Learning Path:
122
+ </span>
123
+ <div
124
+ className="select-multiple__select"
125
+ onClick={Function {}}
126
+ title="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut"
127
+ >
128
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut
129
+ <SvgComponent⍟
130
+ className="select-multiple__arrow"
131
+ color={undefined}
132
+ />
133
+ </div>
134
+ <div
135
+ className="select-multiple__choices"
136
+ >
137
+ <ul
138
+ className="select-multiple__list"
139
+ >
140
+ <li
141
+ className="select-multiple__choice"
142
+ key="0"
143
+ >
144
+ <TitledCheckbox⍟
145
+ background={undefined}
146
+ choice={
147
+ {
148
+ i: 0,
149
+ name: 'Digital',
150
+ selected: false,
151
+ value: 'digital',
152
+ }
153
+ }
154
+ onToggle={Function {}}
155
+ />
156
+ </li>
157
+ <li
158
+ className="select-multiple__choice"
159
+ key="1"
160
+ >
161
+ <TitledCheckbox⍟
162
+ background={undefined}
163
+ choice={
164
+ {
165
+ i: 1,
166
+ name: 'Esprit du temps',
167
+ selected: false,
168
+ value: 'espritDuTemps',
169
+ }
170
+ }
171
+ onToggle={Function {}}
172
+ />
173
+ </li>
174
+ <li
175
+ className="select-multiple__choice"
176
+ key="2"
177
+ >
178
+ <TitledCheckbox⍟
179
+ background={undefined}
180
+ choice={
181
+ {
182
+ i: 2,
183
+ name: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut',
184
+ selected: true,
185
+ value: 'loremIpsum',
186
+ }
187
+ }
188
+ onToggle={Function {}}
189
+ />
190
+ </li>
191
+ <li
192
+ className="select-multiple__choice"
193
+ key="3"
194
+ >
195
+ <TitledCheckbox⍟
196
+ background={undefined}
197
+ choice={
198
+ {
199
+ i: 3,
200
+ name: 'Le monde du projet',
201
+ selected: false,
202
+ value: 'project',
203
+ }
204
+ }
205
+ onToggle={Function {}}
206
+ />
207
+ </li>
208
+ </ul>
209
+ </div>
210
+ </div>,
211
+ }
@@ -33,10 +33,10 @@ declare namespace MyLearning {
33
33
  availableForReview: PropTypes.Requireable<boolean>;
34
34
  stats: PropTypes.Requireable<PropTypes.InferProps<{
35
35
  score: PropTypes.Requireable<number>;
36
- courses: PropTypes.Requireable<number>;
37
- coursesCompleted: PropTypes.Requireable<number>;
38
- questionsAnswered: PropTypes.Requireable<number>;
39
- learningHours: PropTypes.Requireable<number>;
36
+ content: PropTypes.Requireable<number>;
37
+ contentCompleted: PropTypes.Requireable<number>;
38
+ questionsToReview: PropTypes.Requireable<number>;
39
+ learningTime: PropTypes.Requireable<number>;
40
40
  }>>;
41
41
  }> | null | undefined;
42
42
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AAwHA,mEA2WC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/my-learning/index.js"],"names":[],"mappings":";AAyHA,mEAuWC"}
@@ -45,6 +45,8 @@ var _learnerSkillCard = _interopRequireDefault(require("../../molecule/learner-s
45
45
 
46
46
  var _searchValueIncluded = _interopRequireDefault(require("../../util/search-value-included"));
47
47
 
48
+ var _timeFormat = require("../../util/time-format");
49
+
48
50
  var _style = _interopRequireDefault(require("./style.css"));
49
51
 
50
52
  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); }
@@ -180,14 +182,14 @@ const MyLearning = (props, context) => {
180
182
  };
181
183
  }, [searchResults, skillsReviewReady]);
182
184
  const sumKpi = (0, _react.useCallback)(kpi => skillFocusSelectedOnChart ? skillsInformation[skillFocusSelectedOnChart].stats[kpi] : (0, _sumBy2.default)(skill => skillsInformation[skill].stats[kpi], selectedSkillsList), [skillFocusSelectedOnChart, skillsInformation, selectedSkillsList]);
183
- const coursedCompletedData = (0, _react.useMemo)(() => sumKpi('coursesCompleted'), [sumKpi]);
184
- const questionsAnsweredData = (0, _react.useMemo)(() => sumKpi('questionsAnswered'), [sumKpi]);
185
- const learningHoursData = (0, _react.useMemo)(() => sumKpi('learningHours'), [sumKpi]);
185
+ const coursedCompletedData = (0, _react.useMemo)(() => sumKpi('contentCompleted'), [sumKpi]);
186
+ const questionsToReviewData = (0, _react.useMemo)(() => sumKpi('questionsToReview'), [sumKpi]);
187
+ const learningTimeData = (0, _react.useMemo)(() => sumKpi('learningTime'), [sumKpi]);
186
188
  const skillChartPaneLegends = (0, _react.useMemo)(() => translate('skill_scope_specifier', {
187
189
  focusedSkill: skillFocusSelectedOnChart ? skillsLocales[skillFocusSelectedOnChart] : translate('focused_skills')
188
190
  }), [translate, skillsLocales, skillFocusSelectedOnChart]);
189
191
  const skillChartPanelProps = [{
190
- title: translate('skill_chart_side_panel_courses_completed'),
192
+ title: translate('skill_chart_side_panel_content_completed'),
191
193
  value: `${coursedCompletedData}`,
192
194
  legend: skillChartPaneLegends,
193
195
  icon: {
@@ -195,20 +197,20 @@ const MyLearning = (props, context) => {
195
197
  backgroundColor: '#D9F4F7'
196
198
  }
197
199
  }, {
198
- title: translate('skill_chart_side_panel_questions_answered'),
199
- value: `${questionsAnsweredData}`,
200
+ title: translate('skill_chart_side_panel_learning_hours'),
201
+ value: (0, _timeFormat.formatMinutes)(learningTimeData),
200
202
  legend: skillChartPaneLegends,
201
203
  icon: {
202
- iconName: 'circle-question',
203
- backgroundColor: '#FFDCD1'
204
+ iconName: 'clock',
205
+ backgroundColor: '#FAD6DE'
204
206
  }
205
207
  }, {
206
- title: translate('skill_chart_side_panel_learning_hours'),
207
- value: `${learningHoursData}`,
208
+ title: translate('skill_chart_side_panel_questions_to_review'),
209
+ value: `${questionsToReviewData}`,
208
210
  legend: skillChartPaneLegends,
209
211
  icon: {
210
- iconName: 'clock',
211
- backgroundColor: '#FAD6DE'
212
+ iconName: 'circle-question',
213
+ backgroundColor: '#FFDCD1'
212
214
  }
213
215
  }];
214
216
  const handleOnDotClick = (0, _react.useCallback)(skillRef => {
@@ -398,9 +400,9 @@ const MyLearning = (props, context) => {
398
400
 
399
401
  const {
400
402
  score,
401
- courses: skillCourses,
402
- questionsAnswered: skillQuestions,
403
- coursesCompleted: completedCourses
403
+ content,
404
+ questionsToReview,
405
+ contentCompleted
404
406
  } = skillsInformation[skill].stats;
405
407
  return /*#__PURE__*/_react.default.createElement("div", {
406
408
  key: index
@@ -409,9 +411,9 @@ const MyLearning = (props, context) => {
409
411
  focus: selectedSkills.includes(skill),
410
412
  metrics: {
411
413
  score,
412
- skillCourses,
413
- skillQuestions,
414
- completedCourses
414
+ content,
415
+ questionsToReview,
416
+ contentCompleted
415
417
  },
416
418
  review: skillsInformation[skill].availableForReview,
417
419
  onReviewClick: handleReviewSkill,
@@ -431,10 +433,10 @@ MyLearning.propTypes = process.env.NODE_ENV !== "production" ? {
431
433
  availableForReview: _propTypes.default.bool,
432
434
  stats: _propTypes.default.shape({
433
435
  score: _propTypes.default.number,
434
- courses: _propTypes.default.number,
435
- coursesCompleted: _propTypes.default.number,
436
- questionsAnswered: _propTypes.default.number,
437
- learningHours: _propTypes.default.number
436
+ content: _propTypes.default.number,
437
+ contentCompleted: _propTypes.default.number,
438
+ questionsToReview: _propTypes.default.number,
439
+ learningTime: _propTypes.default.number
438
440
  })
439
441
  })),
440
442
  skillsLocales: _propTypes.default.objectOf(_propTypes.default.string),