@coorpacademy/components 11.32.21 → 11.32.23-alpha.2

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 (213) hide show
  1. package/es/atom/radio-with-title/index.d.ts +3 -0
  2. package/es/atom/radio-with-title/index.d.ts.map +1 -1
  3. package/es/atom/radio-with-title/types.d.ts +3 -0
  4. package/es/atom/radio-with-title/types.d.ts.map +1 -1
  5. package/es/atom/tag/index.d.ts +5 -1
  6. package/es/atom/tag/index.d.ts.map +1 -1
  7. package/es/atom/tag/index.js +6 -3
  8. package/es/atom/tag/index.js.map +1 -1
  9. package/es/atom/title/index.d.ts +3 -0
  10. package/es/molecule/cm-popin/types.d.ts +7 -0
  11. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  12. package/es/molecule/draggable-list/index.d.ts +12 -0
  13. package/es/molecule/draggable-list/index.d.ts.map +1 -1
  14. package/es/molecule/draggable-list/index.js +4 -2
  15. package/es/molecule/draggable-list/index.js.map +1 -1
  16. package/es/molecule/learning-priority-modal/index.d.ts +30 -0
  17. package/es/molecule/learning-priority-modal/index.d.ts.map +1 -0
  18. package/es/molecule/learning-priority-modal/index.js +242 -0
  19. package/es/molecule/learning-priority-modal/index.js.map +1 -0
  20. package/es/molecule/learning-priority-modal/style.css +70 -0
  21. package/es/molecule/learning-priority-setup-item/index.d.ts +18 -0
  22. package/es/molecule/learning-priority-setup-item/index.d.ts.map +1 -0
  23. package/es/molecule/learning-priority-setup-item/index.js +83 -0
  24. package/es/molecule/learning-priority-setup-item/index.js.map +1 -0
  25. package/es/molecule/learning-priority-setup-item/style.css +47 -0
  26. package/es/molecule/playlist-detail-cover/index.d.ts +14 -0
  27. package/es/molecule/playlist-detail-cover/index.d.ts.map +1 -0
  28. package/es/molecule/playlist-detail-cover/index.js +52 -0
  29. package/es/molecule/playlist-detail-cover/index.js.map +1 -0
  30. package/es/molecule/playlist-detail-cover/style.css +17 -0
  31. package/es/molecule/title-and-checkbox-wrapper/index.d.ts +3 -0
  32. package/es/molecule/title-radio-wrapper/index.d.ts +3 -0
  33. package/es/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  34. package/es/molecule/title-radio-wrapper/types.d.ts +3 -0
  35. package/es/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  36. package/es/organism/brand-learning-priorities/index.d.ts +167 -0
  37. package/es/organism/brand-learning-priorities/index.d.ts.map +1 -0
  38. package/es/organism/brand-learning-priorities/index.js +128 -0
  39. package/es/organism/brand-learning-priorities/index.js.map +1 -0
  40. package/es/organism/brand-learning-priorities/style.css +40 -0
  41. package/es/organism/list-item/index.d.ts +34 -2
  42. package/es/organism/list-item/index.d.ts.map +1 -1
  43. package/es/organism/list-item/index.js +58 -14
  44. package/es/organism/list-item/index.js.map +1 -1
  45. package/es/organism/list-item/style.css +25 -1
  46. package/es/organism/list-items/index.d.ts +4 -0
  47. package/es/organism/rewards-form/index.d.ts +3 -0
  48. package/es/organism/select-opponents/index.d.ts +3 -0
  49. package/es/organism/select-opponents/index.d.ts.map +1 -1
  50. package/es/organism/select-opponents/types.d.ts +3 -0
  51. package/es/organism/select-opponents/types.d.ts.map +1 -1
  52. package/es/organism/title-and-input/index.d.ts +6 -0
  53. package/es/organism/title-and-input/index.d.ts.map +1 -1
  54. package/es/organism/title-and-input/types.d.ts +6 -0
  55. package/es/organism/title-and-input/types.d.ts.map +1 -1
  56. package/es/organism/wizard-contents/index.d.ts +3 -0
  57. package/es/template/app-player/loading/index.d.ts +7 -0
  58. package/es/template/app-player/player/index.d.ts +14 -0
  59. package/es/template/app-player/player/slides/index.d.ts +7 -0
  60. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  61. package/es/template/app-player/popin-correction/index.d.ts +7 -0
  62. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  63. package/es/template/app-player/popin-end/index.d.ts +7 -0
  64. package/es/template/app-review/index.d.ts +7 -0
  65. package/es/template/app-review/index.d.ts.map +1 -1
  66. package/es/template/app-review/player/prop-types.d.ts +7 -0
  67. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  68. package/es/template/app-review/prop-types.d.ts +7 -0
  69. package/es/template/app-review/prop-types.d.ts.map +1 -1
  70. package/es/template/back-office/brand-update/index.d.ts +149 -0
  71. package/es/template/back-office/brand-update/index.d.ts.map +1 -1
  72. package/es/template/back-office/brand-update/index.js +7 -0
  73. package/es/template/back-office/brand-update/index.js.map +1 -1
  74. package/es/template/common/dashboard/index.d.ts +14 -0
  75. package/es/template/common/search-page/index.d.ts +7 -0
  76. package/es/template/external-course/index.d.ts +7 -0
  77. package/es/template/playlist-detail/index.d.ts +96 -0
  78. package/es/template/playlist-detail/index.d.ts.map +1 -0
  79. package/es/template/playlist-detail/index.js +112 -0
  80. package/es/template/playlist-detail/index.js.map +1 -0
  81. package/es/template/playlist-detail/style.css +109 -0
  82. package/es/template/skill-detail/all-courses.d.ts +1 -1
  83. package/es/template/skill-detail/all-courses.js +3 -3
  84. package/es/template/skill-detail/all-courses.js.map +1 -1
  85. package/es/template/skill-detail/index.d.ts +39 -4
  86. package/es/template/skill-detail/index.d.ts.map +1 -1
  87. package/es/template/skill-detail/index.js +2 -4
  88. package/es/template/skill-detail/index.js.map +1 -1
  89. package/es/variables/courses.d.ts +3 -0
  90. package/es/variables/courses.d.ts.map +1 -0
  91. package/es/variables/courses.js +3 -0
  92. package/es/variables/courses.js.map +1 -0
  93. package/lib/atom/radio-with-title/index.d.ts +3 -0
  94. package/lib/atom/radio-with-title/index.d.ts.map +1 -1
  95. package/lib/atom/radio-with-title/types.d.ts +3 -0
  96. package/lib/atom/radio-with-title/types.d.ts.map +1 -1
  97. package/lib/atom/tag/index.d.ts +5 -1
  98. package/lib/atom/tag/index.d.ts.map +1 -1
  99. package/lib/atom/tag/index.js +6 -3
  100. package/lib/atom/tag/index.js.map +1 -1
  101. package/lib/atom/title/index.d.ts +3 -0
  102. package/lib/molecule/cm-popin/types.d.ts +7 -0
  103. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  104. package/lib/molecule/draggable-list/index.d.ts +12 -0
  105. package/lib/molecule/draggable-list/index.d.ts.map +1 -1
  106. package/lib/molecule/draggable-list/index.js +5 -2
  107. package/lib/molecule/draggable-list/index.js.map +1 -1
  108. package/lib/molecule/learning-priority-modal/index.d.ts +30 -0
  109. package/lib/molecule/learning-priority-modal/index.d.ts.map +1 -0
  110. package/lib/molecule/learning-priority-modal/index.js +265 -0
  111. package/lib/molecule/learning-priority-modal/index.js.map +1 -0
  112. package/lib/molecule/learning-priority-modal/style.css +70 -0
  113. package/lib/molecule/learning-priority-setup-item/index.d.ts +18 -0
  114. package/lib/molecule/learning-priority-setup-item/index.d.ts.map +1 -0
  115. package/lib/molecule/learning-priority-setup-item/index.js +100 -0
  116. package/lib/molecule/learning-priority-setup-item/index.js.map +1 -0
  117. package/lib/molecule/learning-priority-setup-item/style.css +47 -0
  118. package/lib/molecule/playlist-detail-cover/index.d.ts +14 -0
  119. package/lib/molecule/playlist-detail-cover/index.d.ts.map +1 -0
  120. package/lib/molecule/playlist-detail-cover/index.js +68 -0
  121. package/lib/molecule/playlist-detail-cover/index.js.map +1 -0
  122. package/lib/molecule/playlist-detail-cover/style.css +17 -0
  123. package/lib/molecule/title-and-checkbox-wrapper/index.d.ts +3 -0
  124. package/lib/molecule/title-radio-wrapper/index.d.ts +3 -0
  125. package/lib/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  126. package/lib/molecule/title-radio-wrapper/types.d.ts +3 -0
  127. package/lib/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  128. package/lib/organism/brand-learning-priorities/index.d.ts +167 -0
  129. package/lib/organism/brand-learning-priorities/index.d.ts.map +1 -0
  130. package/lib/organism/brand-learning-priorities/index.js +147 -0
  131. package/lib/organism/brand-learning-priorities/index.js.map +1 -0
  132. package/lib/organism/brand-learning-priorities/style.css +40 -0
  133. package/lib/organism/list-item/index.d.ts +34 -2
  134. package/lib/organism/list-item/index.d.ts.map +1 -1
  135. package/lib/organism/list-item/index.js +62 -16
  136. package/lib/organism/list-item/index.js.map +1 -1
  137. package/lib/organism/list-item/style.css +25 -1
  138. package/lib/organism/list-items/index.d.ts +4 -0
  139. package/lib/organism/rewards-form/index.d.ts +3 -0
  140. package/lib/organism/select-opponents/index.d.ts +3 -0
  141. package/lib/organism/select-opponents/index.d.ts.map +1 -1
  142. package/lib/organism/select-opponents/types.d.ts +3 -0
  143. package/lib/organism/select-opponents/types.d.ts.map +1 -1
  144. package/lib/organism/title-and-input/index.d.ts +6 -0
  145. package/lib/organism/title-and-input/index.d.ts.map +1 -1
  146. package/lib/organism/title-and-input/types.d.ts +6 -0
  147. package/lib/organism/title-and-input/types.d.ts.map +1 -1
  148. package/lib/organism/wizard-contents/index.d.ts +3 -0
  149. package/lib/template/app-player/loading/index.d.ts +7 -0
  150. package/lib/template/app-player/player/index.d.ts +14 -0
  151. package/lib/template/app-player/player/slides/index.d.ts +7 -0
  152. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  153. package/lib/template/app-player/popin-correction/index.d.ts +7 -0
  154. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  155. package/lib/template/app-player/popin-end/index.d.ts +7 -0
  156. package/lib/template/app-review/index.d.ts +7 -0
  157. package/lib/template/app-review/index.d.ts.map +1 -1
  158. package/lib/template/app-review/player/prop-types.d.ts +7 -0
  159. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  160. package/lib/template/app-review/prop-types.d.ts +7 -0
  161. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  162. package/lib/template/back-office/brand-update/index.d.ts +149 -0
  163. package/lib/template/back-office/brand-update/index.d.ts.map +1 -1
  164. package/lib/template/back-office/brand-update/index.js +8 -0
  165. package/lib/template/back-office/brand-update/index.js.map +1 -1
  166. package/lib/template/common/dashboard/index.d.ts +14 -0
  167. package/lib/template/common/search-page/index.d.ts +7 -0
  168. package/lib/template/external-course/index.d.ts +7 -0
  169. package/lib/template/playlist-detail/index.d.ts +96 -0
  170. package/lib/template/playlist-detail/index.d.ts.map +1 -0
  171. package/lib/template/playlist-detail/index.js +137 -0
  172. package/lib/template/playlist-detail/index.js.map +1 -0
  173. package/lib/template/playlist-detail/style.css +109 -0
  174. package/lib/template/skill-detail/all-courses.d.ts +1 -1
  175. package/lib/template/skill-detail/all-courses.js +3 -3
  176. package/lib/template/skill-detail/all-courses.js.map +1 -1
  177. package/lib/template/skill-detail/index.d.ts +39 -4
  178. package/lib/template/skill-detail/index.d.ts.map +1 -1
  179. package/lib/template/skill-detail/index.js +3 -2
  180. package/lib/template/skill-detail/index.js.map +1 -1
  181. package/lib/variables/courses.d.ts +3 -0
  182. package/lib/variables/courses.d.ts.map +1 -0
  183. package/lib/variables/courses.js +7 -0
  184. package/lib/variables/courses.js.map +1 -0
  185. package/locales/bs/global.json +13 -1
  186. package/locales/cs/global.json +13 -1
  187. package/locales/de/global.json +13 -1
  188. package/locales/en/global.json +12 -0
  189. package/locales/es/global.json +13 -1
  190. package/locales/et/global.json +13 -1
  191. package/locales/fi/global.json +13 -1
  192. package/locales/fr/global.json +13 -1
  193. package/locales/hr/global.json +13 -1
  194. package/locales/hu/global.json +13 -1
  195. package/locales/hy/global.json +13 -1
  196. package/locales/it/global.json +13 -1
  197. package/locales/ja/global.json +13 -1
  198. package/locales/ko/global.json +13 -1
  199. package/locales/nl/global.json +13 -1
  200. package/locales/pl/global.json +13 -1
  201. package/locales/pt/global.json +13 -1
  202. package/locales/ro/global.json +13 -1
  203. package/locales/ru/global.json +13 -1
  204. package/locales/sk/global.json +13 -1
  205. package/locales/sl/global.json +13 -1
  206. package/locales/sv/global.json +13 -1
  207. package/locales/tl/global.json +13 -1
  208. package/locales/tr/global.json +13 -1
  209. package/locales/uk/global.json +13 -1
  210. package/locales/vi/global.json +13 -1
  211. package/locales/zh/global.json +13 -1
  212. package/locales/zh_TW/global.json +13 -1
  213. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"all-courses.js","names":["FilterButton","props","context","selected","filter","onClick","skin","primarySkinColor","buttonProps","customStyle","backgroundColor","color","transition","width","label","contextTypes","Provider","childContextTypes","translate","propTypes","PropTypes","bool","string","func","AllCourses","skillIncludedCourses","totalCourses","filters","sorting","options","onChange","list","loading","showCompleted","setShowCompleted","useState","searchValue","setSearchValue","searchResults","setSearchResults","course","sortView","undefined","useEffect","handleSearch","useCallback","value","skill","searchValueIncluded","title","handleSearchReset","handleShowCompletedToggle","toggledShowCompleted","progress","style","continueLearningWrapper","continueLearningTitle","continueLearningNumber","searchAndSortSection","searchWrapper","placeholder","sortSection","sortWrapper","filterWrapper","length","map","index","name","handleChange","filterButtonWrapper","divider","justifyContent","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","shape","CardsGrid","number","arrayOf","SelectOptionPropTypes","Select"],"sources":["../../../src/template/skill-detail/all-courses.js"],"sourcesContent":["import React, {useState, useCallback, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, getOr, sortBy} 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 searchValueIncluded from '../../util/search-value-included';\nimport InputSwitch from '../../atom/input-switch';\nimport style from './all-courses.css';\n\nconst FilterButton = (props, context) => {\n const {selected, filter, 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: filter,\n onClick,\n 'data-name': 'filter-type-course-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n selected: PropTypes.bool,\n filter: PropTypes.string,\n onClick: PropTypes.func\n};\n\nconst AllCourses = (props, context) => {\n const {skillIncludedCourses, totalCourses, filters, sorting} = props;\n const {options, onChange} = filters;\n const {list, loading} = skillIncludedCourses;\n const {translate} = context;\n const [showCompleted, setShowCompleted] = useState(true);\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(\n sortBy(course => -getOr(0, ['progress'], course), list)\n );\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 useEffect(() => {\n setSearchResults(sortBy(course => -getOr(0, ['progress'], course), list));\n }, [list]);\n\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(list.filter(skill => searchValueIncluded(skill.title, value)));\n },\n [list, setSearchValue, setSearchResults]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(list);\n }, [list, setSearchValue, setSearchResults]);\n\n const handleShowCompletedToggle = useCallback(() => {\n const toggledShowCompleted = !showCompleted;\n setShowCompleted(toggledShowCompleted);\n if (toggledShowCompleted) {\n setSearchResults(list);\n handleSearchReset();\n } else {\n setSearchResults(searchResults.filter(skill => skill.progress === 0));\n }\n }, [list, searchResults, showCompleted, setShowCompleted, setSearchResults, handleSearchReset]);\n\n return (\n <>\n <div className={style.continueLearningWrapper}>\n <span className={style.continueLearningTitle}>{translate('all_courses')}</span>\n <span className={style.continueLearningNumber}>{totalCourses}</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: handleSearch\n }}\n onReset={handleSearchReset}\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 <div className={style.sortWrapper}>\n {translate('sort_by')}\n {sortView}\n </div>\n </div>\n </div>\n <div className={style.filterWrapper}>\n {options.length > 2 && searchResults.length > 0\n ? options.map((filter, index) => {\n const {name, value, selected} = filter;\n\n function handleChange() {\n onChange(value);\n handleSearchReset();\n }\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton selected={selected} filter={name} onClick={handleChange} />\n {value === 'ALL' ? <div className={style.divider} /> : null}\n </div>\n );\n })\n : null}\n </div>\n <div>\n {searchResults.length > 0 ? (\n <CardsGrid\n list={searchResults}\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 skillIncludedCourses: PropTypes.shape(CardsGrid.propTypes),\n totalCourses: 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};\n\nexport default AllCourses;\n"],"mappings":"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"}
