@coorpacademy/components 10.21.4 → 10.22.3

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 (222) hide show
  1. package/README.md +1 -1
  2. package/es/atom/header-back-button/index.native.js +75 -0
  3. package/es/atom/header-back-button/index.native.js.map +1 -0
  4. package/es/atom/header-back-icon/index.native.js +27 -0
  5. package/es/atom/header-back-icon/index.native.js.map +1 -0
  6. package/es/atom/lottie-wrapper/index.js +2 -24
  7. package/es/atom/lottie-wrapper/index.js.map +1 -1
  8. package/es/atom/lottie-wrapper/prop-types.js +26 -0
  9. package/es/atom/lottie-wrapper/prop-types.js.map +1 -0
  10. package/es/atom/review-background/index.js +2 -4
  11. package/es/atom/review-background/index.js.map +1 -1
  12. package/es/atom/review-background/prop-types.js +5 -0
  13. package/es/atom/review-background/prop-types.js.map +1 -0
  14. package/es/atom/review-header-step-item/index.js +2 -6
  15. package/es/atom/review-header-step-item/index.js.map +1 -1
  16. package/es/atom/review-header-step-item/prop-types.js +7 -0
  17. package/es/atom/review-header-step-item/prop-types.js.map +1 -0
  18. package/es/atom/review-presentation/index.js +2 -15
  19. package/es/atom/review-presentation/index.js.map +1 -1
  20. package/es/atom/review-presentation/prop-types.js +18 -0
  21. package/es/atom/review-presentation/prop-types.js.map +1 -0
  22. package/es/atom/spinner/index.js +1 -0
  23. package/es/atom/spinner/index.js.map +1 -1
  24. package/es/atom/tab/index.js +1 -0
  25. package/es/atom/tab/index.js.map +1 -1
  26. package/es/hoc/touchable/index.native.js +69 -0
  27. package/es/hoc/touchable/index.native.js.map +1 -0
  28. package/es/molecule/answer/index.js +5 -26
  29. package/es/molecule/answer/index.js.map +1 -1
  30. package/es/molecule/answer/prop-types.js +32 -0
  31. package/es/molecule/answer/prop-types.js.map +1 -0
  32. package/es/molecule/dashboard/battle-request-list/index.js +3 -5
  33. package/es/molecule/dashboard/battle-request-list/index.js.map +1 -1
  34. package/es/molecule/dashboard/news-list/index.js +3 -5
  35. package/es/molecule/dashboard/news-list/index.js.map +1 -1
  36. package/es/molecule/dashboard/review-banner/index.js +3 -5
  37. package/es/molecule/dashboard/review-banner/index.js.map +1 -1
  38. package/es/molecule/dashboard/start-battle/index.js +3 -5
  39. package/es/molecule/dashboard/start-battle/index.js.map +1 -1
  40. package/es/molecule/external-content-viewer/index.js +2 -1
  41. package/es/molecule/external-content-viewer/index.js.map +1 -1
  42. package/es/molecule/questions/free-text/index.native.js +87 -0
  43. package/es/molecule/questions/free-text/index.native.js.map +1 -0
  44. package/es/molecule/questions/qcm/index.native.js +50 -0
  45. package/es/molecule/questions/qcm/index.native.js.map +1 -0
  46. package/es/molecule/review-card-congrats/index.js +2 -13
  47. package/es/molecule/review-card-congrats/index.js.map +1 -1
  48. package/es/molecule/review-card-congrats/prop-types.js +15 -0
  49. package/es/molecule/review-card-congrats/prop-types.js.map +1 -0
  50. package/es/molecule/review-correction-popin/index.js +2 -20
  51. package/es/molecule/review-correction-popin/index.js.map +1 -1
  52. package/es/molecule/review-correction-popin/prop-types.js +21 -0
  53. package/es/molecule/review-correction-popin/prop-types.js.map +1 -0
  54. package/es/molecule/review-header-steps/index.js +2 -4
  55. package/es/molecule/review-header-steps/index.js.map +1 -1
  56. package/es/molecule/review-header-steps/prop-types.js +6 -0
  57. package/es/molecule/review-header-steps/prop-types.js.map +1 -0
  58. package/es/molecule/skill-card/index.js +2 -12
  59. package/es/molecule/skill-card/index.js.map +1 -1
  60. package/es/molecule/skill-card/prop-types.js +13 -0
  61. package/es/molecule/skill-card/prop-types.js.map +1 -0
  62. package/es/molecule/video-player/index.js +2 -17
  63. package/es/molecule/video-player/index.js.map +1 -1
  64. package/es/molecule/video-player/jwplayer-prop-types.js +38 -0
  65. package/es/molecule/video-player/jwplayer-prop-types.js.map +1 -0
  66. package/es/molecule/video-player/jwplayer.js +2 -37
  67. package/es/molecule/video-player/jwplayer.js.map +1 -1
  68. package/es/molecule/video-player/prop-types.js +53 -0
  69. package/es/molecule/video-player/prop-types.js.map +1 -0
  70. package/es/organism/review-congrats/index.js +2 -19
  71. package/es/organism/review-congrats/index.js.map +1 -1
  72. package/es/organism/review-congrats/prop-types.js +22 -0
  73. package/es/organism/review-congrats/prop-types.js.map +1 -0
  74. package/es/organism/review-header/index.js +2 -10
  75. package/es/organism/review-header/index.js.map +1 -1
  76. package/es/organism/review-header/prop-types.js +12 -0
  77. package/es/organism/review-header/prop-types.js.map +1 -0
  78. package/es/organism/review-skills/index.js +4 -19
  79. package/es/organism/review-skills/index.js.map +1 -1
  80. package/es/organism/review-skills/prop-types.js +19 -0
  81. package/es/organism/review-skills/prop-types.js.map +1 -0
  82. package/es/template/app-player/loading/index.js +1 -0
  83. package/es/template/app-player/loading/index.js.map +1 -1
  84. package/es/template/app-review/demo-ts/index.js +2 -0
  85. package/es/template/app-review/demo-ts/index.js.map +1 -1
  86. package/es/template/app-review/demo-ts/index.native.js +9 -0
  87. package/es/template/app-review/demo-ts/index.native.js.map +1 -0
  88. package/es/template/app-review/demo-ts/typings.js +7 -0
  89. package/es/template/app-review/demo-ts/typings.js.map +1 -0
  90. package/es/template/app-review/index.js +4 -0
  91. package/es/template/app-review/index.js.map +1 -1
  92. package/es/template/app-review/index.native.js +24 -28
  93. package/es/template/app-review/index.native.js.map +1 -1
  94. package/es/template/app-review/onboarding/index.native.js +2 -2
  95. package/es/template/app-review/onboarding/index.native.js.map +1 -1
  96. package/es/template/app-review/skills/index.native.js +2 -2
  97. package/es/template/app-review/skills/index.native.js.map +1 -1
  98. package/es/template/app-review/slides/index.js +4 -5
  99. package/es/template/app-review/slides/index.js.map +1 -1
  100. package/es/template/app-review/slides/index.native.js +65 -25
  101. package/es/template/app-review/slides/index.native.js.map +1 -1
  102. package/es/template/app-review/slides/prop-types.js +15 -15
  103. package/es/template/app-review/slides/prop-types.js.map +1 -1
  104. package/es/template/app-review/template-context.js +36 -0
  105. package/es/template/app-review/template-context.js.map +1 -0
  106. package/es/variables/analytics.js +22 -0
  107. package/es/variables/analytics.js.map +1 -0
  108. package/es/variables/theme.native.js +65 -0
  109. package/es/variables/theme.native.js.map +1 -0
  110. package/es/variables/vibration.js +10 -0
  111. package/es/variables/vibration.js.map +1 -0
  112. package/lib/atom/header-back-button/index.native.js +96 -0
  113. package/lib/atom/header-back-button/index.native.js.map +1 -0
  114. package/lib/atom/header-back-icon/index.native.js +38 -0
  115. package/lib/atom/header-back-icon/index.native.js.map +1 -0
  116. package/lib/atom/lottie-wrapper/index.js +6 -30
  117. package/lib/atom/lottie-wrapper/index.js.map +1 -1
  118. package/lib/atom/lottie-wrapper/prop-types.js +37 -0
  119. package/lib/atom/lottie-wrapper/prop-types.js.map +1 -0
  120. package/lib/atom/review-background/index.js +3 -5
  121. package/lib/atom/review-background/index.js.map +1 -1
  122. package/lib/atom/review-background/prop-types.js +14 -0
  123. package/lib/atom/review-background/prop-types.js.map +1 -0
  124. package/lib/atom/review-header-step-item/index.js +3 -7
  125. package/lib/atom/review-header-step-item/index.js.map +1 -1
  126. package/lib/atom/review-header-step-item/prop-types.js +16 -0
  127. package/lib/atom/review-header-step-item/prop-types.js.map +1 -0
  128. package/lib/atom/review-presentation/index.js +3 -15
  129. package/lib/atom/review-presentation/index.js.map +1 -1
  130. package/lib/atom/review-presentation/prop-types.js +28 -0
  131. package/lib/atom/review-presentation/prop-types.js.map +1 -0
  132. package/lib/atom/spinner/index.js +1 -0
  133. package/lib/atom/spinner/index.js.map +1 -1
  134. package/lib/atom/tab/index.js +1 -0
  135. package/lib/atom/tab/index.js.map +1 -1
  136. package/lib/hoc/touchable/index.native.js +83 -0
  137. package/lib/hoc/touchable/index.native.js.map +1 -0
  138. package/lib/molecule/answer/index.js +14 -35
  139. package/lib/molecule/answer/index.js.map +1 -1
  140. package/lib/molecule/answer/prop-types.js +49 -0
  141. package/lib/molecule/answer/prop-types.js.map +1 -0
  142. package/lib/molecule/dashboard/battle-request-list/index.js +3 -5
  143. package/lib/molecule/dashboard/battle-request-list/index.js.map +1 -1
  144. package/lib/molecule/dashboard/news-list/index.js +3 -5
  145. package/lib/molecule/dashboard/news-list/index.js.map +1 -1
  146. package/lib/molecule/dashboard/review-banner/index.js +3 -5
  147. package/lib/molecule/dashboard/review-banner/index.js.map +1 -1
  148. package/lib/molecule/dashboard/start-battle/index.js +3 -5
  149. package/lib/molecule/dashboard/start-battle/index.js.map +1 -1
  150. package/lib/molecule/external-content-viewer/index.js +2 -1
  151. package/lib/molecule/external-content-viewer/index.js.map +1 -1
  152. package/lib/molecule/questions/free-text/index.native.js +100 -0
  153. package/lib/molecule/questions/free-text/index.native.js.map +1 -0
  154. package/lib/molecule/questions/qcm/index.native.js +62 -0
  155. package/lib/molecule/questions/qcm/index.native.js.map +1 -0
  156. package/lib/molecule/review-card-congrats/index.js +3 -14
  157. package/lib/molecule/review-card-congrats/index.js.map +1 -1
  158. package/lib/molecule/review-card-congrats/prop-types.js +25 -0
  159. package/lib/molecule/review-card-congrats/prop-types.js.map +1 -0
  160. package/lib/molecule/review-correction-popin/index.js +3 -21
  161. package/lib/molecule/review-correction-popin/index.js.map +1 -1
  162. package/lib/molecule/review-correction-popin/prop-types.js +30 -0
  163. package/lib/molecule/review-correction-popin/prop-types.js.map +1 -0
  164. package/lib/molecule/review-header-steps/index.js +3 -5
  165. package/lib/molecule/review-header-steps/index.js.map +1 -1
  166. package/lib/molecule/review-header-steps/prop-types.js +16 -0
  167. package/lib/molecule/review-header-steps/prop-types.js.map +1 -0
  168. package/lib/molecule/skill-card/index.js +3 -13
  169. package/lib/molecule/skill-card/index.js.map +1 -1
  170. package/lib/molecule/skill-card/prop-types.js +22 -0
  171. package/lib/molecule/skill-card/prop-types.js.map +1 -0
  172. package/lib/molecule/video-player/index.js +3 -19
  173. package/lib/molecule/video-player/index.js.map +1 -1
  174. package/lib/molecule/video-player/jwplayer-prop-types.js +48 -0
  175. package/lib/molecule/video-player/jwplayer-prop-types.js.map +1 -0
  176. package/lib/molecule/video-player/jwplayer.js +3 -39
  177. package/lib/molecule/video-player/jwplayer.js.map +1 -1
  178. package/lib/molecule/video-player/prop-types.js +64 -0
  179. package/lib/molecule/video-player/prop-types.js.map +1 -0
  180. package/lib/organism/review-congrats/index.js +3 -20
  181. package/lib/organism/review-congrats/index.js.map +1 -1
  182. package/lib/organism/review-congrats/prop-types.js +33 -0
  183. package/lib/organism/review-congrats/prop-types.js.map +1 -0
  184. package/lib/organism/review-header/index.js +3 -11
  185. package/lib/organism/review-header/index.js.map +1 -1
  186. package/lib/organism/review-header/prop-types.js +22 -0
  187. package/lib/organism/review-header/prop-types.js.map +1 -0
  188. package/lib/organism/review-skills/index.js +10 -23
  189. package/lib/organism/review-skills/index.js.map +1 -1
  190. package/lib/organism/review-skills/prop-types.js +33 -0
  191. package/lib/organism/review-skills/prop-types.js.map +1 -0
  192. package/lib/template/app-player/loading/index.js +1 -0
  193. package/lib/template/app-player/loading/index.js.map +1 -1
  194. package/lib/template/app-review/demo-ts/index.js +3 -0
  195. package/lib/template/app-review/demo-ts/index.js.map +1 -1
  196. package/lib/template/app-review/demo-ts/index.native.js +18 -0
  197. package/lib/template/app-review/demo-ts/index.native.js.map +1 -0
  198. package/lib/template/app-review/demo-ts/typings.js +16 -0
  199. package/lib/template/app-review/demo-ts/typings.js.map +1 -0
  200. package/lib/template/app-review/index.js +5 -0
  201. package/lib/template/app-review/index.js.map +1 -1
  202. package/lib/template/app-review/index.native.js +25 -26
  203. package/lib/template/app-review/index.native.js.map +1 -1
  204. package/lib/template/app-review/onboarding/index.native.js +2 -2
  205. package/lib/template/app-review/onboarding/index.native.js.map +1 -1
  206. package/lib/template/app-review/skills/index.native.js +4 -4
  207. package/lib/template/app-review/skills/index.native.js.map +1 -1
  208. package/lib/template/app-review/slides/index.js +4 -5
  209. package/lib/template/app-review/slides/index.js.map +1 -1
  210. package/lib/template/app-review/slides/index.native.js +76 -38
  211. package/lib/template/app-review/slides/index.native.js.map +1 -1
  212. package/lib/template/app-review/slides/prop-types.js +16 -16
  213. package/lib/template/app-review/slides/prop-types.js.map +1 -1
  214. package/lib/template/app-review/template-context.js +50 -0
  215. package/lib/template/app-review/template-context.js.map +1 -0
  216. package/lib/variables/analytics.js +27 -0
  217. package/lib/variables/analytics.js.map +1 -0
  218. package/lib/variables/theme.native.js +70 -0
  219. package/lib/variables/theme.native.js.map +1 -0
  220. package/lib/variables/vibration.js +15 -0
  221. package/lib/variables/vibration.js.map +1 -0
  222. package/package.json +6 -2
