@coorpacademy/components 10.19.7 → 10.19.10

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 (279) hide show
  1. package/es/atom/button-link-icon-only/test/fixtures.js +0 -2
  2. package/es/atom/button-link-icon-only/test/fixtures.js.map +1 -1
  3. package/es/atom/cta/index.js +2 -1
  4. package/es/atom/cta/index.js.map +1 -1
  5. package/es/atom/cta/test/cta.js +93 -0
  6. package/es/atom/cta/test/cta.js.map +1 -0
  7. package/es/atom/drag-and-drop/test/fixtures.js +0 -12
  8. package/es/atom/drag-and-drop/test/fixtures.js.map +1 -1
  9. package/es/atom/image-upload/test/fixtures.js +2 -6
  10. package/es/atom/image-upload/test/fixtures.js.map +1 -1
  11. package/es/atom/review-presentation/style.css +1 -1
  12. package/es/atom/review-presentation/test/fixtures/default.js +2 -2
  13. package/es/atom/review-presentation/test/fixtures/default.js.map +1 -1
  14. package/es/molecule/brand-form-group/test/fixtures.js +0 -2
  15. package/es/molecule/brand-form-group/test/fixtures.js.map +1 -1
  16. package/es/molecule/checkbox-with-title/test/fixtures.js +15 -0
  17. package/es/molecule/checkbox-with-title/test/fixtures.js.map +1 -0
  18. package/es/molecule/cockpit-popin/test/fixtures.js +17 -0
  19. package/es/molecule/cockpit-popin/test/fixtures.js.map +1 -0
  20. package/es/molecule/course-section/test/fixtures.js +0 -6
  21. package/es/molecule/course-section/test/fixtures.js.map +1 -1
  22. package/es/molecule/course-sections/test/fixtures.js +0 -2
  23. package/es/molecule/course-sections/test/fixtures.js.map +1 -1
  24. package/es/molecule/news/index.js +1 -2
  25. package/es/molecule/news/index.js.map +1 -1
  26. package/es/molecule/popin/index.js +2 -2
  27. package/es/molecule/popin/index.js.map +1 -1
  28. package/es/molecule/questions/qcm/index.js +1 -2
  29. package/es/molecule/questions/qcm/index.js.map +1 -1
  30. package/es/molecule/questions/qcm/style.css +4 -0
  31. package/es/molecule/questions/qcm/test/qcm.js +2 -2
  32. package/es/molecule/questions/qcm/test/qcm.js.map +1 -1
  33. package/es/molecule/questions/qcm-drag/index.js +2 -3
  34. package/es/molecule/questions/qcm-drag/index.js.map +1 -1
  35. package/es/molecule/questions/qcm-drag/style.css +4 -0
  36. package/es/molecule/questions/qcm-graphic/index.js +1 -2
  37. package/es/molecule/questions/qcm-graphic/index.js.map +1 -1
  38. package/es/molecule/questions/qcm-graphic/style.css +5 -1
  39. package/es/molecule/questions/question-range/index.js +3 -4
  40. package/es/molecule/questions/question-range/index.js.map +1 -1
  41. package/es/molecule/questions/question-range/style.css +4 -0
  42. package/es/molecule/review-card-congrats/index.js +1 -1
  43. package/es/molecule/review-card-congrats/index.js.map +1 -1
  44. package/es/molecule/search/test/fixtures.js +15 -0
  45. package/es/molecule/search/test/fixtures.js.map +1 -0
  46. package/es/molecule/setup-slide/test/fixtures.js +0 -2
  47. package/es/molecule/setup-slide/test/fixtures.js.map +1 -1
  48. package/es/molecule/share/index.js +1 -1
  49. package/es/molecule/share/index.js.map +1 -1
  50. package/es/molecule/skill-card/style.css +9 -1
  51. package/es/organism/brand-form/test/fixtures.js +0 -4
  52. package/es/organism/brand-form/test/fixtures.js.map +1 -1
  53. package/es/organism/course-selection/test/fixtures.js +0 -2
  54. package/es/organism/course-selection/test/fixtures.js.map +1 -1
  55. package/es/organism/playlist-translation/test/fixtures.js +15 -0
  56. package/es/organism/playlist-translation/test/fixtures.js.map +1 -0
  57. package/es/organism/review-skills/style.css +10 -1
  58. package/es/organism/search-and-chips-results/test/fixtures.js +0 -2
  59. package/es/organism/search-and-chips-results/test/fixtures.js.map +1 -1
  60. package/es/organism/wizard-contents/test/fixtures/certification-general-settings-edit.js +0 -1
  61. package/es/organism/wizard-contents/test/fixtures/certification-general-settings-edit.js.map +1 -1
  62. package/es/organism/wizard-contents/test/fixtures/certification-rewards.js +0 -1
  63. package/es/organism/wizard-contents/test/fixtures/certification-rewards.js.map +1 -1
  64. package/es/organism/wizard-contents/test/fixtures/playlist-add-courses-create.js +0 -1
  65. package/es/organism/wizard-contents/test/fixtures/playlist-add-courses-create.js.map +1 -1
  66. package/es/organism/wizard-contents/test/fixtures/playlist-general-settings-create.js +0 -1
  67. package/es/organism/wizard-contents/test/fixtures/playlist-general-settings-create.js.map +1 -1
  68. package/es/organism/wizard-contents/test/fixtures/playlist-general-settings-edit.js +0 -1
  69. package/es/organism/wizard-contents/test/fixtures/playlist-general-settings-edit.js.map +1 -1
  70. package/es/organism/wizard-contents/test/fixtures/playlist-organize-courses.js +0 -1
  71. package/es/organism/wizard-contents/test/fixtures/playlist-organize-courses.js.map +1 -1
  72. package/es/organism/wizard-contents/test/fixtures/playlist-populations-create.js +0 -1
  73. package/es/organism/wizard-contents/test/fixtures/playlist-populations-create.js.map +1 -1
  74. package/es/organism/wizard-contents/test/fixtures/playlist-translate-edit.js +0 -1
  75. package/es/organism/wizard-contents/test/fixtures/playlist-translate-edit.js.map +1 -1
  76. package/es/organism/wizard-contents/test/fixtures.js +0 -4
  77. package/es/organism/wizard-contents/test/fixtures.js.map +1 -1
  78. package/es/template/app-review/root-view/common.js +6 -0
  79. package/es/template/app-review/root-view/common.js.map +1 -0
  80. package/es/template/app-review/root-view/prop-types.js +11 -3
  81. package/es/template/app-review/root-view/prop-types.js.map +1 -1
  82. package/es/template/app-review/root-view/root-view.js +4 -38
  83. package/es/template/app-review/root-view/root-view.js.map +1 -1
  84. package/es/template/app-review/root-view/root-view.native.js +6 -5
  85. package/es/template/app-review/root-view/root-view.native.js.map +1 -1
  86. package/es/template/back-office/brand-update/test/fixtures.js +0 -2
  87. package/es/template/back-office/brand-update/test/fixtures.js.map +1 -1
  88. package/es/template/external-course/test/fixtures.js +0 -4
  89. package/es/template/external-course/test/fixtures.js.map +1 -1
  90. package/es/template/{app-review/review-dashboard-skills → review-dashboard-skills}/index.js +2 -2
  91. package/es/template/review-dashboard-skills/index.js.map +1 -0
  92. package/{lib/template/app-review → es/template}/review-dashboard-skills/style.css +2 -3
  93. package/es/template/review-dashboard-skills/test/fixtures/loading.js +10 -0
  94. package/es/template/review-dashboard-skills/test/fixtures/loading.js.map +1 -0
  95. package/es/template/review-dashboard-skills/test/fixtures/many-skills.js +10 -0
  96. package/es/template/review-dashboard-skills/test/fixtures/many-skills.js.map +1 -0
  97. package/es/template/review-dashboard-skills/test/fixtures/no-skills.js +10 -0
  98. package/es/template/review-dashboard-skills/test/fixtures/no-skills.js.map +1 -0
  99. package/lib/atom/button-link-icon-only/test/fixtures.js +0 -3
  100. package/lib/atom/button-link-icon-only/test/fixtures.js.map +1 -1
  101. package/lib/atom/cta/index.js +2 -1
  102. package/lib/atom/cta/index.js.map +1 -1
  103. package/lib/atom/cta/test/cta.js +115 -0
  104. package/lib/atom/cta/test/cta.js.map +1 -0
  105. package/lib/atom/drag-and-drop/test/fixtures.js +0 -18
  106. package/lib/atom/drag-and-drop/test/fixtures.js.map +1 -1
  107. package/lib/atom/image-upload/test/fixtures.js +3 -9
  108. package/lib/atom/image-upload/test/fixtures.js.map +1 -1
  109. package/lib/atom/review-presentation/style.css +1 -1
  110. package/lib/atom/review-presentation/test/fixtures/default.js +2 -2
  111. package/lib/atom/review-presentation/test/fixtures/default.js.map +1 -1
  112. package/lib/molecule/brand-form-group/test/fixtures.js +0 -3
  113. package/lib/molecule/brand-form-group/test/fixtures.js.map +1 -1
  114. package/lib/{atom → molecule}/checkbox-with-title/test/fixtures.js +4 -4
  115. package/lib/molecule/checkbox-with-title/test/fixtures.js.map +1 -0
  116. package/lib/molecule/cockpit-popin/test/fixtures.js +28 -0
  117. package/lib/molecule/cockpit-popin/test/fixtures.js.map +1 -0
  118. package/lib/molecule/course-section/test/fixtures.js +0 -9
  119. package/lib/molecule/course-section/test/fixtures.js.map +1 -1
  120. package/lib/molecule/course-sections/test/fixtures.js +0 -3
  121. package/lib/molecule/course-sections/test/fixtures.js.map +1 -1
  122. package/lib/molecule/news/index.js +1 -2
  123. package/lib/molecule/news/index.js.map +1 -1
  124. package/lib/molecule/popin/index.js +2 -2
  125. package/lib/molecule/popin/index.js.map +1 -1
  126. package/lib/molecule/questions/qcm/index.js +7 -9
  127. package/lib/molecule/questions/qcm/index.js.map +1 -1
  128. package/lib/molecule/questions/qcm/style.css +4 -0
  129. package/lib/molecule/questions/qcm/test/qcm.js +2 -2
  130. package/lib/molecule/questions/qcm/test/qcm.js.map +1 -1
  131. package/lib/molecule/questions/qcm-drag/index.js +12 -14
  132. package/lib/molecule/questions/qcm-drag/index.js.map +1 -1
  133. package/lib/molecule/questions/qcm-drag/style.css +4 -0
  134. package/lib/molecule/questions/qcm-graphic/index.js +8 -10
  135. package/lib/molecule/questions/qcm-graphic/index.js.map +1 -1
  136. package/lib/molecule/questions/qcm-graphic/style.css +5 -1
  137. package/lib/molecule/questions/question-range/index.js +6 -8
  138. package/lib/molecule/questions/question-range/index.js.map +1 -1
  139. package/lib/molecule/questions/question-range/style.css +4 -0
  140. package/lib/molecule/review-card-congrats/index.js +1 -1
  141. package/lib/molecule/review-card-congrats/index.js.map +1 -1
  142. package/lib/molecule/search/test/fixtures.js +25 -0
  143. package/lib/molecule/search/test/fixtures.js.map +1 -0
  144. package/lib/molecule/setup-slide/test/fixtures.js +0 -3
  145. package/lib/molecule/setup-slide/test/fixtures.js.map +1 -1
  146. package/lib/molecule/share/index.js +1 -1
  147. package/lib/molecule/share/index.js.map +1 -1
  148. package/lib/molecule/skill-card/style.css +9 -1
  149. package/lib/organism/brand-form/test/fixtures.js +0 -6
  150. package/lib/organism/brand-form/test/fixtures.js.map +1 -1
  151. package/lib/organism/course-selection/test/fixtures.js +0 -3
  152. package/lib/organism/course-selection/test/fixtures.js.map +1 -1
  153. package/lib/organism/playlist-translation/test/fixtures.js +25 -0
  154. package/lib/organism/playlist-translation/test/fixtures.js.map +1 -0
  155. package/lib/organism/review-skills/style.css +10 -1
  156. package/lib/organism/search-and-chips-results/test/fixtures.js +0 -3
  157. package/lib/organism/search-and-chips-results/test/fixtures.js.map +1 -1
  158. package/lib/organism/wizard-contents/test/fixtures/certification-general-settings-edit.js.map +1 -1
  159. package/lib/organism/wizard-contents/test/fixtures/certification-rewards.js.map +1 -1
  160. package/lib/organism/wizard-contents/test/fixtures/playlist-add-courses-create.js.map +1 -1
  161. package/lib/organism/wizard-contents/test/fixtures/playlist-general-settings-create.js.map +1 -1
  162. package/lib/organism/wizard-contents/test/fixtures/playlist-general-settings-edit.js.map +1 -1
  163. package/lib/organism/wizard-contents/test/fixtures/playlist-organize-courses.js.map +1 -1
  164. package/lib/organism/wizard-contents/test/fixtures/playlist-populations-create.js.map +1 -1
  165. package/lib/organism/wizard-contents/test/fixtures/playlist-translate-edit.js.map +1 -1
  166. package/lib/organism/wizard-contents/test/fixtures.js +0 -6
  167. package/lib/organism/wizard-contents/test/fixtures.js.map +1 -1
  168. package/lib/template/app-review/root-view/common.js +11 -0
  169. package/lib/template/app-review/root-view/common.js.map +1 -0
  170. package/lib/template/app-review/root-view/prop-types.js +15 -3
  171. package/lib/template/app-review/root-view/prop-types.js.map +1 -1
  172. package/lib/template/app-review/root-view/root-view.js +4 -38
  173. package/lib/template/app-review/root-view/root-view.js.map +1 -1
  174. package/lib/template/app-review/root-view/root-view.native.js +6 -4
  175. package/lib/template/app-review/root-view/root-view.native.js.map +1 -1
  176. package/lib/template/back-office/brand-update/test/fixtures.js +0 -3
  177. package/lib/template/back-office/brand-update/test/fixtures.js.map +1 -1
  178. package/lib/template/external-course/test/fixtures.js +0 -6
  179. package/lib/template/external-course/test/fixtures.js.map +1 -1
  180. package/lib/template/{app-review/review-dashboard-skills → review-dashboard-skills}/index.js +2 -2
  181. package/lib/template/review-dashboard-skills/index.js.map +1 -0
  182. package/{es/template/app-review → lib/template}/review-dashboard-skills/style.css +2 -3
  183. package/lib/template/{app-review/review-dashboard-skills → review-dashboard-skills}/test/fixtures/loading.js +2 -2
  184. package/lib/template/review-dashboard-skills/test/fixtures/loading.js.map +1 -0
  185. package/lib/template/{app-review/review-dashboard-skills → review-dashboard-skills}/test/fixtures/many-skills.js +2 -2
  186. package/lib/template/review-dashboard-skills/test/fixtures/many-skills.js.map +1 -0
  187. package/lib/template/{app-review/review-dashboard-skills → review-dashboard-skills}/test/fixtures/no-skills.js +2 -2
  188. package/lib/template/review-dashboard-skills/test/fixtures/no-skills.js.map +1 -0
  189. package/package.json +3 -3
  190. package/es/atom/checkbox-with-title/test/fixtures.js +0 -15
  191. package/es/atom/checkbox-with-title/test/fixtures.js.map +0 -1
  192. package/es/atom/cta/test/hover.js +0 -42
  193. package/es/atom/cta/test/hover.js.map +0 -1
  194. package/es/atom/input-text-with-title/test/fixtures.js +0 -15
  195. package/es/atom/input-text-with-title/test/fixtures.js.map +0 -1
  196. package/es/atom/lottie-wrapper/test/fixtures.js +0 -19
  197. package/es/atom/lottie-wrapper/test/fixtures.js.map +0 -1
  198. package/es/atom/review-background/test/fixtures.js +0 -13
  199. package/es/atom/review-background/test/fixtures.js.map +0 -1
  200. package/es/atom/review-presentation/test/fixtures.js +0 -13
  201. package/es/atom/review-presentation/test/fixtures.js.map +0 -1
  202. package/es/molecule/drag-and-drop-wrapper/test/fixtures.js +0 -17
  203. package/es/molecule/drag-and-drop-wrapper/test/fixtures.js.map +0 -1
  204. package/es/molecule/input-text-with-titled-checkbox/test/fixtures.js +0 -15
  205. package/es/molecule/input-text-with-titled-checkbox/test/fixtures.js.map +0 -1
  206. package/es/molecule/list-badges/test/fixtures.js +0 -19
  207. package/es/molecule/list-badges/test/fixtures.js.map +0 -1
  208. package/es/molecule/review-card-congrats/test/fixtures.js +0 -15
  209. package/es/molecule/review-card-congrats/test/fixtures.js.map +0 -1
  210. package/es/molecule/skill-card/test/fixtures.js +0 -19
  211. package/es/molecule/skill-card/test/fixtures.js.map +0 -1
  212. package/es/molecule/title-and-checkbox-wrapper/test/fixtures.js +0 -19
  213. package/es/molecule/title-and-checkbox-wrapper/test/fixtures.js.map +0 -1
  214. package/es/organism/review-congrats/test/fixtures.js +0 -13
  215. package/es/organism/review-congrats/test/fixtures.js.map +0 -1
  216. package/es/organism/review-header/test/fixtures.js +0 -25
  217. package/es/organism/review-header/test/fixtures.js.map +0 -1
  218. package/es/organism/review-skills/test/fixtures.js +0 -17
  219. package/es/organism/review-skills/test/fixtures.js.map +0 -1
  220. package/es/organism/rewards-form/test/fixtures.js +0 -19
  221. package/es/organism/rewards-form/test/fixtures.js.map +0 -1
  222. package/es/template/app-review/review-dashboard-skills/index.js.map +0 -1
  223. package/es/template/app-review/review-dashboard-skills/test/fixtures/loading.js +0 -10
  224. package/es/template/app-review/review-dashboard-skills/test/fixtures/loading.js.map +0 -1
  225. package/es/template/app-review/review-dashboard-skills/test/fixtures/many-skills.js +0 -10
  226. package/es/template/app-review/review-dashboard-skills/test/fixtures/many-skills.js.map +0 -1
  227. package/es/template/app-review/review-dashboard-skills/test/fixtures/no-skills.js +0 -10
  228. package/es/template/app-review/review-dashboard-skills/test/fixtures/no-skills.js.map +0 -1
  229. package/es/template/app-review/review-dashboard-skills/test/fixtures.js +0 -17
  230. package/es/template/app-review/review-dashboard-skills/test/fixtures.js.map +0 -1
  231. package/es/template/app-review/slides-review/test/fixtures.js +0 -19
  232. package/es/template/app-review/slides-review/test/fixtures.js.map +0 -1
  233. package/es/template/review-dashboard-skills/test/fixtures.js +0 -17
  234. package/es/template/review-dashboard-skills/test/fixtures.js.map +0 -1
  235. package/es/template/slides-review/test/fixtures.js +0 -19
  236. package/es/template/slides-review/test/fixtures.js.map +0 -1
  237. package/lib/atom/checkbox-with-title/test/fixtures.js.map +0 -1
  238. package/lib/atom/cta/test/hover.js +0 -54
  239. package/lib/atom/cta/test/hover.js.map +0 -1
  240. package/lib/atom/input-text-with-title/test/fixtures.js +0 -25
  241. package/lib/atom/input-text-with-title/test/fixtures.js.map +0 -1
  242. package/lib/atom/lottie-wrapper/test/fixtures.js +0 -31
  243. package/lib/atom/lottie-wrapper/test/fixtures.js.map +0 -1
  244. package/lib/atom/review-background/test/fixtures.js +0 -22
  245. package/lib/atom/review-background/test/fixtures.js.map +0 -1
  246. package/lib/atom/review-presentation/test/fixtures.js +0 -22
  247. package/lib/atom/review-presentation/test/fixtures.js.map +0 -1
  248. package/lib/molecule/drag-and-drop-wrapper/test/fixtures.js +0 -28
  249. package/lib/molecule/drag-and-drop-wrapper/test/fixtures.js.map +0 -1
  250. package/lib/molecule/input-text-with-titled-checkbox/test/fixtures.js +0 -25
  251. package/lib/molecule/input-text-with-titled-checkbox/test/fixtures.js.map +0 -1
  252. package/lib/molecule/list-badges/test/fixtures.js +0 -31
  253. package/lib/molecule/list-badges/test/fixtures.js.map +0 -1
  254. package/lib/molecule/review-card-congrats/test/fixtures.js +0 -25
  255. package/lib/molecule/review-card-congrats/test/fixtures.js.map +0 -1
  256. package/lib/molecule/skill-card/test/fixtures.js +0 -31
  257. package/lib/molecule/skill-card/test/fixtures.js.map +0 -1
  258. package/lib/molecule/title-and-checkbox-wrapper/test/fixtures.js +0 -31
  259. package/lib/molecule/title-and-checkbox-wrapper/test/fixtures.js.map +0 -1
  260. package/lib/organism/review-congrats/test/fixtures.js +0 -22
  261. package/lib/organism/review-congrats/test/fixtures.js.map +0 -1
  262. package/lib/organism/review-header/test/fixtures.js +0 -40
  263. package/lib/organism/review-header/test/fixtures.js.map +0 -1
  264. package/lib/organism/review-skills/test/fixtures.js +0 -28
  265. package/lib/organism/review-skills/test/fixtures.js.map +0 -1
  266. package/lib/organism/rewards-form/test/fixtures.js +0 -31
  267. package/lib/organism/rewards-form/test/fixtures.js.map +0 -1
  268. package/lib/template/app-review/review-dashboard-skills/index.js.map +0 -1
  269. package/lib/template/app-review/review-dashboard-skills/test/fixtures/loading.js.map +0 -1
  270. package/lib/template/app-review/review-dashboard-skills/test/fixtures/many-skills.js.map +0 -1
  271. package/lib/template/app-review/review-dashboard-skills/test/fixtures/no-skills.js.map +0 -1
  272. package/lib/template/app-review/review-dashboard-skills/test/fixtures.js +0 -28
  273. package/lib/template/app-review/review-dashboard-skills/test/fixtures.js.map +0 -1
  274. package/lib/template/app-review/slides-review/test/fixtures.js +0 -31
  275. package/lib/template/app-review/slides-review/test/fixtures.js.map +0 -1
  276. package/lib/template/review-dashboard-skills/test/fixtures.js +0 -28
  277. package/lib/template/review-dashboard-skills/test/fixtures.js.map +0 -1
  278. package/lib/template/slides-review/test/fixtures.js +0 -31
  279. package/lib/template/slides-review/test/fixtures.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/popin/index.js"],"names":["React","useState","useMemo","PropTypes","NovaCompositionCoorpacademyLocales","LocalesIcon","NovaSolidStatusClose","Close","NovaLineContentEditionBin","Bin","NovaLineContentEditionHide","Hide","Cta","Loader","style","Popin","props","context","skin","primaryColor","header","content","firstButtonLabel","onFirstButtonClick","secondeButtonLabel","onSecondeButtonClick","onClose","type","isLoading","backgroundImageUrl","logo","hiddenStateManagment","deleteContent","videoTranslate","LogoComponent","backgroundImageStyle","backgroundImage","value","setValue","object","message","email","handleChange","event","target","name","isAssistancePopin","handleClickOnSecondButton","background","loader","popin","popinHeader","headerCloseIcon","icon","color","__html","width","inputText","inputTextArea","lastInputText","buttonContainer","button","backgroundColor","propTypes","string","func","oneOf","bool"],"mappings":"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","sourcesContent":["import React, {useState, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr} from 'lodash/fp';\n\nimport {\n NovaCompositionCoorpacademyLocales as LocalesIcon,\n NovaSolidStatusClose as Close,\n NovaLineContentEditionBin as Bin,\n NovaLineContentEditionHide as Hide\n} from '@coorpacademy/nova-icons';\nimport Cta from '../../atom/button';\nimport Loader from '../../atom/loader';\nimport style from './style.css';\n\nconst Popin = (props, context) => {\n const {skin} = context;\n const primaryColor = getOr('#00B0FF', 'common.primary', skin);\n const {\n header,\n content,\n firstButtonLabel,\n onFirstButtonClick,\n secondeButtonLabel,\n onSecondeButtonClick,\n onClose,\n type,\n isLoading = false,\n backgroundImageUrl\n } = props;\n\n const logo = {\n hiddenStateManagment: Hide,\n deleteContent: Bin,\n videoTranslate: LocalesIcon\n };\n\n const LogoComponent = logo[type];\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`\n }\n : {};\n\n const [value, setValue] = useState({object: '', message: '', email: ''});\n\n const handleChange = useMemo(() => event => {\n setValue({...value, [event.target.name]: event.target.value});\n });\n\n const isAssistancePopin = type === 'assistance';\n\n const handleClickOnSecondButton = useMemo(() => {\n return type === 'assistance' ? onSecondeButtonClick(value) : onSecondeButtonClick;\n }, [value]);\n\n return (\n <div className={style.background} style={backgroundImageStyle}>\n {isLoading ? (\n <div className={style.loader}>\n <Loader data-name=\"cockpit-popin-loader\" />\n </div>\n ) : (\n <div className={style.popin}>\n <header className={style.popinHeader}>\n <Close onClick={onClose} className={style.headerCloseIcon} />\n </header>\n {LogoComponent ? (\n <LogoComponent className={style.icon} style={{color: primaryColor}} />\n ) : null}\n <div className={style.header} data-name={`cockpit-popin-header-${type}`}>\n {header}\n </div>\n <p\n className={style.content}\n data-name={`cockpit-popin-content-${type}`}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n\n {isAssistancePopin ? (\n <div style={{width: '70%'}}>\n <input\n data-name=\"contact-object\"\n className={style.inputText}\n name=\"object\"\n type=\"text\"\n placeholder=\"Object\"\n value={value.object}\n onChange={handleChange}\n />\n <textarea\n className={(style.inputText, style.inputTextArea)}\n data-name=\"contact-message\"\n name=\"message\"\n type=\"text\"\n placeholder=\"Message\"\n value={value.message}\n onChange={handleChange}\n />\n <input\n className={style.lastInputText}\n data-name=\"contact-email\"\n name=\"email\"\n type=\"text\"\n placeholder=\"Email\"\n value={value.email}\n onChange={handleChange}\n />\n </div>\n ) : null}\n\n <div className={style.buttonContainer}>\n {firstButtonLabel ? (\n <Cta\n submitValue={firstButtonLabel}\n onClick={onFirstButtonClick}\n name={`cockpit-popin-cta-${type}`}\n className={style.button}\n style={{\n backgroundColor: 'white',\n color: 'gray'\n }}\n />\n ) : null}\n {secondeButtonLabel ? (\n <Cta\n submitValue={secondeButtonLabel}\n onClick={handleClickOnSecondButton}\n name={`cockpit-popin-cta-${type}`}\n className={style.button}\n style={{backgroundColor: primaryColor}}\n disabled={isAssistancePopin && !value.message}\n />\n ) : null}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nPopin.propTypes = {\n header: PropTypes.string,\n content: PropTypes.string,\n firstButtonLabel: PropTypes.string,\n onFirstButtonClick: PropTypes.func,\n secondeButtonLabel: PropTypes.string,\n onSecondeButtonClick: PropTypes.func,\n onClose: PropTypes.func,\n type: PropTypes.oneOf(['videoTranslate', 'hiddenStateManagment', 'deleteContent', 'assistance']),\n isLoading: PropTypes.bool,\n backgroundImageUrl: PropTypes.string\n};\n\nexport default Popin;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/popin/index.js"],"names":["React","useState","useMemo","PropTypes","NovaCompositionCoorpacademyLocales","LocalesIcon","NovaSolidStatusClose","Close","NovaLineContentEditionBin","Bin","NovaLineContentEditionHide","Hide","Cta","Loader","style","Popin","props","context","skin","primaryColor","header","content","firstButtonLabel","onFirstButtonClick","secondeButtonLabel","onSecondeButtonClick","onClose","type","isLoading","backgroundImageUrl","logo","hiddenStateManagment","deleteContent","videoTranslate","LogoComponent","backgroundImageStyle","backgroundImage","value","setValue","object","message","email","handleChange","event","target","name","isAssistancePopin","handleClickOnSecondButton","background","loader","popin","popinHeader","headerCloseIcon","icon","color","__html","width","inputText","inputTextArea","lastInputText","buttonContainer","button","backgroundColor","propTypes","string","func","oneOf","bool"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAeC,QAAf,EAAyBC,OAAzB,QAAuC,OAAvC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAGA,SACEC,kCAAkC,IAAIC,WADxC,EAEEC,oBAAoB,IAAIC,KAF1B,EAGEC,yBAAyB,IAAIC,GAH/B,EAIEC,0BAA0B,IAAIC,IAJhC,QAKO,0BALP;AAMA,OAAOC,GAAP,MAAgB,mBAAhB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,KAAK,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AAChC,QAAM;AAACC,IAAAA;AAAD,MAASD,OAAf;;AACA,QAAME,YAAY,GAAG,OAAM,SAAN,EAAiB,gBAAjB,EAAmCD,IAAnC,CAArB;;AACA,QAAM;AACJE,IAAAA,MADI;AAEJC,IAAAA,OAFI;AAGJC,IAAAA,gBAHI;AAIJC,IAAAA,kBAJI;AAKJC,IAAAA,kBALI;AAMJC,IAAAA,oBANI;AAOJC,IAAAA,OAPI;AAQJC,IAAAA,IARI;AASJC,IAAAA,SAAS,GAAG,KATR;AAUJC,IAAAA;AAVI,MAWFb,KAXJ;AAaA,QAAMc,IAAI,GAAG;AACXC,IAAAA,oBAAoB,EAAEpB,IADX;AAEXqB,IAAAA,aAAa,EAAEvB,GAFJ;AAGXwB,IAAAA,cAAc,EAAE5B;AAHL,GAAb;AAMA,QAAM6B,aAAa,GAAGJ,IAAI,CAACH,IAAD,CAA1B;AACA,QAAMQ,oBAAoB,GAAGN,kBAAkB,GAC3C;AACEO,IAAAA,eAAe,EAAG,OAAMP,kBAAmB;AAD7C,GAD2C,GAI3C,EAJJ;AAMA,QAAM,CAACQ,KAAD,EAAQC,QAAR,IAAoBrC,QAAQ,CAAC;AAACsC,IAAAA,MAAM,EAAE,EAAT;AAAaC,IAAAA,OAAO,EAAE,EAAtB;AAA0BC,IAAAA,KAAK,EAAE;AAAjC,GAAD,CAAlC;AAEA,QAAMC,YAAY,GAAGxC,OAAO,CAC1B,MAAMyC,KAAK,IAAI;AACbL,IAAAA,QAAQ,uBAAKD,KAAL;AAAY,OAACM,KAAK,CAACC,MAAN,CAAaC,IAAd,GAAqBF,KAAK,CAACC,MAAN,CAAaP;AAA9C,OAAR;AACD,GAHyB,EAI1B,CAACA,KAAD,CAJ0B,CAA5B;AAOA,QAAMS,iBAAiB,GAAGnB,IAAI,KAAK,YAAnC;AAEA,QAAMoB,yBAAyB,GAAG7C,OAAO,CAAC,MAAM;AAC9C,WAAOyB,IAAI,KAAK,YAAT,GAAwBF,oBAAoB,CAACY,KAAD,CAA5C,GAAsDZ,oBAA7D;AACD,GAFwC,EAEtC,CAACY,KAAD,EAAQV,IAAR,EAAcF,oBAAd,CAFsC,CAAzC;AAIA,sBACE;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACkC,UAAtB;AAAkC,IAAA,KAAK,EAAEb;AAAzC,KACGP,SAAS,gBACR;AAAK,IAAA,SAAS,EAAEd,KAAK,CAACmC;AAAtB,kBACE,oBAAC,MAAD;AAAQ,iBAAU;AAAlB,IADF,CADQ,gBAKR;AAAK,IAAA,SAAS,EAAEnC,KAAK,CAACoC;AAAtB,kBACE;AAAQ,IAAA,SAAS,EAAEpC,KAAK,CAACqC;AAAzB,kBACE,oBAAC,KAAD;AAAO,IAAA,OAAO,EAAEzB,OAAhB;AAAyB,IAAA,SAAS,EAAEZ,KAAK,CAACsC;AAA1C,IADF,CADF,EAIGlB,aAAa,gBACZ,oBAAC,aAAD;AAAe,IAAA,SAAS,EAAEpB,KAAK,CAACuC,IAAhC;AAAsC,IAAA,KAAK,EAAE;AAACC,MAAAA,KAAK,EAAEnC;AAAR;AAA7C,IADY,GAEV,IANN,eAOE;AAAK,IAAA,SAAS,EAAEL,KAAK,CAACM,MAAtB;AAA8B,iBAAY,wBAAuBO,IAAK;AAAtE,KACGP,MADH,CAPF,eAUE;AACE,IAAA,SAAS,EAAEN,KAAK,CAACO,OADnB;AAEE,iBAAY,yBAAwBM,IAAK,EAF3C,CAGE;AAHF;AAIE,IAAA,uBAAuB,EAAE;AAAC4B,MAAAA,MAAM,EAAElC;AAAT;AAJ3B,IAVF,EAiBGyB,iBAAiB,gBAChB;AAAK,IAAA,KAAK,EAAE;AAACU,MAAAA,KAAK,EAAE;AAAR;AAAZ,kBACE;AACE,iBAAU,gBADZ;AAEE,IAAA,SAAS,EAAE1C,KAAK,CAAC2C,SAFnB;AAGE,IAAA,IAAI,EAAC,QAHP;AAIE,IAAA,IAAI,EAAC,MAJP;AAKE,IAAA,WAAW,EAAC,QALd;AAME,IAAA,KAAK,EAAEpB,KAAK,CAACE,MANf;AAOE,IAAA,QAAQ,EAAEG;AAPZ,IADF,eAUE;AACE,IAAA,SAAS,GAAG5B,KAAK,CAAC2C,SAAN,EAAiB3C,KAAK,CAAC4C,aAA1B,CADX;AAEE,iBAAU,iBAFZ;AAGE,IAAA,IAAI,EAAC,SAHP;AAIE,IAAA,IAAI,EAAC,MAJP;AAKE,IAAA,WAAW,EAAC,SALd;AAME,IAAA,KAAK,EAAErB,KAAK,CAACG,OANf;AAOE,IAAA,QAAQ,EAAEE;AAPZ,IAVF,eAmBE;AACE,IAAA,SAAS,EAAE5B,KAAK,CAAC6C,aADnB;AAEE,iBAAU,eAFZ;AAGE,IAAA,IAAI,EAAC,OAHP;AAIE,IAAA,IAAI,EAAC,MAJP;AAKE,IAAA,WAAW,EAAC,OALd;AAME,IAAA,KAAK,EAAEtB,KAAK,CAACI,KANf;AAOE,IAAA,QAAQ,EAAEC;AAPZ,IAnBF,CADgB,GA8Bd,IA/CN,eAiDE;AAAK,IAAA,SAAS,EAAE5B,KAAK,CAAC8C;AAAtB,KACGtC,gBAAgB,gBACf,oBAAC,GAAD;AACE,IAAA,WAAW,EAAEA,gBADf;AAEE,IAAA,OAAO,EAAEC,kBAFX;AAGE,IAAA,IAAI,EAAG,qBAAoBI,IAAK,EAHlC;AAIE,IAAA,SAAS,EAAEb,KAAK,CAAC+C,MAJnB;AAKE,IAAA,KAAK,EAAE;AACLC,MAAAA,eAAe,EAAE,OADZ;AAELR,MAAAA,KAAK,EAAE;AAFF;AALT,IADe,GAWb,IAZN,EAaG9B,kBAAkB,gBACjB,oBAAC,GAAD;AACE,IAAA,WAAW,EAAEA,kBADf;AAEE,IAAA,OAAO,EAAEuB,yBAFX;AAGE,IAAA,IAAI,EAAG,qBAAoBpB,IAAK,EAHlC;AAIE,IAAA,SAAS,EAAEb,KAAK,CAAC+C,MAJnB;AAKE,IAAA,KAAK,EAAE;AAACC,MAAAA,eAAe,EAAE3C;AAAlB,KALT;AAME,IAAA,QAAQ,EAAE2B,iBAAiB,IAAI,CAACT,KAAK,CAACG;AANxC,IADiB,GASf,IAtBN,CAjDF,CANJ,CADF;AAoFD,CAhID;;AAkIAzB,KAAK,CAACgD,SAAN,2CAAkB;AAChB3C,EAAAA,MAAM,EAAEjB,SAAS,CAAC6D,MADF;AAEhB3C,EAAAA,OAAO,EAAElB,SAAS,CAAC6D,MAFH;AAGhB1C,EAAAA,gBAAgB,EAAEnB,SAAS,CAAC6D,MAHZ;AAIhBzC,EAAAA,kBAAkB,EAAEpB,SAAS,CAAC8D,IAJd;AAKhBzC,EAAAA,kBAAkB,EAAErB,SAAS,CAAC6D,MALd;AAMhBvC,EAAAA,oBAAoB,EAAEtB,SAAS,CAAC8D,IANhB;AAOhBvC,EAAAA,OAAO,EAAEvB,SAAS,CAAC8D,IAPH;AAQhBtC,EAAAA,IAAI,EAAExB,SAAS,CAAC+D,KAAV,CAAgB,CAAC,gBAAD,EAAmB,sBAAnB,EAA2C,eAA3C,EAA4D,YAA5D,CAAhB,CARU;AAShBtC,EAAAA,SAAS,EAAEzB,SAAS,CAACgE,IATL;AAUhBtC,EAAAA,kBAAkB,EAAE1B,SAAS,CAAC6D;AAVd,CAAlB;AAaA,eAAejD,KAAf","sourcesContent":["import React, {useState, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr} from 'lodash/fp';\n\nimport {\n NovaCompositionCoorpacademyLocales as LocalesIcon,\n NovaSolidStatusClose as Close,\n NovaLineContentEditionBin as Bin,\n NovaLineContentEditionHide as Hide\n} from '@coorpacademy/nova-icons';\nimport Cta from '../../atom/button';\nimport Loader from '../../atom/loader';\nimport style from './style.css';\n\nconst Popin = (props, context) => {\n const {skin} = context;\n const primaryColor = getOr('#00B0FF', 'common.primary', skin);\n const {\n header,\n content,\n firstButtonLabel,\n onFirstButtonClick,\n secondeButtonLabel,\n onSecondeButtonClick,\n onClose,\n type,\n isLoading = false,\n backgroundImageUrl\n } = props;\n\n const logo = {\n hiddenStateManagment: Hide,\n deleteContent: Bin,\n videoTranslate: LocalesIcon\n };\n\n const LogoComponent = logo[type];\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`\n }\n : {};\n\n const [value, setValue] = useState({object: '', message: '', email: ''});\n\n const handleChange = useMemo(\n () => event => {\n setValue({...value, [event.target.name]: event.target.value});\n },\n [value]\n );\n\n const isAssistancePopin = type === 'assistance';\n\n const handleClickOnSecondButton = useMemo(() => {\n return type === 'assistance' ? onSecondeButtonClick(value) : onSecondeButtonClick;\n }, [value, type, onSecondeButtonClick]);\n\n return (\n <div className={style.background} style={backgroundImageStyle}>\n {isLoading ? (\n <div className={style.loader}>\n <Loader data-name=\"cockpit-popin-loader\" />\n </div>\n ) : (\n <div className={style.popin}>\n <header className={style.popinHeader}>\n <Close onClick={onClose} className={style.headerCloseIcon} />\n </header>\n {LogoComponent ? (\n <LogoComponent className={style.icon} style={{color: primaryColor}} />\n ) : null}\n <div className={style.header} data-name={`cockpit-popin-header-${type}`}>\n {header}\n </div>\n <p\n className={style.content}\n data-name={`cockpit-popin-content-${type}`}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n\n {isAssistancePopin ? (\n <div style={{width: '70%'}}>\n <input\n data-name=\"contact-object\"\n className={style.inputText}\n name=\"object\"\n type=\"text\"\n placeholder=\"Object\"\n value={value.object}\n onChange={handleChange}\n />\n <textarea\n className={(style.inputText, style.inputTextArea)}\n data-name=\"contact-message\"\n name=\"message\"\n type=\"text\"\n placeholder=\"Message\"\n value={value.message}\n onChange={handleChange}\n />\n <input\n className={style.lastInputText}\n data-name=\"contact-email\"\n name=\"email\"\n type=\"text\"\n placeholder=\"Email\"\n value={value.email}\n onChange={handleChange}\n />\n </div>\n ) : null}\n\n <div className={style.buttonContainer}>\n {firstButtonLabel ? (\n <Cta\n submitValue={firstButtonLabel}\n onClick={onFirstButtonClick}\n name={`cockpit-popin-cta-${type}`}\n className={style.button}\n style={{\n backgroundColor: 'white',\n color: 'gray'\n }}\n />\n ) : null}\n {secondeButtonLabel ? (\n <Cta\n submitValue={secondeButtonLabel}\n onClick={handleClickOnSecondButton}\n name={`cockpit-popin-cta-${type}`}\n className={style.button}\n style={{backgroundColor: primaryColor}}\n disabled={isAssistancePopin && !value.message}\n />\n ) : null}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nPopin.propTypes = {\n header: PropTypes.string,\n content: PropTypes.string,\n firstButtonLabel: PropTypes.string,\n onFirstButtonClick: PropTypes.func,\n secondeButtonLabel: PropTypes.string,\n onSecondeButtonClick: PropTypes.func,\n onClose: PropTypes.func,\n type: PropTypes.oneOf(['videoTranslate', 'hiddenStateManagment', 'deleteContent', 'assistance']),\n isLoading: PropTypes.bool,\n backgroundImageUrl: PropTypes.string\n};\n\nexport default Popin;\n"],"file":"index.js"}
@@ -6,7 +6,6 @@ import PropTypes from 'prop-types';
6
6
  import getOr from 'lodash/fp/getOr';
7
7
  import maxBy from 'lodash/fp/maxBy';
8
8
  import Provider from '../../../atom/provider';
9
- import { innerHTML } from '../../../atom/label/style.css';
10
9
  import { getShadowBoxColorFromPrimary } from '../../../util/get-shadow-box-color-from-primary';
11
10
  import style from './style.css';
12
11
 
@@ -33,7 +32,7 @@ const QCM = (props, context) => {
33
32
  return /*#__PURE__*/React.createElement("div", {
34
33
  "data-name": "answer",
35
34
  "aria-label": ariaLabel || title,
36
- className: classnames(longAnswerClass, innerHTML, selectedAnswerClass),
35
+ className: classnames(longAnswerClass, style.innerHTML, selectedAnswerClass),
37
36
  onClick: onClick,
38
37
  style: _extends({}, selected && {
39
38
  boxShadow: `0 4px 16px ${getShadowBoxColorFromPrimary(primarySkinColor)}`
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/questions/qcm/index.js"],"names":["React","useMemo","classnames","PropTypes","getOr","maxBy","Provider","innerHTML","getShadowBoxColorFromPrimary","style","QCM","props","context","answers","longestAnswer","title","length","skin","primarySkinColor","answersViews","map","answer","key","onClick","selected","ariaLabel","longAnswerClass","selectedAnswerClass","selectedAnswer","unselectedAnswer","boxShadow","backgroundColor","background","answerText","__html","wrapper","contextTypes","childContextTypes","propTypes","arrayOf","shape","string","bool","func"],"mappings":";;AAAA,OAAOA,KAAP,IAAeC,OAAf,QAA6B,OAA7B;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,iBAAlB;AACA,OAAOC,KAAP,MAAkB,iBAAlB;AACA,OAAOC,QAAP,MAAqB,wBAArB;AACA,SAAQC,SAAR,QAAwB,+BAAxB;AACA,SAAQC,4BAAR,QAA2C,iDAA3C;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,GAAG,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AAC9B,QAAM;AAACC,IAAAA;AAAD,MAAYF,KAAlB;AACA,QAAMG,aAAa,GAAGT,KAAK,CAAC,CAAC;AAACU,IAAAA;AAAD,GAAD,KAAaA,KAAK,CAACC,MAApB,EAA4BH,OAA5B,CAA3B;AACA,QAAM;AAACI,IAAAA;AAAD,MAASL,OAAf;AACA,QAAMM,gBAAgB,GAAGd,KAAK,CAAC,SAAD,EAAY,gBAAZ,EAA8Ba,IAA9B,CAA9B;AAEA,QAAME,YAAY,GAAGlB,OAAO,CAC1B,MACEY,OAAO,CAACO,GAAR,CAAY,CAACC,MAAD,EAASC,GAAT,KAAiB;AAC3B,UAAM;AAACC,MAAAA,OAAD;AAAUR,MAAAA,KAAV;AAAiBS,MAAAA,QAAjB;AAA2B,oBAAcC;AAAzC,QAAsDJ,MAA5D;AACA,UAAMK,eAAe,GAAGZ,aAAa,CAACC,KAAd,KAAwBA,KAAxB,GAAgCN,KAAK,CAACK,aAAtC,GAAsDL,KAAK,CAACY,MAApF;AACA,UAAMM,mBAAmB,GAAGH,QAAQ,GAAGf,KAAK,CAACmB,cAAT,GAA0BnB,KAAK,CAACoB,gBAApE;AAEA,wBACE;AACE,mBAAU,QADZ;AAEE,oBAAYJ,SAAS,IAAIV,KAF3B;AAGE,MAAA,SAAS,EAAEb,UAAU,CAACwB,eAAD,EAAkBnB,SAAlB,EAA6BoB,mBAA7B,CAHvB;AAIE,MAAA,OAAO,EAAEJ,OAJX;AAKE,MAAA,KAAK,eACCC,QAAQ,IAAI;AACdM,QAAAA,SAAS,EAAG,cAAatB,4BAA4B,CAACU,gBAAD,CAAmB;AAD1D,OADb,CALP;AAUE,uBAAeM,QAVjB;AAWE,MAAA,GAAG,EAAEF;AAXP,oBAaE;AACE,mBAAU,mBADZ;AAEE,MAAA,KAAK,EAAE;AAACS,QAAAA,eAAe,EAAEP,QAAQ,GAAGN,gBAAH,GAAsB;AAAU;;AAA1D,OAFT;AAGE,MAAA,SAAS,EAAET,KAAK,CAACuB;AAHnB,MAbF,eAkBE;AACE,mBAAU,cADZ;AAEE,MAAA,SAAS,EAAEvB,KAAK,CAACwB,UAFnB,CAGE;AAHF;AAIE,MAAA,uBAAuB,EAAE;AAACC,QAAAA,MAAM,EAAEnB;AAAT;AAJ3B,MAlBF,CADF;AA2BD,GAhCD,CAFwB,EAmC1B,CAACF,OAAD,EAAUC,aAAV,EAAyBI,gBAAzB,CAnC0B,CAA5B;AAsCA,sBACE;AAAK,iBAAU,KAAf;AAAqB,IAAA,SAAS,EAAET,KAAK,CAAC0B;AAAtC,KACGhB,YADH,CADF;AAKD,CAjDD;;AAmDAT,GAAG,CAAC0B,YAAJ,GAAmB;AACjBnB,EAAAA,IAAI,EAAEX,QAAQ,CAAC+B,iBAAT,CAA2BpB;AADhB,CAAnB;AAIAP,GAAG,CAAC4B,SAAJ,2CAAgB;AACdzB,EAAAA,OAAO,EAAEV,SAAS,CAACoC,OAAV,CACPpC,SAAS,CAACqC,KAAV,CAAgB;AACdzB,IAAAA,KAAK,EAAEZ,SAAS,CAACsC,MADH;AAEdjB,IAAAA,QAAQ,EAAErB,SAAS,CAACuC,IAFN;AAGdnB,IAAAA,OAAO,EAAEpB,SAAS,CAACwC,IAHL;AAId,kBAAcxC,SAAS,CAACsC;AAJV,GAAhB,CADO;AADK,CAAhB;AAWA,eAAe/B,GAAf","sourcesContent":["import React, {useMemo} from 'react';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport maxBy from 'lodash/fp/maxBy';\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 QCM = (props, context) => {\n const {answers} = props;\n const longestAnswer = maxBy(({title}) => title.length, answers);\n const {skin} = context;\n const primarySkinColor = getOr('#00B0FF', 'common.primary', skin);\n\n const answersViews = useMemo(\n () =>\n answers.map((answer, key) => {\n const {onClick, title, selected, 'aria-label': ariaLabel} = answer;\n const longAnswerClass = longestAnswer.title === title ? style.longestAnswer : style.answer;\n const selectedAnswerClass = selected ? style.selectedAnswer : style.unselectedAnswer;\n\n return (\n <div\n data-name=\"answer\"\n aria-label={ariaLabel || title}\n className={classnames(longAnswerClass, innerHTML, selectedAnswerClass)}\n onClick={onClick}\n style={{\n ...(selected && {\n boxShadow: `0 4px 16px ${getShadowBoxColorFromPrimary(primarySkinColor)}`\n })\n }}\n data-selected={selected}\n key={key}\n >\n <div\n data-name=\"answer-background\"\n style={{backgroundColor: selected ? primarySkinColor : '#F4F4F5' /* cm_grey_75 */}}\n className={style.background}\n />\n <span\n data-name=\"answer-label\"\n className={style.answerText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n );\n }),\n [answers, longestAnswer, primarySkinColor]\n );\n\n return (\n <div data-name=\"qcm\" className={style.wrapper}>\n {answersViews}\n </div>\n );\n};\n\nQCM.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQCM.propTypes = {\n answers: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n selected: PropTypes.bool,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n )\n};\n\nexport default QCM;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/questions/qcm/index.js"],"names":["React","useMemo","classnames","PropTypes","getOr","maxBy","Provider","getShadowBoxColorFromPrimary","style","QCM","props","context","answers","longestAnswer","title","length","skin","primarySkinColor","answersViews","map","answer","key","onClick","selected","ariaLabel","longAnswerClass","selectedAnswerClass","selectedAnswer","unselectedAnswer","innerHTML","boxShadow","backgroundColor","background","answerText","__html","wrapper","contextTypes","childContextTypes","propTypes","arrayOf","shape","string","bool","func"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport maxBy from 'lodash/fp/maxBy';\nimport Provider from '../../../atom/provider';\nimport {getShadowBoxColorFromPrimary} from '../../../util/get-shadow-box-color-from-primary';\nimport style from './style.css';\n\nconst QCM = (props, context) => {\n const {answers} = props;\n const longestAnswer = maxBy(({title}) => title.length, answers);\n const {skin} = context;\n const primarySkinColor = getOr('#00B0FF', 'common.primary', skin);\n\n const answersViews = useMemo(\n () =>\n answers.map((answer, key) => {\n const {onClick, title, selected, 'aria-label': ariaLabel} = answer;\n const longAnswerClass = longestAnswer.title === title ? style.longestAnswer : style.answer;\n const selectedAnswerClass = selected ? style.selectedAnswer : style.unselectedAnswer;\n\n return (\n <div\n data-name=\"answer\"\n aria-label={ariaLabel || title}\n className={classnames(longAnswerClass, style.innerHTML, selectedAnswerClass)}\n onClick={onClick}\n style={{\n ...(selected && {\n boxShadow: `0 4px 16px ${getShadowBoxColorFromPrimary(primarySkinColor)}`\n })\n }}\n data-selected={selected}\n key={key}\n >\n <div\n data-name=\"answer-background\"\n style={{backgroundColor: selected ? primarySkinColor : '#F4F4F5' /* cm_grey_75 */}}\n className={style.background}\n />\n <span\n data-name=\"answer-label\"\n className={style.answerText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n );\n }),\n [answers, longestAnswer, primarySkinColor]\n );\n\n return (\n <div data-name=\"qcm\" className={style.wrapper}>\n {answersViews}\n </div>\n );\n};\n\nQCM.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQCM.propTypes = {\n answers: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n selected: PropTypes.bool,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n )\n};\n\nexport default QCM;\n"],"file":"index.js"}
@@ -105,3 +105,7 @@
105
105
  padding: 8px 24px;
106
106
  }
107
107
  }
108
+
109
+ .innerHTML {
110
+ composes: innerHTML from '../../../atom/label/style.css'
111
+ }
@@ -87,10 +87,10 @@ test('should set className to longAnswer if the answer is the longest of the set
87
87
  const answer = wrapper.find('[data-name="answer"]'); // regular answer
88
88
 
89
89
  t.true(answer.at(4).exists());
90
- t.is(answer.at(4).props().className, 'qcm__answer label__innerHTML qcm__selectedAnswer'); // long answer
90
+ t.is(answer.at(4).props().className, 'qcm__answer qcm__innerHTML label__innerHTML qcm__selectedAnswer'); // long answer
91
91
 
92
92
  t.true(answer.at(5).exists());
93
- t.is(answer.at(5).props().className, 'qcm__longestAnswer qcm__answer qcm__answer label__innerHTML qcm__unselectedAnswer');
93
+ t.is(answer.at(5).props().className, 'qcm__longestAnswer qcm__answer qcm__answer qcm__innerHTML label__innerHTML qcm__unselectedAnswer');
94
94
  t.pass();
95
95
  });
96
96
  test('should use title as default aria-label if no aria-label is provided', t => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/molecule/questions/qcm/test/qcm.js"],"names":["browserEnv","test","React","shallow","mount","configure","Adapter","Qcm","defaultFixture","noAriaLabelFixture","adapter","translate","t","answerWasClicked","props","answers","onClick","wrapper","context","find","true","at","exists","is","simulate","pass","unselectedAnswer","expectedPrimaryColor","deepEqual","style","unselectedLabel","children","falsy","dangerouslySetInnerHTML","__html","text","unselectedBackground","backgroundColor","selectedAnswer","boxShadow","selectedLabel","selectedBackground","answer","className"],"mappings":"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","sourcesContent":["import browserEnv from 'browser-env';\nimport test from 'ava';\nimport React from 'react';\nimport {shallow, mount, configure} from 'enzyme';\nimport {identity} from 'lodash/fp';\nimport Adapter from '@wojtekmaj/enzyme-adapter-react-17';\nimport Qcm from '..';\nimport defaultFixture from './fixtures/default';\nimport noAriaLabelFixture from './fixtures/no-selected';\n\nbrowserEnv();\nconfigure({adapter: new Adapter()});\nconst translate = identity;\n\ntest('onClick should be reachable, should match given aria-label', t => {\n let answerWasClicked = false;\n defaultFixture.props.answers[1] = {\n ...defaultFixture.props.answers[1],\n onClick: () => {\n answerWasClicked = true;\n }\n };\n const wrapper = shallow(<Qcm {...defaultFixture.props} />, {\n context: {translate}\n });\n const answers = wrapper.find('[data-name=\"answer\"]');\n t.true(answers.at(1).exists());\n t.is(answers.at(1).props()['aria-label'], 'aria Answer');\n answers.at(1).simulate('click', {});\n t.true(answerWasClicked);\n t.pass();\n});\n\ntest(\"should set: selected's background to Primary, unselected's no background\", t => {\n const wrapper = mount(<Qcm {...defaultFixture.props} />);\n const answers = wrapper.find('[data-name=\"answer\"]');\n const unselectedAnswer = answers.at(1);\n const expectedPrimaryColor = '#00B0FF';\n // ---- unselected ----\n // should not have styles on the wrapper\n t.true(unselectedAnswer.exists());\n t.deepEqual(unselectedAnswer.props().style, {});\n\n // should not have any styles (color should be picked from the css for unselected)\n const unselectedLabel = unselectedAnswer.children().at(1);\n t.true(unselectedLabel.exists());\n t.falsy(unselectedLabel.props().style);\n\n // check dangerouslySetInnerHTML\n t.deepEqual(unselectedLabel.props().dangerouslySetInnerHTML, {\n __html: 'Lorem ipsum'\n });\n t.is(unselectedLabel.text(), 'Lorem ipsum');\n\n // should have a backgroundColor of '#F4F4F5' /* cm_grey_75 */\n const unselectedBackground = unselectedAnswer.children().at(0);\n t.true(unselectedBackground.exists());\n t.deepEqual(unselectedBackground.props().style, {\n backgroundColor: '#F4F4F5'\n });\n\n // selected\n // should have box-shadow color based on primary\n const selectedAnswer = answers.at(2);\n t.true(selectedAnswer.exists());\n t.deepEqual(selectedAnswer.props().style, {\n boxShadow: '0 4px 16px rgba(0, 122, 179, 0.25)'\n });\n\n // should not have any prop in label style\n const selectedLabel = selectedAnswer.children().at(1);\n t.true(selectedLabel.exists());\n t.falsy(selectedLabel.props().style);\n\n // check dangerouslySetInnerHTML\n t.deepEqual(selectedLabel.props().dangerouslySetInnerHTML, {\n __html: 'Lorem'\n });\n\n t.is(selectedLabel.text(), 'Lorem');\n\n // should have backgroundColor as expectedPrimaryColor (primary to be overlayed by the css)\n const selectedBackground = selectedAnswer.children().at(0);\n t.true(selectedBackground.exists());\n t.deepEqual(selectedBackground.props().style, {\n backgroundColor: expectedPrimaryColor\n });\n\n t.pass();\n});\n\ntest('should set className to longAnswer if the answer is the longest of the set', t => {\n const wrapper = mount(<Qcm {...defaultFixture.props} />);\n const answer = wrapper.find('[data-name=\"answer\"]');\n // regular answer\n t.true(answer.at(4).exists());\n t.is(answer.at(4).props().className, 'qcm__answer label__innerHTML qcm__selectedAnswer');\n\n // long answer\n t.true(answer.at(5).exists());\n t.is(\n answer.at(5).props().className,\n 'qcm__longestAnswer qcm__answer qcm__answer label__innerHTML qcm__unselectedAnswer'\n );\n t.pass();\n});\n\ntest('should use title as default aria-label if no aria-label is provided', t => {\n const wrapper = mount(<Qcm {...noAriaLabelFixture.props} />);\n const answers = wrapper.find('[data-name=\"answer\"]');\n t.is(answers.at(6).text(), 'Lorem ipsum dolor');\n t.is(answers.at(6).props()['aria-label'], 'Lorem ipsum dolor');\n t.pass();\n});\n"],"file":"qcm.js"}
1
+ {"version":3,"sources":["../../../../../src/molecule/questions/qcm/test/qcm.js"],"names":["browserEnv","test","React","shallow","mount","configure","Adapter","Qcm","defaultFixture","noAriaLabelFixture","adapter","translate","t","answerWasClicked","props","answers","onClick","wrapper","context","find","true","at","exists","is","simulate","pass","unselectedAnswer","expectedPrimaryColor","deepEqual","style","unselectedLabel","children","falsy","dangerouslySetInnerHTML","__html","text","unselectedBackground","backgroundColor","selectedAnswer","boxShadow","selectedLabel","selectedBackground","answer","className"],"mappings":";;;;AAAA,OAAOA,UAAP,MAAuB,aAAvB;AACA,OAAOC,IAAP,MAAiB,KAAjB;AACA,OAAOC,KAAP,MAAkB,OAAlB;AACA,SAAQC,OAAR,EAAiBC,KAAjB,EAAwBC,SAAxB,QAAwC,QAAxC;AAEA,OAAOC,OAAP,MAAoB,oCAApB;AACA,OAAOC,GAAP,MAAgB,IAAhB;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,kBAAP,MAA+B,wBAA/B;AAEAT,UAAU;AACVK,SAAS,CAAC;AAACK,EAAAA,OAAO,EAAE,IAAIJ,OAAJ;AAAV,CAAD,CAAT;AACA,MAAMK,SAAS,YAAf;AAEAV,IAAI,CAAC,4DAAD,EAA+DW,CAAC,IAAI;AACtE,MAAIC,gBAAgB,GAAG,KAAvB;AACAL,EAAAA,cAAc,CAACM,KAAf,CAAqBC,OAArB,CAA6B,CAA7B,0BACKP,cAAc,CAACM,KAAf,CAAqBC,OAArB,CAA6B,CAA7B,CADL;AAEEC,IAAAA,OAAO,EAAE,MAAM;AACbH,MAAAA,gBAAgB,GAAG,IAAnB;AACD;AAJH;AAMA,QAAMI,OAAO,GAAGd,OAAO,eAAC,oBAAC,GAAD,EAASK,cAAc,CAACM,KAAxB,CAAD,EAAoC;AACzDI,IAAAA,OAAO,EAAE;AAACP,MAAAA;AAAD;AADgD,GAApC,CAAvB;AAGA,QAAMI,OAAO,GAAGE,OAAO,CAACE,IAAR,CAAa,sBAAb,CAAhB;AACAP,EAAAA,CAAC,CAACQ,IAAF,CAAOL,OAAO,CAACM,EAAR,CAAW,CAAX,EAAcC,MAAd,EAAP;AACAV,EAAAA,CAAC,CAACW,EAAF,CAAKR,OAAO,CAACM,EAAR,CAAW,CAAX,EAAcP,KAAd,GAAsB,YAAtB,CAAL,EAA0C,aAA1C;AACAC,EAAAA,OAAO,CAACM,EAAR,CAAW,CAAX,EAAcG,QAAd,CAAuB,OAAvB,EAAgC,EAAhC;AACAZ,EAAAA,CAAC,CAACQ,IAAF,CAAOP,gBAAP;AACAD,EAAAA,CAAC,CAACa,IAAF;AACD,CAjBG,CAAJ;AAmBAxB,IAAI,CAAC,0EAAD,EAA6EW,CAAC,IAAI;AACpF,QAAMK,OAAO,GAAGb,KAAK,eAAC,oBAAC,GAAD,EAASI,cAAc,CAACM,KAAxB,CAAD,CAArB;AACA,QAAMC,OAAO,GAAGE,OAAO,CAACE,IAAR,CAAa,sBAAb,CAAhB;AACA,QAAMO,gBAAgB,GAAGX,OAAO,CAACM,EAAR,CAAW,CAAX,CAAzB;AACA,QAAMM,oBAAoB,GAAG,SAA7B,CAJoF,CAKpF;AACA;;AACAf,EAAAA,CAAC,CAACQ,IAAF,CAAOM,gBAAgB,CAACJ,MAAjB,EAAP;AACAV,EAAAA,CAAC,CAACgB,SAAF,CAAYF,gBAAgB,CAACZ,KAAjB,GAAyBe,KAArC,EAA4C,EAA5C,EARoF,CAUpF;;AACA,QAAMC,eAAe,GAAGJ,gBAAgB,CAACK,QAAjB,GAA4BV,EAA5B,CAA+B,CAA/B,CAAxB;AACAT,EAAAA,CAAC,CAACQ,IAAF,CAAOU,eAAe,CAACR,MAAhB,EAAP;AACAV,EAAAA,CAAC,CAACoB,KAAF,CAAQF,eAAe,CAAChB,KAAhB,GAAwBe,KAAhC,EAboF,CAepF;;AACAjB,EAAAA,CAAC,CAACgB,SAAF,CAAYE,eAAe,CAAChB,KAAhB,GAAwBmB,uBAApC,EAA6D;AAC3DC,IAAAA,MAAM,EAAE;AADmD,GAA7D;AAGAtB,EAAAA,CAAC,CAACW,EAAF,CAAKO,eAAe,CAACK,IAAhB,EAAL,EAA6B,aAA7B,EAnBoF,CAqBpF;;AACA,QAAMC,oBAAoB,GAAGV,gBAAgB,CAACK,QAAjB,GAA4BV,EAA5B,CAA+B,CAA/B,CAA7B;AACAT,EAAAA,CAAC,CAACQ,IAAF,CAAOgB,oBAAoB,CAACd,MAArB,EAAP;AACAV,EAAAA,CAAC,CAACgB,SAAF,CAAYQ,oBAAoB,CAACtB,KAArB,GAA6Be,KAAzC,EAAgD;AAC9CQ,IAAAA,eAAe,EAAE;AAD6B,GAAhD,EAxBoF,CA4BpF;AACA;;AACA,QAAMC,cAAc,GAAGvB,OAAO,CAACM,EAAR,CAAW,CAAX,CAAvB;AACAT,EAAAA,CAAC,CAACQ,IAAF,CAAOkB,cAAc,CAAChB,MAAf,EAAP;AACAV,EAAAA,CAAC,CAACgB,SAAF,CAAYU,cAAc,CAACxB,KAAf,GAAuBe,KAAnC,EAA0C;AACxCU,IAAAA,SAAS,EAAE;AAD6B,GAA1C,EAhCoF,CAoCpF;;AACA,QAAMC,aAAa,GAAGF,cAAc,CAACP,QAAf,GAA0BV,EAA1B,CAA6B,CAA7B,CAAtB;AACAT,EAAAA,CAAC,CAACQ,IAAF,CAAOoB,aAAa,CAAClB,MAAd,EAAP;AACAV,EAAAA,CAAC,CAACoB,KAAF,CAAQQ,aAAa,CAAC1B,KAAd,GAAsBe,KAA9B,EAvCoF,CAyCpF;;AACAjB,EAAAA,CAAC,CAACgB,SAAF,CAAYY,aAAa,CAAC1B,KAAd,GAAsBmB,uBAAlC,EAA2D;AACzDC,IAAAA,MAAM,EAAE;AADiD,GAA3D;AAIAtB,EAAAA,CAAC,CAACW,EAAF,CAAKiB,aAAa,CAACL,IAAd,EAAL,EAA2B,OAA3B,EA9CoF,CAgDpF;;AACA,QAAMM,kBAAkB,GAAGH,cAAc,CAACP,QAAf,GAA0BV,EAA1B,CAA6B,CAA7B,CAA3B;AACAT,EAAAA,CAAC,CAACQ,IAAF,CAAOqB,kBAAkB,CAACnB,MAAnB,EAAP;AACAV,EAAAA,CAAC,CAACgB,SAAF,CAAYa,kBAAkB,CAAC3B,KAAnB,GAA2Be,KAAvC,EAA8C;AAC5CQ,IAAAA,eAAe,EAAEV;AAD2B,GAA9C;AAIAf,EAAAA,CAAC,CAACa,IAAF;AACD,CAxDG,CAAJ;AA0DAxB,IAAI,CAAC,4EAAD,EAA+EW,CAAC,IAAI;AACtF,QAAMK,OAAO,GAAGb,KAAK,eAAC,oBAAC,GAAD,EAASI,cAAc,CAACM,KAAxB,CAAD,CAArB;AACA,QAAM4B,MAAM,GAAGzB,OAAO,CAACE,IAAR,CAAa,sBAAb,CAAf,CAFsF,CAGtF;;AACAP,EAAAA,CAAC,CAACQ,IAAF,CAAOsB,MAAM,CAACrB,EAAP,CAAU,CAAV,EAAaC,MAAb,EAAP;AACAV,EAAAA,CAAC,CAACW,EAAF,CACEmB,MAAM,CAACrB,EAAP,CAAU,CAAV,EAAaP,KAAb,GAAqB6B,SADvB,EAEE,iEAFF,EALsF,CAUtF;;AACA/B,EAAAA,CAAC,CAACQ,IAAF,CAAOsB,MAAM,CAACrB,EAAP,CAAU,CAAV,EAAaC,MAAb,EAAP;AACAV,EAAAA,CAAC,CAACW,EAAF,CACEmB,MAAM,CAACrB,EAAP,CAAU,CAAV,EAAaP,KAAb,GAAqB6B,SADvB,EAEE,kGAFF;AAIA/B,EAAAA,CAAC,CAACa,IAAF;AACD,CAjBG,CAAJ;AAmBAxB,IAAI,CAAC,qEAAD,EAAwEW,CAAC,IAAI;AAC/E,QAAMK,OAAO,GAAGb,KAAK,eAAC,oBAAC,GAAD,EAASK,kBAAkB,CAACK,KAA5B,CAAD,CAArB;AACA,QAAMC,OAAO,GAAGE,OAAO,CAACE,IAAR,CAAa,sBAAb,CAAhB;AACAP,EAAAA,CAAC,CAACW,EAAF,CAAKR,OAAO,CAACM,EAAR,CAAW,CAAX,EAAcc,IAAd,EAAL,EAA2B,mBAA3B;AACAvB,EAAAA,CAAC,CAACW,EAAF,CAAKR,OAAO,CAACM,EAAR,CAAW,CAAX,EAAcP,KAAd,GAAsB,YAAtB,CAAL,EAA0C,mBAA1C;AACAF,EAAAA,CAAC,CAACa,IAAF;AACD,CANG,CAAJ","sourcesContent":["import browserEnv from 'browser-env';\nimport test from 'ava';\nimport React from 'react';\nimport {shallow, mount, configure} from 'enzyme';\nimport {identity} from 'lodash/fp';\nimport Adapter from '@wojtekmaj/enzyme-adapter-react-17';\nimport Qcm from '..';\nimport defaultFixture from './fixtures/default';\nimport noAriaLabelFixture from './fixtures/no-selected';\n\nbrowserEnv();\nconfigure({adapter: new Adapter()});\nconst translate = identity;\n\ntest('onClick should be reachable, should match given aria-label', t => {\n let answerWasClicked = false;\n defaultFixture.props.answers[1] = {\n ...defaultFixture.props.answers[1],\n onClick: () => {\n answerWasClicked = true;\n }\n };\n const wrapper = shallow(<Qcm {...defaultFixture.props} />, {\n context: {translate}\n });\n const answers = wrapper.find('[data-name=\"answer\"]');\n t.true(answers.at(1).exists());\n t.is(answers.at(1).props()['aria-label'], 'aria Answer');\n answers.at(1).simulate('click', {});\n t.true(answerWasClicked);\n t.pass();\n});\n\ntest(\"should set: selected's background to Primary, unselected's no background\", t => {\n const wrapper = mount(<Qcm {...defaultFixture.props} />);\n const answers = wrapper.find('[data-name=\"answer\"]');\n const unselectedAnswer = answers.at(1);\n const expectedPrimaryColor = '#00B0FF';\n // ---- unselected ----\n // should not have styles on the wrapper\n t.true(unselectedAnswer.exists());\n t.deepEqual(unselectedAnswer.props().style, {});\n\n // should not have any styles (color should be picked from the css for unselected)\n const unselectedLabel = unselectedAnswer.children().at(1);\n t.true(unselectedLabel.exists());\n t.falsy(unselectedLabel.props().style);\n\n // check dangerouslySetInnerHTML\n t.deepEqual(unselectedLabel.props().dangerouslySetInnerHTML, {\n __html: 'Lorem ipsum'\n });\n t.is(unselectedLabel.text(), 'Lorem ipsum');\n\n // should have a backgroundColor of '#F4F4F5' /* cm_grey_75 */\n const unselectedBackground = unselectedAnswer.children().at(0);\n t.true(unselectedBackground.exists());\n t.deepEqual(unselectedBackground.props().style, {\n backgroundColor: '#F4F4F5'\n });\n\n // selected\n // should have box-shadow color based on primary\n const selectedAnswer = answers.at(2);\n t.true(selectedAnswer.exists());\n t.deepEqual(selectedAnswer.props().style, {\n boxShadow: '0 4px 16px rgba(0, 122, 179, 0.25)'\n });\n\n // should not have any prop in label style\n const selectedLabel = selectedAnswer.children().at(1);\n t.true(selectedLabel.exists());\n t.falsy(selectedLabel.props().style);\n\n // check dangerouslySetInnerHTML\n t.deepEqual(selectedLabel.props().dangerouslySetInnerHTML, {\n __html: 'Lorem'\n });\n\n t.is(selectedLabel.text(), 'Lorem');\n\n // should have backgroundColor as expectedPrimaryColor (primary to be overlayed by the css)\n const selectedBackground = selectedAnswer.children().at(0);\n t.true(selectedBackground.exists());\n t.deepEqual(selectedBackground.props().style, {\n backgroundColor: expectedPrimaryColor\n });\n\n t.pass();\n});\n\ntest('should set className to longAnswer if the answer is the longest of the set', t => {\n const wrapper = mount(<Qcm {...defaultFixture.props} />);\n const answer = wrapper.find('[data-name=\"answer\"]');\n // regular answer\n t.true(answer.at(4).exists());\n t.is(\n answer.at(4).props().className,\n 'qcm__answer qcm__innerHTML label__innerHTML qcm__selectedAnswer'\n );\n\n // long answer\n t.true(answer.at(5).exists());\n t.is(\n answer.at(5).props().className,\n 'qcm__longestAnswer qcm__answer qcm__answer qcm__innerHTML label__innerHTML qcm__unselectedAnswer'\n );\n t.pass();\n});\n\ntest('should use title as default aria-label if no aria-label is provided', t => {\n const wrapper = mount(<Qcm {...noAriaLabelFixture.props} />);\n const answers = wrapper.find('[data-name=\"answer\"]');\n t.is(answers.at(6).text(), 'Lorem ipsum dolor');\n t.is(answers.at(6).props()['aria-label'], 'Lorem ipsum dolor');\n t.pass();\n});\n"],"file":"qcm.js"}
@@ -6,7 +6,6 @@ import React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import classnames from 'classnames';
8
8
  import Provider from '../../../atom/provider';
9
- import { innerHTML } from '../../../atom/label/style.css';
10
9
  import { getShadowBoxColorFromPrimary } from '../../../util/get-shadow-box-color-from-primary';
11
10
  import style from './style.css';
12
11
  const AnswersPropTypes = process.env.NODE_ENV !== "production" ? PropTypes.arrayOf(PropTypes.shape({
@@ -40,7 +39,7 @@ const Choices = ({
40
39
  selected
41
40
  } = answer;
42
41
  return /*#__PURE__*/React.createElement("div", {
43
- className: classnames(selected ? style.invisibleAnswer : style.unselected, innerHTML),
42
+ className: classnames(selected ? style.invisibleAnswer : style.unselected, style.innerHTML),
44
43
  "data-name": "answer",
45
44
  onClick: onClick,
46
45
  key: key // eslint-disable-next-line react/no-danger
@@ -90,7 +89,7 @@ const SelectedAnswerSections = ({
90
89
  className: style.content
91
90
  }, /*#__PURE__*/React.createElement("span", {
92
91
  "data-name": "answerContent",
93
- className: classnames(style.selectedAnswerText, innerHTML),
92
+ className: classnames(style.selectedAnswerText, style.innerHTML),
94
93
  title: title // eslint-disable-next-line react/no-danger
95
94
  ,
96
95
  dangerouslySetInnerHTML: {
@@ -1 +1 @@
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"}
1
+ {"version":3,"sources":["../../../../src/molecule/questions/qcm-drag/index.js"],"names":["React","PropTypes","classnames","Provider","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","innerHTML","__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 {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, style.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, style.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"}
@@ -137,3 +137,7 @@
137
137
  min-height: auto;
138
138
  }
139
139
  }
140
+
141
+ .innerHTML {
142
+ composes: innerHTML from '../../../atom/label/style.css'
143
+ }
@@ -6,7 +6,6 @@ import React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import classnames from 'classnames';
8
8
  import Provider from '../../../atom/provider';
9
- import { innerHTML } from '../../../atom/label/style.css';
10
9
  import { getShadowBoxColorFromPrimary } from '../../../util/get-shadow-box-color-from-primary';
11
10
  import style from './style.css';
12
11
 
@@ -58,7 +57,7 @@ const QCMImage = (props, context) => {
58
57
  className: style.titleWrapper
59
58
  }, /*#__PURE__*/React.createElement("div", {
60
59
  title: title,
61
- className: classnames(style.title, innerHTML) // eslint-disable-next-line react/no-danger
60
+ className: classnames(style.title, style.innerHTML) // eslint-disable-next-line react/no-danger
62
61
  ,
63
62
  dangerouslySetInnerHTML: {
64
63
  __html: title
@@ -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 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"}
1
+ {"version":3,"sources":["../../../../src/molecule/questions/qcm-graphic/index.js"],"names":["React","PropTypes","classnames","Provider","getShadowBoxColorFromPrimary","style","QCMImage","props","context","answers","skin","primarySkinColor","answersViews","map","answer","key","onClick","title","selected","image","ariaLabel","boxShadow","backgroundColor","background","content","imageWrapper","backgroundImage","titleWrapper","innerHTML","__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 {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, style.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"}
@@ -133,7 +133,7 @@
133
133
  display: flex;
134
134
  align-items: center;
135
135
  }
136
-
136
+
137
137
  .answer:last-child {
138
138
  margin-bottom: 0;
139
139
  }
@@ -161,3 +161,7 @@
161
161
  text-align: left;
162
162
  }
163
163
  }
164
+
165
+ .innerHTML {
166
+ composes: innerHTML from '../../../atom/label/style.css'
167
+ }
@@ -9,7 +9,6 @@ import PropTypes from 'prop-types';
9
9
  import classnames from 'classnames';
10
10
  import Provider from '../../../atom/provider';
11
11
  import Range from '../../../atom/range';
12
- import { innerHTML } from '../../../atom/label/style.css';
13
12
  import style from './style.css';
14
13
 
15
14
  const QuestionRange = (props, context) => {
@@ -33,7 +32,7 @@ const QuestionRange = (props, context) => {
33
32
  className: style.wrapper
34
33
  }, /*#__PURE__*/React.createElement("span", {
35
34
  style: titleStyle,
36
- className: classnames(style.title, innerHTML) // eslint-disable-next-line react/no-danger
35
+ className: classnames(style.title, style.innerHTML) // eslint-disable-next-line react/no-danger
37
36
  ,
38
37
  dangerouslySetInnerHTML: {
39
38
  __html: title
@@ -41,13 +40,13 @@ const QuestionRange = (props, context) => {
41
40
  }), /*#__PURE__*/React.createElement(Range, rangeProps), /*#__PURE__*/React.createElement("div", {
42
41
  className: style.labelWrapper
43
42
  }, /*#__PURE__*/React.createElement("span", {
44
- className: classnames(style.label, innerHTML) // eslint-disable-next-line react/no-danger
43
+ className: classnames(style.label, style.innerHTML) // eslint-disable-next-line react/no-danger
45
44
  ,
46
45
  dangerouslySetInnerHTML: {
47
46
  __html: minLabel
48
47
  }
49
48
  }), /*#__PURE__*/React.createElement("span", {
50
- className: classnames(style.label, innerHTML) // eslint-disable-next-line react/no-danger
49
+ className: classnames(style.label, style.innerHTML) // eslint-disable-next-line react/no-danger
51
50
  ,
52
51
  dangerouslySetInnerHTML: {
53
52
  __html: maxLabel
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/questions/question-range/index.js"],"names":["React","PropTypes","classnames","Provider","Range","innerHTML","style","QuestionRange","props","context","title","minLabel","maxLabel","rangeProps","skin","defaultColor","titleStyle","color","wrapper","__html","labelWrapper","label","contextTypes","childContextTypes","propTypes","string"],"mappings":";;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,QAAP,MAAqB,wBAArB;AACA,OAAOC,KAAP,MAAkB,qBAAlB;AACA,SAAQC,SAAR,QAAwB,+BAAxB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,aAAa,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AACxC,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,MAA6CJ,KAAnD;AAAA,QAAqCK,UAArC,iCAAmDL,KAAnD;;AAEA,QAAM;AAACM,IAAAA;AAAD,MAASL,OAAf;;AACA,QAAMM,YAAY,GAAG,OAAM,SAAN,EAAiB,gBAAjB,EAAmCD,IAAnC,CAArB;;AAEA,QAAME,UAAU,GAAG;AACjBC,IAAAA,KAAK,EAAEF;AADU,GAAnB;AAIA,sBACE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACY;AAAtB,kBACE;AACE,IAAA,KAAK,EAAEF,UADT;AAEE,IAAA,SAAS,EAAEd,UAAU,CAACI,KAAK,CAACI,KAAP,EAAcL,SAAd,CAFvB,CAGE;AAHF;AAIE,IAAA,uBAAuB,EAAE;AAACc,MAAAA,MAAM,EAAET;AAAT;AAJ3B,IADF,eAOE,oBAAC,KAAD,EAAWG,UAAX,CAPF,eAQE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACc;AAAtB,kBACE;AACE,IAAA,SAAS,EAAElB,UAAU,CAACI,KAAK,CAACe,KAAP,EAAchB,SAAd,CADvB,CAEE;AAFF;AAGE,IAAA,uBAAuB,EAAE;AAACc,MAAAA,MAAM,EAAER;AAAT;AAH3B,IADF,eAME;AACE,IAAA,SAAS,EAAET,UAAU,CAACI,KAAK,CAACe,KAAP,EAAchB,SAAd,CADvB,CAEE;AAFF;AAGE,IAAA,uBAAuB,EAAE;AAACc,MAAAA,MAAM,EAAEP;AAAT;AAH3B,IANF,CARF,CADF;AAuBD,CAjCD;;AAmCAL,aAAa,CAACe,YAAd,GAA6B;AAC3BR,EAAAA,IAAI,EAAEX,QAAQ,CAACoB,iBAAT,CAA2BT;AADN,CAA7B;AAIAP,aAAa,CAACiB,SAAd,iEACKpB,KAAK,CAACoB,SADX;AAEEd,EAAAA,KAAK,EAAET,SAAS,CAACwB,MAFnB;AAGEd,EAAAA,QAAQ,EAAEV,SAAS,CAACwB,MAHtB;AAIEb,EAAAA,QAAQ,EAAEX,SAAS,CAACwB;AAJtB;AAOA,eAAelB,aAAf","sourcesContent":["import React from 'react';\nimport {getOr} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Provider from '../../../atom/provider';\nimport Range from '../../../atom/range';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport style from './style.css';\n\nconst QuestionRange = (props, context) => {\n const {title, minLabel, maxLabel, ...rangeProps} = props;\n\n const {skin} = context;\n const defaultColor = getOr('#00B0FF', 'common.primary', skin);\n\n const titleStyle = {\n color: defaultColor\n };\n\n return (\n <div className={style.wrapper}>\n <span\n style={titleStyle}\n className={classnames(style.title, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <Range {...rangeProps} />\n <div className={style.labelWrapper}>\n <span\n className={classnames(style.label, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: minLabel}}\n />\n <span\n className={classnames(style.label, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: maxLabel}}\n />\n </div>\n </div>\n );\n};\n\nQuestionRange.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQuestionRange.propTypes = {\n ...Range.propTypes,\n title: PropTypes.string,\n minLabel: PropTypes.string,\n maxLabel: PropTypes.string\n};\n\nexport default QuestionRange;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/questions/question-range/index.js"],"names":["React","PropTypes","classnames","Provider","Range","style","QuestionRange","props","context","title","minLabel","maxLabel","rangeProps","skin","defaultColor","titleStyle","color","wrapper","innerHTML","__html","labelWrapper","label","contextTypes","childContextTypes","propTypes","string"],"mappings":";;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,QAAP,MAAqB,wBAArB;AACA,OAAOC,KAAP,MAAkB,qBAAlB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,aAAa,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AACxC,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,MAA6CJ,KAAnD;AAAA,QAAqCK,UAArC,iCAAmDL,KAAnD;;AAEA,QAAM;AAACM,IAAAA;AAAD,MAASL,OAAf;;AACA,QAAMM,YAAY,GAAG,OAAM,SAAN,EAAiB,gBAAjB,EAAmCD,IAAnC,CAArB;;AAEA,QAAME,UAAU,GAAG;AACjBC,IAAAA,KAAK,EAAEF;AADU,GAAnB;AAIA,sBACE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACY;AAAtB,kBACE;AACE,IAAA,KAAK,EAAEF,UADT;AAEE,IAAA,SAAS,EAAEb,UAAU,CAACG,KAAK,CAACI,KAAP,EAAcJ,KAAK,CAACa,SAApB,CAFvB,CAGE;AAHF;AAIE,IAAA,uBAAuB,EAAE;AAACC,MAAAA,MAAM,EAAEV;AAAT;AAJ3B,IADF,eAOE,oBAAC,KAAD,EAAWG,UAAX,CAPF,eAQE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACe;AAAtB,kBACE;AACE,IAAA,SAAS,EAAElB,UAAU,CAACG,KAAK,CAACgB,KAAP,EAAchB,KAAK,CAACa,SAApB,CADvB,CAEE;AAFF;AAGE,IAAA,uBAAuB,EAAE;AAACC,MAAAA,MAAM,EAAET;AAAT;AAH3B,IADF,eAME;AACE,IAAA,SAAS,EAAER,UAAU,CAACG,KAAK,CAACgB,KAAP,EAAchB,KAAK,CAACa,SAApB,CADvB,CAEE;AAFF;AAGE,IAAA,uBAAuB,EAAE;AAACC,MAAAA,MAAM,EAAER;AAAT;AAH3B,IANF,CARF,CADF;AAuBD,CAjCD;;AAmCAL,aAAa,CAACgB,YAAd,GAA6B;AAC3BT,EAAAA,IAAI,EAAEV,QAAQ,CAACoB,iBAAT,CAA2BV;AADN,CAA7B;AAIAP,aAAa,CAACkB,SAAd,iEACKpB,KAAK,CAACoB,SADX;AAEEf,EAAAA,KAAK,EAAER,SAAS,CAACwB,MAFnB;AAGEf,EAAAA,QAAQ,EAAET,SAAS,CAACwB,MAHtB;AAIEd,EAAAA,QAAQ,EAAEV,SAAS,CAACwB;AAJtB;AAOA,eAAenB,aAAf","sourcesContent":["import React from 'react';\nimport {getOr} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Provider from '../../../atom/provider';\nimport Range from '../../../atom/range';\nimport style from './style.css';\n\nconst QuestionRange = (props, context) => {\n const {title, minLabel, maxLabel, ...rangeProps} = props;\n\n const {skin} = context;\n const defaultColor = getOr('#00B0FF', 'common.primary', skin);\n\n const titleStyle = {\n color: defaultColor\n };\n\n return (\n <div className={style.wrapper}>\n <span\n style={titleStyle}\n className={classnames(style.title, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <Range {...rangeProps} />\n <div className={style.labelWrapper}>\n <span\n className={classnames(style.label, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: minLabel}}\n />\n <span\n className={classnames(style.label, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: maxLabel}}\n />\n </div>\n </div>\n );\n};\n\nQuestionRange.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nQuestionRange.propTypes = {\n ...Range.propTypes,\n title: PropTypes.string,\n minLabel: PropTypes.string,\n maxLabel: PropTypes.string\n};\n\nexport default QuestionRange;\n"],"file":"index.js"}
@@ -41,3 +41,7 @@
41
41
  width: 90%;
42
42
  }
43
43
  }
44
+
45
+ .innerHTML {
46
+ composes: innerHTML from '../../../atom/label/style.css'
47
+ }
@@ -41,7 +41,7 @@ const ReviewCardCongrats = props => {
41
41
  }
42
42
 
43
43
  return () => timer && clearTimeout(timer);
44
- }, [timerAnimation]);
44
+ }, [timerAnimation, isAnimated, isAnimationVisible]);
45
45
  const wrapperClassName = classnames(className, style.cardContainer, cardType === 'card-star' ? style.cardStar : style.cardRank);
46
46
  return /*#__PURE__*/React.createElement("div", {
47
47
  className: wrapperClassName,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/review-card-congrats/index.js"],"names":["React","useEffect","useState","PropTypes","classnames","NovaCompositionCoorpacademyStar","StarIcon","NovaSolidVoteRewardsRewardsBadge5","RankIcon","AtomLottieWrapper","Animation","EASE_OUT_CUBIC","AnimationScheduler","style","setAnimations","setIsAnimationVisible","setIsAnimated","ReviewCardCongrats","props","ariaLabel","dataName","animationLottie","cardType","iconAriaLabel","className","reviewCardTitle","reviewCardValue","rankSuffix","timerAnimation","isAnimationVisible","isAnimated","timer","setTimeout","clearTimeout","wrapperClassName","cardContainer","cardStar","cardRank","mainIcon","wrapperLottie","ie11Backup","title","textContainerStar","textContainerRank","iconRank","textStar","textRank","progress","iconStar","propTypes","string","shape","number"],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {pipe, round, parseInt as _parseInt, multiply} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyStar as StarIcon,\n NovaSolidVoteRewardsRewardsBadge5 as RankIcon\n} from '@coorpacademy/nova-icons';\nimport AtomLottieWrapper from '../../atom/lottie-wrapper';\nimport Animation, {EASE_OUT_CUBIC} from '../../hoc/animation';\nimport AnimationScheduler from '../../hoc/animation-scheduler';\nimport style from './style.css';\n\nexport const setAnimations = (setIsAnimationVisible, setIsAnimated) => () => {\n setIsAnimationVisible('play');\n setIsAnimated(true);\n};\n\nconst ReviewCardCongrats = props => {\n const {\n 'aria-label': ariaLabel,\n 'data-name': dataName,\n animationLottie,\n cardType,\n iconAriaLabel,\n className,\n reviewCardTitle,\n reviewCardValue,\n rankSuffix,\n timerAnimation\n } = props;\n\n const [isAnimationVisible, setIsAnimationVisible] = useState('loading');\n const [isAnimated, setIsAnimated] = useState(false);\n\n useEffect(() => {\n let timer;\n // istanbul ignore else\n if (!isAnimationVisible || !isAnimated) {\n timer = setTimeout(setAnimations(setIsAnimationVisible, setIsAnimated), timerAnimation);\n }\n return () => timer && clearTimeout(timer);\n }, [timerAnimation]);\n\n const wrapperClassName = classnames(\n className,\n style.cardContainer,\n cardType === 'card-star' ? style.cardStar : style.cardRank\n );\n\n return (\n <div className={wrapperClassName} aria-label={ariaLabel} data-name={dataName}>\n <div className={style.mainIcon}>\n <AtomLottieWrapper\n {...animationLottie}\n loop={false}\n animationControl={isAnimationVisible}\n autoplay={false}\n data-name=\"lottie-wrapper\"\n className={style.wrapperLottie}\n backupImageClassName={style.ie11Backup}\n />\n </div>\n <div className={style.title}>{reviewCardTitle}</div>\n <div className={cardType === 'card-star' ? style.textContainerStar : style.textContainerRank}>\n {cardType === 'card-rank' ? (\n <RankIcon className={style.iconRank} width={40} height={40} aria-label={iconAriaLabel} />\n ) : null}\n <AnimationScheduler animated={isAnimated}>\n <div>\n <span className={cardType === 'card-star' ? style.textStar : style.textRank}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={2000}>\n {progress => pipe(_parseInt(10), multiply(progress), round)(reviewCardValue)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n {cardType === 'card-star' ? (\n <StarIcon className={style.iconStar} width={53} height={53} aria-label={iconAriaLabel} />\n ) : (\n <div className={style.rankSuffix}>{rankSuffix}</div>\n )}\n </div>\n </div>\n );\n};\n\nReviewCardCongrats.propTypes = {\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n animationLottie: PropTypes.shape(AtomLottieWrapper.propTypes),\n cardType: PropTypes.string,\n iconAriaLabel: PropTypes.string,\n className: PropTypes.string,\n reviewCardTitle: PropTypes.string,\n reviewCardValue: PropTypes.string,\n rankSuffix: PropTypes.string,\n timerAnimation: PropTypes.number\n};\n\nexport default ReviewCardCongrats;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/review-card-congrats/index.js"],"names":["React","useEffect","useState","PropTypes","classnames","NovaCompositionCoorpacademyStar","StarIcon","NovaSolidVoteRewardsRewardsBadge5","RankIcon","AtomLottieWrapper","Animation","EASE_OUT_CUBIC","AnimationScheduler","style","setAnimations","setIsAnimationVisible","setIsAnimated","ReviewCardCongrats","props","ariaLabel","dataName","animationLottie","cardType","iconAriaLabel","className","reviewCardTitle","reviewCardValue","rankSuffix","timerAnimation","isAnimationVisible","isAnimated","timer","setTimeout","clearTimeout","wrapperClassName","cardContainer","cardStar","cardRank","mainIcon","wrapperLottie","ie11Backup","title","textContainerStar","textContainerRank","iconRank","textStar","textRank","progress","iconStar","propTypes","string","shape","number"],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {pipe, round, parseInt as _parseInt, multiply} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyStar as StarIcon,\n NovaSolidVoteRewardsRewardsBadge5 as RankIcon\n} from '@coorpacademy/nova-icons';\nimport AtomLottieWrapper from '../../atom/lottie-wrapper';\nimport Animation, {EASE_OUT_CUBIC} from '../../hoc/animation';\nimport AnimationScheduler from '../../hoc/animation-scheduler';\nimport style from './style.css';\n\nexport const setAnimations = (setIsAnimationVisible, setIsAnimated) => () => {\n setIsAnimationVisible('play');\n setIsAnimated(true);\n};\n\nconst ReviewCardCongrats = props => {\n const {\n 'aria-label': ariaLabel,\n 'data-name': dataName,\n animationLottie,\n cardType,\n iconAriaLabel,\n className,\n reviewCardTitle,\n reviewCardValue,\n rankSuffix,\n timerAnimation\n } = props;\n\n const [isAnimationVisible, setIsAnimationVisible] = useState('loading');\n const [isAnimated, setIsAnimated] = useState(false);\n\n useEffect(() => {\n let timer;\n // istanbul ignore else\n if (!isAnimationVisible || !isAnimated) {\n timer = setTimeout(setAnimations(setIsAnimationVisible, setIsAnimated), timerAnimation);\n }\n return () => timer && clearTimeout(timer);\n }, [timerAnimation, isAnimated, isAnimationVisible]);\n\n const wrapperClassName = classnames(\n className,\n style.cardContainer,\n cardType === 'card-star' ? style.cardStar : style.cardRank\n );\n\n return (\n <div className={wrapperClassName} aria-label={ariaLabel} data-name={dataName}>\n <div className={style.mainIcon}>\n <AtomLottieWrapper\n {...animationLottie}\n loop={false}\n animationControl={isAnimationVisible}\n autoplay={false}\n data-name=\"lottie-wrapper\"\n className={style.wrapperLottie}\n backupImageClassName={style.ie11Backup}\n />\n </div>\n <div className={style.title}>{reviewCardTitle}</div>\n <div className={cardType === 'card-star' ? style.textContainerStar : style.textContainerRank}>\n {cardType === 'card-rank' ? (\n <RankIcon className={style.iconRank} width={40} height={40} aria-label={iconAriaLabel} />\n ) : null}\n <AnimationScheduler animated={isAnimated}>\n <div>\n <span className={cardType === 'card-star' ? style.textStar : style.textRank}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={2000}>\n {progress => pipe(_parseInt(10), multiply(progress), round)(reviewCardValue)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n {cardType === 'card-star' ? (\n <StarIcon className={style.iconStar} width={53} height={53} aria-label={iconAriaLabel} />\n ) : (\n <div className={style.rankSuffix}>{rankSuffix}</div>\n )}\n </div>\n </div>\n );\n};\n\nReviewCardCongrats.propTypes = {\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n animationLottie: PropTypes.shape(AtomLottieWrapper.propTypes),\n cardType: PropTypes.string,\n iconAriaLabel: PropTypes.string,\n className: PropTypes.string,\n reviewCardTitle: PropTypes.string,\n reviewCardValue: PropTypes.string,\n rankSuffix: PropTypes.string,\n timerAnimation: PropTypes.number\n};\n\nexport default ReviewCardCongrats;\n"],"file":"index.js"}
@@ -0,0 +1,15 @@
1
+ import test from 'ava';
2
+ import forEach from 'lodash/forEach';
3
+ import renderComponentMacro from '../../../test/helpers/render-component';
4
+ import MoleculeSearch from '..';
5
+ import fixtureDefault from './fixtures/default';
6
+ import fixtureWithValue from './fixtures/with-value';
7
+ test('Molecule › MoleculeSearch > should have valid propTypes', t => {
8
+ t.pass();
9
+ forEach(MoleculeSearch.propTypes, (value, key) => {
10
+ t.not(value, undefined, `PropType for "Molecule.MoleculeSearch.propTypes.${key}" may not be undefined. Did you mistype the propTypes definition?`);
11
+ });
12
+ });
13
+ test('Molecule › MoleculeSearch › Default › should be rendered', renderComponentMacro, MoleculeSearch, fixtureDefault);
14
+ test('Molecule › MoleculeSearch › WithValue › should be rendered', renderComponentMacro, MoleculeSearch, fixtureWithValue);
15
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/molecule/search/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","MoleculeSearch","fixtureDefault","fixtureWithValue","t","pass","propTypes","value","key","not","undefined"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,KAAjB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,oBAAP,MAAiC,wCAAjC;AACA,OAAOC,cAAP,MAA2B,IAA3B;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,gBAAP,MAA6B,uBAA7B;AAEAL,IAAI,CAAC,yDAAD,EAA4DM,CAAC,IAAI;AACnEA,EAAAA,CAAC,CAACC,IAAF;AACAN,EAAAA,OAAO,CAACE,cAAc,CAACK,SAAhB,EAA2B,CAACC,KAAD,EAAQC,GAAR,KAAgB;AAChDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,mDAAkDF,GAAI,mEAA/E;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAV,IAAI,CAAC,0DAAD,EAA6DE,oBAA7D,EAAmFC,cAAnF,EAAmGC,cAAnG,CAAJ;AACAJ,IAAI,CAAC,4DAAD,EAA+DE,oBAA/D,EAAqFC,cAArF,EAAqGE,gBAArG,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport MoleculeSearch from '..';\nimport fixtureDefault from './fixtures/default';\nimport fixtureWithValue from './fixtures/with-value';\n\ntest('Molecule › MoleculeSearch > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeSearch.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Molecule.MoleculeSearch.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Molecule › MoleculeSearch › Default › should be rendered', renderComponentMacro, MoleculeSearch, fixtureDefault);\ntest('Molecule › MoleculeSearch › WithValue › should be rendered', renderComponentMacro, MoleculeSearch, fixtureWithValue);\n"],"file":"fixtures.js"}
@@ -8,7 +8,6 @@ import fixtureCohort from './fixtures/cohort';
8
8
  import fixtureCreateNewCohort from './fixtures/create-new-cohort';
9
9
  import fixtureDefault from './fixtures/default';
10
10
  import fixtureSplitForm from './fixtures/split-form';
11
- import fixtureWithoutUploadImage from './fixtures/without-upload-image';
12
11
  test('Molecule › MoleculeSetupSlide > should have valid propTypes', t => {
13
12
  t.pass();
14
13
  forEach(MoleculeSetupSlide.propTypes, (value, key) => {
@@ -21,5 +20,4 @@ test('Molecule › MoleculeSetupSlide › Cohort › should be rendered', render
21
20
  test('Molecule › MoleculeSetupSlide › CreateNewCohort › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCreateNewCohort);
22
21
  test('Molecule › MoleculeSetupSlide › Default › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureDefault);
23
22
  test('Molecule › MoleculeSetupSlide › SplitForm › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureSplitForm);
24
- test('Molecule › MoleculeSetupSlide › WithoutUploadImage › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureWithoutUploadImage);
25
23
  //# sourceMappingURL=fixtures.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/setup-slide/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","MoleculeSetupSlide","fixtureAlertMessage","fixtureCheckbox","fixtureCohort","fixtureCreateNewCohort","fixtureDefault","fixtureSplitForm","fixtureWithoutUploadImage","t","pass","propTypes","value","key","not","undefined"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,KAAjB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,oBAAP,MAAiC,wCAAjC;AACA,OAAOC,kBAAP,MAA+B,IAA/B;AACA,OAAOC,mBAAP,MAAgC,0BAAhC;AACA,OAAOC,eAAP,MAA4B,qBAA5B;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AACA,OAAOC,sBAAP,MAAmC,8BAAnC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,gBAAP,MAA6B,uBAA7B;AACA,OAAOC,yBAAP,MAAsC,iCAAtC;AAEAV,IAAI,CAAC,6DAAD,EAAgEW,CAAC,IAAI;AACvEA,EAAAA,CAAC,CAACC,IAAF;AACAX,EAAAA,OAAO,CAACE,kBAAkB,CAACU,SAApB,EAA+B,CAACC,KAAD,EAAQC,GAAR,KAAgB;AACpDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,uDAAsDF,GAAI,mEAAnF;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAf,IAAI,CAAC,mEAAD,EAAsEE,oBAAtE,EAA4FC,kBAA5F,EAAgHC,mBAAhH,CAAJ;AACAJ,IAAI,CAAC,+DAAD,EAAkEE,oBAAlE,EAAwFC,kBAAxF,EAA4GE,eAA5G,CAAJ;AACAL,IAAI,CAAC,6DAAD,EAAgEE,oBAAhE,EAAsFC,kBAAtF,EAA0GG,aAA1G,CAAJ;AACAN,IAAI,CAAC,sEAAD,EAAyEE,oBAAzE,EAA+FC,kBAA/F,EAAmHI,sBAAnH,CAAJ;AACAP,IAAI,CAAC,8DAAD,EAAiEE,oBAAjE,EAAuFC,kBAAvF,EAA2GK,cAA3G,CAAJ;AACAR,IAAI,CAAC,gEAAD,EAAmEE,oBAAnE,EAAyFC,kBAAzF,EAA6GM,gBAA7G,CAAJ;AACAT,IAAI,CAAC,yEAAD,EAA4EE,oBAA5E,EAAkGC,kBAAlG,EAAsHO,yBAAtH,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport MoleculeSetupSlide from '..';\nimport fixtureAlertMessage from './fixtures/alert-message';\nimport fixtureCheckbox from './fixtures/checkbox';\nimport fixtureCohort from './fixtures/cohort';\nimport fixtureCreateNewCohort from './fixtures/create-new-cohort';\nimport fixtureDefault from './fixtures/default';\nimport fixtureSplitForm from './fixtures/split-form';\nimport fixtureWithoutUploadImage from './fixtures/without-upload-image';\n\ntest('Molecule › MoleculeSetupSlide > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeSetupSlide.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Molecule.MoleculeSetupSlide.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Molecule › MoleculeSetupSlide › AlertMessage › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureAlertMessage);\ntest('Molecule › MoleculeSetupSlide › Checkbox › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCheckbox);\ntest('Molecule › MoleculeSetupSlide › Cohort › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCohort);\ntest('Molecule › MoleculeSetupSlide › CreateNewCohort › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCreateNewCohort);\ntest('Molecule › MoleculeSetupSlide › Default › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureDefault);\ntest('Molecule › MoleculeSetupSlide › SplitForm › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureSplitForm);\ntest('Molecule › MoleculeSetupSlide › WithoutUploadImage › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureWithoutUploadImage);\n"],"file":"fixtures.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/setup-slide/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","MoleculeSetupSlide","fixtureAlertMessage","fixtureCheckbox","fixtureCohort","fixtureCreateNewCohort","fixtureDefault","fixtureSplitForm","t","pass","propTypes","value","key","not","undefined"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,KAAjB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,oBAAP,MAAiC,wCAAjC;AACA,OAAOC,kBAAP,MAA+B,IAA/B;AACA,OAAOC,mBAAP,MAAgC,0BAAhC;AACA,OAAOC,eAAP,MAA4B,qBAA5B;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AACA,OAAOC,sBAAP,MAAmC,8BAAnC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,gBAAP,MAA6B,uBAA7B;AAEAT,IAAI,CAAC,6DAAD,EAAgEU,CAAC,IAAI;AACvEA,EAAAA,CAAC,CAACC,IAAF;AACAV,EAAAA,OAAO,CAACE,kBAAkB,CAACS,SAApB,EAA+B,CAACC,KAAD,EAAQC,GAAR,KAAgB;AACpDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,uDAAsDF,GAAI,mEAAnF;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAd,IAAI,CAAC,mEAAD,EAAsEE,oBAAtE,EAA4FC,kBAA5F,EAAgHC,mBAAhH,CAAJ;AACAJ,IAAI,CAAC,+DAAD,EAAkEE,oBAAlE,EAAwFC,kBAAxF,EAA4GE,eAA5G,CAAJ;AACAL,IAAI,CAAC,6DAAD,EAAgEE,oBAAhE,EAAsFC,kBAAtF,EAA0GG,aAA1G,CAAJ;AACAN,IAAI,CAAC,sEAAD,EAAyEE,oBAAzE,EAA+FC,kBAA/F,EAAmHI,sBAAnH,CAAJ;AACAP,IAAI,CAAC,8DAAD,EAAiEE,oBAAjE,EAAuFC,kBAAvF,EAA2GK,cAA3G,CAAJ;AACAR,IAAI,CAAC,gEAAD,EAAmEE,oBAAnE,EAAyFC,kBAAzF,EAA6GM,gBAA7G,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport MoleculeSetupSlide from '..';\nimport fixtureAlertMessage from './fixtures/alert-message';\nimport fixtureCheckbox from './fixtures/checkbox';\nimport fixtureCohort from './fixtures/cohort';\nimport fixtureCreateNewCohort from './fixtures/create-new-cohort';\nimport fixtureDefault from './fixtures/default';\nimport fixtureSplitForm from './fixtures/split-form';\n\ntest('Molecule › MoleculeSetupSlide > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeSetupSlide.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Molecule.MoleculeSetupSlide.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Molecule › MoleculeSetupSlide › AlertMessage › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureAlertMessage);\ntest('Molecule › MoleculeSetupSlide › Checkbox › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCheckbox);\ntest('Molecule › MoleculeSetupSlide › Cohort › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCohort);\ntest('Molecule › MoleculeSetupSlide › CreateNewCohort › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureCreateNewCohort);\ntest('Molecule › MoleculeSetupSlide › Default › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureDefault);\ntest('Molecule › MoleculeSetupSlide › SplitForm › should be rendered', renderComponentMacro, MoleculeSetupSlide, fixtureSplitForm);\n"],"file":"fixtures.js"}
@@ -101,7 +101,7 @@ const Share = ({
101
101
  }
102
102
 
103
103
  return;
104
- }, [setStatus]);
104
+ }, [setStatus, text]);
105
105
  return /*#__PURE__*/React.createElement("div", {
106
106
  className: (styles.container, style)
107
107
  }, /*#__PURE__*/React.createElement(Link, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/share/index.js"],"names":["React","useState","useMemo","useCallback","useContext","useEffect","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionCoorpacademyShare","ShareIcon","NovaCompositionCoorpacademyAttention","AttentionIcon","Link","styles","SHARE_STATUS","IDLE","ERROR","SUCCESS","copyTextViaExecCommand","text","textarea","document","createElement","style","border","padding","visibility","position","setAttribute","value","body","appendChild","status","select","setSelectionRange","length","execCommand","error","removeChild","StatusContext","createContext","ShareStatusProvider","children","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","ShareFeedback","successWording","errorWording","feedback","errorFeedback","checkIcon","Share","wording","onClick","browserSupportsClipboardWriteText","navigator","clipboard","writeText","copyStatus","container","cta","wrapper","shareIcon","propTypes","node","string"],"mappings":"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","sourcesContent":["import React, {useState, useMemo, useCallback, useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionCoorpacademyShare as ShareIcon,\n NovaCompositionCoorpacademyAttention as AttentionIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst SHARE_STATUS = {\n IDLE: 'IDLE',\n ERROR: 'ERROR',\n SUCCESS: 'SUCCESS'\n};\n\nconst copyTextViaExecCommand = text => {\n const textarea = document.createElement('textarea');\n\n textarea.style.border = '0';\n textarea.style.padding = '0';\n textarea.style.visibility = 'hidden';\n textarea.style.position = 'absolute';\n textarea.setAttribute('readonly', '');\n textarea.value = text;\n\n // Element.append is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-append\n document.body.appendChild(textarea);\n let status = SHARE_STATUS.IDLE;\n\n try {\n textarea.select();\n textarea.setSelectionRange(0, textarea.value.length);\n document.execCommand('copy');\n status = SHARE_STATUS.SUCCESS;\n } catch (error) {\n status = SHARE_STATUS.ERROR;\n }\n\n // Element.remove is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-remove\n document.body.removeChild(textarea);\n\n return status;\n};\n\nconst StatusContext = React.createContext(SHARE_STATUS.IDLE);\n\nexport const ShareStatusProvider = ({children}) => {\n const [status, setStatus] = useState(SHARE_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== SHARE_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(SHARE_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n\n const value = useMemo(() => [status, setStatus], [status]);\n\n return <StatusContext.Provider value={value}>{children}</StatusContext.Provider>;\n};\n\nexport const ShareFeedback = ({successWording, errorWording}) => {\n const [status] = useContext(StatusContext);\n if (status === SHARE_STATUS.IDLE) return null;\n\n return (\n <div\n className={classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)}\n >\n {status === SHARE_STATUS.SUCCESS ? (\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n ) : (\n <AttentionIcon className={styles.checkIcon} width={13} height={13} />\n )}\n <p>{status === SHARE_STATUS.SUCCESS ? successWording : errorWording}</p>\n </div>\n );\n};\n\nconst Share = ({style, text, wording}) => {\n const [, setStatus] = useContext(StatusContext);\n const onClick = useCallback(async () => {\n const browserSupportsClipboardWriteText =\n 'clipboard' in navigator && 'writeText' in navigator.clipboard;\n if (browserSupportsClipboardWriteText) {\n try {\n await navigator.clipboard.writeText(text);\n setStatus(SHARE_STATUS.SUCCESS);\n } catch (error) {\n setStatus(SHARE_STATUS.ERROR);\n }\n return;\n } else {\n const copyStatus = copyTextViaExecCommand(text);\n setStatus(copyStatus);\n }\n return;\n }, [setStatus]);\n\n return (\n <div className={(styles.container, style)}>\n <Link onClick={onClick} className={styles.cta} data-name={'share-button'}>\n <div className={styles.wrapper}>\n <ShareIcon className={styles.shareIcon} width={18} height={18} />\n <p>{wording}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nShareStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nShareFeedback.propTypes = {\n successWording: PropTypes.string,\n errorWording: PropTypes.string\n};\n\nShare.propTypes = {\n style: PropTypes.string,\n text: PropTypes.string,\n wording: PropTypes.string\n};\n\nexport default Share;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/share/index.js"],"names":["React","useState","useMemo","useCallback","useContext","useEffect","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionCoorpacademyShare","ShareIcon","NovaCompositionCoorpacademyAttention","AttentionIcon","Link","styles","SHARE_STATUS","IDLE","ERROR","SUCCESS","copyTextViaExecCommand","text","textarea","document","createElement","style","border","padding","visibility","position","setAttribute","value","body","appendChild","status","select","setSelectionRange","length","execCommand","error","removeChild","StatusContext","createContext","ShareStatusProvider","children","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","ShareFeedback","successWording","errorWording","feedback","errorFeedback","checkIcon","Share","wording","onClick","browserSupportsClipboardWriteText","navigator","clipboard","writeText","copyStatus","container","cta","wrapper","shareIcon","propTypes","node","string"],"mappings":"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","sourcesContent":["import React, {useState, useMemo, useCallback, useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionCoorpacademyShare as ShareIcon,\n NovaCompositionCoorpacademyAttention as AttentionIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst SHARE_STATUS = {\n IDLE: 'IDLE',\n ERROR: 'ERROR',\n SUCCESS: 'SUCCESS'\n};\n\nconst copyTextViaExecCommand = text => {\n const textarea = document.createElement('textarea');\n\n textarea.style.border = '0';\n textarea.style.padding = '0';\n textarea.style.visibility = 'hidden';\n textarea.style.position = 'absolute';\n textarea.setAttribute('readonly', '');\n textarea.value = text;\n\n // Element.append is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-append\n document.body.appendChild(textarea);\n let status = SHARE_STATUS.IDLE;\n\n try {\n textarea.select();\n textarea.setSelectionRange(0, textarea.value.length);\n document.execCommand('copy');\n status = SHARE_STATUS.SUCCESS;\n } catch (error) {\n status = SHARE_STATUS.ERROR;\n }\n\n // Element.remove is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-remove\n document.body.removeChild(textarea);\n\n return status;\n};\n\nconst StatusContext = React.createContext(SHARE_STATUS.IDLE);\n\nexport const ShareStatusProvider = ({children}) => {\n const [status, setStatus] = useState(SHARE_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== SHARE_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(SHARE_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n\n const value = useMemo(() => [status, setStatus], [status]);\n\n return <StatusContext.Provider value={value}>{children}</StatusContext.Provider>;\n};\n\nexport const ShareFeedback = ({successWording, errorWording}) => {\n const [status] = useContext(StatusContext);\n if (status === SHARE_STATUS.IDLE) return null;\n\n return (\n <div\n className={classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)}\n >\n {status === SHARE_STATUS.SUCCESS ? (\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n ) : (\n <AttentionIcon className={styles.checkIcon} width={13} height={13} />\n )}\n <p>{status === SHARE_STATUS.SUCCESS ? successWording : errorWording}</p>\n </div>\n );\n};\n\nconst Share = ({style, text, wording}) => {\n const [, setStatus] = useContext(StatusContext);\n const onClick = useCallback(async () => {\n const browserSupportsClipboardWriteText =\n 'clipboard' in navigator && 'writeText' in navigator.clipboard;\n if (browserSupportsClipboardWriteText) {\n try {\n await navigator.clipboard.writeText(text);\n setStatus(SHARE_STATUS.SUCCESS);\n } catch (error) {\n setStatus(SHARE_STATUS.ERROR);\n }\n return;\n } else {\n const copyStatus = copyTextViaExecCommand(text);\n setStatus(copyStatus);\n }\n return;\n }, [setStatus, text]);\n\n return (\n <div className={(styles.container, style)}>\n <Link onClick={onClick} className={styles.cta} data-name={'share-button'}>\n <div className={styles.wrapper}>\n <ShareIcon className={styles.shareIcon} width={18} height={18} />\n <p>{wording}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nShareStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nShareFeedback.propTypes = {\n successWording: PropTypes.string,\n errorWording: PropTypes.string\n};\n\nShare.propTypes = {\n style: PropTypes.string,\n text: PropTypes.string,\n wording: PropTypes.string\n};\n\nexport default Share;\n"],"file":"index.js"}
@@ -1,3 +1,5 @@
1
+ @value breakpoints: "../../variables/breakpoints.css";
2
+ @value mobile from breakpoints;
1
3
  @value colors: "../../variables/colors.css";
2
4
  @value cm_grey_400 from colors;
3
5
  @value white from colors;
@@ -21,7 +23,7 @@
21
23
  }
22
24
 
23
25
  .skillCardWrapper:hover {
24
- box-shadow: 0 4px 48px box_shadow_medium_dark;
26
+ box-shadow: 0 4px 40px box_shadow_medium_dark;
25
27
  }
26
28
 
27
29
  .skillTitle {
@@ -57,3 +59,9 @@
57
59
  .buttonWrapper {
58
60
  padding: 0 24px 24px;
59
61
  }
62
+
63
+ @media mobile {
64
+ .skillCardWrapper:hover {
65
+ box-shadow: 0 4px 20px box_shadow_medium_dark;
66
+ }
67
+ }