@coorpacademy/components 10.22.3 → 10.22.4

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 (105) hide show
  1. package/es/atom/drag-and-drop/index.js +2 -1
  2. package/es/atom/drag-and-drop/index.js.map +1 -1
  3. package/es/atom/header-back-button/index.native.js +3 -4
  4. package/es/atom/header-back-button/index.native.js.map +1 -1
  5. package/es/atom/html/index.native.js +153 -0
  6. package/es/atom/html/index.native.js.map +1 -0
  7. package/es/atom/input-checkbox/index.js +3 -2
  8. package/es/atom/input-checkbox/index.js.map +1 -1
  9. package/es/atom/input-switch/index.js +2 -1
  10. package/es/atom/input-switch/index.js.map +1 -1
  11. package/es/atom/select-modal/index.native.js +113 -0
  12. package/es/atom/select-modal/index.native.js.map +1 -0
  13. package/es/atom/space/index.native.js +21 -0
  14. package/es/atom/space/index.native.js.map +1 -0
  15. package/es/atom/text/index.native.js +29 -0
  16. package/es/atom/text/index.native.js.map +1 -0
  17. package/es/hoc/modal/index.native.js +97 -0
  18. package/es/hoc/modal/index.native.js.map +1 -0
  19. package/es/hoc/modal/select/index.native.js +85 -0
  20. package/es/hoc/modal/select/index.native.js.map +1 -0
  21. package/es/hoc/modal/select-item/index.native.js +54 -0
  22. package/es/hoc/modal/select-item/index.native.js.map +1 -0
  23. package/es/hoc/touchable/index.native.js.map +1 -1
  24. package/es/index.js +2 -1
  25. package/es/index.js.map +1 -1
  26. package/es/molecule/cm-popin/index.js +27 -8
  27. package/es/molecule/cm-popin/index.js.map +1 -1
  28. package/es/molecule/cm-popin/style.css +24 -1
  29. package/es/molecule/feedback/index.js +7 -3
  30. package/es/molecule/feedback/index.js.map +1 -1
  31. package/es/molecule/feedback/style.css +24 -0
  32. package/es/template/app-player/player/index.js +6 -3
  33. package/es/template/app-player/player/index.js.map +1 -1
  34. package/es/template/app-player/popin-end/index.js +21 -6
  35. package/es/template/app-player/popin-end/index.js.map +1 -1
  36. package/es/template/app-player/popin-end/style.css +1 -1
  37. package/es/template/app-player/popin-end/summary.css +65 -0
  38. package/es/template/app-player/popin-end/summary.js +57 -7
  39. package/es/template/app-player/popin-end/summary.js.map +1 -1
  40. package/es/template/app-player/popin-header/index.js +33 -12
  41. package/es/template/app-player/popin-header/index.js.map +1 -1
  42. package/es/template/app-player/popin-header/style.css +93 -0
  43. package/es/template/app-player/popin-no-access/index.js +27 -0
  44. package/es/template/app-player/popin-no-access/index.js.map +1 -0
  45. package/es/template/app-review/prop-types.js +2 -1
  46. package/es/template/app-review/prop-types.js.map +1 -1
  47. package/es/template/app-review/slides/index.js +2 -2
  48. package/es/template/app-review/slides/index.js.map +1 -1
  49. package/es/types/progression-engine.d.js +2 -0
  50. package/es/types/progression-engine.d.js.map +1 -0
  51. package/es/variables/theme.native.js +1 -0
  52. package/es/variables/theme.native.js.map +1 -1
  53. package/lib/atom/drag-and-drop/index.js +2 -1
  54. package/lib/atom/drag-and-drop/index.js.map +1 -1
  55. package/lib/atom/header-back-button/index.native.js +3 -4
  56. package/lib/atom/header-back-button/index.native.js.map +1 -1
  57. package/lib/atom/html/index.native.js +170 -0
  58. package/lib/atom/html/index.native.js.map +1 -0
  59. package/lib/atom/input-checkbox/index.js +2 -1
  60. package/lib/atom/input-checkbox/index.js.map +1 -1
  61. package/lib/atom/input-switch/index.js +2 -1
  62. package/lib/atom/input-switch/index.js.map +1 -1
  63. package/lib/atom/select-modal/index.native.js +135 -0
  64. package/lib/atom/select-modal/index.native.js.map +1 -0
  65. package/lib/atom/space/index.native.js +33 -0
  66. package/lib/atom/space/index.native.js.map +1 -0
  67. package/lib/atom/text/index.native.js +44 -0
  68. package/lib/atom/text/index.native.js.map +1 -0
  69. package/lib/hoc/modal/index.native.js +114 -0
  70. package/lib/hoc/modal/index.native.js.map +1 -0
  71. package/lib/hoc/modal/select/index.native.js +101 -0
  72. package/lib/hoc/modal/select/index.native.js.map +1 -0
  73. package/lib/hoc/modal/select-item/index.native.js +70 -0
  74. package/lib/hoc/modal/select-item/index.native.js.map +1 -0
  75. package/lib/hoc/touchable/index.native.js.map +1 -1
  76. package/lib/index.js +4 -0
  77. package/lib/index.js.map +1 -1
  78. package/lib/molecule/cm-popin/index.js +27 -8
  79. package/lib/molecule/cm-popin/index.js.map +1 -1
  80. package/lib/molecule/cm-popin/style.css +24 -1
  81. package/lib/molecule/feedback/index.js +7 -3
  82. package/lib/molecule/feedback/index.js.map +1 -1
  83. package/lib/molecule/feedback/style.css +24 -0
  84. package/lib/template/app-player/player/index.js +7 -3
  85. package/lib/template/app-player/player/index.js.map +1 -1
  86. package/lib/template/app-player/popin-end/index.js +21 -6
  87. package/lib/template/app-player/popin-end/index.js.map +1 -1
  88. package/lib/template/app-player/popin-end/style.css +1 -1
  89. package/lib/template/app-player/popin-end/summary.css +65 -0
  90. package/lib/template/app-player/popin-end/summary.js +58 -7
  91. package/lib/template/app-player/popin-end/summary.js.map +1 -1
  92. package/lib/template/app-player/popin-header/index.js +32 -11
  93. package/lib/template/app-player/popin-header/index.js.map +1 -1
  94. package/lib/template/app-player/popin-header/style.css +93 -0
  95. package/lib/template/app-player/popin-no-access/index.js +37 -0
  96. package/lib/template/app-player/popin-no-access/index.js.map +1 -0
  97. package/lib/template/app-review/prop-types.js +2 -1
  98. package/lib/template/app-review/prop-types.js.map +1 -1
  99. package/lib/template/app-review/slides/index.js +2 -2
  100. package/lib/template/app-review/slides/index.js.map +1 -1
  101. package/lib/types/progression-engine.d.js +2 -0
  102. package/lib/types/progression-engine.d.js.map +1 -0
  103. package/lib/variables/theme.native.js +3 -1
  104. package/lib/variables/theme.native.js.map +1 -1
  105. package/package.json +6 -4
@@ -1,11 +1,13 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
+ import CMPopin from '../../../molecule/cm-popin';
3
4
  import SlidesPlayer from './slides';
4
5
  import style from './style.css';
5
6
 
6
7
  const SlidePlayer = props => {
7
8
  const {
8
- player
9
+ player,
10
+ popin
9
11
  } = props;
10
12
  const backgroundImage = player.backgroundUrl ? `url(${player.backgroundUrl})` : null;
11
13
  return /*#__PURE__*/React.createElement("div", {
@@ -18,11 +20,12 @@ const SlidePlayer = props => {
18
20
  style: {
19
21
  backgroundImage
20
22
  }
21
- }), /*#__PURE__*/React.createElement(SlidesPlayer, player)));
23
+ }), /*#__PURE__*/React.createElement(SlidesPlayer, player), popin ? /*#__PURE__*/React.createElement(CMPopin, popin) : null));
22
24
  };
23
25
 
24
26
  SlidePlayer.propTypes = process.env.NODE_ENV !== "production" ? {
25
- player: PropTypes.shape(SlidesPlayer.propTypes)
27
+ player: PropTypes.shape(SlidesPlayer.propTypes),
28
+ popin: PropTypes.shape(CMPopin.propTypes)
26
29
  } : {};
27
30
  export default SlidePlayer;
28
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/template/app-player/player/index.js"],"names":["React","PropTypes","SlidesPlayer","style","SlidePlayer","props","player","backgroundImage","backgroundUrl","wrapper","playerWrapper","playerBackground","propTypes","shape"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,YAAP,MAAyB,UAAzB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,WAAW,GAAGC,KAAK,IAAI;AAC3B,QAAM;AAACC,IAAAA;AAAD,MAAWD,KAAjB;AACA,QAAME,eAAe,GAAGD,MAAM,CAACE,aAAP,GAAwB,OAAMF,MAAM,CAACE,aAAc,GAAnD,GAAwD,IAAhF;AACA,sBACE;AAAK,iBAAU,aAAf;AAA6B,IAAA,SAAS,EAAEL,KAAK,CAACM;AAA9C,kBACE;AAAK,IAAA,SAAS,EAAEN,KAAK,CAACO;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACQ,gBAAtB;AAAwC,IAAA,KAAK,EAAE;AAACJ,MAAAA;AAAD;AAA/C,IADF,eAEE,oBAAC,YAAD,EAAkBD,MAAlB,CAFF,CADF,CADF;AAQD,CAXD;;AAaAF,WAAW,CAACQ,SAAZ,2CAAwB;AACtBN,EAAAA,MAAM,EAAEL,SAAS,CAACY,KAAV,CAAgBX,YAAY,CAACU,SAA7B;AADc,CAAxB;AAIA,eAAeR,WAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport SlidesPlayer from './slides';\nimport style from './style.css';\n\nconst SlidePlayer = props => {\n const {player} = props;\n const backgroundImage = player.backgroundUrl ? `url(${player.backgroundUrl})` : null;\n return (\n <div data-name=\"slidePlayer\" className={style.wrapper}>\n <div className={style.playerWrapper}>\n <div className={style.playerBackground} style={{backgroundImage}} />\n <SlidesPlayer {...player} />\n </div>\n </div>\n );\n};\n\nSlidePlayer.propTypes = {\n player: PropTypes.shape(SlidesPlayer.propTypes)\n};\n\nexport default SlidePlayer;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/template/app-player/player/index.js"],"names":["React","PropTypes","CMPopin","SlidesPlayer","style","SlidePlayer","props","player","popin","backgroundImage","backgroundUrl","wrapper","playerWrapper","playerBackground","propTypes","shape"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,OAAP,MAAoB,4BAApB;AACA,OAAOC,YAAP,MAAyB,UAAzB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,WAAW,GAAGC,KAAK,IAAI;AAC3B,QAAM;AAACC,IAAAA,MAAD;AAASC,IAAAA;AAAT,MAAkBF,KAAxB;AACA,QAAMG,eAAe,GAAGF,MAAM,CAACG,aAAP,GAAwB,OAAMH,MAAM,CAACG,aAAc,GAAnD,GAAwD,IAAhF;AACA,sBACE;AAAK,iBAAU,aAAf;AAA6B,IAAA,SAAS,EAAEN,KAAK,CAACO;AAA9C,kBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACQ;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAER,KAAK,CAACS,gBAAtB;AAAwC,IAAA,KAAK,EAAE;AAACJ,MAAAA;AAAD;AAA/C,IADF,eAEE,oBAAC,YAAD,EAAkBF,MAAlB,CAFF,EAGGC,KAAK,gBAAG,oBAAC,OAAD,EAAaA,KAAb,CAAH,GAA4B,IAHpC,CADF,CADF;AASD,CAZD;;AAcAH,WAAW,CAACS,SAAZ,2CAAwB;AACtBP,EAAAA,MAAM,EAAEN,SAAS,CAACc,KAAV,CAAgBZ,YAAY,CAACW,SAA7B,CADc;AAEtBN,EAAAA,KAAK,EAAEP,SAAS,CAACc,KAAV,CAAgBb,OAAO,CAACY,SAAxB;AAFe,CAAxB;AAKA,eAAeT,WAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CMPopin from '../../../molecule/cm-popin';\nimport SlidesPlayer from './slides';\nimport style from './style.css';\n\nconst SlidePlayer = props => {\n const {player, popin} = props;\n const backgroundImage = player.backgroundUrl ? `url(${player.backgroundUrl})` : null;\n return (\n <div data-name=\"slidePlayer\" className={style.wrapper}>\n <div className={style.playerWrapper}>\n <div className={style.playerBackground} style={{backgroundImage}} />\n <SlidesPlayer {...player} />\n {popin ? <CMPopin {...popin} /> : null}\n </div>\n </div>\n );\n};\n\nSlidePlayer.propTypes = {\n player: PropTypes.shape(SlidesPlayer.propTypes),\n popin: PropTypes.shape(CMPopin.propTypes)\n};\n\nexport default SlidePlayer;\n"],"file":"index.js"}
@@ -1,29 +1,44 @@
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
+
1
3
  import React from 'react';
2
4
  import PropTypes from 'prop-types';
3
5
  import Header from '../player/slides/header';
4
6
  import Summary from './summary';
5
7
  import style from './style.css';
6
8
 
7
- const Content = props => /*#__PURE__*/React.createElement("div", {
8
- className: style.popinWrapper
9
- }, /*#__PURE__*/React.createElement(Summary, props));
9
+ const Content = props => {
10
+ const {
11
+ mode = 'default'
12
+ } = props;
13
+ return /*#__PURE__*/React.createElement("div", {
14
+ className: mode !== 'scorm' ? style.popinWrapper : null
15
+ }, /*#__PURE__*/React.createElement(Summary, props));
16
+ };
17
+
18
+ Content.propTypes = process.env.NODE_ENV !== "production" ? {
19
+ mode: PropTypes.oneOf(['scorm', 'default'])
20
+ } : {};
10
21
 
11
22
  const PopinEnd = props => {
12
23
  const {
13
24
  header,
14
- summary
25
+ summary,
26
+ mode = 'default'
15
27
  } = props;
16
28
  return /*#__PURE__*/React.createElement("div", {
17
29
  "data-name": "popinEnd",
18
30
  className: style.wrapper
19
31
  }, /*#__PURE__*/React.createElement("div", {
20
32
  className: style.slidesHeader
21
- }, /*#__PURE__*/React.createElement(Header, header)), /*#__PURE__*/React.createElement(Content, summary));
33
+ }, /*#__PURE__*/React.createElement(Header, header)), /*#__PURE__*/React.createElement(Content, _extends({}, summary, {
34
+ mode: mode
35
+ })));
22
36
  };