@@ -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
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/answer/index.js"],"names":["React","PropTypes","VideoPlayer","DropDown","FreeText","QcmDrag","Qcm","QcmGraphic","QuestionRange","Template","Audio","style","TYPE_IMAGE","TYPE_VIDEO","TYPE_AUDIO","MediaView","media","videoId","type","childProps","backgroundImage","url","video","audio","isType","name","oneOf","videoPropType","shape","propTypes","isRequired","imgPropType","string","audioPropType","mediaUrl","oneOfType","Answer","props","model","help","buildAnswer","answerView","wrapper"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {omit} from 'lodash/fp';\nimport VideoPlayer from '../video-player';\nimport DropDown from '../questions/drop-down';\nimport FreeText from '../questions/free-text';\nimport QcmDrag from '../questions/qcm-drag';\nimport Qcm from '../questions/qcm';\nimport QcmGraphic from '../questions/qcm-graphic';\nimport QuestionRange from '../questions/question-range';\nimport Template from '../questions/template';\nimport Audio from '../audio';\nimport style from './style.css';\n\nexport const TYPE_IMAGE = 'img';\nexport const TYPE_VIDEO = 'video';\nexport const TYPE_AUDIO = 'audio';\n\nconst MediaView = ({media}) => {\n const {videoId, type, ...childProps} = media;\n switch (type) {\n case TYPE_IMAGE:\n return (\n <div\n className={style.media}\n style={{\n backgroundImage: `url(${media.url})`\n }}\n />\n );\n case TYPE_VIDEO:\n return (\n <div className={style.video}>\n <VideoPlayer {...omit('id', childProps)} id={videoId} height=\"100%\" width=\"100%\" />\n </div>\n );\n case TYPE_AUDIO:\n return (\n <div className={style.audio}>\n <Audio {...omit('id', childProps)} height=\"100%\" width=\"100%\" />\n </div>\n );\n default:\n return null;\n }\n};\n\nconst isType = name => PropTypes.oneOf([name]);\n\nconst videoPropType = PropTypes.shape({\n ...VideoPlayer.propTypes,\n type: isType(TYPE_VIDEO).isRequired\n});\n\nconst imgPropType = PropTypes.shape({\n type: isType(TYPE_IMAGE).isRequired,\n url: PropTypes.string.isRequired\n});\n\nconst audioPropType = PropTypes.shape({\n type: isType(TYPE_AUDIO).isRequired,\n mediaUrl: PropTypes.string.isRequired\n});\n\nMediaView.propTypes = {\n media: PropTypes.oneOfType([videoPropType, imgPropType, audioPropType])\n};\n\nconst Answer = props => {\n const {model, media, help} = props;\n const buildAnswer = () => {\n const {type} = model;\n\n switch (type) {\n case 'qcmDrag':\n return <QcmDrag {...model} help={help} />;\n case 'qcm':\n return <Qcm {...model} />;\n case 'qcmGraphic':\n return <QcmGraphic {...model} />;\n case 'freeText':\n return <FreeText {...model} />;\n case 'dropDown':\n return <DropDown {...model} />;\n case 'slider':\n return <QuestionRange {...model} />;\n case 'template':\n return <Template {...model} />;\n }\n };\n const answerView = buildAnswer(model);\n\n return (\n <div data-name=\"answer\" className={style.wrapper}>\n {media ? <MediaView media={media} /> : null}\n {answerView}\n </div>\n );\n};\n\nAnswer.propTypes = {\n model: PropTypes.shape({\n type: PropTypes.oneOf([\n 'qcmDrag',\n 'qcm',\n 'qcmGraphic',\n 'freeText',\n 'dropDown',\n 'slider',\n 'template'\n ]).isRequired\n }),\n help: PropTypes.string,\n media: MediaView.propTypes.media\n};\n\nexport default Answer;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/answer/index.js"],"names":["React","VideoPlayer","DropDown","FreeText","QcmDrag","Qcm","QcmGraphic","QuestionRange","Template","Audio","style","propTypes","MediaViewPropTypes","TYPE_AUDIO","TYPE_IMAGE","TYPE_VIDEO","MediaView","media","videoId","type","childProps","backgroundImage","url","video","audio","Answer","props","model","help","buildAnswer","answerView","wrapper"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {omit} from 'lodash/fp';\nimport VideoPlayer from '../video-player';\nimport DropDown from '../questions/drop-down';\nimport FreeText from '../questions/free-text';\nimport QcmDrag from '../questions/qcm-drag';\nimport Qcm from '../questions/qcm';\nimport QcmGraphic from '../questions/qcm-graphic';\nimport QuestionRange from '../questions/question-range';\nimport Template from '../questions/template';\nimport Audio from '../audio';\nimport style from './style.css';\nimport propTypes, {MediaViewPropTypes, TYPE_AUDIO, TYPE_IMAGE, TYPE_VIDEO} from './prop-types';\n\nconst MediaView = ({media}) => {\n const {videoId, type, ...childProps} = media;\n switch (type) {\n case TYPE_IMAGE:\n return (\n <div\n className={style.media}\n style={{\n backgroundImage: `url(${media.url})`\n }}\n />\n );\n case TYPE_VIDEO:\n return (\n <div className={style.video}>\n <VideoPlayer {...omit('id', childProps)} id={videoId} height=\"100%\" width=\"100%\" />\n </div>\n );\n case TYPE_AUDIO:\n return (\n <div className={style.audio}>\n <Audio {...omit('id', childProps)} height=\"100%\" width=\"100%\" />\n </div>\n );\n default:\n return null;\n }\n};\n\nMediaView.propTypes = MediaViewPropTypes;\n\nconst Answer = props => {\n const {model, media, help} = props;\n const buildAnswer = () => {\n // (propTypes model.type is properly defined)\n // eslint-disable-next-line react/prop-types\n const {type} = model;\n\n switch (type) {\n case 'qcmDrag':\n return <QcmDrag {...model} help={help} />;\n case 'qcm':\n return <Qcm {...model} />;\n case 'qcmGraphic':\n return <QcmGraphic {...model} />;\n case 'freeText':\n return <FreeText {...model} />;\n case 'dropDown':\n return <DropDown {...model} />;\n case 'slider':\n return <QuestionRange {...model} />;\n case 'template':\n return <Template {...model} />;\n }\n };\n const answerView = buildAnswer(model);\n\n return (\n <div data-name=\"answer\" className={style.wrapper}>\n {media ? <MediaView media={media} /> : null}\n {answerView}\n </div>\n );\n};\n\nAnswer.propTypes = propTypes;\n\nexport default Answer;\n"],"file":"index.js"}
@@ -0,0 +1,32 @@
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
+
3
+ import PropTypes from 'prop-types';
4
+ import VideoPlayerPropTypes from '../video-player/prop-types';
5
+ export const TYPE_IMAGE = 'img';
6
+ export const TYPE_VIDEO = 'video';
7
+ export const TYPE_AUDIO = 'audio';
8
+
9
+ const isType = name => PropTypes.oneOf([name]);
10
+
11
+ const videoPropType = PropTypes.shape(_extends(_extends({}, VideoPlayerPropTypes), {}, {
12
+ type: isType(TYPE_VIDEO).isRequired
13
+ }));
14
+ const imgPropType = PropTypes.shape({
15
+ type: isType(TYPE_IMAGE).isRequired,
16
+ url: PropTypes.string.isRequired
17
+ });
18
+ const audioPropType = PropTypes.shape({
19
+ type: isType(TYPE_AUDIO).isRequired,
20
+ mediaUrl: PropTypes.string.isRequired
21
+ });
22
+ export const MediaViewPropTypes = {
23
+ media: PropTypes.oneOfType([videoPropType, imgPropType, audioPropType])
24
+ };
25
+ export default {
26
+ model: PropTypes.shape({
27
+ type: PropTypes.oneOf(['qcmDrag', 'qcm', 'qcmGraphic', 'freeText', 'dropDown', 'slider', 'template']).isRequired
28
+ }),
29
+ help: PropTypes.string,
30
+ media: MediaViewPropTypes.media
31
+ };
32
+ //# sourceMappingURL=prop-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/molecule/answer/prop-types.js"],"names":["PropTypes","VideoPlayerPropTypes","TYPE_IMAGE","TYPE_VIDEO","TYPE_AUDIO","isType","name","oneOf","videoPropType","shape","type","isRequired","imgPropType","url","string","audioPropType","mediaUrl","MediaViewPropTypes","media","oneOfType","model","help"],"mappings":";;AAAA,OAAOA,SAAP,MAAsB,YAAtB;AACA,OAAOC,oBAAP,MAAiC,4BAAjC;AAEA,OAAO,MAAMC,UAAU,GAAG,KAAnB;AACP,OAAO,MAAMC,UAAU,GAAG,OAAnB;AACP,OAAO,MAAMC,UAAU,GAAG,OAAnB;;AAEP,MAAMC,MAAM,GAAGC,IAAI,IAAIN,SAAS,CAACO,KAAV,CAAgB,CAACD,IAAD,CAAhB,CAAvB;;AAEA,MAAME,aAAa,GAAGR,SAAS,CAACS,KAAV,uBACjBR,oBADiB;AAEpBS,EAAAA,IAAI,EAAEL,MAAM,CAACF,UAAD,CAAN,CAAmBQ;AAFL,GAAtB;AAKA,MAAMC,WAAW,GAAGZ,SAAS,CAACS,KAAV,CAAgB;AAClCC,EAAAA,IAAI,EAAEL,MAAM,CAACH,UAAD,CAAN,CAAmBS,UADS;AAElCE,EAAAA,GAAG,EAAEb,SAAS,CAACc,MAAV,CAAiBH;AAFY,CAAhB,CAApB;AAKA,MAAMI,aAAa,GAAGf,SAAS,CAACS,KAAV,CAAgB;AACpCC,EAAAA,IAAI,EAAEL,MAAM,CAACD,UAAD,CAAN,CAAmBO,UADW;AAEpCK,EAAAA,QAAQ,EAAEhB,SAAS,CAACc,MAAV,CAAiBH;AAFS,CAAhB,CAAtB;AAKA,OAAO,MAAMM,kBAAkB,GAAG;AAChCC,EAAAA,KAAK,EAAElB,SAAS,CAACmB,SAAV,CAAoB,CAACX,aAAD,EAAgBI,WAAhB,EAA6BG,aAA7B,CAApB;AADyB,CAA3B;AAIP,eAAe;AACbK,EAAAA,KAAK,EAAEpB,SAAS,CAACS,KAAV,CAAgB;AACrBC,IAAAA,IAAI,EAAEV,SAAS,CAACO,KAAV,CAAgB,CACpB,SADoB,EAEpB,KAFoB,EAGpB,YAHoB,EAIpB,UAJoB,EAKpB,UALoB,EAMpB,QANoB,EAOpB,UAPoB,CAAhB,EAQHI;AATkB,GAAhB,CADM;AAYbU,EAAAA,IAAI,EAAErB,SAAS,CAACc,MAZH;AAabI,EAAAA,KAAK,EAAED,kBAAkB,CAACC;AAbb,CAAf","sourcesContent":["import PropTypes from 'prop-types';\nimport VideoPlayerPropTypes from '../video-player/prop-types';\n\nexport const TYPE_IMAGE = 'img';\nexport const TYPE_VIDEO = 'video';\nexport const TYPE_AUDIO = 'audio';\n\nconst isType = name => PropTypes.oneOf([name]);\n\nconst videoPropType = PropTypes.shape({\n ...VideoPlayerPropTypes,\n type: isType(TYPE_VIDEO).isRequired\n});\n\nconst imgPropType = PropTypes.shape({\n type: isType(TYPE_IMAGE).isRequired,\n url: PropTypes.string.isRequired\n});\n\nconst audioPropType = PropTypes.shape({\n type: isType(TYPE_AUDIO).isRequired,\n mediaUrl: PropTypes.string.isRequired\n});\n\nexport const MediaViewPropTypes = {\n media: PropTypes.oneOfType([videoPropType, imgPropType, audioPropType])\n};\n\nexport default {\n model: PropTypes.shape({\n type: PropTypes.oneOf([\n 'qcmDrag',\n 'qcm',\n 'qcmGraphic',\n 'freeText',\n 'dropDown',\n 'slider',\n 'template'\n ]).isRequired\n }),\n help: PropTypes.string,\n media: MediaViewPropTypes.media\n};\n"],"file":"prop-types.js"}
@@ -2,8 +2,7 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import BattleRequest from '../../battle-request';
4
4
  import style from './style.css';
5
-
6
- const BattleRequestList = (props, context) => {
5
+ const BattleRequestList = React.memo(function BattleRequestList(props) {
7
6
  const {
8
7
  requests
9
8
  } = props;
@@ -17,10 +16,9 @@ const BattleRequestList = (props, context) => {
17
16
  className: style.list,
18
17
  "data-name": "battle-request-list"
19
18
  }, cards);
20
- };
21
-
19
+ });
22
20
  BattleRequestList.propTypes = process.env.NODE_ENV !== "production" ? {
23
21
  requests: PropTypes.arrayOf(PropTypes.shape(BattleRequest.propTypes))
24
22
  } : {};
25
- export default React.memo(BattleRequestList);
23
+ export default BattleRequestList;
26
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/dashboard/battle-request-list/index.js"],"names":["React","PropTypes","BattleRequest","style","BattleRequestList","props","context","requests","cards","map","request","key","card","list","propTypes","arrayOf","shape","memo"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,aAAP,MAA0B,sBAA1B;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,iBAAiB,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AAC5C,QAAM;AAACC,IAAAA;AAAD,MAAaF,KAAnB;AAEA,QAAMG,KAAK,GAAGD,QAAQ,CAACE,GAAT,CAAa,CAACC,OAAD,EAAUC,GAAV,KAAkB;AAC3C,wBACE;AAAK,MAAA,SAAS,EAAER,KAAK,CAACS,IAAtB;AAA4B,MAAA,GAAG,EAAED;AAAjC,oBACE,oBAAC,aAAD,EAAmBD,OAAnB,CADF,CADF;AAKD,GANa,CAAd;AAQA,sBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACU,IAAtB;AAA4B,iBAAU;AAAtC,KACGL,KADH,CADF;AAKD,CAhBD;;AAkBAJ,iBAAiB,CAACU,SAAlB,2CAA8B;AAC5BP,EAAAA,QAAQ,EAAEN,SAAS,CAACc,OAAV,CAAkBd,SAAS,CAACe,KAAV,CAAgBd,aAAa,CAACY,SAA9B,CAAlB;AADkB,CAA9B;AAIA,eAAed,KAAK,CAACiB,IAAN,CAAWb,iBAAX,CAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport BattleRequest from '../../battle-request';\nimport style from './style.css';\n\nconst BattleRequestList = (props, context) => {\n const {requests} = props;\n\n const cards = requests.map((request, key) => {\n return (\n <div className={style.card} key={key}>\n <BattleRequest {...request} />\n </div>\n );\n });\n\n return (\n <div className={style.list} data-name=\"battle-request-list\">\n {cards}\n </div>\n );\n};\n\nBattleRequestList.propTypes = {\n requests: PropTypes.arrayOf(PropTypes.shape(BattleRequest.propTypes))\n};\n\nexport default React.memo(BattleRequestList);\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/dashboard/battle-request-list/index.js"],"names":["React","PropTypes","BattleRequest","style","BattleRequestList","memo","props","requests","cards","map","request","key","card","list","propTypes","arrayOf","shape"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,aAAP,MAA0B,sBAA1B;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,iBAAiB,GAAGJ,KAAK,CAACK,IAAN,CAAW,SAASD,iBAAT,CAA2BE,KAA3B,EAAkC;AACrE,QAAM;AAACC,IAAAA;AAAD,MAAaD,KAAnB;AAEA,QAAME,KAAK,GAAGD,QAAQ,CAACE,GAAT,CAAa,CAACC,OAAD,EAAUC,GAAV,KAAkB;AAC3C,wBACE;AAAK,MAAA,SAAS,EAAER,KAAK,CAACS,IAAtB;AAA4B,MAAA,GAAG,EAAED;AAAjC,oBACE,oBAAC,aAAD,EAAmBD,OAAnB,CADF,CADF;AAKD,GANa,CAAd;AAQA,sBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACU,IAAtB;AAA4B,iBAAU;AAAtC,KACGL,KADH,CADF;AAKD,CAhByB,CAA1B;AAkBAJ,iBAAiB,CAACU,SAAlB,2CAA8B;AAC5BP,EAAAA,QAAQ,EAAEN,SAAS,CAACc,OAAV,CAAkBd,SAAS,CAACe,KAAV,CAAgBd,aAAa,CAACY,SAA9B,CAAlB;AADkB,CAA9B;AAIA,eAAeV,iBAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport BattleRequest from '../../battle-request';\nimport style from './style.css';\n\nconst BattleRequestList = React.memo(function BattleRequestList(props) {\n const {requests} = props;\n\n const cards = requests.map((request, key) => {\n return (\n <div className={style.card} key={key}>\n <BattleRequest {...request} />\n </div>\n );\n });\n\n return (\n <div className={style.list} data-name=\"battle-request-list\">\n {cards}\n </div>\n );\n});\n\nBattleRequestList.propTypes = {\n requests: PropTypes.arrayOf(PropTypes.shape(BattleRequest.propTypes))\n};\n\nexport default BattleRequestList;\n"],"file":"index.js"}
@@ -3,8 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import News from '../../news';
4
4
  import Loader from '../../../atom/loader';
5
5
  import style from './style.css';
6
-
7
- const NewsList = (props, context) => {
6
+ const NewsList = React.memo(function NewsList(props) {
8
7
  const {
9
8
  title,
10
9
  news,
@@ -35,8 +34,7 @@ const NewsList = (props, context) => {
35
34
  }, /*#__PURE__*/React.createElement("div", {
36
35
  className: style.title
37
36
  }, title), cardsView, loading ? loadingView : moreView));
38
- };
39
-
37
+ });
40
38
  NewsList.propTypes = process.env.NODE_ENV !== "production" ? {
41
39
  title: PropTypes.string,
42
40
  news: PropTypes.arrayOf(PropTypes.shape(News.propTypes)),
@@ -46,5 +44,5 @@ NewsList.propTypes = process.env.NODE_ENV !== "production" ? {
46
44
  }),
47
45
  loading: PropTypes.bool
48
46
  } : {};
