@coorpacademy/components 10.5.7-alpha.14 → 10.5.7-alpha.15.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/es/atom/select/index.js +3 -2
  2. package/es/atom/select/index.js.map +1 -1
  3. package/es/atom/select/style.css +38 -3
  4. package/es/molecule/card/customer.js +6 -3
  5. package/es/molecule/card/customer.js.map +1 -1
  6. package/es/molecule/card/favorite.js +13 -4
  7. package/es/molecule/card/favorite.js.map +1 -1
  8. package/es/molecule/card/index.js +41 -12
  9. package/es/molecule/card/index.js.map +1 -1
  10. package/es/molecule/card/selectable.js +11 -4
  11. package/es/molecule/card/selectable.js.map +1 -1
  12. package/es/molecule/card/test/fixtures/default.js +20 -1
  13. package/es/molecule/card/test/fixtures/default.js.map +1 -1
  14. package/es/molecule/card-content/index.js +20 -7
  15. package/es/molecule/card-content/index.js.map +1 -1
  16. package/es/molecule/card-content/test/fixtures/card-no-progress-bar.js +6 -1
  17. package/es/molecule/card-content/test/fixtures/card-no-progress-bar.js.map +1 -1
  18. package/es/molecule/questions/qcm/style.css +4 -0
  19. package/es/molecule/questions/qcm-drag/index.js +53 -21
  20. package/es/molecule/questions/qcm-drag/index.js.map +1 -1
  21. package/es/molecule/questions/qcm-drag/style.css +72 -22
  22. package/es/molecule/questions/qcm-graphic/index.js +1 -0
  23. package/es/molecule/questions/qcm-graphic/index.js.map +1 -1
  24. package/es/molecule/questions/qcm-graphic/style.css +12 -2
  25. package/es/molecule/questions/qcm-graphic/test/fixtures/default.js +1 -1
  26. package/es/molecule/questions/qcm-graphic/test/fixtures/default.js.map +1 -1
  27. package/es/molecule/questions/qcm-graphic/test/fixtures/no-selected.js +1 -1
  28. package/es/molecule/questions/qcm-graphic/test/fixtures/no-selected.js.map +1 -1
  29. package/es/molecule/questions/qcm-graphic/test/qcm-graphic.js +1 -1
  30. package/es/molecule/questions/qcm-graphic/test/qcm-graphic.js.map +1 -1
  31. package/es/molecule/questions/template/index.js +2 -1
  32. package/es/molecule/questions/template/index.js.map +1 -1
  33. package/es/molecule/questions/template/style.css +6 -0
  34. package/es/variables/colors.css +2 -0
  35. package/lib/atom/select/index.js +3 -2
  36. package/lib/atom/select/index.js.map +1 -1
  37. package/lib/atom/select/style.css +38 -3
  38. package/lib/molecule/card/customer.js +6 -3
  39. package/lib/molecule/card/customer.js.map +1 -1
  40. package/lib/molecule/card/favorite.js +13 -4
  41. package/lib/molecule/card/favorite.js.map +1 -1
  42. package/lib/molecule/card/index.js +41 -12
  43. package/lib/molecule/card/index.js.map +1 -1
  44. package/lib/molecule/card/selectable.js +11 -4
  45. package/lib/molecule/card/selectable.js.map +1 -1
  46. package/lib/molecule/card/test/fixtures/default.js +20 -1
  47. package/lib/molecule/card/test/fixtures/default.js.map +1 -1
  48. package/lib/molecule/card-content/index.js +21 -7
  49. package/lib/molecule/card-content/index.js.map +1 -1
  50. package/lib/molecule/card-content/test/fixtures/card-no-progress-bar.js +6 -1
  51. package/lib/molecule/card-content/test/fixtures/card-no-progress-bar.js.map +1 -1
  52. package/lib/molecule/questions/qcm/style.css +4 -0
  53. package/lib/molecule/questions/qcm-drag/index.js +53 -21
  54. package/lib/molecule/questions/qcm-drag/index.js.map +1 -1
  55. package/lib/molecule/questions/qcm-drag/style.css +72 -22
  56. package/lib/molecule/questions/qcm-graphic/index.js +1 -0
  57. package/lib/molecule/questions/qcm-graphic/index.js.map +1 -1
  58. package/lib/molecule/questions/qcm-graphic/style.css +12 -2
  59. package/lib/molecule/questions/qcm-graphic/test/fixtures/default.js +1 -1
  60. package/lib/molecule/questions/qcm-graphic/test/fixtures/default.js.map +1 -1
  61. package/lib/molecule/questions/qcm-graphic/test/fixtures/no-selected.js +1 -1
  62. package/lib/molecule/questions/qcm-graphic/test/fixtures/no-selected.js.map +1 -1
  63. package/lib/molecule/questions/qcm-graphic/test/qcm-graphic.js +1 -1
  64. package/lib/molecule/questions/qcm-graphic/test/qcm-graphic.js.map +1 -1
  65. package/lib/molecule/questions/template/index.js +2 -1
  66. package/lib/molecule/questions/template/index.js.map +1 -1
  67. package/lib/molecule/questions/template/style.css +6 -0
  68. package/lib/variables/colors.css +2 -0
  69. package/package.json +2 -2
@@ -1,5 +1,6 @@
1
1
  import _keys from "lodash/fp/keys";
2
2
  import _isNil from "lodash/fp/isNil";
3
+ import _get from "lodash/fp/get";
3
4
  import React from 'react';
4
5
  import PropTypes from 'prop-types';
5
6
  import classnames from 'classnames';