23
37
 
24
38
  PopinEnd.propTypes = process.env.NODE_ENV !== "production" ? {
25
39
  header: PropTypes.shape(Header.propTypes),
26
- summary: PropTypes.shape(Summary.propTypes)
40
+ summary: PropTypes.shape(Summary.propTypes),
41
+ mode: PropTypes.oneOf(['scorm', 'default'])
27
42
  } : {};
28
43
  export default PopinEnd;
29
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/template/app-player/popin-end/index.js"],"names":["React","PropTypes","Header","Summary","style","Content","props","popinWrapper","PopinEnd","header","summary","wrapper","slidesHeader","propTypes","shape"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,MAAP,MAAmB,yBAAnB;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,OAAO,GAAGC,KAAK,iBACnB;AAAK,EAAA,SAAS,EAAEF,KAAK,CAACG;AAAtB,gBACE,oBAAC,OAAD,EAAaD,KAAb,CADF,CADF;;AAMA,MAAME,QAAQ,GAAGF,KAAK,IAAI;AACxB,QAAM;AAACG,IAAAA,MAAD;AAASC,IAAAA;AAAT,MAAoBJ,KAA1B;AACA,sBACE;AAAK,iBAAU,UAAf;AAA0B,IAAA,SAAS,EAAEF,KAAK,CAACO;AAA3C,kBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACQ;AAAtB,kBACE,oBAAC,MAAD,EAAYH,MAAZ,CADF,CADF,eAIE,oBAAC,OAAD,EAAaC,OAAb,CAJF,CADF;AAQD,CAVD;;AAYAF,QAAQ,CAACK,SAAT,2CAAqB;AACnBJ,EAAAA,MAAM,EAAER,SAAS,CAACa,KAAV,CAAgBZ,MAAM,CAACW,SAAvB,CADW;AAEnBH,EAAAA,OAAO,EAAET,SAAS,CAACa,KAAV,CAAgBX,OAAO,CAACU,SAAxB;AAFU,CAArB;AAKA,eAAeL,QAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Header from '../player/slides/header';\nimport Summary from './summary';\nimport style from './style.css';\n\nconst Content = props => (\n <div className={style.popinWrapper}>\n <Summary {...props} />\n </div>\n);\n\nconst PopinEnd = props => {\n const {header, summary} = props;\n return (\n <div data-name=\"popinEnd\" className={style.wrapper}>\n <div className={style.slidesHeader}>\n <Header {...header} />\n </div>\n <Content {...summary} />\n </div>\n );\n};\n\nPopinEnd.propTypes = {\n header: PropTypes.shape(Header.propTypes),\n summary: PropTypes.shape(Summary.propTypes)\n};\n\nexport default PopinEnd;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/template/app-player/popin-end/index.js"],"names":["React","PropTypes","Header","Summary","style","Content","props","mode","popinWrapper","propTypes","oneOf","PopinEnd","header","summary","wrapper","slidesHeader","shape"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,MAAP,MAAmB,yBAAnB;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,OAAO,GAAGC,KAAK,IAAI;AACvB,QAAM;AAACC,IAAAA,IAAI,GAAG;AAAR,MAAqBD,KAA3B;AACA,sBACE;AAAK,IAAA,SAAS,EAAEC,IAAI,KAAK,OAAT,GAAmBH,KAAK,CAACI,YAAzB,GAAwC;AAAxD,kBACE,oBAAC,OAAD,EAAaF,KAAb,CADF,CADF;AAKD,CAPD;;AAQAD,OAAO,CAACI,SAAR,2CAAoB;AAClBF,EAAAA,IAAI,EAAEN,SAAS,CAACS,KAAV,CAAgB,CAAC,OAAD,EAAU,SAAV,CAAhB;AADY,CAApB;;AAIA,MAAMC,QAAQ,GAAGL,KAAK,IAAI;AACxB,QAAM;AAACM,IAAAA,MAAD;AAASC,IAAAA,OAAT;AAAkBN,IAAAA,IAAI,GAAG;AAAzB,MAAsCD,KAA5C;AACA,sBACE;AAAK,iBAAU,UAAf;AAA0B,IAAA,SAAS,EAAEF,KAAK,CAACU;AAA3C,kBACE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACW;AAAtB,kBACE,oBAAC,MAAD,EAAYH,MAAZ,CADF,CADF,eAIE,oBAAC,OAAD,eAAaC,OAAb;AAAsB,IAAA,IAAI,EAAEN;AAA5B,KAJF,CADF;AAQD,CAVD;;AAYAI,QAAQ,CAACF,SAAT,2CAAqB;AACnBG,EAAAA,MAAM,EAAEX,SAAS,CAACe,KAAV,CAAgBd,MAAM,CAACO,SAAvB,CADW;AAEnBI,EAAAA,OAAO,EAAEZ,SAAS,CAACe,KAAV,CAAgBb,OAAO,CAACM,SAAxB,CAFU;AAGnBF,EAAAA,IAAI,EAAEN,SAAS,CAACS,KAAV,CAAgB,CAAC,OAAD,EAAU,SAAV,CAAhB;AAHa,CAArB;AAMA,eAAeC,QAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Header from '../player/slides/header';\nimport Summary from './summary';\nimport style from './style.css';\n\nconst Content = props => {\n const {mode = 'default'} = props;\n return (\n <div className={mode !== 'scorm' ? style.popinWrapper : null}>\n <Summary {...props} />\n </div>\n );\n};\nContent.propTypes = {\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nconst PopinEnd = props => {\n const {header, summary, mode = 'default'} = props;\n return (\n <div data-name=\"popinEnd\" className={style.wrapper}>\n <div className={style.slidesHeader}>\n <Header {...header} />\n </div>\n <Content {...summary} mode={mode} />\n </div>\n );\n};\n\nPopinEnd.propTypes = {\n header: PropTypes.shape(Header.propTypes),\n summary: PropTypes.shape(Summary.propTypes),\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nexport default PopinEnd;\n"],"file":"index.js"}
@@ -27,4 +27,4 @@
27
27
  .slidesHeader {
28
28
  display: none;
29
29
  }
30
- }
30
+ }
@@ -253,6 +253,60 @@
253
253
  margin: 0;
254
254
  }
255
255
 
256
+ .circle {
257
+ border-radius: 50%;
258
+ border: 1px solid light;
259
+ display: flex;
260
+ justify-content: center;
261
+ align-items: center;
262
+ }
263
+
264
+ .smallCircle {
265
+ height: calc(100vh + 136px);
266
+ width: calc(100vh + 136px);
267
+ composes: circle;
268
+ }
269
+ .mediumCircle {
270
+ height: calc(100vh + 386px);
271
+ width: calc(100vh + 386px);
272
+ composes: circle;
273
+ }
274
+ .largeCircle {
275
+ height: calc(100vh + 636px);
276
+ width: calc(100vh + 636px);
277
+ composes: circle;
278
+ }
279
+ .organismPlayerResultContainerScorm {
280
+ height: calc(100vh - 60px);
281
+ width: 100%;
282
+ display: flex;
283
+ justify-content: center;
284
+ align-items: center;
285
+ overflow: hidden;
286
+ }
287
+ .lottie {
288
+ display: flex;
289
+ height: 135%;
290
+ width: 135%;
291
+ transform: translate(-13%, -13%);
292
+ }
293
+ .animationContainer {
294
+ height: calc(100vh - 60px);
295
+ overflow: hidden;
296
+ position: absolute;
297
+ z-index: 1;
298
+ width: 100%;
299
+ }
300
+ .ie11Backup {
301
+ position: relative;
302
+ transform: translate(0%, 10%);
303
+ height: 80%;
304
+ width: 80%;
305
+ margin: 0 auto;
306
+ z-index: 1;
307
+ }
308
+
309
+
256
310
  @media mobile {
257
311
  .commentSection {
258
312
  flex-direction: column;
@@ -265,6 +319,17 @@
265
319
  width: 100%;
266
320
  }
267
321
  }
322
+ @media tablet {
323
+ .organismPlayerResultContainerScorm {
324
+ height: 100%;
325
+ }
326
+ .largeCircle , .mediumCircle, .smallCircle {
327
+ border: 0px;
328
+ height: 100%;
329
+ width: 100%;
330
+ border-radius: 0;
331
+ }
332
+ }
268
333
 
269
334
  .commentSectionLink {
270
335
  font-family: Gilroy;
@@ -21,6 +21,7 @@ import Feedback from '../../../molecule/feedback';
21
21
  import CardsList from '../../../molecule/dashboard/cards-list';
22
22
  import { innerHTML } from '../../../atom/label/style.css';
23
23
  import PopinHeader from '../popin-header';
24
+ import AtomLottieWrapper from '../../../atom/lottie-wrapper';
24
25
  import style from './summary.css';
25
26
 
26
27
  const Header = props => /*#__PURE__*/React.createElement(PopinHeader, props);
@@ -267,7 +268,8 @@ const Summary = (props, context) => {
267
268
  comment,
268
269
  footer,
269
270
  action,
270
- feedback
271
+ feedback,
272
+ mode
271
273
  } = props;
272
274
  const {
273
275
  skin
@@ -281,12 +283,59 @@ const Summary = (props, context) => {
281
283
  const footerView = footer && header ? /*#__PURE__*/React.createElement(Footer, _extends({}, footer, {
282
284
  color: primary
283
285
  })) : null;
284
- const feedbackView = feedback ? /*#__PURE__*/React.createElement(Feedback, feedback) : null;
285
- return /*#__PURE__*/React.createElement("div", {
286
- className: style.summaryWrapper
287
- }, /*#__PURE__*/React.createElement(Header, header), feedbackView, /*#__PURE__*/React.createElement(Action, _extends({}, action, {
286
+ const feedbackView = feedback ? /*#__PURE__*/React.createElement(Feedback, _extends({}, feedback, {
287
+ mode: mode
288
+ })) : null;
289
+ return /*#__PURE__*/React.createElement(BackgroundScorm, {
290
+ mode: mode,
291
+ failed: header.failed
292
+ }, /*#__PURE__*/React.createElement("div", {
293
+ className: mode !== 'scorm' ? style.summaryWrapper : null
294
+ }, /*#__PURE__*/React.createElement(Header, _extends({}, header, {
295
+ mode: mode
296
+ })), feedbackView, /*#__PURE__*/React.createElement(Action, _extends({}, action, {
288
297
  color: primary
289
- })), /*#__PURE__*/React.createElement(Cards, recommendation), commentView, footerView);
298
+ })), /*#__PURE__*/React.createElement(Cards, recommendation), commentView, footerView));
299
+ };
300
+
301
+ const BackgroundScorm = props => {
302
+ const {
303
+ mode = 'default',
304
+ children,
305
+ failed
306
+ } = props;
307
+ if (mode === 'scorm') return /*#__PURE__*/React.createElement("div", {
308
+ className: style.organismPlayerResultContainerScorm
309
+ }, /*#__PURE__*/React.createElement("div", {
310
+ className: style.animationContainer
311
+ }, !failed ? /*#__PURE__*/React.createElement(AtomLottieWrapper, _extends({
312
+ 'aria-label': 'aria lottie',
313
+ 'data-name': 'default-lottie',
314
+ className: undefined,
315
+ animationSrc: 'https://static-staging.coorpacademy.com/animations/review/confetti.json',
316
+ loop: undefined,
317
+ autoplay: true,
318
+ rendererSettings: {
319
+ hideOnTransparent: false,
320
+ animationClassName: ''
321
+ },
322
+ ie11ImageBackup: 'https://static-staging.coorpacademy.com/animations/review/conffeti_congrats.svg',
323
+ animationControl: undefined
324
+ }, {
325
+ loop: false,
326
+ animationControl: 'play',
327
+ autoplay: true,
328
+ "data-name": "lottie-wrapper",
329
+ className: style.lottie,
330
+ backupImageClassName: style.ie11Backup
331
+ })) : null), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
332
+ className: style.largeCircle
333
+ }, /*#__PURE__*/React.createElement("div", {
334
+ className: style.mediumCircle
335
+ }, /*#__PURE__*/React.createElement("div", {
336
+ className: style.smallCircle
337
+ }, children)))));
338
+ return children;
290
339
  };