49
- export default React.memo(NewsList);
47
+ export default NewsList;
50
48
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/dashboard/news-list/index.js"],"names":["React","PropTypes","News","Loader","style","NewsList","props","context","title","news","more","loading","loadingView","loader","moreView","onClick","label","cardsView","map","nws","key","card","wrapper","list","propTypes","string","arrayOf","shape","func","bool","memo"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,YAAjB;AACA,OAAOC,MAAP,MAAmB,sBAAnB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,QAAQ,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AACnC,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,IAAR;AAAcC,IAAAA,IAAd;AAAoBC,IAAAA,OAAO,GAAG;AAA9B,MAAuCL,KAA7C;AAEA,QAAMM,WAAW,gBACf;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS;AAAtB,kBACE,oBAAC,MAAD,OADF,CADF;AAMA,QAAMC,QAAQ,GAAGJ,IAAI;AAAA;AACnB;AACA;AAAK,IAAA,SAAS,EAAEN,KAAK,CAACM,IAAtB;AAA4B,IAAA,OAAO,EAAEA,IAAI,CAACK;AAA1C,KACGL,IAAI,CAACM,KADR,CAFmB,GAKjB,IALJ;AAOA,QAAMC,SAAS,GAAGR,IAAI,CAACS,GAAL,CAAS,CAACC,GAAD,EAAMC,GAAN,KAAc;AACvC,wBACE;AAAK,MAAA,SAAS,EAAEhB,KAAK,CAACiB,IAAtB;AAA4B,MAAA,GAAG,EAAED;AAAjC,oBACE,oBAAC,IAAD,EAAUD,GAAV,CADF,CADF;AAKD,GANiB,CAAlB;AAQA,sBACE;AAAK,IAAA,SAAS,EAAEf,KAAK,CAACkB,OAAtB;AAA+B,iBAAU;AAAzC,kBACE;AAAK,IAAA,SAAS,EAAElB,KAAK,CAACmB;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEnB,KAAK,CAACI;AAAtB,KAA8BA,KAA9B,CADF,EAEGS,SAFH,EAGGN,OAAO,GAAGC,WAAH,GAAiBE,QAH3B,CADF,CADF;AASD,CAjCD;;AAmCAT,QAAQ,CAACmB,SAAT,2CAAqB;AACnBhB,EAAAA,KAAK,EAAEP,SAAS,CAACwB,MADE;AAEnBhB,EAAAA,IAAI,EAAER,SAAS,CAACyB,OAAV,CAAkBzB,SAAS,CAAC0B,KAAV,CAAgBzB,IAAI,CAACsB,SAArB,CAAlB,CAFa;AAGnBd,EAAAA,IAAI,EAAET,SAAS,CAAC0B,KAAV,CAAgB;AACpBX,IAAAA,KAAK,EAAEf,SAAS,CAACwB,MADG;AAEpBV,IAAAA,OAAO,EAAEd,SAAS,CAAC2B;AAFC,GAAhB,CAHa;AAOnBjB,EAAAA,OAAO,EAAEV,SAAS,CAAC4B;AAPA,CAArB;AAUA,eAAe7B,KAAK,CAAC8B,IAAN,CAAWzB,QAAX,CAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport News from '../../news';\nimport Loader from '../../../atom/loader';\nimport style from './style.css';\n\nconst NewsList = (props, context) => {\n const {title, news, more, loading = false} = props;\n\n const loadingView = (\n <div className={style.loader}>\n <Loader />\n </div>\n );\n\n const moreView = more ? (\n // eslint-disable-next-line react/jsx-handler-names\n <div className={style.more} onClick={more.onClick}>\n {more.label}\n </div>\n ) : null;\n\n const cardsView = news.map((nws, key) => {\n return (\n <div className={style.card} key={key}>\n <News {...nws} />\n </div>\n );\n });\n\n return (\n <div className={style.wrapper} data-name=\"news-list\">\n <div className={style.list}>\n <div className={style.title}>{title}</div>\n {cardsView}\n {loading ? loadingView : moreView}\n </div>\n </div>\n );\n};\n\nNewsList.propTypes = {\n title: PropTypes.string,\n news: PropTypes.arrayOf(PropTypes.shape(News.propTypes)),\n more: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func\n }),\n loading: PropTypes.bool\n};\n\nexport default React.memo(NewsList);\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/dashboard/news-list/index.js"],"names":["React","PropTypes","News","Loader","style","NewsList","memo","props","title","news","more","loading","loadingView","loader","moreView","onClick","label","cardsView","map","nws","key","card","wrapper","list","propTypes","string","arrayOf","shape","func","bool"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,YAAjB;AACA,OAAOC,MAAP,MAAmB,sBAAnB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,QAAQ,GAAGL,KAAK,CAACM,IAAN,CAAW,SAASD,QAAT,CAAkBE,KAAlB,EAAyB;AACnD,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,IAAR;AAAcC,IAAAA,IAAd;AAAoBC,IAAAA,OAAO,GAAG;AAA9B,MAAuCJ,KAA7C;AAEA,QAAMK,WAAW,gBACf;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS;AAAtB,kBACE,oBAAC,MAAD,OADF,CADF;AAMA,QAAMC,QAAQ,GAAGJ,IAAI;AAAA;AACnB;AACA;AAAK,IAAA,SAAS,EAAEN,KAAK,CAACM,IAAtB;AAA4B,IAAA,OAAO,EAAEA,IAAI,CAACK;AAA1C,KACGL,IAAI,CAACM,KADR,CAFmB,GAKjB,IALJ;AAOA,QAAMC,SAAS,GAAGR,IAAI,CAACS,GAAL,CAAS,CAACC,GAAD,EAAMC,GAAN,KAAc;AACvC,wBACE;AAAK,MAAA,SAAS,EAAEhB,KAAK,CAACiB,IAAtB;AAA4B,MAAA,GAAG,EAAED;AAAjC,oBACE,oBAAC,IAAD,EAAUD,GAAV,CADF,CADF;AAKD,GANiB,CAAlB;AAQA,sBACE;AAAK,IAAA,SAAS,EAAEf,KAAK,CAACkB,OAAtB;AAA+B,iBAAU;AAAzC,kBACE;AAAK,IAAA,SAAS,EAAElB,KAAK,CAACmB;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEnB,KAAK,CAACI;AAAtB,KAA8BA,KAA9B,CADF,EAEGS,SAFH,EAGGN,OAAO,GAAGC,WAAH,GAAiBE,QAH3B,CADF,CADF;AASD,CAjCgB,CAAjB;AAmCAT,QAAQ,CAACmB,SAAT,2CAAqB;AACnBhB,EAAAA,KAAK,EAAEP,SAAS,CAACwB,MADE;AAEnBhB,EAAAA,IAAI,EAAER,SAAS,CAACyB,OAAV,CAAkBzB,SAAS,CAAC0B,KAAV,CAAgBzB,IAAI,CAACsB,SAArB,CAAlB,CAFa;AAGnBd,EAAAA,IAAI,EAAET,SAAS,CAAC0B,KAAV,CAAgB;AACpBX,IAAAA,KAAK,EAAEf,SAAS,CAACwB,MADG;AAEpBV,IAAAA,OAAO,EAAEd,SAAS,CAAC2B;AAFC,GAAhB,CAHa;AAOnBjB,EAAAA,OAAO,EAAEV,SAAS,CAAC4B;AAPA,CAArB;AAUA,eAAexB,QAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport News from '../../news';\nimport Loader from '../../../atom/loader';\nimport style from './style.css';\n\nconst NewsList = React.memo(function NewsList(props) {\n const {title, news, more, loading = false} = props;\n\n const loadingView = (\n <div className={style.loader}>\n <Loader />\n </div>\n );\n\n const moreView = more ? (\n // eslint-disable-next-line react/jsx-handler-names\n <div className={style.more} onClick={more.onClick}>\n {more.label}\n </div>\n ) : null;\n\n const cardsView = news.map((nws, key) => {\n return (\n <div className={style.card} key={key}>\n <News {...nws} />\n </div>\n );\n });\n\n return (\n <div className={style.wrapper} data-name=\"news-list\">\n <div className={style.list}>\n <div className={style.title}>{title}</div>\n {cardsView}\n {loading ? loadingView : moreView}\n </div>\n </div>\n );\n});\n\nNewsList.propTypes = {\n title: PropTypes.string,\n news: PropTypes.arrayOf(PropTypes.shape(News.propTypes)),\n more: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func\n }),\n loading: PropTypes.bool\n};\n\nexport default NewsList;\n"],"file":"index.js"}
@@ -4,8 +4,7 @@ import React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import ButtonLink from '../../../atom/button-link';
6
6
  import style from './style.css';
7
-
8
- const ReviewBanner = props => {
7
+ const ReviewBanner = React.memo(function ReviewBanner(props) {
9
8
  const {
10
9
  title,
11
10
  subtitle,
@@ -52,8 +51,7 @@ const ReviewBanner = props => {
52
51
  src: "https://static.coorpacademy.com/site/dumbell.png",
53
52
  alt: "Dumbbell image"
54
53
  })))));
55
- };
56
-
54
+ });
57
55
  ReviewBanner.propTypes = process.env.NODE_ENV !== "production" ? {
58
56
  title: PropTypes.string,
59
57
  subtitle: PropTypes.string,
@@ -62,5 +60,5 @@ ReviewBanner.propTypes = process.env.NODE_ENV !== "production" ? {
62
60
  label: PropTypes.string
63
61
  })
