@coorpacademy/components 11.35.1 → 11.35.2-alpha.10

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 (249) hide show
  1. package/es/atom/button-link/index.js +1 -1
  2. package/es/atom/button-link/index.js.map +1 -1
  3. package/es/atom/button-link/style.css +2 -2
  4. package/es/atom/button-menu/utils.d.ts +1 -1
  5. package/es/atom/icon/index.d.ts +35 -17
  6. package/es/atom/icon/index.d.ts.map +1 -1
  7. package/es/atom/icon/index.js +32 -15
  8. package/es/atom/icon/index.js.map +1 -1
  9. package/es/atom/radio-with-title/index.d.ts +13 -3
  10. package/es/atom/radio-with-title/index.d.ts.map +1 -1
  11. package/es/atom/radio-with-title/types.d.ts +13 -2
  12. package/es/atom/radio-with-title/types.d.ts.map +1 -1
  13. package/es/atom/status-item/index.native.js +1 -1
  14. package/es/atom/status-item/index.native.js.map +1 -1
  15. package/es/atom/tag/index.d.ts +12 -1
  16. package/es/atom/tag/style.css +1 -0
  17. package/es/atom/title/index.d.ts +13 -2
  18. package/es/molecule/banner/style.css +1 -0
  19. package/es/molecule/base-modal/style.css +0 -1
  20. package/es/molecule/bulk-progress-bar/index.js +2 -2
  21. package/es/molecule/bulk-progress-bar/index.js.map +1 -1
  22. package/es/molecule/certification-card/index.js +1 -1
  23. package/es/molecule/certification-card/index.js.map +1 -1
  24. package/es/molecule/cm-popin/types.d.ts +28 -7
  25. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  26. package/es/molecule/cm-popin/types.js +1 -1
  27. package/es/molecule/cm-popin/types.js.map +1 -1
  28. package/es/molecule/learner-skill-card/index.d.ts +25 -40
  29. package/es/molecule/learner-skill-card/index.d.ts.map +1 -1
  30. package/es/molecule/learner-skill-card/index.js +90 -96
  31. package/es/molecule/learner-skill-card/index.js.map +1 -1
  32. package/es/molecule/learner-skill-card/prop-types.d.ts +37 -0
  33. package/es/molecule/learner-skill-card/prop-types.d.ts.map +1 -0
  34. package/es/molecule/learner-skill-card/prop-types.js +20 -0
  35. package/es/molecule/learner-skill-card/prop-types.js.map +1 -0
  36. package/es/molecule/learner-skill-card/style.css +62 -41
  37. package/es/molecule/learning-priority-modal/style.css +3 -2
  38. package/es/molecule/progress-wrapper/index.js +1 -1
  39. package/es/molecule/progress-wrapper/index.js.map +1 -1
  40. package/es/molecule/skills-chart-side-information-item/index.d.ts +1 -1
  41. package/es/molecule/skills-chart-side-information-panel/index.d.ts +1 -1
  42. package/es/molecule/title-and-checkbox-wrapper/index.d.ts +13 -2
  43. package/es/molecule/title-radio-wrapper/index.d.ts +13 -3
  44. package/es/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  45. package/es/molecule/title-radio-wrapper/types.d.ts +13 -2
  46. package/es/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  47. package/es/organism/cards-grid/index.d.ts +48 -10
  48. package/es/organism/cards-grid/index.d.ts.map +1 -1
  49. package/es/organism/cards-grid/index.js +3 -2
  50. package/es/organism/cards-grid/index.js.map +1 -1
  51. package/es/organism/content-skill-modal/index.d.ts +13 -3
  52. package/es/organism/content-skill-modal/index.d.ts.map +1 -1
  53. package/es/organism/content-skill-modal/types.d.ts +12 -2
  54. package/es/organism/content-skill-modal/types.d.ts.map +1 -1
  55. package/es/organism/list-item/index.js +5 -5
  56. package/es/organism/list-item/index.js.map +1 -1
  57. package/es/organism/list-item/style.css +23 -17
  58. package/es/organism/list-items/index.d.ts +13 -2
  59. package/es/organism/mooc-header/index.d.ts.map +1 -1
  60. package/es/organism/mooc-header/index.js +23 -28
  61. package/es/organism/mooc-header/index.js.map +1 -1
  62. package/es/organism/mooc-header/style.css +56 -37
  63. package/es/organism/rewards-form/index.d.ts +13 -2
  64. package/es/organism/select-opponents/index.d.ts +13 -3
  65. package/es/organism/select-opponents/index.d.ts.map +1 -1
  66. package/es/organism/select-opponents/types.d.ts +13 -2
  67. package/es/organism/select-opponents/types.d.ts.map +1 -1
  68. package/es/organism/sidebar/index.d.ts +2 -2
  69. package/es/organism/skill-edition/index.d.ts +37 -7
  70. package/es/organism/skill-edition/index.d.ts.map +1 -1
  71. package/es/organism/skill-edition/types.d.ts +37 -6
  72. package/es/organism/skill-edition/types.d.ts.map +1 -1
  73. package/es/organism/title-and-input/index.d.ts +25 -5
  74. package/es/organism/title-and-input/index.d.ts.map +1 -1
  75. package/es/organism/title-and-input/types.d.ts +24 -4
  76. package/es/organism/title-and-input/types.d.ts.map +1 -1
  77. package/es/organism/wizard-contents/index.d.ts +13 -2
  78. package/es/template/app-player/loading/index.d.ts +27 -6
  79. package/es/template/app-player/player/index.d.ts +53 -12
  80. package/es/template/app-player/player/slides/index.d.ts +27 -6
  81. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  82. package/es/template/app-player/popin-correction/index.d.ts +26 -6
  83. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  84. package/es/template/app-player/popin-end/index.d.ts +27 -6
  85. package/es/template/app-review/index.d.ts +27 -7
  86. package/es/template/app-review/index.d.ts.map +1 -1
  87. package/es/template/app-review/player/prop-types.d.ts +27 -6
  88. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  89. package/es/template/app-review/prop-types.d.ts +27 -6
  90. package/es/template/app-review/prop-types.d.ts.map +1 -1
  91. package/es/template/back-office/brand-update/index.d.ts +87 -16
  92. package/es/template/back-office/brand-update/utils.d.ts +2 -2
  93. package/es/template/common/dashboard/index.d.ts +53 -12
  94. package/es/template/common/search-page/index.d.ts +27 -6
  95. package/es/template/external-course/index.d.ts +27 -6
  96. package/es/template/my-learning/index.d.ts +0 -1
  97. package/es/template/my-learning/index.d.ts.map +1 -1
  98. package/es/template/my-learning/index.js +26 -22
  99. package/es/template/my-learning/index.js.map +1 -1
  100. package/es/template/my-learning/style.css +9 -6
  101. package/es/template/skill-detail/all-courses.css +2 -2
  102. package/es/template/skill-detail/all-courses.d.ts +52 -17
  103. package/es/template/skill-detail/all-courses.d.ts.map +1 -1
  104. package/es/template/skill-detail/all-courses.js +12 -11
  105. package/es/template/skill-detail/all-courses.js.map +1 -1
  106. package/es/template/skill-detail/continue-learning.css +7 -2
  107. package/es/template/skill-detail/continue-learning.d.ts +25 -12
  108. package/es/template/skill-detail/continue-learning.d.ts.map +1 -1
  109. package/es/template/skill-detail/continue-learning.js.map +1 -1
  110. package/es/template/skill-detail/index.d.ts +81 -71
  111. package/es/template/skill-detail/index.d.ts.map +1 -1
  112. package/es/template/skill-detail/index.js +91 -58
  113. package/es/template/skill-detail/index.js.map +1 -1
  114. package/es/template/skill-detail/style.css +97 -39
  115. package/es/variables/colors.css +12 -0
  116. package/es/variables/colors.d.ts +15 -3
  117. package/es/variables/colors.d.ts.map +1 -1
  118. package/es/variables/colors.js +16 -4
  119. package/es/variables/colors.js.map +1 -1
  120. package/es/variables/theme.native.js +1 -1
  121. package/es/variables/theme.native.js.map +1 -1
  122. package/lib/atom/button-link/index.js +1 -1
  123. package/lib/atom/button-link/index.js.map +1 -1
  124. package/lib/atom/button-link/style.css +2 -2
  125. package/lib/atom/button-menu/utils.d.ts +1 -1
  126. package/lib/atom/icon/index.d.ts +35 -17
  127. package/lib/atom/icon/index.d.ts.map +1 -1
  128. package/lib/atom/icon/index.js +34 -18
  129. package/lib/atom/icon/index.js.map +1 -1
  130. package/lib/atom/radio-with-title/index.d.ts +13 -3
  131. package/lib/atom/radio-with-title/index.d.ts.map +1 -1
  132. package/lib/atom/radio-with-title/types.d.ts +13 -2
  133. package/lib/atom/radio-with-title/types.d.ts.map +1 -1
  134. package/lib/atom/status-item/index.native.js +1 -1
  135. package/lib/atom/status-item/index.native.js.map +1 -1
  136. package/lib/atom/tag/index.d.ts +12 -1
  137. package/lib/atom/tag/style.css +1 -0
  138. package/lib/atom/title/index.d.ts +13 -2
  139. package/lib/molecule/banner/style.css +1 -0
  140. package/lib/molecule/base-modal/style.css +0 -1
  141. package/lib/molecule/bulk-progress-bar/index.js +2 -2
  142. package/lib/molecule/bulk-progress-bar/index.js.map +1 -1
  143. package/lib/molecule/certification-card/index.js +1 -1
  144. package/lib/molecule/certification-card/index.js.map +1 -1
  145. package/lib/molecule/cm-popin/types.d.ts +28 -7
  146. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  147. package/lib/molecule/cm-popin/types.js +1 -1
  148. package/lib/molecule/cm-popin/types.js.map +1 -1
  149. package/lib/molecule/learner-skill-card/index.d.ts +25 -40
  150. package/lib/molecule/learner-skill-card/index.d.ts.map +1 -1
  151. package/lib/molecule/learner-skill-card/index.js +93 -96
  152. package/lib/molecule/learner-skill-card/index.js.map +1 -1
  153. package/lib/molecule/learner-skill-card/prop-types.d.ts +37 -0
  154. package/lib/molecule/learner-skill-card/prop-types.d.ts.map +1 -0
  155. package/lib/molecule/learner-skill-card/prop-types.js +25 -0
  156. package/lib/molecule/learner-skill-card/prop-types.js.map +1 -0
  157. package/lib/molecule/learner-skill-card/style.css +62 -41
  158. package/lib/molecule/learning-priority-modal/style.css +3 -2
  159. package/lib/molecule/progress-wrapper/index.js +1 -1
  160. package/lib/molecule/progress-wrapper/index.js.map +1 -1
  161. package/lib/molecule/skills-chart-side-information-item/index.d.ts +1 -1
  162. package/lib/molecule/skills-chart-side-information-panel/index.d.ts +1 -1
  163. package/lib/molecule/title-and-checkbox-wrapper/index.d.ts +13 -2
  164. package/lib/molecule/title-radio-wrapper/index.d.ts +13 -3
  165. package/lib/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  166. package/lib/molecule/title-radio-wrapper/types.d.ts +13 -2
  167. package/lib/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  168. package/lib/organism/cards-grid/index.d.ts +48 -10
  169. package/lib/organism/cards-grid/index.d.ts.map +1 -1
  170. package/lib/organism/cards-grid/index.js +3 -2
  171. package/lib/organism/cards-grid/index.js.map +1 -1
  172. package/lib/organism/content-skill-modal/index.d.ts +13 -3
  173. package/lib/organism/content-skill-modal/index.d.ts.map +1 -1
  174. package/lib/organism/content-skill-modal/types.d.ts +12 -2
  175. package/lib/organism/content-skill-modal/types.d.ts.map +1 -1
  176. package/lib/organism/list-item/index.js +5 -5
  177. package/lib/organism/list-item/index.js.map +1 -1
  178. package/lib/organism/list-item/style.css +23 -17
  179. package/lib/organism/list-items/index.d.ts +13 -2
  180. package/lib/organism/mooc-header/index.d.ts.map +1 -1
  181. package/lib/organism/mooc-header/index.js +22 -27
  182. package/lib/organism/mooc-header/index.js.map +1 -1
  183. package/lib/organism/mooc-header/style.css +56 -37
  184. package/lib/organism/rewards-form/index.d.ts +13 -2
  185. package/lib/organism/select-opponents/index.d.ts +13 -3
  186. package/lib/organism/select-opponents/index.d.ts.map +1 -1
  187. package/lib/organism/select-opponents/types.d.ts +13 -2
  188. package/lib/organism/select-opponents/types.d.ts.map +1 -1
  189. package/lib/organism/sidebar/index.d.ts +2 -2
  190. package/lib/organism/skill-edition/index.d.ts +37 -7
  191. package/lib/organism/skill-edition/index.d.ts.map +1 -1
  192. package/lib/organism/skill-edition/types.d.ts +37 -6
  193. package/lib/organism/skill-edition/types.d.ts.map +1 -1
  194. package/lib/organism/title-and-input/index.d.ts +25 -5
  195. package/lib/organism/title-and-input/index.d.ts.map +1 -1
  196. package/lib/organism/title-and-input/types.d.ts +24 -4
  197. package/lib/organism/title-and-input/types.d.ts.map +1 -1
  198. package/lib/organism/wizard-contents/index.d.ts +13 -2
  199. package/lib/template/app-player/loading/index.d.ts +27 -6
  200. package/lib/template/app-player/player/index.d.ts +53 -12
  201. package/lib/template/app-player/player/slides/index.d.ts +27 -6
  202. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  203. package/lib/template/app-player/popin-correction/index.d.ts +26 -6
  204. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  205. package/lib/template/app-player/popin-end/index.d.ts +27 -6
  206. package/lib/template/app-review/index.d.ts +27 -7
  207. package/lib/template/app-review/index.d.ts.map +1 -1
  208. package/lib/template/app-review/player/prop-types.d.ts +27 -6
  209. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  210. package/lib/template/app-review/prop-types.d.ts +27 -6
  211. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  212. package/lib/template/back-office/brand-update/index.d.ts +87 -16
  213. package/lib/template/back-office/brand-update/utils.d.ts +2 -2
  214. package/lib/template/common/dashboard/index.d.ts +53 -12
  215. package/lib/template/common/search-page/index.d.ts +27 -6
  216. package/lib/template/external-course/index.d.ts +27 -6
  217. package/lib/template/my-learning/index.d.ts +0 -1
  218. package/lib/template/my-learning/index.d.ts.map +1 -1
  219. package/lib/template/my-learning/index.js +26 -22
  220. package/lib/template/my-learning/index.js.map +1 -1
  221. package/lib/template/my-learning/style.css +9 -6
  222. package/lib/template/skill-detail/all-courses.css +2 -2
  223. package/lib/template/skill-detail/all-courses.d.ts +52 -17
  224. package/lib/template/skill-detail/all-courses.d.ts.map +1 -1
  225. package/lib/template/skill-detail/all-courses.js +11 -11
  226. package/lib/template/skill-detail/all-courses.js.map +1 -1
  227. package/lib/template/skill-detail/continue-learning.css +7 -2
  228. package/lib/template/skill-detail/continue-learning.d.ts +25 -12
  229. package/lib/template/skill-detail/continue-learning.d.ts.map +1 -1
  230. package/lib/template/skill-detail/continue-learning.js.map +1 -1
  231. package/lib/template/skill-detail/index.d.ts +81 -71
  232. package/lib/template/skill-detail/index.d.ts.map +1 -1
  233. package/lib/template/skill-detail/index.js +91 -58
  234. package/lib/template/skill-detail/index.js.map +1 -1
  235. package/lib/template/skill-detail/style.css +97 -39
  236. package/lib/variables/colors.css +12 -0
  237. package/lib/variables/colors.d.ts +15 -3
  238. package/lib/variables/colors.d.ts.map +1 -1
  239. package/lib/variables/colors.js +16 -4
  240. package/lib/variables/colors.js.map +1 -1
  241. package/lib/variables/theme.native.js +1 -1
  242. package/lib/variables/theme.native.js.map +1 -1
  243. package/locales/cs/global.json +1 -0
  244. package/locales/en/global.json +1 -0
  245. package/locales/hr/global.json +1 -0
  246. package/locales/it/global.json +1 -0
  247. package/locales/ko/global.json +1 -0
  248. package/locales/ru/global.json +1 -0
  249. package/package.json +2 -2