@@ -90,7 +91,8 @@ const AuthorName = ({
90
91
  author,
91
92
  empty,
92
93
  courseContent,
93
- certifiedAuthor
94
+ certifiedAuthor,
95
+ 'aria-label': ariaLabel
94
96
  }) => {
95
97
  const checkIcon = certifiedAuthor ? /*#__PURE__*/React.createElement(CheckIcon, {
96
98
  className: classnames(style.authorIcon, courseContent ? style.iconShadow : null),
@@ -99,6 +101,7 @@ const AuthorName = ({
99
101
  return /*#__PURE__*/React.createElement("div", {
100
102
  "data-name": "author",
101
103
  title: author,
104
+ "aria-label": ariaLabel,
102
105
  className: classnames(style.author, courseContent ? style.lightTitle : style.darkAuthorTitle, empty ? style.empty : null)
103
106
  }, /*#__PURE__*/React.createElement("span", null, author), checkIcon);
104
107
  };
@@ -107,7 +110,8 @@ AuthorName.propTypes = process.env.NODE_ENV !== "production" ? {
107
110
  author: PropTypes.string,
108
111
  empty: PropTypes.bool,
109
112
  courseContent: PropTypes.bool,
110
- certifiedAuthor: PropTypes.bool
113
+ certifiedAuthor: PropTypes.bool,
114
+ 'aria-label': PropTypes.string
111
115
  } : {};
112
116
 
113
117
  const ContentInfo = ({
@@ -122,7 +126,8 @@ const ContentInfo = ({
122
126
  type,
123
127
  badgeCategory,
124
128
  badgeLabel,
125
- theme = 'default'
129
+ theme = 'default',
130
+ 'aria-label': ariaLabel
126
131
  }) => {
127
132
  const progressBarColor = '#3EC483';
128
133
  const inlineProgressValueStyle = {
@@ -137,10 +142,12 @@ const ContentInfo = ({
137
142
  }, !disabled ? /*#__PURE__*/React.createElement("div", {
138
143
  "data-name": "progress",
139
144
  className: style.progress,
140
- style: inlineProgressValueStyle
145
+ style: inlineProgressValueStyle,
146
+ "aria-label": _get('progression', ariaLabel)
141
147
  }) : null) : null;
142
148
  const adaptiveIcon = adaptiv ? /*#__PURE__*/React.createElement("div", {
143
- className: classnames(style.adaptiveIcon, courseContent ? style.iconShadow : null)
149
+ className: classnames(style.adaptiveIcon, courseContent ? style.iconShadow : null),
150
+ "aria-label": _get('adaptive', ariaLabel)
144
151
  }, /*#__PURE__*/React.createElement(AdaptivIcon, {
145
152
  height: 25
146
153
  })) : null;
@@ -166,7 +173,8 @@ const ContentInfo = ({
166
173
  author: author,
167
174
  empty: empty,
168
175
  courseContent: courseContent,
169
- certifiedAuthor: certifiedAuthor
176
+ certifiedAuthor: certifiedAuthor,
177
+ "aria-label": _get('author', ariaLabel)
170
178
  })), progressBar);
171
179
  };
172
180
 
@@ -185,7 +193,12 @@ ContentInfo.propTypes = process.env.NODE_ENV !== "production" ? {
185
193
  mode: PropTypes.string,
186
194
  badgeCategory: ContentBadge.propTypes.category,
187
195
  badgeLabel: ContentBadge.propTypes.label,
188
- theme: PropTypes.oneOf(_keys(THEMES))
196
+ theme: PropTypes.oneOf(_keys(THEMES)),
197
+ 'aria-label': PropTypes.shape({
198
+ author: PropTypes.string,
199
+ progression: PropTypes.string,
200
+ adaptive: PropTypes.string
201
+ })
189
202
  } : {};
190
203
  export default ContentInfo;
191
204
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/card-content/index.js"],"names":["React","PropTypes","classnames","NovaCompositionCoorpacademyAdaptive","AdaptivIcon","NovaSolidStatusCheckCircle2","CheckIcon","NovaCompositionCoorpacademyTimer","TimerIcon","isExternalContent","EXTERNAL_CONTENT_ICONS","Provider","ContentBadge","innerHTML","style","MODES","HERO","CARD","THEMES","default","coorpmanager","ContentTypeInfo","mode","type","externalContent","context","translate","microLearningIcon","timerIcon","microLearninglabel","textColor","color","contentTypeInfo","contextTypes","skin","childContextTypes","propTypes","bool","string","CardTitle","title","empty","courseContent","lightTitle","darkTitle","__html","AuthorName","author","certifiedAuthor","checkIcon","authorIcon","iconShadow","darkAuthorTitle","ContentInfo","adaptiv","disabled","progress","badgeCategory","badgeLabel","theme","progressBarColor","inlineProgressValueStyle","backgroundColor","width","chapterContent","progressBar","progressWrapper","hideProgressBar","adaptiveIcon","infoWrapper","hero","card","progressBarDisabled","cardInfo","microLearningCardInfo","iconWrapper","number","category","label","oneOf"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {isNil, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyAdaptive as AdaptivIcon,\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport {isExternalContent, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport ContentBadge from '../../atom/content-badge';\nimport {innerHTML} from '../../atom/label/style.css';\nimport style from './style.css';\n\nexport const MODES = {\n HERO: 'hero',\n CARD: 'card'\n};\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst ContentTypeInfo = ({mode, type, externalContent}, context) => {\n const {translate} = context;\n if (mode !== MODES.CARD) {\n return null;\n }\n\n if (type === 'chapter') {\n return (\n <div className={style.microLearningIcon}>\n <TimerIcon className={style.timerIcon} />\n <span className={style.microLearninglabel}>{\"5' learning\"}</span>\n </div>\n );\n }\n if (externalContent && EXTERNAL_CONTENT_ICONS[type]) {\n const textColor = EXTERNAL_CONTENT_ICONS[type].color;\n\n return (\n <div className={style.contentTypeInfo} style={{color: textColor}}>\n {type === 'scorm' ? translate('external_content_scorm') : ''}\n {type === 'video' ? translate('external_content_video') : ''}\n {type === 'article' ? translate('external_content_article') : ''}\n {type === 'podcast' ? translate('external_content_podcast') : ''}\n </div>\n );\n }\n\n return null;\n};\n\nContentTypeInfo.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContentTypeInfo.propTypes = {\n externalContent: PropTypes.bool,\n type: PropTypes.string,\n mode: PropTypes.string\n};\n\nconst CardTitle = ({title, empty, courseContent}) => {\n return (\n <div\n className={classnames(\n style.title,\n innerHTML,\n courseContent ? style.lightTitle : style.darkTitle,\n empty ? style.empty : null\n )}\n data-name=\"title\"\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n};\n\nCardTitle.propTypes = {\n title: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool\n};\n\nconst AuthorName = ({author, empty, courseContent, certifiedAuthor}) => {\n const checkIcon = certifiedAuthor ? (\n <CheckIcon\n className={classnames(style.authorIcon, courseContent ? style.iconShadow : null)}\n color=\"inherit\"\n />\n ) : null;\n\n return (\n <div\n data-name=\"author\"\n title={author}\n className={classnames(\n style.author,\n courseContent ? style.lightTitle : style.darkAuthorTitle,\n empty ? style.empty : null\n )}\n >\n <span>{author}</span>\n {checkIcon}\n </div>\n );\n};\n\nAuthorName.propTypes = {\n author: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool,\n certifiedAuthor: PropTypes.bool\n};\n\nconst ContentInfo = ({\n adaptiv,\n author,\n certifiedAuthor = false,\n disabled = false,\n empty = false,\n mode = MODES.CARD,\n progress,\n title,\n type,\n badgeCategory,\n badgeLabel,\n theme = 'default'\n}) => {\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${progress * 100}%`\n };\n const externalContent = isExternalContent(type);\n const courseContent = type === 'course';\n const chapterContent = type === 'chapter';\n\n const progressBar =\n mode === MODES.HERO || (!empty && !disabled) ? (\n <div className={!isNil(progress) ? style.progressWrapper : style.hideProgressBar}>\n {!disabled ? (\n <div data-name=\"progress\" className={style.progress} style={inlineProgressValueStyle} />\n ) : null}\n </div>\n ) : null;\n\n const adaptiveIcon = adaptiv ? (\n <div className={classnames(style.adaptiveIcon, courseContent ? style.iconShadow : null)}>\n <AdaptivIcon height={25} />\n </div>\n ) : null;\n\n return (\n <div\n data-name=\"info\"\n className={classnames(\n THEMES[theme],\n style.infoWrapper,\n mode === MODES.HERO ? style.hero : style.card,\n disabled ? style.progressBarDisabled : null,\n externalContent ? style.externalContent : null\n )}\n >\n <ContentTypeInfo mode={mode} type={type} externalContent={externalContent} />\n <div\n className={classnames(style.cardInfo, chapterContent ? style.microLearningCardInfo : null)}\n >\n <div className={style.iconWrapper}>\n {adaptiveIcon}\n {!empty && badgeLabel && badgeCategory && courseContent ? (\n <ContentBadge category={badgeCategory} label={badgeLabel} />\n ) : null}\n </div>\n <CardTitle title={title} empty={empty} courseContent={courseContent} />\n <AuthorName\n author={author}\n empty={empty}\n courseContent={courseContent}\n certifiedAuthor={certifiedAuthor}\n />\n </div>\n {progressBar}\n </div>\n );\n};\n\nContentInfo.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nContentInfo.propTypes = {\n adaptiv: PropTypes.bool,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n disabled: PropTypes.bool,\n empty: PropTypes.bool,\n progress: PropTypes.number,\n title: PropTypes.string,\n type: PropTypes.string,\n mode: PropTypes.string,\n badgeCategory: ContentBadge.propTypes.category,\n badgeLabel: ContentBadge.propTypes.label,\n theme: PropTypes.oneOf(keys(THEMES))\n};\n\nexport default ContentInfo;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/card-content/index.js"],"names":["React","PropTypes","classnames","NovaCompositionCoorpacademyAdaptive","AdaptivIcon","NovaSolidStatusCheckCircle2","CheckIcon","NovaCompositionCoorpacademyTimer","TimerIcon","isExternalContent","EXTERNAL_CONTENT_ICONS","Provider","ContentBadge","innerHTML","style","MODES","HERO","CARD","THEMES","default","coorpmanager","ContentTypeInfo","mode","type","externalContent","context","translate","microLearningIcon","timerIcon","microLearninglabel","textColor","color","contentTypeInfo","contextTypes","skin","childContextTypes","propTypes","bool","string","CardTitle","title","empty","courseContent","lightTitle","darkTitle","__html","AuthorName","author","certifiedAuthor","ariaLabel","checkIcon","authorIcon","iconShadow","darkAuthorTitle","ContentInfo","adaptiv","disabled","progress","badgeCategory","badgeLabel","theme","progressBarColor","inlineProgressValueStyle","backgroundColor","width","chapterContent","progressBar","progressWrapper","hideProgressBar","adaptiveIcon","infoWrapper","hero","card","progressBarDisabled","cardInfo","microLearningCardInfo","iconWrapper","number","category","label","oneOf","shape","progression","adaptive"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, isNil, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyAdaptive as AdaptivIcon,\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport {isExternalContent, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport ContentBadge from '../../atom/content-badge';\nimport {innerHTML} from '../../atom/label/style.css';\nimport style from './style.css';\n\nexport const MODES = {\n HERO: 'hero',\n CARD: 'card'\n};\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst ContentTypeInfo = ({mode, type, externalContent}, context) => {\n const {translate} = context;\n if (mode !== MODES.CARD) {\n return null;\n }\n\n if (type === 'chapter') {\n return (\n <div className={style.microLearningIcon}>\n <TimerIcon className={style.timerIcon} />\n <span className={style.microLearninglabel}>{\"5' learning\"}</span>\n </div>\n );\n }\n if (externalContent && EXTERNAL_CONTENT_ICONS[type]) {\n const textColor = EXTERNAL_CONTENT_ICONS[type].color;\n\n return (\n <div className={style.contentTypeInfo} style={{color: textColor}}>\n {type === 'scorm' ? translate('external_content_scorm') : ''}\n {type === 'video' ? translate('external_content_video') : ''}\n {type === 'article' ? translate('external_content_article') : ''}\n {type === 'podcast' ? translate('external_content_podcast') : ''}\n </div>\n );\n }\n\n return null;\n};\n\nContentTypeInfo.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContentTypeInfo.propTypes = {\n externalContent: PropTypes.bool,\n type: PropTypes.string,\n mode: PropTypes.string\n};\n\nconst CardTitle = ({title, empty, courseContent}) => {\n return (\n <div\n className={classnames(\n style.title,\n innerHTML,\n courseContent ? style.lightTitle : style.darkTitle,\n empty ? style.empty : null\n )}\n data-name=\"title\"\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n};\n\nCardTitle.propTypes = {\n title: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool\n};\n\nconst AuthorName = ({author, empty, courseContent, certifiedAuthor, 'aria-label': ariaLabel}) => {\n const checkIcon = certifiedAuthor ? (\n <CheckIcon\n className={classnames(style.authorIcon, courseContent ? style.iconShadow : null)}\n color=\"inherit\"\n />\n ) : null;\n\n return (\n <div\n data-name=\"author\"\n title={author}\n aria-label={ariaLabel}\n className={classnames(\n style.author,\n courseContent ? style.lightTitle : style.darkAuthorTitle,\n empty ? style.empty : null\n )}\n >\n <span>{author}</span>\n {checkIcon}\n </div>\n );\n};\n\nAuthorName.propTypes = {\n author: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool,\n certifiedAuthor: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst ContentInfo = ({\n adaptiv,\n author,\n certifiedAuthor = false,\n disabled = false,\n empty = false,\n mode = MODES.CARD,\n progress,\n title,\n type,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n 'aria-label': ariaLabel\n}) => {\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${progress * 100}%`\n };\n const externalContent = isExternalContent(type);\n const courseContent = type === 'course';\n const chapterContent = type === 'chapter';\n\n const progressBar =\n mode === MODES.HERO || (!empty && !disabled) ? (\n <div className={!isNil(progress) ? style.progressWrapper : style.hideProgressBar}>\n {!disabled ? (\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n aria-label={get('progression', ariaLabel)}\n />\n ) : null}\n </div>\n ) : null;\n\n const adaptiveIcon = adaptiv ? (\n <div\n className={classnames(style.adaptiveIcon, courseContent ? style.iconShadow : null)}\n aria-label={get('adaptive', ariaLabel)}\n >\n <AdaptivIcon height={25} />\n </div>\n ) : null;\n\n return (\n <div\n data-name=\"info\"\n className={classnames(\n THEMES[theme],\n style.infoWrapper,\n mode === MODES.HERO ? style.hero : style.card,\n disabled ? style.progressBarDisabled : null,\n externalContent ? style.externalContent : null\n )}\n >\n <ContentTypeInfo mode={mode} type={type} externalContent={externalContent} />\n <div\n className={classnames(style.cardInfo, chapterContent ? style.microLearningCardInfo : null)}\n >\n <div className={style.iconWrapper}>\n {adaptiveIcon}\n {!empty && badgeLabel && badgeCategory && courseContent ? (\n <ContentBadge category={badgeCategory} label={badgeLabel} />\n ) : null}\n </div>\n <CardTitle title={title} empty={empty} courseContent={courseContent} />\n <AuthorName\n author={author}\n empty={empty}\n courseContent={courseContent}\n certifiedAuthor={certifiedAuthor}\n aria-label={get('author', ariaLabel)}\n />\n </div>\n {progressBar}\n </div>\n );\n};\n\nContentInfo.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nContentInfo.propTypes = {\n adaptiv: PropTypes.bool,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n disabled: PropTypes.bool,\n empty: PropTypes.bool,\n progress: PropTypes.number,\n title: PropTypes.string,\n type: PropTypes.string,\n mode: PropTypes.string,\n badgeCategory: ContentBadge.propTypes.category,\n badgeLabel: ContentBadge.propTypes.label,\n theme: PropTypes.oneOf(keys(THEMES)),\n 'aria-label': PropTypes.shape({\n author: PropTypes.string,\n progression: PropTypes.string,\n adaptive: PropTypes.string\n })\n};\n\nexport default ContentInfo;\n"],"file":"index.js"}
@@ -3,7 +3,12 @@ export default {
3
3
  props: {
4
4
  mode: MODES.CARD,
5
5
  author: 'Coorpcademy',
6
- title: '<p align="right">From Mass Market to One to One targeting</p>'
6
+ title: '<p align="right">From Mass Market to One to One targeting</p>',
7
+ 'aria-label': {
8
+ author: 'auther name',
9
+ progression: 'you have done 65% of the course',
10
+ adaptive: 'this is an adaptive course'
11
+ }
7
12
  }
8
13
  };
9
14
  //# sourceMappingURL=card-no-progress-bar.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/molecule/card-content/test/fixtures/card-no-progress-bar.js"],"names":["MODES","props","mode","CARD","author","title"],"mappings":"AAAA,SAAQA,KAAR,QAAoB,OAApB;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,IAAI,EAAEF,KAAK,CAACG,IADP;AAELC,IAAAA,MAAM,EAAE,aAFH;AAGLC,IAAAA,KAAK,EAAE;AAHF;AADM,CAAf","sourcesContent":["import {MODES} from '../..';\n\nexport default {\n props: {\n mode: MODES.CARD,\n author: 'Coorpcademy',\n title: '<p align=\"right\">From Mass Market to One to One targeting</p>'\n }\n};\n"],"file":"card-no-progress-bar.js"}
1
+ {"version":3,"sources":["../../../../../src/molecule/card-content/test/fixtures/card-no-progress-bar.js"],"names":["MODES","props","mode","CARD","author","title","progression","adaptive"],"mappings":"AAAA,SAAQA,KAAR,QAAoB,OAApB;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,IAAI,EAAEF,KAAK,CAACG,IADP;AAELC,IAAAA,MAAM,EAAE,aAFH;AAGLC,IAAAA,KAAK,EAAE,+DAHF;AAIL,kBAAc;AACZD,MAAAA,MAAM,EAAE,aADI;AAEZE,MAAAA,WAAW,EAAE,iCAFD;AAGZC,MAAAA,QAAQ,EAAE;AAHE;AAJT;AADM,CAAf","sourcesContent":["import {MODES} from '../..';\n\nexport default {\n props: {\n mode: MODES.CARD,\n author: 'Coorpcademy',\n title: '<p align=\"right\">From Mass Market to One to One targeting</p>',\n 'aria-label': {\n author: 'auther name',\n progression: 'you have done 65% of the course',\n adaptive: 'this is an adaptive course'\n }\n }\n};\n"],"file":"card-no-progress-bar.js"}
@@ -48,6 +48,10 @@
48
48
  .answerText {
49
49
  position: relative;
50
50
  color: cm_blue_900;
51
+ hyphens: auto;
52
+ -ms-word-break: break-all;
53
+ word-break: break-all;
54
+ word-break: break-word;
51
55
  }
52
56
 
53
57
  .selectedAnswer .answerText {
@@ -1,3 +1,4 @@
1
+ import _getOr from "lodash/fp/getOr";
1
2
  import _orderBy from "lodash/fp/orderBy";
2
3
  import _filter from "lodash/fp/filter";
3
4
  import _pipe from "lodash/fp/pipe";
@@ -6,6 +7,7 @@ import PropTypes from 'prop-types';
6
7
  import classnames from 'classnames';
7
8
  import Provider from '../../../atom/provider';
8
9
  import { innerHTML } from '../../../atom/label/style.css';
10
+ import { getShadowBoxColorFromPrimary } from '../../../util/get-shadow-box-color-from-primary';
9
11
  import style from './style.css';
10
12
  const AnswersPropTypes = process.env.NODE_ENV !== "production" ? PropTypes.arrayOf(PropTypes.shape({
11
13
  onClick: PropTypes.func,
@@ -38,7 +40,7 @@ const Choices = ({
38
40
  selected
39
41
  } = answer;
40
42
  return /*#__PURE__*/React.createElement("div", {
41
- className: classnames(selected ? style.invisibleAnswer : style.answer, innerHTML),
43
+ className: classnames(selected ? style.invisibleAnswer : style.unselected, innerHTML),
42
44
  "data-name": "answer",
43
45
  onClick: onClick,
44
46
  key: key // eslint-disable-next-line react/no-danger
@@ -49,7 +51,7 @@ const Choices = ({
49
51
  });
50
52
  });
51
53
  return /*#__PURE__*/React.createElement("div", {
52
- className: style.qcmDrag
54
+ className: style.choices
53
55
  }, answersViews);
54
56
  };
55
57
 
@@ -57,9 +59,10 @@ Choices.propTypes = process.env.NODE_ENV !== "production" ? {
57
59
  answers: AnswersPropTypes
58
60
  } : {};
59
61
 
60
- const SelectionBox = ({
62
+ const SelectedAnswerSections = ({
61
63
  answers,
62
- help
64
+ help,
65
+ backgroundColor
63
66
  }) => {
64
67
  const selectedAnswers = _pipe(_filter('selected'), _orderBy('order', 'asc'))(answers);
65
68
 
@@ -69,15 +72,31 @@ const SelectionBox = ({
69
72
  title
70
73
  } = answer;
71
74
  return /*#__PURE__*/React.createElement("div", {
72
- className: classnames(style.selectedAnswer, innerHTML),
73
75
  "data-selected": "true",
74
76
  onClick: onClick,
75
- key: key // eslint-disable-next-line react/no-danger
77
+ key: key,
78
+ "data-name": "selectedAnswer",
79
+ className: style.selected,
80
+ style: {
81
+ boxShadow: `0px 4px 16px ${getShadowBoxColorFromPrimary(backgroundColor)}`
82
+ }
83
+ }, /*#__PURE__*/React.createElement("div", {
84
+ "data-name": "answerBackground",
85
+ style: {
86
+ backgroundColor
87
+ },
88
+ className: style.background
89
+ }), /*#__PURE__*/React.createElement("div", {
90
+ className: style.content
91
+ }, /*#__PURE__*/React.createElement("span", {
92
+ "data-name": "answerContent",
93
+ className: classnames(style.selectedAnswerText, innerHTML),
94
+ title: title // eslint-disable-next-line react/no-danger
76
95
  ,
77
96
  dangerouslySetInnerHTML: {
78
97
  __html: title
79
98
  }
80
- });
99
+ })));
81
100
  });
82
101
 
83
102
  if (selectedAnswersViews.length > 0) {
@@ -93,29 +112,42 @@ const SelectionBox = ({
93
112
  }
94
113
  };
95
114
 
96
- SelectionBox.propTypes = process.env.NODE_ENV !== "production" ? {
115
+ SelectedAnswerSections.propTypes = process.env.NODE_ENV !== "production" ? {
97
116
  answers: AnswersPropTypes,
98
- help: EmptyView.propTypes.help
117
+ help: EmptyView.propTypes.help,
118
+ backgroundColor: PropTypes.string
99
119
  } : {};
100
120
 
101
121
  const QcmDrag = ({
102
122
  answers,
103
123
  help
104
- }, context) => /*#__PURE__*/React.createElement("div", {
105
- className: style.qcmDrag
106
- }, /*#__PURE__*/React.createElement(SelectionBox, {
107
- answers: answers,
108
- help: help
109
- }), /*#__PURE__*/React.createElement("div", {
110
- "data-name": "qcm-drag-answers",
111
- className: style.answers
112
- }, /*#__PURE__*/React.createElement(Choices, {
113
- answers: answers
114
- })));
124
+ }, context) => {
125
+ const {
126
+ skin
127
+ } = context;
128
+
129
+ const primarySkinColor = _getOr('#00B0FF', 'common.primary', skin);
130
+
131
+ return /*#__PURE__*/React.createElement("div", {
132
+ className: style.wrapper
133
+ }, /*#__PURE__*/React.createElement(SelectedAnswerSections, {
134
+ answers: answers,
135
+ help: help,
136
+ backgroundColor: primarySkinColor
137
+ }), /*#__PURE__*/React.createElement("div", {
138
+ "data-name": "qcm-drag-answers",
139
+ className: style.answers
140
+ }, /*#__PURE__*/React.createElement(Choices, {
141
+ answers: answers
142
+ })));
143
+ };
115
144
 
116
145
  QcmDrag.propTypes = process.env.NODE_ENV !== "production" ? {
117
146
  answers: AnswersPropTypes,
118
- help: SelectionBox.propTypes.help
147
+ help: SelectedAnswerSections.propTypes.help
119
148
  } : {};
149
+ QcmDrag.contextTypes = {
150
+ skin: Provider.childContextTypes.skin
151
+ };
120
152
  export default QcmDrag;
121
153
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/questions/qcm-drag/index.js"],"names":["React","PropTypes","classnames","Provider","innerHTML","style","AnswersPropTypes","arrayOf","shape","onClick","func","order","number","selected","bool","title","string","help","EmptyView","emptySpan","contextTypes","translate","childContextTypes","propTypes","Choices","answers","answersViews","map","answer","key","invisibleAnswer","__html","qcmDrag","SelectionBox","selectedAnswers","selectedAnswersViews","selectedAnswer","length","emptyAnswers","QcmDrag","context"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {pipe, filter, orderBy} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport style from './style.css';\n\nconst AnswersPropTypes = PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n order: PropTypes.number,\n selected: PropTypes.bool,\n title: PropTypes.string,\n help: PropTypes.string\n })\n);\n\nconst EmptyView = ({help}) => <span className={style.emptySpan}>{help}</span>;\n\nEmptyView.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nEmptyView.propTypes = {\n help: PropTypes.string\n};\n\nconst Choices = ({answers}) => {\n const answersViews = answers.map((answer, key) => {\n const {onClick, title, selected} = answer;\n return (\n <div\n className={classnames(selected ? style.invisibleAnswer : style.answer, innerHTML)}\n data-name=\"answer\"\n onClick={onClick}\n key={key}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n });\n\n return <div className={style.qcmDrag}>{answersViews}</div>;\n};\n\nChoices.propTypes = {\n answers: AnswersPropTypes\n};\n\nconst SelectionBox = ({answers, help}) => {\n const selectedAnswers = pipe(filter('selected'), orderBy('order', 'asc'))(answers);\n const selectedAnswersViews = selectedAnswers.map((answer, key) => {\n const {onClick, title} = answer;\n return (\n <div\n className={classnames(style.selectedAnswer, innerHTML)}\n data-selected=\"true\"\n onClick={onClick}\n key={key}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n });\n\n if (selectedAnswersViews.length > 0) {\n return <div className={style.selectedAnswers}>{selectedAnswersViews}</div>;\n } else {\n return (\n <div className={style.emptyAnswers}>\n <EmptyView help={help} />\n </div>\n );\n }\n};\n\nSelectionBox.propTypes = {\n answers: AnswersPropTypes,\n help: EmptyView.propTypes.help\n};\n\nconst QcmDrag = ({answers, help}, context) => (\n <div className={style.qcmDrag}>\n <SelectionBox answers={answers} help={help} />\n <div data-name=\"qcm-drag-answers\" className={style.answers}>\n <Choices answers={answers} />\n </div>\n </div>\n);\n\nQcmDrag.propTypes = {\n answers: AnswersPropTypes,\n help: SelectionBox.propTypes.help\n};\n\nexport default QcmDrag;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/questions/qcm-drag/index.js"],"names":["React","PropTypes","classnames","Provider","innerHTML","getShadowBoxColorFromPrimary","style","AnswersPropTypes","arrayOf","shape","onClick","func","order","number","selected","bool","title","string","help","EmptyView","emptySpan","contextTypes","translate","childContextTypes","propTypes","Choices","answers","answersViews","map","answer","key","invisibleAnswer","unselected","__html","choices","SelectedAnswerSections","backgroundColor","selectedAnswers","selectedAnswersViews","boxShadow","background","content","selectedAnswerText","length","emptyAnswers","QcmDrag","context","skin","primarySkinColor","wrapper"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {pipe, filter, orderBy, getOr} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport {getShadowBoxColorFromPrimary} from '../../../util/get-shadow-box-color-from-primary';\nimport style from './style.css';\n\nconst AnswersPropTypes = PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n order: PropTypes.number,\n selected: PropTypes.bool,\n title: PropTypes.string,\n help: PropTypes.string\n })\n);\n\nconst EmptyView = ({help}) => <span className={style.emptySpan}>{help}</span>;\n\nEmptyView.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nEmptyView.propTypes = {\n help: PropTypes.string\n};\n\nconst Choices = ({answers}) => {\n const answersViews = answers.map((answer, key) => {\n const {onClick, title, selected} = answer;\n return (\n <div\n className={classnames(selected ? style.invisibleAnswer : style.unselected, innerHTML)}\n data-name=\"answer\"\n onClick={onClick}\n key={key}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n });\n\n return <div className={style.choices}>{answersViews}</div>;\n};\n\nChoices.propTypes = {\n answers: AnswersPropTypes\n};\n\nconst SelectedAnswerSections = ({answers, help, backgroundColor}) => {\n const selectedAnswers = pipe(filter('selected'), orderBy('order', 'asc'))(answers);\n const selectedAnswersViews = selectedAnswers.map((answer, key) => {\n const {onClick, title} = answer;\n return (\n <div\n data-selected=\"true\"\n onClick={onClick}\n key={key}\n data-name=\"selectedAnswer\"\n className={style.selected}\n style={{\n boxShadow: `0px 4px 16px ${getShadowBoxColorFromPrimary(backgroundColor)}`\n }}\n >\n <div\n data-name=\"answerBackground\"\n style={{\n backgroundColor\n }}\n className={style.background}\n />\n <div className={style.content}>\n <span\n data-name=\"answerContent\"\n className={classnames(style.selectedAnswerText, innerHTML)}\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n </div>\n );\n });\n\n if (selectedAnswersViews.length > 0) {\n return <div className={style.selectedAnswers}>{selectedAnswersViews}</div>;\n } else {\n return (\n <div className={style.emptyAnswers}>\n <EmptyView help={help} />\n </div>\n );\n }\n};\n\nSelectedAnswerSections.propTypes = {\n answers: AnswersPropTypes,\n help: EmptyView.propTypes.help,\n backgroundColor: PropTypes.string\n};\n\nconst QcmDrag = ({answers, help}, context) => {\n const {skin} = context;\n const primarySkinColor = getOr('#00B0FF', 'common.primary', skin);\n\n return (\n <div className={style.wrapper}>\n <SelectedAnswerSections answers={answers} help={help} backgroundColor={primarySkinColor} />\n <div data-name=\"qcm-drag-answers\" className={style.answers}>\n <Choices answers={answers} />\n </div>\n </div>\n );\n};\n\nQcmDrag.propTypes = {\n answers: AnswersPropTypes,\n help: SelectedAnswerSections.propTypes.help\n};\n\nQcmDrag.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default QcmDrag;\n"],"file":"index.js"}
@@ -7,6 +7,16 @@
7
7
  @value black from colors;
8
8
  @value medium from colors;
9
9
  @value dark from colors;
10
+ @value cm_grey_75 from colors;
11
+ @value cm_grey_150 from colors;
12
+ @value cm_blue_900 from colors;
13
+
14
+ .wrapper {
15
+ width: 100%;
16
+ display: flex;
17
+ flex-wrap: wrap;
18
+ flex-basis: auto;
19
+ }
10
20
 
11
21
  .answers {
12
22
  width: 100%;
@@ -19,17 +29,17 @@
19
29
  padding: 0 24px 0 0;
20
30
  }
21
31
 
22
- .qcmDrag {
32
+ .choices {
23
33
  width: 100%;
24
34
  display: flex;
35
+ justify-content: center;
25
36
  flex-wrap: wrap;
26
37
  flex-basis: auto;
27
38
  }
28
39
 
29
40
  .selectedAnswers {
30
41
  composes: answers;
31
- border: 2px dashed color(dark lightness(85%));
32
- background-color: xtraLightGrey;
42
+ border-bottom: 2px solid cm_grey_150;
33
43
  padding: 16px 8px 8px 16px;
34
44
  margin: 0 0 24px;
35
45
  }
@@ -49,32 +59,76 @@
49
59
  color: medium;
50
60
  }
51
61
 
52
- .answer {
62
+ .choice {
53
63
  font-family: 'Gilroy';
54
- font-size: 13px;
55
- font-weight: 600;
56
- color: black;
57
- line-height: 22px;
58
- background-color: white;
59
- border: 1px solid color(dark lightness(85%));
64
+ font-size: 14px;
65
+ font-weight: 700;
66
+ line-height: 20px;
60
67
  box-sizing: border-box;
61
- margin-right: 8px;
62
- margin-bottom: 8px;
63
- border-radius: 3px;
68
+ border-radius: 8px;
64
69
  padding: 13px 16px;
65
70
  cursor: pointer;
71
+ margin-bottom: 8px;
72
+ margin-right: 8px;
73
+ overflow: hidden;
74
+ hyphens: auto;
75
+ -ms-word-break: break-all;
76
+ word-break: break-all;
77
+ word-break: break-word;
78
+ }
79
+
80
+ .unselected {
81
+ composes: choice;
82
+ color: cm_blue_900;
83
+ line-height: 20px;
84
+ background-color: white;
85
+ box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.12);
66
86
  }
67
87
 
68
- .answer:hover {
69
- background-color: light;
88
+ .selected {
89
+ composes: choice;
90
+ position: relative;
91
+ border-radius: 8px;
70
92
  }
71
93
 
72
- .selectedAnswer {
73
- composes: answer;
94
+ .background {
95
+ top: 0;
96
+ left: 0;
97
+ position: absolute;
98
+ border-radius: 8px;
99
+ height: 100%;
100
+ width: 100%;
101
+ }
102
+
103
+ .selected .background{
104
+ opacity: 1;
105
+ }
106
+
107
+ .selected:hover {
108
+ background: black;
109
+ }
110
+
111
+ .selected:hover .background{
112
+ opacity: 0.8;
113
+ }
114
+
115
+ .content {
116
+ height: 100%;
117
+ width: 100%;
118
+ border-radius: 8px;
119
+ position: relative;
120
+ }
121
+
122
+ .unselected:hover {
123
+ background-color: cm_grey_75;
124
+ }
125
+
126
+ .selectedAnswerText {
127
+ color: white;
74
128
  }
75
129
 
76
130
  .invisibleAnswer {
77
- composes: answer;
131
+ composes: choice;
78
132
  display: none;
79
133
  }
80
134
 
@@ -82,8 +136,4 @@
82
136
  .selectedAnswers {
83
137
  min-height: auto;
84
138
  }
85
-
86
- .answer:hover {
87
- background-color: white;
88
- }
89
139
  }
@@ -57,6 +57,7 @@ const QCMImage = (props, context) => {
57
57
  "data-name": "answerText",
58
58
  className: style.titleWrapper
59
59
  }, /*#__PURE__*/React.createElement("div", {
60
+ title: title,
60
61
  className: classnames(style.title, innerHTML) // eslint-disable-next-line react/no-danger
61
62
  ,
62
63
  dangerouslySetInnerHTML: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/questions/qcm-graphic/index.js"],"names":["React","PropTypes","classnames","Provider","innerHTML","getShadowBoxColorFromPrimary","style","QCMImage","props","context","answers","skin","primarySkinColor","answersViews","map","answer","key","onClick","title","selected","image","ariaLabel","boxShadow","backgroundColor","background","content","imageWrapper","backgroundImage","titleWrapper","__html","wrapper","contextTypes","childContextTypes","propTypes","arrayOf","shape","string","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport {getShadowBoxColorFromPrimary} from '../../../util/get-shadow-box-color-from-primary';\nimport style from './style.css';\n\nconst QCMImage = (props, context) => {\n const {answers} = props;\n const {skin} = context;\n const primarySkinColor = getOr('#00B0FF', 'common.primary', skin);\n\n const answersViews = answers.map((answer, key) => {\n const {onClick, title, selected, image, ariaLabel} = answer;\n\n return (\n <div\n onClick={onClick}\n data-selected={selected}\n data-name=\"answerGraphic\"\n style={{\n ...(selected && {\n boxShadow: `0 4px 16px ${getShadowBoxColorFromPrimary(primarySkinColor)}`\n })\n }}\n className={selected ? style.selected : style.answer}\n key={key}\n >\n <div\n data-name=\"answerBackground\"\n style={{\n backgroundColor: selected ? primarySkinColor : '#F4F4F5'\n }}\n className={style.background}\n />\n <div data-name=\"answerContent\" className={style.content}>\n <div\n className={style.imageWrapper}\n data-name=\"answerImage\"\n aria-label={ariaLabel || title}\n style={{\n backgroundImage: `url(${image})`\n }}\n />\n <div data-name=\"answerText\" className={style.titleWrapper}>\n <div\n className={classnames(style.title, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n </div>\n </div>\n );\n });\n\n return (\n <div data-name=\"qcm-graphic-wrapper\" className={style.wrapper}>\n {answersViews}\n </div>\n );\n};\n\nQCMImage.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQCMImage.propTypes = {\n answers: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n selected: PropTypes.bool,\n onClick: PropTypes.func,\n image: PropTypes.string,\n ariaLabel: PropTypes.string\n })\n )\n};\n\nexport default QCMImage;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/questions/qcm-graphic/index.js"],"names":["React","PropTypes","classnames","Provider","innerHTML","getShadowBoxColorFromPrimary","style","QCMImage","props","context","answers","skin","primarySkinColor","answersViews","map","answer","key","onClick","title","selected","image","ariaLabel","boxShadow","backgroundColor","background","content","imageWrapper","backgroundImage","titleWrapper","__html","wrapper","contextTypes","childContextTypes","propTypes","arrayOf","shape","string","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport {getShadowBoxColorFromPrimary} from '../../../util/get-shadow-box-color-from-primary';\nimport style from './style.css';\n\nconst QCMImage = (props, context) => {\n const {answers} = props;\n const {skin} = context;\n const primarySkinColor = getOr('#00B0FF', 'common.primary', skin);\n\n const answersViews = answers.map((answer, key) => {\n const {onClick, title, selected, image, ariaLabel} = answer;\n\n return (\n <div\n onClick={onClick}\n data-selected={selected}\n data-name=\"answerGraphic\"\n style={{\n ...(selected && {\n boxShadow: `0 4px 16px ${getShadowBoxColorFromPrimary(primarySkinColor)}`\n })\n }}\n className={selected ? style.selected : style.answer}\n key={key}\n >\n <div\n data-name=\"answerBackground\"\n style={{\n backgroundColor: selected ? primarySkinColor : '#F4F4F5'\n }}\n className={style.background}\n />\n <div data-name=\"answerContent\" className={style.content}>\n <div\n className={style.imageWrapper}\n data-name=\"answerImage\"\n aria-label={ariaLabel || title}\n style={{\n backgroundImage: `url(${image})`\n }}\n />\n <div data-name=\"answerText\" className={style.titleWrapper}>\n <div\n title={title}\n className={classnames(style.title, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n </div>\n </div>\n );\n });\n\n return (\n <div data-name=\"qcm-graphic-wrapper\" className={style.wrapper}>\n {answersViews}\n </div>\n );\n};\n\nQCMImage.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQCMImage.propTypes = {\n answers: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n selected: PropTypes.bool,\n onClick: PropTypes.func,\n image: PropTypes.string,\n ariaLabel: PropTypes.string\n })\n )\n};\n\nexport default QCMImage;\n"],"file":"index.js"}
@@ -27,7 +27,6 @@
27
27
  margin: 0 4px 8px;
28
28
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.12);
29
29
  border-radius: 16px;
30
- transition: background-color 0.25s linear;
31
30
  }
32
31
 
33
32
  .background {
@@ -37,7 +36,6 @@
37
36
  border-radius: 16px;
38
37
  height: 100%;
39
38
  width: 100%;
40
- transition: opacity 0.25s linear, background-color 0.25s linear;
41
39
  }
42
40
 
43
41
  .content {
@@ -64,6 +62,11 @@
64
62
  width: 100%;
65
63
  align-items: center;
66
64
  justify-content: center;
65
+ overflow: hidden;
66
+ hyphens: auto;
67
+ -ms-word-break: break-all;
68
+ word-break: break-all;
69
+ word-break: break-word;
67
70
  }
68
71
 
69
72
  .title {
@@ -144,10 +147,17 @@
144
147
  }
145
148
 
146
149
  .titleWrapper {
150
+ height: 100%;
151
+ width: 100%;
152
+ display: flex;
147
153
  white-space: wrap;
148
154
  overflow: hidden;
149
155
  padding: 0;
150
156
  justify-content: left;
151
157
  font-size: 15px;
152
158
  }
159
+
160
+ .title {
161
+ text-align: left;
162
+ }
153
163
  }
@@ -6,7 +6,7 @@ export default {
6
6
  selected: false,
7
7
  image: 'https://images.unsplash.com/photo-1467890947394-8171244e5410?dpr=2&auto=format&fit=crop&w=1080&h=720&q=80&cs=tinysrgb&crop=&bg='
8
8
  }, {
9
- title: 'Lorem ipsum',
9
+ title: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sut labore et dolore magna aliqua.',
10
10
  onClick: () => {},
11
11
  selected: false,
12
12
  image: 'https://images.unsplash.com/photo-1494477920939-88c59ba76428?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/molecule/questions/qcm-graphic/test/fixtures/default.js"],"names":["props","answers","title","onClick","selected","image"],"mappings":"AAAA,eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,OAAO,EAAE,CACP;AACEC,MAAAA,KAAK,EAAE,iCADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KADO,EAQP;AACEH,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KARO,EAeP;AACEH,MAAAA,KAAK,EAAE,OADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,IAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KAfO,EAsBP;AACEH,MAAAA,KAAK,EAAE,6BADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KAtBO,EA6BP;AACEH,MAAAA,KAAK,EAAE,iCADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KA7BO,EAoCP;AACEH,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KApCO,EA2CP;AACEH,MAAAA,KAAK,EAAE,OADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,IAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KA3CO,EAkDP;AACEH,MAAAA,KAAK,EAAE,6BADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KAlDO;AADJ;AADM,CAAf","sourcesContent":["export default {\n props: {\n answers: [\n {\n title: 'There is no need for a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1467890947394-8171244e5410?dpr=2&auto=format&fit=crop&w=1080&h=720&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem ipsum',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1494477920939-88c59ba76428?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem',\n onClick: () => {},\n selected: true,\n image:\n 'https://images.unsplash.com/photo-1494416952682-200c9e760aac?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'You need to have a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1493442043090-087540b34c1a?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'There is no need for a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1467890947394-8171244e5410?dpr=2&auto=format&fit=crop&w=1080&h=720&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem ipsum',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1494477920939-88c59ba76428?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem',\n onClick: () => {},\n selected: true,\n image:\n 'https://images.unsplash.com/photo-1494416952682-200c9e760aac?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'You need to have a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1493442043090-087540b34c1a?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n }\n ]\n }\n};\n"],"file":"default.js"}
1
+ {"version":3,"sources":["../../../../../../src/molecule/questions/qcm-graphic/test/fixtures/default.js"],"names":["props","answers","title","onClick","selected","image"],"mappings":"AAAA,eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,OAAO,EAAE,CACP;AACEC,MAAAA,KAAK,EAAE,iCADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KADO,EAQP;AACEH,MAAAA,KAAK,EACH,6FAFJ;AAGEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAHnB;AAIEC,MAAAA,QAAQ,EAAE,KAJZ;AAKEC,MAAAA,KAAK,EACH;AANJ,KARO,EAgBP;AACEH,MAAAA,KAAK,EAAE,OADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,IAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KAhBO,EAuBP;AACEH,MAAAA,KAAK,EAAE,6BADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KAvBO,EA8BP;AACEH,MAAAA,KAAK,EAAE,iCADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KA9BO,EAqCP;AACEH,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KArCO,EA4CP;AACEH,MAAAA,KAAK,EAAE,OADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,IAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KA5CO,EAmDP;AACEH,MAAAA,KAAK,EAAE,6BADT;AAEEC,MAAAA,OAAO,EAAE,MAAM,CAAE,CAFnB;AAGEC,MAAAA,QAAQ,EAAE,KAHZ;AAIEC,MAAAA,KAAK,EACH;AALJ,KAnDO;AADJ;AADM,CAAf","sourcesContent":["export default {\n props: {\n answers: [\n {\n title: 'There is no need for a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1467890947394-8171244e5410?dpr=2&auto=format&fit=crop&w=1080&h=720&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title:\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sut labore et dolore magna aliqua.',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1494477920939-88c59ba76428?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem',\n onClick: () => {},\n selected: true,\n image:\n 'https://images.unsplash.com/photo-1494416952682-200c9e760aac?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'You need to have a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1493442043090-087540b34c1a?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'There is no need for a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1467890947394-8171244e5410?dpr=2&auto=format&fit=crop&w=1080&h=720&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem ipsum',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1494477920939-88c59ba76428?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'Lorem',\n onClick: () => {},\n selected: true,\n image:\n 'https://images.unsplash.com/photo-1494416952682-200c9e760aac?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n },\n {\n title: 'You need to have a password',\n onClick: () => {},\n selected: false,\n image:\n 'https://images.unsplash.com/photo-1493442043090-087540b34c1a?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='\n }\n ]\n }\n};\n"],"file":"default.js"}
@@ -6,7 +6,7 @@ export default {
6
6
  selected: false,
7
7
  image: 'https://images.unsplash.com/photo-1467890947394-8171244e5410?dpr=2&auto=format&fit=crop&w=1080&h=720&q=80&cs=tinysrgb&crop=&bg='
8
8
  }, {
9
- title: 'Lorem ipsum',
9
+ title: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua tempor incididunt ut labore et dolore tempor incididunt ut labore et dolore magna aliqua tempor incididunt ut labore et dolore.',
10
10
  onClick: () => {},
11
11
  selected: false,
12
12
  image: 'https://images.unsplash.com/photo-1494477920939-88c59ba76428?dpr=2&auto=format&fit=crop&w=1080&h=607&q=80&cs=tinysrgb&crop=&bg='