64
62
  } : {};
65
- export default React.memo(ReviewBanner);
63
+ export default ReviewBanner;
66
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/dashboard/review-banner/index.js"],"names":["React","PropTypes","ButtonLink","style","ReviewBanner","props","title","subtitle","cta","buttonProps","type","root","container","banner","left","image","middle","right","propTypes","string","shape","onClick","func","label","memo"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,2BAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,YAAY,GAAGC,KAAK,IAAI;AAC5B,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,MAAyBH,KAA/B;;AAEA,QAAMI,WAAW,yBACZD,GADY;AAEfE,IAAAA,IAAI,EAAE;AAFS,IAAjB;;AAKA,sBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACQ,IAAtB;AAA4B,iBAAU;AAAtC,kBACE;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACU;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW,IAAtB;AAA4B,IAAA,IAAI,EAAC,KAAjC;AAAuC,kBAAW;AAAlD,kBACE;AACE,IAAA,SAAS,EAAEX,KAAK,CAACY,KADnB;AAEE,IAAA,GAAG,EAAC,+CAFN;AAGE,IAAA,GAAG,EAAC;AAHN,IADF,CADF,eAQE;AAAK,IAAA,SAAS,EAAEZ,KAAK,CAACa;AAAtB,kBACE;AAAM,IAAA,SAAS,EAAEb,KAAK,CAACG,KAAvB;AAA8B,iBAAU,qBAAxC;AAA8D,kBAAW;AAAzE,KACGA,KADH,CADF,eAIE;AACE,IAAA,SAAS,EAAEH,KAAK,CAACI,QADnB;AAEE,iBAAU,wBAFZ;AAGE,kBAAW;AAHb,KAKGA,QALH,CAJF,eAWE,oBAAC,UAAD,eAAgBE,WAAhB;AAA6B,IAAA,SAAS,EAAEN,KAAK,CAACK;AAA9C,KAXF,CARF,eAqBE;AAAK,IAAA,SAAS,EAAEL,KAAK,CAACc,KAAtB;AAA6B,IAAA,IAAI,EAAC,KAAlC;AAAwC,kBAAW;AAAnD,kBACE;AACE,IAAA,SAAS,EAAEd,KAAK,CAACY,KADnB;AAEE,IAAA,GAAG,EAAC,kDAFN;AAGE,IAAA,GAAG,EAAC;AAHN,IADF,CArBF,CADF,CADF,CADF;AAmCD,CA3CD;;AA6CAX,YAAY,CAACc,SAAb,2CAAyB;AACvBZ,EAAAA,KAAK,EAAEL,SAAS,CAACkB,MADM;AAEvBZ,EAAAA,QAAQ,EAAEN,SAAS,CAACkB,MAFG;AAGvBX,EAAAA,GAAG,EAAEP,SAAS,CAACmB,KAAV,CAAgB;AACnBC,IAAAA,OAAO,EAAEpB,SAAS,CAACqB,IADA;AAEnBC,IAAAA,KAAK,EAAEtB,SAAS,CAACkB;AAFE,GAAhB;AAHkB,CAAzB;AASA,eAAenB,KAAK,CAACwB,IAAN,CAAWpB,YAAX,CAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonLink from '../../../atom/button-link';\nimport style from './style.css';\n\nconst ReviewBanner = props => {\n const {title, subtitle, cta} = props;\n\n const buttonProps = {\n ...cta,\n type: 'primary'\n };\n\n return (\n <div className={style.root} data-name=\"start-review-banner\">\n <div className={style.container}>\n <div className={style.banner}>\n <div className={style.left} role=\"img\" aria-label=\"Left image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/book.png\"\n alt=\"Book image\"\n />\n </div>\n <div className={style.middle}>\n <span className={style.title} data-name=\"review-banner-title\" aria-label=\"{title}\">\n {title}\n </span>\n <span\n className={style.subtitle}\n data-name=\"review-banner-subtitle\"\n aria-label=\"{subtitle}\"\n >\n {subtitle}\n </span>\n <ButtonLink {...buttonProps} className={style.cta} />\n </div>\n <div className={style.right} role=\"img\" aria-label=\"Rigth image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/dumbell.png\"\n alt=\"Dumbbell image\"\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nReviewBanner.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n cta: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string\n })\n};\n\nexport default React.memo(ReviewBanner);\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/dashboard/review-banner/index.js"],"names":["React","PropTypes","ButtonLink","style","ReviewBanner","memo","props","title","subtitle","cta","buttonProps","type","root","container","banner","left","image","middle","right","propTypes","string","shape","onClick","func","label"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,2BAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,YAAY,GAAGJ,KAAK,CAACK,IAAN,CAAW,SAASD,YAAT,CAAsBE,KAAtB,EAA6B;AAC3D,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,MAAyBH,KAA/B;;AAEA,QAAMI,WAAW,yBACZD,GADY;AAEfE,IAAAA,IAAI,EAAE;AAFS,IAAjB;;AAKA,sBACE;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS,IAAtB;AAA4B,iBAAU;AAAtC,kBACE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACU;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACY,IAAtB;AAA4B,IAAA,IAAI,EAAC,KAAjC;AAAuC,kBAAW;AAAlD,kBACE;AACE,IAAA,SAAS,EAAEZ,KAAK,CAACa,KADnB;AAEE,IAAA,GAAG,EAAC,+CAFN;AAGE,IAAA,GAAG,EAAC;AAHN,IADF,CADF,eAQE;AAAK,IAAA,SAAS,EAAEb,KAAK,CAACc;AAAtB,kBACE;AAAM,IAAA,SAAS,EAAEd,KAAK,CAACI,KAAvB;AAA8B,iBAAU,qBAAxC;AAA8D,kBAAW;AAAzE,KACGA,KADH,CADF,eAIE;AACE,IAAA,SAAS,EAAEJ,KAAK,CAACK,QADnB;AAEE,iBAAU,wBAFZ;AAGE,kBAAW;AAHb,KAKGA,QALH,CAJF,eAWE,oBAAC,UAAD,eAAgBE,WAAhB;AAA6B,IAAA,SAAS,EAAEP,KAAK,CAACM;AAA9C,KAXF,CARF,eAqBE;AAAK,IAAA,SAAS,EAAEN,KAAK,CAACe,KAAtB;AAA6B,IAAA,IAAI,EAAC,KAAlC;AAAwC,kBAAW;AAAnD,kBACE;AACE,IAAA,SAAS,EAAEf,KAAK,CAACa,KADnB;AAEE,IAAA,GAAG,EAAC,kDAFN;AAGE,IAAA,GAAG,EAAC;AAHN,IADF,CArBF,CADF,CADF,CADF;AAmCD,CA3CoB,CAArB;AA6CAZ,YAAY,CAACe,SAAb,2CAAyB;AACvBZ,EAAAA,KAAK,EAAEN,SAAS,CAACmB,MADM;AAEvBZ,EAAAA,QAAQ,EAAEP,SAAS,CAACmB,MAFG;AAGvBX,EAAAA,GAAG,EAAER,SAAS,CAACoB,KAAV,CAAgB;AACnBC,IAAAA,OAAO,EAAErB,SAAS,CAACsB,IADA;AAEnBC,IAAAA,KAAK,EAAEvB,SAAS,CAACmB;AAFE,GAAhB;AAHkB,CAAzB;AASA,eAAehB,YAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonLink from '../../../atom/button-link';\nimport style from './style.css';\n\nconst ReviewBanner = React.memo(function ReviewBanner(props) {\n const {title, subtitle, cta} = props;\n\n const buttonProps = {\n ...cta,\n type: 'primary'\n };\n\n return (\n <div className={style.root} data-name=\"start-review-banner\">\n <div className={style.container}>\n <div className={style.banner}>\n <div className={style.left} role=\"img\" aria-label=\"Left image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/book.png\"\n alt=\"Book image\"\n />\n </div>\n <div className={style.middle}>\n <span className={style.title} data-name=\"review-banner-title\" aria-label=\"{title}\">\n {title}\n </span>\n <span\n className={style.subtitle}\n data-name=\"review-banner-subtitle\"\n aria-label=\"{subtitle}\"\n >\n {subtitle}\n </span>\n <ButtonLink {...buttonProps} className={style.cta} />\n </div>\n <div className={style.right} role=\"img\" aria-label=\"Rigth image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/dumbell.png\"\n alt=\"Dumbbell image\"\n />\n </div>\n </div>\n </div>\n </div>\n );\n});\n\nReviewBanner.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n cta: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string\n })\n};\n\nexport default ReviewBanner;\n"],"file":"index.js"}
@@ -4,8 +4,7 @@ import { NovaCompositionCoorpacademyBigFlashRight as FlashRight, NovaComposition
4
4
  import Provider from '../../../atom/provider';
5
5
  import Link from '../../../atom/link';
6
6
  import style from './style.css';
7
-
8
- const StartBattle = (props, context) => {
7
+ const StartBattle = React.memo(function StartBattle(props) {
9
8
  const {
10
9
  startBattleText,
11
10
  becomeAChampionText,
@@ -49,8 +48,7 @@ const StartBattle = (props, context) => {
49
48
  }), /*#__PURE__*/React.createElement(FlashRight, {
50
49
  className: style.smallFlashRight
51
50
  }))))));
52
- };
53
-
51
+ });
54
52
  StartBattle.contextTypes = {
55
53
  skin: Provider.childContextTypes.skin
56
54
  };