@@ -6,17 +6,19 @@ var _isNil2 = _interopRequireDefault(require("lodash/fp/isNil"));
6
6
  var _get2 = _interopRequireDefault(require("lodash/fp/get"));
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
- var _cssColorFunction = require("css-color-function");
10
9
  var _classnames = _interopRequireDefault(require("classnames"));
11
10
  var _markdownToJsx = _interopRequireDefault(require("markdown-to-jsx"));
11
+ var _cssColorFunction = require("css-color-function");
12
12
  var _provider = _interopRequireDefault(require("../../atom/provider"));
13
- var _select = _interopRequireWildcard(require("../../atom/select"));
14
- var _buttonLink = _interopRequireDefault(require("../../atom/button-link"));
15
13
  var _buttonLinkIcon = _interopRequireDefault(require("../../atom/button-link-icon"));
16
14
  var _icon = _interopRequireDefault(require("../../atom/icon"));
15
+ var _iconPreview = _interopRequireDefault(require("../../molecule/icon-preview"));
16
+ var _buttonLink = _interopRequireDefault(require("../../atom/button-link"));
17
17
  var _cardsGrid = _interopRequireDefault(require("../../organism/cards-grid"));
18
- var _style = _interopRequireDefault(require("./style.css"));
18
+ var _colors = require("../../variables/colors");
19
+ var _select = require("../../atom/select");
19
20
  var _allCourses = _interopRequireDefault(require("./all-courses"));
21
+ var _style = _interopRequireDefault(require("./style.css"));
20
22
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
21
23
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
22
24
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -30,7 +32,7 @@ const ContinueLearningButton = (props, context) => {
30
32
  translate
31
33
  } = context;
32
34
  const primarySkinColor = (0, _get2.default)('common.primary', skin);
33
- return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_buttonLink.default, {
35
+ return /*#__PURE__*/_react.default.createElement(_buttonLink.default, {
34
36
  label: ongoingCoursesAvailable ? translate('continue_learning') : translate('start_learning'),
35
37
  type: "primary",
36
38
  customStyle: {
@@ -39,17 +41,17 @@ const ContinueLearningButton = (props, context) => {
39
41
  backgroundColor: primarySkinColor
40
42
  },
41
43
  hoverBackgroundColor: (0, _cssColorFunction.convert)(`hsl(from ${primarySkinColor} h s calc(l*(1 - 0.08)))`),
42
- hoverColor: "#FFFFFF",
44
+ hoverColor: _colors.COLORS.white,
43
45
  icon: {
44
46
  position: 'left',
45
47
  faIcon: {
46
48
  name: 'play',
47
- color: '#FFFFFF',
48
- size: 16
49
+ color: _colors.COLORS.white,
50
+ size: 14
49
51
  }
50
52
  },
51
53
  onClick: onClick
52
- }));
54
+ });
53
55
  };
54
56
  exports.ContinueLearningButton = ContinueLearningButton;
55
57
  ContinueLearningButton.contextTypes = {
@@ -71,29 +73,27 @@ const SkillDetail = (props, context) => {
71
73
  ongoingCoursesAvailable,
72
74
  skillIncludedCourses,
73
75
  filters,
74
- sorting,
75
76
  onBackClick,
76
77
  onReviewClick,
77
78
  onContinueLearningClick,
78
79
  search,
79
- bannerMicrolearning = {}
80
+ bannerMicrolearning
80
81
  } = props;
81
- const descriptionRef = (0, _react.useRef)(null);
82
82
  const {
83
83
  score = 0,
84
- questionsToReview,
85
- totalContents
84
+ questionsToReview = 0,
85
+ totalContents = 0
86
86
  } = metrics;
87
87
  const {
88
88
  translate
89
89
  } = context;
90
- const {
91
- action: bannerMicrolearningAction,
92
- oldSwitchValue
93
- } = bannerMicrolearning;
90
+ const bannerMicrolearningAction = bannerMicrolearning?.action;
91
+ const descriptionRef = (0, _react.useRef)(null);
94
92
  const [isDescriptionTruncated, setIsDescriptionTruncated] = (0, _react.useState)(false);
95
93
  const [showMore, setShowMore] = (0, _react.useState)(false);
96
- const handleShowMore = (0, _react.useCallback)(() => setShowMore(!showMore), [setShowMore, showMore]);
94
+ const handleShowMore = (0, _react.useCallback)(() => {
95
+ setShowMore(!showMore);
96
+ }, [showMore]);
97
97
  (0, _react.useEffect)(() => {
98
98
  if (descriptionRef.current) {
99
99
  const {
@@ -107,29 +107,39 @@ const SkillDetail = (props, context) => {
107
107
  return /*#__PURE__*/_react.default.createElement("div", {
108
108
  ref: descriptionRef,
109
109
  className: (0, _classnames.default)(_style.default.description, !showMore && _style.default.truncate)
110
- }, /*#__PURE__*/_react.default.createElement(_markdownToJsx.default, null, description));
110
+ }, description ? /*#__PURE__*/_react.default.createElement(_markdownToJsx.default, null, description) : null);
111
111
  }, [showMore, description]);
112
112
  const ProgressBar = (0, _react.useCallback)(() => {
113
- if (score === undefined) return null;
114
- const progressBarColor = '#3EC483';
115
- const inlineProgressValueStyle = {
113
+ if (typeof score !== 'number') return null;
114
+ const progressBarColor = _colors.COLORS.cm_positive_500;
115
+ const inlineProgressStyle = {
116
116
  backgroundColor: progressBarColor,
117
117
  width: `${score}%`
118
118
  };
119
119
  return /*#__PURE__*/_react.default.createElement("div", {
120
+ className: _style.default.progressBarRow
121
+ }, /*#__PURE__*/_react.default.createElement("div", {
120
122
  className: _style.default.progressBarWrapper
121
123
  }, /*#__PURE__*/_react.default.createElement("div", {
122
124
  "data-name": "progress",
123
125
  className: _style.default.progress,
124
- style: inlineProgressValueStyle,
125
- role: "progressbar"
126
- }));
126
+ style: inlineProgressStyle,
127
+ role: "progressbar",
128
+ "aria-valuenow": score,
129
+ "aria-valuemin": 0,
130
+ "aria-valuemax": 100
131
+ })), /*#__PURE__*/_react.default.createElement("span", {
132
+ className: _style.default.progressInformationNumber
133
+ }, score.toFixed(1), "%"));
127
134
  }, [score]);
