@coorpacademy/components 10.21.2 → 10.22.1

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 (203) hide show
  1. package/README.md +1 -1
  2. package/es/atom/content-badge/index.js +15 -3
  3. package/es/atom/content-badge/index.js.map +1 -1
  4. package/es/atom/content-badge/style.css +6 -0
  5. package/es/atom/input-checkbox/index.js +4 -2
  6. package/es/atom/input-checkbox/index.js.map +1 -1
  7. package/es/atom/lottie-wrapper/index.js +2 -24
  8. package/es/atom/lottie-wrapper/index.js.map +1 -1
  9. package/es/atom/lottie-wrapper/prop-types.js +26 -0
  10. package/es/atom/lottie-wrapper/prop-types.js.map +1 -0
  11. package/es/atom/review-background/index.js +2 -4
  12. package/es/atom/review-background/index.js.map +1 -1
  13. package/es/atom/review-background/prop-types.js +5 -0
  14. package/es/atom/review-background/prop-types.js.map +1 -0
  15. package/es/atom/review-header-step-item/index.js +5 -8
  16. package/es/atom/review-header-step-item/index.js.map +1 -1
  17. package/es/atom/review-header-step-item/prop-types.js +7 -0
  18. package/es/atom/review-header-step-item/prop-types.js.map +1 -0
  19. package/es/atom/review-presentation/index.js +2 -15
  20. package/es/atom/review-presentation/index.js.map +1 -1
  21. package/es/atom/review-presentation/prop-types.js +18 -0
  22. package/es/atom/review-presentation/prop-types.js.map +1 -0
  23. package/es/atom/tab/index.js +1 -0
  24. package/es/atom/tab/index.js.map +1 -1
  25. package/es/molecule/answer/index.js +5 -26
  26. package/es/molecule/answer/index.js.map +1 -1
  27. package/es/molecule/answer/prop-types.js +32 -0
  28. package/es/molecule/answer/prop-types.js.map +1 -0
  29. package/es/molecule/banner/index.js +9 -4
  30. package/es/molecule/banner/index.js.map +1 -1
  31. package/es/molecule/banner/style.css +41 -6
  32. package/es/molecule/card/index.js +5 -1
  33. package/es/molecule/card/index.js.map +1 -1
  34. package/es/molecule/card/selectable.css +49 -2
  35. package/es/molecule/card/selectable.js +10 -2
  36. package/es/molecule/card/selectable.js.map +1 -1
  37. package/es/molecule/cm-popin/index.js +12 -5
  38. package/es/molecule/cm-popin/index.js.map +1 -1
  39. package/es/molecule/cm-popin/style.css +28 -0
  40. package/es/molecule/go1-banner/index.js +56 -0
  41. package/es/molecule/go1-banner/index.js.map +1 -0
  42. package/es/molecule/go1-banner/style.css +90 -0
  43. package/es/molecule/questions/free-text/index.native.js +88 -0
  44. package/es/molecule/questions/free-text/index.native.js.map +1 -0
  45. package/es/molecule/questions/qcm/index.native.js +47 -0
  46. package/es/molecule/questions/qcm/index.native.js.map +1 -0
  47. package/es/molecule/review-card-congrats/index.js +2 -13
  48. package/es/molecule/review-card-congrats/index.js.map +1 -1
  49. package/es/molecule/review-card-congrats/prop-types.js +15 -0
  50. package/es/molecule/review-card-congrats/prop-types.js.map +1 -0
  51. package/es/molecule/review-correction-popin/index.js +2 -20
  52. package/es/molecule/review-correction-popin/index.js.map +1 -1
  53. package/es/molecule/review-correction-popin/prop-types.js +21 -0
  54. package/es/molecule/review-correction-popin/prop-types.js.map +1 -0
  55. package/es/molecule/review-header-steps/index.js +2 -4
  56. package/es/molecule/review-header-steps/index.js.map +1 -1
  57. package/es/molecule/review-header-steps/prop-types.js +6 -0
  58. package/es/molecule/review-header-steps/prop-types.js.map +1 -0
  59. package/es/molecule/skill-card/index.js +2 -12
  60. package/es/molecule/skill-card/index.js.map +1 -1
  61. package/es/molecule/skill-card/prop-types.js +13 -0
  62. package/es/molecule/skill-card/prop-types.js.map +1 -0
  63. package/es/molecule/video-player/index.js +2 -17
  64. package/es/molecule/video-player/index.js.map +1 -1
  65. package/es/molecule/video-player/jwplayer-prop-types.js +38 -0
  66. package/es/molecule/video-player/jwplayer-prop-types.js.map +1 -0
  67. package/es/molecule/video-player/jwplayer.js +2 -37
  68. package/es/molecule/video-player/jwplayer.js.map +1 -1
  69. package/es/molecule/video-player/prop-types.js +53 -0
  70. package/es/molecule/video-player/prop-types.js.map +1 -0
  71. package/es/organism/brand-dashboard/index.js +6 -3
  72. package/es/organism/brand-dashboard/index.js.map +1 -1
  73. package/es/organism/review-congrats/index.js +2 -19
  74. package/es/organism/review-congrats/index.js.map +1 -1
  75. package/es/organism/review-congrats/prop-types.js +22 -0
  76. package/es/organism/review-congrats/prop-types.js.map +1 -0
  77. package/es/organism/review-header/index.js +2 -10
  78. package/es/organism/review-header/index.js.map +1 -1
  79. package/es/organism/review-header/prop-types.js +12 -0
  80. package/es/organism/review-header/prop-types.js.map +1 -0
  81. package/es/organism/review-skills/index.js +4 -19
  82. package/es/organism/review-skills/index.js.map +1 -1
  83. package/es/organism/review-skills/prop-types.js +19 -0
  84. package/es/organism/review-skills/prop-types.js.map +1 -0
  85. package/es/template/app-review/index.native.js +26 -20
  86. package/es/template/app-review/index.native.js.map +1 -1
  87. package/es/template/app-review/onboarding/index.native.js +2 -2
  88. package/es/template/app-review/onboarding/index.native.js.map +1 -1
  89. package/es/template/app-review/skills/index.native.js +2 -2
  90. package/es/template/app-review/skills/index.native.js.map +1 -1
  91. package/es/template/app-review/slides/index.js +28 -30
  92. package/es/template/app-review/slides/index.js.map +1 -1
  93. package/es/template/app-review/slides/index.native.js +49 -12
  94. package/es/template/app-review/slides/index.native.js.map +1 -1
  95. package/es/template/app-review/slides/prop-types.js +19 -19
  96. package/es/template/app-review/slides/prop-types.js.map +1 -1
  97. package/es/template/app-review/template-context.js +30 -0
  98. package/es/template/app-review/template-context.js.map +1 -0
  99. package/es/variables/analytics.js +22 -0
  100. package/es/variables/analytics.js.map +1 -0
  101. package/es/variables/colors.css +4 -0
  102. package/lib/atom/content-badge/index.js +17 -4
  103. package/lib/atom/content-badge/index.js.map +1 -1
  104. package/lib/atom/content-badge/style.css +6 -0
  105. package/lib/atom/input-checkbox/index.js +4 -2
  106. package/lib/atom/input-checkbox/index.js.map +1 -1
  107. package/lib/atom/lottie-wrapper/index.js +6 -30
  108. package/lib/atom/lottie-wrapper/index.js.map +1 -1
  109. package/lib/atom/lottie-wrapper/prop-types.js +37 -0
  110. package/lib/atom/lottie-wrapper/prop-types.js.map +1 -0
  111. package/lib/atom/review-background/index.js +3 -5
  112. package/lib/atom/review-background/index.js.map +1 -1
  113. package/lib/atom/review-background/prop-types.js +14 -0
  114. package/lib/atom/review-background/prop-types.js.map +1 -0
  115. package/lib/atom/review-header-step-item/index.js +6 -9
  116. package/lib/atom/review-header-step-item/index.js.map +1 -1
  117. package/lib/atom/review-header-step-item/prop-types.js +16 -0
  118. package/lib/atom/review-header-step-item/prop-types.js.map +1 -0
  119. package/lib/atom/review-presentation/index.js +3 -15
  120. package/lib/atom/review-presentation/index.js.map +1 -1
  121. package/lib/atom/review-presentation/prop-types.js +28 -0
  122. package/lib/atom/review-presentation/prop-types.js.map +1 -0
  123. package/lib/atom/tab/index.js +1 -0
  124. package/lib/atom/tab/index.js.map +1 -1
  125. package/lib/molecule/answer/index.js +14 -35
  126. package/lib/molecule/answer/index.js.map +1 -1
  127. package/lib/molecule/answer/prop-types.js +49 -0
  128. package/lib/molecule/answer/prop-types.js.map +1 -0
  129. package/lib/molecule/banner/index.js +9 -4
  130. package/lib/molecule/banner/index.js.map +1 -1
  131. package/lib/molecule/banner/style.css +41 -6
  132. package/lib/molecule/card/index.js +3 -1
  133. package/lib/molecule/card/index.js.map +1 -1
  134. package/lib/molecule/card/selectable.css +49 -2
  135. package/lib/molecule/card/selectable.js +9 -1
  136. package/lib/molecule/card/selectable.js.map +1 -1
  137. package/lib/molecule/cm-popin/index.js +12 -5
  138. package/lib/molecule/cm-popin/index.js.map +1 -1
  139. package/lib/molecule/cm-popin/style.css +28 -0
  140. package/lib/molecule/go1-banner/index.js +67 -0
  141. package/lib/molecule/go1-banner/index.js.map +1 -0
  142. package/lib/molecule/go1-banner/style.css +90 -0
  143. package/lib/molecule/questions/free-text/index.native.js +101 -0
  144. package/lib/molecule/questions/free-text/index.native.js.map +1 -0
  145. package/lib/molecule/questions/qcm/index.native.js +58 -0
  146. package/lib/molecule/questions/qcm/index.native.js.map +1 -0
  147. package/lib/molecule/review-card-congrats/index.js +3 -14
  148. package/lib/molecule/review-card-congrats/index.js.map +1 -1
  149. package/lib/molecule/review-card-congrats/prop-types.js +25 -0
  150. package/lib/molecule/review-card-congrats/prop-types.js.map +1 -0
  151. package/lib/molecule/review-correction-popin/index.js +3 -21
  152. package/lib/molecule/review-correction-popin/index.js.map +1 -1
  153. package/lib/molecule/review-correction-popin/prop-types.js +30 -0
  154. package/lib/molecule/review-correction-popin/prop-types.js.map +1 -0
  155. package/lib/molecule/review-header-steps/index.js +3 -5
  156. package/lib/molecule/review-header-steps/index.js.map +1 -1
  157. package/lib/molecule/review-header-steps/prop-types.js +16 -0
  158. package/lib/molecule/review-header-steps/prop-types.js.map +1 -0
  159. package/lib/molecule/skill-card/index.js +3 -13
  160. package/lib/molecule/skill-card/index.js.map +1 -1
  161. package/lib/molecule/skill-card/prop-types.js +22 -0
  162. package/lib/molecule/skill-card/prop-types.js.map +1 -0
  163. package/lib/molecule/video-player/index.js +3 -19
  164. package/lib/molecule/video-player/index.js.map +1 -1
  165. package/lib/molecule/video-player/jwplayer-prop-types.js +48 -0
  166. package/lib/molecule/video-player/jwplayer-prop-types.js.map +1 -0
  167. package/lib/molecule/video-player/jwplayer.js +3 -39
  168. package/lib/molecule/video-player/jwplayer.js.map +1 -1
  169. package/lib/molecule/video-player/prop-types.js +64 -0
  170. package/lib/molecule/video-player/prop-types.js.map +1 -0
  171. package/lib/organism/brand-dashboard/index.js +7 -3
  172. package/lib/organism/brand-dashboard/index.js.map +1 -1
  173. package/lib/organism/review-congrats/index.js +3 -20
  174. package/lib/organism/review-congrats/index.js.map +1 -1
  175. package/lib/organism/review-congrats/prop-types.js +33 -0
  176. package/lib/organism/review-congrats/prop-types.js.map +1 -0
  177. package/lib/organism/review-header/index.js +3 -11
  178. package/lib/organism/review-header/index.js.map +1 -1
  179. package/lib/organism/review-header/prop-types.js +22 -0
  180. package/lib/organism/review-header/prop-types.js.map +1 -0
  181. package/lib/organism/review-skills/index.js +10 -23
  182. package/lib/organism/review-skills/index.js.map +1 -1
  183. package/lib/organism/review-skills/prop-types.js +33 -0
  184. package/lib/organism/review-skills/prop-types.js.map +1 -0
  185. package/lib/template/app-review/index.native.js +28 -19
  186. package/lib/template/app-review/index.native.js.map +1 -1
  187. package/lib/template/app-review/onboarding/index.native.js +2 -2
  188. package/lib/template/app-review/onboarding/index.native.js.map +1 -1
  189. package/lib/template/app-review/skills/index.native.js +4 -4
  190. package/lib/template/app-review/skills/index.native.js.map +1 -1
  191. package/lib/template/app-review/slides/index.js +28 -30
  192. package/lib/template/app-review/slides/index.js.map +1 -1
  193. package/lib/template/app-review/slides/index.native.js +60 -25
  194. package/lib/template/app-review/slides/index.native.js.map +1 -1
  195. package/lib/template/app-review/slides/prop-types.js +20 -20
  196. package/lib/template/app-review/slides/prop-types.js.map +1 -1
  197. package/lib/template/app-review/template-context.js +41 -0
  198. package/lib/template/app-review/template-context.js.map +1 -0
  199. package/lib/variables/analytics.js +27 -0
  200. package/lib/variables/analytics.js.map +1 -0
  201. package/lib/variables/colors.css +4 -0
  202. package/locales/hr/global.json +2 -2
  203. package/package.json +2 -2