@@ -61,5 +59,5 @@ StartBattle.propTypes = process.env.NODE_ENV !== "production" ? {
61
59
  onClick: PropTypes.func,
62
60
  href: PropTypes.string
63
61
  } : {};
64
- export default React.memo(StartBattle);
62
+ export default StartBattle;
65
63
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/dashboard/start-battle/index.js"],"names":["React","PropTypes","NovaCompositionCoorpacademyBigFlashRight","FlashRight","NovaCompositionCoorpacademyBigFlashLeft","FlashLeft","Provider","Link","style","StartBattle","props","context","startBattleText","becomeAChampionText","challengeText","onClick","href","root","container","wrapper","start","leftFlashes","bigFlashLeft","smallFlashLeft","middle","becomeText","smallFlashLeftMobile","smallFlashRightMobile","button","rightFlashes","bigFlashRight","smallFlashRight","contextTypes","skin","childContextTypes","propTypes","string","func","memo"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SACEC,wCAAwC,IAAIC,UAD9C,EAEEC,uCAAuC,IAAIC,SAF7C,QAGO,0BAHP;AAIA,OAAOC,QAAP,MAAqB,wBAArB;AACA,OAAOC,IAAP,MAAiB,oBAAjB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,WAAW,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;AACtC,QAAM;AAACC,IAAAA,eAAD;AAAkBC,IAAAA,mBAAlB;AAAuCC,IAAAA,aAAvC;AAAsDC,IAAAA,OAAtD;AAA+DC,IAAAA;AAA/D,MAAuEN,KAA7E;AAEA,sBACE;AAAK,IAAA,SAAS,EAAEF,KAAK,CAACS,IAAtB;AAA4B,iBAAU;AAAtC,kBACE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACU;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACY;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEZ,KAAK,CAACa;AAAtB,kBACE,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEb,KAAK,CAACc;AAA5B,IADF,eAEE,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEd,KAAK,CAACe;AAA5B,IAFF,CADF,eAKE;AAAK,IAAA,SAAS,EAAEf,KAAK,CAACgB;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEhB,KAAK,CAACiB;AAAtB,kBACE,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEjB,KAAK,CAACkB;AAA5B,IADF,EAEGb,mBAFH,eAGE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAEL,KAAK,CAACmB;AAA7B,IAHF,CADF,eAME;AAAK,IAAA,SAAS,EAAEnB,KAAK,CAACM;AAAtB,KAAsCA,aAAtC,CANF,eAOE,oBAAC,IAAD;AAAM,IAAA,SAAS,EAAEN,KAAK,CAACoB,MAAvB;AAA+B,IAAA,OAAO,EAAEb,OAAxC;AAAiD,IAAA,IAAI,EAAEC;AAAvD,KACGJ,eADH,CAPF,CALF,eAgBE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACqB;AAAtB,kBACE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAErB,KAAK,CAACsB;AAA7B,IADF,eAEE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAEtB,KAAK,CAACuB;AAA7B,IAFF,CAhBF,CADF,CADF,CADF,CADF;AA6BD,CAhCD;;AAkCAtB,WAAW,CAACuB,YAAZ,GAA2B;AACzBC,EAAAA,IAAI,EAAE3B,QAAQ,CAAC4B,iBAAT,CAA2BD;AADR,CAA3B;AAIAxB,WAAW,CAAC0B,SAAZ,2CAAwB;AACtBvB,EAAAA,eAAe,EAAEX,SAAS,CAACmC,MADL;AAEtBvB,EAAAA,mBAAmB,EAAEZ,SAAS,CAACmC,MAFT;AAGtBtB,EAAAA,aAAa,EAAEb,SAAS,CAACmC,MAHH;AAItBrB,EAAAA,OAAO,EAAEd,SAAS,CAACoC,IAJG;AAKtBrB,EAAAA,IAAI,EAAEf,SAAS,CAACmC;AALM,CAAxB;AAQA,eAAepC,KAAK,CAACsC,IAAN,CAAW7B,WAAX,CAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyBigFlashRight as FlashRight,\n NovaCompositionCoorpacademyBigFlashLeft as FlashLeft\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Link from '../../../atom/link';\nimport style from './style.css';\n\nconst StartBattle = (props, context) => {\n const {startBattleText, becomeAChampionText, challengeText, onClick, href} = props;\n\n return (\n <div className={style.root} data-name=\"start-battle\">\n <div className={style.container}>\n <div className={style.wrapper}>\n <div className={style.start}>\n <div className={style.leftFlashes}>\n <FlashLeft className={style.bigFlashLeft} />\n <FlashLeft className={style.smallFlashLeft} />\n </div>\n <div className={style.middle}>\n <div className={style.becomeText}>\n <FlashLeft className={style.smallFlashLeftMobile} />\n {becomeAChampionText}\n <FlashRight className={style.smallFlashRightMobile} />\n </div>\n <div className={style.challengeText}>{challengeText}</div>\n <Link className={style.button} onClick={onClick} href={href}>\n {startBattleText}\n </Link>\n </div>\n <div className={style.rightFlashes}>\n <FlashRight className={style.bigFlashRight} />\n <FlashRight className={style.smallFlashRight} />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nStartBattle.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nStartBattle.propTypes = {\n startBattleText: PropTypes.string,\n becomeAChampionText: PropTypes.string,\n challengeText: PropTypes.string,\n onClick: PropTypes.func,\n href: PropTypes.string\n};\n\nexport default React.memo(StartBattle);\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/dashboard/start-battle/index.js"],"names":["React","PropTypes","NovaCompositionCoorpacademyBigFlashRight","FlashRight","NovaCompositionCoorpacademyBigFlashLeft","FlashLeft","Provider","Link","style","StartBattle","memo","props","startBattleText","becomeAChampionText","challengeText","onClick","href","root","container","wrapper","start","leftFlashes","bigFlashLeft","smallFlashLeft","middle","becomeText","smallFlashLeftMobile","smallFlashRightMobile","button","rightFlashes","bigFlashRight","smallFlashRight","contextTypes","skin","childContextTypes","propTypes","string","func"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SACEC,wCAAwC,IAAIC,UAD9C,EAEEC,uCAAuC,IAAIC,SAF7C,QAGO,0BAHP;AAIA,OAAOC,QAAP,MAAqB,wBAArB;AACA,OAAOC,IAAP,MAAiB,oBAAjB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,WAAW,GAAGT,KAAK,CAACU,IAAN,CAAW,SAASD,WAAT,CAAqBE,KAArB,EAA4B;AACzD,QAAM;AAACC,IAAAA,eAAD;AAAkBC,IAAAA,mBAAlB;AAAuCC,IAAAA,aAAvC;AAAsDC,IAAAA,OAAtD;AAA+DC,IAAAA;AAA/D,MAAuEL,KAA7E;AAEA,sBACE;AAAK,IAAA,SAAS,EAAEH,KAAK,CAACS,IAAtB;AAA4B,iBAAU;AAAtC,kBACE;AAAK,IAAA,SAAS,EAAET,KAAK,CAACU;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACY;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEZ,KAAK,CAACa;AAAtB,kBACE,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEb,KAAK,CAACc;AAA5B,IADF,eAEE,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEd,KAAK,CAACe;AAA5B,IAFF,CADF,eAKE;AAAK,IAAA,SAAS,EAAEf,KAAK,CAACgB;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEhB,KAAK,CAACiB;AAAtB,kBACE,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEjB,KAAK,CAACkB;AAA5B,IADF,EAEGb,mBAFH,eAGE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAEL,KAAK,CAACmB;AAA7B,IAHF,CADF,eAME;AAAK,IAAA,SAAS,EAAEnB,KAAK,CAACM;AAAtB,KAAsCA,aAAtC,CANF,eAOE,oBAAC,IAAD;AAAM,IAAA,SAAS,EAAEN,KAAK,CAACoB,MAAvB;AAA+B,IAAA,OAAO,EAAEb,OAAxC;AAAiD,IAAA,IAAI,EAAEC;AAAvD,KACGJ,eADH,CAPF,CALF,eAgBE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACqB;AAAtB,kBACE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAErB,KAAK,CAACsB;AAA7B,IADF,eAEE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAEtB,KAAK,CAACuB;AAA7B,IAFF,CAhBF,CADF,CADF,CADF,CADF;AA6BD,CAhCmB,CAApB;AAkCAtB,WAAW,CAACuB,YAAZ,GAA2B;AACzBC,EAAAA,IAAI,EAAE3B,QAAQ,CAAC4B,iBAAT,CAA2BD;AADR,CAA3B;AAIAxB,WAAW,CAAC0B,SAAZ,2CAAwB;AACtBvB,EAAAA,eAAe,EAAEX,SAAS,CAACmC,MADL;AAEtBvB,EAAAA,mBAAmB,EAAEZ,SAAS,CAACmC,MAFT;AAGtBtB,EAAAA,aAAa,EAAEb,SAAS,CAACmC,MAHH;AAItBrB,EAAAA,OAAO,EAAEd,SAAS,CAACoC,IAJG;AAKtBrB,EAAAA,IAAI,EAAEf,SAAS,CAACmC;AALM,CAAxB;AAQA,eAAe3B,WAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyBigFlashRight as FlashRight,\n NovaCompositionCoorpacademyBigFlashLeft as FlashLeft\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Link from '../../../atom/link';\nimport style from './style.css';\n\nconst StartBattle = React.memo(function StartBattle(props) {\n const {startBattleText, becomeAChampionText, challengeText, onClick, href} = props;\n\n return (\n <div className={style.root} data-name=\"start-battle\">\n <div className={style.container}>\n <div className={style.wrapper}>\n <div className={style.start}>\n <div className={style.leftFlashes}>\n <FlashLeft className={style.bigFlashLeft} />\n <FlashLeft className={style.smallFlashLeft} />\n </div>\n <div className={style.middle}>\n <div className={style.becomeText}>\n <FlashLeft className={style.smallFlashLeftMobile} />\n {becomeAChampionText}\n <FlashRight className={style.smallFlashRightMobile} />\n </div>\n <div className={style.challengeText}>{challengeText}</div>\n <Link className={style.button} onClick={onClick} href={href}>\n {startBattleText}\n </Link>\n </div>\n <div className={style.rightFlashes}>\n <FlashRight className={style.bigFlashRight} />\n <FlashRight className={style.smallFlashRight} />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n});\n\nStartBattle.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nStartBattle.propTypes = {\n startBattleText: PropTypes.string,\n becomeAChampionText: PropTypes.string,\n challengeText: PropTypes.string,\n onClick: PropTypes.func,\n href: PropTypes.string\n};\n\nexport default StartBattle;\n"],"file":"index.js"}
@@ -5,7 +5,8 @@ import PropTypes from 'prop-types';
5
5
  import style from './style.css';
6
6
  const podcastWrapperStyle = {
7
7
  default: style.podcastWrapper,
8
- cockpit: style.podcastWrapperCockpit
8
+ cockpit: style.podcastWrapperCockpit,
9
+ mobile: style.podcastWrapper
9
10
  };
10
11
  const iframeStyle = {
11
12
  default: style.iframe,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/external-content-viewer/index.js"],"names":["React","startsWith","includes","PropTypes","style","podcastWrapperStyle","default","podcastWrapper","cockpit","podcastWrapperCockpit","iframeStyle","iframe","iframeCockpit","mobile","ExternalContentViewer","props","url","backgroundImageUrl","contentType","mode","isPdf","googleViewer","bgPodcast","backgroundImage","podcast","propTypes","string","isRequired"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,UAAP,MAAuB,sBAAvB;AACA,OAAOC,QAAP,MAAqB,oBAArB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,mBAAmB,GAAG;AAC1BC,EAAAA,OAAO,EAAEF,KAAK,CAACG,cADW;AAE1BC,EAAAA,OAAO,EAAEJ,KAAK,CAACK;AAFW,CAA5B;AAKA,MAAMC,WAAW,GAAG;AAClBJ,EAAAA,OAAO,EAAEF,KAAK,CAACO,MADG;AAElBH,EAAAA,OAAO,EAAEJ,KAAK,CAACQ,aAFG;AAGlBC,EAAAA,MAAM,EAAET,KAAK,CAACO;AAHI,CAApB;;AAMA,SAASG,qBAAT,CAA+BC,KAA/B,EAAsC;AACpC,QAAM;AAACC,IAAAA,GAAD;AAAMC,IAAAA,kBAAN;AAA0BC,IAAAA,WAA1B;AAAuCC,IAAAA,IAAI,GAAG;AAA9C,MAA2DJ,KAAjE;AACA,QAAMK,KAAK,GAAGlB,QAAQ,CAAC,MAAD,EAASc,GAAT,CAAtB;AACA,QAAMK,YAAY,GAAI,6DAA4DL,GAAI,EAAtF;AAEA,SAAOf,UAAU,CAAC,OAAD,EAAUiB,WAAV,CAAV,gBACL;AAAK,IAAA,SAAS,EAAEb,mBAAmB,CAACc,IAAD;AAAnC,kBACE;AACE,IAAA,SAAS,EAAEf,KAAK,CAACkB,SADnB;AAEE,IAAA,KAAK,EAAE;AAACC,MAAAA,eAAe,EAAEN,kBAAkB,IAAK,OAAMA,kBAAmB;AAAlE;AAFT,IADF,eAKE;AACE,IAAA,SAAS,EAAEb,KAAK,CAACoB,OADnB;AAEE,IAAA,QAAQ,MAFV;AAGE,IAAA,YAAY,EAAC,YAHf;AAIE,IAAA,QAAQ,EAAC,EAJX;AAKE,IAAA,IAAI,EAAC,OALP;AAME,iBAAU,0BANZ;AAOE,IAAA,OAAO,EAAC;AAPV,kBASE;AAAQ,IAAA,GAAG,EAAER,GAAb;AAAkB,IAAA,IAAI,EAAEE;AAAxB,IATF,CALF,CADK,gBAmBL;AACE,IAAA,GAAG,EAAEE,KAAK,IAAID,IAAI,KAAK,QAAlB,GAA6BE,YAA7B,GAA4CL,GADnD;AAEE,IAAA,WAAW,EAAE,CAFf;AAGE,IAAA,SAAS,EAAEN,WAAW,CAACS,IAAD,CAHxB;AAIE,IAAA,eAAe,MAJjB;AAKE,iBAAU;AALZ,IAnBF;AA2BD;;AAEDL,qBAAqB,CAACW,SAAtB,2CAAkC;AAChCT,EAAAA,GAAG,EAAEb,SAAS,CAACuB,MAAV,CAAiBC,UADU;AAEhCV,EAAAA,kBAAkB,EAAEd,SAAS,CAACuB,MAFE;AAGhCR,EAAAA,WAAW,EAAEf,SAAS,CAACuB,MAHS;AAIhCP,EAAAA,IAAI,EAAEhB,SAAS,CAACuB;AAJgB,CAAlC;AAOA,eAAeZ,qBAAf","sourcesContent":["import React from 'react';\nimport startsWith from 'lodash/fp/startsWith';\nimport includes from 'lodash/fp/includes';\nimport PropTypes from 'prop-types';\nimport style from './style.css';\n\nconst podcastWrapperStyle = {\n default: style.podcastWrapper,\n cockpit: style.podcastWrapperCockpit\n};\n\nconst iframeStyle = {\n default: style.iframe,\n cockpit: style.iframeCockpit,\n mobile: style.iframe\n};\n\nfunction ExternalContentViewer(props) {\n const {url, backgroundImageUrl, contentType, mode = 'default'} = props;\n const isPdf = includes('.pdf', url);\n const googleViewer = `https://docs.google.com/viewerng/viewer?embedded=true&url=${url}`;\n\n return startsWith('audio', contentType) ? (\n <div className={podcastWrapperStyle[mode]}>\n <div\n className={style.bgPodcast}\n style={{backgroundImage: backgroundImageUrl && `url(${backgroundImageUrl})`}}\n />\n <audio\n className={style.podcast}\n controls\n controlsList=\"nodownload\"\n autoPlay=\"\"\n name=\"media\"\n data-name=\"external-content-podcast\"\n preload=\"auto\"\n >\n <source src={url} type={contentType} />\n </audio>\n </div>\n ) : (\n <iframe\n src={isPdf && mode === 'mobile' ? googleViewer : url}\n frameBorder={0}\n className={iframeStyle[mode]}\n allowFullScreen\n data-name=\"external-content-iframe\"\n />\n );\n}\n\nExternalContentViewer.propTypes = {\n url: PropTypes.string.isRequired,\n backgroundImageUrl: PropTypes.string,\n contentType: PropTypes.string,\n mode: PropTypes.string\n};\n\nexport default ExternalContentViewer;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/external-content-viewer/index.js"],"names":["React","startsWith","includes","PropTypes","style","podcastWrapperStyle","default","podcastWrapper","cockpit","podcastWrapperCockpit","mobile","iframeStyle","iframe","iframeCockpit","ExternalContentViewer","props","url","backgroundImageUrl","contentType","mode","isPdf","googleViewer","bgPodcast","backgroundImage","podcast","propTypes","string","isRequired"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,UAAP,MAAuB,sBAAvB;AACA,OAAOC,QAAP,MAAqB,oBAArB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,mBAAmB,GAAG;AAC1BC,EAAAA,OAAO,EAAEF,KAAK,CAACG,cADW;AAE1BC,EAAAA,OAAO,EAAEJ,KAAK,CAACK,qBAFW;AAG1BC,EAAAA,MAAM,EAAEN,KAAK,CAACG;AAHY,CAA5B;AAMA,MAAMI,WAAW,GAAG;AAClBL,EAAAA,OAAO,EAAEF,KAAK,CAACQ,MADG;AAElBJ,EAAAA,OAAO,EAAEJ,KAAK,CAACS,aAFG;AAGlBH,EAAAA,MAAM,EAAEN,KAAK,CAACQ;AAHI,CAApB;;AAMA,SAASE,qBAAT,CAA+BC,KAA/B,EAAsC;AACpC,QAAM;AAACC,IAAAA,GAAD;AAAMC,IAAAA,kBAAN;AAA0BC,IAAAA,WAA1B;AAAuCC,IAAAA,IAAI,GAAG;AAA9C,MAA2DJ,KAAjE;AACA,QAAMK,KAAK,GAAGlB,QAAQ,CAAC,MAAD,EAASc,GAAT,CAAtB;AACA,QAAMK,YAAY,GAAI,6DAA4DL,GAAI,EAAtF;AAEA,SAAOf,UAAU,CAAC,OAAD,EAAUiB,WAAV,CAAV,gBACL;AAAK,IAAA,SAAS,EAAEb,mBAAmB,CAACc,IAAD;AAAnC,kBACE;AACE,IAAA,SAAS,EAAEf,KAAK,CAACkB,SADnB;AAEE,IAAA,KAAK,EAAE;AAACC,MAAAA,eAAe,EAAEN,kBAAkB,IAAK,OAAMA,kBAAmB;AAAlE;AAFT,IADF,eAKE;AACE,IAAA,SAAS,EAAEb,KAAK,CAACoB,OADnB;AAEE,IAAA,QAAQ,MAFV;AAGE,IAAA,YAAY,EAAC,YAHf;AAIE,IAAA,QAAQ,EAAC,EAJX;AAKE,IAAA,IAAI,EAAC,OALP;AAME,iBAAU,0BANZ;AAOE,IAAA,OAAO,EAAC;AAPV,kBASE;AAAQ,IAAA,GAAG,EAAER,GAAb;AAAkB,IAAA,IAAI,EAAEE;AAAxB,IATF,CALF,CADK,gBAmBL;AACE,IAAA,GAAG,EAAEE,KAAK,IAAID,IAAI,KAAK,QAAlB,GAA6BE,YAA7B,GAA4CL,GADnD;AAEE,IAAA,WAAW,EAAE,CAFf;AAGE,IAAA,SAAS,EAAEL,WAAW,CAACQ,IAAD,CAHxB;AAIE,IAAA,eAAe,MAJjB;AAKE,iBAAU;AALZ,IAnBF;AA2BD;;AAEDL,qBAAqB,CAACW,SAAtB,2CAAkC;AAChCT,EAAAA,GAAG,EAAEb,SAAS,CAACuB,MAAV,CAAiBC,UADU;AAEhCV,EAAAA,kBAAkB,EAAEd,SAAS,CAACuB,MAFE;AAGhCR,EAAAA,WAAW,EAAEf,SAAS,CAACuB,MAHS;AAIhCP,EAAAA,IAAI,EAAEhB,SAAS,CAACuB;AAJgB,CAAlC;AAOA,eAAeZ,qBAAf","sourcesContent":["import React from 'react';\nimport startsWith from 'lodash/fp/startsWith';\nimport includes from 'lodash/fp/includes';\nimport PropTypes from 'prop-types';\nimport style from './style.css';\n\nconst podcastWrapperStyle = {\n default: style.podcastWrapper,\n cockpit: style.podcastWrapperCockpit,\n mobile: style.podcastWrapper\n};\n\nconst iframeStyle = {\n default: style.iframe,\n cockpit: style.iframeCockpit,\n mobile: style.iframe\n};\n\nfunction ExternalContentViewer(props) {\n const {url, backgroundImageUrl, contentType, mode = 'default'} = props;\n const isPdf = includes('.pdf', url);\n const googleViewer = `https://docs.google.com/viewerng/viewer?embedded=true&url=${url}`;\n\n return startsWith('audio', contentType) ? (\n <div className={podcastWrapperStyle[mode]}>\n <div\n className={style.bgPodcast}\n style={{backgroundImage: backgroundImageUrl && `url(${backgroundImageUrl})`}}\n />\n <audio\n className={style.podcast}\n controls\n controlsList=\"nodownload\"\n autoPlay=\"\"\n name=\"media\"\n data-name=\"external-content-podcast\"\n preload=\"auto\"\n >\n <source src={url} type={contentType} />\n </audio>\n </div>\n ) : (\n <iframe\n src={isPdf && mode === 'mobile' ? googleViewer : url}\n frameBorder={0}\n className={iframeStyle[mode]}\n allowFullScreen\n data-name=\"external-content-iframe\"\n />\n );\n}\n\nExternalContentViewer.propTypes = {\n url: PropTypes.string.isRequired,\n backgroundImageUrl: PropTypes.string,\n contentType: PropTypes.string,\n mode: PropTypes.string\n};\n\nexport default ExternalContentViewer;\n"],"file":"index.js"}
@@ -0,0 +1,87 @@
1
+ import { View, StyleSheet, TextInput } from 'react-native';
2
+ import React, { useState, useEffect, useMemo } from 'react';
3
+ import { useTemplateContext } from '../../../template/app-review/template-context';
4
+ import { ANALYTICS_EVENT_TYPE } from '../../../variables/analytics';
5
+
6
+ const createStyleSheet = (brandTheme, theme) => StyleSheet.create({
7
+ input: {
8
+ padding: theme.spacing.tiny,
9
+ borderWidth: 1,
10
+ borderColor: theme.colors.gray.lightMedium,
11
+ borderRadius: theme.radius.common,
12
+ backgroundColor: theme.colors.white,
13
+ minWidth: 175
14
+ },
15
+ text: {
16
+ borderColor: brandTheme?.colors.primary,
17
+ color: brandTheme?.colors.primary || theme.colors.gray.medium,
18
+ fontWeight: theme.fontWeight.bold,
19
+ fontSize: theme.fontSize.regular,
20
+ textAlign: 'center'
21
+ },
22
+ spaced: {
23
+ paddingVertical: theme.spacing.tiny
24
+ },
25
+ fullWitdh: {
26
+ width: '100%'
27
+ }
28
+ });
29
+
30
+ const logEvent = (eventName, analytics, questionType) => {
31
+ analytics && analytics.logEvent(eventName, {
32
+ id: `question-input-text`,
33
+ questionType
34
+ });
35
+ };
36
+
37
+ const FreeText = props => {
38
+ const templateContext = useTemplateContext();
39
+ const [styleSheet, setStylesheet] = useState(null);
40
+ const {
41
+ brandTheme,
42
+ theme
43
+ } = templateContext;
44
+ const PLACEHOLDER_COLOR = theme.colors.gray.medium; // ------------------------------------
45
+
46
+ const {
47
+ analytics,
48
+ questionType,
49
+ fullWitdh,
50
+ testID,
51
+ onChange,
52
+ isDisabled,
53
+ value,
54
+ placeholder
55
+ } = props; // ------------------------------------
56
+
57
+ const handleFocus = useMemo(() => analytics && logEvent(ANALYTICS_EVENT_TYPE.INPUT_FOCUS, analytics, questionType), [analytics, questionType]);
58
+ const handleBlur = useMemo(() => analytics && logEvent(ANALYTICS_EVENT_TYPE.INPUT_BLUR, analytics, questionType), [analytics, questionType]); // ------------------------------------
59
+
60
+ useEffect(() => {
61
+ const _stylesheet = createStyleSheet(brandTheme, theme);
62
+
63
+ setStylesheet(_stylesheet);
64
+ }, [brandTheme, theme]); // ------------------------------------
65
+
66
+ if (!styleSheet) {
67
+ return null;
68
+ }
69
+
70
+ return /*#__PURE__*/React.createElement(View, {
71
+ style: [styleSheet.spaced, fullWitdh && styleSheet.fullWitdh]
72
+ }, /*#__PURE__*/React.createElement(TextInput, {
73
+ style: [styleSheet.input, styleSheet.text],
74
+ onFocus: handleFocus,
75
+ onBlur: handleBlur,
76
+ onChangeText: onChange,
77
+ placeholder: placeholder,
78
+ placeholderTextColor: PLACEHOLDER_COLOR,
79
+ value: value,
80
+ testID: testID,
81
+ editable: !isDisabled,
82
+ selectTextOnFocus: !isDisabled
83
+ }));
84
+ };
85
+
86
+ export default FreeText;
87
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/molecule/questions/free-text/index.native.tsx"],"names":["View","StyleSheet","TextInput","React","useState","useEffect","useMemo","useTemplateContext","ANALYTICS_EVENT_TYPE","createStyleSheet","brandTheme","theme","create","input","padding","spacing","tiny","borderWidth","borderColor","colors","gray","lightMedium","borderRadius","radius","common","backgroundColor","white","minWidth","text","primary","color","medium","fontWeight","bold","fontSize","regular","textAlign","spaced","paddingVertical","fullWitdh","width","logEvent","eventName","analytics","questionType","id","FreeText","props","templateContext","styleSheet","setStylesheet","PLACEHOLDER_COLOR","testID","onChange","isDisabled","value","placeholder","handleFocus","INPUT_FOCUS","handleBlur","INPUT_BLUR","_stylesheet"],"mappings":"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","sourcesContent":["import {View, StyleSheet, TextInput} from 'react-native';\nimport React, {useState, useEffect, useMemo} from 'react';\nimport {useTemplateContext} from '../../../template/app-review/template-context';\nimport {ANALYTICS_EVENT_TYPE, Analytics} from '../../../variables/analytics';\n\ntype QuestionType = 'basic' | 'template';\n\ninterface Props {\n children: string;\n fullWitdh: boolean;\n testID: string;\n questionType: QuestionType;\n analytics?: Analytics;\n onChange: Function;\n isDisabled: boolean;\n value: string;\n placeholder: string;\n}\n\ntype StyleSheetType = {\n input: {\n padding: string;\n borderWidth: number;\n borderColor: string;\n borderRadius: number;\n backgroundColor: string;\n minWidth: number;\n };\n text: {\n color: string;\n fontWeight: number;\n fontSize: number;\n textAlign: string;\n };\n spaced: {\n paddingVertical: number;\n };\n fullWitdh: {\n width: string;\n };\n};\n\nconst createStyleSheet = (brandTheme, theme) =>\n StyleSheet.create({\n input: {\n padding: theme.spacing.tiny,\n borderWidth: 1,\n borderColor: theme.colors.gray.lightMedium,\n borderRadius: theme.radius.common,\n backgroundColor: theme.colors.white,\n minWidth: 175\n },\n text: {\n borderColor: brandTheme?.colors.primary,\n color: brandTheme?.colors.primary || theme.colors.gray.medium,\n fontWeight: theme.fontWeight.bold,\n fontSize: theme.fontSize.regular,\n textAlign: 'center'\n },\n spaced: {\n paddingVertical: theme.spacing.tiny\n },\n fullWitdh: {\n width: '100%'\n }\n });\n\nconst logEvent = (eventName: string, analytics: Analytics, questionType: QuestionType) => {\n analytics &&\n analytics.logEvent(eventName, {\n id: `question-input-text`,\n questionType\n });\n};\n\nconst FreeText = (props: Props) => {\n const templateContext = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n const {brandTheme, theme} = templateContext;\n const PLACEHOLDER_COLOR = theme.colors.gray.medium;\n\n // ------------------------------------\n\n const {\n analytics,\n questionType,\n fullWitdh,\n testID,\n onChange,\n isDisabled,\n value,\n placeholder\n } = props;\n\n // ------------------------------------\n\n const handleFocus = useMemo(\n () => analytics && logEvent(ANALYTICS_EVENT_TYPE.INPUT_FOCUS, analytics, questionType),\n [analytics, questionType]\n );\n\n const handleBlur = useMemo(\n () => analytics && logEvent(ANALYTICS_EVENT_TYPE.INPUT_BLUR, analytics, questionType),\n [analytics, questionType]\n );\n\n // ------------------------------------\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(brandTheme, theme);\n setStylesheet(_stylesheet);\n }, [brandTheme, theme]);\n\n // ------------------------------------\n\n if (!styleSheet) {\n return null;\n }\n\n return (\n <View style={[styleSheet.spaced, fullWitdh && styleSheet.fullWitdh]}>\n <TextInput\n style={[styleSheet.input, styleSheet.text]}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChangeText={onChange}\n placeholder={placeholder}\n placeholderTextColor={PLACEHOLDER_COLOR}\n value={value}\n testID={testID}\n editable={!isDisabled}\n selectTextOnFocus={!isDisabled}\n />\n </View>\n );\n};\n\nexport default FreeText;\n"],"file":"index.native.js"}
@@ -0,0 +1,50 @@
1
+ import { View, StyleSheet } from 'react-native';
2
+ import React, { useState, useEffect } from 'react';
3
+ import { useTemplateContext } from '../../../template/app-review/template-context';
4
+
5
+ const createStyleSheet = theme => StyleSheet.create({
6
+ boxShadow: {
7
+ shadowColor: '#000',
8
+ shadowOffset: {
9
+ width: 0,
10
+ height: 4
11
+ },
12
+ shadowOpacity: 0.12,
13
+ shadowRadius: 16,
14
+ elevation: 6
15
+ },
16
+ container: {
17
+ backgroundColor: theme.colors.white,
18
+ borderRadius: theme.radius.regular,
19
+ overflow: 'hidden',
20
+ flexDirection: 'row',
21
+ alignItems: 'stretch'
22
+ }
23
+ });
24
+
25
+ const QuestionChoiceComponent = ({
26
+ children,
27
+ isSelected = false,
28
+ testID: prefixTestID
29
+ }) => {
30
+ const selectedSuffix = prefixTestID && isSelected ? '-selected' : '';
31
+ const [styleSheet, setStylesheet] = useState(null);
32
+ const templateContext = useTemplateContext();
33
+ const {
34
+ theme
35
+ } = templateContext;
36
+ useEffect(() => {
37
+ const _stylesheet = createStyleSheet(theme);
38
+
39
+ setStylesheet(_stylesheet);
40
+ }, [theme]);
41
+ return /*#__PURE__*/React.createElement(View, {
42
+ style: [styleSheet && styleSheet.boxShadow]
43
+ }, /*#__PURE__*/React.createElement(View, {
44
+ style: [styleSheet && styleSheet.container],
45
+ testID: prefixTestID && `${prefixTestID}${selectedSuffix}`
46
+ }, children));
47
+ };
48
+
49
+ export default QuestionChoiceComponent;
50
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/molecule/questions/qcm/index.native.tsx"],"names":["View","StyleSheet","React","useState","useEffect","useTemplateContext","createStyleSheet","theme","create","boxShadow","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","container","backgroundColor","colors","white","borderRadius","radius","regular","overflow","flexDirection","alignItems","QuestionChoiceComponent","children","isSelected","testID","prefixTestID","selectedSuffix","styleSheet","setStylesheet","templateContext","_stylesheet"],"mappings":"AAAA,SAAQA,IAAR,EAAcC,UAAd,QAA0C,cAA1C;AACA,OAAOC,KAAP,IAAeC,QAAf,EAAyBC,SAAzB,QAAyC,OAAzC;AACA,SAAQC,kBAAR,QAAiC,+CAAjC;;AAmCA,MAAMC,gBAAgB,GAAIC,KAAD,IACvBN,UAAU,CAACO,MAAX,CAAkB;AAChBC,EAAAA,SAAS,EAAE;AACTC,IAAAA,WAAW,EAAE,MADJ;AAETC,IAAAA,YAAY,EAAE;AAACC,MAAAA,KAAK,EAAE,CAAR;AAAWC,MAAAA,MAAM,EAAE;AAAnB,KAFL;AAGTC,IAAAA,aAAa,EAAE,IAHN;AAITC,IAAAA,YAAY,EAAE,EAJL;AAKTC,IAAAA,SAAS,EAAE;AALF,GADK;AAQhBC,EAAAA,SAAS,EAAE;AACTC,IAAAA,eAAe,EAAEX,KAAK,CAACY,MAAN,CAAaC,KADrB;AAETC,IAAAA,YAAY,EAAEd,KAAK,CAACe,MAAN,CAAaC,OAFlB;AAGTC,IAAAA,QAAQ,EAAE,QAHD;AAITC,IAAAA,aAAa,EAAE,KAJN;AAKTC,IAAAA,UAAU,EAAE;AALH;AARK,CAAlB,CADF;;AAkBA,MAAMC,uBAAuB,GAAG,CAAC;AAACC,EAAAA,QAAD;AAAWC,EAAAA,UAAU,GAAG,KAAxB;AAA+BC,EAAAA,MAAM,EAAEC;AAAvC,CAAD,KAAiE;AAC/F,QAAMC,cAAc,GAAGD,YAAY,IAAIF,UAAhB,GAA6B,WAA7B,GAA2C,EAAlE;AAEA,QAAM,CAACI,UAAD,EAAaC,aAAb,IAA8B/B,QAAQ,CAAmB,IAAnB,CAA5C;AAEA,QAAMgC,eAAe,GAAG9B,kBAAkB,EAA1C;AACA,QAAM;AAACE,IAAAA;AAAD,MAAU4B,eAAhB;AAEA/B,EAAAA,SAAS,CAAC,MAAM;AACd,UAAMgC,WAAW,GAAG9B,gBAAgB,CAACC,KAAD,CAApC;;AACA2B,IAAAA,aAAa,CAACE,WAAD,CAAb;AACD,GAHQ,EAGN,CAAC7B,KAAD,CAHM,CAAT;AAKA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAAC0B,UAAU,IAAIA,UAAU,CAACxB,SAA1B;AAAb,kBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACwB,UAAU,IAAIA,UAAU,CAAChB,SAA1B,CADT;AAEE,IAAA,MAAM,EAAEc,YAAY,IAAK,GAAEA,YAAa,GAAEC,cAAe;AAF3D,KAIGJ,QAJH,CADF,CADF;AAUD,CAvBD;;AAyBA,eAAeD,uBAAf","sourcesContent":["import {View, StyleSheet, ViewStyle} from 'react-native';\nimport React, {useState, useEffect} from 'react';\nimport {useTemplateContext} from '../../../template/app-review/template-context';\n\ninterface Props {\n isSelected?: boolean;\n children: string;\n testID?: string;\n style?: ViewStyle;\n theme?: any;\n}\n\ntype StyleType = {\n boxShadow: {\n shadowColor: string;\n shadowOffset: {\n width: number;\n height: number;\n };\n shadowOpacity: number;\n shadowRadius: number;\n elevation: number;\n };\n container: {\n backgroundColor: string;\n borderRadius: number;\n shadowColor: string;\n shadowOffset: {width: number; height: number};\n shadowOpacity: number;\n shadowRadius: number;\n elevation: number;\n overflow: string;\n flexDirection: string;\n alignItems: string;\n };\n};\n\nconst createStyleSheet = (theme: any) =>\n StyleSheet.create({\n boxShadow: {\n shadowColor: '#000',\n shadowOffset: {width: 0, height: 4},\n shadowOpacity: 0.12,\n shadowRadius: 16,\n elevation: 6\n },\n container: {\n backgroundColor: theme.colors.white,\n borderRadius: theme.radius.regular,\n overflow: 'hidden',\n flexDirection: 'row',\n alignItems: 'stretch'\n }\n });\n\nconst QuestionChoiceComponent = ({children, isSelected = false, testID: prefixTestID}: Props) => {\n const selectedSuffix = prefixTestID && isSelected ? '-selected' : '';\n\n const [styleSheet, setStylesheet] = useState<StyleType | null>(null);\n\n const templateContext = useTemplateContext();\n const {theme} = templateContext;\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n return (\n <View style={[styleSheet && styleSheet.boxShadow]}>\n <View\n style={[styleSheet && styleSheet.container]}\n testID={prefixTestID && `${prefixTestID}${selectedSuffix}`}\n >\n {children}\n </View>\n </View>\n );\n};\n\nexport default QuestionChoiceComponent;\n"],"file":"index.native.js"}
@@ -6,13 +6,13 @@ import _pipe from "lodash/fp/pipe";
6
6
  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); }
7
7
 
8
8
  import React, { useEffect, useState } from 'react';
9
- import PropTypes from 'prop-types';
10
9
  import classnames from 'classnames';
11
10
  import { NovaCompositionCoorpacademyStar as StarIcon, NovaSolidVoteRewardsRewardsBadge5 as RankIcon } from '@coorpacademy/nova-icons';
12
11
  import AtomLottieWrapper from '../../atom/lottie-wrapper';
13
12
  import Animation, { EASE_OUT_CUBIC } from '../../hoc/animation';
14
13
  import AnimationScheduler from '../../hoc/animation-scheduler';
15
14
  import style from './style.css';
15
+ import propTypes from './prop-types';
16
16
  export const setAnimations = (setIsAnimationVisible, setIsAnimated) => () => {
17
17
  setIsAnimationVisible('play');
18
18
  setIsAnimated(true);
@@ -83,17 +83,6 @@ const ReviewCardCongrats = props => {
83
83
  }, rankSuffix)));
84
84
  };
