@coorpacademy/player-web 3.20.17 → 3.20.19
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.
|
@@ -81,7 +81,7 @@ const playerProps = (options, store) => {
|
|
|
81
81
|
disabled: !hasClue,
|
|
82
82
|
onClick: clickClueHandler
|
|
83
83
|
}];
|
|
84
|
-
services
|
|
84
|
+
(services == null ? void 0 : services.Coach) && buttons.push({
|
|
85
85
|
title: translate('Coach'),
|
|
86
86
|
type: 'coach',
|
|
87
87
|
disabled: availableCoaches === 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"player.js","names":["getClue","getCoaches","getCurrentClue","getCurrentContent","getCurrentSlide","getEngineConfig","getQuestionMedia","getRoute","hasSeenLesson","selectClue","selectRoute","startChat","validateAnswer","isQuestionCtaDisabled","getProgressionSteps","createGetAnswerProps","createGetHelp","createHeaderStateToProps","getResourcesProps","ROUTES","STARS_DIFF","media","clue","playerProps","options","store","createGetAnswerProps_","getResourcesProps_","createGetHelp_","createHeaderStateToProps_","state","translate","services","dispatch","engineConfig","slide","slideContext","currentContent","answer","mediaQuestion","route","resources","help","starsDiff","clickClueHandler","clickSeeClueHandler","clickBackToAnswerHandler","clickCTAHandler","hasClue","slideLessons","notifyNewMedia","notifyReviewLesson","contextButton","title","type","selected","onClick","availableCoaches","buttons","disabled","notify","Coach","push","headerProps","ctaButtonValidate","submitValue","light","small","name","secondary","ctaButtonBackToQuestion","typeClue","text","onClickSeeClue","question","step","backgroundUrl","verticalMargin","cta","answerType","model","showNewMedia","showReviewLesson","header"],"sources":["../../src/map-state-to-props/player.js"],"sourcesContent":["import {includes, isEmpty, get, isNil} from 'lodash/fp';\nimport {\n getClue,\n getCoaches,\n getCurrentClue,\n getCurrentContent,\n getCurrentSlide,\n getEngineConfig,\n getQuestionMedia,\n getRoute,\n hasSeenLesson,\n selectClue,\n selectRoute,\n startChat,\n validateAnswer,\n isQuestionCtaDisabled,\n getProgressionSteps\n} from '@coorpacademy/player-store';\nimport {createGetAnswerProps, createGetHelp} from './answer';\nimport createHeaderStateToProps from './header';\nimport getResourcesProps from './resources';\n\nconst ROUTES = ['media', 'clue', 'context', 'answer'];\n\nconst STARS_DIFF = {\n media: 'starsPerResourceViewed',\n clue: 'starsPerAskingClue'\n};\n\nconst playerProps = (options, store) => {\n const createGetAnswerProps_ = createGetAnswerProps(options, store);\n const getResourcesProps_ = getResourcesProps(options, store);\n const createGetHelp_ = createGetHelp(options, store);\n const createHeaderStateToProps_ = createHeaderStateToProps(options, store);\n\n return state => {\n const {translate, services} = options;\n const {dispatch} = store;\n\n const engineConfig = getEngineConfig(state);\n const slide = getCurrentSlide(state);\n const slideContext = get('context', slide);\n const currentContent = getCurrentContent(state);\n const answer = createGetAnswerProps_(state, slide);\n const mediaQuestion = getQuestionMedia(state);\n const clue = getCurrentClue(state) || null;\n const route = getRoute(state);\n const resources = getResourcesProps_(state, slide);\n const help = createGetHelp_(slide);\n const starsDiff = get(STARS_DIFF[route], engineConfig) || 0;\n const clickClueHandler = () => dispatch(selectClue);\n const clickSeeClueHandler = () => dispatch(getClue);\n const clickBackToAnswerHandler = () => dispatch(selectRoute('answer'));\n const clickCTAHandler = () => dispatch(validateAnswer());\n\n const hasClue = get('hasClue', slide);\n const slideLessons = get('lessons', slide);\n\n const notifyNewMedia = !isEmpty(slideLessons) && !hasSeenLesson(state);\n const notifyReviewLesson = !isEmpty(slideLessons) && hasSeenLesson(state);\n\n const contextButton = get('title', slideContext)\n ? [\n {\n title: translate('Context'),\n type: 'context',\n selected: route === 'context',\n onClick: () => {\n return dispatch(selectRoute('context'));\n }\n }\n ]\n : [];\n\n const availableCoaches = getCoaches(state);\n const buttons = [\n ...contextButton,\n {\n title: translate('Question'),\n type: 'question',\n selected: route === 'answer',\n onClick: clickBackToAnswerHandler\n },\n {\n title: translate('Media'),\n type: 'media',\n selected: route === 'media',\n disabled: isEmpty(slideLessons),\n onClick: () => dispatch(selectRoute('media')),\n notify: notifyNewMedia\n },\n {\n title: translate('Clue'),\n type: 'clue',\n selected: route === 'clue',\n disabled: !hasClue,\n onClick: clickClueHandler\n }\n ];\n services?.Coach &&\n buttons.push({\n title: translate('Coach'),\n type: 'coach',\n disabled: availableCoaches === 0,\n onClick: () => dispatch(startChat())\n });\n const headerProps = createHeaderStateToProps_(state);\n\n if (!includes(route, ROUTES)) {\n return {};\n }\n\n const ctaButtonValidate = {\n submitValue: translate('Validate'),\n onClick: clickCTAHandler,\n light: false,\n small: false,\n name: 'validateAnswerCTA',\n secondary: false,\n disabled: isQuestionCtaDisabled(state)\n };\n\n const ctaButtonBackToQuestion = {\n submitValue: translate(route === 'context' ? 'Go to question' : 'Back to question'),\n onClick: clickBackToAnswerHandler,\n light: false,\n small: false,\n name: 'backToQuestionCTA',\n secondary: true,\n disabled: false\n };\n\n return {\n typeClue: route,\n text: clue,\n onClickSeeClue: clickSeeClueHandler,\n question: get('question.header')(slide),\n step: getProgressionSteps(state),\n slideContext,\n backgroundUrl: get('backgroundUrl')(currentContent),\n verticalMargin: 260,\n starsDiff,\n resources,\n cta: route === 'answer' ? ctaButtonValidate : ctaButtonBackToQuestion,\n help,\n answerType: {\n model: answer,\n media: mediaQuestion\n },\n showNewMedia: (isNil(route) || route === 'answer') && notifyNewMedia,\n showReviewLesson: (isNil(route) || route === 'answer') && notifyReviewLesson,\n buttons,\n header: headerProps\n };\n };\n};\n\nexport default playerProps;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"player.js","names":["getClue","getCoaches","getCurrentClue","getCurrentContent","getCurrentSlide","getEngineConfig","getQuestionMedia","getRoute","hasSeenLesson","selectClue","selectRoute","startChat","validateAnswer","isQuestionCtaDisabled","getProgressionSteps","createGetAnswerProps","createGetHelp","createHeaderStateToProps","getResourcesProps","ROUTES","STARS_DIFF","media","clue","playerProps","options","store","createGetAnswerProps_","getResourcesProps_","createGetHelp_","createHeaderStateToProps_","state","translate","services","dispatch","engineConfig","slide","slideContext","currentContent","answer","mediaQuestion","route","resources","help","starsDiff","clickClueHandler","clickSeeClueHandler","clickBackToAnswerHandler","clickCTAHandler","hasClue","slideLessons","notifyNewMedia","notifyReviewLesson","contextButton","title","type","selected","onClick","availableCoaches","buttons","disabled","notify","Coach","push","headerProps","ctaButtonValidate","submitValue","light","small","name","secondary","ctaButtonBackToQuestion","typeClue","text","onClickSeeClue","question","step","backgroundUrl","verticalMargin","cta","answerType","model","showNewMedia","showReviewLesson","header"],"sources":["../../src/map-state-to-props/player.js"],"sourcesContent":["import {includes, isEmpty, get, isNil} from 'lodash/fp';\nimport {\n getClue,\n getCoaches,\n getCurrentClue,\n getCurrentContent,\n getCurrentSlide,\n getEngineConfig,\n getQuestionMedia,\n getRoute,\n hasSeenLesson,\n selectClue,\n selectRoute,\n startChat,\n validateAnswer,\n isQuestionCtaDisabled,\n getProgressionSteps\n} from '@coorpacademy/player-store';\nimport {createGetAnswerProps, createGetHelp} from './answer';\nimport createHeaderStateToProps from './header';\nimport getResourcesProps from './resources';\n\nconst ROUTES = ['media', 'clue', 'context', 'answer'];\n\nconst STARS_DIFF = {\n media: 'starsPerResourceViewed',\n clue: 'starsPerAskingClue'\n};\n\nconst playerProps = (options, store) => {\n const createGetAnswerProps_ = createGetAnswerProps(options, store);\n const getResourcesProps_ = getResourcesProps(options, store);\n const createGetHelp_ = createGetHelp(options, store);\n const createHeaderStateToProps_ = createHeaderStateToProps(options, store);\n\n return state => {\n const {translate, services} = options;\n const {dispatch} = store;\n\n const engineConfig = getEngineConfig(state);\n const slide = getCurrentSlide(state);\n const slideContext = get('context', slide);\n const currentContent = getCurrentContent(state);\n const answer = createGetAnswerProps_(state, slide);\n const mediaQuestion = getQuestionMedia(state);\n const clue = getCurrentClue(state) || null;\n const route = getRoute(state);\n const resources = getResourcesProps_(state, slide);\n const help = createGetHelp_(slide);\n const starsDiff = get(STARS_DIFF[route], engineConfig) || 0;\n const clickClueHandler = () => dispatch(selectClue);\n const clickSeeClueHandler = () => dispatch(getClue);\n const clickBackToAnswerHandler = () => dispatch(selectRoute('answer'));\n const clickCTAHandler = () => dispatch(validateAnswer());\n\n const hasClue = get('hasClue', slide);\n const slideLessons = get('lessons', slide);\n\n const notifyNewMedia = !isEmpty(slideLessons) && !hasSeenLesson(state);\n const notifyReviewLesson = !isEmpty(slideLessons) && hasSeenLesson(state);\n\n const contextButton = get('title', slideContext)\n ? [\n {\n title: translate('Context'),\n type: 'context',\n selected: route === 'context',\n onClick: () => {\n return dispatch(selectRoute('context'));\n }\n }\n ]\n : [];\n\n const availableCoaches = getCoaches(state);\n const buttons = [\n ...contextButton,\n {\n title: translate('Question'),\n type: 'question',\n selected: route === 'answer',\n onClick: clickBackToAnswerHandler\n },\n {\n title: translate('Media'),\n type: 'media',\n selected: route === 'media',\n disabled: isEmpty(slideLessons),\n onClick: () => dispatch(selectRoute('media')),\n notify: notifyNewMedia\n },\n {\n title: translate('Clue'),\n type: 'clue',\n selected: route === 'clue',\n disabled: !hasClue,\n onClick: clickClueHandler\n }\n ];\n services?.Coach &&\n buttons.push({\n title: translate('Coach'),\n type: 'coach',\n disabled: availableCoaches === 0,\n onClick: () => dispatch(startChat())\n });\n const headerProps = createHeaderStateToProps_(state);\n\n if (!includes(route, ROUTES)) {\n return {};\n }\n\n const ctaButtonValidate = {\n submitValue: translate('Validate'),\n onClick: clickCTAHandler,\n light: false,\n small: false,\n name: 'validateAnswerCTA',\n secondary: false,\n disabled: isQuestionCtaDisabled(state)\n };\n\n const ctaButtonBackToQuestion = {\n submitValue: translate(route === 'context' ? 'Go to question' : 'Back to question'),\n onClick: clickBackToAnswerHandler,\n light: false,\n small: false,\n name: 'backToQuestionCTA',\n secondary: true,\n disabled: false\n };\n\n return {\n typeClue: route,\n text: clue,\n onClickSeeClue: clickSeeClueHandler,\n question: get('question.header')(slide),\n step: getProgressionSteps(state),\n slideContext,\n backgroundUrl: get('backgroundUrl')(currentContent),\n verticalMargin: 260,\n starsDiff,\n resources,\n cta: route === 'answer' ? ctaButtonValidate : ctaButtonBackToQuestion,\n help,\n answerType: {\n model: answer,\n media: mediaQuestion\n },\n showNewMedia: (isNil(route) || route === 'answer') && notifyNewMedia,\n showReviewLesson: (isNil(route) || route === 'answer') && notifyReviewLesson,\n buttons,\n header: headerProps\n };\n };\n};\n\nexport default playerProps;\n"],"mappings":"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"}
|
|
@@ -92,7 +92,7 @@ const playerProps = (options, store) => {
|
|
|
92
92
|
disabled: !hasClue,
|
|
93
93
|
onClick: clickClueHandler
|
|
94
94
|
}];
|
|
95
|
-
services
|
|
95
|
+
(services == null ? void 0 : services.Coach) && buttons.push({
|
|
96
96
|
title: translate('Coach'),
|
|
97
97
|
type: 'coach',
|
|
98
98
|
disabled: availableCoaches === 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"player.js","names":["ROUTES","STARS_DIFF","media","clue","playerProps","options","store","createGetAnswerProps_","createGetAnswerProps","getResourcesProps_","getResourcesProps","createGetHelp_","createGetHelp","createHeaderStateToProps_","createHeaderStateToProps","state","translate","services","dispatch","engineConfig","getEngineConfig","slide","getCurrentSlide","slideContext","currentContent","getCurrentContent","answer","mediaQuestion","getQuestionMedia","getCurrentClue","route","getRoute","resources","help","starsDiff","clickClueHandler","selectClue","clickSeeClueHandler","getClue","clickBackToAnswerHandler","selectRoute","clickCTAHandler","validateAnswer","hasClue","slideLessons","notifyNewMedia","hasSeenLesson","notifyReviewLesson","contextButton","title","type","selected","onClick","availableCoaches","getCoaches","buttons","disabled","notify","Coach","push","startChat","headerProps","ctaButtonValidate","submitValue","light","small","name","secondary","isQuestionCtaDisabled","ctaButtonBackToQuestion","typeClue","text","onClickSeeClue","question","step","getProgressionSteps","backgroundUrl","verticalMargin","cta","answerType","model","showNewMedia","showReviewLesson","header"],"sources":["../../src/map-state-to-props/player.js"],"sourcesContent":["import {includes, isEmpty, get, isNil} from 'lodash/fp';\nimport {\n getClue,\n getCoaches,\n getCurrentClue,\n getCurrentContent,\n getCurrentSlide,\n getEngineConfig,\n getQuestionMedia,\n getRoute,\n hasSeenLesson,\n selectClue,\n selectRoute,\n startChat,\n validateAnswer,\n isQuestionCtaDisabled,\n getProgressionSteps\n} from '@coorpacademy/player-store';\nimport {createGetAnswerProps, createGetHelp} from './answer';\nimport createHeaderStateToProps from './header';\nimport getResourcesProps from './resources';\n\nconst ROUTES = ['media', 'clue', 'context', 'answer'];\n\nconst STARS_DIFF = {\n media: 'starsPerResourceViewed',\n clue: 'starsPerAskingClue'\n};\n\nconst playerProps = (options, store) => {\n const createGetAnswerProps_ = createGetAnswerProps(options, store);\n const getResourcesProps_ = getResourcesProps(options, store);\n const createGetHelp_ = createGetHelp(options, store);\n const createHeaderStateToProps_ = createHeaderStateToProps(options, store);\n\n return state => {\n const {translate, services} = options;\n const {dispatch} = store;\n\n const engineConfig = getEngineConfig(state);\n const slide = getCurrentSlide(state);\n const slideContext = get('context', slide);\n const currentContent = getCurrentContent(state);\n const answer = createGetAnswerProps_(state, slide);\n const mediaQuestion = getQuestionMedia(state);\n const clue = getCurrentClue(state) || null;\n const route = getRoute(state);\n const resources = getResourcesProps_(state, slide);\n const help = createGetHelp_(slide);\n const starsDiff = get(STARS_DIFF[route], engineConfig) || 0;\n const clickClueHandler = () => dispatch(selectClue);\n const clickSeeClueHandler = () => dispatch(getClue);\n const clickBackToAnswerHandler = () => dispatch(selectRoute('answer'));\n const clickCTAHandler = () => dispatch(validateAnswer());\n\n const hasClue = get('hasClue', slide);\n const slideLessons = get('lessons', slide);\n\n const notifyNewMedia = !isEmpty(slideLessons) && !hasSeenLesson(state);\n const notifyReviewLesson = !isEmpty(slideLessons) && hasSeenLesson(state);\n\n const contextButton = get('title', slideContext)\n ? [\n {\n title: translate('Context'),\n type: 'context',\n selected: route === 'context',\n onClick: () => {\n return dispatch(selectRoute('context'));\n }\n }\n ]\n : [];\n\n const availableCoaches = getCoaches(state);\n const buttons = [\n ...contextButton,\n {\n title: translate('Question'),\n type: 'question',\n selected: route === 'answer',\n onClick: clickBackToAnswerHandler\n },\n {\n title: translate('Media'),\n type: 'media',\n selected: route === 'media',\n disabled: isEmpty(slideLessons),\n onClick: () => dispatch(selectRoute('media')),\n notify: notifyNewMedia\n },\n {\n title: translate('Clue'),\n type: 'clue',\n selected: route === 'clue',\n disabled: !hasClue,\n onClick: clickClueHandler\n }\n ];\n services?.Coach &&\n buttons.push({\n title: translate('Coach'),\n type: 'coach',\n disabled: availableCoaches === 0,\n onClick: () => dispatch(startChat())\n });\n const headerProps = createHeaderStateToProps_(state);\n\n if (!includes(route, ROUTES)) {\n return {};\n }\n\n const ctaButtonValidate = {\n submitValue: translate('Validate'),\n onClick: clickCTAHandler,\n light: false,\n small: false,\n name: 'validateAnswerCTA',\n secondary: false,\n disabled: isQuestionCtaDisabled(state)\n };\n\n const ctaButtonBackToQuestion = {\n submitValue: translate(route === 'context' ? 'Go to question' : 'Back to question'),\n onClick: clickBackToAnswerHandler,\n light: false,\n small: false,\n name: 'backToQuestionCTA',\n secondary: true,\n disabled: false\n };\n\n return {\n typeClue: route,\n text: clue,\n onClickSeeClue: clickSeeClueHandler,\n question: get('question.header')(slide),\n step: getProgressionSteps(state),\n slideContext,\n backgroundUrl: get('backgroundUrl')(currentContent),\n verticalMargin: 260,\n starsDiff,\n resources,\n cta: route === 'answer' ? ctaButtonValidate : ctaButtonBackToQuestion,\n help,\n answerType: {\n model: answer,\n media: mediaQuestion\n },\n showNewMedia: (isNil(route) || route === 'answer') && notifyNewMedia,\n showReviewLesson: (isNil(route) || route === 'answer') && notifyReviewLesson,\n buttons,\n header: headerProps\n };\n };\n};\n\nexport default playerProps;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"player.js","names":["ROUTES","STARS_DIFF","media","clue","playerProps","options","store","createGetAnswerProps_","createGetAnswerProps","getResourcesProps_","getResourcesProps","createGetHelp_","createGetHelp","createHeaderStateToProps_","createHeaderStateToProps","state","translate","services","dispatch","engineConfig","getEngineConfig","slide","getCurrentSlide","slideContext","currentContent","getCurrentContent","answer","mediaQuestion","getQuestionMedia","getCurrentClue","route","getRoute","resources","help","starsDiff","clickClueHandler","selectClue","clickSeeClueHandler","getClue","clickBackToAnswerHandler","selectRoute","clickCTAHandler","validateAnswer","hasClue","slideLessons","notifyNewMedia","hasSeenLesson","notifyReviewLesson","contextButton","title","type","selected","onClick","availableCoaches","getCoaches","buttons","disabled","notify","Coach","push","startChat","headerProps","ctaButtonValidate","submitValue","light","small","name","secondary","isQuestionCtaDisabled","ctaButtonBackToQuestion","typeClue","text","onClickSeeClue","question","step","getProgressionSteps","backgroundUrl","verticalMargin","cta","answerType","model","showNewMedia","showReviewLesson","header"],"sources":["../../src/map-state-to-props/player.js"],"sourcesContent":["import {includes, isEmpty, get, isNil} from 'lodash/fp';\nimport {\n getClue,\n getCoaches,\n getCurrentClue,\n getCurrentContent,\n getCurrentSlide,\n getEngineConfig,\n getQuestionMedia,\n getRoute,\n hasSeenLesson,\n selectClue,\n selectRoute,\n startChat,\n validateAnswer,\n isQuestionCtaDisabled,\n getProgressionSteps\n} from '@coorpacademy/player-store';\nimport {createGetAnswerProps, createGetHelp} from './answer';\nimport createHeaderStateToProps from './header';\nimport getResourcesProps from './resources';\n\nconst ROUTES = ['media', 'clue', 'context', 'answer'];\n\nconst STARS_DIFF = {\n media: 'starsPerResourceViewed',\n clue: 'starsPerAskingClue'\n};\n\nconst playerProps = (options, store) => {\n const createGetAnswerProps_ = createGetAnswerProps(options, store);\n const getResourcesProps_ = getResourcesProps(options, store);\n const createGetHelp_ = createGetHelp(options, store);\n const createHeaderStateToProps_ = createHeaderStateToProps(options, store);\n\n return state => {\n const {translate, services} = options;\n const {dispatch} = store;\n\n const engineConfig = getEngineConfig(state);\n const slide = getCurrentSlide(state);\n const slideContext = get('context', slide);\n const currentContent = getCurrentContent(state);\n const answer = createGetAnswerProps_(state, slide);\n const mediaQuestion = getQuestionMedia(state);\n const clue = getCurrentClue(state) || null;\n const route = getRoute(state);\n const resources = getResourcesProps_(state, slide);\n const help = createGetHelp_(slide);\n const starsDiff = get(STARS_DIFF[route], engineConfig) || 0;\n const clickClueHandler = () => dispatch(selectClue);\n const clickSeeClueHandler = () => dispatch(getClue);\n const clickBackToAnswerHandler = () => dispatch(selectRoute('answer'));\n const clickCTAHandler = () => dispatch(validateAnswer());\n\n const hasClue = get('hasClue', slide);\n const slideLessons = get('lessons', slide);\n\n const notifyNewMedia = !isEmpty(slideLessons) && !hasSeenLesson(state);\n const notifyReviewLesson = !isEmpty(slideLessons) && hasSeenLesson(state);\n\n const contextButton = get('title', slideContext)\n ? [\n {\n title: translate('Context'),\n type: 'context',\n selected: route === 'context',\n onClick: () => {\n return dispatch(selectRoute('context'));\n }\n }\n ]\n : [];\n\n const availableCoaches = getCoaches(state);\n const buttons = [\n ...contextButton,\n {\n title: translate('Question'),\n type: 'question',\n selected: route === 'answer',\n onClick: clickBackToAnswerHandler\n },\n {\n title: translate('Media'),\n type: 'media',\n selected: route === 'media',\n disabled: isEmpty(slideLessons),\n onClick: () => dispatch(selectRoute('media')),\n notify: notifyNewMedia\n },\n {\n title: translate('Clue'),\n type: 'clue',\n selected: route === 'clue',\n disabled: !hasClue,\n onClick: clickClueHandler\n }\n ];\n services?.Coach &&\n buttons.push({\n title: translate('Coach'),\n type: 'coach',\n disabled: availableCoaches === 0,\n onClick: () => dispatch(startChat())\n });\n const headerProps = createHeaderStateToProps_(state);\n\n if (!includes(route, ROUTES)) {\n return {};\n }\n\n const ctaButtonValidate = {\n submitValue: translate('Validate'),\n onClick: clickCTAHandler,\n light: false,\n small: false,\n name: 'validateAnswerCTA',\n secondary: false,\n disabled: isQuestionCtaDisabled(state)\n };\n\n const ctaButtonBackToQuestion = {\n submitValue: translate(route === 'context' ? 'Go to question' : 'Back to question'),\n onClick: clickBackToAnswerHandler,\n light: false,\n small: false,\n name: 'backToQuestionCTA',\n secondary: true,\n disabled: false\n };\n\n return {\n typeClue: route,\n text: clue,\n onClickSeeClue: clickSeeClueHandler,\n question: get('question.header')(slide),\n step: getProgressionSteps(state),\n slideContext,\n backgroundUrl: get('backgroundUrl')(currentContent),\n verticalMargin: 260,\n starsDiff,\n resources,\n cta: route === 'answer' ? ctaButtonValidate : ctaButtonBackToQuestion,\n help,\n answerType: {\n model: answer,\n media: mediaQuestion\n },\n showNewMedia: (isNil(route) || route === 'answer') && notifyNewMedia,\n showReviewLesson: (isNil(route) || route === 'answer') && notifyReviewLesson,\n buttons,\n header: headerProps\n };\n };\n};\n\nexport default playerProps;\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coorpacademy/player-web",
|
|
3
|
-
"version": "3.20.
|
|
3
|
+
"version": "3.20.19",
|
|
4
4
|
"description": "CoorpAcademy web slide-player",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"react-dom": "^17.0.2"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@coorpacademy/components": "
|
|
64
|
+
"@coorpacademy/components": "10.30.9",
|
|
65
65
|
"@coorpacademy/player-services": "5.2.21",
|
|
66
66
|
"@coorpacademy/player-store": "4.2.24",
|
|
67
67
|
"@coorpacademy/progression-engine": "11.5.3",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"eslint": "^8.24.0",
|
|
71
71
|
"lodash": "^4.17.21"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "e6982bfbdc1eea691194cf310b49e40db497a82c"
|
|
74
74
|
}
|