1
+ {"version":3,"file":"all-courses.js","names":["FilterButton","props","context","selected","filter","onClick","skin","primarySkinColor","buttonProps","customStyle","backgroundColor","color","transition","width","label","contextTypes","Provider","childContextTypes","translate","propTypes","PropTypes","bool","string","func","AllCourses","courses","totalCourses","filters","sorting","options","onChange","list","loading","showCompleted","setShowCompleted","useState","searchValue","setSearchValue","searchResults","setSearchResults","course","sortView","undefined","useEffect","handleSearch","useCallback","value","skill","searchValueIncluded","title","handleSearchReset","handleShowCompletedToggle","toggledShowCompleted","progress","style","continueLearningWrapper","continueLearningTitle","continueLearningNumber","searchAndSortSection","searchWrapper","placeholder","sortSection","sortWrapper","filterWrapper","length","map","index","name","handleChange","filterButtonWrapper","divider","justifyContent","emptySearchResultContainer","emptySearchResultTitle","emptySearchResultDescription","emptySearchResultClearSearch","shape","CardsGrid","number","arrayOf","SelectOptionPropTypes","Select"],"sources":["../../../src/template/skill-detail/all-courses.js"],"sourcesContent":["import React, {useState, useCallback, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, getOr, sortBy} 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 searchValueIncluded from '../../util/search-value-included';\nimport InputSwitch from '../../atom/input-switch';\nimport style from './all-courses.css';\n\nconst FilterButton = (props, context) => {\n const {selected, filter, 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: filter,\n onClick,\n 'data-name': 'filter-type-course-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n selected: PropTypes.bool,\n filter: PropTypes.string,\n onClick: PropTypes.func\n};\n\nconst AllCourses = (props, context) => {\n const {courses, totalCourses, filters, sorting} = props;\n const {options, onChange} = filters;\n const {list, loading} = courses;\n const {translate} = context;\n const [showCompleted, setShowCompleted] = useState(true);\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(\n sortBy(course => -getOr(0, ['progress'], course), list)\n );\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 useEffect(() => {\n setSearchResults(sortBy(course => -getOr(0, ['progress'], course), list));\n }, [list]);\n\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(list.filter(skill => searchValueIncluded(skill.title, value)));\n },\n [list, setSearchValue, setSearchResults]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(list);\n }, [list, setSearchValue, setSearchResults]);\n\n const handleShowCompletedToggle = useCallback(() => {\n const toggledShowCompleted = !showCompleted;\n setShowCompleted(toggledShowCompleted);\n if (toggledShowCompleted) {\n setSearchResults(list);\n handleSearchReset();\n } else {\n setSearchResults(searchResults.filter(skill => skill.progress === 0));\n }\n }, [list, searchResults, showCompleted, setShowCompleted, setSearchResults, handleSearchReset]);\n\n return (\n <>\n <div className={style.continueLearningWrapper}>\n <span className={style.continueLearningTitle}>{translate('all_courses')}</span>\n <span className={style.continueLearningNumber}>{totalCourses}</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: handleSearch\n }}\n onReset={handleSearchReset}\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 <div className={style.sortWrapper}>\n {translate('sort_by')}\n {sortView}\n </div>\n </div>\n </div>\n <div className={style.filterWrapper}>\n {options.length > 2 && searchResults.length > 0\n ? options.map((filter, index) => {\n const {name, value, selected} = filter;\n\n function handleChange() {\n onChange(value);\n handleSearchReset();\n }\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton selected={selected} filter={name} onClick={handleChange} />\n {value === 'ALL' ? <div className={style.divider} /> : null}\n </div>\n );\n })\n : null}\n </div>\n <div>\n {searchResults.length > 0 ? (\n <CardsGrid\n list={searchResults}\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 courses: PropTypes.shape(CardsGrid.propTypes),\n totalCourses: 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};\n\nexport default AllCourses;\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- export default SkillDetail;
2
- declare function SkillDetail(props: any, context: any): JSX.Element;
3
- declare namespace SkillDetail {
1
+ export function ContinueLearningButton(props: any, context: any): JSX.Element;
2
+ export namespace ContinueLearningButton {
4
3
  namespace contextTypes {
5
4
  const skin: PropTypes.Requireable<PropTypes.InferProps<{
6
5
  common: PropTypes.Requireable<{
@@ -26,6 +25,42 @@ declare namespace SkillDetail {
26
25
  const translate: PropTypes.Requireable<(...args: any[]) => any>;
27
26
  }
28
27
  namespace propTypes {
28
+ const ongoingCoursesAvailable: PropTypes.Requireable<boolean>;
29
+ const onClick: PropTypes.Requireable<(...args: any[]) => any>;
30
+ }
31
+ }
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<{
38
+ common: PropTypes.Requireable<{
39
+ [x: string]: any;
40
+ }>;
41
+ images: PropTypes.Requireable<PropTypes.InferProps<{
42
+ 'logo-mobile': PropTypes.Requireable<any>;
43
+ logo: PropTypes.Requireable<any>;
44
+ 'logo-email': PropTypes.Requireable<any>;
45
+ login: PropTypes.Requireable<any>;
46
+ }>>;
47
+ icons: PropTypes.Requireable<{
48
+ [x: string]: any;
49
+ }>;
50
+ mod: PropTypes.Requireable<{
51
+ [x: string]: any;
52
+ }>;
53
+ courses: PropTypes.Requireable<any[]>;
54
+ texts: PropTypes.Requireable<{
55
+ [x: string]: any;
56
+ }>;
57
+ }>>;
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 {
29
64
  const title: PropTypes.Validator<string>;
30
65
  const skillRef: PropTypes.Validator<string>;
31
66
  const description: PropTypes.Requireable<string>;
@@ -96,6 +131,6 @@ declare namespace SkillDetail {
96
131
  const onReviewClick: PropTypes.Requireable<(...args: any[]) => any>;
97
132
  const onContinueLearningClick: PropTypes.Requireable<(...args: any[]) => any>;
98
133
  }
134
+ export { propTypes_1 as propTypes };
99
135
  }
100
- import PropTypes from "prop-types";
101
136
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/index.js"],"names":[],"mappings":";AAyDA,oEA+JC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/skill-detail/index.js"],"names":[],"mappings":"AAcO,8EA+BN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYD,oEA+JC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.default = void 0;
4
+ exports.default = exports.ContinueLearningButton = void 0;
5
5
 
6
6
  var _get2 = _interopRequireDefault(require("lodash/fp/get"));
7
7
 
@@ -67,6 +67,7 @@ const ContinueLearningButton = (props, context) => {
67
67
  }));
68
68
  };
69
69
 
70
+ exports.ContinueLearningButton = ContinueLearningButton;
70
71
  ContinueLearningButton.contextTypes = {
71
72
  skin: _provider.default.childContextTypes.skin,
72
73
  translate: _provider.default.childContextTypes.translate
@@ -206,7 +207,7 @@ const SkillDetail = (props, context) => {
206
207
  }, score.toFixed(1), "%"))))) : null, /*#__PURE__*/_react.default.createElement(_continueLearning.default, {
207
208
  ongoingCourses: ongoingCourses
208
209
  }), /*#__PURE__*/_react.default.createElement(_allCourses.default, {
209
- skillIncludedCourses: skillIncludedCourses,
210
+ courses: skillIncludedCourses,
210
211
  totalCourses: totalCourses,
211
212
  filters: filters,
212
213
  sorting: sorting
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ContinueLearningButton","props","context","ongoingCoursesAvailable","onClick","skin","translate","primarySkinColor","width","borderRadius","backgroundColor","convert","position","faIcon","name","color","size","contextTypes","Provider","childContextTypes","propTypes","PropTypes","bool","func","SkillDetail","title","skillRef","description","metrics","focused","availableForReview","ongoingCourses","skillIncludedCourses","totalCourses","filters","sorting","onBackClick","onReviewClick","onContinueLearningClick","score","content","questionsToReview","contentCompleted","showMore","setShowMore","useState","handleShowMore","useCallback","Description","classnames","style","truncate","ProgressBar","undefined","progressBarColor","inlineProgressValueStyle","progressBarWrapper","progress","backgroundContainer","container","backButtonWrapper","faSize","wrapperSize","ctaContainer","skillFocusBadge","length","showMoreWrapper","ctaWrapper","list","progressInformationsWrapper","progressTitle","skillCoursesAndQuestionsWrapper","skillInformation","skillInformationNumber","progressInformations","progressInformation","progressInformationNumber","toFixed","string","isRequired","shape","number","CardsGrid","onChange","options","arrayOf","SelectOptionPropTypes","Select"],"sources":["../../../src/template/skill-detail/index.js"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {get} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Select, {SelectOptionPropTypes} from '../../atom/select';\nimport ButtonLink from '../../atom/button-link';\nimport Icon from '../../atom/icon';\nimport CardsGrid from '../../organism/cards-grid';\nimport style from './style.css';\nimport AllCourses from './all-courses';\nimport ContinueLearning from './continue-learning';\n\nconst 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 ongoingCourses,\n skillIncludedCourses,\n totalCourses,\n filters,\n sorting,\n onBackClick,\n onReviewClick,\n onContinueLearningClick\n } = props;\n const {score, content, questionsToReview, contentCompleted = 0} = metrics;\n const {translate} = context;\n\n const [showMore, setShowMore] = useState(false);\n\n const handleShowMore = useCallback(() => setShowMore(!showMore), [setShowMore, showMore]);\n\n const Description = useCallback(() => {\n return (\n <div className={classnames(style.description, !showMore && style.truncate)}>\n {description}\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 <div className={style.backButtonWrapper} onClick={onBackClick}>\n <Icon\n iconName=\"arrow-left\"\n size={{\n faSize: 14,\n wrapperSize: 14\n }}\n />\n </div>\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 {description.length >= 226 ? (\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={!!ongoingCourses.list.length}\n onClick={onContinueLearningClick}\n />\n </div>\n </div>\n {score !== undefined ? (\n <div className={style.progressInformationsWrapper}>\n <div className={style.progressTitle}>{translate('your_progress')}</div>\n <div className={style.skillCoursesAndQuestionsWrapper}>\n {content ? (\n <div className={style.skillInformation} data-name=\"skill-courses\">\n <span className={style.skillInformationNumber}>{content}</span>{' '}\n {translate('courses')}\n </div>\n ) : null}\n {questionsToReview ? (\n <div className={style.skillInformation} data-name=\"skill-questions\">\n <span className={style.skillInformationNumber}>{questionsToReview}</span>\n &nbsp;{translate('questions')}\n </div>\n ) : null}\n </div>\n <ProgressBar />\n <div className={style.progressInformations}>\n {content && (\n <>\n <div className={style.progressInformation} data-name=\"skill-completed-courses\">\n <span className={style.progressInformationNumber}>{contentCompleted}</span>\n {` ${translate('courses_completed')}`}\n </div>\n <div className={style.progressInformation} data-name=\"completed-percentage\">\n <span className={style.progressInformationNumber}>{score.toFixed(1)}%</span>\n </div>\n </>\n )}\n </div>\n </div>\n ) : null}\n <ContinueLearning ongoingCourses={ongoingCourses} />\n <AllCourses\n skillIncludedCourses={skillIncludedCourses}\n totalCourses={totalCourses}\n filters={filters}\n sorting={sorting}\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 content: PropTypes.number,\n questionsToReview: PropTypes.number,\n contentCompleted: PropTypes.number\n }),\n focused: PropTypes.bool,\n availableForReview: PropTypes.bool,\n ongoingCourses: PropTypes.shape(CardsGrid.propTypes),\n skillIncludedCourses: PropTypes.shape(CardsGrid.propTypes),\n totalCourses: 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 onBackClick: PropTypes.func,\n onReviewClick: PropTypes.func,\n onContinueLearningClick: PropTypes.func\n};\n\nexport default SkillDetail;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["ContinueLearningButton","props","context","ongoingCoursesAvailable","onClick","skin","translate","primarySkinColor","width","borderRadius","backgroundColor","convert","position","faIcon","name","color","size","contextTypes","Provider","childContextTypes","propTypes","PropTypes","bool","func","SkillDetail","title","skillRef","description","metrics","focused","availableForReview","ongoingCourses","skillIncludedCourses","totalCourses","filters","sorting","onBackClick","onReviewClick","onContinueLearningClick","score","content","questionsToReview","contentCompleted","showMore","setShowMore","useState","handleShowMore","useCallback","Description","classnames","style","truncate","ProgressBar","undefined","progressBarColor","inlineProgressValueStyle","progressBarWrapper","progress","backgroundContainer","container","backButtonWrapper","faSize","wrapperSize","ctaContainer","skillFocusBadge","length","showMoreWrapper","ctaWrapper","list","progressInformationsWrapper","progressTitle","skillCoursesAndQuestionsWrapper","skillInformation","skillInformationNumber","progressInformations","progressInformation","progressInformationNumber","toFixed","string","isRequired","shape","number","CardsGrid","onChange","options","arrayOf","SelectOptionPropTypes","Select"],"sources":["../../../src/template/skill-detail/index.js"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {get} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Select, {SelectOptionPropTypes} from '../../atom/select';\nimport ButtonLink from '../../atom/button-link';\nimport Icon from '../../atom/icon';\nimport CardsGrid from '../../organism/cards-grid';\nimport style from './style.css';\nimport AllCourses from './all-courses';\nimport ContinueLearning from './continue-learning';\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 ongoingCourses,\n skillIncludedCourses,\n totalCourses,\n filters,\n sorting,\n onBackClick,\n onReviewClick,\n onContinueLearningClick\n } = props;\n const {score, content, questionsToReview, contentCompleted = 0} = metrics;\n const {translate} = context;\n\n const [showMore, setShowMore] = useState(false);\n\n const handleShowMore = useCallback(() => setShowMore(!showMore), [setShowMore, showMore]);\n\n const Description = useCallback(() => {\n return (\n <div className={classnames(style.description, !showMore && style.truncate)}>\n {description}\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 <div className={style.backButtonWrapper} onClick={onBackClick}>\n <Icon\n iconName=\"arrow-left\"\n size={{\n faSize: 14,\n wrapperSize: 14\n }}\n />\n </div>\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 {description.length >= 226 ? (\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={!!ongoingCourses.list.length}\n onClick={onContinueLearningClick}\n />\n </div>\n </div>\n {score !== undefined ? (\n <div className={style.progressInformationsWrapper}>\n <div className={style.progressTitle}>{translate('your_progress')}</div>\n <div className={style.skillCoursesAndQuestionsWrapper}>\n {content ? (\n <div className={style.skillInformation} data-name=\"skill-courses\">\n <span className={style.skillInformationNumber}>{content}</span>{' '}\n {translate('courses')}\n </div>\n ) : null}\n {questionsToReview ? (\n <div className={style.skillInformation} data-name=\"skill-questions\">\n <span className={style.skillInformationNumber}>{questionsToReview}</span>\n &nbsp;{translate('questions')}\n </div>\n ) : null}\n </div>\n <ProgressBar />\n <div className={style.progressInformations}>\n {content && (\n <>\n <div className={style.progressInformation} data-name=\"skill-completed-courses\">\n <span className={style.progressInformationNumber}>{contentCompleted}</span>\n {` ${translate('courses_completed')}`}\n </div>\n <div className={style.progressInformation} data-name=\"completed-percentage\">\n <span className={style.progressInformationNumber}>{score.toFixed(1)}%</span>\n </div>\n </>\n )}\n </div>\n </div>\n ) : null}\n <ContinueLearning ongoingCourses={ongoingCourses} />\n <AllCourses\n courses={skillIncludedCourses}\n totalCourses={totalCourses}\n filters={filters}\n sorting={sorting}\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 content: PropTypes.number,\n questionsToReview: PropTypes.number,\n contentCompleted: PropTypes.number\n }),\n focused: PropTypes.bool,\n availableForReview: PropTypes.bool,\n ongoingCourses: PropTypes.shape(CardsGrid.propTypes),\n skillIncludedCourses: PropTypes.shape(CardsGrid.propTypes),\n totalCourses: 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 onBackClick: PropTypes.func,\n onReviewClick: PropTypes.func,\n onContinueLearningClick: PropTypes.func\n};\n\nexport default SkillDetail;\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const COURSE_TYPES: string[];
2
+ export { COURSE_TYPES };
3
+ //# sourceMappingURL=courses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"courses.d.ts","sourceRoot":"","sources":["../../src/variables/courses.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,YAAY,UAAkD,CAAC;AAErE,OAAO,EAAC,YAAY,EAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.COURSE_TYPES = void 0;
5
+ const COURSE_TYPES = ['podcast', 'video', 'interactive', 'document'];
6
+ exports.COURSE_TYPES = COURSE_TYPES;
7
+ //# sourceMappingURL=courses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"courses.js","names":["COURSE_TYPES"],"sources":["../../src/variables/courses.ts"],"sourcesContent":["const COURSE_TYPES = ['podcast', 'video', 'interactive', 'document'];\n\nexport {COURSE_TYPES};\n"],"mappings":";;;;AAAA,MAAMA,YAAY,GAAG,CAAC,SAAD,EAAY,OAAZ,EAAqB,aAArB,EAAoC,UAApC,CAArB"}
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "all": "Sve",
3
3
  "all_courses": "Svi kursevi",
4
+ "add_learning_priority": "Dodajte prioritet učenja",
4
5
  "accepted_cards": "Kreditna ili debitna kartica",
6
+ "add": "Dodaj",
5
7
  "An Error Occurred": "Došlo je do greške ",
6
8
  "Answer": "Odgovor",
7
9
  "At the end of this level, you will be able to_": "Na kraju ovog nivoa moći ćete: ",
@@ -12,11 +14,13 @@
12
14
  "cart_title": "Pretplata za Coorpacademy",
13
15
  "challenges you on": "izaziva te",
14
16
  "is challenging you": "{{username}} te izaziva za {{courseName}}",
17
+ "items": "stavke",
18
+ "certificate": "Certifikat",
15
19
  "chapters": "poglavlja",
16
20
  "Close": "Zatvori",
17
21
  "clue_stars_to_loose_plural": "Otključavanje traga smanjuje broj zvijezda koje možete dobiti za ovo pitanje za {{count}} (ako tačno odgovorite)",
18
22
  "clue_stars_to_loose": "Otključavanjem traga smanjuje se broj zvijezda koje možete dobiti za ovo pitanje za {{count}} (ako tačno odgovorite)",
19
- "completed": "Completed",
23
+ "completed": "Završeno",
20
24
  "confirm_unsubscribe": "Jest li sigurni da želite da se odjavite?",
21
25
  "cookies_details": "Ova web stranica koristi kolačiće kako bismo vam osigurali najbolje moguće iskustvo učenja. Više o kolačićima koje koristimo i o tome kako koristimo vaše podatke možete pročitati u ",
22
26
  "cookies_policy": "Politika privatnosti i kolačića.",
@@ -25,6 +29,8 @@
25
29
  "courses": "Kursevi",
26
30
  "courses_completed": "Kursevi završeni",
27
31
  "continue_learning": "Nastavite sa učenjem",
32
+ "learning_priority_modal_title": "Novi prioritet učenja",
33
+ "learning_priority_modal_description": "Kreirajte prioritet učenja odabirom jedne vještine, liste za reprodukciju ili certifikata.",
28
34
  "skills_change_focus": "Promijenite fokus vještina",
29
35
  "skills_choose_focus": "Odaberite fokus",
30
36
  "cancel": "Otkaži",
@@ -42,6 +48,9 @@
42
48
  "empty_search_result_description": "Pokušajte prilagoditi pretragu kako biste pronašli ono što tražite.",
43
49
  "empty_search_result_clear_search": "Obriši pretragu",
44
50
  "keep_subscription": "Zadrži moju prijavu",
51
+ "learning_priorities": "Prioriteti u učenju",
52
+ "learning_priorities_description": "Vaši glavni prioriteti učenja koje definiše vaša kompanija",
53
+ "learning_priorities_brand_description": "Definirajte prioritete učenja za svoju kompaniju pomoću vještina, lista za reprodukciju ili certifikata. Oni će se pojaviti na stranici Moje učenje.",
45
54
  "media_stars_to_win_plural": "Osvoji {{count}} dodatnu zvijezdu u ovom poglavlju prvi put kad vidiš lekciju!",
46
55
  "media_stars_to_win": "Osvoji {{count}} dodatnu zvijezdu u ovom poglavlju prvi put kad vidiš lekciju!",
47
56
  "More": "Više",
@@ -62,13 +71,16 @@
62
71
  "product_desc_culture": "Digitalna kultura: svi nivoi završeni",
63
72
  "product_desc_forum": "Forum",
64
73
  "product_desc_partnership": "Svi treninzi naših partnera.",
74
+ "playlist": "Playlist",
65
75
  "your_progress": "Vaš napredak",
66
76
  "Put back": "Vratiti",
67
77
  "Reject": "Odbaci",
68
78
  "Reload": "Napuni",
69
79
  "Review": "Pregled",
70
80
  "Review lesson": "Osvrnite se na lekciju",
81
+ "skill": "Vještina",
71
82
  "search_place_holder": "Traži...",
83
+ "search_priority_place_holder": "Potražite vještinu, playlistu, certifikat...",
72
84
  "secured_payment": "Osiguraj server",
73
85
  "start_learning": "Počni učiti",
74
86
  "sort_by": "Poredaj po:",
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "all": "Vše",
3
3
  "all_courses": "Všechny kurzy",
4
+ "add_learning_priority": "Přidejte prioritu učení",
4
5
  "accepted_cards": "Kreditní nebo debetní karta",
6
+ "add": "Přidat",
5
7
  "An Error Occurred": "Došlo k chybě",
6
8
  "Answer": "Odpovědět",
7
9
  "At the end of this level, you will be able to_": "Na konci této úrovně budete moci:",
@@ -12,11 +14,13 @@
12
14
  "cart_title": "Předplatné Coorpacademy",
13
15
  "challenges you on": "vás vyzve",
14
16
  "is challenging you": "{{username}} vám posílá výzvu do {{courseName}}",
17
+ "items": "položky",
18
+ "certificate": "Osvědčení",
15
19
  "chapters": "kapitoly",
16
20
  "Close": "Zavřít",
17
21
  "clue_stars_to_loose_plural": "Odemknutí nápovědy sníží počet hvězd, které můžete získat na této otázce, o {{count}} (pokud ji zodpovíte správně)",
18
22
  "clue_stars_to_loose": "Odemknutí nápovědy sníží počet hvězd, které můžete získat na této otázce, o {{count}} (pokud ji zodpovíte správně)",
19
- "completed": "Completed",
23
+ "completed": "Dokončeno",
20
24
  "confirm_unsubscribe": "Opravdu chcete zrušit předplatné?",
21
25
  "cookies_details": "Tyto webové stránky využívají soubory cookie, abychom vám mohli nabídnout to nejlepší učení. Máte-li zájem o další informace k využívaným souborům cookie a ke způsobu, jakým vaše údaje využíváme, přečtěte si",
22
26
  "cookies_policy": "Zásady ochrany soukromí a pro soubory cookie.",
@@ -25,6 +29,8 @@
25
29
  "courses": "Kurzy",
26
30
  "courses_completed": "Dokončené kurzy",
27
31
  "continue_learning": "Pokračujte v učení",
32
+ "learning_priority_modal_title": "Nová priorita učení",
33
+ "learning_priority_modal_description": "Vytvořte si prioritu učení výběrem jedné dovednosti, seznamu skladeb nebo certifikace.",
28
34
  "skills_change_focus": "Změnit zaměření dovednosti",
29
35
  "skills_choose_focus": "Vyberte své zaměření",
30
36
  "cancel": "Zrušit",
@@ -42,6 +48,9 @@
42
48
  "empty_search_result_description": "Pro nalezení toho, co hledáte, zkuste upravit své vyhledávání.",
43
49
  "empty_search_result_clear_search": "Vyčistit vyhledávání",
44
50
  "keep_subscription": "Ponechat předplatné",
51
+ "learning_priorities": "Priority učení",
52
+ "learning_priorities_description": "Vaše hlavní vzdělávací priority definované vaší společností",
53
+ "learning_priorities_brand_description": "Definujte pro svou společnost priority vzdělávání pomocí dovedností, seznamů skladeb nebo certifikací. Zobrazí se na stránce Moje učení.",
45
54
  "media_stars_to_win_plural": "Získejte další hvězdy ({{count}}) v této kapitole při prvním zobrazení lekce!",
46
55
  "media_stars_to_win": "Vyhrajte další hvězdu ({{count}}) v této kapitole při prvním zobrazení lekce!",
47
56
  "More": "Více",
@@ -62,13 +71,16 @@
62
71
  "product_desc_culture": "Digitální kultura: všechny úrovně dokončené",
63
72
  "product_desc_forum": "Fórum",
64
73
  "product_desc_partnership": "Všechny školicí kurzy našich partnerů",
74
+ "playlist": "Seznam skladeb",
65
75
  "your_progress": "Váš pokrok",
66
76
  "Put back": "Dát zpět",
67
77
  "Reject": "Zamítnout",
68
78
  "Reload": "Načíst znovu",
69
79
  "Review": "Prověření",
70
80
  "Review lesson": "Zopakovat lekci",
81
+ "skill": "Dovednost",
71
82
  "search_place_holder": "Vyhledat...",
83
+ "search_priority_place_holder": "Vyhledejte dovednost, seznam skladeb, certifikaci...",
72
84
  "secured_payment": "Zabezpečený server",
73
85
  "start_learning": "Začněte se učit",
74
86
  "sort_by": "Seřazeno podle:",
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "all": "Alle",
3
3
  "all_courses": "Alle Kurse",
4
+ "add_learning_priority": "Lernpriorität hinzufügen",
4
5
  "accepted_cards": "Kredit- oder Debitkarte",
6
+ "add": "Hinzufügen",
5
7
  "An Error Occurred": "Ein Fehler ist aufgetreten",
6
8
  "Answer": "Antwort",
7
9
  "At the end of this level, you will be able to_": "Am Ende dieses Levels können Sie:",
@@ -12,11 +14,13 @@
12
14
  "cart_title": "Coorpacademy Abo",
13
15
  "challenges you on": "Herausforderungen für Sie",
14
16
  "is challenging you": "{{username}} fordert Sie heraus {{courseName}}",
17
+ "items": "Artikel",
18
+ "certificate": "Zertifikat",
15
19
  "chapters": "Kapitel",
16
20
  "Close": "Schliessen",
17
21
  "clue_stars_to_loose_plural": "Wenn Sie den Hinweis benutzen, reduziert sich die Anzahl Sterne, die Sie bei dieser Frage gewinnen können um {{count}} (wenn Sie richtig antworten)",
18
22
  "clue_stars_to_loose": "Wenn Sie den Hinweis benutzen, reduziert sich die Anzahl Sterne, die Sie bei dieser Frage gewinnen können um {{count}} (wenn Sie richtig antworten)",
19
- "completed": "Completed",
23
+ "completed": "Vollendet",
20
24
  "confirm_unsubscribe": "Möchten Sie sich wirklich abmelden?",
21
25
  "cookies_details": "Diese Webseite verwendet Cookies, um Ihnen die bestmögliche Lernerfahrung zu bieten. Um mehr über die von uns verwendeten Cookies und wie wir Ihre Daten nutzen, zu erfahren, lesen Sie bitte unsere",
22
26
  "cookies_policy": "Richtlinie zu Datenschutz und Cookies",
@@ -25,6 +29,8 @@
25
29
  "courses": "Kurse",
26
30
  "courses_completed": "Kurse abgeschlossen",
27
31
  "continue_learning": "Weiter lernen",
32
+ "learning_priority_modal_title": "Neue Lernpriorität",
33
+ "learning_priority_modal_description": "Erstellen Sie eine Lernpriorität, indem Sie entweder eine Fähigkeit, eine Wiedergabeliste oder eine Zertifizierung auswählen.",
28
34
  "skills_change_focus": "Fähigkeitsfokus ändern",
29
35
  "skills_choose_focus": "Wählen Sie Ihren Fokus",
30
36
  "cancel": "Abbrechen",
@@ -42,6 +48,9 @@
42
48
  "empty_search_result_description": "Versuchen Sie, Ihre Suche anzupassen, um das zu finden, wonach Sie suchen.",
43
49
  "empty_search_result_clear_search": "Suche löschen",
44
50
  "keep_subscription": "Mein Abonnement behalten",
51
+ "learning_priorities": "Lernschwerpunkte",
52
+ "learning_priorities_description": "Ihre wichtigsten Lernprioritäten, definiert durch Ihr Unternehmen",
53
+ "learning_priorities_brand_description": "Definieren Sie Lernprioritäten für Ihr Unternehmen mit Fähigkeiten, Playlists oder Zertifizierungen. Diese werden auf der Seite „Mein Lernen“ angezeigt.",
45
54
  "media_stars_to_win_plural": "Gewinnen Sie {{count}} zusätzliche Sterne in diesem Kapitel, wenn Sie die Lektion das erste Mal ansehen!",
46
55
  "media_stars_to_win": "Gewinnen Sie {{count}} zusätzliche Sterne in diesem Kapitel, wenn Sie die Lektion das erste Mal ansehen!",
47
56
  "More": "Mehr",
@@ -62,13 +71,16 @@
62
71
  "product_desc_culture": "Digitale Kultur: alle Levels abgeschlossen",
63
72
  "product_desc_forum": "Forum",
64
73
  "product_desc_partnership": "Alle Kurse unserer Partner",
74
+ "playlist": "Wiedergabeliste",
65
75
  "your_progress": "Dein Fortschritt",
66
76
  "Put back": "Zurücksetzen",
67
77
  "Reject": "Verwerfen",
68
78
  "Reload": "Neu laden",
69
79
  "Review": "Überprüfen",
70
80
  "Review lesson": "Zurück zur Lektion",
81
+ "skill": "Fähigkeit",
71
82
  "search_place_holder": "Suchen",
83
+ "search_priority_place_holder": "Suchen Sie nach einer Fähigkeit, einer Playlist, einer Zertifizierung …",
72
84
  "secured_payment": "Sicherer Server",
73
85
  "start_learning": "Beginne zu lernen",
74
86
  "sort_by": "Sortiere nach:",
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "all": "All",
3
3
  "all_courses": "All courses",
4
+ "add_learning_priority": "Add learning priority",
4
5
  "accepted_cards": "Credit or debit card",
6
+ "add": "Add",
5
7
  "An Error Occurred": "An Error Occurred",
6
8
  "Answer": "Answer",
7
9
  "At the end of this level, you will be able to_": "At the end of this level, you will be able to:",
@@ -12,6 +14,8 @@
12
14
  "cart_title": "Coorpacademy Subscription",
13
15
  "challenges you on": "challenges you on",
14
16
  "is challenging you": "{{username}} is challenging you {{courseName}}",
17
+ "items": "items",
18
+ "certificate": "Certificate",
15
19
  "chapters": "chapters",
16
20
  "Close": "Close",
17
21
  "clue_stars_to_loose_plural": "Unlocking the clue reduces the stars you can gain on this question by {{count}} (if you get it right)",
@@ -25,6 +29,8 @@
25
29
  "courses": "Courses",
26
30
  "courses_completed": "Courses completed",
27
31
  "continue_learning": "Continue learning",
32
+ "learning_priority_modal_title": "New learning priority",
33
+ "learning_priority_modal_description": "Create a learning priority by selecting either one skill, playlist or certification.",
28
34
  "skills_change_focus": "Change skill focus",
29
35
  "skills_choose_focus": "Choose your focus",
30
36
  "cancel": "Cancel",
@@ -42,6 +48,9 @@
42
48
  "empty_search_result_description": "Try adjusting your search to find what you are looking for.",
43
49
  "empty_search_result_clear_search": "Clear search",
44
50
  "keep_subscription": "Keep my subscription",
51
+ "learning_priorities": "Learning priorities",
52
+ "learning_priorities_description": "Your top learning priorities defined by your company",
53
+ "learning_priorities_brand_description": "Define learning priorities for your company with skills, playlists or certifications. They will appear on the My Learning page.",
45
54
  "media_stars_to_win_plural": "Win {{count}} additional stars in this chapter the first time you view a lesson!",
46
55
  "media_stars_to_win": "Win {{count}} additional star in this chapter the first time you view a lesson!",
47
56
  "More": "More",
@@ -62,13 +71,16 @@
62
71
  "product_desc_culture": "Digital culture: All levels completed",
63
72
  "product_desc_forum": "Forum",
64
73
  "product_desc_partnership": "All training courses of our partners",
74
+ "playlist": "Playlist",
65
75
  "your_progress": "Your progress",
66
76
  "Put back": "Put back",
67
77
  "Reject": "Reject",
68
78
  "Reload": "Reload",
69
79
  "Review": "Review",
70
80
  "Review lesson": "Review lesson",
81
+ "skill": "Skill",
71
82
  "search_place_holder": "Search...",
83
+ "search_priority_place_holder": "Search for a skill, playlist, certification...",
72
84
  "secured_payment": "Secure server",
73
85
  "start_learning": "Start learning",
74
86
  "sort_by": "Sort by:",
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "all": "Todas",
3
3
  "all_courses": "Todos los cursos",
4
+ "add_learning_priority": "Añadir prioridad de aprendizaje",
4
5
  "accepted_cards": "Tarjeta de débito o crédito",
6
+ "add": "Agregar",
5
7
  "An Error Occurred": "Ha ocurrido un error",
6
8
  "Answer": "Respuesta",
7
9
  "At the end of this level, you will be able to_": "Al final de este nivel, podrás:",
@@ -12,11 +14,13 @@
12
14
  "cart_title": "Suscripción a Coorpacademy",
13
15
  "challenges you on": "te reta en",
14
16
  "is challenging you": "{{username}} te reta a {{courseName}}",
17
+ "items": "elementos",
18
+ "certificate": "Certificado",
15
19
  "chapters": "capítulos",
16
20
  "Close": "Cerrar",
17
21
  "clue_stars_to_loose_plural": "Desbloquear la pista reduce en {{count}} las estrellas que puedes ganar por esta pregunta (si la aciertas)",
18
22
  "clue_stars_to_loose": "Desbloquear la pista reduce en {{count}} las estrellas que puedes ganar por esta pregunta (si la aciertas)",
19
- "completed": "Completed",
23
+ "completed": "Terminado",
20
24
  "confirm_unsubscribe": "¿Estás seguro de que quieres cancelar la suscripción?",
21
25
  "cookies_details": "Esta página web usa cookies para que podamos ofrecerte la mejor experiencia de aprendizaje posible. Para leer más sobre las cookies que utilizamos y sobre cómo utilizamos sus datos, por favor lee nuestra",
22
26
  "cookies_policy": "Política de privacidad y cookies",
@@ -25,6 +29,8 @@
25
29
  "courses": "Cursos",
26
30
  "courses_completed": "Cursos completados",
27
31
  "continue_learning": "Continuar aprendiendo",
32
+ "learning_priority_modal_title": "Nueva prioridad de aprendizaje",
33
+ "learning_priority_modal_description": "Crea una prioridad de aprendizaje seleccionando una habilidad, lista de reproducción o certificación.",
28
34
  "skills_change_focus": "Cambiar enfoque de habilidades",
29
35
  "skills_choose_focus": "Elige el enfoque que te interese",
30
36
  "cancel": "Cancelar",
@@ -42,6 +48,9 @@
42
48
  "empty_search_result_description": "Intenta modificar tu búsqueda para encontrar lo que buscas.",
43
49
  "empty_search_result_clear_search": "Borrar búsqueda",
44
50
  "keep_subscription": "Mantener mi suscripción",
51
+ "learning_priorities": "Prioridades de aprendizaje",
52
+ "learning_priorities_description": "Tus principales prioridades de aprendizaje definidas por tu empresa",
53
+ "learning_priorities_brand_description": "Define las prioridades de aprendizaje de tu empresa con habilidades, listas de reproducción o certificaciones. Aparecerán en la página Mi aprendizaje.",
45
54
  "media_stars_to_win_plural": "Gana {{count}} estrellas adicionales en este capítulo la primera vez que veas una lección.",
46
55
  "media_stars_to_win": "Gana {{count}} estrellas adicionales en este capítulo la primera vez que veas una lección.",
47
56
  "More": "Más",
@@ -62,13 +71,16 @@
62
71
  "product_desc_culture": "Cultura digital: todos los niveles completados",
63
72
  "product_desc_forum": "Foro",
64
73
  "product_desc_partnership": "Todos los cursos de entrenamiento de nuestros socios",
74
+ "playlist": "Playlist",
65
75
  "your_progress": "Su progreso",
66
76
  "Put back": "Vuelve a poner",
67
77
  "Reject": "Rechazar",
68
78
  "Reload": "Recargar",
69
79
  "Review": "Repasar",
70
80
  "Review lesson": "Repasar lección",
81
+ "skill": "Habilidad",
71
82
  "search_place_holder": "Buscar...",
83
+ "search_priority_place_holder": "Busca una habilidad, lista de reproducción, certificación...",
72
84
  "secured_payment": "Servidor seguro",
73
85
  "start_learning": "Comienza a aprender",
74
86
  "sort_by": "Ordenar por:",
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "all": "Kõik",
3
3
  "all_courses": "Kõik kursused",
4
+ "add_learning_priority": "Lisage õppimise prioriteet",
4
5
  "accepted_cards": "Credit or debit card",
6
+ "add": "Lisa",
5
7
  "An Error Occurred": "Ilmnes tõrge",
6
8
  "Answer": "Vastus",
7
9
  "At the end of this level, you will be able to_": "Selle taseme läbimisel oskad:",
@@ -12,11 +14,13 @@
12
14
  "cart_title": "Coorpacademy tellimus",
13
15
  "challenges you on": "esitas sulle väljakutse",
14
16
  "is challenging you": "{{username}} esitab sulle väljakutse {{courseName}}",
17
+ "items": "esemed",
18
+ "certificate": "tunnistus",
15
19
  "chapters": "peatükid",
16
20
  "Close": "Sulge",
17
21
  "clue_stars_to_loose_plural": "Vihje kasutamine vähendab saadavat punktisummat {{count}} võrra (juhul, kui vastad õigesti)",
18
22
  "clue_stars_to_loose": "Vihje kasutamine vähendab saadavat punktisummat {{count}} võrra (juhul, kui vastad õigesti)",
19
- "completed": "Completed",
23
+ "completed": "Lõpetatud",
20
24
  "confirm_unsubscribe": "Oled kindel, et tahad tellimust tühistada?",
21
25
  "cookies_details": "Veebileht kasutab küpsiseid, et saaksime pakkuda teile parimat õppimiskogemust. Et lähemalt tutvuda kasutatavate küpsistega ning kuidas me teie andmaid töötleme, palun lugege",
22
26
  "cookies_policy": "Privaatsus- ja küpsistepoliitika.",
@@ -25,6 +29,8 @@
25
29
  "courses": "Kursused",
26
30
  "courses_completed": "Lõpetatud kursused",
27
31
  "continue_learning": "Jätkake õppimist",
32
+ "learning_priority_modal_title": "Uus õppimise prioriteet",
33
+ "learning_priority_modal_description": "Looge õppimise prioriteet, valides kas ühe oskuse, esitusloendi või sertifikaadi.",
28
34
  "skills_change_focus": "Muuda oskusfookust",
29
35
  "skills_choose_focus": "Vali oma fookus",
30
36
  "cancel": "Tühista",
@@ -42,6 +48,9 @@
42
48
  "empty_search_result_description": "Proovige oma otsingut kohandada, et leida, mida otsite.",
43
49
  "empty_search_result_clear_search": "Tühjenda otsing",
44
50
  "keep_subscription": "Hoia mu tellimus alles",
51
+ "learning_priorities": "Õppimise prioriteedid",
52
+ "learning_priorities_description": "Teie ettevõtte määratletud peamised õppimisprioriteedid",
53
+ "learning_priorities_brand_description": "Määrake oma ettevõtte õppimisprioriteedid oskuste, esitusloendite või sertifikaatide abil. Need kuvatakse lehel Minu õppimine.",
45
54
  "media_stars_to_win_plural": "Võida selles peatükis õppetunni esmakordsel vaatamisel {{count}} lisatähepunkti!",
46
55
  "media_stars_to_win": "Võida selles peatükis õppetunni esmakordsel vaatamisel {{count}} lisatähepunkt!",
47
56
  "More": "Lisaks",
@@ -62,13 +71,16 @@
62
71
  "product_desc_culture": "Digitaalne kultuur: kõik tasemed on läbitud",
63
72
  "product_desc_forum": "Foorum",
64
73
  "product_desc_partnership": "All training courses of our partners",
74
+ "playlist": "Esitusloend",
65
75
  "your_progress": "Teie edusammud",
66
76
  "Put back": "Pane tagasi",
67
77
  "Reject": "Keeldu",
68
78
  "Reload": "Laadi uuesti",
69
79
  "Review": "Ülevaade",
70
80
  "Review lesson": "Ülevaatustund",
81
+ "skill": "Oskus",
71
82
  "search_place_holder": "Otsi ...",
83
+ "search_priority_place_holder": "Otsige oskust, esitusloendit, sertifikaati...",
72
84
  "secured_payment": "Turvaline server",
73
85
  "start_learning": "Alusta õppimist",
74
86
  "sort_by": "Sorteerima:",