@coorpacademy/components 10.22.1 → 10.22.4
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/drag-and-drop/index.js +2 -1
- package/es/atom/drag-and-drop/index.js.map +1 -1
- package/es/atom/header-back-button/index.native.js +74 -0
- package/es/atom/header-back-button/index.native.js.map +1 -0
- package/es/atom/header-back-icon/index.native.js +27 -0
- package/es/atom/header-back-icon/index.native.js.map +1 -0
- package/es/atom/html/index.native.js +153 -0
- package/es/atom/html/index.native.js.map +1 -0
- package/es/atom/input-checkbox/index.js +3 -2
- package/es/atom/input-checkbox/index.js.map +1 -1
- package/es/atom/input-switch/index.js +2 -1
- package/es/atom/input-switch/index.js.map +1 -1
- package/es/atom/select-modal/index.native.js +113 -0
- package/es/atom/select-modal/index.native.js.map +1 -0
- package/es/atom/space/index.native.js +21 -0
- package/es/atom/space/index.native.js.map +1 -0
- package/es/atom/spinner/index.js +1 -0
- package/es/atom/spinner/index.js.map +1 -1
- package/es/atom/text/index.native.js +29 -0
- package/es/atom/text/index.native.js.map +1 -0
- package/es/hoc/modal/index.native.js +97 -0
- package/es/hoc/modal/index.native.js.map +1 -0
- package/es/hoc/modal/select/index.native.js +85 -0
- package/es/hoc/modal/select/index.native.js.map +1 -0
- package/es/hoc/modal/select-item/index.native.js +54 -0
- package/es/hoc/modal/select-item/index.native.js.map +1 -0
- package/es/hoc/touchable/index.native.js +69 -0
- package/es/hoc/touchable/index.native.js.map +1 -0
- package/es/index.js +2 -1
- package/es/index.js.map +1 -1
- package/es/molecule/cm-popin/index.js +27 -8
- package/es/molecule/cm-popin/index.js.map +1 -1
- package/es/molecule/cm-popin/style.css +24 -1
- package/es/molecule/dashboard/battle-request-list/index.js +3 -5
- package/es/molecule/dashboard/battle-request-list/index.js.map +1 -1
- package/es/molecule/dashboard/news-list/index.js +3 -5
- package/es/molecule/dashboard/news-list/index.js.map +1 -1
- package/es/molecule/dashboard/review-banner/index.js +3 -5
- package/es/molecule/dashboard/review-banner/index.js.map +1 -1
- package/es/molecule/dashboard/start-battle/index.js +3 -5
- package/es/molecule/dashboard/start-battle/index.js.map +1 -1
- package/es/molecule/external-content-viewer/index.js +2 -1
- package/es/molecule/external-content-viewer/index.js.map +1 -1
- package/es/molecule/feedback/index.js +7 -3
- package/es/molecule/feedback/index.js.map +1 -1
- package/es/molecule/feedback/style.css +24 -0
- package/es/molecule/questions/free-text/index.native.js +5 -6
- package/es/molecule/questions/free-text/index.native.js.map +1 -1
- package/es/molecule/questions/qcm/index.native.js +6 -3
- package/es/molecule/questions/qcm/index.native.js.map +1 -1
- package/es/molecule/skill-card/prop-types.js +1 -1
- package/es/molecule/skill-card/prop-types.js.map +1 -1
- package/es/template/app-player/loading/index.js +1 -0
- package/es/template/app-player/loading/index.js.map +1 -1
- package/es/template/app-player/player/index.js +6 -3
- package/es/template/app-player/player/index.js.map +1 -1
- package/es/template/app-player/popin-end/index.js +21 -6
- package/es/template/app-player/popin-end/index.js.map +1 -1
- package/es/template/app-player/popin-end/style.css +1 -1
- package/es/template/app-player/popin-end/summary.css +65 -0
- package/es/template/app-player/popin-end/summary.js +57 -7
- package/es/template/app-player/popin-end/summary.js.map +1 -1
- package/es/template/app-player/popin-header/index.js +33 -12
- package/es/template/app-player/popin-header/index.js.map +1 -1
- package/es/template/app-player/popin-header/style.css +93 -0
- package/es/template/app-player/popin-no-access/index.js +27 -0
- package/es/template/app-player/popin-no-access/index.js.map +1 -0
- package/es/template/app-review/demo-ts/index.js +2 -0
- package/es/template/app-review/demo-ts/index.js.map +1 -1
- package/es/template/app-review/demo-ts/index.native.js +9 -0
- package/es/template/app-review/demo-ts/index.native.js.map +1 -0
- package/es/template/app-review/demo-ts/typings.js +7 -0
- package/es/template/app-review/demo-ts/typings.js.map +1 -0
- package/es/template/app-review/index.js +4 -0
- package/es/template/app-review/index.js.map +1 -1
- package/es/template/app-review/index.native.js +3 -13
- package/es/template/app-review/index.native.js.map +1 -1
- package/es/template/app-review/prop-types.js +2 -1
- package/es/template/app-review/prop-types.js.map +1 -1
- package/es/template/app-review/slides/index.js +2 -2
- package/es/template/app-review/slides/index.js.map +1 -1
- package/es/template/app-review/slides/index.native.js +17 -14
- package/es/template/app-review/slides/index.native.js.map +1 -1
- package/es/template/app-review/template-context.js +9 -3
- package/es/template/app-review/template-context.js.map +1 -1
- package/es/types/progression-engine.d.js +2 -0
- package/es/types/progression-engine.d.js.map +1 -0
- package/es/variables/analytics.js.map +1 -1
- package/es/variables/theme.native.js +66 -0
- package/es/variables/theme.native.js.map +1 -0
- package/es/variables/vibration.js +10 -0
- package/es/variables/vibration.js.map +1 -0
- package/lib/atom/drag-and-drop/index.js +2 -1
- package/lib/atom/drag-and-drop/index.js.map +1 -1
- package/lib/atom/header-back-button/index.native.js +95 -0
- package/lib/atom/header-back-button/index.native.js.map +1 -0
- package/lib/atom/header-back-icon/index.native.js +38 -0
- package/lib/atom/header-back-icon/index.native.js.map +1 -0
- package/lib/atom/html/index.native.js +170 -0
- package/lib/atom/html/index.native.js.map +1 -0
- package/lib/atom/input-checkbox/index.js +2 -1
- package/lib/atom/input-checkbox/index.js.map +1 -1
- package/lib/atom/input-switch/index.js +2 -1
- package/lib/atom/input-switch/index.js.map +1 -1
- package/lib/atom/select-modal/index.native.js +135 -0
- package/lib/atom/select-modal/index.native.js.map +1 -0
- package/lib/atom/space/index.native.js +33 -0
- package/lib/atom/space/index.native.js.map +1 -0
- package/lib/atom/spinner/index.js +1 -0
- package/lib/atom/spinner/index.js.map +1 -1
- package/lib/atom/text/index.native.js +44 -0
- package/lib/atom/text/index.native.js.map +1 -0
- package/lib/hoc/modal/index.native.js +114 -0
- package/lib/hoc/modal/index.native.js.map +1 -0
- package/lib/hoc/modal/select/index.native.js +101 -0
- package/lib/hoc/modal/select/index.native.js.map +1 -0
- package/lib/hoc/modal/select-item/index.native.js +70 -0
- package/lib/hoc/modal/select-item/index.native.js.map +1 -0
- package/lib/hoc/touchable/index.native.js +83 -0
- package/lib/hoc/touchable/index.native.js.map +1 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/lib/molecule/cm-popin/index.js +27 -8
- package/lib/molecule/cm-popin/index.js.map +1 -1
- package/lib/molecule/cm-popin/style.css +24 -1
- package/lib/molecule/dashboard/battle-request-list/index.js +3 -5
- package/lib/molecule/dashboard/battle-request-list/index.js.map +1 -1
- package/lib/molecule/dashboard/news-list/index.js +3 -5
- package/lib/molecule/dashboard/news-list/index.js.map +1 -1
- package/lib/molecule/dashboard/review-banner/index.js +3 -5
- package/lib/molecule/dashboard/review-banner/index.js.map +1 -1
- package/lib/molecule/dashboard/start-battle/index.js +3 -5
- package/lib/molecule/dashboard/start-battle/index.js.map +1 -1
- package/lib/molecule/external-content-viewer/index.js +2 -1
- package/lib/molecule/external-content-viewer/index.js.map +1 -1
- package/lib/molecule/feedback/index.js +7 -3
- package/lib/molecule/feedback/index.js.map +1 -1
- package/lib/molecule/feedback/style.css +24 -0
- package/lib/molecule/questions/free-text/index.native.js +5 -6
- package/lib/molecule/questions/free-text/index.native.js.map +1 -1
- package/lib/molecule/questions/qcm/index.native.js +7 -3
- package/lib/molecule/questions/qcm/index.native.js.map +1 -1
- package/lib/molecule/skill-card/prop-types.js +1 -1
- package/lib/molecule/skill-card/prop-types.js.map +1 -1
- package/lib/template/app-player/loading/index.js +1 -0
- package/lib/template/app-player/loading/index.js.map +1 -1
- package/lib/template/app-player/player/index.js +7 -3
- package/lib/template/app-player/player/index.js.map +1 -1
- package/lib/template/app-player/popin-end/index.js +21 -6
- package/lib/template/app-player/popin-end/index.js.map +1 -1
- package/lib/template/app-player/popin-end/style.css +1 -1
- package/lib/template/app-player/popin-end/summary.css +65 -0
- package/lib/template/app-player/popin-end/summary.js +58 -7
- package/lib/template/app-player/popin-end/summary.js.map +1 -1
- package/lib/template/app-player/popin-header/index.js +32 -11
- package/lib/template/app-player/popin-header/index.js.map +1 -1
- package/lib/template/app-player/popin-header/style.css +93 -0
- package/lib/template/app-player/popin-no-access/index.js +37 -0
- package/lib/template/app-player/popin-no-access/index.js.map +1 -0
- package/lib/template/app-review/demo-ts/index.js +3 -0
- package/lib/template/app-review/demo-ts/index.js.map +1 -1
- package/lib/template/app-review/demo-ts/index.native.js +18 -0
- package/lib/template/app-review/demo-ts/index.native.js.map +1 -0
- package/lib/template/app-review/demo-ts/typings.js +16 -0
- package/lib/template/app-review/demo-ts/typings.js.map +1 -0
- package/lib/template/app-review/index.js +5 -0
- package/lib/template/app-review/index.js.map +1 -1
- package/lib/template/app-review/index.native.js +2 -12
- package/lib/template/app-review/index.native.js.map +1 -1
- package/lib/template/app-review/prop-types.js +2 -1
- package/lib/template/app-review/prop-types.js.map +1 -1
- package/lib/template/app-review/slides/index.js +2 -2
- package/lib/template/app-review/slides/index.js.map +1 -1
- package/lib/template/app-review/slides/index.native.js +17 -14
- package/lib/template/app-review/slides/index.native.js.map +1 -1
- package/lib/template/app-review/template-context.js +10 -1
- package/lib/template/app-review/template-context.js.map +1 -1
- package/lib/types/progression-engine.d.js +2 -0
- package/lib/types/progression-engine.d.js.map +1 -0
- package/lib/variables/analytics.js.map +1 -1
- package/lib/variables/theme.native.js +72 -0
- package/lib/variables/theme.native.js.map +1 -0
- package/lib/variables/vibration.js +15 -0
- package/lib/variables/vibration.js.map +1 -0
- package/package.json +9 -3
|
@@ -252,8 +252,9 @@ IconsPart.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
252
252
|
revival: _propTypes.default.bool
|
|
253
253
|
} : {};
|
|
254
254
|
|
|
255
|
-
const buildClass = (value, success, failed, loading) => {
|
|
255
|
+
const buildClass = (value, success, failed, loading, mode = 'default', scormStyle) => {
|
|
256
256
|
if (loading && (0, _isNil2.default)(value)) return loading;
|
|
257
|
+
if (mode === 'scorm') return scormStyle;
|
|
257
258
|
return value ? failed : success;
|
|
258
259
|
};
|
|
259
260
|
|
|
@@ -270,6 +271,22 @@ const getLinkStyle = ({
|
|
|
270
271
|
}
|
|
271
272
|
};
|
|
272
273
|
|
|
274
|
+
const renderIconStatusScorm = failed => {
|
|
275
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
276
|
+
className: failed ? _style2.default.iconCloseContainer : _style2.default.iconSuccessContainer
|
|
277
|
+
}, failed ? /*#__PURE__*/_react.default.createElement(_novaIcons.NovaSolidStatusClose, {
|
|
278
|
+
className: _style2.default.failIcon
|
|
279
|
+
}) : /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyCheck, {
|
|
280
|
+
className: _style2.default.checkIcon
|
|
281
|
+
}));
|
|
282
|
+
};
|
|
283
|
+
|
|
284
|
+
const buildDefaultOrScormStyle = (defaultStyle, mode = 'default', styleScorm, failed, failedStyle = null) => {
|
|
285
|
+
if (mode === 'scorm' && failed && failedStyle) return failedStyle;
|
|
286
|
+
if (mode === 'scorm') return styleScorm;
|
|
287
|
+
return defaultStyle;
|
|
288
|
+
};
|
|
289
|
+
|
|
273
290
|
const CorrectionPart = props => {
|
|
274
291
|
const {
|
|
275
292
|
failed,
|
|
@@ -278,24 +295,25 @@ const CorrectionPart = props => {
|
|
|
278
295
|
subtitle,
|
|
279
296
|
stars,
|
|
280
297
|
rank,
|
|
281
|
-
gameOver
|
|
298
|
+
gameOver,
|
|
299
|
+
mode = 'default'
|
|
282
300
|
} = props;
|
|
283
301
|
const isLoading = (0, _isNil2.default)(failed);
|
|
284
|
-
const className = buildClass(failed, stars && rank ? _style2.default.correctionSectionEndSuccess : _style2.default.correctionSectionSuccess, gameOver ? _style2.default.correctionSectionFailGameOver : _style2.default.correctionSectionFail, _style2.default.correctionSectionLoading);
|
|
302
|
+
const className = buildClass(failed, stars && rank ? _style2.default.correctionSectionEndSuccess : _style2.default.correctionSectionSuccess, gameOver ? _style2.default.correctionSectionFailGameOver : _style2.default.correctionSectionFail, _style2.default.correctionSectionLoading, mode, _style2.default.resultContenantContainerScorm);
|
|
285
303
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
286
304
|
"data-name": "correctionSection",
|
|
287
305
|
className: className
|
|
288
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
289
|
-
className: _style2.default.titlesWrapper
|
|
306
|
+
}, mode === 'scorm' && renderIconStatusScorm(failed), /*#__PURE__*/_react.default.createElement("div", {
|
|
307
|
+
className: buildDefaultOrScormStyle(_style2.default.titlesWrapper, mode, _style2.default.titlesWrapperScorm, failed)
|
|
290
308
|
}, isLoading ? /*#__PURE__*/_react.default.createElement(_loader.default, null) : null, /*#__PURE__*/_react.default.createElement("h1", {
|
|
291
309
|
"data-name": "title",
|
|
292
|
-
className: (0, _classnames.default)(_style2.default.title, _style.innerHTML) // eslint-disable-next-line react/no-danger
|
|
310
|
+
className: buildDefaultOrScormStyle((0, _classnames.default)(_style2.default.title, _style.innerHTML), mode, _style2.default.resultTitleScorm, failed) // eslint-disable-next-line react/no-danger
|
|
293
311
|
,
|
|
294
312
|
dangerouslySetInnerHTML: {
|
|
295
313
|
__html: title
|
|
296
314
|
}
|
|
297
315
|
}), /*#__PURE__*/_react.default.createElement("h2", {
|
|
298
|
-
className: _style2.default.subtitle
|
|
316
|
+
className: buildDefaultOrScormStyle(_style2.default.subtitle, mode, _style2.default.resultSubtitleScorm, failed, _style2.default.statusPlayerResultFailScorm)
|
|
299
317
|
}, subtitle), failed && !(0, _isEmpty2.default)(corrections) ? /*#__PURE__*/_react.default.createElement(AnswersCorrection, {
|
|
300
318
|
corrections: corrections
|
|
301
319
|
}) : null), /*#__PURE__*/_react.default.createElement(IconsPart, props));
|
|
@@ -412,7 +430,8 @@ const PopinHeader = (props, context) => {
|
|
|
412
430
|
cta,
|
|
413
431
|
extraLifeGranted,
|
|
414
432
|
gameOver = false,
|
|
415
|
-
type
|
|
433
|
+
type,
|
|
434
|
+
mode = 'default'
|
|
416
435
|
} = props;
|
|
417
436
|
const state = buildClass(failed, 'success', 'failed', null);
|
|
418
437
|
const nextLink = cta ? /*#__PURE__*/_react.default.createElement(NextQuestionPart, {
|
|
@@ -428,7 +447,7 @@ const PopinHeader = (props, context) => {
|
|
|
428
447
|
"data-name": "popinHeader",
|
|
429
448
|
"data-state": state
|
|
430
449
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
431
|
-
className: _style2.default.headerTitle
|
|
450
|
+
className: mode !== 'scorm' ? _style2.default.headerTitle : null
|
|
432
451
|
}, /*#__PURE__*/_react.default.createElement(CorrectionPart, {
|
|
433
452
|
title: title,
|
|
434
453
|
subtitle: subtitle,
|
|
@@ -439,7 +458,8 @@ const PopinHeader = (props, context) => {
|
|
|
439
458
|
failed: failed,
|
|
440
459
|
gameOver: gameOver,
|
|
441
460
|
revival: extraLifeGranted,
|
|
442
|
-
corrections: corrections
|
|
461
|
+
corrections: corrections,
|
|
462
|
+
mode: mode
|
|
443
463
|
}), nextLink));
|
|
444
464
|
};
|
|
445
465
|
|
|
@@ -458,7 +478,8 @@ PopinHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
458
478
|
animated: CorrectionPart.propTypes.animated,
|
|
459
479
|
stars: CorrectionPart.propTypes.stars,
|
|
460
480
|
rank: CorrectionPart.propTypes.rank,
|
|
461
|
-
corrections: CorrectionPart.propTypes.corrections
|
|
481
|
+
corrections: CorrectionPart.propTypes.corrections,
|
|
482
|
+
mode: _propTypes.default.oneOf(['scorm', 'default'])
|
|
462
483
|
} : {};
|
|
463
484
|
var _default = PopinHeader;
|
|
464
485
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/template/app-player/popin-header/index.js"],"names":["separator","index","style","answerSeparator","joinBySeparator","elements","separators","length","AnswersCorrection","corrections","answers","map","correction","key","isCorrect","correctAnswer","wrongAnswer","innerHTML","__html","answer","fullAnswer","propTypes","PropTypes","arrayOf","shape","string","isRequired","bool","formatPlusSign","value","Rank","failed","rank","animated","onAnimationEnd","skin","positive","centerContent","bumped","iconBubble","icon","iconText","EASE_OUT_CUBIC","progress","Animation","contextTypes","Provider","childContextTypes","Stars","stars","Lifes","lives","revival","life","Life","count","IconsPart","props","iconsWrapper","AnimationScheduler","buildClass","success","loading","getLinkStyle","gameOver","extraLifeGranted","oneMoreLife","CorrectionPart","title","subtitle","isLoading","className","correctionSectionEndSuccess","correctionSectionSuccess","correctionSectionFailGameOver","correctionSectionFail","correctionSectionLoading","titlesWrapper","NextQuestionPart","context","cta","type","nextStepTitle","showNextLevel","linkProps","dataNext","nextStep","gameOverSubtitle","nextSection","wrapperNextSection","nextButton","nextButtonIcon","Link","oneOf","number","PopinHeader","state","nextLink","header","headerWithoutCTA","headerTitle"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n compact,\n flatten,\n get,\n isNil,\n pipe,\n times,\n zip,\n round,\n parseInt as _parseInt,\n multiply,\n isEmpty\n} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaCompositionCoorpacademyCharts as ChartsIcon,\n NovaCompositionCoorpacademyStar as StarIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Loader from '../../../atom/loader';\nimport Life from '../../../atom/life';\nimport Link from '../../../atom/link';\nimport Animation, {EASE_OUT_CUBIC} from '../../../hoc/animation';\nimport Transition from '../../../hoc/transition';\nimport AnimationScheduler, {AnimationAdapter} from '../../../hoc/animation-scheduler';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport style from './style.css';\n\nconst separator = index => (\n <span key={index} className={style.answerSeparator}>\n /\n </span>\n);\n\nconst joinBySeparator = elements => {\n const separators = times(separator, elements.length - 1);\n return pipe(zip, flatten, compact)(elements, separators);\n};\n\nconst AnswersCorrection = ({corrections}) => {\n const answers = corrections.map((correction, index) => {\n const key = `answer_${index}`;\n return (\n <span\n key={key}\n data-name=\"answer\"\n data-correct={correction.isCorrect}\n className={classnames(\n correction.isCorrect ? style.correctAnswer : style.wrongAnswer,\n innerHTML\n )}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: correction.answer}}\n />\n );\n }, corrections);\n return <p className={style.fullAnswer}>{joinBySeparator(answers)}</p>;\n};\n\nAnswersCorrection.propTypes = {\n corrections: PropTypes.arrayOf(\n PropTypes.shape({\n answer: PropTypes.string.isRequired,\n isCorrect: PropTypes.bool.isRequired\n })\n )\n};\n\nconst formatPlusSign = value => (value >= 0 ? '+' : '') + value;\n\nconst Rank = ({failed, rank, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(rank)) return null;\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <ChartsIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(rank)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nRank.propTypes = {\n failed: PropTypes.bool,\n rank: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nRank.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Stars = ({failed, stars, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(stars)) return null;\n\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <StarIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span data-name=\"iconText\" className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(stars)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nStars.propTypes = {\n failed: PropTypes.bool,\n stars: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nStars.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Lifes = ({lives, failed, animated, revival}) => {\n if (isNil(lives)) return null;\n\n return (\n <Life\n failed={failed}\n count={lives}\n animated={animated}\n revival={revival}\n className={style.life}\n />\n );\n};\n\nLifes.propTypes = {\n lives: Life.propTypes.count,\n failed: Life.propTypes.failed,\n animated: Life.propTypes.animated,\n revival: Life.propTypes.revival\n};\n\nconst IconsPart = props => {\n const {lives, failed, stars, rank, animated, revival} = props;\n return (\n <AnimationScheduler animated>\n <div className={style.iconsWrapper}>\n <Lifes lives={lives} failed={failed} animated={animated} revival={revival} />\n\n <AnimationAdapter name=\"stars\">\n <Stars stars={stars} fail={failed} />\n </AnimationAdapter>\n <AnimationAdapter name=\"rank\" after=\"stars\">\n <Rank rank={rank} fail={failed} />\n </AnimationAdapter>\n </div>\n </AnimationScheduler>\n );\n};\n\nIconsPart.propTypes = {\n lives: Lifes.propTypes.lives,\n failed: Lifes.propTypes.failed,\n stars: Stars.propTypes.stars,\n rank: Rank.propTypes.rank,\n animated: AnimationScheduler.propTypes.animated,\n revival: PropTypes.bool\n};\n\nconst buildClass = (value, success, failed, loading) => {\n if (loading && isNil(value)) return loading;\n return value ? failed : success;\n};\n\nconst getLinkStyle = ({gameOver, extraLifeGranted}) => {\n if (extraLifeGranted) {\n return style.oneMoreLife;\n } else if (gameOver) {\n return style.gameOver;\n } else {\n return null;\n }\n};\n\nconst CorrectionPart = props => {\n const {failed, corrections, title, subtitle, stars, rank, gameOver} = props;\n const isLoading = isNil(failed);\n const className = buildClass(\n failed,\n stars && rank ? style.correctionSectionEndSuccess : style.correctionSectionSuccess,\n gameOver ? style.correctionSectionFailGameOver : style.correctionSectionFail,\n style.correctionSectionLoading\n );\n\n return (\n <div data-name=\"correctionSection\" className={className}>\n <div className={style.titlesWrapper}>\n {isLoading ? <Loader /> : null}\n <h1\n data-name=\"title\"\n className={classnames(style.title, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <h2 className={style.subtitle}>{subtitle}</h2>\n {failed && !isEmpty(corrections) ? <AnswersCorrection corrections={corrections} /> : null}\n </div>\n <IconsPart {...props} />\n </div>\n );\n};\n\nCorrectionPart.propTypes = {\n ...IconsPart.propTypes,\n failed: PropTypes.bool,\n corrections: AnswersCorrection.propTypes.corrections,\n title: PropTypes.string,\n subtitle: PropTypes.string,\n stars: PropTypes.string,\n rank: PropTypes.string,\n gameOver: PropTypes.bool\n};\n\nconst NextQuestionPart = (props, context) => {\n const {cta, type, extraLifeGranted, gameOver, failed = false, lives = 0} = props;\n const {title, nextStepTitle, showNextLevel = false, ...linkProps} = cta || {};\n let dataNext;\n\n switch (type) {\n case 'popinCorrection': {\n if (gameOver) {\n dataNext = 'game-over';\n } else if (failed) {\n if (lives > 0) {\n dataNext = 'continue-failure';\n } else if (extraLifeGranted) {\n dataNext = 'continue-used-extra-life';\n }\n } else {\n dataNext = 'continue-success';\n }\n break;\n }\n\n case 'popinEnd': {\n if (failed) {\n dataNext = 'redo-content';\n } else if (showNextLevel) {\n dataNext = 'next-level';\n } else {\n dataNext = 'home';\n }\n }\n }\n\n const nextStep = nextStepTitle ? (\n <div\n className={classnames(gameOver ? style.gameOverSubtitle : style.nextStepTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: nextStepTitle}}\n />\n ) : null;\n\n return (\n <Link\n {...linkProps}\n className={classnames(style.nextSection, getLinkStyle({gameOver, extraLifeGranted}))}\n data-name=\"nextLink\"\n data-popin={type}\n data-next={dataNext}\n >\n <div className={style.wrapperNextSection}>\n <div className={style.nextButton}>\n {title}\n <ArrowRight color=\"inherit\" className={style.nextButtonIcon} />\n </div>\n {nextStep}\n </div>\n </Link>\n );\n};\n\nNextQuestionPart.propTypes = {\n cta: PropTypes.shape({\n ...Link.propTypes,\n title: PropTypes.string,\n nextStepTitle: PropTypes.string,\n showNextLevel: PropTypes.bool\n }),\n type: PropTypes.oneOf(['popinCorrection', 'popinEnd']).isRequired,\n extraLifeGranted: PropTypes.bool,\n gameOver: PropTypes.bool,\n failed: PropTypes.bool,\n lives: PropTypes.number\n};\n\nconst PopinHeader = (props, context) => {\n const {\n animated,\n failed,\n title,\n subtitle,\n lives,\n stars,\n rank,\n corrections,\n cta,\n extraLifeGranted,\n gameOver = false,\n type\n } = props;\n\n const state = buildClass(failed, 'success', 'failed', null);\n\n const nextLink = cta ? (\n <NextQuestionPart\n cta={cta}\n type={type}\n extraLifeGranted={extraLifeGranted}\n failed={failed}\n gameOver={gameOver}\n lives={lives}\n />\n ) : null;\n\n return (\n <div\n className={cta ? style.header : style.headerWithoutCTA}\n data-name=\"popinHeader\"\n data-state={state}\n >\n <div className={style.headerTitle}>\n <CorrectionPart\n title={title}\n subtitle={subtitle}\n lives={lives}\n animated={animated}\n stars={stars}\n rank={rank}\n failed={failed}\n gameOver={gameOver}\n revival={extraLifeGranted}\n corrections={corrections}\n />\n {nextLink}\n </div>\n </div>\n );\n};\n\nPopinHeader.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nPopinHeader.propTypes = {\n cta: NextQuestionPart.propTypes.cta,\n type: NextQuestionPart.propTypes.type,\n extraLifeGranted: NextQuestionPart.propTypes.extraLifeGranted,\n failed: NextQuestionPart.propTypes.failed,\n gameOver: NextQuestionPart.propTypes.gameOver,\n lives: NextQuestionPart.propTypes.lives,\n title: CorrectionPart.propTypes.title,\n subtitle: CorrectionPart.propTypes.subtitle,\n animated: CorrectionPart.propTypes.animated,\n stars: CorrectionPart.propTypes.stars,\n rank: CorrectionPart.propTypes.rank,\n corrections: CorrectionPart.propTypes.corrections\n};\n\nexport default PopinHeader;\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-player/popin-header/index.js"],"names":["separator","index","style","answerSeparator","joinBySeparator","elements","separators","length","AnswersCorrection","corrections","answers","map","correction","key","isCorrect","correctAnswer","wrongAnswer","innerHTML","__html","answer","fullAnswer","propTypes","PropTypes","arrayOf","shape","string","isRequired","bool","formatPlusSign","value","Rank","failed","rank","animated","onAnimationEnd","skin","positive","centerContent","bumped","iconBubble","icon","iconText","EASE_OUT_CUBIC","progress","Animation","contextTypes","Provider","childContextTypes","Stars","stars","Lifes","lives","revival","life","Life","count","IconsPart","props","iconsWrapper","AnimationScheduler","buildClass","success","loading","mode","scormStyle","getLinkStyle","gameOver","extraLifeGranted","oneMoreLife","renderIconStatusScorm","iconCloseContainer","iconSuccessContainer","failIcon","checkIcon","buildDefaultOrScormStyle","defaultStyle","styleScorm","failedStyle","CorrectionPart","title","subtitle","isLoading","className","correctionSectionEndSuccess","correctionSectionSuccess","correctionSectionFailGameOver","correctionSectionFail","correctionSectionLoading","resultContenantContainerScorm","titlesWrapper","titlesWrapperScorm","resultTitleScorm","resultSubtitleScorm","statusPlayerResultFailScorm","NextQuestionPart","context","cta","type","nextStepTitle","showNextLevel","linkProps","dataNext","nextStep","gameOverSubtitle","nextSection","wrapperNextSection","nextButton","nextButtonIcon","Link","oneOf","number","PopinHeader","state","nextLink","header","headerWithoutCTA","headerTitle"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n compact,\n flatten,\n get,\n isNil,\n pipe,\n times,\n zip,\n round,\n parseInt as _parseInt,\n multiply,\n isEmpty\n} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaCompositionCoorpacademyCharts as ChartsIcon,\n NovaCompositionCoorpacademyStar as StarIcon,\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaSolidStatusClose as Close\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Loader from '../../../atom/loader';\nimport Life from '../../../atom/life';\nimport Link from '../../../atom/link';\nimport Animation, {EASE_OUT_CUBIC} from '../../../hoc/animation';\nimport Transition from '../../../hoc/transition';\nimport AnimationScheduler, {AnimationAdapter} from '../../../hoc/animation-scheduler';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport style from './style.css';\n\nconst separator = index => (\n <span key={index} className={style.answerSeparator}>\n /\n </span>\n);\n\nconst joinBySeparator = elements => {\n const separators = times(separator, elements.length - 1);\n return pipe(zip, flatten, compact)(elements, separators);\n};\n\nconst AnswersCorrection = ({corrections}) => {\n const answers = corrections.map((correction, index) => {\n const key = `answer_${index}`;\n return (\n <span\n key={key}\n data-name=\"answer\"\n data-correct={correction.isCorrect}\n className={classnames(\n correction.isCorrect ? style.correctAnswer : style.wrongAnswer,\n innerHTML\n )}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: correction.answer}}\n />\n );\n }, corrections);\n return <p className={style.fullAnswer}>{joinBySeparator(answers)}</p>;\n};\n\nAnswersCorrection.propTypes = {\n corrections: PropTypes.arrayOf(\n PropTypes.shape({\n answer: PropTypes.string.isRequired,\n isCorrect: PropTypes.bool.isRequired\n })\n )\n};\n\nconst formatPlusSign = value => (value >= 0 ? '+' : '') + value;\n\nconst Rank = ({failed, rank, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(rank)) return null;\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <ChartsIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(rank)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nRank.propTypes = {\n failed: PropTypes.bool,\n rank: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nRank.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Stars = ({failed, stars, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(stars)) return null;\n\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <StarIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span data-name=\"iconText\" className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(stars)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nStars.propTypes = {\n failed: PropTypes.bool,\n stars: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nStars.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Lifes = ({lives, failed, animated, revival}) => {\n if (isNil(lives)) return null;\n\n return (\n <Life\n failed={failed}\n count={lives}\n animated={animated}\n revival={revival}\n className={style.life}\n />\n );\n};\n\nLifes.propTypes = {\n lives: Life.propTypes.count,\n failed: Life.propTypes.failed,\n animated: Life.propTypes.animated,\n revival: Life.propTypes.revival\n};\n\nconst IconsPart = props => {\n const {lives, failed, stars, rank, animated, revival} = props;\n return (\n <AnimationScheduler animated>\n <div className={style.iconsWrapper}>\n <Lifes lives={lives} failed={failed} animated={animated} revival={revival} />\n\n <AnimationAdapter name=\"stars\">\n <Stars stars={stars} fail={failed} />\n </AnimationAdapter>\n <AnimationAdapter name=\"rank\" after=\"stars\">\n <Rank rank={rank} fail={failed} />\n </AnimationAdapter>\n </div>\n </AnimationScheduler>\n );\n};\n\nIconsPart.propTypes = {\n lives: Lifes.propTypes.lives,\n failed: Lifes.propTypes.failed,\n stars: Stars.propTypes.stars,\n rank: Rank.propTypes.rank,\n animated: AnimationScheduler.propTypes.animated,\n revival: PropTypes.bool\n};\n\nconst buildClass = (value, success, failed, loading, mode = 'default', scormStyle) => {\n if (loading && isNil(value)) return loading;\n if (mode === 'scorm') return scormStyle;\n return value ? failed : success;\n};\n\nconst getLinkStyle = ({gameOver, extraLifeGranted}) => {\n if (extraLifeGranted) {\n return style.oneMoreLife;\n } else if (gameOver) {\n return style.gameOver;\n } else {\n return null;\n }\n};\nconst renderIconStatusScorm = failed => {\n return (\n <div className={failed ? style.iconCloseContainer : style.iconSuccessContainer}>\n {failed ? <Close className={style.failIcon} /> : <CheckIcon className={style.checkIcon} />}\n </div>\n );\n};\nconst buildDefaultOrScormStyle = (\n defaultStyle,\n mode = 'default',\n styleScorm,\n failed,\n failedStyle = null\n) => {\n if (mode === 'scorm' && failed && failedStyle) return failedStyle;\n if (mode === 'scorm') return styleScorm;\n return defaultStyle;\n};\nconst CorrectionPart = props => {\n const {failed, corrections, title, subtitle, stars, rank, gameOver, mode = 'default'} = props;\n const isLoading = isNil(failed);\n const className = buildClass(\n failed,\n stars && rank ? style.correctionSectionEndSuccess : style.correctionSectionSuccess,\n gameOver ? style.correctionSectionFailGameOver : style.correctionSectionFail,\n style.correctionSectionLoading,\n mode,\n style.resultContenantContainerScorm\n );\n return (\n <div data-name=\"correctionSection\" className={className}>\n {mode === 'scorm' && renderIconStatusScorm(failed)}\n <div\n className={buildDefaultOrScormStyle(\n style.titlesWrapper,\n mode,\n style.titlesWrapperScorm,\n failed\n )}\n >\n {isLoading ? <Loader /> : null}\n <h1\n data-name=\"title\"\n className={buildDefaultOrScormStyle(\n classnames(style.title, innerHTML),\n mode,\n style.resultTitleScorm,\n failed\n )}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <h2\n className={buildDefaultOrScormStyle(\n style.subtitle,\n mode,\n style.resultSubtitleScorm,\n failed,\n style.statusPlayerResultFailScorm\n )}\n >\n {subtitle}\n </h2>\n {failed && !isEmpty(corrections) ? <AnswersCorrection corrections={corrections} /> : null}\n </div>\n <IconsPart {...props} />\n </div>\n );\n};\n\nCorrectionPart.propTypes = {\n ...IconsPart.propTypes,\n failed: PropTypes.bool,\n corrections: AnswersCorrection.propTypes.corrections,\n title: PropTypes.string,\n subtitle: PropTypes.string,\n stars: PropTypes.string,\n rank: PropTypes.string,\n gameOver: PropTypes.bool\n};\n\nconst NextQuestionPart = (props, context) => {\n const {cta, type, extraLifeGranted, gameOver, failed = false, lives = 0} = props;\n const {title, nextStepTitle, showNextLevel = false, ...linkProps} = cta || {};\n let dataNext;\n\n switch (type) {\n case 'popinCorrection': {\n if (gameOver) {\n dataNext = 'game-over';\n } else if (failed) {\n if (lives > 0) {\n dataNext = 'continue-failure';\n } else if (extraLifeGranted) {\n dataNext = 'continue-used-extra-life';\n }\n } else {\n dataNext = 'continue-success';\n }\n break;\n }\n\n case 'popinEnd': {\n if (failed) {\n dataNext = 'redo-content';\n } else if (showNextLevel) {\n dataNext = 'next-level';\n } else {\n dataNext = 'home';\n }\n }\n }\n\n const nextStep = nextStepTitle ? (\n <div\n className={classnames(gameOver ? style.gameOverSubtitle : style.nextStepTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: nextStepTitle}}\n />\n ) : null;\n\n return (\n <Link\n {...linkProps}\n className={classnames(style.nextSection, getLinkStyle({gameOver, extraLifeGranted}))}\n data-name=\"nextLink\"\n data-popin={type}\n data-next={dataNext}\n >\n <div className={style.wrapperNextSection}>\n <div className={style.nextButton}>\n {title}\n <ArrowRight color=\"inherit\" className={style.nextButtonIcon} />\n </div>\n {nextStep}\n </div>\n </Link>\n );\n};\n\nNextQuestionPart.propTypes = {\n cta: PropTypes.shape({\n ...Link.propTypes,\n title: PropTypes.string,\n nextStepTitle: PropTypes.string,\n showNextLevel: PropTypes.bool\n }),\n type: PropTypes.oneOf(['popinCorrection', 'popinEnd']).isRequired,\n extraLifeGranted: PropTypes.bool,\n gameOver: PropTypes.bool,\n failed: PropTypes.bool,\n lives: PropTypes.number\n};\n\nconst PopinHeader = (props, context) => {\n const {\n animated,\n failed,\n title,\n subtitle,\n lives,\n stars,\n rank,\n corrections,\n cta,\n extraLifeGranted,\n gameOver = false,\n type,\n mode = 'default'\n } = props;\n\n const state = buildClass(failed, 'success', 'failed', null);\n\n const nextLink = cta ? (\n <NextQuestionPart\n cta={cta}\n type={type}\n extraLifeGranted={extraLifeGranted}\n failed={failed}\n gameOver={gameOver}\n lives={lives}\n />\n ) : null;\n\n return (\n <div\n className={cta ? style.header : style.headerWithoutCTA}\n data-name=\"popinHeader\"\n data-state={state}\n >\n <div className={mode !== 'scorm' ? style.headerTitle : null}>\n <CorrectionPart\n title={title}\n subtitle={subtitle}\n lives={lives}\n animated={animated}\n stars={stars}\n rank={rank}\n failed={failed}\n gameOver={gameOver}\n revival={extraLifeGranted}\n corrections={corrections}\n mode={mode}\n />\n {nextLink}\n </div>\n </div>\n );\n};\n\nPopinHeader.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nPopinHeader.propTypes = {\n cta: NextQuestionPart.propTypes.cta,\n type: NextQuestionPart.propTypes.type,\n extraLifeGranted: NextQuestionPart.propTypes.extraLifeGranted,\n failed: NextQuestionPart.propTypes.failed,\n gameOver: NextQuestionPart.propTypes.gameOver,\n lives: NextQuestionPart.propTypes.lives,\n title: CorrectionPart.propTypes.title,\n subtitle: CorrectionPart.propTypes.subtitle,\n animated: CorrectionPart.propTypes.animated,\n stars: CorrectionPart.propTypes.stars,\n rank: CorrectionPart.propTypes.rank,\n corrections: CorrectionPart.propTypes.corrections,\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nexport default PopinHeader;\n"],"file":"index.js"}
|
|
@@ -10,6 +10,12 @@
|
|
|
10
10
|
@value dark from colors;
|
|
11
11
|
@value black from colors;
|
|
12
12
|
@value transparent from colors;
|
|
13
|
+
@value cm_grey_75 from colors;
|
|
14
|
+
@value lightGreen from colors;
|
|
15
|
+
@value cm_green_50 from colors;
|
|
16
|
+
@value cm_negative_100 from colors;
|
|
17
|
+
@value cm_negative_50 from colors;
|
|
18
|
+
@value white from colors;
|
|
13
19
|
|
|
14
20
|
.header {
|
|
15
21
|
display: flex;
|
|
@@ -86,6 +92,14 @@
|
|
|
86
92
|
color: white;
|
|
87
93
|
}
|
|
88
94
|
|
|
95
|
+
.titlesWrapperScorm {
|
|
96
|
+
display: flex;
|
|
97
|
+
justify-content: center;
|
|
98
|
+
flex-direction: column-reverse;
|
|
99
|
+
color: white;
|
|
100
|
+
height: 20px;
|
|
101
|
+
}
|
|
102
|
+
|
|
89
103
|
.titleElement {
|
|
90
104
|
margin: 0;
|
|
91
105
|
font-weight: normal;
|
|
@@ -185,6 +199,78 @@
|
|
|
185
199
|
padding: 0 20px 0 10px;
|
|
186
200
|
}
|
|
187
201
|
|
|
202
|
+
.resultContenantContainerScorm {
|
|
203
|
+
width: 884px;
|
|
204
|
+
height: 158px;
|
|
205
|
+
border: 1px solid cm_grey_75;
|
|
206
|
+
display: flex;
|
|
207
|
+
align-items: center;
|
|
208
|
+
background-color: white;
|
|
209
|
+
position: relative;
|
|
210
|
+
z-index: 2;
|
|
211
|
+
flex-wrap: wrap;
|
|
212
|
+
}
|
|
213
|
+
.resultSubtitleScorm {
|
|
214
|
+
font-family: "Gilroy";
|
|
215
|
+
font-style: normal;
|
|
216
|
+
font-weight: 700;
|
|
217
|
+
font-size: 42px;
|
|
218
|
+
line-height: 52px;
|
|
219
|
+
color: lightGreen;
|
|
220
|
+
margin-bottom: 0px;
|
|
221
|
+
margin-top: 0px;
|
|
222
|
+
}
|
|
223
|
+
.resultTitleScorm {
|
|
224
|
+
font-family: "Gilroy";
|
|
225
|
+
font-style: normal;
|
|
226
|
+
font-weight: 500;
|
|
227
|
+
font-size: 16px;
|
|
228
|
+
line-height: 22px;
|
|
229
|
+
color: dark;
|
|
230
|
+
margin-top: 4px;
|
|
231
|
+
}
|
|
232
|
+
.statusPlayerResultFailScorm {
|
|
233
|
+
font-family: "Gilroy";
|
|
234
|
+
font-style: normal;
|
|
235
|
+
font-weight: 700;
|
|
236
|
+
font-size: 42px;
|
|
237
|
+
line-height: 52px;
|
|
238
|
+
color: cm_negative_100;
|
|
239
|
+
margin-top: 0px;
|
|
240
|
+
margin-bottom: 0px;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
.iconCloseContainer {
|
|
244
|
+
height: 60px;
|
|
245
|
+
width: 60px;
|
|
246
|
+
border-radius: 50%;
|
|
247
|
+
background-color: cm_negative_50;
|
|
248
|
+
display: flex;
|
|
249
|
+
justify-content: center;
|
|
250
|
+
align-items: center;
|
|
251
|
+
margin: 0 24px 0 40px
|
|
252
|
+
}
|
|
253
|
+
.iconSuccessContainer {
|
|
254
|
+
height: 60px;
|
|
255
|
+
width: 60px;
|
|
256
|
+
border-radius: 50%;
|
|
257
|
+
background-color: cm_green_50;
|
|
258
|
+
display: flex;
|
|
259
|
+
justify-content: center;
|
|
260
|
+
align-items: center;
|
|
261
|
+
margin: 0 24px 0 40px
|
|
262
|
+
}
|
|
263
|
+
.failIcon {
|
|
264
|
+
color: cm_negative_100;
|
|
265
|
+
height: 22px;
|
|
266
|
+
width: 22px;
|
|
267
|
+
}
|
|
268
|
+
.checkIcon {
|
|
269
|
+
color: lightGreen;
|
|
270
|
+
height: 22px;
|
|
271
|
+
width: 22px;
|
|
272
|
+
}
|
|
273
|
+
|
|
188
274
|
/*
|
|
189
275
|
* Next Question Part
|
|
190
276
|
*/
|
|
@@ -351,6 +437,9 @@
|
|
|
351
437
|
.correctionSectionEndSuccess .titleElement {
|
|
352
438
|
padding-right: 130px;
|
|
353
439
|
}
|
|
440
|
+
.resultContenantContainerScorm {
|
|
441
|
+
width: 100vw
|
|
442
|
+
}
|
|
354
443
|
}
|
|
355
444
|
|
|
356
445
|
@media mobile {
|
|
@@ -400,4 +489,8 @@
|
|
|
400
489
|
.nextStepTitle {
|
|
401
490
|
width: 177px;
|
|
402
491
|
}
|
|
492
|
+
.iconCloseContainer,
|
|
493
|
+
.iconSuccessContainer {
|
|
494
|
+
margin: auto;
|
|
495
|
+
}
|
|
403
496
|
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
|
|
10
|
+
var _cmPopin = _interopRequireDefault(require("../../../molecule/cm-popin"));
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
const PopinNoAccess = props => {
|
|
15
|
+
const {
|
|
16
|
+
content,
|
|
17
|
+
icon,
|
|
18
|
+
backgroundImageUrl,
|
|
19
|
+
descriptionText
|
|
20
|
+
} = props;
|
|
21
|
+
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_cmPopin.default, {
|
|
22
|
+
content: content,
|
|
23
|
+
icon: icon,
|
|
24
|
+
backgroundImageUrl: backgroundImageUrl,
|
|
25
|
+
descriptionText: descriptionText
|
|
26
|
+
}));
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
PopinNoAccess.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
30
|
+
content: _propTypes.default.string,
|
|
31
|
+
icon: _propTypes.default.string,
|
|
32
|
+
backgroundImageUrl: _propTypes.default.string,
|
|
33
|
+
descriptionText: _propTypes.default.string
|
|
34
|
+
} : {};
|
|
35
|
+
var _default = PopinNoAccess;
|
|
36
|
+
exports.default = _default;
|
|
37
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-player/popin-no-access/index.js"],"names":["PopinNoAccess","props","content","icon","backgroundImageUrl","descriptionText","propTypes","PropTypes","string"],"mappings":";;;;;AAAA;;AACA;;AACA;;;;AAEA,MAAMA,aAAa,GAAGC,KAAK,IAAI;AAC7B,QAAM;AAACC,IAAAA,OAAD;AAAUC,IAAAA,IAAV;AAAgBC,IAAAA,kBAAhB;AAAoCC,IAAAA;AAApC,MAAuDJ,KAA7D;AACA,sBACE,uDACE,6BAAC,gBAAD;AACE,IAAA,OAAO,EAAEC,OADX;AAEE,IAAA,IAAI,EAAEC,IAFR;AAGE,IAAA,kBAAkB,EAAEC,kBAHtB;AAIE,IAAA,eAAe,EAAEC;AAJnB,IADF,CADF;AAUD,CAZD;;AAcAL,aAAa,CAACM,SAAd,2CAA0B;AACxBJ,EAAAA,OAAO,EAAEK,mBAAUC,MADK;AAExBL,EAAAA,IAAI,EAAEI,mBAAUC,MAFQ;AAGxBJ,EAAAA,kBAAkB,EAAEG,mBAAUC,MAHN;AAIxBH,EAAAA,eAAe,EAAEE,mBAAUC;AAJH,CAA1B;eAOeR,a","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CMPopin from '../../../molecule/cm-popin';\n\nconst PopinNoAccess = props => {\n const {content, icon, backgroundImageUrl, descriptionText} = props;\n return (\n <div>\n <CMPopin\n content={content}\n icon={icon}\n backgroundImageUrl={backgroundImageUrl}\n descriptionText={descriptionText}\n />\n </div>\n );\n};\n\nPopinNoAccess.propTypes = {\n content: PropTypes.string,\n icon: PropTypes.string,\n backgroundImageUrl: PropTypes.string,\n descriptionText: PropTypes.string\n};\n\nexport default PopinNoAccess;\n"],"file":"index.js"}
|
|
@@ -5,12 +5,15 @@ exports.default = void 0;
|
|
|
5
5
|
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
|
|
8
|
+
var _typings = require("./typings");
|
|
9
|
+
|
|
8
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
11
|
|
|
10
12
|
const DemoTs = ({
|
|
11
13
|
plop
|
|
12
14
|
}) => /*#__PURE__*/_react.default.createElement("p", null, plop);
|
|
13
15
|
|
|
16
|
+
DemoTs.propTypes = process.env.NODE_ENV !== "production" ? _typings.propTypes : {};
|
|
14
17
|
var _default = DemoTs;
|
|
15
18
|
exports.default = _default;
|
|
16
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/template/app-review/demo-ts/index.tsx"],"names":["DemoTs","plop"],"mappings":";;;;;AAAA;;;;
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-review/demo-ts/index.tsx"],"names":["DemoTs","plop","propTypes"],"mappings":";;;;;AAAA;;AACA;;;;AAEA,MAAMA,MAAgC,GAAG,CAAC;AAACC,EAAAA;AAAD,CAAD,kBAAmB,wCAAIA,IAAJ,CAA5D;;AAEAD,MAAM,CAACE,SAAP,2CAAmBA,kBAAnB;eAEeF,M","sourcesContent":["import React, {FunctionComponent} from 'react';\nimport {Props, propTypes} from './typings';\n\nconst DemoTs: FunctionComponent<Props> = ({plop}: Props) => <p>{plop}</p>;\n\nDemoTs.propTypes = propTypes;\n\nexport default DemoTs;\n"],"file":"index.js"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
const DemoTs = ({
|
|
13
|
+
plop
|
|
14
|
+
}) => /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, plop));
|
|
15
|
+
|
|
16
|
+
var _default = DemoTs;
|
|
17
|
+
exports.default = _default;
|
|
18
|
+
//# sourceMappingURL=index.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-review/demo-ts/index.native.tsx"],"names":["DemoTs","plop"],"mappings":";;;;;AAAA;;AACA;;;;AAGA,MAAMA,MAAM,GAAG,CAAC;AAACC,EAAAA;AAAD,CAAD,kBACb,6BAAC,iBAAD,qBACE,6BAAC,iBAAD,QAAOA,IAAP,CADF,CADF;;eAMeD,M","sourcesContent":["import React from 'react';\nimport {View, Text} from 'react-native';\nimport {Props} from './typings';\n\nconst DemoTs = ({plop}: Props) => (\n <View>\n <Text>{plop}</Text>\n </View>\n);\n\nexport default DemoTs;\n"],"file":"index.native.js"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.propTypes = void 0;
|
|
5
|
+
|
|
6
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
7
|
+
|
|
8
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
|
+
|
|
10
|
+
const propTypes = {
|
|
11
|
+
plop: _propTypes.default.string,
|
|
12
|
+
plip: _propTypes.default.number,
|
|
13
|
+
onClick: _propTypes.default.func
|
|
14
|
+
};
|
|
15
|
+
exports.propTypes = propTypes;
|
|
16
|
+
//# sourceMappingURL=typings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-review/demo-ts/typings.ts"],"names":["propTypes","plop","PropTypes","string","plip","number","onClick","func"],"mappings":";;;;;AAAA;;;;AAEO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAEC,mBAAUC,MADO;AAEvBC,EAAAA,IAAI,EAAEF,mBAAUG,MAFO;AAGvBC,EAAAA,OAAO,EAAEJ,mBAAUK;AAHI,CAAlB","sourcesContent":["import PropTypes from 'prop-types';\n\nexport const propTypes = {\n plop: PropTypes.string,\n plip: PropTypes.number,\n onClick: PropTypes.func\n};\n\nexport type Props = PropTypes.InferProps<typeof propTypes>;\n"],"file":"typings.js"}
|
|
@@ -5,6 +5,8 @@ exports.default = void 0;
|
|
|
5
5
|
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
|
|
8
|
+
var _loader = _interopRequireDefault(require("../../atom/loader"));
|
|
9
|
+
|
|
8
10
|
var _onboarding = _interopRequireDefault(require("./onboarding"));
|
|
9
11
|
|
|
10
12
|
var _skills = _interopRequireDefault(require("./skills"));
|
|
@@ -42,6 +44,9 @@ const AppReview = (_ref) => {
|
|
|
42
44
|
|
|
43
45
|
case _propTypes.ViewNames.slides:
|
|
44
46
|
return /*#__PURE__*/_react.default.createElement(_slides.default, _extends({}, slides, dispachers));
|
|
47
|
+
|
|
48
|
+
default:
|
|
49
|
+
return /*#__PURE__*/_react.default.createElement(_loader.default, null);
|
|
45
50
|
}
|
|
46
51
|
};
|
|
47
52
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/app-review/index.js"],"names":["AppReview","viewName","onboarding","skills","slides","dispachers","ViewNames","propTypes"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA;AAEA,MAAMA,SAAS,GAAG,UAA2D;AAAA,MAA1D;AAACC,IAAAA,QAAD;AAAWC,IAAAA,UAAX;AAAuBC,IAAAA,MAAvB;AAA+BC,IAAAA;AAA/B,GAA0D;AAAA,MAAhBC,UAAgB;;AAC3E,UAAQJ,QAAR;AACE,SAAKK,qBAAUH,MAAf;AACE,0BAAO,6BAAC,eAAD,eAAYA,MAAZ,EAAwBE,UAAxB,EAAP;;AACF,SAAKC,qBAAUJ,UAAf;AACE,0BAAO,6BAAC,mBAAD,eAAgBA,UAAhB,EAAgCG,UAAhC,EAAP;;AACF,SAAKC,qBAAUF,MAAf;AACE,0BAAO,6BAAC,eAAD,eAAYA,MAAZ,EAAwBC,UAAxB,EAAP;
|
|
1
|
+
{"version":3,"sources":["../../../src/template/app-review/index.js"],"names":["AppReview","viewName","onboarding","skills","slides","dispachers","ViewNames","propTypes"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA;AAEA,MAAMA,SAAS,GAAG,UAA2D;AAAA,MAA1D;AAACC,IAAAA,QAAD;AAAWC,IAAAA,UAAX;AAAuBC,IAAAA,MAAvB;AAA+BC,IAAAA;AAA/B,GAA0D;AAAA,MAAhBC,UAAgB;;AAC3E,UAAQJ,QAAR;AACE,SAAKK,qBAAUH,MAAf;AACE,0BAAO,6BAAC,eAAD,eAAYA,MAAZ,EAAwBE,UAAxB,EAAP;;AACF,SAAKC,qBAAUJ,UAAf;AACE,0BAAO,6BAAC,mBAAD,eAAgBA,UAAhB,EAAgCG,UAAhC,EAAP;;AACF,SAAKC,qBAAUF,MAAf;AACE,0BAAO,6BAAC,eAAD,eAAYA,MAAZ,EAAwBC,UAAxB,EAAP;;AACF;AACE,0BAAO,6BAAC,eAAD,OAAP;AARJ;AAUD,CAXD;;AAaAL,SAAS,CAACO,SAAV,2CAAsBA,kBAAtB,M,CAEA;;eAEeP,S","sourcesContent":["import React from 'react';\nimport Loader from '../../atom/loader';\nimport Onboarding from './onboarding';\nimport Skills from './skills';\nimport Slides from './slides';\nimport propTypes, {ViewNames} from './prop-types';\n\n// -----------------------------------------------------------------------------\n\nconst AppReview = ({viewName, onboarding, skills, slides, ...dispachers}) => {\n switch (viewName) {\n case ViewNames.skills:\n return <Skills {...skills} {...dispachers} />;\n case ViewNames.onboarding:\n return <Onboarding {...onboarding} {...dispachers} />;\n case ViewNames.slides:\n return <Slides {...slides} {...dispachers} />;\n default:\n return <Loader />;\n }\n};\n\nAppReview.propTypes = propTypes;\n\n// -----------------------------------------------------------------------------\n\nexport default AppReview;\n"],"file":"index.js"}
|
|
@@ -38,22 +38,12 @@ const Switch = (_ref) => {
|
|
|
38
38
|
} = _ref,
|
|
39
39
|
dispachers = _objectWithoutPropertiesLoose(_ref, ["viewName", "onboarding", "skills", "slides"]);
|
|
40
40
|
|
|
41
|
-
const {
|
|
42
|
-
navigateTo
|
|
43
|
-
} = dispachers;
|
|
44
|
-
|
|
45
|
-
const handlePress = v => () => navigateTo(v);
|
|
46
|
-
|
|
47
41
|
switch (viewName) {
|
|
48
42
|
case _propTypes.ViewNames.home:
|
|
49
|
-
return /*#__PURE__*/_react.default.createElement(_reactNative.
|
|
50
|
-
onPress: handlePress('onboarding')
|
|
51
|
-
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, "view home"));
|
|
43
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, "view home");
|
|
52
44
|
|
|
53
45
|
case _propTypes.ViewNames.onboarding:
|
|
54
|
-
return /*#__PURE__*/_react.default.createElement(_reactNative.
|
|
55
|
-
onPress: handlePress('quizzer')
|
|
56
|
-
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, "view onboarding"));
|
|
46
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, "view onboarding");
|
|
57
47
|
|
|
58
48
|
case _propTypes.ViewNames.slides:
|
|
59
49
|
return /*#__PURE__*/_react.default.createElement(_slides.default, _extends({}, slides, dispachers));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/app-review/index.native.js"],"names":["styles","StyleSheet","create","rootView","flex","alignItems","justifyContent","Switch","viewName","slides","dispachers","
|
|
1
|
+
{"version":3,"sources":["../../../src/template/app-review/index.native.js"],"names":["styles","StyleSheet","create","rootView","flex","alignItems","justifyContent","Switch","viewName","slides","dispachers","ViewNames","home","onboarding","AppReview","props","navigateBack","backAction","backHandler","BackHandler","addEventListener","remove","propTypes"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA;AAEA,MAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,IAAI,EAAE,CADE;AAERC,IAAAA,UAAU,EAAE,QAFJ;AAGRC,IAAAA,cAAc,EAAE;AAHR;AADqB,CAAlB,CAAf,C,CAQA;;;AAEA,MAAMC,MAAM,GAAG,UAA2D;AAAA,MAA1D;AAACC,IAAAA,QAAD;AAA+BC,IAAAA;AAA/B,GAA0D;AAAA,MAAhBC,UAAgB;;AACxE,UAAQF,QAAR;AACE,SAAKG,qBAAUC,IAAf;AACE,0BAAO,6BAAC,iBAAD,oBAAP;;AACF,SAAKD,qBAAUE,UAAf;AACE,0BAAO,6BAAC,iBAAD,0BAAP;;AACF,SAAKF,qBAAUF,MAAf;AACE,0BAAO,6BAAC,eAAD,eAAYA,MAAZ,EAAwBC,UAAxB,EAAP;;AACF;AACE,0BAAO,6BAAC,iBAAD,+BAAP;AARJ;AAUD,CAXD,C,CAaA;;;AAEA,MAAMI,SAAS,GAAGC,KAAK,IAAI;AACzB,QAAM;AAACC,IAAAA;AAAD,MAAiBD,KAAvB;AAEA,wBAAU,MAAM;AACd,UAAME,UAAU,GAAG,MAAM;AACvBD,MAAAA,YAAY;AACZ,aAAO,IAAP;AACD,KAHD,CADc,CAMd;;;AACA,UAAME,WAAW,GAAGC,yBAAYC,gBAAZ,CAA6B,mBAA7B,EAAkDH,UAAlD,CAApB;;AAEA,WAAO,MAAMC,WAAW,CAACG,MAAZ,EAAb;AACD,GAVD,EAUG,CAACL,YAAD,CAVH;AAYA,sBACE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEhB,MAAM,CAACG;AAApB,kBACE,6BAAC,MAAD,EAAYY,KAAZ,CADF,CADF;AAKD,CApBD,C,CAsBA;;;AAEAD,SAAS,CAACQ,SAAV,2CAAsBA,kBAAtB;AACAf,MAAM,CAACe,SAAP,2CAAmBR,SAAS,CAACQ,SAA7B,M,CAEA;;eAEeR,S","sourcesContent":["import React, {useEffect} from 'react';\nimport {Text, StyleSheet, View, BackHandler} from 'react-native';\nimport propTypes, {ViewNames} from './prop-types';\nimport Slides from './slides';\n\n// -----------------------------------------------------------------------------\n\nconst styles = StyleSheet.create({\n rootView: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center'\n }\n});\n\n// -----------------------------------------------------------------------------\n\nconst Switch = ({viewName, onboarding, skills, slides, ...dispachers}) => {\n switch (viewName) {\n case ViewNames.home:\n return <Text>view home</Text>;\n case ViewNames.onboarding:\n return <Text>view onboarding</Text>;\n case ViewNames.slides:\n return <Slides {...slides} {...dispachers} />;\n default:\n return <Text>view (none selected)</Text>;\n }\n};\n\n// -----------------------------------------------------------------------------\n\nconst AppReview = props => {\n const {navigateBack} = props;\n\n useEffect(() => {\n const backAction = () => {\n navigateBack();\n return true;\n };\n\n // https://reactnative.dev/docs/backhandler\n const backHandler = BackHandler.addEventListener('hardwareBackPress', backAction);\n\n return () => backHandler.remove();\n }, [navigateBack]);\n\n return (\n <View style={styles.rootView}>\n <Switch {...props} />\n </View>\n );\n};\n\n// -----------------------------------------------------------------------------\n\nAppReview.propTypes = propTypes;\nSwitch.propTypes = AppReview.propTypes;\n\n// -----------------------------------------------------------------------------\n\nexport default AppReview;\n"],"file":"index.native.js"}
|
|
@@ -20,7 +20,8 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
|
|
|
20
20
|
const ViewNames = {
|
|
21
21
|
skills: 'skills',
|
|
22
22
|
onboarding: 'onboarding',
|
|
23
|
-
slides: 'slides'
|
|
23
|
+
slides: 'slides',
|
|
24
|
+
default: 'loader'
|
|
24
25
|
};
|
|
25
26
|
exports.ViewNames = ViewNames;
|
|
26
27
|
var _default = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/app-review/prop-types.js"],"names":["ViewNames","skills","onboarding","slides","viewName","PropTypes","oneOf","shape","Onboarding","propTypes","Skills","Slides"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,MAAM,EAAE,QADe;AAEvBC,EAAAA,UAAU,EAAE,YAFW;AAGvBC,EAAAA,MAAM,EAAE;
|
|
1
|
+
{"version":3,"sources":["../../../src/template/app-review/prop-types.js"],"names":["ViewNames","skills","onboarding","slides","default","viewName","PropTypes","oneOf","shape","Onboarding","propTypes","Skills","Slides"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,MAAM,EAAE,QADe;AAEvBC,EAAAA,UAAU,EAAE,YAFW;AAGvBC,EAAAA,MAAM,EAAE,QAHe;AAIvBC,EAAAA,OAAO,EAAE;AAJc,CAAlB;;eAOQ;AACbC,EAAAA,QAAQ,EAAEC,mBAAUC,KAAV,CAAgB,mBAAKP,SAAL,CAAhB,CADG;AAEbE,EAAAA,UAAU,EAAEI,mBAAUE,KAAV,cAAoBC,oBAAWC,SAA/B,EAFC;AAGbT,EAAAA,MAAM,EAAEK,mBAAUE,KAAV,cAAoBG,gBAAOD,SAA3B,EAHK;AAIbP,EAAAA,MAAM,EAAEG,mBAAUE,KAAV,cAAoBI,gBAAOF,SAA3B;AAJK,C","sourcesContent":["import PropTypes from 'prop-types';\nimport keys from 'lodash/fp/keys';\nimport Onboarding from './onboarding';\nimport Skills from './skills';\nimport Slides from './slides';\n\nexport const ViewNames = {\n skills: 'skills',\n onboarding: 'onboarding',\n slides: 'slides',\n default: 'loader'\n};\n\nexport default {\n viewName: PropTypes.oneOf(keys(ViewNames)),\n onboarding: PropTypes.shape({...Onboarding.propTypes}),\n skills: PropTypes.shape({...Skills.propTypes}),\n slides: PropTypes.shape({...Slides.propTypes})\n};\n"],"file":"prop-types.js"}
|
|
@@ -289,9 +289,9 @@ const SlidesReview = ({
|
|
|
289
289
|
(0, _react.useEffect)(
|
|
290
290
|
/* istanbul ignore next */
|
|
291
291
|
() => {
|
|
292
|
-
const slideNumber = (0, _get.default)('slideNumber', progression);
|
|
292
|
+
const slideNumber = (0, _get.default)('slideNumber', progression); // temporal fix, should check for new slides in the state && then update
|
|
293
293
|
|
|
294
|
-
if (progression) {
|
|
294
|
+
if (progression && slideNumber !== 0) {
|
|
295
295
|
const hidden = (0, _getOr.default)(false, `${slideNumber}.hidden`, slides);
|
|
296
296
|
const endReview = (0, _getOr.default)(false, `${slideNumber}.endReview`, slides);
|
|
297
297
|
const position = (0, _get.default)(`${slideNumber}.position`, slides);
|