package/README.md CHANGED
@@ -162,7 +162,7 @@ Build modifications:
162
162
 
163
163
 
164
164
  ## Use in mobile app
165
- Run `npm run build:watch``
165
+ Run `npm run build:watch`
166
166
  For more info see the mobile documentaion (`docs/local-sync.md`)
167
167
 
168
168
  ## Troubleshooting
@@ -1,7 +1,19 @@
1
+ import _keys from "lodash/fp/keys";
1
2
  import React from 'react';
2
3
  import PropTypes from 'prop-types';
3
- import classnames from 'classnames';
4
4
  import style from './style.css';
5
+ const CATEGORIES = {
6
+ base: style.base,
7
+ advanced: style.advanced,
8
+ coach: style.coach,
9
+ chapter: style.chapter,
10
+ scorm: style.scorm,
11
+ video: style.video,
12
+ article: style.article,
13
+ podcast: style.podcast,
14
+ course: style.course,
15
+ hidden: style.hidden
16
+ };
5
17
 
6
18
  const ContentBadge = props => {
7
19
  const {
@@ -9,12 +21,12 @@ const ContentBadge = props => {
9
21
  label
10
22
  } = props;
11
23
  return /*#__PURE__*/React.createElement("span", {
12
- className: classnames(category === 'base' && style.base, category === 'advanced' && style.advanced, category === 'coach' && style.coach, category === 'chapter' && style.chapter, category === 'scorm' && style.scorm, category === 'video' && style.video, category === 'article' && style.article, category === 'podcast' && style.podcast, category === 'course' && style.course)
24
+ className: CATEGORIES[category]
13
25
  }, label);
14
26
  };
15
27
 
16
28
  ContentBadge.propTypes = process.env.NODE_ENV !== "production" ? {
17
- category: PropTypes.oneOf(['base', 'advanced', 'coach', 'chapter', 'scorm', 'video', 'article', 'podcast', 'course']),
29
+ category: PropTypes.oneOf(_keys(CATEGORIES)),
18
30
  label: PropTypes.string
19
31
  } : {};
20
32
  export default ContentBadge;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/content-badge/index.js"],"names":["React","PropTypes","classnames","style","ContentBadge","props","category","label","base","advanced","coach","chapter","scorm","video","article","podcast","course","propTypes","oneOf","string"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,YAAY,GAAGC,KAAK,IAAI;AAC5B,QAAM;AAACC,IAAAA,QAAD;AAAWC,IAAAA;AAAX,MAAoBF,KAA1B;AACA,sBACE;AACE,IAAA,SAAS,EAAEH,UAAU,CACnBI,QAAQ,KAAK,MAAb,IAAuBH,KAAK,CAACK,IADV,EAEnBF,QAAQ,KAAK,UAAb,IAA2BH,KAAK,CAACM,QAFd,EAGnBH,QAAQ,KAAK,OAAb,IAAwBH,KAAK,CAACO,KAHX,EAInBJ,QAAQ,KAAK,SAAb,IAA0BH,KAAK,CAACQ,OAJb,EAKnBL,QAAQ,KAAK,OAAb,IAAwBH,KAAK,CAACS,KALX,EAMnBN,QAAQ,KAAK,OAAb,IAAwBH,KAAK,CAACU,KANX,EAOnBP,QAAQ,KAAK,SAAb,IAA0BH,KAAK,CAACW,OAPb,EAQnBR,QAAQ,KAAK,SAAb,IAA0BH,KAAK,CAACY,OARb,EASnBT,QAAQ,KAAK,QAAb,IAAyBH,KAAK,CAACa,MATZ;AADvB,KAaGT,KAbH,CADF;AAiBD,CAnBD;;AAqBAH,YAAY,CAACa,SAAb,2CAAyB;AACvBX,EAAAA,QAAQ,EAAEL,SAAS,CAACiB,KAAV,CAAgB,CACxB,MADwB,EAExB,UAFwB,EAGxB,OAHwB,EAIxB,SAJwB,EAKxB,OALwB,EAMxB,OANwB,EAOxB,SAPwB,EAQxB,SARwB,EASxB,QATwB,CAAhB,CADa;AAYvBX,EAAAA,KAAK,EAAEN,SAAS,CAACkB;AAZM,CAAzB;AAeA,eAAef,YAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './style.css';\n\nconst ContentBadge = props => {\n const {category, label} = props;\n return (\n <span\n className={classnames(\n category === 'base' && style.base,\n category === 'advanced' && style.advanced,\n category === 'coach' && style.coach,\n category === 'chapter' && style.chapter,\n category === 'scorm' && style.scorm,\n category === 'video' && style.video,\n category === 'article' && style.article,\n category === 'podcast' && style.podcast,\n category === 'course' && style.course\n )}\n >\n {label}\n </span>\n );\n};\n\nContentBadge.propTypes = {\n category: PropTypes.oneOf([\n 'base',\n 'advanced',\n 'coach',\n 'chapter',\n 'scorm',\n 'video',\n 'article',\n 'podcast',\n 'course'\n ]),\n label: PropTypes.string\n};\n\nexport default ContentBadge;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/content-badge/index.js"],"names":["React","PropTypes","style","CATEGORIES","base","advanced","coach","chapter","scorm","video","article","podcast","course","hidden","ContentBadge","props","category","label","propTypes","oneOf","string"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,UAAU,GAAG;AACjBC,EAAAA,IAAI,EAAEF,KAAK,CAACE,IADK;AAEjBC,EAAAA,QAAQ,EAAEH,KAAK,CAACG,QAFC;AAGjBC,EAAAA,KAAK,EAAEJ,KAAK,CAACI,KAHI;AAIjBC,EAAAA,OAAO,EAAEL,KAAK,CAACK,OAJE;AAKjBC,EAAAA,KAAK,EAAEN,KAAK,CAACM,KALI;AAMjBC,EAAAA,KAAK,EAAEP,KAAK,CAACO,KANI;AAOjBC,EAAAA,OAAO,EAAER,KAAK,CAACQ,OAPE;AAQjBC,EAAAA,OAAO,EAAET,KAAK,CAACS,OARE;AASjBC,EAAAA,MAAM,EAAEV,KAAK,CAACU,MATG;AAUjBC,EAAAA,MAAM,EAAEX,KAAK,CAACW;AAVG,CAAnB;;AAaA,MAAMC,YAAY,GAAGC,KAAK,IAAI;AAC5B,QAAM;AAACC,IAAAA,QAAD;AAAWC,IAAAA;AAAX,MAAoBF,KAA1B;AACA,sBAAO;AAAM,IAAA,SAAS,EAAEZ,UAAU,CAACa,QAAD;AAA3B,KAAwCC,KAAxC,CAAP;AACD,CAHD;;AAKAH,YAAY,CAACI,SAAb,2CAAyB;AACvBF,EAAAA,QAAQ,EAAEf,SAAS,CAACkB,KAAV,CAAgB,MAAKhB,UAAL,CAAhB,CADa;AAEvBc,EAAAA,KAAK,EAAEhB,SAAS,CAACmB;AAFM,CAAzB;AAKA,eAAeN,YAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {keys} from 'lodash/fp';\nimport style from './style.css';\n\nconst CATEGORIES = {\n base: style.base,\n advanced: style.advanced,\n coach: style.coach,\n chapter: style.chapter,\n scorm: style.scorm,\n video: style.video,\n article: style.article,\n podcast: style.podcast,\n course: style.course,\n hidden: style.hidden\n};\n\nconst ContentBadge = props => {\n const {category, label} = props;\n return <span className={CATEGORIES[category]}>{label}</span>;\n};\n\nContentBadge.propTypes = {\n category: PropTypes.oneOf(keys(CATEGORIES)),\n label: PropTypes.string\n};\n\nexport default ContentBadge;\n"],"file":"index.js"}
@@ -9,6 +9,7 @@
9
9
  @value cm_red_200 from colors;
10
10
  @value cm_red_video from colors;
11
11
  @value cm_violet_podcast from colors;
12
+ @value cm_negative_200 from colors;
12
13
 
13
14
  .level {
14
15
  font-family: Gilroy;
@@ -24,6 +25,11 @@
24
25
  background-color: cm_red_200;
25
26
  }
26
27
 
28
+ .hidden {
29
+ composes: level;
30
+ background-color: cm_negative_200;
31
+ }
32
+
27
33
  .base {
28
34
  composes: level;
29
35
  background-color: cm_green_200;
@@ -39,7 +39,8 @@ const InputCheckbox = props => {
39
39
  const className = getClassState(defaultContainerClassName, modifiedClassName, errorClassName, modified, error);
40
40
  return /*#__PURE__*/React.createElement("label", {
41
41
  className: className,
42
- htmlFor: idCheckbox
42
+ htmlFor: idCheckbox,
43
+ "data-name": "checkbox-input-label"
43
44
  }, /*#__PURE__*/React.createElement("input", {
44
45
  type: "checkbox",
45
46
  className: style.checkbox,
@@ -47,7 +48,8 @@ const InputCheckbox = props => {
47
48
  id: idCheckbox,
48
49
  checked: checked,
49
50
  onChange: handleChange,
50
- disabled: disabled
51
+ disabled: disabled,
52
+ "data-name": "checkbox-input"
51
53
  }), /*#__PURE__*/React.createElement("div", {
52
54
  className: classnames(style.label, noLabelMargins ? style.noLabelMargins : undefined)
53
55
  }, /*#__PURE__*/React.createElement(CheckIcon, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/input-checkbox/index.js"],"names":["React","useMemo","PropTypes","classnames","NovaSolidStatusValidate","CheckIcon","getClassState","style","titleStylesClassNames","inherit","primary","secondary","tertiary","InputCheckbox","props","checked","onChange","error","disabled","required","titleStyle","modified","theme","title","propsTitle","noLabelMargins","titleStyleClassName","idCheckbox","handleChange","e","target","modifiedClassName","coorpManagerModified","defaultModified","errorClassName","coorpManagerError","defaultError","defaultContainerClassName","coorpManager","default","className","checkbox","label","undefined","icon","propTypes","string","isRequired","bool","func","oneOf"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaSolidStatusValidate as CheckIcon} from '@coorpacademy/nova-icons';\nimport {keys, noop, uniqueId} from 'lodash/fp';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst titleStylesClassNames = {\n inherit: style.inherit,\n primary: style.primary,\n secondary: style.secondary,\n tertiary: style.tertiary\n};\n\nconst InputCheckbox = props => {\n const {\n checked,\n onChange = noop,\n error,\n disabled,\n required,\n titleStyle = 'primary',\n modified = false,\n theme = 'default',\n title: propsTitle,\n noLabelMargins = false\n } = props;\n\n const titleStyleClassName = titleStylesClassNames[titleStyle];\n const idCheckbox = uniqueId('input-checkbox-');\n const title = `${propsTitle}${required ? '*' : ''}`;\n const handleChange = useMemo(() => e => onChange(e.target.checked), [onChange]);\n\n const modifiedClassName =\n theme === 'coorpmanager' ? style.coorpManagerModified : style.defaultModified;\n const errorClassName = theme === 'coorpmanager' ? style.coorpManagerError : style.defaultError;\n const defaultContainerClassName = theme === 'coorpmanager' ? style.coorpManager : style.default;\n\n const className = getClassState(\n defaultContainerClassName,\n modifiedClassName,\n errorClassName,\n modified,\n error\n );\n\n return (\n <label className={className} htmlFor={idCheckbox}>\n <input\n type=\"checkbox\"\n className={style.checkbox}\n name={title}\n id={idCheckbox}\n checked={checked}\n onChange={handleChange}\n disabled={disabled}\n />\n <div className={classnames(style.label, noLabelMargins ? style.noLabelMargins : undefined)}>\n <CheckIcon className={style.icon} />\n </div>\n <span className={titleStyleClassName} title={title}>\n {title}\n </span>\n </label>\n );\n};\n\nInputCheckbox.propTypes = {\n title: PropTypes.string.isRequired,\n disabled: PropTypes.bool,\n required: PropTypes.bool,\n checked: PropTypes.bool,\n error: PropTypes.bool,\n onChange: PropTypes.func,\n modified: PropTypes.bool,\n noLabelMargins: PropTypes.bool,\n theme: PropTypes.oneOf(['coorpmanager', 'default']),\n titleStyle: PropTypes.oneOf(keys(titleStylesClassNames))\n};\n\nexport default InputCheckbox;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/input-checkbox/index.js"],"names":["React","useMemo","PropTypes","classnames","NovaSolidStatusValidate","CheckIcon","getClassState","style","titleStylesClassNames","inherit","primary","secondary","tertiary","InputCheckbox","props","checked","onChange","error","disabled","required","titleStyle","modified","theme","title","propsTitle","noLabelMargins","titleStyleClassName","idCheckbox","handleChange","e","target","modifiedClassName","coorpManagerModified","defaultModified","errorClassName","coorpManagerError","defaultError","defaultContainerClassName","coorpManager","default","className","checkbox","label","undefined","icon","propTypes","string","isRequired","bool","func","oneOf"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaSolidStatusValidate as CheckIcon} from '@coorpacademy/nova-icons';\nimport {keys, noop, uniqueId} from 'lodash/fp';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst titleStylesClassNames = {\n inherit: style.inherit,\n primary: style.primary,\n secondary: style.secondary,\n tertiary: style.tertiary\n};\n\nconst InputCheckbox = props => {\n const {\n checked,\n onChange = noop,\n error,\n disabled,\n required,\n titleStyle = 'primary',\n modified = false,\n theme = 'default',\n title: propsTitle,\n noLabelMargins = false\n } = props;\n\n const titleStyleClassName = titleStylesClassNames[titleStyle];\n const idCheckbox = uniqueId('input-checkbox-');\n const title = `${propsTitle}${required ? '*' : ''}`;\n const handleChange = useMemo(() => e => onChange(e.target.checked), [onChange]);\n\n const modifiedClassName =\n theme === 'coorpmanager' ? style.coorpManagerModified : style.defaultModified;\n const errorClassName = theme === 'coorpmanager' ? style.coorpManagerError : style.defaultError;\n const defaultContainerClassName = theme === 'coorpmanager' ? style.coorpManager : style.default;\n\n const className = getClassState(\n defaultContainerClassName,\n modifiedClassName,\n errorClassName,\n modified,\n error\n );\n\n return (\n <label className={className} htmlFor={idCheckbox} data-name=\"checkbox-input-label\">\n <input\n type=\"checkbox\"\n className={style.checkbox}\n name={title}\n id={idCheckbox}\n checked={checked}\n onChange={handleChange}\n disabled={disabled}\n data-name=\"checkbox-input\"\n />\n <div className={classnames(style.label, noLabelMargins ? style.noLabelMargins : undefined)}>\n <CheckIcon className={style.icon} />\n </div>\n <span className={titleStyleClassName} title={title}>\n {title}\n </span>\n </label>\n );\n};\n\nInputCheckbox.propTypes = {\n title: PropTypes.string.isRequired,\n disabled: PropTypes.bool,\n required: PropTypes.bool,\n checked: PropTypes.bool,\n error: PropTypes.bool,\n onChange: PropTypes.func,\n modified: PropTypes.bool,\n noLabelMargins: PropTypes.bool,\n theme: PropTypes.oneOf(['coorpmanager', 'default']),\n titleStyle: PropTypes.oneOf(keys(titleStylesClassNames))\n};\n\nexport default InputCheckbox;\n"],"file":"index.js"}
@@ -1,7 +1,6 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import React, { useMemo, useRef, useEffect, useState } from 'react';
4
- import PropTypes from 'prop-types';
5
4
  import classnames from 'classnames';
6
5
  import lottie from 'lottie-web';
7
6
  import get from 'lodash/fp/get';
@@ -11,12 +10,7 @@ import keys from 'lodash/fp/keys';
11
10
  import omit from 'lodash/fp/omit';
12
11
  import unfetch from 'isomorphic-unfetch';
13
12
  import style from './style.css';
14
- export const ANIMATION_CONTROL = {
15
- play: 'play',
16
- pause: 'pause',
17
- stop: 'stop',
18
- loading: 'loading'
19
- };
13
+ import propTypes, { ANIMATION_CONTROL } from './prop-types';
20
14
 
21
15
  const isIE11 = () => {
22
16
  if (typeof window === 'undefined') return;
@@ -137,22 +131,6 @@ const LottieWrapper = props => {
137
131
  }) : null);
138
132
  };
139
133
 
140
- LottieWrapper.propTypes = process.env.NODE_ENV !== "production" ? {
141
- 'aria-label': PropTypes.string.isRequired,
142
- 'data-name': PropTypes.string,
143
- animationSrc: PropTypes.string.isRequired,
144
- loop: PropTypes.bool,
145
- rendererSettings: PropTypes.shape({
146
- hideOnTransparent: PropTypes.bool,
147
- className: PropTypes.string
148
- }),
149
- height: PropTypes.number,
150
- width: PropTypes.number,
151
- className: PropTypes.string,
152
- ie11ImageBackup: PropTypes.string.isRequired,
153
- backupImageClassName: PropTypes.string,
154
- autoplay: PropTypes.bool,
155
- animationControl: PropTypes.oneOf(keys(ANIMATION_CONTROL))
156
- } : {};
134
+ LottieWrapper.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
157
135
  export default LottieWrapper;
158
136
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/lottie-wrapper/index.js"],"names":["React","useMemo","useRef","useEffect","useState","PropTypes","classnames","lottie","get","has","includes","keys","omit","unfetch","style","ANIMATION_CONTROL","play","pause","stop","loading","isIE11","window","userAgent","hasMsCrypto","hasRevision","hasTrident","fetchAndLoadAnimation","_lottie","_fetch","animationSrc","containerRef","loop","animationClassnames","hideOnTransparent","autoplay","animationUrl","URL","toString","fetchResult","headers","animationData","json","animation","loadAnimation","container","current","renderer","rendererSettings","className","preserveAspectRatio","LottieWrapper","props","dataName","ariaLabel","width","height","ie11ImageBackup","backupImageClassName","animationControl","animationClassName","animationItem","setAnimationItem","isAnimationVisible","setIsAnimationVisible","_isIE11","wrapperClassName","lottieContainer","lottieAnimationClassName","ie11BackupImageClassName","backupImage","destroy","name","maxWidth","maxHeight","opacity","transition","propTypes","string","isRequired","bool","shape","number","oneOf"],"mappings":"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","sourcesContent":["import React, {useMemo, useRef, useEffect, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport lottie from 'lottie-web';\nimport get from 'lodash/fp/get';\nimport has from 'lodash/fp/has';\nimport includes from 'lodash/fp/includes';\nimport keys from 'lodash/fp/keys';\nimport omit from 'lodash/fp/omit';\nimport unfetch from 'isomorphic-unfetch';\nimport style from './style.css';\n\nexport const ANIMATION_CONTROL = {\n play: 'play',\n pause: 'pause',\n stop: 'stop',\n loading: 'loading'\n};\n\nconst isIE11 = () => {\n if (typeof window === 'undefined') return;\n const userAgent = get('navigator.userAgent', window);\n const hasMsCrypto = has('msCrypto', window);\n const hasRevision = includes('rv:', userAgent);\n const hasTrident = includes('Trident/', userAgent);\n\n return hasMsCrypto || (hasRevision && hasTrident);\n};\n\nexport const fetchAndLoadAnimation = async (\n _lottie,\n _fetch,\n animationSrc,\n containerRef,\n loop,\n animationClassnames,\n hideOnTransparent,\n autoplay\n) => {\n const animationUrl = new URL(animationSrc).toString();\n const fetchResult = await _fetch(animationUrl, {\n headers: {\n 'X-Requested-With': 'XMLHttpRequest',\n 'Content-Type': 'application/json'\n }\n });\n\n const animationData = await fetchResult.json();\n\n const animation =\n _lottie.loadAnimation &&\n _lottie.loadAnimation({\n container: containerRef.current, // the dom element that will contain the animation\n renderer: 'svg',\n autoplay,\n loop,\n animationData,\n rendererSettings: {\n className: animationClassnames,\n hideOnTransparent,\n preserveAspectRatio: 'xMidYMid meet' // same options as a preserveAspectRatio prop\n }\n });\n return animation;\n};\n\nconst LottieWrapper = props => {\n const {\n className,\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n animationSrc,\n loop = false,\n rendererSettings = {},\n width,\n height,\n ie11ImageBackup,\n backupImageClassName,\n autoplay = true,\n animationControl\n } = props;\n\n const {className: animationClassName, hideOnTransparent = true} = rendererSettings;\n\n const containerRef = useRef(null);\n\n // lottie's animation instance\n const [animationItem, setAnimationItem] = useState(null);\n\n const [isAnimationVisible, setIsAnimationVisible] = useState(autoplay);\n\n const _isIE11 = useMemo(() => isIE11(), []);\n\n const wrapperClassName = useMemo(() => classnames(className, style.lottieContainer), [className]);\n\n const lottieAnimationClassName = useMemo(() => classnames(animationClassName, style.animation), [\n animationClassName\n ]);\n\n const ie11BackupImageClassName = useMemo(\n () => classnames(backupImageClassName, style.backupImage),\n [backupImageClassName]\n );\n\n useEffect(() => {\n // enzyme does not handle well the state update after an async useEffect in tests\n // to remove when the migration towards @testing-library/react is done\n /* istanbul ignore next */\n if (includes(animationControl, keys(omit('loading', ANIMATION_CONTROL))) && !autoplay) {\n setIsAnimationVisible(true);\n if (animationItem) animationItem[animationControl]();\n if (animationControl === ANIMATION_CONTROL.stop) setIsAnimationVisible(false);\n }\n }, [animationControl, animationItem, autoplay]);\n\n useEffect(() => {\n const loadAnimation = async () => {\n if (!_isIE11 && !animationItem) {\n /* istanbul ignore else */\n if (typeof window !== 'undefined') {\n window.lottie = lottie;\n }\n const animation = await fetchAndLoadAnimation(\n lottie,\n unfetch,\n animationSrc,\n containerRef,\n loop,\n lottieAnimationClassName,\n hideOnTransparent,\n autoplay\n );\n\n /* istanbul ignore next */\n setAnimationItem(animation);\n }\n };\n\n loadAnimation();\n return () => animationItem && /* istanbul ignore next */ lottie.destroy(animationItem.name);\n }, [\n lottieAnimationClassName,\n containerRef,\n hideOnTransparent,\n loop,\n animationSrc,\n _isIE11,\n animationItem,\n autoplay\n ]);\n\n return (\n <div\n ref={containerRef}\n aria-label={ariaLabel}\n data-name={dataName}\n className={wrapperClassName}\n style={{\n ...(width && {\n width: `${width}px`,\n maxWidth: `${width}px`\n }),\n ...(height && {\n height: `${height}px`,\n maxHeight: `${height}px`\n }),\n opacity: isAnimationVisible ? 1 : 0,\n transition: 'opacity 0.25s ease-in'\n }}\n >\n {_isIE11 ? (\n <img\n src={ie11ImageBackup}\n className={ie11BackupImageClassName}\n data-name=\"ie11-backup-image\"\n />\n ) : null}\n </div>\n );\n};\n\nLottieWrapper.propTypes = {\n 'aria-label': PropTypes.string.isRequired,\n 'data-name': PropTypes.string,\n animationSrc: PropTypes.string.isRequired,\n loop: PropTypes.bool,\n rendererSettings: PropTypes.shape({\n hideOnTransparent: PropTypes.bool,\n className: PropTypes.string\n }),\n height: PropTypes.number,\n width: PropTypes.number,\n className: PropTypes.string,\n ie11ImageBackup: PropTypes.string.isRequired,\n backupImageClassName: PropTypes.string,\n autoplay: PropTypes.bool,\n animationControl: PropTypes.oneOf(keys(ANIMATION_CONTROL))\n};\n\nexport default LottieWrapper;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/lottie-wrapper/index.js"],"names":["React","useMemo","useRef","useEffect","useState","classnames","lottie","get","has","includes","keys","omit","unfetch","style","propTypes","ANIMATION_CONTROL","isIE11","window","userAgent","hasMsCrypto","hasRevision","hasTrident","fetchAndLoadAnimation","_lottie","_fetch","animationSrc","containerRef","loop","animationClassnames","hideOnTransparent","autoplay","animationUrl","URL","toString","fetchResult","headers","animationData","json","animation","loadAnimation","container","current","renderer","rendererSettings","className","preserveAspectRatio","LottieWrapper","props","dataName","ariaLabel","width","height","ie11ImageBackup","backupImageClassName","animationControl","animationClassName","animationItem","setAnimationItem","isAnimationVisible","setIsAnimationVisible","_isIE11","wrapperClassName","lottieContainer","lottieAnimationClassName","ie11BackupImageClassName","backupImage","stop","destroy","name","maxWidth","maxHeight","opacity","transition"],"mappings":"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","sourcesContent":["import React, {useMemo, useRef, useEffect, useState} from 'react';\nimport classnames from 'classnames';\nimport lottie from 'lottie-web';\nimport get from 'lodash/fp/get';\nimport has from 'lodash/fp/has';\nimport includes from 'lodash/fp/includes';\nimport keys from 'lodash/fp/keys';\nimport omit from 'lodash/fp/omit';\nimport unfetch from 'isomorphic-unfetch';\nimport style from './style.css';\nimport propTypes, {ANIMATION_CONTROL} from './prop-types';\n\nconst isIE11 = () => {\n if (typeof window === 'undefined') return;\n const userAgent = get('navigator.userAgent', window);\n const hasMsCrypto = has('msCrypto', window);\n const hasRevision = includes('rv:', userAgent);\n const hasTrident = includes('Trident/', userAgent);\n\n return hasMsCrypto || (hasRevision && hasTrident);\n};\n\nexport const fetchAndLoadAnimation = async (\n _lottie,\n _fetch,\n animationSrc,\n containerRef,\n loop,\n animationClassnames,\n hideOnTransparent,\n autoplay\n) => {\n const animationUrl = new URL(animationSrc).toString();\n const fetchResult = await _fetch(animationUrl, {\n headers: {\n 'X-Requested-With': 'XMLHttpRequest',\n 'Content-Type': 'application/json'\n }\n });\n\n const animationData = await fetchResult.json();\n\n const animation =\n _lottie.loadAnimation &&\n _lottie.loadAnimation({\n container: containerRef.current, // the dom element that will contain the animation\n renderer: 'svg',\n autoplay,\n loop,\n animationData,\n rendererSettings: {\n className: animationClassnames,\n hideOnTransparent,\n preserveAspectRatio: 'xMidYMid meet' // same options as a preserveAspectRatio prop\n }\n });\n return animation;\n};\n\nconst LottieWrapper = props => {\n const {\n className,\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n animationSrc,\n loop = false,\n rendererSettings = {},\n width,\n height,\n ie11ImageBackup,\n backupImageClassName,\n autoplay = true,\n animationControl\n } = props;\n\n const {className: animationClassName, hideOnTransparent = true} = rendererSettings;\n\n const containerRef = useRef(null);\n\n // lottie's animation instance\n const [animationItem, setAnimationItem] = useState(null);\n\n const [isAnimationVisible, setIsAnimationVisible] = useState(autoplay);\n\n const _isIE11 = useMemo(() => isIE11(), []);\n\n const wrapperClassName = useMemo(() => classnames(className, style.lottieContainer), [className]);\n\n const lottieAnimationClassName = useMemo(() => classnames(animationClassName, style.animation), [\n animationClassName\n ]);\n\n const ie11BackupImageClassName = useMemo(\n () => classnames(backupImageClassName, style.backupImage),\n [backupImageClassName]\n );\n\n useEffect(() => {\n // enzyme does not handle well the state update after an async useEffect in tests\n // to remove when the migration towards @testing-library/react is done\n /* istanbul ignore next */\n if (includes(animationControl, keys(omit('loading', ANIMATION_CONTROL))) && !autoplay) {\n setIsAnimationVisible(true);\n if (animationItem) animationItem[animationControl]();\n if (animationControl === ANIMATION_CONTROL.stop) setIsAnimationVisible(false);\n }\n }, [animationControl, animationItem, autoplay]);\n\n useEffect(() => {\n const loadAnimation = async () => {\n if (!_isIE11 && !animationItem) {\n /* istanbul ignore else */\n if (typeof window !== 'undefined') {\n window.lottie = lottie;\n }\n const animation = await fetchAndLoadAnimation(\n lottie,\n unfetch,\n animationSrc,\n containerRef,\n loop,\n lottieAnimationClassName,\n hideOnTransparent,\n autoplay\n );\n\n /* istanbul ignore next */\n setAnimationItem(animation);\n }\n };\n\n loadAnimation();\n return () => animationItem && /* istanbul ignore next */ lottie.destroy(animationItem.name);\n }, [\n lottieAnimationClassName,\n containerRef,\n hideOnTransparent,\n loop,\n animationSrc,\n _isIE11,\n animationItem,\n autoplay\n ]);\n\n return (\n <div\n ref={containerRef}\n aria-label={ariaLabel}\n data-name={dataName}\n className={wrapperClassName}\n style={{\n ...(width && {\n width: `${width}px`,\n maxWidth: `${width}px`\n }),\n ...(height && {\n height: `${height}px`,\n maxHeight: `${height}px`\n }),\n opacity: isAnimationVisible ? 1 : 0,\n transition: 'opacity 0.25s ease-in'\n }}\n >\n {_isIE11 ? (\n <img\n src={ie11ImageBackup}\n className={ie11BackupImageClassName}\n data-name=\"ie11-backup-image\"\n />\n ) : null}\n </div>\n );\n};\n\nLottieWrapper.propTypes = propTypes;\n\nexport default LottieWrapper;\n"],"file":"index.js"}
@@ -0,0 +1,26 @@
1
+ import keys from 'lodash/fp/keys';
2
+ import PropTypes from 'prop-types';
3
+ export const ANIMATION_CONTROL = {
4
+ play: 'play',
5
+ pause: 'pause',
6
+ stop: 'stop',
7
+ loading: 'loading'
8
+ };
9
+ export default {
10
+ 'aria-label': PropTypes.string.isRequired,
11
+ 'data-name': PropTypes.string,
12
+ animationSrc: PropTypes.string.isRequired,
13
+ loop: PropTypes.bool,
14
+ rendererSettings: PropTypes.shape({
15
+ hideOnTransparent: PropTypes.bool,
16
+ className: PropTypes.string
17
+ }),
18
+ height: PropTypes.number,
19
+ width: PropTypes.number,
20
+ className: PropTypes.string,
21
+ ie11ImageBackup: PropTypes.string.isRequired,
22
+ backupImageClassName: PropTypes.string,
23
+ autoplay: PropTypes.bool,
24
+ animationControl: PropTypes.oneOf(keys(ANIMATION_CONTROL))
25
+ };
26
+ //# sourceMappingURL=prop-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/lottie-wrapper/prop-types.js"],"names":["keys","PropTypes","ANIMATION_CONTROL","play","pause","stop","loading","string","isRequired","animationSrc","loop","bool","rendererSettings","shape","hideOnTransparent","className","height","number","width","ie11ImageBackup","backupImageClassName","autoplay","animationControl","oneOf"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,gBAAjB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAO,MAAMC,iBAAiB,GAAG;AAC/BC,EAAAA,IAAI,EAAE,MADyB;AAE/BC,EAAAA,KAAK,EAAE,OAFwB;AAG/BC,EAAAA,IAAI,EAAE,MAHyB;AAI/BC,EAAAA,OAAO,EAAE;AAJsB,CAA1B;AAOP,eAAe;AACb,gBAAcL,SAAS,CAACM,MAAV,CAAiBC,UADlB;AAEb,eAAaP,SAAS,CAACM,MAFV;AAGbE,EAAAA,YAAY,EAAER,SAAS,CAACM,MAAV,CAAiBC,UAHlB;AAIbE,EAAAA,IAAI,EAAET,SAAS,CAACU,IAJH;AAKbC,EAAAA,gBAAgB,EAAEX,SAAS,CAACY,KAAV,CAAgB;AAChCC,IAAAA,iBAAiB,EAAEb,SAAS,CAACU,IADG;AAEhCI,IAAAA,SAAS,EAAEd,SAAS,CAACM;AAFW,GAAhB,CALL;AASbS,EAAAA,MAAM,EAAEf,SAAS,CAACgB,MATL;AAUbC,EAAAA,KAAK,EAAEjB,SAAS,CAACgB,MAVJ;AAWbF,EAAAA,SAAS,EAAEd,SAAS,CAACM,MAXR;AAYbY,EAAAA,eAAe,EAAElB,SAAS,CAACM,MAAV,CAAiBC,UAZrB;AAabY,EAAAA,oBAAoB,EAAEnB,SAAS,CAACM,MAbnB;AAcbc,EAAAA,QAAQ,EAAEpB,SAAS,CAACU,IAdP;AAebW,EAAAA,gBAAgB,EAAErB,SAAS,CAACsB,KAAV,CAAgBvB,IAAI,CAACE,iBAAD,CAApB;AAfL,CAAf","sourcesContent":["import keys from 'lodash/fp/keys';\nimport PropTypes from 'prop-types';\n\nexport const ANIMATION_CONTROL = {\n play: 'play',\n pause: 'pause',\n stop: 'stop',\n loading: 'loading'\n};\n\nexport default {\n 'aria-label': PropTypes.string.isRequired,\n 'data-name': PropTypes.string,\n animationSrc: PropTypes.string.isRequired,\n loop: PropTypes.bool,\n rendererSettings: PropTypes.shape({\n hideOnTransparent: PropTypes.bool,\n className: PropTypes.string\n }),\n height: PropTypes.number,\n width: PropTypes.number,\n className: PropTypes.string,\n ie11ImageBackup: PropTypes.string.isRequired,\n backupImageClassName: PropTypes.string,\n autoplay: PropTypes.bool,\n animationControl: PropTypes.oneOf(keys(ANIMATION_CONTROL))\n};\n"],"file":"prop-types.js"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import style from './style.css';
3
+ import propTypes from './prop-types';
4
4
 
5
5
  const ReviewBackground = props => {
6
6
  const {
@@ -28,8 +28,6 @@ const ReviewBackground = props => {
28
28
  })));
29
29
  };
30
30
 
31
- ReviewBackground.propTypes = process.env.NODE_ENV !== "production" ? {
32
- 'aria-label': PropTypes.string
33
- } : {};
31
+ ReviewBackground.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
34
32
  export default ReviewBackground;
35
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/review-background/index.js"],"names":["React","PropTypes","style","ReviewBackground","props","ariaLabel","mainContainer","container","interrogationLeft","interrogationRight","recYellow","recRed","recBlue","recGreen","recGreenLight","propTypes","string"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,gBAAgB,GAAGC,KAAK,IAAI;AAChC,QAAM;AAAC,kBAAcC;AAAf,MAA4BD,KAAlC;AACA,sBACE;AAAK,IAAA,SAAS,EAAEF,KAAK,CAACI,aAAtB;AAAqC,kBAAYD;AAAjD,kBACE;AAAK,IAAA,SAAS,EAAEH,KAAK,CAACK;AAAtB,kBACE;AAAM,IAAA,SAAS,EAAEL,KAAK,CAACM;AAAvB,SADF,eAEE;AAAM,IAAA,SAAS,EAAEN,KAAK,CAACO;AAAvB,SAFF,eAGE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACQ;AAAtB,IAHF,eAIE;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS;AAAtB,IAJF,eAKE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACU;AAAtB,IALF,eAME;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW;AAAtB,IANF,eAOE;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACY;AAAtB,IAPF,CADF,CADF;AAaD,CAfD;;AAiBAX,gBAAgB,CAACY,SAAjB,2CAA6B;AAAC,gBAAcd,SAAS,CAACe;AAAzB,CAA7B;AAEA,eAAeb,gBAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport style from './style.css';\n\nconst ReviewBackground = props => {\n const {'aria-label': ariaLabel} = props;\n return (\n <div className={style.mainContainer} aria-label={ariaLabel}>\n <div className={style.container}>\n <span className={style.interrogationLeft}>?</span>\n <span className={style.interrogationRight}>?</span>\n <div className={style.recYellow} />\n <div className={style.recRed} />\n <div className={style.recBlue} />\n <div className={style.recGreen} />\n <div className={style.recGreenLight} />\n </div>\n </div>\n );\n};\n\nReviewBackground.propTypes = {'aria-label': PropTypes.string};\n\nexport default ReviewBackground;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/review-background/index.js"],"names":["React","style","propTypes","ReviewBackground","props","ariaLabel","mainContainer","container","interrogationLeft","interrogationRight","recYellow","recRed","recBlue","recGreen","recGreenLight"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AACA,OAAOC,SAAP,MAAsB,cAAtB;;AAEA,MAAMC,gBAAgB,GAAGC,KAAK,IAAI;AAChC,QAAM;AAAC,kBAAcC;AAAf,MAA4BD,KAAlC;AACA,sBACE;AAAK,IAAA,SAAS,EAAEH,KAAK,CAACK,aAAtB;AAAqC,kBAAYD;AAAjD,kBACE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACM;AAAtB,kBACE;AAAM,IAAA,SAAS,EAAEN,KAAK,CAACO;AAAvB,SADF,eAEE;AAAM,IAAA,SAAS,EAAEP,KAAK,CAACQ;AAAvB,SAFF,eAGE;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS;AAAtB,IAHF,eAIE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACU;AAAtB,IAJF,eAKE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW;AAAtB,IALF,eAME;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACY;AAAtB,IANF,eAOE;AAAK,IAAA,SAAS,EAAEZ,KAAK,CAACa;AAAtB,IAPF,CADF,CADF;AAaD,CAfD;;AAiBAX,gBAAgB,CAACD,SAAjB,2CAA6BA,SAA7B;AAEA,eAAeC,gBAAf","sourcesContent":["import React from 'react';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ReviewBackground = props => {\n const {'aria-label': ariaLabel} = props;\n return (\n <div className={style.mainContainer} aria-label={ariaLabel}>\n <div className={style.container}>\n <span className={style.interrogationLeft}>?</span>\n <span className={style.interrogationRight}>?</span>\n <div className={style.recYellow} />\n <div className={style.recRed} />\n <div className={style.recBlue} />\n <div className={style.recGreen} />\n <div className={style.recGreenLight} />\n </div>\n </div>\n );\n};\n\nReviewBackground.propTypes = propTypes;\n\nexport default ReviewBackground;\n"],"file":"index.js"}
@@ -0,0 +1,5 @@
1
+ import PropTypes from 'prop-types';
2
+ export default {
3
+ 'aria-label': PropTypes.string
4
+ };
5
+ //# sourceMappingURL=prop-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/review-background/prop-types.js"],"names":["PropTypes","string"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,eAAe;AAAC,gBAAcA,SAAS,CAACC;AAAzB,CAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nexport default {'aria-label': PropTypes.string};\n"],"file":"prop-types.js"}
@@ -1,11 +1,12 @@
1
1
  import React from 'react';
2
2
  import classnames from 'classnames';
3
- import PropTypes from 'prop-types';
4
3
  import { NovaCompositionCoorpacademyCheck as RightIcon, NovaSolidStatusClose as WrongIcon } from '@coorpacademy/nova-icons';
5
4
  import style from './style.css';
5
+ import propTypes from './prop-types';
6
6
  export const ICON_VALUES = {
7
7
  right: 'right',
8
- wrong: 'wrong'
8
+ wrong: 'wrong',
9
+ 'no-answer': 'no-answer'
9
10
  };
10
11
 
11
12
  const Content = ({
@@ -13,7 +14,7 @@ const Content = ({
13
14
  current,
14
15
  value
15
16
  }) => {
16
- if (!icon) {
17
+ if (icon === ICON_VALUES['no-answer']) {
17
18
  return /*#__PURE__*/React.createElement("span", {
18
19
  className: style.value,
19
20
  "aria-label": `step ${value}`
@@ -50,10 +51,6 @@ const ReviewHeaderStepItem = props => {
50
51
  }, /*#__PURE__*/React.createElement(Content, props));
51
52
  };
52
53
 
53
- ReviewHeaderStepItem.propTypes = process.env.NODE_ENV !== "production" ? {
54
- icon: PropTypes.string,
55
- current: PropTypes.bool,
56
- value: PropTypes.string
57
- } : {};
54
+ ReviewHeaderStepItem.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
58
55
  export default ReviewHeaderStepItem;
59
56
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/review-header-step-item/index.js"],"names":["React","classnames","PropTypes","NovaCompositionCoorpacademyCheck","RightIcon","NovaSolidStatusClose","WrongIcon","style","ICON_VALUES","right","wrong","Content","icon","current","value","rightIcon","currentRightIcon","wrongIcon","currentWrongIcon","ReviewHeaderStepItem","props","default","propTypes","string","bool"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SACEC,gCAAgC,IAAIC,SADtC,EAEEC,oBAAoB,IAAIC,SAF1B,QAGO,0BAHP;AAIA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,OAAO,MAAMC,WAAW,GAAG;AACzBC,EAAAA,KAAK,EAAE,OADkB;AAEzBC,EAAAA,KAAK,EAAE;AAFkB,CAApB;;AAKP,MAAMC,OAAO,GAAG,CAAC;AAACC,EAAAA,IAAD;AAAOC,EAAAA,OAAP;AAAgBC,EAAAA;AAAhB,CAAD,KAA4B;AAC1C,MAAI,CAACF,IAAL,EAAW;AACT,wBACE;AAAM,MAAA,SAAS,EAAEL,KAAK,CAACO,KAAvB;AAA8B,oBAAa,QAAOA,KAAM;AAAxD,OACGA,KADH,CADF;AAKD;;AAED,MAAIF,IAAI,KAAKJ,WAAW,CAACC,KAAzB,EAAgC;AAC9B,wBACE;AAAM,MAAA,SAAS,EAAEF,KAAK,CAACO,KAAvB;AAA8B,oBAAa,QAAOA,KAAM;AAAxD,oBACE,oBAAC,SAAD;AAAW,MAAA,SAAS,EAAEb,UAAU,CAACM,KAAK,CAACQ,SAAP,EAAkBF,OAAO,IAAIN,KAAK,CAACS,gBAAnC;AAAhC,MADF,CADF;AAKD;;AAED,MAAIJ,IAAI,KAAKJ,WAAW,CAACE,KAAzB,EAAgC;AAC9B,wBACE;AAAM,MAAA,SAAS,EAAEH,KAAK,CAACO,KAAvB;AAA8B,oBAAa,QAAOA,KAAM;AAAxD,oBACE,oBAAC,SAAD;AAAW,MAAA,SAAS,EAAEb,UAAU,CAACM,KAAK,CAACU,SAAP,EAAkBJ,OAAO,IAAIN,KAAK,CAACW,gBAAnC;AAAhC,MADF,CADF;AAKD;AACF,CAxBD;;AA0BA,MAAMC,oBAAoB,GAAGC,KAAK,IAAI;AACpC,QAAM;AAACR,IAAAA,IAAD;AAAOC,IAAAA;AAAP,MAAkBO,KAAxB;AACA,sBACE;AACE,IAAA,SAAS,EAAEnB,UAAU,CACnBM,KAAK,CAACc,OADa,EAEnBT,IAAI,KAAKJ,WAAW,CAACC,KAArB,IAA8BF,KAAK,CAACE,KAFjB,EAGnBG,IAAI,KAAKJ,WAAW,CAACE,KAArB,IAA8BH,KAAK,CAACG,KAHjB,EAInBG,OAAO,IAAIN,KAAK,CAACM,OAJE,CADvB;AAOE,iBAAU;AAPZ,kBASE,oBAAC,OAAD,EAAaO,KAAb,CATF,CADF;AAaD,CAfD;;AAiBAD,oBAAoB,CAACG,SAArB,2CAAiC;AAC/BV,EAAAA,IAAI,EAAEV,SAAS,CAACqB,MADe;AAE/BV,EAAAA,OAAO,EAAEX,SAAS,CAACsB,IAFY;AAG/BV,EAAAA,KAAK,EAAEZ,SAAS,CAACqB;AAHc,CAAjC;AAMA,eAAeJ,oBAAf","sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyCheck as RightIcon,\n NovaSolidStatusClose as WrongIcon\n} from '@coorpacademy/nova-icons';\nimport style from './style.css';\n\nexport const ICON_VALUES = {\n right: 'right',\n wrong: 'wrong'\n};\n\nconst Content = ({icon, current, value}) => {\n if (!icon) {\n return (\n <span className={style.value} aria-label={`step ${value}`}>\n {value}\n </span>\n );\n }\n\n if (icon === ICON_VALUES.right) {\n return (\n <span className={style.value} aria-label={`step ${value}`}>\n <RightIcon className={classnames(style.rightIcon, current && style.currentRightIcon)} />\n </span>\n );\n }\n\n if (icon === ICON_VALUES.wrong) {\n return (\n <span className={style.value} aria-label={`step ${value}`}>\n <WrongIcon className={classnames(style.wrongIcon, current && style.currentWrongIcon)} />\n </span>\n );\n }\n};\n\nconst ReviewHeaderStepItem = props => {\n const {icon, current} = props;\n return (\n <div\n className={classnames(\n style.default,\n icon === ICON_VALUES.right && style.right,\n icon === ICON_VALUES.wrong && style.wrong,\n current && style.current\n )}\n data-name=\"header-step-item\"\n >\n <Content {...props} />\n </div>\n );\n};\n\nReviewHeaderStepItem.propTypes = {\n icon: PropTypes.string,\n current: PropTypes.bool,\n value: PropTypes.string\n};\n\nexport default ReviewHeaderStepItem;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/review-header-step-item/index.js"],"names":["React","classnames","NovaCompositionCoorpacademyCheck","RightIcon","NovaSolidStatusClose","WrongIcon","style","propTypes","ICON_VALUES","right","wrong","Content","icon","current","value","rightIcon","currentRightIcon","wrongIcon","currentWrongIcon","ReviewHeaderStepItem","props","default"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SACEC,gCAAgC,IAAIC,SADtC,EAEEC,oBAAoB,IAAIC,SAF1B,QAGO,0BAHP;AAIA,OAAOC,KAAP,MAAkB,aAAlB;AACA,OAAOC,SAAP,MAAsB,cAAtB;AAEA,OAAO,MAAMC,WAAW,GAAG;AACzBC,EAAAA,KAAK,EAAE,OADkB;AAEzBC,EAAAA,KAAK,EAAE,OAFkB;AAGzB,eAAa;AAHY,CAApB;;AAMP,MAAMC,OAAO,GAAG,CAAC;AAACC,EAAAA,IAAD;AAAOC,EAAAA,OAAP;AAAgBC,EAAAA;AAAhB,CAAD,KAA4B;AAC1C,MAAIF,IAAI,KAAKJ,WAAW,CAAC,WAAD,CAAxB,EAAuC;AACrC,wBACE;AAAM,MAAA,SAAS,EAAEF,KAAK,CAACQ,KAAvB;AAA8B,oBAAa,QAAOA,KAAM;AAAxD,OACGA,KADH,CADF;AAKD;;AAED,MAAIF,IAAI,KAAKJ,WAAW,CAACC,KAAzB,EAAgC;AAC9B,wBACE;AAAM,MAAA,SAAS,EAAEH,KAAK,CAACQ,KAAvB;AAA8B,oBAAa,QAAOA,KAAM;AAAxD,oBACE,oBAAC,SAAD;AAAW,MAAA,SAAS,EAAEb,UAAU,CAACK,KAAK,CAACS,SAAP,EAAkBF,OAAO,IAAIP,KAAK,CAACU,gBAAnC;AAAhC,MADF,CADF;AAKD;;AAED,MAAIJ,IAAI,KAAKJ,WAAW,CAACE,KAAzB,EAAgC;AAC9B,wBACE;AAAM,MAAA,SAAS,EAAEJ,KAAK,CAACQ,KAAvB;AAA8B,oBAAa,QAAOA,KAAM;AAAxD,oBACE,oBAAC,SAAD;AAAW,MAAA,SAAS,EAAEb,UAAU,CAACK,KAAK,CAACW,SAAP,EAAkBJ,OAAO,IAAIP,KAAK,CAACY,gBAAnC;AAAhC,MADF,CADF;AAKD;AACF,CAxBD;;AA0BA,MAAMC,oBAAoB,GAAGC,KAAK,IAAI;AACpC,QAAM;AAACR,IAAAA,IAAD;AAAOC,IAAAA;AAAP,MAAkBO,KAAxB;AACA,sBACE;AACE,IAAA,SAAS,EAAEnB,UAAU,CACnBK,KAAK,CAACe,OADa,EAEnBT,IAAI,KAAKJ,WAAW,CAACC,KAArB,IAA8BH,KAAK,CAACG,KAFjB,EAGnBG,IAAI,KAAKJ,WAAW,CAACE,KAArB,IAA8BJ,KAAK,CAACI,KAHjB,EAInBG,OAAO,IAAIP,KAAK,CAACO,OAJE,CADvB;AAOE,iBAAU;AAPZ,kBASE,oBAAC,OAAD,EAAaO,KAAb,CATF,CADF;AAaD,CAfD;;AAiBAD,oBAAoB,CAACZ,SAArB,2CAAiCA,SAAjC;AAEA,eAAeY,oBAAf","sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as RightIcon,\n NovaSolidStatusClose as WrongIcon\n} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nexport const ICON_VALUES = {\n right: 'right',\n wrong: 'wrong',\n 'no-answer': 'no-answer'\n};\n\nconst Content = ({icon, current, value}) => {\n if (icon === ICON_VALUES['no-answer']) {\n return (\n <span className={style.value} aria-label={`step ${value}`}>\n {value}\n </span>\n );\n }\n\n if (icon === ICON_VALUES.right) {\n return (\n <span className={style.value} aria-label={`step ${value}`}>\n <RightIcon className={classnames(style.rightIcon, current && style.currentRightIcon)} />\n </span>\n );\n }\n\n if (icon === ICON_VALUES.wrong) {\n return (\n <span className={style.value} aria-label={`step ${value}`}>\n <WrongIcon className={classnames(style.wrongIcon, current && style.currentWrongIcon)} />\n </span>\n );\n }\n};\n\nconst ReviewHeaderStepItem = props => {\n const {icon, current} = props;\n return (\n <div\n className={classnames(\n style.default,\n icon === ICON_VALUES.right && style.right,\n icon === ICON_VALUES.wrong && style.wrong,\n current && style.current\n )}\n data-name=\"header-step-item\"\n >\n <Content {...props} />\n </div>\n );\n};\n\nReviewHeaderStepItem.propTypes = propTypes;\n\nexport default ReviewHeaderStepItem;\n"],"file":"index.js"}
@@ -0,0 +1,7 @@
1
+ import PropTypes from 'prop-types';
2
+ export default {
3
+ icon: PropTypes.string,
4
+ current: PropTypes.bool,
5
+ value: PropTypes.string
6
+ };
7
+ //# sourceMappingURL=prop-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/review-header-step-item/prop-types.js"],"names":["PropTypes","icon","string","current","bool","value"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,eAAe;AACbC,EAAAA,IAAI,EAAED,SAAS,CAACE,MADH;AAEbC,EAAAA,OAAO,EAAEH,SAAS,CAACI,IAFN;AAGbC,EAAAA,KAAK,EAAEL,SAAS,CAACE;AAHJ,CAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nexport default {\n icon: PropTypes.string,\n current: PropTypes.bool,\n value: PropTypes.string\n};\n"],"file":"prop-types.js"}
@@ -4,6 +4,7 @@ import getOr from 'lodash/fp/getOr';
4
4
  import map from 'lodash/fp/map';
5
5
  import { NovaSolidStatusCheckCircle2 as CheckIcon, NovaSolidVoteRewardsVoteHeart as HeartIcon, NovaCompositionCoorpacademyInformationIcon as InformationIcon, NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon, NovaLineSelectionCursorsCursorArrowTarget as TargetIcon } from '@coorpacademy/nova-icons';
6
6
  import style from './style.css';
7
+ import propTypes from './prop-types';
7
8
  const ICONS = {
8
9
  skills: TargetIcon,
9
10
  questions: QuestionIcon,
@@ -86,23 +87,9 @@ const ReviewPresentation = props => {
86
87
  }, labelsList)));
87
88
  };
88
89
 
89
- const levelItem = process.env.NODE_ENV !== "production" ? PropTypes.shape({
90
- text: PropTypes.string,
91
- tooltipText: PropTypes.string
92
- }) : {};
93
90
  ToolTip.propTypes = process.env.NODE_ENV !== "production" ? {
94
91
  tooltipText: PropTypes.string
95
92
  } : {};
96
- ReviewPresentation.propTypes = process.env.NODE_ENV !== "production" ? {
97
- 'aria-label': PropTypes.string,
98
- reviewTitle: PropTypes.string,
99
- reviewText: PropTypes.string,
100
- labelsList: PropTypes.shape({
101
- skills: levelItem,
102
- questions: levelItem,
103
- lifes: levelItem,
104
- allright: levelItem
105
- })
106
- } : {};
93
+ ReviewPresentation.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
107
94
  export default ReviewPresentation;
108
95
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/review-presentation/index.js"],"names":["React","PropTypes","getOr","map","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidVoteRewardsVoteHeart","HeartIcon","NovaCompositionCoorpacademyInformationIcon","InformationIcon","NovaSolidInterfaceFeedbackInterfaceQuestionMark","QuestionIcon","NovaLineSelectionCursorsCursorArrowTarget","TargetIcon","style","ICONS","skills","questions","lifes","allright","getIcon","icon","Icon","labelIcon","ToolTip","tooltipText","tooltipContainer","tooltipIconContainer","informationIcon","toolTip","ReviewPresentation","props","ariaLabel","reviewTitle","reviewText","labelsList","reviewWrapper","__html","reviewListWrapper","convert","cap","label","key","reviewList","reviewListItemWrapper","reviewListText","text","levelItem","shape","string","propTypes"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport map from 'lodash/fp/map';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidVoteRewardsVoteHeart as HeartIcon,\n NovaCompositionCoorpacademyInformationIcon as InformationIcon,\n NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon,\n NovaLineSelectionCursorsCursorArrowTarget as TargetIcon\n} from '@coorpacademy/nova-icons';\nimport style from './style.css';\n\nconst ICONS = {\n skills: TargetIcon,\n questions: QuestionIcon,\n lifes: HeartIcon,\n allright: CheckIcon\n};\n\nconst getIcon = icon => {\n const Icon = getOr(null, icon, ICONS);\n\n /* istanbul ignore next */\n if (!Icon) {\n return <div className={style.labelIcon} />;\n }\n return <Icon className={style.labelIcon} />;\n};\n\nconst ToolTip = ({tooltipText}) => {\n return (\n <div className={style.tooltipContainer}>\n <div className={style.tooltipIconContainer}>\n <InformationIcon className={style.informationIcon} width={12} height={12} />\n </div>\n <div className={style.toolTip}>\n <div className={style.tooltipText}>{tooltipText}</div>\n </div>\n </div>\n );\n};\n\nconst ReviewPresentation = props => {\n const {'aria-label': ariaLabel, reviewTitle, reviewText, labelsList} = props;\n\n return (\n <div className={style.reviewWrapper} aria-label={ariaLabel}>\n <div\n className={style.reviewTitle}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: reviewTitle}}\n />\n <div\n className={style.reviewText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: reviewText}}\n />\n <ul className={style.reviewListWrapper}>\n {map.convert({cap: false})((label, key) => {\n return (\n <li key={`step-${key}`} className={style.reviewList}>\n <div className={style.reviewListItemWrapper} data-tip data-for=\"reviewListItem\">\n <div className={style.reviewListText}>\n {getIcon(key)} {label.text}\n </div>\n <ToolTip tooltipText={label.tooltipText} />\n </div>\n </li>\n );\n }, labelsList)}\n </ul>\n </div>\n );\n};\n\nconst levelItem = PropTypes.shape({\n text: PropTypes.string,\n tooltipText: PropTypes.string\n});\n\nToolTip.propTypes = {\n tooltipText: PropTypes.string\n};\n\nReviewPresentation.propTypes = {\n 'aria-label': PropTypes.string,\n reviewTitle: PropTypes.string,\n reviewText: PropTypes.string,\n labelsList: PropTypes.shape({\n skills: levelItem,\n questions: levelItem,\n lifes: levelItem,\n allright: levelItem\n })\n};\n\nexport default ReviewPresentation;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/review-presentation/index.js"],"names":["React","PropTypes","getOr","map","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidVoteRewardsVoteHeart","HeartIcon","NovaCompositionCoorpacademyInformationIcon","InformationIcon","NovaSolidInterfaceFeedbackInterfaceQuestionMark","QuestionIcon","NovaLineSelectionCursorsCursorArrowTarget","TargetIcon","style","propTypes","ICONS","skills","questions","lifes","allright","getIcon","icon","Icon","labelIcon","ToolTip","tooltipText","tooltipContainer","tooltipIconContainer","informationIcon","toolTip","ReviewPresentation","props","ariaLabel","reviewTitle","reviewText","labelsList","reviewWrapper","__html","reviewListWrapper","convert","cap","label","key","reviewList","reviewListItemWrapper","reviewListText","text","string"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport map from 'lodash/fp/map';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidVoteRewardsVoteHeart as HeartIcon,\n NovaCompositionCoorpacademyInformationIcon as InformationIcon,\n NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon,\n NovaLineSelectionCursorsCursorArrowTarget as TargetIcon\n} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ICONS = {\n skills: TargetIcon,\n questions: QuestionIcon,\n lifes: HeartIcon,\n allright: CheckIcon\n};\n\nconst getIcon = icon => {\n const Icon = getOr(null, icon, ICONS);\n\n /* istanbul ignore next */\n if (!Icon) {\n return <div className={style.labelIcon} />;\n }\n return <Icon className={style.labelIcon} />;\n};\n\nconst ToolTip = ({tooltipText}) => {\n return (\n <div className={style.tooltipContainer}>\n <div className={style.tooltipIconContainer}>\n <InformationIcon className={style.informationIcon} width={12} height={12} />\n </div>\n <div className={style.toolTip}>\n <div className={style.tooltipText}>{tooltipText}</div>\n </div>\n </div>\n );\n};\n\nconst ReviewPresentation = props => {\n const {'aria-label': ariaLabel, reviewTitle, reviewText, labelsList} = props;\n\n return (\n <div className={style.reviewWrapper} aria-label={ariaLabel}>\n <div\n className={style.reviewTitle}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: reviewTitle}}\n />\n <div\n className={style.reviewText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: reviewText}}\n />\n <ul className={style.reviewListWrapper}>\n {map.convert({cap: false})((label, key) => {\n return (\n <li key={`step-${key}`} className={style.reviewList}>\n <div className={style.reviewListItemWrapper} data-tip data-for=\"reviewListItem\">\n <div className={style.reviewListText}>\n {getIcon(key)} {label.text}\n </div>\n <ToolTip tooltipText={label.tooltipText} />\n </div>\n </li>\n );\n }, labelsList)}\n </ul>\n </div>\n );\n};\n\nToolTip.propTypes = {\n tooltipText: PropTypes.string\n};\n\nReviewPresentation.propTypes = propTypes;\n\nexport default ReviewPresentation;\n"],"file":"index.js"}
@@ -0,0 +1,18 @@
1
+ import PropTypes from 'prop-types';
2
+ const levelItem = PropTypes.shape({
3
+ text: PropTypes.string,
4
+ tooltipText: PropTypes.string
5
+ });
6
+ const propTypes = {
7
+ 'aria-label': PropTypes.string,
8
+ reviewTitle: PropTypes.string,
9
+ reviewText: PropTypes.string,
10
+ labelsList: PropTypes.shape({
11
+ skills: levelItem,
12
+ questions: levelItem,
13
+ lifes: levelItem,
14
+ allright: levelItem
15
+ })
16
+ };
17
+ export default propTypes;
18
+ //# sourceMappingURL=prop-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/review-presentation/prop-types.js"],"names":["PropTypes","levelItem","shape","text","string","tooltipText","propTypes","reviewTitle","reviewText","labelsList","skills","questions","lifes","allright"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,MAAMC,SAAS,GAAGD,SAAS,CAACE,KAAV,CAAgB;AAChCC,EAAAA,IAAI,EAAEH,SAAS,CAACI,MADgB;AAEhCC,EAAAA,WAAW,EAAEL,SAAS,CAACI;AAFS,CAAhB,CAAlB;AAKA,MAAME,SAAS,GAAG;AAChB,gBAAcN,SAAS,CAACI,MADR;AAEhBG,EAAAA,WAAW,EAAEP,SAAS,CAACI,MAFP;AAGhBI,EAAAA,UAAU,EAAER,SAAS,CAACI,MAHN;AAIhBK,EAAAA,UAAU,EAAET,SAAS,CAACE,KAAV,CAAgB;AAC1BQ,IAAAA,MAAM,EAAET,SADkB;AAE1BU,IAAAA,SAAS,EAAEV,SAFe;AAG1BW,IAAAA,KAAK,EAAEX,SAHmB;AAI1BY,IAAAA,QAAQ,EAAEZ;AAJgB,GAAhB;AAJI,CAAlB;AAYA,eAAeK,SAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nconst levelItem = PropTypes.shape({\n text: PropTypes.string,\n tooltipText: PropTypes.string\n});\n\nconst propTypes = {\n 'aria-label': PropTypes.string,\n reviewTitle: PropTypes.string,\n reviewText: PropTypes.string,\n labelsList: PropTypes.shape({\n skills: levelItem,\n questions: levelItem,\n lifes: levelItem,\n allright: levelItem\n })\n};\n\nexport default propTypes;\n"],"file":"prop-types.js"}
@@ -11,6 +11,7 @@ const Tab = ({
11
11
  }) => {
12
12
  const handleTabClick = useMemo(() => () => onClick(targetContent), [onClick, targetContent]);
13
13
  return /*#__PURE__*/React.createElement("div", {
14
+ "data-name": "tab",
14
15
  className: style.tab,
15
16
  onClick: handleTabClick
16
17
  }, /*#__PURE__*/React.createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/tab/index.js"],"names":["React","useMemo","PropTypes","style","Tab","onClick","links","title","targetContent","handleTabClick","tab","link","propTypes","string","arrayOf","objectOf","func"],"mappings":";AAAA,OAAOA,KAAP,IAAeC,OAAf,QAA6B,OAA7B;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,GAAG,GAAG,CAAC;AAACC,EAAAA,OAAD;AAAUC,EAAAA,KAAV;AAAiBC,EAAAA,KAAjB;AAAwBC,EAAAA;AAAxB,CAAD,KAA4C;AACtD,QAAMC,cAAc,GAAGR,OAAO,CAAC,MAAM,MAAMI,OAAO,CAACG,aAAD,CAApB,EAAqC,CAACH,OAAD,EAAUG,aAAV,CAArC,CAA9B;AAEA,sBACE;AAAK,IAAA,SAAS,EAAEL,KAAK,CAACO,GAAtB;AAA2B,IAAA,OAAO,EAAED;AAApC,kBACE;AAAK,IAAA,SAAS,EAAEN,KAAK,CAACI;AAAtB,KAA8BA,KAA9B,CADF,eAEE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACQ;AAAtB,KACG,KACCA,IAAI,iBACF;AAAK,IAAA,GAAG,EAAEA,IAAI,CAACJ;AAAf,KAAuBI,IAAI,CAACJ,KAA5B,CAFH,EAICD,KAJD,CADH,CAFF,CADF;AAaD,CAhBD;;AAkBAF,GAAG,CAACQ,SAAJ,2CAAgB;AACdL,EAAAA,KAAK,EAAEL,SAAS,CAACW,MADH;AAEdP,EAAAA,KAAK,EAAEJ,SAAS,CAACY,OAAV,CAAkBZ,SAAS,CAACa,QAAV,CAAmBb,SAAS,CAACW,MAA7B,CAAlB,CAFO;AAGdR,EAAAA,OAAO,EAAEH,SAAS,CAACc,IAHL;AAIdR,EAAAA,aAAa,EAAEN,SAAS,CAACW;AAJX,CAAhB;AAOA,eAAeT,GAAf","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {map} from 'lodash/fp';\nimport style from './style.css';\n\nconst Tab = ({onClick, links, title, targetContent}) => {\n const handleTabClick = useMemo(() => () => onClick(targetContent), [onClick, targetContent]);\n\n return (\n <div className={style.tab} onClick={handleTabClick}>\n <div className={style.title}>{title}</div>\n <div className={style.link}>\n {map(\n link => (\n <div key={link.title}>{link.title}</div>\n ),\n links\n )}\n </div>\n </div>\n );\n};\n\nTab.propTypes = {\n title: PropTypes.string,\n links: PropTypes.arrayOf(PropTypes.objectOf(PropTypes.string)),\n onClick: PropTypes.func,\n targetContent: PropTypes.string\n};\n\nexport default Tab;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/tab/index.js"],"names":["React","useMemo","PropTypes","style","Tab","onClick","links","title","targetContent","handleTabClick","tab","link","propTypes","string","arrayOf","objectOf","func"],"mappings":";AAAA,OAAOA,KAAP,IAAeC,OAAf,QAA6B,OAA7B;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,GAAG,GAAG,CAAC;AAACC,EAAAA,OAAD;AAAUC,EAAAA,KAAV;AAAiBC,EAAAA,KAAjB;AAAwBC,EAAAA;AAAxB,CAAD,KAA4C;AACtD,QAAMC,cAAc,GAAGR,OAAO,CAAC,MAAM,MAAMI,OAAO,CAACG,aAAD,CAApB,EAAqC,CAACH,OAAD,EAAUG,aAAV,CAArC,CAA9B;AAEA,sBACE;AAAK,iBAAU,KAAf;AAAqB,IAAA,SAAS,EAAEL,KAAK,CAACO,GAAtC;AAA2C,IAAA,OAAO,EAAED;AAApD,kBACE;AAAK,IAAA,SAAS,EAAEN,KAAK,CAACI;AAAtB,KAA8BA,KAA9B,CADF,eAEE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACQ;AAAtB,KACG,KACCA,IAAI,iBACF;AAAK,IAAA,GAAG,EAAEA,IAAI,CAACJ;AAAf,KAAuBI,IAAI,CAACJ,KAA5B,CAFH,EAICD,KAJD,CADH,CAFF,CADF;AAaD,CAhBD;;AAkBAF,GAAG,CAACQ,SAAJ,2CAAgB;AACdL,EAAAA,KAAK,EAAEL,SAAS,CAACW,MADH;AAEdP,EAAAA,KAAK,EAAEJ,SAAS,CAACY,OAAV,CAAkBZ,SAAS,CAACa,QAAV,CAAmBb,SAAS,CAACW,MAA7B,CAAlB,CAFO;AAGdR,EAAAA,OAAO,EAAEH,SAAS,CAACc,IAHL;AAIdR,EAAAA,aAAa,EAAEN,SAAS,CAACW;AAJX,CAAhB;AAOA,eAAeT,GAAf","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {map} from 'lodash/fp';\nimport style from './style.css';\n\nconst Tab = ({onClick, links, title, targetContent}) => {\n const handleTabClick = useMemo(() => () => onClick(targetContent), [onClick, targetContent]);\n\n return (\n <div data-name=\"tab\" className={style.tab} onClick={handleTabClick}>\n <div className={style.title}>{title}</div>\n <div className={style.link}>\n {map(\n link => (\n <div key={link.title}>{link.title}</div>\n ),\n links\n )}\n </div>\n </div>\n );\n};\n\nTab.propTypes = {\n title: PropTypes.string,\n links: PropTypes.arrayOf(PropTypes.objectOf(PropTypes.string)),\n onClick: PropTypes.func,\n targetContent: PropTypes.string\n};\n\nexport default Tab;\n"],"file":"index.js"}
@@ -5,7 +5,6 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
5
5
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
6
 
7
7
  import React from 'react';
8
- import PropTypes from 'prop-types';
9
8
  import VideoPlayer from '../video-player';
10
9
  import DropDown from '../questions/drop-down';
11
10
  import FreeText from '../questions/free-text';
@@ -16,9 +15,7 @@ import QuestionRange from '../questions/question-range';
16
15
  import Template from '../questions/template';
17
16
  import Audio from '../audio';
18
17
  import style from './style.css';
19
- export const TYPE_IMAGE = 'img';
20
- export const TYPE_VIDEO = 'video';
21
- export const TYPE_AUDIO = 'audio';
18
+ import propTypes, { MediaViewPropTypes, TYPE_AUDIO, TYPE_IMAGE, TYPE_VIDEO } from './prop-types';
22
19
 
23
20
  const MediaView = ({
24
21
  media
@@ -60,21 +57,7 @@ const MediaView = ({
60
57
  }
61
58
  };
62
59
 
63
- const isType = process.env.NODE_ENV !== "production" ? name => PropTypes.oneOf([name]) : {};
64
- const videoPropType = process.env.NODE_ENV !== "production" ? PropTypes.shape(_extends(_extends({}, VideoPlayer.propTypes), {}, {
65
- type: isType(TYPE_VIDEO).isRequired
66
- })) : {};
67
- const imgPropType = process.env.NODE_ENV !== "production" ? PropTypes.shape({
68
- type: isType(TYPE_IMAGE).isRequired,
69
- url: PropTypes.string.isRequired
70
- }) : {};
71
- const audioPropType = process.env.NODE_ENV !== "production" ? PropTypes.shape({
72
- type: isType(TYPE_AUDIO).isRequired,
73
- mediaUrl: PropTypes.string.isRequired
74
- }) : {};
75
- MediaView.propTypes = process.env.NODE_ENV !== "production" ? {
76
- media: PropTypes.oneOfType([videoPropType, imgPropType, audioPropType])
77
- } : {};
60
+ MediaView.propTypes = process.env.NODE_ENV !== "production" ? MediaViewPropTypes : {};
78
61
 
79
62
  const Answer = props => {
80
63
  const {
@@ -84,6 +67,8 @@ const Answer = props => {
84
67
  } = props;
85
68
 
86
69
  const buildAnswer = () => {
70
+ // (propTypes model.type is properly defined)
71
+ // eslint-disable-next-line react/prop-types
87
72
  const {
88
73
  type
89
74
  } = model;
@@ -123,12 +108,6 @@ const Answer = props => {
123
108
  }) : null, answerView);
124
109
  };
125
110
 
126
- Answer.propTypes = process.env.NODE_ENV !== "production" ? {
127
- model: PropTypes.shape({
128
- type: PropTypes.oneOf(['qcmDrag', 'qcm', 'qcmGraphic', 'freeText', 'dropDown', 'slider', 'template']).isRequired
129
- }),
130
- help: PropTypes.string,
131
- media: MediaView.propTypes.media
132
- } : {};
111
+ Answer.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
133
112
  export default Answer;
134
113
  //# sourceMappingURL=index.js.map