@coorpacademy/components 11.32.32 → 11.32.33-alpha.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/atom/button-link/index.d.ts.map +1 -1
- package/es/atom/button-link/index.js +2 -1
- package/es/atom/button-link/index.js.map +1 -1
- package/es/atom/button-link/types.d.ts +1 -0
- package/es/atom/button-link/types.d.ts.map +1 -1
- package/es/atom/button-link/types.js.map +1 -1
- package/es/atom/icon/index.d.ts.map +1 -1
- package/es/atom/icon/index.js +7 -3
- package/es/atom/icon/index.js.map +1 -1
- package/es/atom/radio-with-title/index.d.ts +2 -1
- package/es/atom/radio-with-title/index.d.ts.map +1 -1
- package/es/atom/radio-with-title/types.d.ts +2 -1
- package/es/atom/radio-with-title/types.d.ts.map +1 -1
- package/es/atom/tag/index.d.ts +4 -2
- package/es/atom/tag/index.d.ts.map +1 -1
- package/es/atom/tag/index.js +27 -7
- package/es/atom/tag/index.js.map +1 -1
- package/es/atom/tag/style.css +7 -0
- package/es/atom/title/index.d.ts +2 -1
- package/es/molecule/bulk-progress-bar/index.d.ts.map +1 -1
- package/es/molecule/bulk-progress-bar/index.js +2 -1
- package/es/molecule/bulk-progress-bar/index.js.map +1 -1
- package/es/molecule/bulk-progress-bar/style.css +0 -4
- package/es/molecule/cm-popin/types.d.ts +2 -1
- package/es/molecule/cm-popin/types.d.ts.map +1 -1
- package/es/molecule/progress-bar/index.d.ts +1 -0
- package/es/molecule/progress-bar/index.d.ts.map +1 -1
- package/es/molecule/progress-bar/index.js +6 -4
- package/es/molecule/progress-bar/index.js.map +1 -1
- package/es/molecule/progress-wrapper/index.d.ts +29 -0
- package/es/molecule/progress-wrapper/index.d.ts.map +1 -0
- package/es/molecule/progress-wrapper/index.js +200 -0
- package/es/molecule/progress-wrapper/index.js.map +1 -0
- package/es/molecule/progress-wrapper/style.css +185 -0
- package/es/molecule/title-and-checkbox-wrapper/index.d.ts +2 -1
- package/es/molecule/title-radio-wrapper/index.d.ts +2 -1
- package/es/molecule/title-radio-wrapper/index.d.ts.map +1 -1
- package/es/molecule/title-radio-wrapper/types.d.ts +2 -1
- package/es/molecule/title-radio-wrapper/types.d.ts.map +1 -1
- package/es/organism/rewards-form/index.d.ts +2 -1
- package/es/organism/select-opponents/index.d.ts +2 -1
- package/es/organism/select-opponents/index.d.ts.map +1 -1
- package/es/organism/select-opponents/types.d.ts +2 -1
- package/es/organism/select-opponents/types.d.ts.map +1 -1
- package/es/organism/title-and-input/index.d.ts +4 -2
- package/es/organism/title-and-input/index.d.ts.map +1 -1
- package/es/organism/title-and-input/types.d.ts +4 -2
- package/es/organism/title-and-input/types.d.ts.map +1 -1
- package/es/organism/wizard-contents/index.d.ts +2 -1
- package/es/template/activity/progression-item.css +0 -4
- package/es/template/activity/progression-item.d.ts.map +1 -1
- package/es/template/activity/progression-item.js +2 -1
- package/es/template/activity/progression-item.js.map +1 -1
- package/es/template/app-player/loading/index.d.ts +2 -1
- package/es/template/app-player/player/index.d.ts +4 -2
- package/es/template/app-player/player/slides/index.d.ts +2 -1
- package/es/template/app-player/player/slides/index.d.ts.map +1 -1
- package/es/template/app-player/popin-correction/index.d.ts +2 -1
- package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
- package/es/template/app-player/popin-end/index.d.ts +2 -1
- package/es/template/app-review/index.d.ts +2 -1
- package/es/template/app-review/index.d.ts.map +1 -1
- package/es/template/app-review/player/prop-types.d.ts +2 -1
- package/es/template/app-review/player/prop-types.d.ts.map +1 -1
- package/es/template/app-review/prop-types.d.ts +2 -1
- package/es/template/app-review/prop-types.d.ts.map +1 -1
- package/es/template/back-office/brand-update/index.d.ts +2 -1
- package/es/template/certification-detail/index.d.ts +105 -0
- package/es/template/certification-detail/index.d.ts.map +1 -0
- package/es/template/certification-detail/index.js +158 -0
- package/es/template/certification-detail/index.js.map +1 -0
- package/es/template/certification-detail/style.css +130 -0
- package/es/template/common/dashboard/index.d.ts +4 -2
- package/es/template/common/search-page/index.d.ts +2 -1
- package/es/template/external-course/index.d.ts +2 -1
- package/es/template/playlist-detail/index.d.ts.map +1 -1
- package/es/template/playlist-detail/index.js +4 -2
- package/es/template/playlist-detail/index.js.map +1 -1
- package/es/template/playlist-detail/style.css +5 -0
- package/es/template/skill-detail/all-courses.css +6 -6
- package/es/template/skill-detail/continue-learning.d.ts.map +1 -1
- package/es/template/skill-detail/continue-learning.js +3 -2
- package/es/template/skill-detail/continue-learning.js.map +1 -1
- package/lib/atom/button-link/index.d.ts.map +1 -1
- package/lib/atom/button-link/index.js +2 -1
- package/lib/atom/button-link/index.js.map +1 -1
- package/lib/atom/button-link/types.d.ts +1 -0
- package/lib/atom/button-link/types.d.ts.map +1 -1
- package/lib/atom/button-link/types.js.map +1 -1
- package/lib/atom/icon/index.d.ts.map +1 -1
- package/lib/atom/icon/index.js +7 -3
- package/lib/atom/icon/index.js.map +1 -1
- package/lib/atom/radio-with-title/index.d.ts +2 -1
- package/lib/atom/radio-with-title/index.d.ts.map +1 -1
- package/lib/atom/radio-with-title/types.d.ts +2 -1
- package/lib/atom/radio-with-title/types.d.ts.map +1 -1
- package/lib/atom/tag/index.d.ts +4 -2
- package/lib/atom/tag/index.d.ts.map +1 -1
- package/lib/atom/tag/index.js +28 -7
- package/lib/atom/tag/index.js.map +1 -1
- package/lib/atom/tag/style.css +7 -0
- package/lib/atom/title/index.d.ts +2 -1
- package/lib/molecule/bulk-progress-bar/index.d.ts.map +1 -1
- package/lib/molecule/bulk-progress-bar/index.js +2 -1
- package/lib/molecule/bulk-progress-bar/index.js.map +1 -1
- package/lib/molecule/bulk-progress-bar/style.css +0 -4
- package/lib/molecule/cm-popin/types.d.ts +2 -1
- package/lib/molecule/cm-popin/types.d.ts.map +1 -1
- package/lib/molecule/progress-bar/index.d.ts +1 -0
- package/lib/molecule/progress-bar/index.d.ts.map +1 -1
- package/lib/molecule/progress-bar/index.js +6 -4
- package/lib/molecule/progress-bar/index.js.map +1 -1
- package/lib/molecule/progress-wrapper/index.d.ts +29 -0
- package/lib/molecule/progress-wrapper/index.d.ts.map +1 -0
- package/lib/molecule/progress-wrapper/index.js +221 -0
- package/lib/molecule/progress-wrapper/index.js.map +1 -0
- package/lib/molecule/progress-wrapper/style.css +185 -0
- package/lib/molecule/title-and-checkbox-wrapper/index.d.ts +2 -1
- package/lib/molecule/title-radio-wrapper/index.d.ts +2 -1
- package/lib/molecule/title-radio-wrapper/index.d.ts.map +1 -1
- package/lib/molecule/title-radio-wrapper/types.d.ts +2 -1
- package/lib/molecule/title-radio-wrapper/types.d.ts.map +1 -1
- package/lib/organism/rewards-form/index.d.ts +2 -1
- package/lib/organism/select-opponents/index.d.ts +2 -1
- package/lib/organism/select-opponents/index.d.ts.map +1 -1
- package/lib/organism/select-opponents/types.d.ts +2 -1
- package/lib/organism/select-opponents/types.d.ts.map +1 -1
- package/lib/organism/title-and-input/index.d.ts +4 -2
- package/lib/organism/title-and-input/index.d.ts.map +1 -1
- package/lib/organism/title-and-input/types.d.ts +4 -2
- package/lib/organism/title-and-input/types.d.ts.map +1 -1
- package/lib/organism/wizard-contents/index.d.ts +2 -1
- package/lib/template/activity/progression-item.css +0 -4
- package/lib/template/activity/progression-item.d.ts.map +1 -1
- package/lib/template/activity/progression-item.js +2 -1
- package/lib/template/activity/progression-item.js.map +1 -1
- package/lib/template/app-player/loading/index.d.ts +2 -1
- package/lib/template/app-player/player/index.d.ts +4 -2
- package/lib/template/app-player/player/slides/index.d.ts +2 -1
- package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
- package/lib/template/app-player/popin-correction/index.d.ts +2 -1
- package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
- package/lib/template/app-player/popin-end/index.d.ts +2 -1
- package/lib/template/app-review/index.d.ts +2 -1
- package/lib/template/app-review/index.d.ts.map +1 -1
- package/lib/template/app-review/player/prop-types.d.ts +2 -1
- package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
- package/lib/template/app-review/prop-types.d.ts +2 -1
- package/lib/template/app-review/prop-types.d.ts.map +1 -1
- package/lib/template/back-office/brand-update/index.d.ts +2 -1
- package/lib/template/certification-detail/index.d.ts +105 -0
- package/lib/template/certification-detail/index.d.ts.map +1 -0
- package/lib/template/certification-detail/index.js +186 -0
- package/lib/template/certification-detail/index.js.map +1 -0
- package/lib/template/certification-detail/style.css +130 -0
- package/lib/template/common/dashboard/index.d.ts +4 -2
- package/lib/template/common/search-page/index.d.ts +2 -1
- package/lib/template/external-course/index.d.ts +2 -1
- package/lib/template/playlist-detail/index.d.ts.map +1 -1
- package/lib/template/playlist-detail/index.js +4 -2
- package/lib/template/playlist-detail/index.js.map +1 -1
- package/lib/template/playlist-detail/style.css +5 -0
- package/lib/template/skill-detail/all-courses.css +6 -6
- package/lib/template/skill-detail/continue-learning.d.ts.map +1 -1
- package/lib/template/skill-detail/continue-learning.js +3 -2
- package/lib/template/skill-detail/continue-learning.js.map +1 -1
- package/locales/bs/global.json +8 -0
- package/locales/cs/global.json +8 -0
- package/locales/de/global.json +8 -0
- package/locales/en/global.json +8 -0
- package/locales/es/global.json +8 -0
- package/locales/et/global.json +8 -0
- package/locales/fi/global.json +8 -0
- package/locales/fr/global.json +8 -0
- package/locales/hr/global.json +8 -0
- package/locales/hu/global.json +8 -0
- package/locales/hy/global.json +8 -0
- package/locales/it/global.json +8 -0
- package/locales/ja/global.json +8 -0
- package/locales/ko/global.json +8 -0
- package/locales/nl/global.json +8 -0
- package/locales/pl/global.json +8 -0
- package/locales/pt/global.json +8 -0
- package/locales/ro/global.json +8 -0
- package/locales/ru/global.json +8 -0
- package/locales/sk/global.json +8 -0
- package/locales/sl/global.json +8 -0
- package/locales/sv/global.json +8 -0
- package/locales/tl/global.json +8 -0
- package/locales/tr/global.json +8 -0
- package/locales/uk/global.json +8 -0
- package/locales/vi/global.json +8 -0
- package/locales/zh/global.json +8 -0
- package/locales/zh_TW/global.json +8 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progression-item.js","names":["React","useMemo","PropTypes","classnames","NovaCompositionNavigationArrowRight","ArrowRightIcon","NovaCompositionCoorpacademyStar","StarIcon","NovaCompositionCoorpacademyTimer","TimerIcon","NovaCompositionCoorpacademyBolt","BoltIcon","NovaSolidSchoolScienceGraduationHat","CertificationIcon","NovaCompositionCoorpacademyAdaptive","AdaptiveIcon","NovaSolidContentContentBook1","LearnerIcon","NovaCompositionCoorpacademyScorm","ScormIcon","NovaCompositionCoorpacademyArticle","ArticleIcon","NovaCompositionCoorpacademyVideo","VideoIcon","NovaCompositionCoorpacademyMicrophone","PodcastIcon","NovaCompositionCoorpacademyRevision","RevisionIcon","Provider","GetSkinFromContext","ProgressBar","Link","style","ICONS","chapter","course","battle","certification","article","scorm","video","podcast","review","ProgressionItem","props","legacyContext","skin","disabled","adaptive","completion","label","level","onClick","stars","maxStars","state","type","steps","adaptiveAriaLabel","dark","primary","white","IconType","adaptiveIcon","backgroundColor","color","handleCTAClick","e","stopPropagation","preventDefault","link","cta","progressionItem","wrapperTitle","iconType","innerHTML","__html","smallStars","iconStar","borderRadius","propTypes","number","isRequired","bool","string","func","contextTypes","childContextTypes"],"sources":["../../../src/template/activity/progression-item.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, noop} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowRight as ArrowRightIcon,\n NovaCompositionCoorpacademyStar as StarIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon,\n NovaCompositionCoorpacademyBolt as BoltIcon,\n NovaSolidSchoolScienceGraduationHat as CertificationIcon,\n NovaCompositionCoorpacademyAdaptive as AdaptiveIcon,\n NovaSolidContentContentBook1 as LearnerIcon,\n NovaCompositionCoorpacademyScorm as ScormIcon,\n NovaCompositionCoorpacademyArticle as ArticleIcon,\n NovaCompositionCoorpacademyVideo as VideoIcon,\n NovaCompositionCoorpacademyMicrophone as PodcastIcon,\n NovaCompositionCoorpacademyRevision as RevisionIcon\n} from '@coorpacademy/nova-icons';\nimport Provider, {GetSkinFromContext} from '../../atom/provider';\nimport ProgressBar from '../../molecule/progress-bar';\nimport Link from '../../atom/link';\nimport style from './progression-item.css';\n\nconst ICONS = {\n chapter: TimerIcon,\n course: LearnerIcon,\n battle: BoltIcon,\n certification: CertificationIcon,\n article: ArticleIcon,\n scorm: ScormIcon,\n video: VideoIcon,\n podcast: PodcastIcon,\n review: RevisionIcon\n};\n\nconst ProgressionItem = (props, legacyContext) => {\n const skin = GetSkinFromContext(legacyContext);\n const {\n disabled = false,\n adaptive,\n completion,\n label,\n level,\n onClick = noop,\n stars,\n maxStars,\n state,\n type,\n steps = 0,\n adaptiveAriaLabel\n } = props;\n\n const dark = get('common.dark', skin);\n const primary = get('common.primary', skin);\n const white = get('common.white', skin);\n const IconType = ICONS[type];\n\n const adaptiveIcon = adaptive ? (\n <div\n className={style.adaptiveIcon}\n style={{\n backgroundColor: primary\n }}\n >\n <AdaptiveIcon style={{color: white}} height={14} aria-label={adaptiveAriaLabel} />\n </div>\n ) : null;\n\n const handleCTAClick = useMemo(\n () => e => {\n e.stopPropagation();\n e.preventDefault();\n onClick(e);\n },\n [onClick]\n );\n\n const link = disabled ? null : (\n <Link style={{color: primary}} onClick={handleCTAClick} data-progression-state={state}>\n <span className={style.cta}>\n {state} <ArrowRightIcon style={{color: primary}} height={12} width={20} />\n </span>\n </Link>\n );\n\n return (\n <div className={classnames(style.progressionItem, disabled ? style.disabled : '')}>\n <div className={style.wrapperTitle}>\n <IconType className={style.iconType} style={{color: dark}} />\n <div data-name=\"activityLabel\" className={style.label} title={label}>\n <div\n className={style.innerHTML}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: label}}\n />\n {adaptiveIcon}\n </div>\n\n <div\n data-name=\"activityStars\"\n role=\"progressbar\"\n className={style.stars}\n style={{\n color: primary\n }}\n >\n {stars}\n {maxStars ? ' /' : null}\n {maxStars ? <span className={style.smallStars}>{maxStars}</span> : null}{' '}\n <StarIcon className={style.iconStar} style={{color: primary}} />\n </div>\n </div>\n <ProgressBar\n className={style.completion}\n value={completion * 100}\n max={100}\n steps={steps}\n style={{backgroundColor: primary, borderRadius: 0}}\n />\n <div className={style.state}>\n {link}\n <span className={style.level}>{level}</span>\n </div>\n </div>\n );\n};\n\nProgressionItem.propTypes = {\n completion: PropTypes.number.isRequired,\n stars: PropTypes.number.isRequired,\n maxStars: PropTypes.number,\n steps: PropTypes.number,\n disabled: PropTypes.bool,\n label: PropTypes.string.isRequired,\n level: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n adaptiveAriaLabel: PropTypes.string,\n type: PropTypes.string.isRequired,\n adaptive: PropTypes.bool.isRequired,\n onClick: PropTypes.func\n};\n\nProgressionItem.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default ProgressionItem;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"progression-item.js","names":["React","useMemo","PropTypes","classnames","NovaCompositionNavigationArrowRight","ArrowRightIcon","NovaCompositionCoorpacademyStar","StarIcon","NovaCompositionCoorpacademyTimer","TimerIcon","NovaCompositionCoorpacademyBolt","BoltIcon","NovaSolidSchoolScienceGraduationHat","CertificationIcon","NovaCompositionCoorpacademyAdaptive","AdaptiveIcon","NovaSolidContentContentBook1","LearnerIcon","NovaCompositionCoorpacademyScorm","ScormIcon","NovaCompositionCoorpacademyArticle","ArticleIcon","NovaCompositionCoorpacademyVideo","VideoIcon","NovaCompositionCoorpacademyMicrophone","PodcastIcon","NovaCompositionCoorpacademyRevision","RevisionIcon","Provider","GetSkinFromContext","ProgressBar","Link","style","ICONS","chapter","course","battle","certification","article","scorm","video","podcast","review","ProgressionItem","props","legacyContext","skin","disabled","adaptive","completion","label","level","onClick","stars","maxStars","state","type","steps","adaptiveAriaLabel","dark","primary","white","IconType","adaptiveIcon","backgroundColor","color","handleCTAClick","e","stopPropagation","preventDefault","link","cta","progressionItem","wrapperTitle","iconType","innerHTML","__html","smallStars","iconStar","borderRadius","propTypes","number","isRequired","bool","string","func","contextTypes","childContextTypes"],"sources":["../../../src/template/activity/progression-item.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, noop} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowRight as ArrowRightIcon,\n NovaCompositionCoorpacademyStar as StarIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon,\n NovaCompositionCoorpacademyBolt as BoltIcon,\n NovaSolidSchoolScienceGraduationHat as CertificationIcon,\n NovaCompositionCoorpacademyAdaptive as AdaptiveIcon,\n NovaSolidContentContentBook1 as LearnerIcon,\n NovaCompositionCoorpacademyScorm as ScormIcon,\n NovaCompositionCoorpacademyArticle as ArticleIcon,\n NovaCompositionCoorpacademyVideo as VideoIcon,\n NovaCompositionCoorpacademyMicrophone as PodcastIcon,\n NovaCompositionCoorpacademyRevision as RevisionIcon\n} from '@coorpacademy/nova-icons';\nimport Provider, {GetSkinFromContext} from '../../atom/provider';\nimport ProgressBar from '../../molecule/progress-bar';\nimport Link from '../../atom/link';\nimport style from './progression-item.css';\n\nconst ICONS = {\n chapter: TimerIcon,\n course: LearnerIcon,\n battle: BoltIcon,\n certification: CertificationIcon,\n article: ArticleIcon,\n scorm: ScormIcon,\n video: VideoIcon,\n podcast: PodcastIcon,\n review: RevisionIcon\n};\n\nconst ProgressionItem = (props, legacyContext) => {\n const skin = GetSkinFromContext(legacyContext);\n const {\n disabled = false,\n adaptive,\n completion,\n label,\n level,\n onClick = noop,\n stars,\n maxStars,\n state,\n type,\n steps = 0,\n adaptiveAriaLabel\n } = props;\n\n const dark = get('common.dark', skin);\n const primary = get('common.primary', skin);\n const white = get('common.white', skin);\n const IconType = ICONS[type];\n\n const adaptiveIcon = adaptive ? (\n <div\n className={style.adaptiveIcon}\n style={{\n backgroundColor: primary\n }}\n >\n <AdaptiveIcon style={{color: white}} height={14} aria-label={adaptiveAriaLabel} />\n </div>\n ) : null;\n\n const handleCTAClick = useMemo(\n () => e => {\n e.stopPropagation();\n e.preventDefault();\n onClick(e);\n },\n [onClick]\n );\n\n const link = disabled ? null : (\n <Link style={{color: primary}} onClick={handleCTAClick} data-progression-state={state}>\n <span className={style.cta}>\n {state} <ArrowRightIcon style={{color: primary}} height={12} width={20} />\n </span>\n </Link>\n );\n\n return (\n <div className={classnames(style.progressionItem, disabled ? style.disabled : '')}>\n <div className={style.wrapperTitle}>\n <IconType className={style.iconType} style={{color: dark}} />\n <div data-name=\"activityLabel\" className={style.label} title={label}>\n <div\n className={style.innerHTML}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: label}}\n />\n {adaptiveIcon}\n </div>\n\n <div\n data-name=\"activityStars\"\n role=\"progressbar\"\n className={style.stars}\n style={{\n color: primary\n }}\n >\n {stars}\n {maxStars ? ' /' : null}\n {maxStars ? <span className={style.smallStars}>{maxStars}</span> : null}{' '}\n <StarIcon className={style.iconStar} style={{color: primary}} />\n </div>\n </div>\n <ProgressBar\n className={style.completion}\n value={completion * 100}\n max={100}\n steps={steps}\n style={{backgroundColor: primary, borderRadius: 0}}\n displayInfo={false}\n />\n <div className={style.state}>\n {link}\n <span className={style.level}>{level}</span>\n </div>\n </div>\n );\n};\n\nProgressionItem.propTypes = {\n completion: PropTypes.number.isRequired,\n stars: PropTypes.number.isRequired,\n maxStars: PropTypes.number,\n steps: PropTypes.number,\n disabled: PropTypes.bool,\n label: PropTypes.string.isRequired,\n level: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n adaptiveAriaLabel: PropTypes.string,\n type: PropTypes.string.isRequired,\n adaptive: PropTypes.bool.isRequired,\n onClick: PropTypes.func\n};\n\nProgressionItem.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default ProgressionItem;\n"],"mappings":"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"}
|
|
@@ -21,8 +21,9 @@ declare namespace PlayerLoading {
|
|
|
21
21
|
type: PropTypes.Requireable<string>;
|
|
22
22
|
size: PropTypes.Requireable<string>;
|
|
23
23
|
customStyle: PropTypes.Requireable<{
|
|
24
|
-
[x: string]: string | null | undefined;
|
|
24
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
25
25
|
}>;
|
|
26
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
26
27
|
}>>;
|
|
27
28
|
}>>;
|
|
28
29
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -72,8 +72,9 @@ declare namespace SlidePlayer {
|
|
|
72
72
|
type: PropTypes.Requireable<string>;
|
|
73
73
|
size: PropTypes.Requireable<string>;
|
|
74
74
|
customStyle: PropTypes.Requireable<{
|
|
75
|
-
[x: string]: string | null | undefined;
|
|
75
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
76
76
|
}>;
|
|
77
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
77
78
|
}>>;
|
|
78
79
|
}>>;
|
|
79
80
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -365,8 +366,9 @@ declare namespace SlidePlayer {
|
|
|
365
366
|
type: PropTypes.Requireable<string>;
|
|
366
367
|
size: PropTypes.Requireable<string>;
|
|
367
368
|
customStyle: PropTypes.Requireable<{
|
|
368
|
-
[x: string]: string | null | undefined;
|
|
369
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
369
370
|
}>;
|
|
371
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
370
372
|
}>>;
|
|
371
373
|
}>>;
|
|
372
374
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -78,8 +78,9 @@ declare namespace SlidesPlayer {
|
|
|
78
78
|
type: PropTypes.Requireable<string>;
|
|
79
79
|
size: PropTypes.Requireable<string>;
|
|
80
80
|
customStyle: PropTypes.Requireable<{
|
|
81
|
-
[x: string]: string | null | undefined;
|
|
81
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
82
82
|
}>;
|
|
83
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
83
84
|
}>>;
|
|
84
85
|
}>>;
|
|
85
86
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/template/app-player/player/slides/index.js"],"names":[],"mappings":";AA+aA,qEAkBC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/template/app-player/player/slides/index.js"],"names":[],"mappings":";AA+aA,qEAkBC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA1ID;;uBAyBC;;;;;;;;;;;;;;;;;;;;;;;;;AArPD;;;gBAaC;;;;;;;;;;;;;AAyDD;;;;gBAEC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAlHD,oEAQC;;;;;;;;;AAgND;;gBAiBC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA/GD,qEAaC"}
|
|
@@ -108,8 +108,9 @@ declare class PopinCorrection extends React.Component<any, any, any> {
|
|
|
108
108
|
type: PropTypes.Requireable<string>;
|
|
109
109
|
size: PropTypes.Requireable<string>;
|
|
110
110
|
customStyle: PropTypes.Requireable<{
|
|
111
|
-
[x: string]: string | null | undefined;
|
|
111
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
112
112
|
}>;
|
|
113
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
113
114
|
}>>;
|
|
114
115
|
}>>;
|
|
115
116
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/app-player/popin-correction/index.js"],"names":[],"mappings":";AAmGA;IACE
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/app-player/popin-correction/index.js"],"names":[],"mappings":";AAmGA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmBE;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,wBAIC;IAFC;;MAA0B;IAkB5B,gCAEC;IAhBD,0BAEC;IAED,kBAQC;IALC,gCAIE;IAIF,aAAsB;IAGxB,sBAsEC;CACF"}
|
|
@@ -208,8 +208,9 @@ declare namespace PopinEnd {
|
|
|
208
208
|
type: PropTypes.Requireable<string>;
|
|
209
209
|
size: PropTypes.Requireable<string>;
|
|
210
210
|
customStyle: PropTypes.Requireable<{
|
|
211
|
-
[x: string]: string | null | undefined;
|
|
211
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
212
212
|
}>;
|
|
213
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
213
214
|
}>>;
|
|
214
215
|
}>>;
|
|
215
216
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -529,8 +529,9 @@ declare const AppReview: {
|
|
|
529
529
|
type: import("prop-types").Requireable<string>;
|
|
530
530
|
size: import("prop-types").Requireable<string>;
|
|
531
531
|
customStyle: import("prop-types").Requireable<{
|
|
532
|
-
[x: string]: string | null | undefined;
|
|
532
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
533
533
|
}>;
|
|
534
|
+
icon: import("prop-types").Requireable<import("prop-types").InferProps<any>>;
|
|
534
535
|
}>>;
|
|
535
536
|
}>>;
|
|
536
537
|
headerIcon: import("prop-types").Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/app-review/index.tsx"],"names":[],"mappings":";AAGA,OAAkB,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAEvD,QAAA,MAAM,SAAS;2BAAwB,cAAc
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/app-review/index.tsx"],"names":[],"mappings":";AAGA,OAAkB,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAEvD,QAAA,MAAM,SAAS;2BAAwB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOpD,CAAC;AAIF,eAAe,SAAS,CAAC"}
|
|
@@ -529,8 +529,9 @@ declare const propTypes: {
|
|
|
529
529
|
type: PropTypes.Requireable<string>;
|
|
530
530
|
size: PropTypes.Requireable<string>;
|
|
531
531
|
customStyle: PropTypes.Requireable<{
|
|
532
|
-
[x: string]: string | null | undefined;
|
|
532
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
533
533
|
}>;
|
|
534
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
534
535
|
}>>;
|
|
535
536
|
}>>;
|
|
536
537
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../../src/template/app-review/player/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AACtD,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAgC,EAC9B,mBAAmB,EACpB,MAAM,8CAA8C,CAAC;AAEtD,OAA8B,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAEzF,OAA+B,EAC7B,gBAAgB,EACjB,MAAM,oDAAoD,CAAC;AAE5D,QAAA,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../../src/template/app-review/player/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AACtD,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAgC,EAC9B,mBAAmB,EACpB,MAAM,8CAA8C,CAAC;AAEtD,OAA8B,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAEzF,OAA+B,EAC7B,gBAAgB,EACjB,MAAM,oDAAoD,CAAC;AAE5D,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKd,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,oBAAY,iBAAiB,GAAG;IAC9B,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B,CAAC"}
|
|
@@ -533,8 +533,9 @@ declare const propTypes: {
|
|
|
533
533
|
type: PropTypes.Requireable<string>;
|
|
534
534
|
size: PropTypes.Requireable<string>;
|
|
535
535
|
customStyle: PropTypes.Requireable<{
|
|
536
|
-
[x: string]: string | null | undefined;
|
|
536
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
537
537
|
}>;
|
|
538
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
538
539
|
}>>;
|
|
539
540
|
}>>;
|
|
540
541
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/template/app-review/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAEtD,oBAAY,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C,oBAAY,cAAc,GAAG;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,QAAA,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/template/app-review/prop-types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAEtD,oBAAY,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C,oBAAY,cAAc,GAAG;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGd,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -905,8 +905,9 @@ declare namespace BrandUpdate {
|
|
|
905
905
|
type: PropTypes.Requireable<string>;
|
|
906
906
|
size: PropTypes.Requireable<string>;
|
|
907
907
|
customStyle: PropTypes.Requireable<{
|
|
908
|
-
[x: string]: string | null | undefined;
|
|
908
|
+
[x: string]: NonNullable<string | number | null | undefined> | null | undefined;
|
|
909
909
|
}>;
|
|
910
|
+
icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
|
|
910
911
|
}>>;
|
|
911
912
|
}>>;
|
|
912
913
|
headerIcon: PropTypes.Requireable<string>;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
export default CertificationDetail;
|
|
2
|
+
declare function CertificationDetail(props: any, context: any): JSX.Element;
|
|
3
|
+
declare namespace CertificationDetail {
|
|
4
|
+
namespace contextTypes {
|
|
5
|
+
const skin: PropTypes.Requireable<PropTypes.InferProps<{
|
|
6
|
+
common: PropTypes.Requireable<{
|
|
7
|
+
[x: string]: any;
|
|
8
|
+
}>;
|
|
9
|
+
images: PropTypes.Requireable<PropTypes.InferProps<{
|
|
10
|
+
'logo-mobile': PropTypes.Requireable<any>;
|
|
11
|
+
logo: PropTypes.Requireable<any>;
|
|
12
|
+
'logo-email': PropTypes.Requireable<any>;
|
|
13
|
+
login: PropTypes.Requireable<any>;
|
|
14
|
+
}>>;
|
|
15
|
+
icons: PropTypes.Requireable<{
|
|
16
|
+
[x: string]: any;
|
|
17
|
+
}>;
|
|
18
|
+
mod: PropTypes.Requireable<{
|
|
19
|
+
[x: string]: any;
|
|
20
|
+
}>;
|
|
21
|
+
courses: PropTypes.Requireable<any[]>;
|
|
22
|
+
texts: PropTypes.Requireable<{
|
|
23
|
+
[x: string]: any;
|
|
24
|
+
}>;
|
|
25
|
+
}>>;
|
|
26
|
+
const translate: PropTypes.Requireable<(...args: any[]) => any>;
|
|
27
|
+
}
|
|
28
|
+
namespace propTypes {
|
|
29
|
+
const title: PropTypes.Validator<string>;
|
|
30
|
+
const certificationRef: PropTypes.Validator<string>;
|
|
31
|
+
const description: PropTypes.Requireable<string>;
|
|
32
|
+
const logoUrl: PropTypes.Requireable<string>;
|
|
33
|
+
const metrics: PropTypes.Requireable<PropTypes.InferProps<{
|
|
34
|
+
progression: PropTypes.Requireable<number>;
|
|
35
|
+
stars: PropTypes.Requireable<number>;
|
|
36
|
+
completedCourses: PropTypes.Requireable<number>;
|
|
37
|
+
completedModules: PropTypes.Requireable<number>;
|
|
38
|
+
}>>;
|
|
39
|
+
const onDownloadDiploma: PropTypes.Requireable<(...args: any[]) => any>;
|
|
40
|
+
const badge: PropTypes.Requireable<PropTypes.InferProps<{
|
|
41
|
+
badgeUrl: PropTypes.Requireable<string>;
|
|
42
|
+
onDownloadBadge: PropTypes.Requireable<(...args: any[]) => any>;
|
|
43
|
+
}>>;
|
|
44
|
+
const ongoingCourses: PropTypes.Requireable<PropTypes.InferProps<{
|
|
45
|
+
list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
46
|
+
customStyle: PropTypes.Requireable<{
|
|
47
|
+
[x: string]: string | null | undefined;
|
|
48
|
+
}>;
|
|
49
|
+
loading: PropTypes.Requireable<boolean>;
|
|
50
|
+
}>>;
|
|
51
|
+
const certificationCourses: PropTypes.Requireable<PropTypes.InferProps<{
|
|
52
|
+
list: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
53
|
+
customStyle: PropTypes.Requireable<{
|
|
54
|
+
[x: string]: string | null | undefined;
|
|
55
|
+
}>;
|
|
56
|
+
loading: PropTypes.Requireable<boolean>;
|
|
57
|
+
}>>;
|
|
58
|
+
const totalCourses: PropTypes.Requireable<number>;
|
|
59
|
+
const totalModules: PropTypes.Requireable<number>;
|
|
60
|
+
const filters: PropTypes.Requireable<PropTypes.InferProps<{
|
|
61
|
+
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
62
|
+
options: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
63
|
+
name: PropTypes.Validator<string>;
|
|
64
|
+
value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
65
|
+
selected: PropTypes.Requireable<boolean>;
|
|
66
|
+
validOption: PropTypes.Requireable<boolean>;
|
|
67
|
+
}> | null | undefined)[]>;
|
|
68
|
+
}>>;
|
|
69
|
+
const sorting: PropTypes.Requireable<PropTypes.InferProps<{
|
|
70
|
+
title: PropTypes.Requireable<string>;
|
|
71
|
+
name: PropTypes.Requireable<string>;
|
|
72
|
+
className: PropTypes.Requireable<string>;
|
|
73
|
+
borderClassName: PropTypes.Requireable<string>;
|
|
74
|
+
disabled: PropTypes.Requireable<boolean>;
|
|
75
|
+
multiple: PropTypes.Requireable<boolean>;
|
|
76
|
+
description: PropTypes.Requireable<string>;
|
|
77
|
+
required: PropTypes.Requireable<boolean>;
|
|
78
|
+
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
79
|
+
theme: PropTypes.Requireable<string>;
|
|
80
|
+
options: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
81
|
+
name: PropTypes.Validator<string>;
|
|
82
|
+
value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
83
|
+
selected: PropTypes.Requireable<boolean>;
|
|
84
|
+
validOption: PropTypes.Requireable<boolean>;
|
|
85
|
+
}> | null | undefined)[]>;
|
|
86
|
+
optgroups: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
87
|
+
label: PropTypes.Validator<string>;
|
|
88
|
+
options: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
89
|
+
name: PropTypes.Validator<string>;
|
|
90
|
+
value: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
91
|
+
selected: PropTypes.Requireable<boolean>;
|
|
92
|
+
validOption: PropTypes.Requireable<boolean>;
|
|
93
|
+
}> | null | undefined)[]>;
|
|
94
|
+
}> | null | undefined)[]>;
|
|
95
|
+
modified: PropTypes.Requireable<boolean>;
|
|
96
|
+
error: PropTypes.Requireable<boolean>;
|
|
97
|
+
'aria-label': PropTypes.Requireable<string>;
|
|
98
|
+
'aria-labelledby': PropTypes.Requireable<string>;
|
|
99
|
+
}>>;
|
|
100
|
+
const onBackClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
101
|
+
const onContinueLearningClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
import PropTypes from "prop-types";
|
|
105
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/certification-detail/index.js"],"names":[],"mappings":";AAkBA,4EA8GC"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import _lowerCase from "lodash/fp/lowerCase";
|
|
2
|
+
import _compact from "lodash/fp/compact";
|
|
3
|
+
import React, { useCallback, useState } from 'react';
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
5
|
+
import classnames from 'classnames';
|
|
6
|
+
import Provider from '../../atom/provider';
|
|
7
|
+
import Tag from '../../atom/tag';
|
|
8
|
+
import Select, { SelectOptionPropTypes } from '../../atom/select';
|
|
9
|
+
import ButtonLinkIcon from '../../atom/button-link-icon';
|
|
10
|
+
import Icon from '../../atom/icon';
|
|
11
|
+
import CardsGrid from '../../organism/cards-grid';
|
|
12
|
+
import AllCourses from '../skill-detail/all-courses';
|
|
13
|
+
import ContinueLearning from '../skill-detail/continue-learning';
|
|
14
|
+
import { ContinueLearningButton } from '../skill-detail';
|
|
15
|
+
import ProgressWrapper from '../../molecule/progress-wrapper';
|
|
16
|
+
import style from './style.css';
|
|
17
|
+
const DESCRIPTION_BREAKPOINT = 382;
|
|
18
|
+
|
|
19
|
+
const CertificationDetail = (props, context) => {
|
|
20
|
+
const {
|
|
21
|
+
certificationRef,
|
|
22
|
+
title,
|
|
23
|
+
description,
|
|
24
|
+
certificationCourses,
|
|
25
|
+
ongoingCourses,
|
|
26
|
+
totalCourses,
|
|
27
|
+
totalModules,
|
|
28
|
+
filters,
|
|
29
|
+
sorting,
|
|
30
|
+
onBackClick,
|
|
31
|
+
onContinueLearningClick,
|
|
32
|
+
metrics,
|
|
33
|
+
logoUrl,
|
|
34
|
+
onDownloadDiploma,
|
|
35
|
+
badge = {}
|
|
36
|
+
} = props;
|
|
37
|
+
const {
|
|
38
|
+
translate
|
|
39
|
+
} = context;
|
|
40
|
+
const {
|
|
41
|
+
progression,
|
|
42
|
+
completedCourses,
|
|
43
|
+
completedModules,
|
|
44
|
+
stars
|
|
45
|
+
} = metrics;
|
|
46
|
+
const {
|
|
47
|
+
badgeUrl = false,
|
|
48
|
+
onDownloadBadge
|
|
49
|
+
} = badge;
|
|
50
|
+
const [showMore, setShowMore] = useState(false);
|
|
51
|
+
const handleShowMore = useCallback(() => setShowMore(!showMore), [setShowMore, showMore]);
|
|
52
|
+
const Description = useCallback(() => {
|
|
53
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
54
|
+
className: classnames(style.description, !showMore && style.truncate)
|
|
55
|
+
}, description);
|
|
56
|
+
}, [showMore, description]);
|
|
57
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
58
|
+
className: style.backgroundContainer
|
|
59
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
60
|
+
className: style.container,
|
|
61
|
+
"data-name": certificationRef
|
|
62
|
+
}, /*#__PURE__*/React.createElement(ButtonLinkIcon, {
|
|
63
|
+
faIcon: "arrow-left",
|
|
64
|
+
"data-name": "back-button",
|
|
65
|
+
"aria-label": "Back",
|
|
66
|
+
onClick: onBackClick,
|
|
67
|
+
className: style.backButton,
|
|
68
|
+
tooltipPlacement: "right"
|
|
69
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
70
|
+
className: style.ctaContainer
|
|
71
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
72
|
+
className: style.logoContainer
|
|
73
|
+
}, /*#__PURE__*/React.createElement("img", {
|
|
74
|
+
className: style.logo,
|
|
75
|
+
src: logoUrl
|
|
76
|
+
})), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Tag, {
|
|
77
|
+
label: translate('certification')
|
|
78
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
79
|
+
className: style.title
|
|
80
|
+
}, title), description ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Description, null), description.length >= DESCRIPTION_BREAKPOINT ? /*#__PURE__*/React.createElement("div", {
|
|
81
|
+
className: style.showMoreWrapper,
|
|
82
|
+
onClick: handleShowMore
|
|
83
|
+
}, translate(showMore ? 'Show less' : 'Show more'), /*#__PURE__*/React.createElement(Icon, {
|
|
84
|
+
iconName: showMore ? 'chevron-up' : 'chevron-down',
|
|
85
|
+
size: {
|
|
86
|
+
faSize: 14,
|
|
87
|
+
wrapperSize: 16
|
|
88
|
+
}
|
|
89
|
+
})) : null) : null, /*#__PURE__*/React.createElement("div", {
|
|
90
|
+
className: style.contentStats
|
|
91
|
+
}, /*#__PURE__*/React.createElement("span", null, `${totalCourses} ${_lowerCase(translate('courses'))}`), /*#__PURE__*/React.createElement("div", {
|
|
92
|
+
className: style.divider
|
|
93
|
+
}), /*#__PURE__*/React.createElement("span", null, `${totalModules} ${_lowerCase(translate('modules'))}`)), /*#__PURE__*/React.createElement(ContinueLearningButton, {
|
|
94
|
+
ongoingCoursesAvailable: !!ongoingCourses.list.length,
|
|
95
|
+
onClick: onContinueLearningClick
|
|
96
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
97
|
+
className: style.continueLearningSection
|
|
98
|
+
}, /*#__PURE__*/React.createElement(ContinueLearning, {
|
|
99
|
+
ongoingCourses: ongoingCourses
|
|
100
|
+
})), /*#__PURE__*/React.createElement(ProgressWrapper, {
|
|
101
|
+
title: translate('your_progress'),
|
|
102
|
+
subtitle: translate('certification_progress_wrapper_subtitle'),
|
|
103
|
+
progression: progression,
|
|
104
|
+
completedCourses: completedCourses,
|
|
105
|
+
completedModules: completedModules,
|
|
106
|
+
sections: _compact([{
|
|
107
|
+
type: 'diploma',
|
|
108
|
+
onDownload: () => onDownloadDiploma
|
|
109
|
+
}, badgeUrl && {
|
|
110
|
+
type: 'badge',
|
|
111
|
+
badgeUrl,
|
|
112
|
+
onDownload: () => onDownloadBadge
|
|
113
|
+
}, {
|
|
114
|
+
type: 'stars',
|
|
115
|
+
stars
|
|
116
|
+
}])
|
|
117
|
+
}), /*#__PURE__*/React.createElement(AllCourses, {
|
|
118
|
+
courses: certificationCourses,
|
|
119
|
+
totalCourses: totalCourses,
|
|
120
|
+
filters: filters,
|
|
121
|
+
sorting: sorting
|
|
122
|
+
})));
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
CertificationDetail.contextTypes = {
|
|
126
|
+
skin: Provider.childContextTypes.skin,
|
|
127
|
+
translate: Provider.childContextTypes.translate
|
|
128
|
+
};
|
|
129
|
+
CertificationDetail.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
130
|
+
title: PropTypes.string.isRequired,
|
|
131
|
+
certificationRef: PropTypes.string.isRequired,
|
|
132
|
+
description: PropTypes.string,
|
|
133
|
+
logoUrl: PropTypes.string,
|
|
134
|
+
metrics: PropTypes.shape({
|
|
135
|
+
progression: PropTypes.number,
|
|
136
|
+
stars: PropTypes.number,
|
|
137
|
+
completedCourses: PropTypes.number,
|
|
138
|
+
completedModules: PropTypes.number
|
|
139
|
+
}),
|
|
140
|
+
onDownloadDiploma: PropTypes.func,
|
|
141
|
+
badge: PropTypes.shape({
|
|
142
|
+
badgeUrl: PropTypes.string,
|
|
143
|
+
onDownloadBadge: PropTypes.func
|
|
144
|
+
}),
|
|
145
|
+
ongoingCourses: PropTypes.shape(CardsGrid.propTypes),
|
|
146
|
+
certificationCourses: PropTypes.shape(CardsGrid.propTypes),
|
|
147
|
+
totalCourses: PropTypes.number,
|
|
148
|
+
totalModules: PropTypes.number,
|
|
149
|
+
filters: PropTypes.shape({
|
|
150
|
+
onChange: PropTypes.func,
|
|
151
|
+
options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes))
|
|
152
|
+
}),
|
|
153
|
+
sorting: PropTypes.shape(Select.propTypes),
|
|
154
|
+
onBackClick: PropTypes.func,
|
|
155
|
+
onContinueLearningClick: PropTypes.func
|
|
156
|
+
} : {};
|
|
157
|
+
export default CertificationDetail;
|
|
158
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","useState","PropTypes","classnames","Provider","Tag","Select","SelectOptionPropTypes","ButtonLinkIcon","Icon","CardsGrid","AllCourses","ContinueLearning","ContinueLearningButton","ProgressWrapper","style","DESCRIPTION_BREAKPOINT","CertificationDetail","props","context","certificationRef","title","description","certificationCourses","ongoingCourses","totalCourses","totalModules","filters","sorting","onBackClick","onContinueLearningClick","metrics","logoUrl","onDownloadDiploma","badge","translate","progression","completedCourses","completedModules","stars","badgeUrl","onDownloadBadge","showMore","setShowMore","handleShowMore","Description","truncate","backgroundContainer","container","backButton","ctaContainer","logoContainer","logo","length","showMoreWrapper","faSize","wrapperSize","contentStats","divider","list","continueLearningSection","type","onDownload","contextTypes","skin","childContextTypes","propTypes","string","isRequired","shape","number","func","onChange","options","arrayOf"],"sources":["../../../src/template/certification-detail/index.js"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {compact, lowerCase} from 'lodash/fp';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport Select, {SelectOptionPropTypes} from '../../atom/select';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport Icon from '../../atom/icon';\nimport CardsGrid from '../../organism/cards-grid';\nimport AllCourses from '../skill-detail/all-courses';\nimport ContinueLearning from '../skill-detail/continue-learning';\nimport {ContinueLearningButton} from '../skill-detail';\nimport ProgressWrapper from '../../molecule/progress-wrapper';\nimport style from './style.css';\n\nconst DESCRIPTION_BREAKPOINT = 382;\n\nconst CertificationDetail = (props, context) => {\n const {\n certificationRef,\n title,\n description,\n certificationCourses,\n ongoingCourses,\n totalCourses,\n totalModules,\n filters,\n sorting,\n onBackClick,\n onContinueLearningClick,\n metrics,\n logoUrl,\n onDownloadDiploma,\n badge = {}\n } = props;\n const {translate} = context;\n const {progression, completedCourses, completedModules, stars} = metrics;\n const {badgeUrl = false, onDownloadBadge} = badge;\n\n const [showMore, setShowMore] = useState(false);\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 return (\n <div className={style.backgroundContainer}>\n <div className={style.container} data-name={certificationRef}>\n <ButtonLinkIcon\n faIcon=\"arrow-left\"\n data-name=\"back-button\"\n aria-label=\"Back\"\n onClick={onBackClick}\n className={style.backButton}\n tooltipPlacement=\"right\"\n />\n <div className={style.ctaContainer}>\n <div className={style.logoContainer}>\n <img className={style.logo} src={logoUrl} />\n </div>\n <div>\n <Tag label={translate('certification')} />\n <div className={style.title}>{title}</div>\n {description ? (\n <>\n <Description />\n {description.length >= DESCRIPTION_BREAKPOINT ? (\n <div className={style.showMoreWrapper} onClick={handleShowMore}>\n {translate(showMore ? 'Show less' : 'Show more')}\n <Icon\n iconName={showMore ? 'chevron-up' : 'chevron-down'}\n size={{faSize: 14, wrapperSize: 16}}\n />\n </div>\n ) : null}\n </>\n ) : null}\n <div className={style.contentStats}>\n <span>{`${totalCourses} ${lowerCase(translate('courses'))}`}</span>\n <div className={style.divider} />\n <span>{`${totalModules} ${lowerCase(translate('modules'))}`}</span>\n </div>\n <ContinueLearningButton\n ongoingCoursesAvailable={!!ongoingCourses.list.length}\n onClick={onContinueLearningClick}\n />\n </div>\n </div>\n <div className={style.continueLearningSection}>\n <ContinueLearning ongoingCourses={ongoingCourses} />\n </div>\n <ProgressWrapper\n title={translate('your_progress')}\n subtitle={translate('certification_progress_wrapper_subtitle')}\n progression={progression}\n completedCourses={completedCourses}\n completedModules={completedModules}\n sections={compact([\n {\n type: 'diploma',\n onDownload: () => onDownloadDiploma\n },\n badgeUrl && {\n type: 'badge',\n badgeUrl,\n onDownload: () => onDownloadBadge\n },\n {\n type: 'stars',\n stars\n }\n ])}\n />\n <AllCourses\n courses={certificationCourses}\n totalCourses={totalCourses}\n filters={filters}\n sorting={sorting}\n />\n </div>\n </div>\n );\n};\n\nCertificationDetail.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nCertificationDetail.propTypes = {\n title: PropTypes.string.isRequired,\n certificationRef: PropTypes.string.isRequired,\n description: PropTypes.string,\n logoUrl: PropTypes.string,\n metrics: PropTypes.shape({\n progression: PropTypes.number,\n stars: PropTypes.number,\n completedCourses: PropTypes.number,\n completedModules: PropTypes.number\n }),\n onDownloadDiploma: PropTypes.func,\n badge: PropTypes.shape({\n badgeUrl: PropTypes.string,\n onDownloadBadge: PropTypes.func\n }),\n ongoingCourses: PropTypes.shape(CardsGrid.propTypes),\n certificationCourses: PropTypes.shape(CardsGrid.propTypes),\n totalCourses: PropTypes.number,\n totalModules: 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 onContinueLearningClick: PropTypes.func\n};\n\nexport default CertificationDetail;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
@value colors: "../../variables/colors.css";
|
|
2
|
+
@value breakpoints: "../../variables/breakpoints.css";
|
|
3
|
+
@value tablet from breakpoints;
|
|
4
|
+
@value mobile from breakpoints;
|
|
5
|
+
@value xtraLightGrey from colors;
|
|
6
|
+
@value cm_grey_50 from colors;
|
|
7
|
+
@value cm_grey_100 from colors;
|
|
8
|
+
@value cm_grey_200 from colors;
|
|
9
|
+
@value cm_grey_400 from colors;
|
|
10
|
+
|
|
11
|
+
.divider {
|
|
12
|
+
width: 4px;
|
|
13
|
+
height: 4px;
|
|
14
|
+
background-color: cm_grey_400;
|
|
15
|
+
border: solid cm_grey_400 1px;
|
|
16
|
+
border-radius: 4px;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.textBase {
|
|
20
|
+
font-family: "Gilroy";
|
|
21
|
+
font-style: normal;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.backgroundContainer {
|
|
25
|
+
background-color: white;
|
|
26
|
+
min-height: 100%;
|
|
27
|
+
width: 100%;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.container {
|
|
31
|
+
composes: textBase;
|
|
32
|
+
background-color: white;
|
|
33
|
+
font-family: "Gilroy";
|
|
34
|
+
font-style: normal;
|
|
35
|
+
margin-top: 48px;
|
|
36
|
+
margin-bottom: 48px;
|
|
37
|
+
margin-left: auto;
|
|
38
|
+
margin-right: auto;
|
|
39
|
+
padding: 0 16px;
|
|
40
|
+
position: relative;
|
|
41
|
+
box-sizing: border-box;
|
|
42
|
+
min-height: 100%;
|
|
43
|
+
width: 100%;
|
|
44
|
+
max-width: calc(1080px + 40px);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.backButton {
|
|
48
|
+
margin-bottom: 16px;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.ctaContainer {
|
|
52
|
+
display: flex;
|
|
53
|
+
align-items: center;
|
|
54
|
+
width: 100%;
|
|
55
|
+
gap: 40px;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.logoContainer {
|
|
59
|
+
height: 300px;
|
|
60
|
+
width: 450px;
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
justify-content: center;
|
|
64
|
+
background-color: cm_grey_50;
|
|
65
|
+
border-radius: 16px;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.logo {
|
|
69
|
+
width: 191px;
|
|
70
|
+
height: 191px;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.showMoreWrapper {
|
|
74
|
+
display: flex;
|
|
75
|
+
gap: 8px;
|
|
76
|
+
align-items: center;
|
|
77
|
+
margin-top: 8px;
|
|
78
|
+
font-weight: 600;
|
|
79
|
+
cursor: pointer;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.title {
|
|
83
|
+
margin-top: 8px;
|
|
84
|
+
font-size: 24px;
|
|
85
|
+
font-weight: 700;
|
|
86
|
+
line-height: 32px;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.description {
|
|
90
|
+
margin-top: 8px;
|
|
91
|
+
max-width: 620px;
|
|
92
|
+
font-size: 14px;
|
|
93
|
+
font-weight: 500;
|
|
94
|
+
line-height: 20px;
|
|
95
|
+
color: cm_grey_400;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.truncate {
|
|
99
|
+
display: -webkit-box;
|
|
100
|
+
-webkit-line-clamp: 4;
|
|
101
|
+
-webkit-box-orient: vertical;
|
|
102
|
+
overflow: hidden;
|
|
103
|
+
text-overflow: ellipsis;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.contentStats {
|
|
107
|
+
display: flex;
|
|
108
|
+
align-items: center;
|
|
109
|
+
gap: 8px;
|
|
110
|
+
padding: 24px 0;
|
|
111
|
+
font-weight: 600;
|
|
112
|
+
color: cm_grey_400;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.continueLearningSection {
|
|
116
|
+
padding: 24px 0 32px 0;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@media tablet {
|
|
120
|
+
.ctaContainer {
|
|
121
|
+
flex-direction: column;
|
|
122
|
+
align-items: flex-start;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
@media mobile {
|
|
127
|
+
.logoContainer {
|
|
128
|
+
width: 100%;
|
|
129
|
+
}
|
|
130
|
+
}
|