135
+ const hasDescription = Boolean(description && description.trim().length > 0);
128
136
  return /*#__PURE__*/_react.default.createElement("div", {
129
137
  className: _style.default.backgroundContainer
130
138
  }, /*#__PURE__*/_react.default.createElement("div", {
131
139
  className: _style.default.container,
132
140
  "data-name": skillRef
141
+ }, /*#__PURE__*/_react.default.createElement("div", {
142
+ className: _style.default.topSection
133
143
  }, !(0, _isNil2.default)(onBackClick) ? /*#__PURE__*/_react.default.createElement(_buttonLinkIcon.default, {
134
144
  faIcon: "arrow-left",
135
145
  "data-name": "back-button",
@@ -137,67 +147,91 @@ const SkillDetail = (props, context) => {
137
147
  onClick: onBackClick,
138
148
  className: _style.default.backButton,
139
149
  tooltipPlacement: "right"
140
- }) : null, /*#__PURE__*/_react.default.createElement("div", {
141
- className: _style.default.ctaContainer
142
- }, /*#__PURE__*/_react.default.createElement("div", null, focused ? /*#__PURE__*/_react.default.createElement("div", {
150
+ }) : null), /*#__PURE__*/_react.default.createElement("div", {
151
+ className: _style.default.mainSection
152
+ }, /*#__PURE__*/_react.default.createElement("div", {
153
+ className: _style.default.leftSide
154
+ }, /*#__PURE__*/_react.default.createElement(_iconPreview.default, {
155
+ icon: {
156
+ name: 'bullseye-arrow',
157
+ color: _colors.COLORS.purple_100
158
+ },
159
+ title: title
160
+ })), /*#__PURE__*/_react.default.createElement("div", {
161
+ className: _style.default.rightSide
162
+ }, focused ? /*#__PURE__*/_react.default.createElement("div", {
143
163
  className: _style.default.skillFocusBadge
144
164
  }, /*#__PURE__*/_react.default.createElement(_icon.default, {
145
165
  iconName: "bullseye-arrow",
146
- backgroundColor: "#DDD1FF",
166
+ backgroundColor: _colors.COLORS.purple_100,
167
+ size: {
168
+ faSize: 10,
169
+ wrapperSize: 16
170
+ }
171
+ }), translate('skill_focus')) : /*#__PURE__*/_react.default.createElement("div", {
172
+ className: _style.default.skillBadge
173
+ }, /*#__PURE__*/_react.default.createElement(_icon.default, {
174
+ iconName: "shapes",
175
+ backgroundColor: _colors.COLORS.gray,
147
176
  size: {
148
177
  faSize: 10,
149
178
  wrapperSize: 16
150
179
  }
151
- }), translate('skill_focus')) : null, /*#__PURE__*/_react.default.createElement("div", {
180
+ }), translate('skill')), /*#__PURE__*/_react.default.createElement("h2", {
152
181
  className: _style.default.title
153
- }, title), description ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Description, null), isDescriptionTruncated ? /*#__PURE__*/_react.default.createElement("div", {
182
+ }, title), description && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Description, null), isDescriptionTruncated ? /*#__PURE__*/_react.default.createElement("div", {
154
183
  className: _style.default.showMoreWrapper,
155
184
  onClick: handleShowMore
156
185
  }, showMore ? translate('Show less') : translate('Show more'), /*#__PURE__*/_react.default.createElement(_icon.default, {
157
186
  iconName: showMore ? 'chevron-up' : 'chevron-down',
158
187
  size: {
159
188
  faSize: 14,
160
- wrapperSize: 16
189
+ wrapperSize: 14
190
+ },
191
+ customStyle: {
192
+ padding: '8px'
161
193
  }
162
- })) : null) : null), /*#__PURE__*/_react.default.createElement("div", {
194
+ })) : null), questionsToReview > 0 ? /*#__PURE__*/_react.default.createElement("div", {
195
+ className: _style.default.skillInformation
196
+ }, /*#__PURE__*/_react.default.createElement("span", null, questionsToReview), "\xA0", translate('skill_chart_side_panel_questions_to_review')) : null, /*#__PURE__*/_react.default.createElement("div", {
197
+ className: (0, _classnames.default)(_style.default.progressContainer, !hasDescription && _style.default.noDescriptionSpacing)
198
+ }, /*#__PURE__*/_react.default.createElement(ProgressBar, null)), /*#__PURE__*/_react.default.createElement("div", {
163
199
  className: _style.default.ctaWrapper
164
- }, /*#__PURE__*/_react.default.createElement(_buttonLink.default, {
200
+ }, /*#__PURE__*/_react.default.createElement(ContinueLearningButton, {
201
+ ongoingCoursesAvailable: ongoingCoursesAvailable,
202
+ onClick: onContinueLearningClick
203
+ }), /*#__PURE__*/_react.default.createElement(_buttonLink.default, {
165
204
  type: "secondary",
166
- onClick: onReviewClick,
167
205
  label: translate('review_this_skill'),
168
206
  disabled: !availableForReview,
207
+ onClick: onReviewClick,
208
+ icon: {
209
+ position: 'left',
210
+ faIcon: {
211
+ name: 'rotate-right',
212
+ color: _colors.COLORS.cm_grey_700,
213
+ size: 14
214
+ }
215
+ },
169
216
  customStyle: {
170
- width: 'fit-content',
171
- borderRadius: '12px'
217
+ borderRadius: '12px',
218
+ width: 'fit-content'
172
219
  }
173
- }), /*#__PURE__*/_react.default.createElement(ContinueLearningButton, {
174
- ongoingCoursesAvailable: ongoingCoursesAvailable,
175
- onClick: onContinueLearningClick
176
- }))), questionsToReview > 0 ? /*#__PURE__*/_react.default.createElement("div", {
177
- className: _style.default.skillInformation,
178
- "data-name": "skill-questions"
179
- }, /*#__PURE__*/_react.default.createElement("span", {
180
- className: _style.default.skillInformationNumber
181
- }, questionsToReview), "\xA0", translate('skill_chart_side_panel_questions_to_review')) : null, /*#__PURE__*/_react.default.createElement("div", {
182
- className: _style.default.progressContainer
183
- }, /*#__PURE__*/_react.default.createElement(ProgressBar, null), /*#__PURE__*/_react.default.createElement("span", {
184
- className: _style.default.progressInformationNumber
185
- }, score.toFixed(1), "%")), /*#__PURE__*/_react.default.createElement(_allCourses.default, {
220
+ })))), /*#__PURE__*/_react.default.createElement(_allCourses.default, {
186
221
  content: skillIncludedCourses,
187
222
  filters: filters,
188
- sorting: sorting,
189
223
  totalContents: totalContents,
190
- bannerMicrolearning: bannerMicrolearningAction ? {
224
+ bannerMicrolearning: bannerMicrolearning && bannerMicrolearningAction ? {
191
225
  type: 'skill',
192
226
  action: bannerMicrolearningAction,
193
- oldSwitchValue
194
- } : {},
227
+ oldSwitchValue: bannerMicrolearning.oldSwitchValue
228
+ } : undefined,
195
229
  search: search
196
230
  })));
197
231
  };
198
232
  SkillDetail.contextTypes = {
199
- skin: _provider.default.childContextTypes.skin,
200
- translate: _provider.default.childContextTypes.translate
233
+ translate: _provider.default.childContextTypes.translate,
234
+ skin: _provider.default.childContextTypes.skin
201
235
  };
202
236
  SkillDetail.propTypes = process.env.NODE_ENV !== "production" ? {
203
237
  title: _propTypes.default.string.isRequired,
@@ -216,7 +250,6 @@ SkillDetail.propTypes = process.env.NODE_ENV !== "production" ? {
216
250
  onChange: _propTypes.default.func,
217
251
  options: _propTypes.default.arrayOf(_propTypes.default.shape(_select.SelectOptionPropTypes))
218
252
  }),
219
- sorting: _propTypes.default.shape(_select.default.propTypes),
220
253
  onBackClick: _propTypes.default.func,
221
254
  onReviewClick: _propTypes.default.func,
