@coorpacademy/components 11.35.2-alpha.13 → 11.35.2-forcedeploy.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) 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/icon/index.d.ts +35 -17
  5. package/es/atom/icon/index.d.ts.map +1 -1
  6. package/es/atom/icon/index.js +32 -15
  7. package/es/atom/icon/index.js.map +1 -1
  8. package/es/atom/radio-with-title/index.d.ts +13 -3
  9. package/es/atom/radio-with-title/index.d.ts.map +1 -1
  10. package/es/atom/radio-with-title/types.d.ts +13 -2
  11. package/es/atom/radio-with-title/types.d.ts.map +1 -1
  12. package/es/atom/status-item/index.native.js +1 -1
  13. package/es/atom/status-item/index.native.js.map +1 -1
  14. package/es/atom/tag/index.d.ts +12 -1
  15. package/es/atom/tag/style.css +1 -0
  16. package/es/atom/title/index.d.ts +13 -2
  17. package/es/molecule/banner/style.css +1 -0
  18. package/es/molecule/base-modal/style.css +0 -1
  19. package/es/molecule/bulk-progress-bar/index.js +2 -2
  20. package/es/molecule/bulk-progress-bar/index.js.map +1 -1
  21. package/es/molecule/certification-card/index.js +1 -1
  22. package/es/molecule/certification-card/index.js.map +1 -1
  23. package/es/molecule/cm-popin/types.d.ts +28 -7
  24. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  25. package/es/molecule/cm-popin/types.js +1 -1
  26. package/es/molecule/cm-popin/types.js.map +1 -1
  27. package/es/molecule/dashboard/cards-list/index.d.ts.map +1 -1
  28. package/es/molecule/dashboard/cards-list/index.js +2 -0
  29. package/es/molecule/dashboard/cards-list/index.js.map +1 -1
  30. package/es/molecule/learner-skill-card/index.d.ts +25 -40
  31. package/es/molecule/learner-skill-card/index.d.ts.map +1 -1
  32. package/es/molecule/learner-skill-card/index.js +95 -96
  33. package/es/molecule/learner-skill-card/index.js.map +1 -1
  34. package/es/molecule/learner-skill-card/prop-types.d.ts +37 -0
  35. package/es/molecule/learner-skill-card/prop-types.d.ts.map +1 -0
  36. package/es/molecule/learner-skill-card/prop-types.js +20 -0
  37. package/es/molecule/learner-skill-card/prop-types.js.map +1 -0
  38. package/es/molecule/learner-skill-card/style.css +62 -41
  39. package/es/molecule/learning-priority-modal/style.css +3 -2
  40. package/es/molecule/progress-wrapper/index.js +1 -1
  41. package/es/molecule/progress-wrapper/index.js.map +1 -1
  42. package/es/molecule/skills-chart-side-information-item/index.d.ts +1 -1
  43. package/es/molecule/skills-chart-side-information-panel/index.d.ts +1 -1
  44. package/es/molecule/title-and-checkbox-wrapper/index.d.ts +13 -2
  45. package/es/molecule/title-radio-wrapper/index.d.ts +13 -3
  46. package/es/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  47. package/es/molecule/title-radio-wrapper/types.d.ts +13 -2
  48. package/es/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  49. package/es/molecule/translation-modal/index.d.ts +0 -1
  50. package/es/molecule/translation-modal/index.d.ts.map +1 -1
  51. package/es/molecule/translation-modal/index.js +24 -7
  52. package/es/molecule/translation-modal/index.js.map +1 -1
  53. package/es/organism/cards-grid/index.d.ts +48 -10
  54. package/es/organism/cards-grid/index.d.ts.map +1 -1
  55. package/es/organism/cards-grid/index.js +3 -2
  56. package/es/organism/cards-grid/index.js.map +1 -1
  57. package/es/organism/content-skill-modal/index.d.ts +13 -3
  58. package/es/organism/content-skill-modal/index.d.ts.map +1 -1
  59. package/es/organism/content-skill-modal/types.d.ts +12 -2
  60. package/es/organism/content-skill-modal/types.d.ts.map +1 -1
  61. package/es/organism/list-item/index.js +5 -5
  62. package/es/organism/list-item/index.js.map +1 -1
  63. package/es/organism/list-item/style.css +23 -17
  64. package/es/organism/list-items/index.d.ts +13 -2
  65. package/es/organism/list-items/style.css +1 -0
  66. package/es/organism/rewards-form/index.d.ts +13 -2
  67. package/es/organism/select-opponents/index.d.ts +13 -3
  68. package/es/organism/select-opponents/index.d.ts.map +1 -1
  69. package/es/organism/select-opponents/types.d.ts +13 -2
  70. package/es/organism/select-opponents/types.d.ts.map +1 -1
  71. package/es/organism/sidebar/index.d.ts +2 -2
  72. package/es/organism/skill-edition/index.d.ts +1261 -52
  73. package/es/organism/skill-edition/index.d.ts.map +1 -1
  74. package/es/organism/skill-edition/index.js +3 -224
  75. package/es/organism/skill-edition/index.js.map +1 -1
  76. package/es/organism/skill-edition/types.d.ts +1268 -117
  77. package/es/organism/skill-edition/types.d.ts.map +1 -1
  78. package/es/organism/skill-edition/types.js +7 -59
  79. package/es/organism/skill-edition/types.js.map +1 -1
  80. package/es/organism/title-and-input/index.d.ts +25 -5
  81. package/es/organism/title-and-input/index.d.ts.map +1 -1
  82. package/es/organism/title-and-input/types.d.ts +24 -4
  83. package/es/organism/title-and-input/types.d.ts.map +1 -1
  84. package/es/organism/wizard-contents/index.d.ts +13 -2
  85. package/es/template/app-player/loading/index.d.ts +27 -6
  86. package/es/template/app-player/player/index.d.ts +53 -12
  87. package/es/template/app-player/player/slides/index.d.ts +27 -6
  88. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  89. package/es/template/app-player/popin-correction/index.d.ts +26 -6
  90. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  91. package/es/template/app-player/popin-end/index.d.ts +27 -6
  92. package/es/template/app-review/index.d.ts +27 -7
  93. package/es/template/app-review/index.d.ts.map +1 -1
  94. package/es/template/app-review/player/prop-types.d.ts +27 -6
  95. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  96. package/es/template/app-review/prop-types.d.ts +27 -6
  97. package/es/template/app-review/prop-types.d.ts.map +1 -1
  98. package/es/template/back-office/brand-update/index.d.ts +1713 -1113
  99. package/es/template/back-office/brand-update/index.d.ts.map +1 -1
  100. package/es/template/back-office/brand-update/index.js +0 -12
  101. package/es/template/back-office/brand-update/index.js.map +1 -1
  102. package/es/template/back-office/brand-update/utils.d.ts +1 -1
  103. package/es/template/common/dashboard/index.d.ts +53 -12
  104. package/es/template/common/search-page/index.d.ts +27 -6
  105. package/es/template/external-course/index.d.ts +27 -6
  106. package/es/template/my-learning/index.d.ts +0 -1
  107. package/es/template/my-learning/index.d.ts.map +1 -1
  108. package/es/template/my-learning/index.js +26 -22
  109. package/es/template/my-learning/index.js.map +1 -1
  110. package/es/template/my-learning/style.css +9 -6
  111. package/es/template/skill-detail/all-courses.css +3 -2
  112. package/es/template/skill-detail/all-courses.d.ts +52 -17
  113. package/es/template/skill-detail/all-courses.d.ts.map +1 -1
  114. package/es/template/skill-detail/all-courses.js +12 -11
  115. package/es/template/skill-detail/all-courses.js.map +1 -1
  116. package/es/template/skill-detail/continue-learning.css +7 -2
  117. package/es/template/skill-detail/continue-learning.d.ts +25 -12
  118. package/es/template/skill-detail/continue-learning.d.ts.map +1 -1
  119. package/es/template/skill-detail/continue-learning.js.map +1 -1
  120. package/es/template/skill-detail/index.d.ts +81 -71
  121. package/es/template/skill-detail/index.d.ts.map +1 -1
  122. package/es/template/skill-detail/index.js +91 -58
  123. package/es/template/skill-detail/index.js.map +1 -1
  124. package/es/template/skill-detail/style.css +97 -39
  125. package/es/variables/colors.css +7 -1
  126. package/es/variables/colors.d.ts +9 -2
  127. package/es/variables/colors.d.ts.map +1 -1
  128. package/es/variables/colors.js +10 -3
  129. package/es/variables/colors.js.map +1 -1
  130. package/es/variables/theme.native.js +1 -1
  131. package/es/variables/theme.native.js.map +1 -1
  132. package/lib/atom/button-link/index.js +1 -1
  133. package/lib/atom/button-link/index.js.map +1 -1
  134. package/lib/atom/button-link/style.css +2 -2
  135. package/lib/atom/icon/index.d.ts +35 -17
  136. package/lib/atom/icon/index.d.ts.map +1 -1
  137. package/lib/atom/icon/index.js +34 -18
  138. package/lib/atom/icon/index.js.map +1 -1
  139. package/lib/atom/radio-with-title/index.d.ts +13 -3
  140. package/lib/atom/radio-with-title/index.d.ts.map +1 -1
  141. package/lib/atom/radio-with-title/types.d.ts +13 -2
  142. package/lib/atom/radio-with-title/types.d.ts.map +1 -1
  143. package/lib/atom/status-item/index.native.js +1 -1
  144. package/lib/atom/status-item/index.native.js.map +1 -1
  145. package/lib/atom/tag/index.d.ts +12 -1
  146. package/lib/atom/tag/style.css +1 -0
  147. package/lib/atom/title/index.d.ts +13 -2
  148. package/lib/molecule/banner/style.css +1 -0
  149. package/lib/molecule/base-modal/style.css +0 -1
  150. package/lib/molecule/bulk-progress-bar/index.js +2 -2
  151. package/lib/molecule/bulk-progress-bar/index.js.map +1 -1
  152. package/lib/molecule/certification-card/index.js +1 -1
  153. package/lib/molecule/certification-card/index.js.map +1 -1
  154. package/lib/molecule/cm-popin/types.d.ts +28 -7
  155. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  156. package/lib/molecule/cm-popin/types.js +1 -1
  157. package/lib/molecule/cm-popin/types.js.map +1 -1
  158. package/lib/molecule/dashboard/cards-list/index.d.ts.map +1 -1
  159. package/lib/molecule/dashboard/cards-list/index.js +2 -0
  160. package/lib/molecule/dashboard/cards-list/index.js.map +1 -1
  161. package/lib/molecule/learner-skill-card/index.d.ts +25 -40
  162. package/lib/molecule/learner-skill-card/index.d.ts.map +1 -1
  163. package/lib/molecule/learner-skill-card/index.js +98 -96
  164. package/lib/molecule/learner-skill-card/index.js.map +1 -1
  165. package/lib/molecule/learner-skill-card/prop-types.d.ts +37 -0
  166. package/lib/molecule/learner-skill-card/prop-types.d.ts.map +1 -0
  167. package/lib/molecule/learner-skill-card/prop-types.js +25 -0
  168. package/lib/molecule/learner-skill-card/prop-types.js.map +1 -0
  169. package/lib/molecule/learner-skill-card/style.css +62 -41
  170. package/lib/molecule/learning-priority-modal/style.css +3 -2
  171. package/lib/molecule/progress-wrapper/index.js +1 -1
  172. package/lib/molecule/progress-wrapper/index.js.map +1 -1
  173. package/lib/molecule/skills-chart-side-information-item/index.d.ts +1 -1
  174. package/lib/molecule/skills-chart-side-information-panel/index.d.ts +1 -1
  175. package/lib/molecule/title-and-checkbox-wrapper/index.d.ts +13 -2
  176. package/lib/molecule/title-radio-wrapper/index.d.ts +13 -3
  177. package/lib/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  178. package/lib/molecule/title-radio-wrapper/types.d.ts +13 -2
  179. package/lib/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  180. package/lib/molecule/translation-modal/index.d.ts +0 -1
  181. package/lib/molecule/translation-modal/index.d.ts.map +1 -1
  182. package/lib/molecule/translation-modal/index.js +23 -6
  183. package/lib/molecule/translation-modal/index.js.map +1 -1
  184. package/lib/organism/cards-grid/index.d.ts +48 -10
  185. package/lib/organism/cards-grid/index.d.ts.map +1 -1
  186. package/lib/organism/cards-grid/index.js +3 -2
  187. package/lib/organism/cards-grid/index.js.map +1 -1
  188. package/lib/organism/content-skill-modal/index.d.ts +13 -3
  189. package/lib/organism/content-skill-modal/index.d.ts.map +1 -1
  190. package/lib/organism/content-skill-modal/types.d.ts +12 -2
  191. package/lib/organism/content-skill-modal/types.d.ts.map +1 -1
  192. package/lib/organism/list-item/index.js +5 -5
  193. package/lib/organism/list-item/index.js.map +1 -1
  194. package/lib/organism/list-item/style.css +23 -17
  195. package/lib/organism/list-items/index.d.ts +13 -2
  196. package/lib/organism/list-items/style.css +1 -0
  197. package/lib/organism/rewards-form/index.d.ts +13 -2
  198. package/lib/organism/select-opponents/index.d.ts +13 -3
  199. package/lib/organism/select-opponents/index.d.ts.map +1 -1
  200. package/lib/organism/select-opponents/types.d.ts +13 -2
  201. package/lib/organism/select-opponents/types.d.ts.map +1 -1
  202. package/lib/organism/sidebar/index.d.ts +2 -2
  203. package/lib/organism/skill-edition/index.d.ts +1261 -52
  204. package/lib/organism/skill-edition/index.d.ts.map +1 -1
  205. package/lib/organism/skill-edition/index.js +3 -224
  206. package/lib/organism/skill-edition/index.js.map +1 -1
  207. package/lib/organism/skill-edition/types.d.ts +1268 -117
  208. package/lib/organism/skill-edition/types.d.ts.map +1 -1
  209. package/lib/organism/skill-edition/types.js +7 -59
  210. package/lib/organism/skill-edition/types.js.map +1 -1
  211. package/lib/organism/title-and-input/index.d.ts +25 -5
  212. package/lib/organism/title-and-input/index.d.ts.map +1 -1
  213. package/lib/organism/title-and-input/types.d.ts +24 -4
  214. package/lib/organism/title-and-input/types.d.ts.map +1 -1
  215. package/lib/organism/wizard-contents/index.d.ts +13 -2
  216. package/lib/template/app-player/loading/index.d.ts +27 -6
  217. package/lib/template/app-player/player/index.d.ts +53 -12
  218. package/lib/template/app-player/player/slides/index.d.ts +27 -6
  219. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  220. package/lib/template/app-player/popin-correction/index.d.ts +26 -6
  221. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  222. package/lib/template/app-player/popin-end/index.d.ts +27 -6
  223. package/lib/template/app-review/index.d.ts +27 -7
  224. package/lib/template/app-review/index.d.ts.map +1 -1
  225. package/lib/template/app-review/player/prop-types.d.ts +27 -6
  226. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  227. package/lib/template/app-review/prop-types.d.ts +27 -6
  228. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  229. package/lib/template/back-office/brand-update/index.d.ts +1713 -1113
  230. package/lib/template/back-office/brand-update/index.d.ts.map +1 -1
  231. package/lib/template/back-office/brand-update/index.js +0 -12
  232. package/lib/template/back-office/brand-update/index.js.map +1 -1
  233. package/lib/template/back-office/brand-update/utils.d.ts +1 -1
  234. package/lib/template/common/dashboard/index.d.ts +53 -12
  235. package/lib/template/common/search-page/index.d.ts +27 -6
  236. package/lib/template/external-course/index.d.ts +27 -6
  237. package/lib/template/my-learning/index.d.ts +0 -1
  238. package/lib/template/my-learning/index.d.ts.map +1 -1
  239. package/lib/template/my-learning/index.js +26 -22
  240. package/lib/template/my-learning/index.js.map +1 -1
  241. package/lib/template/my-learning/style.css +9 -6
  242. package/lib/template/skill-detail/all-courses.css +3 -2
  243. package/lib/template/skill-detail/all-courses.d.ts +52 -17
  244. package/lib/template/skill-detail/all-courses.d.ts.map +1 -1
  245. package/lib/template/skill-detail/all-courses.js +11 -11
  246. package/lib/template/skill-detail/all-courses.js.map +1 -1
  247. package/lib/template/skill-detail/continue-learning.css +7 -2
  248. package/lib/template/skill-detail/continue-learning.d.ts +25 -12
  249. package/lib/template/skill-detail/continue-learning.d.ts.map +1 -1
  250. package/lib/template/skill-detail/continue-learning.js.map +1 -1
  251. package/lib/template/skill-detail/index.d.ts +81 -71
  252. package/lib/template/skill-detail/index.d.ts.map +1 -1
  253. package/lib/template/skill-detail/index.js +91 -58
  254. package/lib/template/skill-detail/index.js.map +1 -1
  255. package/lib/template/skill-detail/style.css +97 -39
  256. package/lib/variables/colors.css +7 -1
  257. package/lib/variables/colors.d.ts +9 -2
  258. package/lib/variables/colors.d.ts.map +1 -1
  259. package/lib/variables/colors.js +10 -3
  260. package/lib/variables/colors.js.map +1 -1
  261. package/lib/variables/theme.native.js +1 -1
  262. package/lib/variables/theme.native.js.map +1 -1
  263. package/locales/cs/global.json +1 -0
  264. package/locales/en/global.json +1 -0
  265. package/locales/hr/global.json +1 -0
  266. package/locales/it/global.json +1 -0
  267. package/locales/ko/global.json +1 -0
  268. package/locales/ru/global.json +1 -0
  269. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"all-courses.js","names":["React","useState","useCallback","useMemo","PropTypes","Provider","Select","SelectOptionPropTypes","ButtonLink","SearchForm","CardsGrid","InputSwitch","Banner","style","uncappedMap","_map","convert","cap","FilterButton","props","context","dataName","ariaLabel","selected","label","onClick","skin","primarySkinColor","_get","buttonProps","customStyle","backgroundColor","color","transition","width","createElement","contextTypes","childContextTypes","translate","propTypes","process","env","NODE_ENV","string","bool","func","AllCourses","content","filters","sorting","totalContents","bannerMicrolearning","search","oldValue","oldSearchValue","onChange","handleSearch","options","list","loading","type","bannerMessageType","action","bannerAction","oldSwitchValue","showCompleted","setShowCompleted","searchValue","setSearchValue","sortView","undefined","_extends","filteredContent","_filter","course","progress","debounceHandleSearch","_debounce","value","onSearchChange","handleSearchReset","handleShowCompletedToggle","prevShowCompleted","Fragment","className","continueLearningWrapper","continueLearningTitle","continueLearningNumber","_isNil","_size","searchAndSortSection","searchWrapper","placeholder","onReset","dataTestId","sortSection","id","name","title","sortWrapper","_isEmpty","bannerWrapper","message","cta","filterWrapper","filterProps","index","handleFilterChange","key","filterButtonWrapper","divider","justifyContent","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","shape","number","arrayOf","oneOf"],"sources":["../../../src/template/skill-detail/all-courses.js"],"sourcesContent":["import React, {useState, useCallback, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, filter, map, size, isNil, isEmpty, debounce} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Select, {SelectOptionPropTypes} from '../../atom/select';\nimport ButtonLink from '../../atom/button-link';\nimport SearchForm from '../../molecule/search-form';\nimport CardsGrid from '../../organism/cards-grid';\nimport InputSwitch from '../../atom/input-switch';\nimport Banner from '../../molecule/banner';\nimport style from './all-courses.css';\n\nconst uncappedMap = map.convert({cap: false});\n\nconst FilterButton = (props, context) => {\n const {dataName, ariaLabel, selected, label, onClick} = props;\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const buttonProps = {\n customStyle: {\n backgroundColor: selected ? primarySkinColor : '#E1E1E3',\n color: selected ? '#FFFFFF' : '#515161',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: 'fit-content'\n },\n label,\n onClick,\n 'data-name': dataName,\n 'aria-label': ariaLabel\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n dataName: PropTypes.string,\n ariaLabel: PropTypes.string,\n selected: PropTypes.bool,\n label: PropTypes.string,\n onClick: PropTypes.func\n};\n\nconst AllCourses = (props, context) => {\n const {translate} = context;\n const {\n content,\n filters,\n sorting,\n totalContents,\n bannerMicrolearning = {},\n search: {oldValue: oldSearchValue, onChange: handleSearch}\n } = props;\n const {options, onChange} = filters;\n const {list, loading} = content;\n const {type: bannerMessageType, action: bannerAction, oldSwitchValue} = bannerMicrolearning;\n const [showCompleted, setShowCompleted] = useState(true);\n const [searchValue, setSearchValue] = useState(oldSearchValue || '');\n\n const sortView =\n sorting !== undefined ? (\n <div data-name=\"choice\">\n <Select {...sorting} aria-label=\"All courses sort\" />\n </div>\n ) : null;\n\n const filteredContent = useMemo(() => {\n return showCompleted ? list : filter(course => course.progress < 1, list);\n }, [list, showCompleted]);\n\n const debounceHandleSearch = useMemo(() => {\n return debounce(800, value => {\n handleSearch(value);\n });\n }, [handleSearch]);\n\n const onSearchChange = useCallback(\n value => {\n setSearchValue(value);\n debounceHandleSearch(value);\n },\n [debounceHandleSearch]\n );\n\n const handleSearchReset = useCallback(\n value => {\n setSearchValue('');\n debounceHandleSearch('');\n },\n [debounceHandleSearch]\n );\n\n const handleShowCompletedToggle = useCallback(() => {\n setShowCompleted(prevShowCompleted => !prevShowCompleted);\n }, []);\n\n return (\n <>\n <div className={style.continueLearningWrapper}>\n <span className={style.continueLearningTitle}>{translate('all_content')}</span>\n <span className={style.continueLearningNumber}>\n {isNil(totalContents) ? size(filteredContent) : totalContents}\n </span>\n </div>\n <div className={style.searchAndSortSection}>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_place_holder'),\n value: searchValue,\n onChange: onSearchChange\n }}\n onReset={handleSearchReset}\n dataTestId=\"all-courses-search-input\"\n />\n </div>\n <div className={style.sortSection}>\n <InputSwitch\n id={'show-completed-courses-switch'}\n type=\"switch\"\n name={translate('show_completed')}\n title={translate('show_completed')}\n aria-label={'Show completed courses aria label'}\n value={showCompleted}\n onChange={handleShowCompletedToggle}\n />\n {sortView ? (\n <div className={style.sortWrapper}>\n {translate('sort_by')}\n {sortView}\n </div>\n ) : null}\n </div>\n </div>\n {!isEmpty(bannerMicrolearning) ? (\n <div className={style.bannerWrapper}>\n <Banner\n type=\"info\"\n message={\n bannerMessageType === 'skill'\n ? translate('banner_microlearning_rule_message_skill')\n : translate('banner_microlearning_rule_message')\n }\n cta={[\n {\n type: 'switch',\n label: translate('banner_microlearning_rule_label'),\n action: bannerAction,\n oldSwitchValue\n }\n ]}\n />\n </div>\n ) : null}\n <div className={style.filterWrapper}>\n {size(options) > 2\n ? uncappedMap((filterProps, index) => {\n const {name, value, selected} = filterProps;\n\n function handleFilterChange() {\n onChange(value);\n }\n\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton\n dataName={`filter-button-${value}`}\n ariaLabel={`Filter by ${name}`}\n selected={selected}\n label={name}\n onClick={handleFilterChange}\n />\n {value === 'ALL' ? <div className={style.divider} /> : null}\n </div>\n );\n }, options)\n : null}\n </div>\n <div>\n {size(filteredContent) ? (\n <CardsGrid\n list={filteredContent}\n loading={loading}\n customStyle={{justifyContent: 'left'}}\n />\n ) : (\n <div className={style.emptySearchResultContainer}>\n <div className={style.emptySearchResultTitle}>\n {translate('empty_search_result_title', {searchValue})}\n </div>\n <div className={style.emptySearchResultDescription}>\n {translate('empty_search_result_description')}\n </div>\n <div className={style.emptySearchResultClearSearch} onClick={handleSearchReset}>\n {translate('empty_search_result_clear_search')}\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nAllCourses.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nAllCourses.propTypes = {\n content: PropTypes.shape(CardsGrid.propTypes),\n totalContents: PropTypes.number,\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes))\n }),\n sorting: PropTypes.shape(Select.propTypes),\n bannerMicrolearning: PropTypes.shape({\n type: PropTypes.oneOf(['skill', 'playlist']),\n action: PropTypes.func,\n oldSwitchValue: PropTypes.bool\n }),\n search: PropTypes.shape({\n oldValue: PropTypes.string,\n onChange: PropTypes.func\n })\n};\n\nexport default AllCourses;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"all-courses.js","names":["React","useState","useCallback","useMemo","PropTypes","Provider","Select","SelectOptionPropTypes","ButtonLink","SearchForm","CardsGrid","InputSwitch","Banner","COLORS","style","uncappedMap","_map","convert","cap","FilterButton","props","context","dataName","ariaLabel","selected","label","onClick","skin","primarySkinColor","_get","buttonProps","customStyle","backgroundColor","cm_grey_150","color","white","cm_grey_500","transition","width","createElement","contextTypes","childContextTypes","translate","propTypes","process","env","NODE_ENV","string","bool","func","AllCourses","content","filters","sorting","totalContents","bannerMicrolearning","undefined","search","oldValue","oldSearchValue","onChange","handleSearch","options","list","loading","bannerMessageType","type","bannerAction","action","oldSwitchValue","showCompleted","setShowCompleted","searchValue","setSearchValue","sortView","_extends","filteredContent","_filter","course","progress","debounceHandleSearch","_debounce","value","onSearchChange","handleSearchReset","handleShowCompletedToggle","prevShowCompleted","Fragment","className","continueLearningWrapper","continueLearningTitle","continueLearningNumber","_isNil","_size","searchAndSortSection","searchWrapper","placeholder","onReset","dataTestId","sortSection","id","name","title","theme","sortWrapper","_isEmpty","bannerWrapper","message","cta","filterWrapper","filterProps","index","handleFilterChange","key","filterButtonWrapper","divider","justifyContent","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","shape","number","arrayOf","oneOf"],"sources":["../../../src/template/skill-detail/all-courses.tsx"],"sourcesContent":["import React, {useState, useCallback, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, filter, map, size, isNil, isEmpty, debounce} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Select, {SelectOptionPropTypes} from '../../atom/select';\nimport ButtonLink from '../../atom/button-link';\nimport SearchForm from '../../molecule/search-form';\nimport CardsGrid, {CardsGridProps} from '../../organism/cards-grid';\nimport InputSwitch from '../../atom/input-switch';\nimport Banner from '../../molecule/banner';\nimport {COLORS} from '../../variables/colors';\nimport style from './all-courses.css';\n\n// @ts-expect-error convert untypped\nconst uncappedMap = map.convert({cap: false});\ninterface ProviderContext {\n skin: {\n common: {\n primary: string;\n secondary: string;\n };\n };\n translate: (key: string, options?: any) => string;\n}\n\ninterface FilterOption {\n name: string;\n value: string;\n selected: boolean;\n}\n\ninterface FilterButtonProps {\n dataName?: string;\n ariaLabel?: string;\n selected?: boolean;\n label?: string;\n onClick?: () => void;\n}\nconst FilterButton = (props: FilterButtonProps, context: ProviderContext) => {\n const {dataName, ariaLabel, selected, label, onClick} = props;\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const buttonProps = {\n customStyle: {\n backgroundColor: selected ? primarySkinColor : COLORS.cm_grey_150,\n color: selected ? COLORS.white : COLORS.cm_grey_500,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: 'fit-content'\n },\n label,\n onClick,\n 'data-name': dataName,\n 'aria-label': ariaLabel\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\nFilterButton.propTypes = {\n dataName: PropTypes.string,\n ariaLabel: PropTypes.string,\n selected: PropTypes.bool,\n label: PropTypes.string,\n onClick: PropTypes.func\n};\n\nconst AllCourses = (\n props: {\n dataName?: string;\n ariaLabel?: string;\n selected?: boolean;\n label?: string;\n content: {\n list: CardsGridProps['list'];\n loading?: boolean;\n };\n totalContents?: number;\n search: {\n oldValue: string;\n onChange: (value: string) => void;\n };\n bannerMicrolearning?: {\n type: 'skill' | 'playlist';\n action: () => void;\n oldSwitchValue: boolean;\n };\n filters: {\n onChange?: (value: string) => void;\n options?: unknown[];\n };\n sorting?: unknown;\n },\n context: ProviderContext\n) => {\n const {translate} = context;\n const {\n content,\n filters,\n sorting,\n totalContents,\n bannerMicrolearning = undefined,\n search: {oldValue: oldSearchValue, onChange: handleSearch}\n } = props;\n const {options, onChange} = filters;\n const {list, loading} = content;\n const bannerMessageType = bannerMicrolearning?.type;\n const bannerAction = bannerMicrolearning?.action;\n const oldSwitchValue = bannerMicrolearning?.oldSwitchValue;\n\n const [showCompleted, setShowCompleted] = useState(true);\n const [searchValue, setSearchValue] = useState(oldSearchValue || '');\n\n const sortView =\n sorting !== undefined ? (\n <div data-name=\"choice\">\n <Select {...sorting} aria-label=\"All courses sort\" />\n </div>\n ) : null;\n\n const filteredContent = useMemo(() => {\n return showCompleted ? list : filter(course => course.progress < 1, list);\n }, [list, showCompleted]);\n\n const debounceHandleSearch = useMemo(() => {\n return debounce(800, value => {\n handleSearch(value);\n });\n }, [handleSearch]);\n\n const onSearchChange = useCallback(\n value => {\n setSearchValue(value);\n debounceHandleSearch(value);\n },\n [debounceHandleSearch]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n debounceHandleSearch('');\n }, [debounceHandleSearch]);\n\n const handleShowCompletedToggle = useCallback(() => {\n setShowCompleted(prevShowCompleted => !prevShowCompleted);\n }, []);\n\n return (\n <>\n <div className={style.continueLearningWrapper}>\n <span className={style.continueLearningTitle}>{translate('all_content')}</span>\n <span className={style.continueLearningNumber}>\n {isNil(totalContents) ? size(filteredContent) : totalContents}\n </span>\n </div>\n <div className={style.searchAndSortSection}>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_place_holder'),\n value: searchValue,\n onChange: onSearchChange\n }}\n onReset={handleSearchReset}\n dataTestId=\"all-courses-search-input\"\n />\n </div>\n <div className={style.sortSection}>\n <InputSwitch\n id={'show-completed-courses-switch'}\n name={translate('show_completed')}\n title={translate('show_completed')}\n theme=\"default\"\n aria-label={'Show completed courses aria label'}\n value={showCompleted}\n onChange={handleShowCompletedToggle}\n />\n {sortView ? (\n <div className={style.sortWrapper}>\n {translate('sort_by')}\n {sortView}\n </div>\n ) : null}\n </div>\n </div>\n {!isEmpty(bannerMicrolearning) ? (\n <div className={style.bannerWrapper}>\n <Banner\n type=\"info\"\n message={\n bannerMessageType === 'skill'\n ? translate('banner_microlearning_rule_message_skill')\n : translate('banner_microlearning_rule_message')\n }\n cta={[\n {\n type: 'switch',\n label: translate('banner_microlearning_rule_label'),\n action: bannerAction,\n oldSwitchValue\n }\n ]}\n />\n </div>\n ) : null}\n\n <div className={style.filterWrapper}>\n {size(options) > 2\n ? uncappedMap((filterProps: FilterOption, index: number) => {\n const {name, value, selected} = filterProps;\n\n function handleFilterChange() {\n onChange && onChange(value);\n }\n\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton\n dataName={`filter-button-${value}`}\n ariaLabel={`Filter by ${name}`}\n selected={selected}\n label={name}\n onClick={handleFilterChange}\n />\n {value === 'ALL' ? <div className={style.divider} /> : null}\n </div>\n );\n }, options)\n : null}\n </div>\n <div>\n {size(filteredContent) ? (\n <CardsGrid\n list={filteredContent}\n loading={loading}\n customStyle={{justifyContent: 'left'}}\n />\n ) : (\n <div className={style.emptySearchResultContainer}>\n <div className={style.emptySearchResultTitle}>\n {translate('empty_search_result_title', {searchValue})}\n </div>\n <div className={style.emptySearchResultDescription}>\n {translate('empty_search_result_description')}\n </div>\n <div className={style.emptySearchResultClearSearch} onClick={handleSearchReset}>\n {translate('empty_search_result_clear_search')}\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nAllCourses.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nAllCourses.propTypes = {\n content: PropTypes.shape(CardsGrid.propTypes),\n totalContents: PropTypes.number,\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes))\n }),\n sorting: PropTypes.shape(Select.propTypes),\n bannerMicrolearning: PropTypes.shape({\n type: PropTypes.oneOf(['skill', 'playlist']),\n action: PropTypes.func,\n oldSwitchValue: PropTypes.bool\n }),\n search: PropTypes.shape({\n oldValue: PropTypes.string,\n onChange: PropTypes.func\n })\n};\n\nexport default AllCourses;\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,8 @@
1
+ @value colors: "../../variables/colors.css";
2
+ @value cm_grey_100 from colors;
3
+ @value cm_grey_500 from colors;
4
+
5
+
1
6
  .continueLearningTitle {
2
7
  font-size: 16px;
3
8
  font-weight: 600;
@@ -6,8 +11,8 @@
6
11
 
7
12
  .continueLearningNumber {
8
13
  border-radius: 50%;
9
- background-color: #EAEAEB;
10
- color: #515161;
14
+ background-color: cm_grey_100;
15
+ color: cm_grey_500;
11
16
  padding: 2px 4px;
12
17
  margin-left: 8px;
13
18
  font-size: 10px;
@@ -1,8 +1,21 @@
1
- export default ContinueLearning;
2
- declare function ContinueLearning(props: any, context: any): JSX.Element | null;
3
- declare namespace ContinueLearning {
4
- namespace contextTypes {
5
- const skin: PropTypes.Requireable<PropTypes.InferProps<{
1
+ /// <reference types="react" />
2
+ import PropTypes from 'prop-types';
3
+ import { CardsGridProps } from '../../organism/cards-grid';
4
+ interface ProviderContext {
5
+ skin: {
6
+ common: {
7
+ primary: string;
8
+ secondary: string;
9
+ };
10
+ };
11
+ translate: (key: string, options?: any) => string;
12
+ }
13
+ declare const ContinueLearning: {
14
+ (props: {
15
+ ongoingCourses: CardsGridProps;
16
+ }, context: ProviderContext): JSX.Element | null;
17
+ contextTypes: {
18
+ skin: PropTypes.Requireable<PropTypes.InferProps<{
6
19
  common: PropTypes.Requireable<{
7
20
  [x: string]: any;
8
21
  }>;
@@ -23,17 +36,17 @@ declare namespace ContinueLearning {
23
36
  [x: string]: any;
24
37
  }>;
25
38
  }>>;
26
- const translate: PropTypes.Requireable<(...args: any[]) => any>;
27
- }
28
- namespace propTypes {
29
- const ongoingCourses: PropTypes.Requireable<PropTypes.InferProps<{
39
+ translate: PropTypes.Requireable<(...args: any[]) => any>;
40
+ };
41
+ propTypes: {
42
+ ongoingCourses: PropTypes.Requireable<PropTypes.InferProps<{
30
43
  list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
31
44
  customStyle: PropTypes.Requireable<{
32
45
  [x: string]: string | null | undefined;
33
46
  }>;
34
47
  loading: PropTypes.Requireable<boolean>;
35
48
  }>>;
36
- }
37
- }
38
- import PropTypes from "prop-types";
49
+ };
50
+ };
51
+ export default ContinueLearning;
39
52
  //# sourceMappingURL=continue-learning.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"continue-learning.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/continue-learning.js"],"names":[],"mappings":";AAQA,gFA0BC"}
1
+ {"version":3,"file":"continue-learning.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/continue-learning.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,OAAkB,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAIpE,UAAU,eAAe;IACvB,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;IACF,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC;CACnD;AAED,QAAA,MAAM,gBAAgB;YAAW;QAAC,cAAc,EAAE,cAAc,CAAA;KAAC,WAAW,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B1F,CAAC;AAWF,eAAe,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"continue-learning.js","names":["React","useCallback","PropTypes","Provider","CardsGrid","CardsList","style","ContinueLearning","props","context","ongoingCourses","translate","Title","createElement","Fragment","className","continueLearningTitle","continueLearningNumber","list","length","cards","_sortBy","course","_getOr","title","customStyle","padding","contextTypes","skin","childContextTypes","propTypes","process","env","NODE_ENV","shape"],"sources":["../../../src/template/skill-detail/continue-learning.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, sortBy} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport CardsGrid from '../../organism/cards-grid';\nimport CardsList from '../../molecule/dashboard/cards-list';\nimport style from './continue-learning.css';\n\nconst ContinueLearning = (props, context) => {\n const {ongoingCourses} = props;\n const {translate} = context;\n\n const Title = useCallback(\n () => (\n <>\n <span className={style.continueLearningTitle}>{translate('continue_learning')}</span>\n <span className={style.continueLearningNumber}>{ongoingCourses.list.length}</span>\n </>\n ),\n [ongoingCourses, translate]\n );\n\n if (ongoingCourses.list.length === 0) {\n return null;\n }\n\n return (\n <CardsList\n cards={sortBy(course => -getOr(0, ['progress'], course), ongoingCourses.list)}\n title={<Title />}\n // to override CardList wrapper padding\n customStyle={{padding: '0px'}}\n />\n );\n};\n\nContinueLearning.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContinueLearning.propTypes = {\n ongoingCourses: PropTypes.shape(CardsGrid.propTypes)\n};\n\nexport default ContinueLearning;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAGC,WAAW,QAAO,OAAO;AACxC,OAAOC,SAAS,MAAM,YAAY;AAElC,OAAOC,QAAQ,MAAM,qBAAqB;AAC1C,OAAOC,SAAS,MAAM,2BAA2B;AACjD,OAAOC,SAAS,MAAM,qCAAqC;AAC3D,OAAOC,KAAK,MAAM,yBAAyB;AAE3C,MAAMC,gBAAgB,GAAGA,CAACC,KAAK,EAAEC,OAAO,KAAK;EAC3C,MAAM;IAACC;EAAc,CAAC,GAAGF,KAAK;EAC9B,MAAM;IAACG;EAAS,CAAC,GAAGF,OAAO;EAE3B,MAAMG,KAAK,GAAGX,WAAW,CACvB,mBACED,KAAA,CAAAa,aAAA,CAAAb,KAAA,CAAAc,QAAA,qBACEd,KAAA,CAAAa,aAAA;IAAME,SAAS,EAAET,KAAK,CAACU;EAAsB,GAAEL,SAAS,CAAC,mBAAmB,CAAQ,CAAC,eACrFX,KAAA,CAAAa,aAAA;IAAME,SAAS,EAAET,KAAK,CAACW;EAAuB,GAAEP,cAAc,CAACQ,IAAI,CAACC,MAAa,CACjF,CACH,EACD,CAACT,cAAc,EAAEC,SAAS,CAC5B,CAAC;EAED,IAAID,cAAc,CAACQ,IAAI,CAACC,MAAM,KAAK,CAAC,EAAE;IACpC,OAAO,IAAI;EACb;EAEA,oBACEnB,KAAA,CAAAa,aAAA,CAACR,SAAS;IACRe,KAAK,EAAEC,OAAA,CAAOC,MAAM,IAAI,CAACC,MAAA,CAAM,CAAC,EAAE,CAAC,UAAU,CAAC,EAAED,MAAM,CAAC,EAAEZ,cAAc,CAACQ,IAAI,CAAE;IAC9EM,KAAK,eAAExB,KAAA,CAAAa,aAAA,CAACD,KAAK,MAAE;IACf;IAAA;IACAa,WAAW,EAAE;MAACC,OAAO,EAAE;IAAK;EAAE,CAC/B,CAAC;AAEN,CAAC;AAEDnB,gBAAgB,CAACoB,YAAY,GAAG;EAC9BC,IAAI,EAAEzB,QAAQ,CAAC0B,iBAAiB,CAACD,IAAI;EACrCjB,SAAS,EAAER,QAAQ,CAAC0B,iBAAiB,CAAClB;AACxC,CAAC;AAEDJ,gBAAgB,CAACuB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EAC3BvB,cAAc,EAAER,SAAS,CAACgC,KAAK,CAAC9B,SAAS,CAAC0B,SAAS;AACrD,CAAC;AAED,eAAevB,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"continue-learning.js","names":["React","useCallback","PropTypes","Provider","CardsGrid","CardsList","style","ContinueLearning","props","context","ongoingCourses","translate","Title","createElement","Fragment","className","continueLearningTitle","continueLearningNumber","list","length","cards","_sortBy","course","_getOr","title","customStyle","padding","contextTypes","skin","childContextTypes","propTypes","process","env","NODE_ENV","shape"],"sources":["../../../src/template/skill-detail/continue-learning.tsx"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, sortBy} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport CardsGrid, {CardsGridProps} from '../../organism/cards-grid';\nimport CardsList from '../../molecule/dashboard/cards-list';\nimport style from './continue-learning.css';\n\ninterface ProviderContext {\n skin: {\n common: {\n primary: string;\n secondary: string;\n };\n };\n translate: (key: string, options?: any) => string;\n}\n\nconst ContinueLearning = (props: {ongoingCourses: CardsGridProps}, context: ProviderContext) => {\n const {ongoingCourses} = props;\n const {translate} = context;\n\n const Title = useCallback(\n () => (\n <>\n <span className={style.continueLearningTitle}>{translate('continue_learning')}</span>\n <span className={style.continueLearningNumber}>{ongoingCourses.list.length}</span>\n </>\n ),\n [ongoingCourses, translate]\n );\n\n if (ongoingCourses.list.length === 0) {\n return null;\n }\n\n return (\n <CardsList\n cards={sortBy(course => -getOr(0, ['progress'], course), ongoingCourses.list)}\n title={<Title />}\n // to override CardList wrapper padding\n customStyle={{padding: '0px'}}\n />\n );\n};\n\nContinueLearning.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContinueLearning.propTypes = {\n ongoingCourses: PropTypes.shape(CardsGrid.propTypes)\n};\n\nexport default ContinueLearning;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAGC,WAAW,QAAO,OAAO;AACxC,OAAOC,SAAS,MAAM,YAAY;AAElC,OAAOC,QAAQ,MAAM,qBAAqB;AAC1C,OAAOC,SAAS,MAAwB,2BAA2B;AACnE,OAAOC,SAAS,MAAM,qCAAqC;AAC3D,OAAOC,KAAK,MAAM,yBAAyB;AAY3C,MAAMC,gBAAgB,GAAGA,CAACC,KAAuC,EAAEC,OAAwB,KAAK;EAC9F,MAAM;IAACC;EAAc,CAAC,GAAGF,KAAK;EAC9B,MAAM;IAACG;EAAS,CAAC,GAAGF,OAAO;EAE3B,MAAMG,KAAK,GAAGX,WAAW,CACvB,mBACED,KAAA,CAAAa,aAAA,CAAAb,KAAA,CAAAc,QAAA,qBACEd,KAAA,CAAAa,aAAA;IAAME,SAAS,EAAET,KAAK,CAACU;EAAsB,GAAEL,SAAS,CAAC,mBAAmB,CAAQ,CAAC,eACrFX,KAAA,CAAAa,aAAA;IAAME,SAAS,EAAET,KAAK,CAACW;EAAuB,GAAEP,cAAc,CAACQ,IAAI,CAACC,MAAa,CACjF,CACH,EACD,CAACT,cAAc,EAAEC,SAAS,CAC5B,CAAC;EAED,IAAID,cAAc,CAACQ,IAAI,CAACC,MAAM,KAAK,CAAC,EAAE;IACpC,OAAO,IAAI;EACb;EAEA,oBACEnB,KAAA,CAAAa,aAAA,CAACR,SAAS;IACRe,KAAK,EAAEC,OAAA,CAAOC,MAAM,IAAI,CAACC,MAAA,CAAM,CAAC,EAAE,CAAC,UAAU,CAAC,EAAED,MAAM,CAAC,EAAEZ,cAAc,CAACQ,IAAI,CAAE;IAC9EM,KAAK,eAAExB,KAAA,CAAAa,aAAA,CAACD,KAAK,MAAE;IACf;IAAA;IACAa,WAAW,EAAE;MAACC,OAAO,EAAE;IAAK;EAAE,CAC/B,CAAC;AAEN,CAAC;AAEDnB,gBAAgB,CAACoB,YAAY,GAAG;EAC9BC,IAAI,EAAEzB,QAAQ,CAAC0B,iBAAiB,CAACD,IAAI;EACrCjB,SAAS,EAAER,QAAQ,CAAC0B,iBAAiB,CAAClB;AACxC,CAAC;AAEDJ,gBAAgB,CAACuB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EAC3BvB,cAAc,EAAER,SAAS,CAACgC,KAAK,CAAC9B,SAAS,CAAC0B,SAAS;AACrD,CAAC;AAED,eAAevB,gBAAgB","ignoreList":[]}
@@ -1,7 +1,23 @@
1
- export function ContinueLearningButton(props: any, context: any): JSX.Element;
2
- export namespace ContinueLearningButton {
3
- namespace contextTypes {
4
- const skin: PropTypes.Requireable<PropTypes.InferProps<{
1
+ /// <reference types="react" />
2
+ import PropTypes from 'prop-types';
3
+ import { CardsGridProps } from '../../organism/cards-grid';
4
+ interface ContinueLearningButtonProps {
5
+ ongoingCoursesAvailable?: boolean;
6
+ onClick?: () => void;
7
+ }
8
+ interface ProviderContext {
9
+ skin: {
10
+ common: {
11
+ primary: string;
12
+ secondary: string;
13
+ };
14
+ };
15
+ translate: (key: string) => string;
16
+ }
17
+ export declare const ContinueLearningButton: {
18
+ (props: ContinueLearningButtonProps, context: ProviderContext): JSX.Element;
19
+ contextTypes: {
20
+ skin: PropTypes.Requireable<PropTypes.InferProps<{
5
21
  common: PropTypes.Requireable<{
6
22
  [x: string]: any;
7
23
  }>;
@@ -22,19 +38,49 @@ export namespace ContinueLearningButton {
22
38
  [x: string]: any;
23
39
  }>;
24
40
  }>>;
25
- const translate: PropTypes.Requireable<(...args: any[]) => any>;
26
- }
27
- namespace propTypes {
28
- const ongoingCoursesAvailable: PropTypes.Requireable<boolean>;
29
- const onClick: PropTypes.Requireable<(...args: any[]) => any>;
30
- }
41
+ translate: PropTypes.Requireable<(...args: any[]) => any>;
42
+ };
43
+ propTypes: {
44
+ ongoingCoursesAvailable: PropTypes.Requireable<boolean>;
45
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
46
+ };
47
+ };
48
+ interface Metrics {
49
+ score?: number;
50
+ questionsToReview?: number;
51
+ totalContents?: number;
31
52
  }
32
- export default SkillDetail;
33
- import PropTypes from "prop-types";
34
- declare function SkillDetail(props: any, context: any): JSX.Element;
35
- declare namespace SkillDetail {
36
- export namespace contextTypes_1 {
37
- const skin_1: PropTypes.Requireable<PropTypes.InferProps<{
53
+ declare type BannerMicrolearning = Record<string, never> | {
54
+ action: () => void;
55
+ oldSwitchValue: boolean;
56
+ };
57
+ interface SkillDetailProps {
58
+ title: string;
59
+ skillRef: string;
60
+ description?: string;
61
+ metrics?: Metrics;
62
+ focused?: boolean;
63
+ availableForReview?: boolean;
64
+ ongoingCoursesAvailable?: boolean;
65
+ skillIncludedCourses: CardsGridProps;
66
+ filters: {
67
+ onChange?: () => void;
68
+ options?: unknown[];
69
+ };
70
+ onBackClick?: () => void;
71
+ onReviewClick?: () => void;
72
+ onContinueLearningClick?: () => void;
73
+ search: {
74
+ oldValue: string;
75
+ onChange: () => void;
76
+ };
77
+ bannerMicrolearning?: BannerMicrolearning;
78
+ }
79
+ declare const SkillDetail: {
80
+ (props: SkillDetailProps, context: ProviderContext): JSX.Element;
81
+ contextTypes: {
82
+ translate: PropTypes.Requireable<(...args: any[]) => any>;
83
+ skin: PropTypes.Requireable<PropTypes.InferProps<{
38
84
  common: PropTypes.Requireable<{
39
85
  [x: string]: any;
40
86
  }>;
@@ -55,32 +101,27 @@ declare namespace SkillDetail {
55
101
  [x: string]: any;
56
102
  }>;
57
103
  }>>;
58
- export { skin_1 as skin };
59
- const translate_1: PropTypes.Requireable<(...args: any[]) => any>;
60
- export { translate_1 as translate };
61
- }
62
- export { contextTypes_1 as contextTypes };
63
- export namespace propTypes_1 {
64
- export const title: PropTypes.Validator<string>;
65
- export const skillRef: PropTypes.Validator<string>;
66
- export const description: PropTypes.Requireable<string>;
67
- export const metrics: PropTypes.Requireable<PropTypes.InferProps<{
104
+ };
105
+ propTypes: {
106
+ title: PropTypes.Validator<string>;
107
+ skillRef: PropTypes.Validator<string>;
108
+ description: PropTypes.Requireable<string>;
109
+ metrics: PropTypes.Requireable<PropTypes.InferProps<{
68
110
  score: PropTypes.Requireable<number>;
69
111
  questionsToReview: PropTypes.Requireable<number>;
70
112
  totalContents: PropTypes.Requireable<number>;
71
113
  }>>;
72
- export const focused: PropTypes.Requireable<boolean>;
73
- export const availableForReview: PropTypes.Requireable<boolean>;
74
- const ongoingCoursesAvailable_1: PropTypes.Requireable<boolean>;
75
- export { ongoingCoursesAvailable_1 as ongoingCoursesAvailable };
76
- export const skillIncludedCourses: PropTypes.Requireable<PropTypes.InferProps<{
114
+ focused: PropTypes.Requireable<boolean>;
115
+ availableForReview: PropTypes.Requireable<boolean>;
116
+ ongoingCoursesAvailable: PropTypes.Requireable<boolean>;
117
+ skillIncludedCourses: PropTypes.Requireable<PropTypes.InferProps<{
77
118
  list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
78
119
  customStyle: PropTypes.Requireable<{
79
120
  [x: string]: string | null | undefined;
80
121
  }>;
81
122
  loading: PropTypes.Requireable<boolean>;
82
123
  }>>;
83
- export const filters: PropTypes.Requireable<PropTypes.InferProps<{
124
+ filters: PropTypes.Requireable<PropTypes.InferProps<{
84
125
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
85
126
  options: PropTypes.Requireable<(PropTypes.InferProps<{
86
127
  name: PropTypes.Validator<string>;
@@ -89,49 +130,18 @@ declare namespace SkillDetail {
89
130
  validOption: PropTypes.Requireable<boolean>;
90
131
  }> | null | undefined)[]>;
91
132
  }>>;
92
- export const sorting: PropTypes.Requireable<PropTypes.InferProps<{
93
- title: PropTypes.Requireable<string>;
94
- name: PropTypes.Requireable<string>;
95
- className: PropTypes.Requireable<string>;
96
- borderClassName: PropTypes.Requireable<string>;
97
- disabled: PropTypes.Requireable<boolean>;
98
- multiple: PropTypes.Requireable<boolean>;
99
- description: PropTypes.Requireable<string>;
100
- required: PropTypes.Requireable<boolean>;
101
- onChange: PropTypes.Requireable<(...args: any[]) => any>;
102
- theme: PropTypes.Requireable<string>;
103
- options: PropTypes.Requireable<(PropTypes.InferProps<{
104
- name: PropTypes.Validator<string>;
105
- value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
106
- selected: PropTypes.Requireable<boolean>;
107
- validOption: PropTypes.Requireable<boolean>;
108
- }> | null | undefined)[]>;
109
- optgroups: PropTypes.Requireable<(PropTypes.InferProps<{
110
- label: PropTypes.Validator<string>;
111
- options: PropTypes.Requireable<(PropTypes.InferProps<{
112
- name: PropTypes.Validator<string>;
113
- value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
114
- selected: PropTypes.Requireable<boolean>;
115
- validOption: PropTypes.Requireable<boolean>;
116
- }> | null | undefined)[]>;
117
- }> | null | undefined)[]>;
118
- modified: PropTypes.Requireable<boolean>;
119
- error: PropTypes.Requireable<boolean>;
120
- 'aria-label': PropTypes.Requireable<string>;
121
- 'aria-labelledby': PropTypes.Requireable<string>;
122
- }>>;
123
- export const onBackClick: PropTypes.Requireable<(...args: any[]) => any>;
124
- export const onReviewClick: PropTypes.Requireable<(...args: any[]) => any>;
125
- export const onContinueLearningClick: PropTypes.Requireable<(...args: any[]) => any>;
126
- export const search: PropTypes.Requireable<PropTypes.InferProps<{
133
+ onBackClick: PropTypes.Requireable<(...args: any[]) => any>;
134
+ onReviewClick: PropTypes.Requireable<(...args: any[]) => any>;
135
+ onContinueLearningClick: PropTypes.Requireable<(...args: any[]) => any>;
136
+ search: PropTypes.Requireable<PropTypes.InferProps<{
127
137
  oldValue: PropTypes.Requireable<string>;
128
138
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
129
139
  }>>;
130
- export const bannerMicrolearning: PropTypes.Requireable<PropTypes.InferProps<{
140
+ bannerMicrolearning: PropTypes.Requireable<PropTypes.InferProps<{
131
141
  action: PropTypes.Requireable<(...args: any[]) => any>;
132
142
  oldSwitchValue: PropTypes.Requireable<boolean>;
133
143
  }>>;
134
- }
135
- export { propTypes_1 as propTypes };
136
- }
144
+ };
145
+ };
146
+ export default SkillDetail;
137
147
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/index.js"],"names":[],"mappings":"AAeO,8EA+BN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYD,oEAgKC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/index.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAUnC,OAAkB,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAMpE,UAAU,2BAA2B;IACnC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AACD,UAAU,eAAe;IACvB,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;IACF,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,sBAAsB;YAC1B,2BAA2B,WACzB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BzB,CAAC;AAYF,UAAU,OAAO;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,aAAK,mBAAmB,GACpB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACrB;IACE,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AACN,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,oBAAoB,EAAE,cAAc,CAAC;IACrC,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;QACtB,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;KACrB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,IAAI,CAAC;KACtB,CAAC;IACF,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AACD,QAAA,MAAM,WAAW;YAAW,gBAAgB,WAAW,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyMrE,CAAC;AAqCF,eAAe,WAAW,CAAC"}