291
340
 
292
341
  Summary.contextTypes = {
@@ -304,7 +353,8 @@ Summary.propTypes = process.env.NODE_ENV !== "production" ? {
304
353
  type: PropTypes.oneOf(_keys(actions)).isRequired
305
354
  }),
306
355
  recommendation: PropTypes.shape(CardsList.propTypes),
307
- feedback: PropTypes.shape(Feedback.propTypes)
356
+ feedback: PropTypes.shape(Feedback.propTypes),
357
+ mode: PropTypes.oneOf(['scorm', 'default'])
308
358
  } : {};
309
359
  export default Summary;
310
360
  //# sourceMappingURL=summary.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/template/app-player/popin-end/summary.js"],"names":["React","PropTypes","classnames","NovaSolidStatusCheckCircle2","CheckIcon","Provider","Button","Link","Discussion","Loader","Card","Feedback","CardsList","innerHTML","PopinHeader","style","Header","props","SimpleAction","color","prefix","title","button","buttonTitle","linkProps","simpleWrapper","simpleTexts","simplePrefix","simpleTitle","__html","backgroundColor","simpleButton","propTypes","string","shape","NextCourse","card","nextCourseWrapper","nextCourseTexts","nextCoursePrefix","nextCourseTitle","nextCourseCard","Subscribe","description","subscribeWrapper","subscribeTexts","subscribeDescription","subscribeTitle","subscribeButtonWrapper","subscribeButton","submitValue","actions","simple","subscribe","nextCourse","Action","type","actionProps","Type","oneOf","CardsLoader","loaderWrapper","CommentConfirmation","context","onClick","commentSectionTitle","confirmationLinkText","skin","dark","commentSection","commentSectionIconWrapper","commentSectionIcon","commentSectionTexts","commentSectionLink","node","children","contextTypes","childContextTypes","CommentSection","isSent","edition","confirmation","bool","Cards","cards","cardsWrapper","Footer","footer","Summary","header","recommendation","comment","action","feedback","primary","commentView","discussionWrapper","footerView","feedbackView","summaryWrapper","href","url","func","isRequired"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {get, getOr, keys, isEmpty} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {NovaSolidStatusCheckCircle2 as CheckIcon} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Button from '../../../atom/button';\nimport Link from '../../../atom/link';\nimport Discussion from '../../../organism/discussion';\nimport Loader from '../../../atom/loader';\nimport Card from '../../../molecule/card';\nimport Feedback from '../../../molecule/feedback';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport PopinHeader from '../popin-header';\nimport style from './summary.css';\n\nconst Header = props => <PopinHeader {...props} />;\n\nconst SimpleAction = ({color, prefix, title, button}) => {\n const {title: buttonTitle, ...linkProps} = button;\n return (\n <div data-name=\"simpleAction\" className={style.simpleWrapper}>\n <div className={style.simpleTexts}>\n <span data-name=\"simplePrefix\" className={style.simplePrefix}>\n {prefix}\n </span>\n <span\n data-name=\"simpleTitle\"\n className={classnames(style.simpleTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n <Button\n {...linkProps}\n type=\"link\"\n style={{\n backgroundColor: color\n }}\n className={style.simpleButton}\n submitValue={buttonTitle}\n />\n </div>\n );\n};\nSimpleAction.propTypes = {\n color: PropTypes.string,\n prefix: PropTypes.string,\n title: PropTypes.string,\n button: PropTypes.shape(Button.propTypes)\n};\n\nconst NextCourse = ({title, prefix, card}) => (\n <div data-name=\"nextCourse\" className={style.nextCourseWrapper}>\n <div className={style.nextCourseTexts}>\n <div className={style.nextCoursePrefix}>{prefix}</div>\n <div\n className={classnames(style.nextCourseTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n <div className={style.nextCourseCard}>\n <Card {...card} dataName={'popin-end-next-course'} />\n </div>\n </div>\n);\nNextCourse.propTypes = {\n title: PropTypes.string,\n prefix: PropTypes.string,\n card: PropTypes.shape(CardsList.propTypes)\n};\n\nconst Subscribe = ({title, description, button, card}) => {\n const {title: buttonTitle, ...linkProps} = button;\n return (\n <div className={style.subscribeWrapper}>\n <div className={style.subscribeTexts}>\n <div className={style.subscribeDescription}>{description}</div>\n <div\n className={classnames(style.subscribeTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <div className={style.subscribeButtonWrapper}>\n <Button\n {...linkProps}\n type=\"link\"\n className={style.subscribeButton}\n submitValue={buttonTitle}\n />\n </div>\n </div>\n <div>\n <Card {...card} dataName={'popin-end-subscribe'} />\n </div>\n </div>\n );\n};\n\nSubscribe.propTypes = {\n ...Button.propTypes.propTypes,\n title: Button.propTypes.submitValue\n};\n\nconst actions = {\n simple: SimpleAction,\n subscribe: Subscribe,\n nextCourse: NextCourse\n};\n\nconst Action = props => {\n const {type, ...actionProps} = props;\n const Type = get(type, actions);\n\n return Type ? <Type {...actionProps} /> : null;\n};\n\nAction.propTypes = {\n type: PropTypes.oneOf(keys(actions))\n};\n\nconst CardsLoader = () => (\n <div className={style.loaderWrapper}>\n <Loader />\n </div>\n);\n\nconst CommentConfirmation = (props, context) => {\n const {onClick, commentSectionTitle, confirmationLinkText} = props;\n const {skin} = context;\n const dark = get('common.dark', skin);\n\n return (\n <div className={style.commentSection}>\n <div className={style.commentSectionIconWrapper}>\n <CheckIcon className={style.commentSectionIcon} color={dark} />\n </div>\n <div className={style.commentSectionTexts}>\n <p>{commentSectionTitle}</p>\n <Link onClick={onClick} className={style.commentSectionLink}>\n {confirmationLinkText}\n </Link>\n </div>\n </div>\n );\n};\n\nCommentConfirmation.propTypes = {\n commentSectionTitle: PropTypes.node,\n confirmationLinkText: Link.propTypes.children,\n onClick: Link.propTypes.onClick\n};\n\nCommentConfirmation.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst CommentSection = props => {\n const {isSent, edition, confirmation} = props;\n if (isSent) {\n const {onClick, commentSectionTitle, confirmationLinkText} = confirmation;\n return (\n <CommentConfirmation\n onClick={onClick}\n commentSectionTitle={commentSectionTitle}\n confirmationLinkText={confirmationLinkText}\n />\n );\n }\n\n return <Discussion {...edition} />;\n};\n\nCommentSection.propTypes = {\n isSent: PropTypes.bool,\n edition: PropTypes.shape(Discussion.propTypes),\n confirmation: PropTypes.shape(CommentConfirmation.propTypes)\n};\n\nconst Cards = props => {\n const {cards} = props;\n\n return get('cards', props) === null ? (\n <CardsLoader />\n ) : (\n (isEmpty(cards) ? null : (\n <div className={style.cardsWrapper}>\n <CardsList {...props} dataName={'popin-end-recommendation'} />\n </div>\n )) || null\n );\n};\n\nCards.propTypes = CardsList.propTypes;\n\nconst Footer = ({title, color, ...linkProps}) => (\n <Link\n {...linkProps}\n style={{\n color\n }}\n className={style.footer}\n data-name=\"nextLink\"\n data-popin=\"popinEnd\"\n data-next=\"home\"\n >\n {title}\n </Link>\n);\n\nFooter.propTypes = {\n ...Link.propTypes,\n title: Link.propTypes.children,\n color: PropTypes.string\n};\n\nconst Summary = (props, context) => {\n const {header, recommendation, comment, footer, action, feedback} = props;\n const {skin} = context;\n const primary = getOr('#f0f', 'common.primary', skin);\n const commentView =\n comment && header ? (\n <div className={style.discussionWrapper}>\n <CommentSection {...comment} />\n </div>\n ) : null;\n const footerView = footer && header ? <Footer {...footer} color={primary} /> : null;\n const feedbackView = feedback ? <Feedback {...feedback} /> : null;\n\n return (\n <div className={style.summaryWrapper}>\n <Header {...header} />\n {feedbackView}\n <Action {...action} color={primary} />\n <Cards {...recommendation} />\n {commentView}\n {footerView}\n </div>\n );\n};\n\nSummary.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSummary.propTypes = {\n header: PropTypes.shape(PopinHeader.propTypes),\n footer: PropTypes.shape({\n title: PropTypes.string,\n href: PropTypes.url,\n onClick: PropTypes.func\n }),\n comment: PropTypes.shape(CommentSection.propTypes),\n action: PropTypes.shape({\n type: PropTypes.oneOf(keys(actions)).isRequired\n }),\n recommendation: PropTypes.shape(CardsList.propTypes),\n feedback: PropTypes.shape(Feedback.propTypes)\n};\n\nexport default Summary;\n"],"file":"summary.js"}