222
255
  onContinueLearningClick: _propTypes.default.func,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cssColorFunction","_classnames","_markdownToJsx","_provider","_select","_buttonLink","_buttonLinkIcon","_icon","_cardsGrid","_style","_allCourses","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ContinueLearningButton","props","context","ongoingCoursesAvailable","onClick","skin","translate","primarySkinColor","_get2","createElement","label","type","customStyle","width","borderRadius","backgroundColor","hoverBackgroundColor","convert","hoverColor","icon","position","faIcon","name","color","size","exports","contextTypes","Provider","childContextTypes","propTypes","process","env","NODE_ENV","PropTypes","bool","func","SkillDetail","title","skillRef","description","metrics","focused","availableForReview","skillIncludedCourses","filters","sorting","onBackClick","onReviewClick","onContinueLearningClick","search","bannerMicrolearning","descriptionRef","useRef","score","questionsToReview","totalContents","action","bannerMicrolearningAction","oldSwitchValue","isDescriptionTruncated","setIsDescriptionTruncated","useState","showMore","setShowMore","handleShowMore","useCallback","useEffect","current","clientHeight","scrollHeight","Description","ref","className","classnames","style","truncate","ProgressBar","undefined","progressBarColor","inlineProgressValueStyle","progressBarWrapper","progress","role","backgroundContainer","container","_isNil2","backButton","tooltipPlacement","ctaContainer","skillFocusBadge","iconName","faSize","wrapperSize","Fragment","showMoreWrapper","ctaWrapper","disabled","skillInformation","skillInformationNumber","progressContainer","progressInformationNumber","toFixed","content","string","isRequired","shape","number","CardsGrid","onChange","options","arrayOf","SelectOptionPropTypes","Select","oldValue","_default"],"sources":["../../../src/template/skill-detail/index.js"],"sourcesContent":["import React, {useCallback, useState, useRef, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {get, isNil} from 'lodash/fp';\nimport Markdown from 'markdown-to-jsx';\nimport Provider from '../../atom/provider';\nimport Select, {SelectOptionPropTypes} from '../../atom/select';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport Icon from '../../atom/icon';\nimport CardsGrid from '../../organism/cards-grid';\nimport style from './style.css';\nimport AllCourses from './all-courses';\n\nexport const ContinueLearningButton = (props, context) => {\n const {ongoingCoursesAvailable, onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = get('common.primary', skin);\n\n return (\n <div>\n <ButtonLink\n label={\n ongoingCoursesAvailable ? translate('continue_learning') : translate('start_learning')\n }\n type=\"primary\"\n customStyle={{\n width: 'fit-content',\n borderRadius: '12px',\n backgroundColor: primarySkinColor\n }}\n hoverBackgroundColor={convert(`hsl(from ${primarySkinColor} h s calc(l*(1 - 0.08)))`)}\n hoverColor=\"#FFFFFF\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'play',\n color: '#FFFFFF',\n size: 16\n }\n }}\n onClick={onClick}\n />\n </div>\n );\n};\n\nContinueLearningButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContinueLearningButton.propTypes = {\n ongoingCoursesAvailable: PropTypes.bool,\n onClick: PropTypes.func\n};\n\nconst SkillDetail = (props, context) => {\n const {\n title,\n skillRef,\n description,\n metrics = {},\n focused,\n availableForReview,\n ongoingCoursesAvailable,\n skillIncludedCourses,\n filters,\n sorting,\n onBackClick,\n onReviewClick,\n onContinueLearningClick,\n search,\n bannerMicrolearning = {}\n } = props;\n const descriptionRef = useRef(null);\n const {score = 0, questionsToReview, totalContents} = metrics;\n const {translate} = context;\n const {action: bannerMicrolearningAction, oldSwitchValue} = bannerMicrolearning;\n\n const [isDescriptionTruncated, setIsDescriptionTruncated] = useState(false);\n const [showMore, setShowMore] = useState(false);\n\n const handleShowMore = useCallback(() => setShowMore(!showMore), [setShowMore, showMore]);\n\n useEffect(() => {\n if (descriptionRef.current) {\n const {clientHeight = 0, scrollHeight = 0} = descriptionRef.current;\n setIsDescriptionTruncated(scrollHeight > clientHeight);\n }\n }, [description]);\n\n const Description = useCallback(() => {\n return (\n <div\n ref={descriptionRef}\n className={classnames(style.description, !showMore && style.truncate)}\n >\n <Markdown>{description}</Markdown>\n </div>\n );\n }, [showMore, description]);\n\n const ProgressBar = useCallback(() => {\n if (score === undefined) return null;\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${score}%`\n };\n\n return (\n <div className={style.progressBarWrapper}>\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n role=\"progressbar\"\n />\n </div>\n );\n }, [score]);\n\n return (\n <div className={style.backgroundContainer}>\n <div className={style.container} data-name={skillRef}>\n {!isNil(onBackClick) ? (\n <ButtonLinkIcon\n faIcon=\"arrow-left\"\n data-name=\"back-button\"\n aria-label={translate('back')}\n onClick={onBackClick}\n className={style.backButton}\n tooltipPlacement=\"right\"\n />\n ) : null}\n <div className={style.ctaContainer}>\n <div>\n {focused ? (\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 {translate('skill_focus')}\n </div>\n ) : null}\n <div className={style.title}>{title}</div>\n {description ? (\n <>\n <Description />\n {isDescriptionTruncated ? (\n <div className={style.showMoreWrapper} onClick={handleShowMore}>\n {showMore ? translate('Show less') : translate('Show more')}\n <Icon\n iconName={showMore ? 'chevron-up' : 'chevron-down'}\n size={{\n faSize: 14,\n wrapperSize: 16\n }}\n />\n </div>\n ) : null}\n </>\n ) : null}\n </div>\n\n <div className={style.ctaWrapper}>\n <ButtonLink\n type=\"secondary\"\n onClick={onReviewClick}\n label={translate('review_this_skill')}\n disabled={!availableForReview}\n customStyle={{\n width: 'fit-content',\n borderRadius: '12px'\n }}\n />\n <ContinueLearningButton\n ongoingCoursesAvailable={ongoingCoursesAvailable}\n onClick={onContinueLearningClick}\n />\n </div>\n </div>\n {questionsToReview > 0 ? (\n <div className={style.skillInformation} data-name=\"skill-questions\">\n <span className={style.skillInformationNumber}>{questionsToReview}</span>\n &nbsp;{translate('skill_chart_side_panel_questions_to_review')}\n </div>\n ) : null}\n <div className={style.progressContainer}>\n <ProgressBar />\n <span className={style.progressInformationNumber}>{score.toFixed(1)}%</span>\n </div>\n <AllCourses\n content={skillIncludedCourses}\n filters={filters}\n sorting={sorting}\n totalContents={totalContents}\n bannerMicrolearning={\n bannerMicrolearningAction\n ? {\n type: 'skill',\n action: bannerMicrolearningAction,\n oldSwitchValue\n }\n : {}\n }\n search={search}\n />\n </div>\n </div>\n );\n};\n\nSkillDetail.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nSkillDetail.propTypes = {\n title: PropTypes.string.isRequired,\n skillRef: PropTypes.string.isRequired,\n description: PropTypes.string,\n metrics: PropTypes.shape({\n score: PropTypes.number,\n questionsToReview: PropTypes.number,\n totalContents: PropTypes.number\n }),\n focused: PropTypes.bool,\n availableForReview: PropTypes.bool,\n ongoingCoursesAvailable: PropTypes.bool,\n skillIncludedCourses: PropTypes.shape(CardsGrid.propTypes),\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes))\n }),\n sorting: PropTypes.shape(Select.propTypes),\n onBackClick: PropTypes.func,\n onReviewClick: PropTypes.func,\n onContinueLearningClick: PropTypes.func,\n search: PropTypes.shape({\n oldValue: PropTypes.string,\n onChange: PropTypes.func\n }),\n bannerMicrolearning: PropTypes.shape({\n action: PropTypes.func,\n oldSwitchValue: PropTypes.bool\n })\n};\n\nexport default SkillDetail;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,cAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,SAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,OAAA,GAAAR,uBAAA,CAAAC,OAAA;AACA,IAAAQ,WAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,eAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,KAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,UAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,MAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,WAAA,GAAAX,sBAAA,CAAAF,OAAA;AAAuC,SAAAc,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAhB,wBAAAgB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAArB,uBAAAa,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,KAAAK,OAAA,EAAAL,CAAA;AAEhC,MAAMmB,sBAAsB,GAAGA,CAACC,KAAK,EAAEC,OAAO,KAAK;EACxD,MAAM;IAACC,uBAAuB;IAAEC;EAAO,CAAC,GAAGH,KAAK;EAChD,MAAM;IAACI,IAAI;IAAEC;EAAS,CAAC,GAAGJ,OAAO;EACjC,MAAMK,gBAAgB,GAAG,IAAAC,KAAA,CAAAtB,OAAA,EAAI,gBAAgB,EAAEmB,IAAI,CAAC;EAEpD,oBACEzC,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,2BACE7C,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACnC,WAAA,CAAAY,OAAU;IACTwB,KAAK,EACHP,uBAAuB,GAAGG,SAAS,CAAC,mBAAmB,CAAC,GAAGA,SAAS,CAAC,gBAAgB,CACtF;IACDK,IAAI,EAAC,SAAS;IACdC,WAAW,EAAE;MACXC,KAAK,EAAE,aAAa;MACpBC,YAAY,EAAE,MAAM;MACpBC,eAAe,EAAER;IACnB,CAAE;IACFS,oBAAoB,EAAE,IAAAC,yBAAO,EAAC,YAAYV,gBAAgB,0BAA0B,CAAE;IACtFW,UAAU,EAAC,SAAS;IACpBC,IAAI,EAAE;MACJC,QAAQ,EAAE,MAAM;MAChBC,MAAM,EAAE;QACNC,IAAI,EAAE,MAAM;QACZC,KAAK,EAAE,SAAS;QAChBC,IAAI,EAAE;MACR;IACF,CAAE;IACFpB,OAAO,EAAEA;EAAQ,CAClB,CACE,CAAC;AAEV,CAAC;AAACqB,OAAA,CAAAzB,sBAAA,GAAAA,sBAAA;AAEFA,sBAAsB,CAAC0B,YAAY,GAAG;EACpCrB,IAAI,EAAEsB,iBAAQ,CAACC,iBAAiB,CAACvB,IAAI;EACrCC,SAAS,EAAEqB,iBAAQ,CAACC,iBAAiB,CAACtB;AACxC,CAAC;AAEDN,sBAAsB,CAAC6B,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACjC7B,uBAAuB,EAAE8B,kBAAS,CAACC,IAAI;EACvC9B,OAAO,EAAE6B,kBAAS,CAACE;AACrB,CAAC;AAED,MAAMC,WAAW,GAAGA,CAACnC,KAAK,EAAEC,OAAO,KAAK;EACtC,MAAM;IACJmC,KAAK;IACLC,QAAQ;IACRC,WAAW;IACXC,OAAO,GAAG,CAAC,CAAC;IACZC,OAAO;IACPC,kBAAkB;IAClBvC,uBAAuB;IACvBwC,oBAAoB;IACpBC,OAAO;IACPC,OAAO;IACPC,WAAW;IACXC,aAAa;IACbC,uBAAuB;IACvBC,MAAM;IACNC,mBAAmB,GAAG,CAAC;EACzB,CAAC,GAAGjD,KAAK;EACT,MAAMkD,cAAc,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EACnC,MAAM;IAACC,KAAK,GAAG,CAAC;IAAEC,iBAAiB;IAAEC;EAAa,CAAC,GAAGf,OAAO;EAC7D,MAAM;IAAClC;EAAS,CAAC,GAAGJ,OAAO;EAC3B,MAAM;IAACsD,MAAM,EAAEC,yBAAyB;IAAEC;EAAc,CAAC,GAAGR,mBAAmB;EAE/E,MAAM,CAACS,sBAAsB,EAAEC,yBAAyB,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAC3E,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EAE/C,MAAMG,cAAc,GAAG,IAAAC,kBAAW,EAAC,MAAMF,WAAW,CAAC,CAACD,QAAQ,CAAC,EAAE,CAACC,WAAW,EAAED,QAAQ,CAAC,CAAC;EAEzF,IAAAI,gBAAS,EAAC,MAAM;IACd,IAAIf,cAAc,CAACgB,OAAO,EAAE;MAC1B,MAAM;QAACC,YAAY,GAAG,CAAC;QAAEC,YAAY,GAAG;MAAC,CAAC,GAAGlB,cAAc,CAACgB,OAAO;MACnEP,yBAAyB,CAACS,YAAY,GAAGD,YAAY,CAAC;IACxD;EACF,CAAC,EAAE,CAAC7B,WAAW,CAAC,CAAC;EAEjB,MAAM+B,WAAW,GAAG,IAAAL,kBAAW,EAAC,MAAM;IACpC,oBACErG,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;MACE8D,GAAG,EAAEpB,cAAe;MACpBqB,SAAS,EAAE,IAAAC,mBAAU,EAACC,cAAK,CAACnC,WAAW,EAAE,CAACuB,QAAQ,IAAIY,cAAK,CAACC,QAAQ;IAAE,gBAEtE/G,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACtC,cAAA,CAAAe,OAAQ,QAAEqD,WAAsB,CAC9B,CAAC;EAEV,CAAC,EAAE,CAACuB,QAAQ,EAAEvB,WAAW,CAAC,CAAC;EAE3B,MAAMqC,WAAW,GAAG,IAAAX,kBAAW,EAAC,MAAM;IACpC,IAAIZ,KAAK,KAAKwB,SAAS,EAAE,OAAO,IAAI;IACpC,MAAMC,gBAAgB,GAAG,SAAS;IAClC,MAAMC,wBAAwB,GAAG;MAC/BhE,eAAe,EAAE+D,gBAAgB;MACjCjE,KAAK,EAAE,GAAGwC,KAAK;IACjB,CAAC;IAED,oBACEzF,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;MAAK+D,SAAS,EAAEE,cAAK,CAACM;IAAmB,gBACvCpH,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;MACE,aAAU,UAAU;MACpB+D,SAAS,EAAEE,cAAK,CAACO,QAAS;MAC1BP,KAAK,EAAEK,wBAAyB;MAChCG,IAAI,EAAC;IAAa,CACnB,CACE,CAAC;EAEV,CAAC,EAAE,CAAC7B,KAAK,CAAC,CAAC;EAEX,oBACEzF,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACS;EAAoB,gBACxCvH,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACU,SAAU;IAAC,aAAW9C;EAAS,GAClD,CAAC,IAAA+C,OAAA,CAAAnG,OAAA,EAAM4D,WAAW,CAAC,gBAClBlF,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAAClC,eAAA,CAAAW,OAAc;IACbmC,MAAM,EAAC,YAAY;IACnB,aAAU,aAAa;IACvB,cAAYf,SAAS,CAAC,MAAM,CAAE;IAC9BF,OAAO,EAAE0C,WAAY;IACrB0B,SAAS,EAAEE,cAAK,CAACY,UAAW;IAC5BC,gBAAgB,EAAC;EAAO,CACzB,CAAC,GACA,IAAI,eACR3H,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACc;EAAa,gBACjC5H,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,cACGgC,OAAO,gBACN7E,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACe;EAAgB,gBACpC7H,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACjC,KAAA,CAAAU,OAAI;IACHwG,QAAQ,EAAC,gBAAgB;IACzB3E,eAAe,EAAC,SAAS;IACzBS,IAAI,EAAE;MACJmE,MAAM,EAAE,EAAE;MACVC,WAAW,EAAE;IACf;EAAE,CACH,CAAC,EACDtF,SAAS,CAAC,aAAa,CACrB,CAAC,GACJ,IAAI,eACR1C,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACrC;EAAM,GAAEA,KAAW,CAAC,EACzCE,WAAW,gBACV3E,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAAA7C,MAAA,CAAAsB,OAAA,CAAA2G,QAAA,qBACEjI,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAAC6D,WAAW,MAAE,CAAC,EACdX,sBAAsB,gBACrB/F,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACoB,eAAgB;IAAC1F,OAAO,EAAE4D;EAAe,GAC5DF,QAAQ,GAAGxD,SAAS,CAAC,WAAW,CAAC,GAAGA,SAAS,CAAC,WAAW,CAAC,eAC3D1C,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACjC,KAAA,CAAAU,OAAI;IACHwG,QAAQ,EAAE5B,QAAQ,GAAG,YAAY,GAAG,cAAe;IACnDtC,IAAI,EAAE;MACJmE,MAAM,EAAE,EAAE;MACVC,WAAW,EAAE;IACf;EAAE,CACH,CACE,CAAC,GACJ,IACJ,CAAC,GACD,IACD,CAAC,eAENhI,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACqB;EAAW,gBAC/BnI,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACnC,WAAA,CAAAY,OAAU;IACTyB,IAAI,EAAC,WAAW;IAChBP,OAAO,EAAE2C,aAAc;IACvBrC,KAAK,EAAEJ,SAAS,CAAC,mBAAmB,CAAE;IACtC0F,QAAQ,EAAE,CAACtD,kBAAmB;IAC9B9B,WAAW,EAAE;MACXC,KAAK,EAAE,aAAa;MACpBC,YAAY,EAAE;IAChB;EAAE,CACH,CAAC,eACFlD,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACT,sBAAsB;IACrBG,uBAAuB,EAAEA,uBAAwB;IACjDC,OAAO,EAAE4C;EAAwB,CAClC,CACE,CACF,CAAC,EACLM,iBAAiB,GAAG,CAAC,gBACpB1F,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACuB,gBAAiB;IAAC,aAAU;EAAiB,gBACjErI,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAM+D,SAAS,EAAEE,cAAK,CAACwB;EAAuB,GAAE5C,iBAAwB,CAAC,QACnE,EAAChD,SAAS,CAAC,4CAA4C,CAC1D,CAAC,GACJ,IAAI,eACR1C,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACyB;EAAkB,gBACtCvI,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAACmE,WAAW,MAAE,CAAC,eACfhH,MAAA,CAAAsB,OAAA,CAAAuB,aAAA;IAAM+D,SAAS,EAAEE,cAAK,CAAC0B;EAA0B,GAAE/C,KAAK,CAACgD,OAAO,CAAC,CAAC,CAAC,EAAC,GAAO,CACxE,CAAC,eACNzI,MAAA,CAAAsB,OAAA,CAAAuB,aAAA,CAAC9B,WAAA,CAAAO,OAAU;IACToH,OAAO,EAAE3D,oBAAqB;IAC9BC,OAAO,EAAEA,OAAQ;IACjBC,OAAO,EAAEA,OAAQ;IACjBU,aAAa,EAAEA,aAAc;IAC7BL,mBAAmB,EACjBO,yBAAyB,GACrB;MACE9C,IAAI,EAAE,OAAO;MACb6C,MAAM,EAAEC,yBAAyB;MACjCC;IACF,CAAC,GACD,CAAC,CACN;IACDT,MAAM,EAAEA;EAAO,CAChB,CACE,CACF,CAAC;AAEV,CAAC;AAEDb,WAAW,CAACV,YAAY,GAAG;EACzBrB,IAAI,EAAEsB,iBAAQ,CAACC,iBAAiB,CAACvB,IAAI;EACrCC,SAAS,EAAEqB,iBAAQ,CAACC,iBAAiB,CAACtB;AACxC,CAAC;AAED8B,WAAW,CAACP,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACtBK,KAAK,EAAEJ,kBAAS,CAACsE,MAAM,CAACC,UAAU;EAClClE,QAAQ,EAAEL,kBAAS,CAACsE,MAAM,CAACC,UAAU;EACrCjE,WAAW,EAAEN,kBAAS,CAACsE,MAAM;EAC7B/D,OAAO,EAAEP,kBAAS,CAACwE,KAAK,CAAC;IACvBpD,KAAK,EAAEpB,kBAAS,CAACyE,MAAM;IACvBpD,iBAAiB,EAAErB,kBAAS,CAACyE,MAAM;IACnCnD,aAAa,EAAEtB,kBAAS,CAACyE;EAC3B,CAAC,CAAC;EACFjE,OAAO,EAAER,kBAAS,CAACC,IAAI;EACvBQ,kBAAkB,EAAET,kBAAS,CAACC,IAAI;EAClC/B,uBAAuB,EAAE8B,kBAAS,CAACC,IAAI;EACvCS,oBAAoB,EAAEV,kBAAS,CAACwE,KAAK,CAACE,kBAAS,CAAC9E,SAAS,CAAC;EAC1De,OAAO,EAAEX,kBAAS,CAACwE,KAAK,CAAC;IACvBG,QAAQ,EAAE3E,kBAAS,CAACE,IAAI;IACxB0E,OAAO,EAAE5E,kBAAS,CAAC6E,OAAO,CAAC7E,kBAAS,CAACwE,KAAK,CAACM,6BAAqB,CAAC;EACnE,CAAC,CAAC;EACFlE,OAAO,EAAEZ,kBAAS,CAACwE,KAAK,CAACO,eAAM,CAACnF,SAAS,CAAC;EAC1CiB,WAAW,EAAEb,kBAAS,CAACE,IAAI;EAC3BY,aAAa,EAAEd,kBAAS,CAACE,IAAI;EAC7Ba,uBAAuB,EAAEf,kBAAS,CAACE,IAAI;EACvCc,MAAM,EAAEhB,kBAAS,CAACwE,KAAK,CAAC;IACtBQ,QAAQ,EAAEhF,kBAAS,CAACsE,MAAM;IAC1BK,QAAQ,EAAE3E,kBAAS,CAACE;EACtB,CAAC,CAAC;EACFe,mBAAmB,EAAEjB,kBAAS,CAACwE,KAAK,CAAC;IACnCjD,MAAM,EAAEvB,kBAAS,CAACE,IAAI;IACtBuB,cAAc,EAAEzB,kBAAS,CAACC;EAC5B,CAAC;AACH,CAAC;AAAC,IAAAgF,QAAA,GAAAzF,OAAA,CAAAvC,OAAA,GAEakD,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_markdownToJsx","_cssColorFunction","_provider","_buttonLinkIcon","_icon","_iconPreview","_buttonLink","_cardsGrid","_colors","_select","_allCourses","_style","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ContinueLearningButton","props","context","ongoingCoursesAvailable","onClick","skin","translate","primarySkinColor","_get2","createElement","label","type","customStyle","width","borderRadius","backgroundColor","hoverBackgroundColor","convert","hoverColor","COLORS","white","icon","position","faIcon","name","color","size","exports","contextTypes","Provider","childContextTypes","propTypes","process","env","NODE_ENV","PropTypes","bool","func","SkillDetail","title","skillRef","description","metrics","focused","availableForReview","skillIncludedCourses","filters","onBackClick","onReviewClick","onContinueLearningClick","search","bannerMicrolearning","score","questionsToReview","totalContents","bannerMicrolearningAction","action","descriptionRef","useRef","isDescriptionTruncated","setIsDescriptionTruncated","useState","showMore","setShowMore","handleShowMore","useCallback","useEffect","current","clientHeight","scrollHeight","Description","ref","className","classnames","style","truncate","ProgressBar","progressBarColor","cm_positive_500","inlineProgressStyle","progressBarRow","progressBarWrapper","progress","role","progressInformationNumber","toFixed","hasDescription","Boolean","trim","length","backgroundContainer","container","topSection","_isNil2","backButton","tooltipPlacement","mainSection","leftSide","purple_100","rightSide","skillFocusBadge","iconName","faSize","wrapperSize","skillBadge","gray","Fragment","showMoreWrapper","padding","skillInformation","progressContainer","noDescriptionSpacing","ctaWrapper","disabled","cm_grey_700","content","oldSwitchValue","undefined","string","isRequired","shape","number","CardsGrid","onChange","options","arrayOf","SelectOptionPropTypes","oldValue","_default"],"sources":["../../../src/template/skill-detail/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useRef, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, isNil} from 'lodash/fp';\nimport Markdown from 'markdown-to-jsx';\nimport {convert} from 'css-color-function';\nimport Provider from '../../atom/provider';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport Icon from '../../atom/icon';\nimport IconPreview from '../../molecule/icon-preview';\nimport ButtonLink from '../../atom/button-link';\nimport CardsGrid, {CardsGridProps} from '../../organism/cards-grid';\nimport {COLORS} from '../../variables/colors';\nimport {SelectOptionPropTypes} from '../../atom/select';\nimport AllCourses from './all-courses';\nimport style from './style.css';\n\ninterface ContinueLearningButtonProps {\n ongoingCoursesAvailable?: boolean;\n onClick?: () => void;\n}\ninterface ProviderContext {\n skin: {\n common: {\n primary: string;\n secondary: string;\n };\n };\n translate: (key: string) => string;\n}\n\nexport const ContinueLearningButton = (\n props: ContinueLearningButtonProps,\n context: ProviderContext\n) => {\n const {ongoingCoursesAvailable, onClick} = props;\n const {skin, translate} = context;\n const primarySkinColor = get('common.primary', skin);\n\n return (\n <ButtonLink\n label={ongoingCoursesAvailable ? translate('continue_learning') : translate('start_learning')}\n type=\"primary\"\n customStyle={{\n width: 'fit-content',\n borderRadius: '12px',\n backgroundColor: primarySkinColor\n }}\n hoverBackgroundColor={convert(`hsl(from ${primarySkinColor} h s calc(l*(1 - 0.08)))`)}\n hoverColor={COLORS.white}\n icon={{\n position: 'left',\n faIcon: {\n name: 'play',\n color: COLORS.white,\n size: 14\n }\n }}\n onClick={onClick}\n />\n );\n};\n\nContinueLearningButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContinueLearningButton.propTypes = {\n ongoingCoursesAvailable: PropTypes.bool,\n onClick: PropTypes.func\n};\n\ninterface Metrics {\n score?: number;\n questionsToReview?: number;\n totalContents?: number;\n}\n\ntype BannerMicrolearning =\n | Record<string, never>\n | {\n action: () => void;\n oldSwitchValue: boolean;\n };\ninterface SkillDetailProps {\n title: string;\n skillRef: string;\n description?: string;\n metrics?: Metrics;\n focused?: boolean;\n availableForReview?: boolean;\n ongoingCoursesAvailable?: boolean;\n skillIncludedCourses: CardsGridProps;\n filters: {\n onChange?: () => void;\n options?: unknown[];\n };\n onBackClick?: () => void;\n onReviewClick?: () => void;\n onContinueLearningClick?: () => void;\n search: {\n oldValue: string;\n onChange: () => void;\n };\n bannerMicrolearning?: BannerMicrolearning;\n}\nconst SkillDetail = (props: SkillDetailProps, context: ProviderContext) => {\n const {\n title,\n skillRef,\n description,\n metrics = {},\n focused,\n availableForReview,\n ongoingCoursesAvailable,\n skillIncludedCourses,\n filters,\n onBackClick,\n onReviewClick,\n onContinueLearningClick,\n search,\n bannerMicrolearning\n } = props;\n\n const {score = 0, questionsToReview = 0, totalContents = 0} = metrics;\n const {translate} = context;\n const bannerMicrolearningAction = bannerMicrolearning?.action;\n const descriptionRef = useRef(null);\n const [isDescriptionTruncated, setIsDescriptionTruncated] = useState(false);\n const [showMore, setShowMore] = useState(false);\n\n const handleShowMore = useCallback(() => {\n setShowMore(!showMore);\n }, [showMore]);\n\n useEffect(() => {\n if (descriptionRef.current) {\n const {clientHeight = 0, scrollHeight = 0} = descriptionRef.current;\n setIsDescriptionTruncated(scrollHeight > clientHeight);\n }\n }, [description]);\n\n const Description = useCallback(() => {\n return (\n <div\n ref={descriptionRef}\n className={classnames(style.description, !showMore && style.truncate)}\n >\n {description ? <Markdown>{description}</Markdown> : null}\n </div>\n );\n }, [showMore, description]);\n\n const ProgressBar = useCallback(() => {\n if (typeof score !== 'number') return null;\n\n const progressBarColor = COLORS.cm_positive_500;\n const inlineProgressStyle = {\n backgroundColor: progressBarColor,\n width: `${score}%`\n };\n\n return (\n <div className={style.progressBarRow}>\n <div className={style.progressBarWrapper}>\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressStyle}\n role=\"progressbar\"\n aria-valuenow={score}\n aria-valuemin={0}\n aria-valuemax={100}\n />\n </div>\n <span className={style.progressInformationNumber}>{score.toFixed(1)}%</span>\n </div>\n );\n }, [score]);\n const hasDescription = Boolean(description && description.trim().length > 0);\n\n return (\n <div className={style.backgroundContainer}>\n <div className={style.container} data-name={skillRef}>\n {/* Top section for the back arrow (optional) */}\n <div className={style.topSection}>\n {!isNil(onBackClick) ? (\n <ButtonLinkIcon\n faIcon=\"arrow-left\"\n data-name=\"back-button\"\n aria-label={translate('back')}\n onClick={onBackClick}\n className={style.backButton}\n tooltipPlacement=\"right\"\n />\n ) : null}\n </div>\n\n {/* Main section: icon on the left, skill info on the right */}\n <div className={style.mainSection}>\n <div className={style.leftSide}>\n <IconPreview\n icon={{\n name: 'bullseye-arrow',\n color: COLORS.purple_100\n }}\n title={title}\n />\n </div>\n <div className={style.rightSide}>\n {focused ? (\n <div className={style.skillFocusBadge}>\n <Icon\n iconName=\"bullseye-arrow\"\n backgroundColor={COLORS.purple_100}\n size={{faSize: 10, wrapperSize: 16}}\n />\n {translate('skill_focus')}\n </div>\n ) : (\n <div className={style.skillBadge}>\n <Icon\n iconName=\"shapes\"\n backgroundColor={COLORS.gray}\n size={{faSize: 10, wrapperSize: 16}}\n />\n {translate('skill')}\n </div>\n )}\n\n <h2 className={style.title}>{title}</h2>\n\n {description && (\n <>\n <Description />\n {isDescriptionTruncated ? (\n <div className={style.showMoreWrapper} onClick={handleShowMore}>\n {showMore ? translate('Show less') : translate('Show more')}\n <Icon\n iconName={showMore ? 'chevron-up' : 'chevron-down'}\n size={{faSize: 14, wrapperSize: 14}}\n customStyle={{padding: '8px'}}\n />\n </div>\n ) : null}\n </>\n )}\n\n {questionsToReview > 0 ? (\n <div className={style.skillInformation}>\n <span>{questionsToReview}</span>\n &nbsp;{translate('skill_chart_side_panel_questions_to_review')}\n </div>\n ) : null}\n\n <div\n className={classnames(\n style.progressContainer,\n !hasDescription && style.noDescriptionSpacing\n )}\n >\n <ProgressBar />\n </div>\n\n <div className={style.ctaWrapper}>\n <ContinueLearningButton\n ongoingCoursesAvailable={ongoingCoursesAvailable}\n onClick={onContinueLearningClick}\n />\n <ButtonLink\n type=\"secondary\"\n label={translate('review_this_skill')}\n disabled={!availableForReview}\n onClick={onReviewClick}\n icon={{\n position: 'left',\n faIcon: {\n name: 'rotate-right',\n color: COLORS.cm_grey_700,\n size: 14\n }\n }}\n customStyle={{borderRadius: '12px', width: 'fit-content'}}\n />\n </div>\n </div>\n </div>\n\n {/* Courses section below */}\n <AllCourses\n content={skillIncludedCourses}\n filters={filters}\n totalContents={totalContents}\n bannerMicrolearning={\n bannerMicrolearning && bannerMicrolearningAction\n ? {\n type: 'skill',\n action: bannerMicrolearningAction,\n oldSwitchValue: bannerMicrolearning.oldSwitchValue\n }\n : undefined\n }\n search={search}\n />\n </div>\n </div>\n );\n};\n\nSkillDetail.contextTypes = {\n translate: Provider.childContextTypes.translate,\n skin: Provider.childContextTypes.skin\n};\n\nSkillDetail.propTypes = {\n title: PropTypes.string.isRequired,\n skillRef: PropTypes.string.isRequired,\n description: PropTypes.string,\n metrics: PropTypes.shape({\n score: PropTypes.number,\n questionsToReview: PropTypes.number,\n totalContents: PropTypes.number\n }),\n focused: PropTypes.bool,\n availableForReview: PropTypes.bool,\n ongoingCoursesAvailable: PropTypes.bool,\n skillIncludedCourses: PropTypes.shape(CardsGrid.propTypes),\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes))\n }),\n onBackClick: PropTypes.func,\n onReviewClick: PropTypes.func,\n onContinueLearningClick: PropTypes.func,\n search: PropTypes.shape({\n oldValue: PropTypes.string,\n onChange: PropTypes.func\n }),\n bannerMicrolearning: PropTypes.shape({\n action: PropTypes.func,\n oldSwitchValue: PropTypes.bool\n })\n};\n\nexport default SkillDetail;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,cAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,eAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,KAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,YAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,WAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,UAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAZ,sBAAA,CAAAF,OAAA;AACA,IAAAe,MAAA,GAAAb,sBAAA,CAAAF,OAAA;AAAgC,SAAAgB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAlB,wBAAAkB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAvB,uBAAAe,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,KAAAK,OAAA,EAAAL,CAAA;AAgBzB,MAAMmB,sBAAsB,GAAGA,CACpCC,KAAkC,EAClCC,OAAwB,KACrB;EACH,MAAM;IAACC,uBAAuB;IAAEC;EAAO,CAAC,GAAGH,KAAK;EAChD,MAAM;IAACI,IAAI;IAAEC;EAAS,CAAC,GAAGJ,OAAO;EACjC,MAAMK,gBAAgB,GAAG,IAAAC,KAAA,CAAAtB,OAAA,EAAI,gBAAgB,EAAEmB,IAAI,CAAC;EAEpD,oBACE3C,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACnC,WAAA,CAAAY,OAAU;IACTwB,KAAK,EAAEP,uBAAuB,GAAGG,SAAS,CAAC,mBAAmB,CAAC,GAAGA,SAAS,CAAC,gBAAgB,CAAE;IAC9FK,IAAI,EAAC,SAAS;IACdC,WAAW,EAAE;MACXC,KAAK,EAAE,aAAa;MACpBC,YAAY,EAAE,MAAM;MACpBC,eAAe,EAAER;IACnB,CAAE;IACFS,oBAAoB,EAAE,IAAAC,yBAAO,EAAC,YAAYV,gBAAgB,0BAA0B,CAAE;IACtFW,UAAU,EAAEC,cAAM,CAACC,KAAM;IACzBC,IAAI,EAAE;MACJC,QAAQ,EAAE,MAAM;MAChBC,MAAM,EAAE;QACNC,IAAI,EAAE,MAAM;QACZC,KAAK,EAAEN,cAAM,CAACC,KAAK;QACnBM,IAAI,EAAE;MACR;IACF,CAAE;IACFtB,OAAO,EAAEA;EAAQ,CAClB,CAAC;AAEN,CAAC;AAACuB,OAAA,CAAA3B,sBAAA,GAAAA,sBAAA;AAEFA,sBAAsB,CAAC4B,YAAY,GAAG;EACpCvB,IAAI,EAAEwB,iBAAQ,CAACC,iBAAiB,CAACzB,IAAI;EACrCC,SAAS,EAAEuB,iBAAQ,CAACC,iBAAiB,CAACxB;AACxC,CAAC;AAEDN,sBAAsB,CAAC+B,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACjC/B,uBAAuB,EAAEgC,kBAAS,CAACC,IAAI;EACvChC,OAAO,EAAE+B,kBAAS,CAACE;AACrB,CAAC;AAoCD,MAAMC,WAAW,GAAGA,CAACrC,KAAuB,EAAEC,OAAwB,KAAK;EACzE,MAAM;IACJqC,KAAK;IACLC,QAAQ;IACRC,WAAW;IACXC,OAAO,GAAG,CAAC,CAAC;IACZC,OAAO;IACPC,kBAAkB;IAClBzC,uBAAuB;IACvB0C,oBAAoB;IACpBC,OAAO;IACPC,WAAW;IACXC,aAAa;IACbC,uBAAuB;IACvBC,MAAM;IACNC;EACF,CAAC,GAAGlD,KAAK;EAET,MAAM;IAACmD,KAAK,GAAG,CAAC;IAAEC,iBAAiB,GAAG,CAAC;IAAEC,aAAa,GAAG;EAAC,CAAC,GAAGZ,OAAO;EACrE,MAAM;IAACpC;EAAS,CAAC,GAAGJ,OAAO;EAC3B,MAAMqD,yBAAyB,GAAGJ,mBAAmB,EAAEK,MAAM;EAC7D,MAAMC,cAAc,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EACnC,MAAM,CAACC,sBAAsB,EAAEC,yBAAyB,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAC3E,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EAE/C,MAAMG,cAAc,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACvCF,WAAW,CAAC,CAACD,QAAQ,CAAC;EACxB,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAAI,gBAAS,EAAC,MAAM;IACd,IAAIT,cAAc,CAACU,OAAO,EAAE;MAC1B,MAAM;QAACC,YAAY,GAAG,CAAC;QAAEC,YAAY,GAAG;MAAC,CAAC,GAAGZ,cAAc,CAACU,OAAO;MACnEP,yBAAyB,CAACS,YAAY,GAAGD,YAAY,CAAC;IACxD;EACF,CAAC,EAAE,CAAC3B,WAAW,CAAC,CAAC;EAEjB,MAAM6B,WAAW,GAAG,IAAAL,kBAAW,EAAC,MAAM;IACpC,oBACEvG,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;MACE8D,GAAG,EAAEd,cAAe;MACpBe,SAAS,EAAE,IAAAC,mBAAU,EAACC,cAAK,CAACjC,WAAW,EAAE,CAACqB,QAAQ,IAAIY,cAAK,CAACC,QAAQ;IAAE,GAErElC,WAAW,gBAAG/E,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACzC,cAAA,CAAAkB,OAAQ,QAAEuD,WAAsB,CAAC,GAAG,IACjD,CAAC;EAEV,CAAC,EAAE,CAACqB,QAAQ,EAAErB,WAAW,CAAC,CAAC;EAE3B,MAAMmC,WAAW,GAAG,IAAAX,kBAAW,EAAC,MAAM;IACpC,IAAI,OAAOb,KAAK,KAAK,QAAQ,EAAE,OAAO,IAAI;IAE1C,MAAMyB,gBAAgB,GAAG1D,cAAM,CAAC2D,eAAe;IAC/C,MAAMC,mBAAmB,GAAG;MAC1BhE,eAAe,EAAE8D,gBAAgB;MACjChE,KAAK,EAAE,GAAGuC,KAAK;IACjB,CAAC;IAED,oBACE1F,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;MAAK+D,SAAS,EAAEE,cAAK,CAACM;IAAe,gBACnCtH,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;MAAK+D,SAAS,EAAEE,cAAK,CAACO;IAAmB,gBACvCvH,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;MACE,aAAU,UAAU;MACpB+D,SAAS,EAAEE,cAAK,CAACQ,QAAS;MAC1BR,KAAK,EAAEK,mBAAoB;MAC3BI,IAAI,EAAC,aAAa;MAClB,iBAAe/B,KAAM;MACrB,iBAAe,CAAE;MACjB,iBAAe;IAAI,CACpB,CACE,CAAC,eACN1F,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;MAAM+D,SAAS,EAAEE,cAAK,CAACU;IAA0B,GAAEhC,KAAK,CAACiC,OAAO,CAAC,CAAC,CAAC,EAAC,GAAO,CACxE,CAAC;EAEV,CAAC,EAAE,CAACjC,KAAK,CAAC,CAAC;EACX,MAAMkC,cAAc,GAAGC,OAAO,CAAC9C,WAAW,IAAIA,WAAW,CAAC+C,IAAI,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC,CAAC;EAE5E,oBACE/H,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACgB;EAAoB,gBACxChI,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACiB,SAAU;IAAC,aAAWnD;EAAS,gBAEnD9E,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACkB;EAAW,GAC9B,CAAC,IAAAC,OAAA,CAAA3G,OAAA,EAAM6D,WAAW,CAAC,gBAClBrF,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACtC,eAAA,CAAAe,OAAc;IACbqC,MAAM,EAAC,YAAY;IACnB,aAAU,aAAa;IACvB,cAAYjB,SAAS,CAAC,MAAM,CAAE;IAC9BF,OAAO,EAAE2C,WAAY;IACrByB,SAAS,EAAEE,cAAK,CAACoB,UAAW;IAC5BC,gBAAgB,EAAC;EAAO,CACzB,CAAC,GACA,IACD,CAAC,eAGNrI,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACsB;EAAY,gBAChCtI,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACuB;EAAS,gBAC7BvI,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACpC,YAAA,CAAAa,OAAW;IACVmC,IAAI,EAAE;MACJG,IAAI,EAAE,gBAAgB;MACtBC,KAAK,EAAEN,cAAM,CAAC+E;IAChB,CAAE;IACF3D,KAAK,EAAEA;EAAM,CACd,CACE,CAAC,eACN7E,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACyB;EAAU,GAC7BxD,OAAO,gBACNjF,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAAC0B;EAAgB,gBACpC1I,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACrC,KAAA,CAAAc,OAAI;IACHmH,QAAQ,EAAC,gBAAgB;IACzBtF,eAAe,EAAEI,cAAM,CAAC+E,UAAW;IACnCxE,IAAI,EAAE;MAAC4E,MAAM,EAAE,EAAE;MAAEC,WAAW,EAAE;IAAE;EAAE,CACrC,CAAC,EACDjG,SAAS,CAAC,aAAa,CACrB,CAAC,gBAEN5C,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAAC8B;EAAW,gBAC/B9I,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACrC,KAAA,CAAAc,OAAI;IACHmH,QAAQ,EAAC,QAAQ;IACjBtF,eAAe,EAAEI,cAAM,CAACsF,IAAK;IAC7B/E,IAAI,EAAE;MAAC4E,MAAM,EAAE,EAAE;MAAEC,WAAW,EAAE;IAAE;EAAE,CACrC,CAAC,EACDjG,SAAS,CAAC,OAAO,CACf,CACN,eAED5C,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAI+D,SAAS,EAAEE,cAAK,CAACnC;EAAM,GAAEA,KAAU,CAAC,EAEvCE,WAAW,iBACV/E,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAAA/C,MAAA,CAAAwB,OAAA,CAAAwH,QAAA,qBACEhJ,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAAC6D,WAAW,MAAE,CAAC,EACdX,sBAAsB,gBACrBjG,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACiC,eAAgB;IAACvG,OAAO,EAAE4D;EAAe,GAC5DF,QAAQ,GAAGxD,SAAS,CAAC,WAAW,CAAC,GAAGA,SAAS,CAAC,WAAW,CAAC,eAC3D5C,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACrC,KAAA,CAAAc,OAAI;IACHmH,QAAQ,EAAEvC,QAAQ,GAAG,YAAY,GAAG,cAAe;IACnDpC,IAAI,EAAE;MAAC4E,MAAM,EAAE,EAAE;MAAEC,WAAW,EAAE;IAAE,CAAE;IACpC3F,WAAW,EAAE;MAACgG,OAAO,EAAE;IAAK;EAAE,CAC/B,CACE,CAAC,GACJ,IACJ,CACH,EAEAvD,iBAAiB,GAAG,CAAC,gBACpB3F,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACmC;EAAiB,gBACrCnJ,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,eAAO4C,iBAAwB,CAAC,QAC1B,EAAC/C,SAAS,CAAC,4CAA4C,CAC1D,CAAC,GACJ,IAAI,eAER5C,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IACE+D,SAAS,EAAE,IAAAC,mBAAU,EACnBC,cAAK,CAACoC,iBAAiB,EACvB,CAACxB,cAAc,IAAIZ,cAAK,CAACqC,oBAC3B;EAAE,gBAEFrJ,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACmE,WAAW,MAAE,CACX,CAAC,eAENlH,MAAA,CAAAwB,OAAA,CAAAuB,aAAA;IAAK+D,SAAS,EAAEE,cAAK,CAACsC;EAAW,gBAC/BtJ,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACT,sBAAsB;IACrBG,uBAAuB,EAAEA,uBAAwB;IACjDC,OAAO,EAAE6C;EAAwB,CAClC,CAAC,eACFvF,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAACnC,WAAA,CAAAY,OAAU;IACTyB,IAAI,EAAC,WAAW;IAChBD,KAAK,EAAEJ,SAAS,CAAC,mBAAmB,CAAE;IACtC2G,QAAQ,EAAE,CAACrE,kBAAmB;IAC9BxC,OAAO,EAAE4C,aAAc;IACvB3B,IAAI,EAAE;MACJC,QAAQ,EAAE,MAAM;MAChBC,MAAM,EAAE;QACNC,IAAI,EAAE,cAAc;QACpBC,KAAK,EAAEN,cAAM,CAAC+F,WAAW;QACzBxF,IAAI,EAAE;MACR;IACF,CAAE;IACFd,WAAW,EAAE;MAACE,YAAY,EAAE,MAAM;MAAED,KAAK,EAAE;IAAa;EAAE,CAC3D,CACE,CACF,CACF,CAAC,eAGNnD,MAAA,CAAAwB,OAAA,CAAAuB,aAAA,CAAC/B,WAAA,CAAAQ,OAAU;IACTiI,OAAO,EAAEtE,oBAAqB;IAC9BC,OAAO,EAAEA,OAAQ;IACjBQ,aAAa,EAAEA,aAAc;IAC7BH,mBAAmB,EACjBA,mBAAmB,IAAII,yBAAyB,GAC5C;MACE5C,IAAI,EAAE,OAAO;MACb6C,MAAM,EAAED,yBAAyB;MACjC6D,cAAc,EAAEjE,mBAAmB,CAACiE;IACtC,CAAC,GACDC,SACL;IACDnE,MAAM,EAAEA;EAAO,CAChB,CACE,CACF,CAAC;AAEV,CAAC;AAEDZ,WAAW,CAACV,YAAY,GAAG;EACzBtB,SAAS,EAAEuB,iBAAQ,CAACC,iBAAiB,CAACxB,SAAS;EAC/CD,IAAI,EAAEwB,iBAAQ,CAACC,iBAAiB,CAACzB;AACnC,CAAC;AAEDiC,WAAW,CAACP,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACtBK,KAAK,EAAEJ,kBAAS,CAACmF,MAAM,CAACC,UAAU;EAClC/E,QAAQ,EAAEL,kBAAS,CAACmF,MAAM,CAACC,UAAU;EACrC9E,WAAW,EAAEN,kBAAS,CAACmF,MAAM;EAC7B5E,OAAO,EAAEP,kBAAS,CAACqF,KAAK,CAAC;IACvBpE,KAAK,EAAEjB,kBAAS,CAACsF,MAAM;IACvBpE,iBAAiB,EAAElB,kBAAS,CAACsF,MAAM;IACnCnE,aAAa,EAAEnB,kBAAS,CAACsF;EAC3B,CAAC,CAAC;EACF9E,OAAO,EAAER,kBAAS,CAACC,IAAI;EACvBQ,kBAAkB,EAAET,kBAAS,CAACC,IAAI;EAClCjC,uBAAuB,EAAEgC,kBAAS,CAACC,IAAI;EACvCS,oBAAoB,EAAEV,kBAAS,CAACqF,KAAK,CAACE,kBAAS,CAAC3F,SAAS,CAAC;EAC1De,OAAO,EAAEX,kBAAS,CAACqF,KAAK,CAAC;IACvBG,QAAQ,EAAExF,kBAAS,CAACE,IAAI;IACxBuF,OAAO,EAAEzF,kBAAS,CAAC0F,OAAO,CAAC1F,kBAAS,CAACqF,KAAK,CAACM,6BAAqB,CAAC;EACnE,CAAC,CAAC;EACF/E,WAAW,EAAEZ,kBAAS,CAACE,IAAI;EAC3BW,aAAa,EAAEb,kBAAS,CAACE,IAAI;EAC7BY,uBAAuB,EAAEd,kBAAS,CAACE,IAAI;EACvCa,MAAM,EAAEf,kBAAS,CAACqF,KAAK,CAAC;IACtBO,QAAQ,EAAE5F,kBAAS,CAACmF,MAAM;IAC1BK,QAAQ,EAAExF,kBAAS,CAACE;EACtB,CAAC,CAAC;EACFc,mBAAmB,EAAEhB,kBAAS,CAACqF,KAAK,CAAC;IACnChE,MAAM,EAAErB,kBAAS,CAACE,IAAI;IACtB+E,cAAc,EAAEjF,kBAAS,CAACC;EAC5B,CAAC;AACH,CAAC;AAAC,IAAA4F,QAAA,GAAArG,OAAA,CAAAzC,OAAA,GAEaoD,WAAW","ignoreList":[]}
@@ -7,6 +7,7 @@
7
7
  @value cm_grey_200 from colors;
8
8
  @value cm_grey_400 from colors;
9
9
  @value cm_grey_500 from colors;
10
+ @value purple_600 from colors;
10
11
 
11
12
  .textBase {
12
13
  font-family: "Gilroy";
@@ -22,12 +23,7 @@
22
23
  .container {
23
24
  composes: textBase;
24
25
  background-color: white;
25
- font-family: "Gilroy";
26
- font-style: normal;
27
- margin-top: 48px;
28
- margin-bottom: 48px;
29
- margin-left: auto;
30
- margin-right: auto;
26
+ margin: 48px auto;
31
27
  padding: 0 16px;
32
28
  position: relative;
33
29
  box-sizing: border-box;
@@ -36,14 +32,48 @@
36
32
  max-width: calc(1080px + 40px);
37
33
  }
38
34
 
39
- .backButton {
40
- margin-bottom: 16px;
35
+ .topSection {
36
+ display: flex;
41
37
  }
42
38
 
43
- .ctaContainer {
39
+ .mainSection {
44
40
  display: flex;
45
- width: 100%;
46
- justify-content: space-between;
41
+ align-items: flex-start;
42
+ gap: 40px;
43
+ }
44
+
45
+ .leftSide {
46
+ width: 420px;
47
+ height: 280px;
48
+ display: flex;
49
+ flex-direction: column;
50
+ gap: 16px;
51
+ }
52
+
53
+ .rightSide {
54
+ max-width: 620px;
55
+ height: 280px;
56
+ display: flex;
57
+ gap: 8px;
58
+ flex-direction: column;
59
+ }
60
+
61
+ .title {
62
+ gap: 8px;
63
+ margin: 0;
64
+ font-size: 24px;
65
+ font-weight: 700;
66
+ line-height: 32px;
67
+ }
68
+
69
+ .ctaWrapper {
70
+ display: flex;
71
+ gap: 8px;
72
+ margin-top: 16px;
73
+ }
74
+
75
+ .backButton {
76
+ margin-bottom: 16px;
47
77
  }
48
78
 
49
79
  .skillFocusBadge {
@@ -57,35 +87,39 @@
57
87
  font-size: 12px;
58
88
  line-height: 16px;
59
89
  font-weight: 600;
60
- color: #3900D6;
61
- margin-bottom: 16px;
90
+ color: purple_600;
62
91
  }
63
92
 
64
- .ctaWrapper,
65
- .showMoreWrapper {
93
+ .skillBadge {
66
94
  display: flex;
67
- gap: 8px;
95
+ height: 12px;
96
+ width: fit-content;
97
+ align-items: center;
98
+ background-color: cm_grey_100;
99
+ border-radius: 24px;
100
+ padding: 4px 8px;
101
+ font-size: 12px;
102
+ line-height: 12px;
103
+ font-weight: 600;
104
+ color: cm_grey_500;
68
105
  }
69
106
 
70
107
  .showMoreWrapper {
108
+ display: flex;
71
109
  align-items: center;
72
- margin-top: 8px;
110
+ color: cm_grey_500;
73
111
  font-weight: 600;
74
112
  cursor: pointer;
75
- }
76
-
77
- .title {
78
- font-size: 24px;
79
- font-weight: 700;
80
- line-height: 32px;
113
+ font-size: 14px;
81
114
  }
82
115
 
83
116
  .description {
84
- margin-top: 8px;
85
- max-width: 734px;
117
+ max-width: 620px;
86
118
  font-size: 14px;
87
119
  font-weight: 500;
88
120
  line-height: 20px;
121
+ flex: 1 0 0;
122
+ align-self: stretch;
89
123
  color: cm_grey_400;
90
124
  }
91
125
 
@@ -105,27 +139,37 @@
105
139
  color: cm_grey_400;
106
140
  margin-top: 16px;
107
141
  }
108
-
109
- .skillInformationNumber {
110
- color: #000;
142
+ .noDescriptionSpacing {
143
+ margin-top: 48px ;
111
144
  }
112
145
 
146
+
113
147
  .progressContainer {
114
148
  display: flex;
115
149
  align-items: center;
116
150
  gap: 8px;
117
- margin: 16px 0 40px 0;
118
151
  }
119
152
 
120
153
  .progressInformationNumber {
154
+ font-size: 14px;
155
+ font-weight: 600;
121
156
  color: cm_grey_500;
157
+ flex-shrink: 0;
158
+ }
159
+
160
+ .progressBarRow {
161
+ display: flex;
162
+ align-items: center;
163
+ flex-direction: row;
164
+ width: 100%;
165
+ gap: 8px;
122
166
  }
123
167
 
124
168
  .progressBarWrapper {
125
169
  position: relative;
126
170
  left: 0;
127
171
  max-width: 300px;
128
- width: 100%;
172
+ flex: 1;
129
173
  height: 4px;
130
174
  border-radius: 2px;
131
175
  overflow: hidden;
@@ -133,27 +177,41 @@
133
177
  }
134
178
 
135
179
  .progress {
136
- display: block;
180
+ display: flex;
137
181
  height: 8px;
138
182
  animation: progressbar 2s ease-in-out;
139
183
  }
140
184
 
141
185
  @media tablet {
142
- .ctaContainer {
143
- flex-direction: column;
186
+ .topSection {
187
+ flex-direction: row;
188
+ align-items: flex-start;
144
189
  }
145
-
146
- .ctaWrapper {
147
- margin-top: 32px;
190
+ .leftSide,
191
+ .rightSide {
192
+ width: 50%;
148
193
  }
149
194
  }
150
195
 
151
196
  @media mobile {
197
+ .topSection {
198
+ flex-direction: column;
199
+ align-items: center;
200
+ }
201
+
202
+ .leftSide,
203
+ .rightSide {
204
+ width: 100%;
205
+ align-items: center;
206
+ }
207
+
152
208
  .ctaWrapper {
153
209
  flex-direction: column;
210
+ gap: 8px;
211
+ margin-top: 16px;
212
+ }
154
213
 
155
- button {
156
- width: 100% !important;
157
- }
214
+ .ctaWrapper button {
215
+ width: 100% !important;
158
216
  }
159
217
  }
@@ -89,3 +89,15 @@
89
89
  @value yellow_100: #FFF9D1;
90
90
  @value red_700: #A30000;
91
91
  @value red_100: #FFD1D1;
92
+
93
+ @value warning_100: #FFEECC;
94
+ @value warning_700: #B87A00;
95
+
96
+ @value negative_600 #C91214;
97
+ @value red_200 #FF9E9E;
98
+ @value turquoise_100: '#D9F4F7';
99
+ @value pink_100: '#FAD6DE';
100
+ @value orange_100: '#FFDCD1';
101
+ @value primary_100: '#D6E6FF';
102
+ @value purple_100: #DDD1FF;
103
+ @value purple_600: #3900D6;
@@ -2,17 +2,17 @@ export declare const COLORS: {
2
2
  readonly gray: "#EAEAEB";
3
3
  readonly negative: "#ed3436";
4
4
  readonly cm_negative_200: "#B81400";
5
- readonly positive: "#35CC7F";
6
5
  readonly cm_positive_200: "#05944F";
7
- readonly white: "#ffffff";
6
+ readonly white: "#FFFFFF";
8
7
  readonly cm_blue_50: "#f1f6fe";
9
8
  readonly cm_grey_400: "#9999A8";
10
9
  readonly cm_grey_800: "#171721";
10
+ readonly cm_grey_150: "#E1E1E3";
11
11
  readonly cm_primary_blue: "#0061FF";
12
12
  readonly cm_blue_700: "#0042AD";
13
13
  readonly primary_100: "#D6E6FF";
14
14
  readonly primary_600: "#0051D6";
15
- readonly cm_grey_500: "#515161";
15
+ readonly cm_grey_500: "#9999A8";
16
16
  readonly cm_grey_700: "#1D1D2B";
17
17
  readonly cm_yellow_400: "#bd7e00";
18
18
  readonly brand: "#00B0FF";
@@ -21,6 +21,18 @@ export declare const COLORS: {
21
21
  readonly red_700: "#A30000";
22
22
  readonly red_100: "#FFD1D1";
23
23
  readonly cm_turquoise_strong: "#1B7B88";
24
+ readonly yellow_500: "#FFCE0A";
25
+ readonly neutral_75: " #F4F4F5";
26
+ readonly neutral_400: " #9999A8";
27
+ readonly neutral_500: "#515161";
28
+ readonly negative_700: "#B81400";
29
+ readonly cm_orange_800: "#A32700";
30
+ readonly purple_700: "#2B00A3";
31
+ readonly purple_100: "#DDD1FF";
32
+ readonly turquoise_100: "#D9F4F7";
33
+ readonly pink_100: "#FAD6DE";
34
+ readonly orange_100: "#FFDCD1";
35
+ readonly cm_positive_500: "#35CC7F";
24
36
  };
25
37
  export declare type Colors = typeof COLORS;
26
38
  //# sourceMappingURL=colors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/variables/colors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;CAuBT,CAAC;AAEX,oBAAY,MAAM,GAAG,OAAO,MAAM,CAAC"}
1
+ {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/variables/colors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCT,CAAC;AAEX,oBAAY,MAAM,GAAG,OAAO,MAAM,CAAC"}