85
85
 
86
- ReviewCardCongrats.propTypes = process.env.NODE_ENV !== "production" ? {
87
- 'aria-label': PropTypes.string,
88
- 'data-name': PropTypes.string,
89
- animationLottie: PropTypes.shape(AtomLottieWrapper.propTypes),
90
- cardType: PropTypes.string,
91
- iconAriaLabel: PropTypes.string,
92
- className: PropTypes.string,
93
- reviewCardTitle: PropTypes.string,
94
- reviewCardValue: PropTypes.string,
95
- rankSuffix: PropTypes.string,
96
- timerAnimation: PropTypes.number
97
- } : {};
86
+ ReviewCardCongrats.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
98
87
  export default ReviewCardCongrats;
99
88
  //# sourceMappingURL=index.js.map
@@ -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, 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"}
1
+ {"version":3,"sources":["../../../src/molecule/review-card-congrats/index.js"],"names":["React","useEffect","useState","classnames","NovaCompositionCoorpacademyStar","StarIcon","NovaSolidVoteRewardsRewardsBadge5","RankIcon","AtomLottieWrapper","Animation","EASE_OUT_CUBIC","AnimationScheduler","style","propTypes","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"],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\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';\nimport propTypes from './prop-types';\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 = propTypes;\n\nexport default ReviewCardCongrats;\n"],"file":"index.js"}