1
+ {"version":3,"sources":["../../../../src/template/app-player/popin-end/summary.js"],"names":["React","PropTypes","classnames","NovaSolidStatusCheckCircle2","CheckIcon","Provider","Button","Link","Discussion","Loader","Card","Feedback","CardsList","innerHTML","PopinHeader","AtomLottieWrapper","style","Header","props","SimpleAction","color","prefix","title","button","buttonTitle","linkProps","simpleWrapper","simpleTexts","simplePrefix","simpleTitle","__html","backgroundColor","simpleButton","propTypes","string","shape","NextCourse","card","nextCourseWrapper","nextCourseTexts","nextCoursePrefix","nextCourseTitle","nextCourseCard","Subscribe","description","subscribeWrapper","subscribeTexts","subscribeDescription","subscribeTitle","subscribeButtonWrapper","subscribeButton","submitValue","actions","simple","subscribe","nextCourse","Action","type","actionProps","Type","oneOf","CardsLoader","loaderWrapper","CommentConfirmation","context","onClick","commentSectionTitle","confirmationLinkText","skin","dark","commentSection","commentSectionIconWrapper","commentSectionIcon","commentSectionTexts","commentSectionLink","node","children","contextTypes","childContextTypes","CommentSection","isSent","edition","confirmation","bool","Cards","cards","cardsWrapper","Footer","footer","Summary","header","recommendation","comment","action","feedback","mode","primary","commentView","discussionWrapper","footerView","feedbackView","failed","summaryWrapper","BackgroundScorm","organismPlayerResultContainerScorm","animationContainer","className","undefined","animationSrc","loop","autoplay","rendererSettings","hideOnTransparent","animationClassName","ie11ImageBackup","animationControl","lottie","ie11Backup","largeCircle","mediumCircle","smallCircle","href","url","func","isRequired"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {get, getOr, keys, isEmpty} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {NovaSolidStatusCheckCircle2 as CheckIcon} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Button from '../../../atom/button';\nimport Link from '../../../atom/link';\nimport Discussion from '../../../organism/discussion';\nimport Loader from '../../../atom/loader';\nimport Card from '../../../molecule/card';\nimport Feedback from '../../../molecule/feedback';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport PopinHeader from '../popin-header';\nimport AtomLottieWrapper from '../../../atom/lottie-wrapper';\nimport style from './summary.css';\n\nconst Header = props => <PopinHeader {...props} />;\n\nconst SimpleAction = ({color, prefix, title, button}) => {\n const {title: buttonTitle, ...linkProps} = button;\n return (\n <div data-name=\"simpleAction\" className={style.simpleWrapper}>\n <div className={style.simpleTexts}>\n <span data-name=\"simplePrefix\" className={style.simplePrefix}>\n {prefix}\n </span>\n <span\n data-name=\"simpleTitle\"\n className={classnames(style.simpleTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n <Button\n {...linkProps}\n type=\"link\"\n style={{\n backgroundColor: color\n }}\n className={style.simpleButton}\n submitValue={buttonTitle}\n />\n </div>\n );\n};\nSimpleAction.propTypes = {\n color: PropTypes.string,\n prefix: PropTypes.string,\n title: PropTypes.string,\n button: PropTypes.shape(Button.propTypes)\n};\n\nconst NextCourse = ({title, prefix, card}) => (\n <div data-name=\"nextCourse\" className={style.nextCourseWrapper}>\n <div className={style.nextCourseTexts}>\n <div className={style.nextCoursePrefix}>{prefix}</div>\n <div\n className={classnames(style.nextCourseTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n <div className={style.nextCourseCard}>\n <Card {...card} dataName={'popin-end-next-course'} />\n </div>\n </div>\n);\nNextCourse.propTypes = {\n title: PropTypes.string,\n prefix: PropTypes.string,\n card: PropTypes.shape(CardsList.propTypes)\n};\n\nconst Subscribe = ({title, description, button, card}) => {\n const {title: buttonTitle, ...linkProps} = button;\n return (\n <div className={style.subscribeWrapper}>\n <div className={style.subscribeTexts}>\n <div className={style.subscribeDescription}>{description}</div>\n <div\n className={classnames(style.subscribeTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <div className={style.subscribeButtonWrapper}>\n <Button\n {...linkProps}\n type=\"link\"\n className={style.subscribeButton}\n submitValue={buttonTitle}\n />\n </div>\n </div>\n <div>\n <Card {...card} dataName={'popin-end-subscribe'} />\n </div>\n </div>\n );\n};\n\nSubscribe.propTypes = {\n ...Button.propTypes.propTypes,\n title: Button.propTypes.submitValue\n};\n\nconst actions = {\n simple: SimpleAction,\n subscribe: Subscribe,\n nextCourse: NextCourse\n};\n\nconst Action = props => {\n const {type, ...actionProps} = props;\n const Type = get(type, actions);\n\n return Type ? <Type {...actionProps} /> : null;\n};\n\nAction.propTypes = {\n type: PropTypes.oneOf(keys(actions))\n};\n\nconst CardsLoader = () => (\n <div className={style.loaderWrapper}>\n <Loader />\n </div>\n);\n\nconst CommentConfirmation = (props, context) => {\n const {onClick, commentSectionTitle, confirmationLinkText} = props;\n const {skin} = context;\n const dark = get('common.dark', skin);\n\n return (\n <div className={style.commentSection}>\n <div className={style.commentSectionIconWrapper}>\n <CheckIcon className={style.commentSectionIcon} color={dark} />\n </div>\n <div className={style.commentSectionTexts}>\n <p>{commentSectionTitle}</p>\n <Link onClick={onClick} className={style.commentSectionLink}>\n {confirmationLinkText}\n </Link>\n </div>\n </div>\n );\n};\n\nCommentConfirmation.propTypes = {\n commentSectionTitle: PropTypes.node,\n confirmationLinkText: Link.propTypes.children,\n onClick: Link.propTypes.onClick\n};\n\nCommentConfirmation.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst CommentSection = props => {\n const {isSent, edition, confirmation} = props;\n if (isSent) {\n const {onClick, commentSectionTitle, confirmationLinkText} = confirmation;\n return (\n <CommentConfirmation\n onClick={onClick}\n commentSectionTitle={commentSectionTitle}\n confirmationLinkText={confirmationLinkText}\n />\n );\n }\n\n return <Discussion {...edition} />;\n};\n\nCommentSection.propTypes = {\n isSent: PropTypes.bool,\n edition: PropTypes.shape(Discussion.propTypes),\n confirmation: PropTypes.shape(CommentConfirmation.propTypes)\n};\n\nconst Cards = props => {\n const {cards} = props;\n\n return get('cards', props) === null ? (\n <CardsLoader />\n ) : (\n (isEmpty(cards) ? null : (\n <div className={style.cardsWrapper}>\n <CardsList {...props} dataName={'popin-end-recommendation'} />\n </div>\n )) || null\n );\n};\n\nCards.propTypes = CardsList.propTypes;\n\nconst Footer = ({title, color, ...linkProps}) => (\n <Link\n {...linkProps}\n style={{\n color\n }}\n className={style.footer}\n data-name=\"nextLink\"\n data-popin=\"popinEnd\"\n data-next=\"home\"\n >\n {title}\n </Link>\n);\n\nFooter.propTypes = {\n ...Link.propTypes,\n title: Link.propTypes.children,\n color: PropTypes.string\n};\n\nconst Summary = (props, context) => {\n const {header, recommendation, comment, footer, action, feedback, mode} = props;\n const {skin} = context;\n const primary = getOr('#f0f', 'common.primary', skin);\n const commentView =\n comment && header ? (\n <div className={style.discussionWrapper}>\n <CommentSection {...comment} />\n </div>\n ) : null;\n const footerView = footer && header ? <Footer {...footer} color={primary} /> : null;\n const feedbackView = feedback ? <Feedback {...feedback} mode={mode} /> : null;\n\n return (\n <BackgroundScorm mode={mode} failed={header.failed}>\n <div className={mode !== 'scorm' ? style.summaryWrapper : null}>\n <Header {...header} mode={mode} />\n {feedbackView}\n <Action {...action} color={primary} />\n <Cards {...recommendation} />\n {commentView}\n {footerView}\n </div>\n </BackgroundScorm>\n );\n};\n\nconst BackgroundScorm = props => {\n const {mode = 'default', children, failed} = props;\n if (mode === 'scorm')\n return (\n <div className={style.organismPlayerResultContainerScorm}>\n <div className={style.animationContainer}>\n {!failed ? (\n <AtomLottieWrapper\n {...{\n 'aria-label': 'aria lottie',\n 'data-name': 'default-lottie',\n className: undefined,\n animationSrc:\n 'https://static-staging.coorpacademy.com/animations/review/confetti.json',\n loop: undefined,\n autoplay: true,\n rendererSettings: {\n hideOnTransparent: false,\n animationClassName: ''\n },\n ie11ImageBackup:\n 'https://static-staging.coorpacademy.com/animations/review/conffeti_congrats.svg',\n animationControl: undefined\n }}\n loop={false}\n animationControl={'play'}\n autoplay\n data-name=\"lottie-wrapper\"\n className={style.lottie}\n backupImageClassName={style.ie11Backup}\n />\n ) : null}\n </div>\n <div>\n <div className={style.largeCircle}>\n <div className={style.mediumCircle}>\n <div className={style.smallCircle}>{children}</div>\n </div>\n </div>\n </div>\n </div>\n );\n return children;\n};\n\nSummary.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSummary.propTypes = {\n header: PropTypes.shape(PopinHeader.propTypes),\n footer: PropTypes.shape({\n title: PropTypes.string,\n href: PropTypes.url,\n onClick: PropTypes.func\n }),\n comment: PropTypes.shape(CommentSection.propTypes),\n action: PropTypes.shape({\n type: PropTypes.oneOf(keys(actions)).isRequired\n }),\n recommendation: PropTypes.shape(CardsList.propTypes),\n feedback: PropTypes.shape(Feedback.propTypes),\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nexport default Summary;\n"],"file":"summary.js"}
@@ -16,7 +16,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
16
16
 
17
17
  import React from 'react';
18
18
  import PropTypes from 'prop-types';
19
- import { NovaCompositionNavigationArrowRight as ArrowRight, NovaCompositionCoorpacademyCharts as ChartsIcon, NovaCompositionCoorpacademyStar as StarIcon } from '@coorpacademy/nova-icons';
19
+ import { NovaCompositionNavigationArrowRight as ArrowRight, NovaCompositionCoorpacademyCharts as ChartsIcon, NovaCompositionCoorpacademyStar as StarIcon, NovaCompositionCoorpacademyCheck as CheckIcon, NovaSolidStatusClose as Close } from '@coorpacademy/nova-icons';
20
20
  import classnames from 'classnames';
21
21
  import Loader from '../../../atom/loader';
22
22
  import Life from '../../../atom/life';
@@ -222,8 +222,9 @@ IconsPart.propTypes = process.env.NODE_ENV !== "production" ? {
222
222
  revival: PropTypes.bool
223
223
  } : {};
224
224
 
225
- const buildClass = (value, success, failed, loading) => {
225
+ const buildClass = (value, success, failed, loading, mode = 'default', scormStyle) => {
226
226
  if (loading && _isNil(value)) return loading;
227
+ if (mode === 'scorm') return scormStyle;
227
228
  return value ? failed : success;
228
229
  };
229
230
 
@@ -240,6 +241,22 @@ const getLinkStyle = ({
240
241
  }
241
242
  };
242
243
 
244
+ const renderIconStatusScorm = failed => {
245
+ return /*#__PURE__*/React.createElement("div", {
246
+ className: failed ? style.iconCloseContainer : style.iconSuccessContainer
247
+ }, failed ? /*#__PURE__*/React.createElement(Close, {
248
+ className: style.failIcon
249
+ }) : /*#__PURE__*/React.createElement(CheckIcon, {
250
+ className: style.checkIcon
251
+ }));
252
+ };
253
+
254
+ const buildDefaultOrScormStyle = (defaultStyle, mode = 'default', styleScorm, failed, failedStyle = null) => {
255
+ if (mode === 'scorm' && failed && failedStyle) return failedStyle;
256
+ if (mode === 'scorm') return styleScorm;
257
+ return defaultStyle;
258
+ };
259
+
243
260
  const CorrectionPart = props => {
244
261
  const {
245
262
  failed,
@@ -248,26 +265,27 @@ const CorrectionPart = props => {
248
265
  subtitle,
249
266
  stars,
250
267
  rank,
251
- gameOver
268
+ gameOver,
269
+ mode = 'default'
252
270
  } = props;
253
271
 
254
272
  const isLoading = _isNil(failed);
255
273
 
256
- const className = buildClass(failed, stars && rank ? style.correctionSectionEndSuccess : style.correctionSectionSuccess, gameOver ? style.correctionSectionFailGameOver : style.correctionSectionFail, style.correctionSectionLoading);
274
+ const className = buildClass(failed, stars && rank ? style.correctionSectionEndSuccess : style.correctionSectionSuccess, gameOver ? style.correctionSectionFailGameOver : style.correctionSectionFail, style.correctionSectionLoading, mode, style.resultContenantContainerScorm);
257
275
  return /*#__PURE__*/React.createElement("div", {
258
276
  "data-name": "correctionSection",
259
277
  className: className
260
- }, /*#__PURE__*/React.createElement("div", {
261
- className: style.titlesWrapper
278
+ }, mode === 'scorm' && renderIconStatusScorm(failed), /*#__PURE__*/React.createElement("div", {
279
+ className: buildDefaultOrScormStyle(style.titlesWrapper, mode, style.titlesWrapperScorm, failed)
262
280
  }, isLoading ? /*#__PURE__*/React.createElement(Loader, null) : null, /*#__PURE__*/React.createElement("h1", {
263
281
  "data-name": "title",
264
- className: classnames(style.title, innerHTML) // eslint-disable-next-line react/no-danger
282
+ className: buildDefaultOrScormStyle(classnames(style.title, innerHTML), mode, style.resultTitleScorm, failed) // eslint-disable-next-line react/no-danger
265
283
  ,
266
284
  dangerouslySetInnerHTML: {
267
285
  __html: title
268
286
  }
269
287
  }), /*#__PURE__*/React.createElement("h2", {
270
- className: style.subtitle
288
+ className: buildDefaultOrScormStyle(style.subtitle, mode, style.resultSubtitleScorm, failed, style.statusPlayerResultFailScorm)
271
289
  }, subtitle), failed && !_isEmpty(corrections) ? /*#__PURE__*/React.createElement(AnswersCorrection, {
272
290
  corrections: corrections
273
291
  }) : null), /*#__PURE__*/React.createElement(IconsPart, props));
@@ -384,7 +402,8 @@ const PopinHeader = (props, context) => {
384
402
  cta,
385
403
  extraLifeGranted,
386
404
  gameOver = false,
387
- type
405
+ type,
406
+ mode = 'default'
388
407
  } = props;
389
408
  const state = buildClass(failed, 'success', 'failed', null);
390
409
  const nextLink = cta ? /*#__PURE__*/React.createElement(NextQuestionPart, {
@@ -400,7 +419,7 @@ const PopinHeader = (props, context) => {
400
419
  "data-name": "popinHeader",
401
420
  "data-state": state
402
421
  }, /*#__PURE__*/React.createElement("div", {
403
- className: style.headerTitle
422
+ className: mode !== 'scorm' ? style.headerTitle : null
404
423
  }, /*#__PURE__*/React.createElement(CorrectionPart, {
405
424
  title: title,
406
425
  subtitle: subtitle,
@@ -411,7 +430,8 @@ const PopinHeader = (props, context) => {
411
430
  failed: failed,
412
431
  gameOver: gameOver,
413
432
  revival: extraLifeGranted,
414
- corrections: corrections
433
+ corrections: corrections,
434
+ mode: mode
415
435
  }), nextLink));
416
436
  };
417
437
 
@@ -430,7 +450,8 @@ PopinHeader.propTypes = process.env.NODE_ENV !== "production" ? {
430
450
  animated: CorrectionPart.propTypes.animated,
431
451
  stars: CorrectionPart.propTypes.stars,
432
452
  rank: CorrectionPart.propTypes.rank,
433
- corrections: CorrectionPart.propTypes.corrections
453
+ corrections: CorrectionPart.propTypes.corrections,
454
+ mode: PropTypes.oneOf(['scorm', 'default'])
434
455
  } : {};
435
456
  export default PopinHeader;
436
457
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/template/app-player/popin-header/index.js"],"names":["React","PropTypes","NovaCompositionNavigationArrowRight","ArrowRight","NovaCompositionCoorpacademyCharts","ChartsIcon","NovaCompositionCoorpacademyStar","StarIcon","classnames","Loader","Life","Link","Animation","EASE_OUT_CUBIC","Transition","AnimationScheduler","AnimationAdapter","Provider","innerHTML","style","separator","index","answerSeparator","joinBySeparator","elements","separators","length","AnswersCorrection","corrections","answers","map","correction","key","isCorrect","correctAnswer","wrongAnswer","__html","answer","fullAnswer","propTypes","arrayOf","shape","string","isRequired","bool","formatPlusSign","value","Rank","failed","rank","animated","onAnimationEnd","skin","positive","centerContent","bumped","iconBubble","icon","iconText","progress","contextTypes","childContextTypes","Stars","stars","Lifes","lives","revival","life","count","IconsPart","props","iconsWrapper","buildClass","success","loading","getLinkStyle","gameOver","extraLifeGranted","oneMoreLife","CorrectionPart","title","subtitle","isLoading","className","correctionSectionEndSuccess","correctionSectionSuccess","correctionSectionFailGameOver","correctionSectionFail","correctionSectionLoading","titlesWrapper","NextQuestionPart","context","cta","type","nextStepTitle","showNextLevel","linkProps","dataNext","nextStep","gameOverSubtitle","nextSection","wrapperNextSection","nextButton","nextButtonIcon","oneOf","number","PopinHeader","state","nextLink","header","headerWithoutCTA","headerTitle"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n compact,\n flatten,\n get,\n isNil,\n pipe,\n times,\n zip,\n round,\n parseInt as _parseInt,\n multiply,\n isEmpty\n} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaCompositionCoorpacademyCharts as ChartsIcon,\n NovaCompositionCoorpacademyStar as StarIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Loader from '../../../atom/loader';\nimport Life from '../../../atom/life';\nimport Link from '../../../atom/link';\nimport Animation, {EASE_OUT_CUBIC} from '../../../hoc/animation';\nimport Transition from '../../../hoc/transition';\nimport AnimationScheduler, {AnimationAdapter} from '../../../hoc/animation-scheduler';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport style from './style.css';\n\nconst separator = index => (\n <span key={index} className={style.answerSeparator}>\n /\n </span>\n);\n\nconst joinBySeparator = elements => {\n const separators = times(separator, elements.length - 1);\n return pipe(zip, flatten, compact)(elements, separators);\n};\n\nconst AnswersCorrection = ({corrections}) => {\n const answers = corrections.map((correction, index) => {\n const key = `answer_${index}`;\n return (\n <span\n key={key}\n data-name=\"answer\"\n data-correct={correction.isCorrect}\n className={classnames(\n correction.isCorrect ? style.correctAnswer : style.wrongAnswer,\n innerHTML\n )}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: correction.answer}}\n />\n );\n }, corrections);\n return <p className={style.fullAnswer}>{joinBySeparator(answers)}</p>;\n};\n\nAnswersCorrection.propTypes = {\n corrections: PropTypes.arrayOf(\n PropTypes.shape({\n answer: PropTypes.string.isRequired,\n isCorrect: PropTypes.bool.isRequired\n })\n )\n};\n\nconst formatPlusSign = value => (value >= 0 ? '+' : '') + value;\n\nconst Rank = ({failed, rank, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(rank)) return null;\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <ChartsIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(rank)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nRank.propTypes = {\n failed: PropTypes.bool,\n rank: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nRank.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Stars = ({failed, stars, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(stars)) return null;\n\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <StarIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span data-name=\"iconText\" className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(stars)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nStars.propTypes = {\n failed: PropTypes.bool,\n stars: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nStars.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Lifes = ({lives, failed, animated, revival}) => {\n if (isNil(lives)) return null;\n\n return (\n <Life\n failed={failed}\n count={lives}\n animated={animated}\n revival={revival}\n className={style.life}\n />\n );\n};\n\nLifes.propTypes = {\n lives: Life.propTypes.count,\n failed: Life.propTypes.failed,\n animated: Life.propTypes.animated,\n revival: Life.propTypes.revival\n};\n\nconst IconsPart = props => {\n const {lives, failed, stars, rank, animated, revival} = props;\n return (\n <AnimationScheduler animated>\n <div className={style.iconsWrapper}>\n <Lifes lives={lives} failed={failed} animated={animated} revival={revival} />\n\n <AnimationAdapter name=\"stars\">\n <Stars stars={stars} fail={failed} />\n </AnimationAdapter>\n <AnimationAdapter name=\"rank\" after=\"stars\">\n <Rank rank={rank} fail={failed} />\n </AnimationAdapter>\n </div>\n </AnimationScheduler>\n );\n};\n\nIconsPart.propTypes = {\n lives: Lifes.propTypes.lives,\n failed: Lifes.propTypes.failed,\n stars: Stars.propTypes.stars,\n rank: Rank.propTypes.rank,\n animated: AnimationScheduler.propTypes.animated,\n revival: PropTypes.bool\n};\n\nconst buildClass = (value, success, failed, loading) => {\n if (loading && isNil(value)) return loading;\n return value ? failed : success;\n};\n\nconst getLinkStyle = ({gameOver, extraLifeGranted}) => {\n if (extraLifeGranted) {\n return style.oneMoreLife;\n } else if (gameOver) {\n return style.gameOver;\n } else {\n return null;\n }\n};\n\nconst CorrectionPart = props => {\n const {failed, corrections, title, subtitle, stars, rank, gameOver} = props;\n const isLoading = isNil(failed);\n const className = buildClass(\n failed,\n stars && rank ? style.correctionSectionEndSuccess : style.correctionSectionSuccess,\n gameOver ? style.correctionSectionFailGameOver : style.correctionSectionFail,\n style.correctionSectionLoading\n );\n\n return (\n <div data-name=\"correctionSection\" className={className}>\n <div className={style.titlesWrapper}>\n {isLoading ? <Loader /> : null}\n <h1\n data-name=\"title\"\n className={classnames(style.title, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <h2 className={style.subtitle}>{subtitle}</h2>\n {failed && !isEmpty(corrections) ? <AnswersCorrection corrections={corrections} /> : null}\n </div>\n <IconsPart {...props} />\n </div>\n );\n};\n\nCorrectionPart.propTypes = {\n ...IconsPart.propTypes,\n failed: PropTypes.bool,\n corrections: AnswersCorrection.propTypes.corrections,\n title: PropTypes.string,\n subtitle: PropTypes.string,\n stars: PropTypes.string,\n rank: PropTypes.string,\n gameOver: PropTypes.bool\n};\n\nconst NextQuestionPart = (props, context) => {\n const {cta, type, extraLifeGranted, gameOver, failed = false, lives = 0} = props;\n const {title, nextStepTitle, showNextLevel = false, ...linkProps} = cta || {};\n let dataNext;\n\n switch (type) {\n case 'popinCorrection': {\n if (gameOver) {\n dataNext = 'game-over';\n } else if (failed) {\n if (lives > 0) {\n dataNext = 'continue-failure';\n } else if (extraLifeGranted) {\n dataNext = 'continue-used-extra-life';\n }\n } else {\n dataNext = 'continue-success';\n }\n break;\n }\n\n case 'popinEnd': {\n if (failed) {\n dataNext = 'redo-content';\n } else if (showNextLevel) {\n dataNext = 'next-level';\n } else {\n dataNext = 'home';\n }\n }\n }\n\n const nextStep = nextStepTitle ? (\n <div\n className={classnames(gameOver ? style.gameOverSubtitle : style.nextStepTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: nextStepTitle}}\n />\n ) : null;\n\n return (\n <Link\n {...linkProps}\n className={classnames(style.nextSection, getLinkStyle({gameOver, extraLifeGranted}))}\n data-name=\"nextLink\"\n data-popin={type}\n data-next={dataNext}\n >\n <div className={style.wrapperNextSection}>\n <div className={style.nextButton}>\n {title}\n <ArrowRight color=\"inherit\" className={style.nextButtonIcon} />\n </div>\n {nextStep}\n </div>\n </Link>\n );\n};\n\nNextQuestionPart.propTypes = {\n cta: PropTypes.shape({\n ...Link.propTypes,\n title: PropTypes.string,\n nextStepTitle: PropTypes.string,\n showNextLevel: PropTypes.bool\n }),\n type: PropTypes.oneOf(['popinCorrection', 'popinEnd']).isRequired,\n extraLifeGranted: PropTypes.bool,\n gameOver: PropTypes.bool,\n failed: PropTypes.bool,\n lives: PropTypes.number\n};\n\nconst PopinHeader = (props, context) => {\n const {\n animated,\n failed,\n title,\n subtitle,\n lives,\n stars,\n rank,\n corrections,\n cta,\n extraLifeGranted,\n gameOver = false,\n type\n } = props;\n\n const state = buildClass(failed, 'success', 'failed', null);\n\n const nextLink = cta ? (\n <NextQuestionPart\n cta={cta}\n type={type}\n extraLifeGranted={extraLifeGranted}\n failed={failed}\n gameOver={gameOver}\n lives={lives}\n />\n ) : null;\n\n return (\n <div\n className={cta ? style.header : style.headerWithoutCTA}\n data-name=\"popinHeader\"\n data-state={state}\n >\n <div className={style.headerTitle}>\n <CorrectionPart\n title={title}\n subtitle={subtitle}\n lives={lives}\n animated={animated}\n stars={stars}\n rank={rank}\n failed={failed}\n gameOver={gameOver}\n revival={extraLifeGranted}\n corrections={corrections}\n />\n {nextLink}\n </div>\n </div>\n );\n};\n\nPopinHeader.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nPopinHeader.propTypes = {\n cta: NextQuestionPart.propTypes.cta,\n type: NextQuestionPart.propTypes.type,\n extraLifeGranted: NextQuestionPart.propTypes.extraLifeGranted,\n failed: NextQuestionPart.propTypes.failed,\n gameOver: NextQuestionPart.propTypes.gameOver,\n lives: NextQuestionPart.propTypes.lives,\n title: CorrectionPart.propTypes.title,\n subtitle: CorrectionPart.propTypes.subtitle,\n animated: CorrectionPart.propTypes.animated,\n stars: CorrectionPart.propTypes.stars,\n rank: CorrectionPart.propTypes.rank,\n corrections: CorrectionPart.propTypes.corrections\n};\n\nexport default PopinHeader;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/template/app-player/popin-header/index.js"],"names":["React","PropTypes","NovaCompositionNavigationArrowRight","ArrowRight","NovaCompositionCoorpacademyCharts","ChartsIcon","NovaCompositionCoorpacademyStar","StarIcon","NovaCompositionCoorpacademyCheck","CheckIcon","NovaSolidStatusClose","Close","classnames","Loader","Life","Link","Animation","EASE_OUT_CUBIC","Transition","AnimationScheduler","AnimationAdapter","Provider","innerHTML","style","separator","index","answerSeparator","joinBySeparator","elements","separators","length","AnswersCorrection","corrections","answers","map","correction","key","isCorrect","correctAnswer","wrongAnswer","__html","answer","fullAnswer","propTypes","arrayOf","shape","string","isRequired","bool","formatPlusSign","value","Rank","failed","rank","animated","onAnimationEnd","skin","positive","centerContent","bumped","iconBubble","icon","iconText","progress","contextTypes","childContextTypes","Stars","stars","Lifes","lives","revival","life","count","IconsPart","props","iconsWrapper","buildClass","success","loading","mode","scormStyle","getLinkStyle","gameOver","extraLifeGranted","oneMoreLife","renderIconStatusScorm","iconCloseContainer","iconSuccessContainer","failIcon","checkIcon","buildDefaultOrScormStyle","defaultStyle","styleScorm","failedStyle","CorrectionPart","title","subtitle","isLoading","className","correctionSectionEndSuccess","correctionSectionSuccess","correctionSectionFailGameOver","correctionSectionFail","correctionSectionLoading","resultContenantContainerScorm","titlesWrapper","titlesWrapperScorm","resultTitleScorm","resultSubtitleScorm","statusPlayerResultFailScorm","NextQuestionPart","context","cta","type","nextStepTitle","showNextLevel","linkProps","dataNext","nextStep","gameOverSubtitle","nextSection","wrapperNextSection","nextButton","nextButtonIcon","oneOf","number","PopinHeader","state","nextLink","header","headerWithoutCTA","headerTitle"],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAcA,SACEC,mCAAmC,IAAIC,UADzC,EAEEC,iCAAiC,IAAIC,UAFvC,EAGEC,+BAA+B,IAAIC,QAHrC,EAIEC,gCAAgC,IAAIC,SAJtC,EAKEC,oBAAoB,IAAIC,KAL1B,QAMO,0BANP;AAOA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,MAAP,MAAmB,sBAAnB;AACA,OAAOC,IAAP,MAAiB,oBAAjB;AACA,OAAOC,IAAP,MAAiB,oBAAjB;AACA,OAAOC,SAAP,IAAmBC,cAAnB,QAAwC,wBAAxC;AACA,OAAOC,UAAP,MAAuB,yBAAvB;AACA,OAAOC,kBAAP,IAA4BC,gBAA5B,QAAmD,kCAAnD;AACA,OAAOC,QAAP,MAAqB,wBAArB;AACA,SAAQC,SAAR,QAAwB,+BAAxB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,SAAS,GAAGC,KAAK,iBACrB;AAAM,EAAA,GAAG,EAAEA,KAAX;AAAkB,EAAA,SAAS,EAAEF,KAAK,CAACG;AAAnC,OADF;;AAMA,MAAMC,eAAe,GAAGC,QAAQ,IAAI;AAClC,QAAMC,UAAU,GAAG,OAAML,SAAN,EAAiBI,QAAQ,CAACE,MAAT,GAAkB,CAAnC,CAAnB;;AACA,SAAO,gCAA4BF,QAA5B,EAAsCC,UAAtC,CAAP;AACD,CAHD;;AAKA,MAAME,iBAAiB,GAAG,CAAC;AAACC,EAAAA;AAAD,CAAD,KAAmB;AAC3C,QAAMC,OAAO,GAAGD,WAAW,CAACE,GAAZ,CAAgB,CAACC,UAAD,EAAaV,KAAb,KAAuB;AACrD,UAAMW,GAAG,GAAI,UAASX,KAAM,EAA5B;AACA,wBACE;AACE,MAAA,GAAG,EAAEW,GADP;AAEE,mBAAU,QAFZ;AAGE,sBAAcD,UAAU,CAACE,SAH3B;AAIE,MAAA,SAAS,EAAEzB,UAAU,CACnBuB,UAAU,CAACE,SAAX,GAAuBd,KAAK,CAACe,aAA7B,GAA6Cf,KAAK,CAACgB,WADhC,EAEnBjB,SAFmB,CAJvB,CAQE;AARF;AASE,MAAA,uBAAuB,EAAE;AAACkB,QAAAA,MAAM,EAAEL,UAAU,CAACM;AAApB;AAT3B,MADF;AAaD,GAfe,EAebT,WAfa,CAAhB;AAgBA,sBAAO;AAAG,IAAA,SAAS,EAAET,KAAK,CAACmB;AAApB,KAAiCf,eAAe,CAACM,OAAD,CAAhD,CAAP;AACD,CAlBD;;AAoBAF,iBAAiB,CAACY,SAAlB,2CAA8B;AAC5BX,EAAAA,WAAW,EAAE/B,SAAS,CAAC2C,OAAV,CACX3C,SAAS,CAAC4C,KAAV,CAAgB;AACdJ,IAAAA,MAAM,EAAExC,SAAS,CAAC6C,MAAV,CAAiBC,UADX;AAEdV,IAAAA,SAAS,EAAEpC,SAAS,CAAC+C,IAAV,CAAeD;AAFZ,GAAhB,CADW;AADe,CAA9B;;AASA,MAAME,cAAc,GAAGC,KAAK,IAAI,CAACA,KAAK,IAAI,CAAT,GAAa,GAAb,GAAmB,EAApB,IAA0BA,KAA1D;;AAEA,MAAMC,IAAI,GAAG,CAAC;AAACC,EAAAA,MAAD;AAASC,EAAAA,IAAT;AAAeC,EAAAA,QAAf;AAAyBC,EAAAA;AAAzB,CAAD,EAA2C;AAACC,EAAAA;AAAD,CAA3C,KAAsD;AACjE,QAAMC,QAAQ,GAAG,KAAI,iBAAJ,EAAuBD,IAAvB,CAAjB;;AACA,MAAIJ,MAAM,IAAI,OAAMC,IAAN,CAAd,EAA2B,OAAO,IAAP;AAC3B,sBACE,oBAAC,kBAAD;AAAoB,IAAA,QAAQ,EAAEC,QAA9B;AAAwC,IAAA,cAAc,EAAEC;AAAxD,kBACE;AAAK,IAAA,SAAS,EAAEhC,KAAK,CAACmC;AAAtB,kBACE,oBAAC,UAAD;AAAY,IAAA,IAAI,EAAC,OAAjB;AAAyB,IAAA,KAAK,EAAC,SAA/B;AAAyC,IAAA,SAAS,EAAEnC,KAAK,CAACoC;AAA1D,kBACE;AAAK,IAAA,SAAS,EAAEpC,KAAK,CAACqC;AAAtB,kBACE,oBAAC,UAAD;AAAY,IAAA,SAAS,EAAErC,KAAK,CAACsC,IAA7B;AAAmC,IAAA,KAAK,EAAEJ;AAA1C,IADF,CADF,CADF,eAME;AAAM,IAAA,SAAS,EAAElC,KAAK,CAACuC;AAAvB,kBACE,oBAAC,SAAD;AAAW,IAAA,IAAI,EAAC,SAAhB;AAA0B,IAAA,MAAM,EAAE7C,cAAlC;AAAkD,IAAA,QAAQ,EAAE;AAA5D,KACG8C,QAAQ,IAAI,MAAK,WAAU,EAAV,CAAL,EAAoB,UAASA,QAAT,CAApB,UAA+Cd,cAA/C,EAA+DI,IAA/D,CADf,CADF,CANF,CADF,CADF;AAgBD,CAnBD;;AAqBAF,IAAI,CAACR,SAAL,2CAAiB;AACfS,EAAAA,MAAM,EAAEnD,SAAS,CAAC+C,IADH;AAEfK,EAAAA,IAAI,EAAEpD,SAAS,CAAC6C,MAFD;AAGfQ,EAAAA,QAAQ,EAAEtC,SAAS,CAAC2B,SAAV,CAAoBW,QAHf;AAIfC,EAAAA,cAAc,EAAEvC,SAAS,CAAC2B,SAAV,CAAoBY;AAJrB,CAAjB;AAOAJ,IAAI,CAACa,YAAL,GAAoB;AAClBR,EAAAA,IAAI,EAAEnC,QAAQ,CAAC4C,iBAAT,CAA2BT;AADf,CAApB;;AAIA,MAAMU,KAAK,GAAG,CAAC;AAACd,EAAAA,MAAD;AAASe,EAAAA,KAAT;AAAgBb,EAAAA,QAAhB;AAA0BC,EAAAA;AAA1B,CAAD,EAA4C;AAACC,EAAAA;AAAD,CAA5C,KAAuD;AACnE,QAAMC,QAAQ,GAAG,KAAI,iBAAJ,EAAuBD,IAAvB,CAAjB;;AACA,MAAIJ,MAAM,IAAI,OAAMe,KAAN,CAAd,EAA4B,OAAO,IAAP;AAE5B,sBACE,oBAAC,kBAAD;AAAoB,IAAA,QAAQ,EAAEb,QAA9B;AAAwC,IAAA,cAAc,EAAEC;AAAxD,kBACE;AAAK,IAAA,SAAS,EAAEhC,KAAK,CAACmC;AAAtB,kBACE,oBAAC,UAAD;AAAY,IAAA,IAAI,EAAC,OAAjB;AAAyB,IAAA,KAAK,EAAC,SAA/B;AAAyC,IAAA,SAAS,EAAEnC,KAAK,CAACoC;AAA1D,kBACE;AAAK,IAAA,SAAS,EAAEpC,KAAK,CAACqC;AAAtB,kBACE,oBAAC,QAAD;AAAU,IAAA,SAAS,EAAErC,KAAK,CAACsC,IAA3B;AAAiC,IAAA,KAAK,EAAEJ;AAAxC,IADF,CADF,CADF,eAME;AAAM,iBAAU,UAAhB;AAA2B,IAAA,SAAS,EAAElC,KAAK,CAACuC;AAA5C,kBACE,oBAAC,SAAD;AAAW,IAAA,IAAI,EAAC,SAAhB;AAA0B,IAAA,MAAM,EAAE7C,cAAlC;AAAkD,IAAA,QAAQ,EAAE;AAA5D,KACG8C,QAAQ,IAAI,MAAK,WAAU,EAAV,CAAL,EAAoB,UAASA,QAAT,CAApB,UAA+Cd,cAA/C,EAA+DkB,KAA/D,CADf,CADF,CANF,CADF,CADF;AAgBD,CApBD;;AAsBAD,KAAK,CAACvB,SAAN,2CAAkB;AAChBS,EAAAA,MAAM,EAAEnD,SAAS,CAAC+C,IADF;AAEhBmB,EAAAA,KAAK,EAAElE,SAAS,CAAC6C,MAFD;AAGhBQ,EAAAA,QAAQ,EAAEtC,SAAS,CAAC2B,SAAV,CAAoBW,QAHd;AAIhBC,EAAAA,cAAc,EAAEvC,SAAS,CAAC2B,SAAV,CAAoBY;AAJpB,CAAlB;AAOAW,KAAK,CAACF,YAAN,GAAqB;AACnBR,EAAAA,IAAI,EAAEnC,QAAQ,CAAC4C,iBAAT,CAA2BT;AADd,CAArB;;AAIA,MAAMY,KAAK,GAAG,CAAC;AAACC,EAAAA,KAAD;AAAQjB,EAAAA,MAAR;AAAgBE,EAAAA,QAAhB;AAA0BgB,EAAAA;AAA1B,CAAD,KAAwC;AACpD,MAAI,OAAMD,KAAN,CAAJ,EAAkB,OAAO,IAAP;AAElB,sBACE,oBAAC,IAAD;AACE,IAAA,MAAM,EAAEjB,MADV;AAEE,IAAA,KAAK,EAAEiB,KAFT;AAGE,IAAA,QAAQ,EAAEf,QAHZ;AAIE,IAAA,OAAO,EAAEgB,OAJX;AAKE,IAAA,SAAS,EAAE/C,KAAK,CAACgD;AALnB,IADF;AASD,CAZD;;AAcAH,KAAK,CAACzB,SAAN,2CAAkB;AAChB0B,EAAAA,KAAK,EAAEvD,IAAI,CAAC6B,SAAL,CAAe6B,KADN;AAEhBpB,EAAAA,MAAM,EAAEtC,IAAI,CAAC6B,SAAL,CAAeS,MAFP;AAGhBE,EAAAA,QAAQ,EAAExC,IAAI,CAAC6B,SAAL,CAAeW,QAHT;AAIhBgB,EAAAA,OAAO,EAAExD,IAAI,CAAC6B,SAAL,CAAe2B;AAJR,CAAlB;;AAOA,MAAMG,SAAS,GAAGC,KAAK,IAAI;AACzB,QAAM;AAACL,IAAAA,KAAD;AAAQjB,IAAAA,MAAR;AAAgBe,IAAAA,KAAhB;AAAuBd,IAAAA,IAAvB;AAA6BC,IAAAA,QAA7B;AAAuCgB,IAAAA;AAAvC,MAAkDI,KAAxD;AACA,sBACE,oBAAC,kBAAD;AAAoB,IAAA,QAAQ;AAA5B,kBACE;AAAK,IAAA,SAAS,EAAEnD,KAAK,CAACoD;AAAtB,kBACE,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAEN,KAAd;AAAqB,IAAA,MAAM,EAAEjB,MAA7B;AAAqC,IAAA,QAAQ,EAAEE,QAA/C;AAAyD,IAAA,OAAO,EAAEgB;AAAlE,IADF,eAGE,oBAAC,gBAAD;AAAkB,IAAA,IAAI,EAAC;AAAvB,kBACE,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAEH,KAAd;AAAqB,IAAA,IAAI,EAAEf;AAA3B,IADF,CAHF,eAME,oBAAC,gBAAD;AAAkB,IAAA,IAAI,EAAC,MAAvB;AAA8B,IAAA,KAAK,EAAC;AAApC,kBACE,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAEC,IAAZ;AAAkB,IAAA,IAAI,EAAED;AAAxB,IADF,CANF,CADF,CADF;AAcD,CAhBD;;AAkBAqB,SAAS,CAAC9B,SAAV,2CAAsB;AACpB0B,EAAAA,KAAK,EAAED,KAAK,CAACzB,SAAN,CAAgB0B,KADH;AAEpBjB,EAAAA,MAAM,EAAEgB,KAAK,CAACzB,SAAN,CAAgBS,MAFJ;AAGpBe,EAAAA,KAAK,EAAED,KAAK,CAACvB,SAAN,CAAgBwB,KAHH;AAIpBd,EAAAA,IAAI,EAAEF,IAAI,CAACR,SAAL,CAAeU,IAJD;AAKpBC,EAAAA,QAAQ,EAAEnC,kBAAkB,CAACwB,SAAnB,CAA6BW,QALnB;AAMpBgB,EAAAA,OAAO,EAAErE,SAAS,CAAC+C;AANC,CAAtB;;AASA,MAAM4B,UAAU,GAAG,CAAC1B,KAAD,EAAQ2B,OAAR,EAAiBzB,MAAjB,EAAyB0B,OAAzB,EAAkCC,IAAI,GAAG,SAAzC,EAAoDC,UAApD,KAAmE;AACpF,MAAIF,OAAO,IAAI,OAAM5B,KAAN,CAAf,EAA6B,OAAO4B,OAAP;AAC7B,MAAIC,IAAI,KAAK,OAAb,EAAsB,OAAOC,UAAP;AACtB,SAAO9B,KAAK,GAAGE,MAAH,GAAYyB,OAAxB;AACD,CAJD;;AAMA,MAAMI,YAAY,GAAG,CAAC;AAACC,EAAAA,QAAD;AAAWC,EAAAA;AAAX,CAAD,KAAkC;AACrD,MAAIA,gBAAJ,EAAsB;AACpB,WAAO5D,KAAK,CAAC6D,WAAb;AACD,GAFD,MAEO,IAAIF,QAAJ,EAAc;AACnB,WAAO3D,KAAK,CAAC2D,QAAb;AACD,GAFM,MAEA;AACL,WAAO,IAAP;AACD;AACF,CARD;;AASA,MAAMG,qBAAqB,GAAGjC,MAAM,IAAI;AACtC,sBACE;AAAK,IAAA,SAAS,EAAEA,MAAM,GAAG7B,KAAK,CAAC+D,kBAAT,GAA8B/D,KAAK,CAACgE;AAA1D,KACGnC,MAAM,gBAAG,oBAAC,KAAD;AAAO,IAAA,SAAS,EAAE7B,KAAK,CAACiE;AAAxB,IAAH,gBAA0C,oBAAC,SAAD;AAAW,IAAA,SAAS,EAAEjE,KAAK,CAACkE;AAA5B,IADnD,CADF;AAKD,CAND;;AAOA,MAAMC,wBAAwB,GAAG,CAC/BC,YAD+B,EAE/BZ,IAAI,GAAG,SAFwB,EAG/Ba,UAH+B,EAI/BxC,MAJ+B,EAK/ByC,WAAW,GAAG,IALiB,KAM5B;AACH,MAAId,IAAI,KAAK,OAAT,IAAoB3B,MAApB,IAA8ByC,WAAlC,EAA+C,OAAOA,WAAP;AAC/C,MAAId,IAAI,KAAK,OAAb,EAAsB,OAAOa,UAAP;AACtB,SAAOD,YAAP;AACD,CAVD;;AAWA,MAAMG,cAAc,GAAGpB,KAAK,IAAI;AAC9B,QAAM;AAACtB,IAAAA,MAAD;AAASpB,IAAAA,WAAT;AAAsB+D,IAAAA,KAAtB;AAA6BC,IAAAA,QAA7B;AAAuC7B,IAAAA,KAAvC;AAA8Cd,IAAAA,IAA9C;AAAoD6B,IAAAA,QAApD;AAA8DH,IAAAA,IAAI,GAAG;AAArE,MAAkFL,KAAxF;;AACA,QAAMuB,SAAS,GAAG,OAAM7C,MAAN,CAAlB;;AACA,QAAM8C,SAAS,GAAGtB,UAAU,CAC1BxB,MAD0B,EAE1Be,KAAK,IAAId,IAAT,GAAgB9B,KAAK,CAAC4E,2BAAtB,GAAoD5E,KAAK,CAAC6E,wBAFhC,EAG1BlB,QAAQ,GAAG3D,KAAK,CAAC8E,6BAAT,GAAyC9E,KAAK,CAAC+E,qBAH7B,EAI1B/E,KAAK,CAACgF,wBAJoB,EAK1BxB,IAL0B,EAM1BxD,KAAK,CAACiF,6BANoB,CAA5B;AAQA,sBACE;AAAK,iBAAU,mBAAf;AAAmC,IAAA,SAAS,EAAEN;AAA9C,KACGnB,IAAI,KAAK,OAAT,IAAoBM,qBAAqB,CAACjC,MAAD,CAD5C,eAEE;AACE,IAAA,SAAS,EAAEsC,wBAAwB,CACjCnE,KAAK,CAACkF,aAD2B,EAEjC1B,IAFiC,EAGjCxD,KAAK,CAACmF,kBAH2B,EAIjCtD,MAJiC;AADrC,KAQG6C,SAAS,gBAAG,oBAAC,MAAD,OAAH,GAAgB,IAR5B,eASE;AACE,iBAAU,OADZ;AAEE,IAAA,SAAS,EAAEP,wBAAwB,CACjC9E,UAAU,CAACW,KAAK,CAACwE,KAAP,EAAczE,SAAd,CADuB,EAEjCyD,IAFiC,EAGjCxD,KAAK,CAACoF,gBAH2B,EAIjCvD,MAJiC,CAFrC,CAQE;AARF;AASE,IAAA,uBAAuB,EAAE;AAACZ,MAAAA,MAAM,EAAEuD;AAAT;AAT3B,IATF,eAoBE;AACE,IAAA,SAAS,EAAEL,wBAAwB,CACjCnE,KAAK,CAACyE,QAD2B,EAEjCjB,IAFiC,EAGjCxD,KAAK,CAACqF,mBAH2B,EAIjCxD,MAJiC,EAKjC7B,KAAK,CAACsF,2BAL2B;AADrC,KASGb,QATH,CApBF,EA+BG5C,MAAM,IAAI,CAAC,SAAQpB,WAAR,CAAX,gBAAkC,oBAAC,iBAAD;AAAmB,IAAA,WAAW,EAAEA;AAAhC,IAAlC,GAAoF,IA/BvF,CAFF,eAmCE,oBAAC,SAAD,EAAe0C,KAAf,CAnCF,CADF;AAuCD,CAlDD;;AAoDAoB,cAAc,CAACnD,SAAf,iEACK8B,SAAS,CAAC9B,SADf;AAEES,EAAAA,MAAM,EAAEnD,SAAS,CAAC+C,IAFpB;AAGEhB,EAAAA,WAAW,EAAED,iBAAiB,CAACY,SAAlB,CAA4BX,WAH3C;AAIE+D,EAAAA,KAAK,EAAE9F,SAAS,CAAC6C,MAJnB;AAKEkD,EAAAA,QAAQ,EAAE/F,SAAS,CAAC6C,MALtB;AAMEqB,EAAAA,KAAK,EAAElE,SAAS,CAAC6C,MANnB;AAOEO,EAAAA,IAAI,EAAEpD,SAAS,CAAC6C,MAPlB;AAQEoC,EAAAA,QAAQ,EAAEjF,SAAS,CAAC+C;AARtB;;AAWA,MAAM8D,gBAAgB,GAAG,CAACpC,KAAD,EAAQqC,OAAR,KAAoB;AAC3C,QAAM;AAACC,IAAAA,GAAD;AAAMC,IAAAA,IAAN;AAAY9B,IAAAA,gBAAZ;AAA8BD,IAAAA,QAA9B;AAAwC9B,IAAAA,MAAM,GAAG,KAAjD;AAAwDiB,IAAAA,KAAK,GAAG;AAAhE,MAAqEK,KAA3E;;AACA,eAAoEsC,GAAG,IAAI,EAA3E;AAAA,QAAM;AAACjB,IAAAA,KAAD;AAAQmB,IAAAA,aAAR;AAAuBC,IAAAA,aAAa,GAAG;AAAvC,GAAN;AAAA,QAAuDC,SAAvD;;AACA,MAAIC,QAAJ;;AAEA,UAAQJ,IAAR;AACE,SAAK,iBAAL;AAAwB;AACtB,YAAI/B,QAAJ,EAAc;AACZmC,UAAAA,QAAQ,GAAG,WAAX;AACD,SAFD,MAEO,IAAIjE,MAAJ,EAAY;AACjB,cAAIiB,KAAK,GAAG,CAAZ,EAAe;AACbgD,YAAAA,QAAQ,GAAG,kBAAX;AACD,WAFD,MAEO,IAAIlC,gBAAJ,EAAsB;AAC3BkC,YAAAA,QAAQ,GAAG,0BAAX;AACD;AACF,SANM,MAMA;AACLA,UAAAA,QAAQ,GAAG,kBAAX;AACD;;AACD;AACD;;AAED,SAAK,UAAL;AAAiB;AACf,YAAIjE,MAAJ,EAAY;AACViE,UAAAA,QAAQ,GAAG,cAAX;AACD,SAFD,MAEO,IAAIF,aAAJ,EAAmB;AACxBE,UAAAA,QAAQ,GAAG,YAAX;AACD,SAFM,MAEA;AACLA,UAAAA,QAAQ,GAAG,MAAX;AACD;AACF;AAxBH;;AA2BA,QAAMC,QAAQ,GAAGJ,aAAa,gBAC5B;AACE,IAAA,SAAS,EAAEtG,UAAU,CAACsE,QAAQ,GAAG3D,KAAK,CAACgG,gBAAT,GAA4BhG,KAAK,CAAC2F,aAA3C,EAA0D5F,SAA1D,CADvB,CAEE;AAFF;AAGE,IAAA,uBAAuB,EAAE;AAACkB,MAAAA,MAAM,EAAE0E;AAAT;AAH3B,IAD4B,GAM1B,IANJ;AAQA,sBACE,oBAAC,IAAD,eACME,SADN;AAEE,IAAA,SAAS,EAAExG,UAAU,CAACW,KAAK,CAACiG,WAAP,EAAoBvC,YAAY,CAAC;AAACC,MAAAA,QAAD;AAAWC,MAAAA;AAAX,KAAD,CAAhC,CAFvB;AAGE,iBAAU,UAHZ;AAIE,kBAAY8B,IAJd;AAKE,iBAAWI;AALb,mBAOE;AAAK,IAAA,SAAS,EAAE9F,KAAK,CAACkG;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAElG,KAAK,CAACmG;AAAtB,KACG3B,KADH,eAEE,oBAAC,UAAD;AAAY,IAAA,KAAK,EAAC,SAAlB;AAA4B,IAAA,SAAS,EAAExE,KAAK,CAACoG;AAA7C,IAFF,CADF,EAKGL,QALH,CAPF,CADF;AAiBD,CAzDD;;AA2DAR,gBAAgB,CAACnE,SAAjB,2CAA6B;AAC3BqE,EAAAA,GAAG,EAAE/G,SAAS,CAAC4C,KAAV,uBACA9B,IAAI,CAAC4B,SADL;AAEHoD,IAAAA,KAAK,EAAE9F,SAAS,CAAC6C,MAFd;AAGHoE,IAAAA,aAAa,EAAEjH,SAAS,CAAC6C,MAHtB;AAIHqE,IAAAA,aAAa,EAAElH,SAAS,CAAC+C;AAJtB,KADsB;AAO3BiE,EAAAA,IAAI,EAAEhH,SAAS,CAAC2H,KAAV,CAAgB,CAAC,iBAAD,EAAoB,UAApB,CAAhB,EAAiD7E,UAP5B;AAQ3BoC,EAAAA,gBAAgB,EAAElF,SAAS,CAAC+C,IARD;AAS3BkC,EAAAA,QAAQ,EAAEjF,SAAS,CAAC+C,IATO;AAU3BI,EAAAA,MAAM,EAAEnD,SAAS,CAAC+C,IAVS;AAW3BqB,EAAAA,KAAK,EAAEpE,SAAS,CAAC4H;AAXU,CAA7B;;AAcA,MAAMC,WAAW,GAAG,CAACpD,KAAD,EAAQqC,OAAR,KAAoB;AACtC,QAAM;AACJzD,IAAAA,QADI;AAEJF,IAAAA,MAFI;AAGJ2C,IAAAA,KAHI;AAIJC,IAAAA,QAJI;AAKJ3B,IAAAA,KALI;AAMJF,IAAAA,KANI;AAOJd,IAAAA,IAPI;AAQJrB,IAAAA,WARI;AASJgF,IAAAA,GATI;AAUJ7B,IAAAA,gBAVI;AAWJD,IAAAA,QAAQ,GAAG,KAXP;AAYJ+B,IAAAA,IAZI;AAaJlC,IAAAA,IAAI,GAAG;AAbH,MAcFL,KAdJ;AAgBA,QAAMqD,KAAK,GAAGnD,UAAU,CAACxB,MAAD,EAAS,SAAT,EAAoB,QAApB,EAA8B,IAA9B,CAAxB;AAEA,QAAM4E,QAAQ,GAAGhB,GAAG,gBAClB,oBAAC,gBAAD;AACE,IAAA,GAAG,EAAEA,GADP;AAEE,IAAA,IAAI,EAAEC,IAFR;AAGE,IAAA,gBAAgB,EAAE9B,gBAHpB;AAIE,IAAA,MAAM,EAAE/B,MAJV;AAKE,IAAA,QAAQ,EAAE8B,QALZ;AAME,IAAA,KAAK,EAAEb;AANT,IADkB,GAShB,IATJ;AAWA,sBACE;AACE,IAAA,SAAS,EAAE2C,GAAG,GAAGzF,KAAK,CAAC0G,MAAT,GAAkB1G,KAAK,CAAC2G,gBADxC;AAEE,iBAAU,aAFZ;AAGE,kBAAYH;AAHd,kBAKE;AAAK,IAAA,SAAS,EAAEhD,IAAI,KAAK,OAAT,GAAmBxD,KAAK,CAAC4G,WAAzB,GAAuC;AAAvD,kBACE,oBAAC,cAAD;AACE,IAAA,KAAK,EAAEpC,KADT;AAEE,IAAA,QAAQ,EAAEC,QAFZ;AAGE,IAAA,KAAK,EAAE3B,KAHT;AAIE,IAAA,QAAQ,EAAEf,QAJZ;AAKE,IAAA,KAAK,EAAEa,KALT;AAME,IAAA,IAAI,EAAEd,IANR;AAOE,IAAA,MAAM,EAAED,MAPV;AAQE,IAAA,QAAQ,EAAE8B,QARZ;AASE,IAAA,OAAO,EAAEC,gBATX;AAUE,IAAA,WAAW,EAAEnD,WAVf;AAWE,IAAA,IAAI,EAAE+C;AAXR,IADF,EAcGiD,QAdH,CALF,CADF;AAwBD,CAtDD;;AAwDAF,WAAW,CAAC9D,YAAZ,GAA2B;AACzBR,EAAAA,IAAI,EAAEnC,QAAQ,CAAC4C,iBAAT,CAA2BT;AADR,CAA3B;AAIAsE,WAAW,CAACnF,SAAZ,2CAAwB;AACtBqE,EAAAA,GAAG,EAAEF,gBAAgB,CAACnE,SAAjB,CAA2BqE,GADV;AAEtBC,EAAAA,IAAI,EAAEH,gBAAgB,CAACnE,SAAjB,CAA2BsE,IAFX;AAGtB9B,EAAAA,gBAAgB,EAAE2B,gBAAgB,CAACnE,SAAjB,CAA2BwC,gBAHvB;AAItB/B,EAAAA,MAAM,EAAE0D,gBAAgB,CAACnE,SAAjB,CAA2BS,MAJb;AAKtB8B,EAAAA,QAAQ,EAAE4B,gBAAgB,CAACnE,SAAjB,CAA2BuC,QALf;AAMtBb,EAAAA,KAAK,EAAEyC,gBAAgB,CAACnE,SAAjB,CAA2B0B,KANZ;AAOtB0B,EAAAA,KAAK,EAAED,cAAc,CAACnD,SAAf,CAAyBoD,KAPV;AAQtBC,EAAAA,QAAQ,EAAEF,cAAc,CAACnD,SAAf,CAAyBqD,QARb;AAStB1C,EAAAA,QAAQ,EAAEwC,cAAc,CAACnD,SAAf,CAAyBW,QATb;AAUtBa,EAAAA,KAAK,EAAE2B,cAAc,CAACnD,SAAf,CAAyBwB,KAVV;AAWtBd,EAAAA,IAAI,EAAEyC,cAAc,CAACnD,SAAf,CAAyBU,IAXT;AAYtBrB,EAAAA,WAAW,EAAE8D,cAAc,CAACnD,SAAf,CAAyBX,WAZhB;AAatB+C,EAAAA,IAAI,EAAE9E,SAAS,CAAC2H,KAAV,CAAgB,CAAC,OAAD,EAAU,SAAV,CAAhB;AAbgB,CAAxB;AAgBA,eAAeE,WAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n compact,\n flatten,\n get,\n isNil,\n pipe,\n times,\n zip,\n round,\n parseInt as _parseInt,\n multiply,\n isEmpty\n} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaCompositionCoorpacademyCharts as ChartsIcon,\n NovaCompositionCoorpacademyStar as StarIcon,\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaSolidStatusClose as Close\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Loader from '../../../atom/loader';\nimport Life from '../../../atom/life';\nimport Link from '../../../atom/link';\nimport Animation, {EASE_OUT_CUBIC} from '../../../hoc/animation';\nimport Transition from '../../../hoc/transition';\nimport AnimationScheduler, {AnimationAdapter} from '../../../hoc/animation-scheduler';\nimport Provider from '../../../atom/provider';\nimport {innerHTML} from '../../../atom/label/style.css';\nimport style from './style.css';\n\nconst separator = index => (\n <span key={index} className={style.answerSeparator}>\n /\n </span>\n);\n\nconst joinBySeparator = elements => {\n const separators = times(separator, elements.length - 1);\n return pipe(zip, flatten, compact)(elements, separators);\n};\n\nconst AnswersCorrection = ({corrections}) => {\n const answers = corrections.map((correction, index) => {\n const key = `answer_${index}`;\n return (\n <span\n key={key}\n data-name=\"answer\"\n data-correct={correction.isCorrect}\n className={classnames(\n correction.isCorrect ? style.correctAnswer : style.wrongAnswer,\n innerHTML\n )}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: correction.answer}}\n />\n );\n }, corrections);\n return <p className={style.fullAnswer}>{joinBySeparator(answers)}</p>;\n};\n\nAnswersCorrection.propTypes = {\n corrections: PropTypes.arrayOf(\n PropTypes.shape({\n answer: PropTypes.string.isRequired,\n isCorrect: PropTypes.bool.isRequired\n })\n )\n};\n\nconst formatPlusSign = value => (value >= 0 ? '+' : '') + value;\n\nconst Rank = ({failed, rank, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(rank)) return null;\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <ChartsIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(rank)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nRank.propTypes = {\n failed: PropTypes.bool,\n rank: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nRank.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Stars = ({failed, stars, animated, onAnimationEnd}, {skin}) => {\n const positive = get('common.positive', skin);\n if (failed || isNil(stars)) return null;\n\n return (\n <AnimationScheduler animated={animated} onAnimationEnd={onAnimationEnd}>\n <div className={style.centerContent}>\n <Transition name=\"label\" after=\"counter\" className={style.bumped}>\n <div className={style.iconBubble}>\n <StarIcon className={style.icon} color={positive} />\n </div>\n </Transition>\n <span data-name=\"iconText\" className={style.iconText}>\n <Animation name=\"counter\" bezier={EASE_OUT_CUBIC} duration={1000}>\n {progress => pipe(_parseInt(10), multiply(progress), round, formatPlusSign)(stars)}\n </Animation>\n </span>\n </div>\n </AnimationScheduler>\n );\n};\n\nStars.propTypes = {\n failed: PropTypes.bool,\n stars: PropTypes.string,\n animated: Animation.propTypes.animated,\n onAnimationEnd: Animation.propTypes.onAnimationEnd\n};\n\nStars.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nconst Lifes = ({lives, failed, animated, revival}) => {\n if (isNil(lives)) return null;\n\n return (\n <Life\n failed={failed}\n count={lives}\n animated={animated}\n revival={revival}\n className={style.life}\n />\n );\n};\n\nLifes.propTypes = {\n lives: Life.propTypes.count,\n failed: Life.propTypes.failed,\n animated: Life.propTypes.animated,\n revival: Life.propTypes.revival\n};\n\nconst IconsPart = props => {\n const {lives, failed, stars, rank, animated, revival} = props;\n return (\n <AnimationScheduler animated>\n <div className={style.iconsWrapper}>\n <Lifes lives={lives} failed={failed} animated={animated} revival={revival} />\n\n <AnimationAdapter name=\"stars\">\n <Stars stars={stars} fail={failed} />\n </AnimationAdapter>\n <AnimationAdapter name=\"rank\" after=\"stars\">\n <Rank rank={rank} fail={failed} />\n </AnimationAdapter>\n </div>\n </AnimationScheduler>\n );\n};\n\nIconsPart.propTypes = {\n lives: Lifes.propTypes.lives,\n failed: Lifes.propTypes.failed,\n stars: Stars.propTypes.stars,\n rank: Rank.propTypes.rank,\n animated: AnimationScheduler.propTypes.animated,\n revival: PropTypes.bool\n};\n\nconst buildClass = (value, success, failed, loading, mode = 'default', scormStyle) => {\n if (loading && isNil(value)) return loading;\n if (mode === 'scorm') return scormStyle;\n return value ? failed : success;\n};\n\nconst getLinkStyle = ({gameOver, extraLifeGranted}) => {\n if (extraLifeGranted) {\n return style.oneMoreLife;\n } else if (gameOver) {\n return style.gameOver;\n } else {\n return null;\n }\n};\nconst renderIconStatusScorm = failed => {\n return (\n <div className={failed ? style.iconCloseContainer : style.iconSuccessContainer}>\n {failed ? <Close className={style.failIcon} /> : <CheckIcon className={style.checkIcon} />}\n </div>\n );\n};\nconst buildDefaultOrScormStyle = (\n defaultStyle,\n mode = 'default',\n styleScorm,\n failed,\n failedStyle = null\n) => {\n if (mode === 'scorm' && failed && failedStyle) return failedStyle;\n if (mode === 'scorm') return styleScorm;\n return defaultStyle;\n};\nconst CorrectionPart = props => {\n const {failed, corrections, title, subtitle, stars, rank, gameOver, mode = 'default'} = props;\n const isLoading = isNil(failed);\n const className = buildClass(\n failed,\n stars && rank ? style.correctionSectionEndSuccess : style.correctionSectionSuccess,\n gameOver ? style.correctionSectionFailGameOver : style.correctionSectionFail,\n style.correctionSectionLoading,\n mode,\n style.resultContenantContainerScorm\n );\n return (\n <div data-name=\"correctionSection\" className={className}>\n {mode === 'scorm' && renderIconStatusScorm(failed)}\n <div\n className={buildDefaultOrScormStyle(\n style.titlesWrapper,\n mode,\n style.titlesWrapperScorm,\n failed\n )}\n >\n {isLoading ? <Loader /> : null}\n <h1\n data-name=\"title\"\n className={buildDefaultOrScormStyle(\n classnames(style.title, innerHTML),\n mode,\n style.resultTitleScorm,\n failed\n )}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n <h2\n className={buildDefaultOrScormStyle(\n style.subtitle,\n mode,\n style.resultSubtitleScorm,\n failed,\n style.statusPlayerResultFailScorm\n )}\n >\n {subtitle}\n </h2>\n {failed && !isEmpty(corrections) ? <AnswersCorrection corrections={corrections} /> : null}\n </div>\n <IconsPart {...props} />\n </div>\n );\n};\n\nCorrectionPart.propTypes = {\n ...IconsPart.propTypes,\n failed: PropTypes.bool,\n corrections: AnswersCorrection.propTypes.corrections,\n title: PropTypes.string,\n subtitle: PropTypes.string,\n stars: PropTypes.string,\n rank: PropTypes.string,\n gameOver: PropTypes.bool\n};\n\nconst NextQuestionPart = (props, context) => {\n const {cta, type, extraLifeGranted, gameOver, failed = false, lives = 0} = props;\n const {title, nextStepTitle, showNextLevel = false, ...linkProps} = cta || {};\n let dataNext;\n\n switch (type) {\n case 'popinCorrection': {\n if (gameOver) {\n dataNext = 'game-over';\n } else if (failed) {\n if (lives > 0) {\n dataNext = 'continue-failure';\n } else if (extraLifeGranted) {\n dataNext = 'continue-used-extra-life';\n }\n } else {\n dataNext = 'continue-success';\n }\n break;\n }\n\n case 'popinEnd': {\n if (failed) {\n dataNext = 'redo-content';\n } else if (showNextLevel) {\n dataNext = 'next-level';\n } else {\n dataNext = 'home';\n }\n }\n }\n\n const nextStep = nextStepTitle ? (\n <div\n className={classnames(gameOver ? style.gameOverSubtitle : style.nextStepTitle, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: nextStepTitle}}\n />\n ) : null;\n\n return (\n <Link\n {...linkProps}\n className={classnames(style.nextSection, getLinkStyle({gameOver, extraLifeGranted}))}\n data-name=\"nextLink\"\n data-popin={type}\n data-next={dataNext}\n >\n <div className={style.wrapperNextSection}>\n <div className={style.nextButton}>\n {title}\n <ArrowRight color=\"inherit\" className={style.nextButtonIcon} />\n </div>\n {nextStep}\n </div>\n </Link>\n );\n};\n\nNextQuestionPart.propTypes = {\n cta: PropTypes.shape({\n ...Link.propTypes,\n title: PropTypes.string,\n nextStepTitle: PropTypes.string,\n showNextLevel: PropTypes.bool\n }),\n type: PropTypes.oneOf(['popinCorrection', 'popinEnd']).isRequired,\n extraLifeGranted: PropTypes.bool,\n gameOver: PropTypes.bool,\n failed: PropTypes.bool,\n lives: PropTypes.number\n};\n\nconst PopinHeader = (props, context) => {\n const {\n animated,\n failed,\n title,\n subtitle,\n lives,\n stars,\n rank,\n corrections,\n cta,\n extraLifeGranted,\n gameOver = false,\n type,\n mode = 'default'\n } = props;\n\n const state = buildClass(failed, 'success', 'failed', null);\n\n const nextLink = cta ? (\n <NextQuestionPart\n cta={cta}\n type={type}\n extraLifeGranted={extraLifeGranted}\n failed={failed}\n gameOver={gameOver}\n lives={lives}\n />\n ) : null;\n\n return (\n <div\n className={cta ? style.header : style.headerWithoutCTA}\n data-name=\"popinHeader\"\n data-state={state}\n >\n <div className={mode !== 'scorm' ? style.headerTitle : null}>\n <CorrectionPart\n title={title}\n subtitle={subtitle}\n lives={lives}\n animated={animated}\n stars={stars}\n rank={rank}\n failed={failed}\n gameOver={gameOver}\n revival={extraLifeGranted}\n corrections={corrections}\n mode={mode}\n />\n {nextLink}\n </div>\n </div>\n );\n};\n\nPopinHeader.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nPopinHeader.propTypes = {\n cta: NextQuestionPart.propTypes.cta,\n type: NextQuestionPart.propTypes.type,\n extraLifeGranted: NextQuestionPart.propTypes.extraLifeGranted,\n failed: NextQuestionPart.propTypes.failed,\n gameOver: NextQuestionPart.propTypes.gameOver,\n lives: NextQuestionPart.propTypes.lives,\n title: CorrectionPart.propTypes.title,\n subtitle: CorrectionPart.propTypes.subtitle,\n animated: CorrectionPart.propTypes.animated,\n stars: CorrectionPart.propTypes.stars,\n rank: CorrectionPart.propTypes.rank,\n corrections: CorrectionPart.propTypes.corrections,\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nexport default PopinHeader;\n"],"file":"index.js"}