@coorpacademy/components 11.14.1-alpha.3.27 → 11.14.2

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 (241) hide show
  1. package/es/atom/button/index.d.ts.map +1 -1
  2. package/es/atom/button/index.js +18 -13
  3. package/es/atom/button/index.js.map +1 -1
  4. package/es/molecule/cm-popin/index.d.ts.map +1 -1
  5. package/es/molecule/cm-popin/index.js +5 -4
  6. package/es/molecule/cm-popin/index.js.map +1 -1
  7. package/es/molecule/cm-popin/style.css +61 -40
  8. package/es/molecule/discipline-header/index.d.ts +1 -1
  9. package/es/molecule/discipline-header/index.d.ts.map +1 -1
  10. package/es/molecule/discipline-header/index.js +8 -8
  11. package/es/molecule/discipline-header/index.js.map +1 -1
  12. package/es/molecule/discipline-header/style.css +1 -1
  13. package/es/molecule/hero/index.d.ts +26 -30
  14. package/es/molecule/hero/index.d.ts.map +1 -1
  15. package/es/molecule/hero/index.js +13 -14
  16. package/es/molecule/hero/index.js.map +1 -1
  17. package/es/molecule/hero/style.css +0 -42
  18. package/es/molecule/quick-access-card/index.d.ts +0 -1
  19. package/es/molecule/quick-access-card/index.d.ts.map +1 -1
  20. package/es/molecule/quick-access-card/index.js +21 -77
  21. package/es/molecule/quick-access-card/index.js.map +1 -1
  22. package/es/molecule/quick-access-card/style.css +17 -28
  23. package/es/molecule/quick-access-cards-group/index.d.ts +0 -1
  24. package/es/organism/brand-dashboard/index.d.ts +0 -1
  25. package/es/template/back-office/brand-update/index.d.ts +0 -1
  26. package/es/template/external-course/index.d.ts +69 -21
  27. package/es/template/external-course/index.d.ts.map +1 -1
  28. package/es/template/external-course/index.js +73 -56
  29. package/es/template/external-course/index.js.map +1 -1
  30. package/es/template/external-course/style.css +1 -1
  31. package/es/util/button-icons.d.ts +0 -1
  32. package/es/util/button-icons.d.ts.map +1 -1
  33. package/es/util/button-icons.js +2 -3
  34. package/es/util/button-icons.js.map +1 -1
  35. package/es/variables/breakpoints.css +1 -1
  36. package/lib/atom/button/index.d.ts.map +1 -1
  37. package/lib/atom/button/index.js +18 -13
  38. package/lib/atom/button/index.js.map +1 -1
  39. package/lib/molecule/cm-popin/index.d.ts.map +1 -1
  40. package/lib/molecule/cm-popin/index.js +4 -3
  41. package/lib/molecule/cm-popin/index.js.map +1 -1
  42. package/lib/molecule/cm-popin/style.css +61 -40
  43. package/lib/molecule/discipline-header/index.d.ts +1 -1
  44. package/lib/molecule/discipline-header/index.d.ts.map +1 -1
  45. package/lib/molecule/discipline-header/index.js +8 -8
  46. package/lib/molecule/discipline-header/index.js.map +1 -1
  47. package/lib/molecule/discipline-header/style.css +1 -1
  48. package/lib/molecule/hero/index.d.ts +26 -30
  49. package/lib/molecule/hero/index.d.ts.map +1 -1
  50. package/lib/molecule/hero/index.js +14 -15
  51. package/lib/molecule/hero/index.js.map +1 -1
  52. package/lib/molecule/hero/style.css +0 -42
  53. package/lib/molecule/quick-access-card/index.d.ts +0 -1
  54. package/lib/molecule/quick-access-card/index.d.ts.map +1 -1
  55. package/lib/molecule/quick-access-card/index.js +20 -76
  56. package/lib/molecule/quick-access-card/index.js.map +1 -1
  57. package/lib/molecule/quick-access-card/style.css +17 -28
  58. package/lib/molecule/quick-access-cards-group/index.d.ts +0 -1
  59. package/lib/organism/brand-dashboard/index.d.ts +0 -1
  60. package/lib/template/back-office/brand-update/index.d.ts +0 -1
  61. package/lib/template/external-course/index.d.ts +69 -21
  62. package/lib/template/external-course/index.d.ts.map +1 -1
  63. package/lib/template/external-course/index.js +76 -54
  64. package/lib/template/external-course/index.js.map +1 -1
  65. package/lib/template/external-course/style.css +1 -1
  66. package/lib/util/button-icons.d.ts +0 -1
  67. package/lib/util/button-icons.d.ts.map +1 -1
  68. package/lib/util/button-icons.js +1 -2
  69. package/lib/util/button-icons.js.map +1 -1
  70. package/lib/variables/breakpoints.css +1 -1
  71. package/package.json +3 -3
  72. package/es/molecule/expandable-item/index.d.ts +0 -19
  73. package/es/molecule/expandable-item/index.d.ts.map +0 -1
  74. package/es/molecule/expandable-item/index.js +0 -44
  75. package/es/molecule/expandable-item/index.js.map +0 -1
  76. package/es/molecule/expandable-item/style.css +0 -135
  77. package/es/molecule/expandable-item/types.d.ts +0 -20
  78. package/es/molecule/expandable-item/types.d.ts.map +0 -1
  79. package/es/molecule/expandable-item/types.js +0 -11
  80. package/es/molecule/expandable-item/types.js.map +0 -1
  81. package/es/molecule/expandable-list/index.d.ts +0 -18
  82. package/es/molecule/expandable-list/index.d.ts.map +0 -1
  83. package/es/molecule/expandable-list/index.js +0 -22
  84. package/es/molecule/expandable-list/index.js.map +0 -1
  85. package/es/molecule/expandable-list/style.css +0 -20
  86. package/es/molecule/expandable-list/types.d.ts +0 -17
  87. package/es/molecule/expandable-list/types.d.ts.map +0 -1
  88. package/es/molecule/expandable-list/types.js +0 -6
  89. package/es/molecule/expandable-list/types.js.map +0 -1
  90. package/es/molecule/hero/types.d.ts +0 -22
  91. package/es/molecule/hero/types.d.ts.map +0 -1
  92. package/es/molecule/hero/types.js +0 -14
  93. package/es/molecule/hero/types.js.map +0 -1
  94. package/es/molecule/menu-links/index.d.ts +0 -22
  95. package/es/molecule/menu-links/index.d.ts.map +0 -1
  96. package/es/molecule/menu-links/index.js +0 -70
  97. package/es/molecule/menu-links/index.js.map +0 -1
  98. package/es/molecule/menu-links/style.css +0 -161
  99. package/es/molecule/menu-links/types.d.ts +0 -35
  100. package/es/molecule/menu-links/types.d.ts.map +0 -1
  101. package/es/molecule/menu-links/types.js +0 -17
  102. package/es/molecule/menu-links/types.js.map +0 -1
  103. package/es/molecule/privacy-policy-contact/index.d.ts +0 -14
  104. package/es/molecule/privacy-policy-contact/index.d.ts.map +0 -1
  105. package/es/molecule/privacy-policy-contact/index.js +0 -28
  106. package/es/molecule/privacy-policy-contact/index.js.map +0 -1
  107. package/es/molecule/privacy-policy-contact/style.css +0 -38
  108. package/es/molecule/privacy-policy-contact/types.d.ts +0 -10
  109. package/es/molecule/privacy-policy-contact/types.d.ts.map +0 -1
  110. package/es/molecule/privacy-policy-contact/types.js +0 -6
  111. package/es/molecule/privacy-policy-contact/types.js.map +0 -1
  112. package/es/molecule/privacy-policy-download/index.d.ts +0 -38
  113. package/es/molecule/privacy-policy-download/index.d.ts.map +0 -1
  114. package/es/molecule/privacy-policy-download/index.js +0 -27
  115. package/es/molecule/privacy-policy-download/index.js.map +0 -1
  116. package/es/molecule/privacy-policy-download/style.css +0 -65
  117. package/es/molecule/privacy-policy-download/types.d.ts +0 -50
  118. package/es/molecule/privacy-policy-download/types.d.ts.map +0 -1
  119. package/es/molecule/privacy-policy-download/types.js +0 -8
  120. package/es/molecule/privacy-policy-download/types.js.map +0 -1
  121. package/es/template/common/faq-article-page/index.d.ts +0 -27
  122. package/es/template/common/faq-article-page/index.d.ts.map +0 -1
  123. package/es/template/common/faq-article-page/index.js +0 -50
  124. package/es/template/common/faq-article-page/index.js.map +0 -1
  125. package/es/template/common/faq-article-page/style.css +0 -110
  126. package/es/template/common/faq-article-page/types.d.ts +0 -40
  127. package/es/template/common/faq-article-page/types.d.ts.map +0 -1
  128. package/es/template/common/faq-article-page/types.js +0 -20
  129. package/es/template/common/faq-article-page/types.js.map +0 -1
  130. package/es/template/common/faq-cards-page/index.d.ts +0 -34
  131. package/es/template/common/faq-cards-page/index.d.ts.map +0 -1
  132. package/es/template/common/faq-cards-page/index.js +0 -45
  133. package/es/template/common/faq-cards-page/index.js.map +0 -1
  134. package/es/template/common/faq-cards-page/style.css +0 -95
  135. package/es/template/common/faq-cards-page/types.d.ts +0 -44
  136. package/es/template/common/faq-cards-page/types.d.ts.map +0 -1
  137. package/es/template/common/faq-cards-page/types.js +0 -13
  138. package/es/template/common/faq-cards-page/types.js.map +0 -1
  139. package/es/template/common/faq-page/index.d.ts +0 -80
  140. package/es/template/common/faq-page/index.d.ts.map +0 -1
  141. package/es/template/common/faq-page/index.js +0 -44
  142. package/es/template/common/faq-page/index.js.map +0 -1
  143. package/es/template/common/faq-page/style.css +0 -104
  144. package/es/template/common/faq-page/types.d.ts +0 -86
  145. package/es/template/common/faq-page/types.d.ts.map +0 -1
  146. package/es/template/common/faq-page/types.js +0 -13
  147. package/es/template/common/faq-page/types.js.map +0 -1
  148. package/es/template/common/privacy-policy-page/index.d.ts +0 -80
  149. package/es/template/common/privacy-policy-page/index.d.ts.map +0 -1
  150. package/es/template/common/privacy-policy-page/index.js +0 -50
  151. package/es/template/common/privacy-policy-page/index.js.map +0 -1
  152. package/es/template/common/privacy-policy-page/style.css +0 -123
  153. package/es/template/common/privacy-policy-page/types.d.ts +0 -86
  154. package/es/template/common/privacy-policy-page/types.d.ts.map +0 -1
  155. package/es/template/common/privacy-policy-page/types.js +0 -13
  156. package/es/template/common/privacy-policy-page/types.js.map +0 -1
  157. package/lib/molecule/expandable-item/index.d.ts +0 -19
  158. package/lib/molecule/expandable-item/index.d.ts.map +0 -1
  159. package/lib/molecule/expandable-item/index.js +0 -58
  160. package/lib/molecule/expandable-item/index.js.map +0 -1
  161. package/lib/molecule/expandable-item/style.css +0 -135
  162. package/lib/molecule/expandable-item/types.d.ts +0 -20
  163. package/lib/molecule/expandable-item/types.d.ts.map +0 -1
  164. package/lib/molecule/expandable-item/types.js +0 -20
  165. package/lib/molecule/expandable-item/types.js.map +0 -1
  166. package/lib/molecule/expandable-list/index.d.ts +0 -18
  167. package/lib/molecule/expandable-list/index.d.ts.map +0 -1
  168. package/lib/molecule/expandable-list/index.js +0 -33
  169. package/lib/molecule/expandable-list/index.js.map +0 -1
  170. package/lib/molecule/expandable-list/style.css +0 -20
  171. package/lib/molecule/expandable-list/types.d.ts +0 -17
  172. package/lib/molecule/expandable-list/types.d.ts.map +0 -1
  173. package/lib/molecule/expandable-list/types.js +0 -16
  174. package/lib/molecule/expandable-list/types.js.map +0 -1
  175. package/lib/molecule/hero/types.d.ts +0 -22
  176. package/lib/molecule/hero/types.d.ts.map +0 -1
  177. package/lib/molecule/hero/types.js +0 -25
  178. package/lib/molecule/hero/types.js.map +0 -1
  179. package/lib/molecule/menu-links/index.d.ts +0 -22
  180. package/lib/molecule/menu-links/index.d.ts.map +0 -1
  181. package/lib/molecule/menu-links/index.js +0 -88
  182. package/lib/molecule/menu-links/index.js.map +0 -1
  183. package/lib/molecule/menu-links/style.css +0 -161
  184. package/lib/molecule/menu-links/types.d.ts +0 -35
  185. package/lib/molecule/menu-links/types.d.ts.map +0 -1
  186. package/lib/molecule/menu-links/types.js +0 -26
  187. package/lib/molecule/menu-links/types.js.map +0 -1
  188. package/lib/molecule/privacy-policy-contact/index.d.ts +0 -14
  189. package/lib/molecule/privacy-policy-contact/index.d.ts.map +0 -1
  190. package/lib/molecule/privacy-policy-contact/index.js +0 -41
  191. package/lib/molecule/privacy-policy-contact/index.js.map +0 -1
  192. package/lib/molecule/privacy-policy-contact/style.css +0 -38
  193. package/lib/molecule/privacy-policy-contact/types.d.ts +0 -10
  194. package/lib/molecule/privacy-policy-contact/types.d.ts.map +0 -1
  195. package/lib/molecule/privacy-policy-contact/types.js +0 -15
  196. package/lib/molecule/privacy-policy-contact/types.js.map +0 -1
  197. package/lib/molecule/privacy-policy-download/index.d.ts +0 -38
  198. package/lib/molecule/privacy-policy-download/index.d.ts.map +0 -1
  199. package/lib/molecule/privacy-policy-download/index.js +0 -38
  200. package/lib/molecule/privacy-policy-download/index.js.map +0 -1
  201. package/lib/molecule/privacy-policy-download/style.css +0 -65
  202. package/lib/molecule/privacy-policy-download/types.d.ts +0 -50
  203. package/lib/molecule/privacy-policy-download/types.d.ts.map +0 -1
  204. package/lib/molecule/privacy-policy-download/types.js +0 -18
  205. package/lib/molecule/privacy-policy-download/types.js.map +0 -1
  206. package/lib/template/common/faq-article-page/index.d.ts +0 -27
  207. package/lib/template/common/faq-article-page/index.d.ts.map +0 -1
  208. package/lib/template/common/faq-article-page/index.js +0 -63
  209. package/lib/template/common/faq-article-page/index.js.map +0 -1
  210. package/lib/template/common/faq-article-page/style.css +0 -110
  211. package/lib/template/common/faq-article-page/types.d.ts +0 -40
  212. package/lib/template/common/faq-article-page/types.d.ts.map +0 -1
  213. package/lib/template/common/faq-article-page/types.js +0 -30
  214. package/lib/template/common/faq-article-page/types.js.map +0 -1
  215. package/lib/template/common/faq-cards-page/index.d.ts +0 -34
  216. package/lib/template/common/faq-cards-page/index.d.ts.map +0 -1
  217. package/lib/template/common/faq-cards-page/index.js +0 -58
  218. package/lib/template/common/faq-cards-page/index.js.map +0 -1
  219. package/lib/template/common/faq-cards-page/style.css +0 -95
  220. package/lib/template/common/faq-cards-page/types.d.ts +0 -44
  221. package/lib/template/common/faq-cards-page/types.d.ts.map +0 -1
  222. package/lib/template/common/faq-cards-page/types.js +0 -25
  223. package/lib/template/common/faq-cards-page/types.js.map +0 -1
  224. package/lib/template/common/faq-page/index.d.ts +0 -80
  225. package/lib/template/common/faq-page/index.d.ts.map +0 -1
  226. package/lib/template/common/faq-page/index.js +0 -58
  227. package/lib/template/common/faq-page/index.js.map +0 -1
  228. package/lib/template/common/faq-page/style.css +0 -104
  229. package/lib/template/common/faq-page/types.d.ts +0 -86
  230. package/lib/template/common/faq-page/types.d.ts.map +0 -1
  231. package/lib/template/common/faq-page/types.js +0 -24
  232. package/lib/template/common/faq-page/types.js.map +0 -1
  233. package/lib/template/common/privacy-policy-page/index.d.ts +0 -80
  234. package/lib/template/common/privacy-policy-page/index.d.ts.map +0 -1
  235. package/lib/template/common/privacy-policy-page/index.js +0 -65
  236. package/lib/template/common/privacy-policy-page/index.js.map +0 -1
  237. package/lib/template/common/privacy-policy-page/style.css +0 -123
  238. package/lib/template/common/privacy-policy-page/types.d.ts +0 -86
  239. package/lib/template/common/privacy-policy-page/types.d.ts.map +0 -1
  240. package/lib/template/common/privacy-policy-page/types.js +0 -24
  241. package/lib/template/common/privacy-policy-page/types.js.map +0 -1
@@ -13,9 +13,9 @@ var _keys2 = _interopRequireDefault(require("lodash/fp/keys"));
13
13
 
14
14
  var _getOr2 = _interopRequireDefault(require("lodash/fp/getOr"));
15
15
 
16
- var _get2 = _interopRequireDefault(require("lodash/fp/get"));
16
+ var _noop2 = _interopRequireDefault(require("lodash/fp/noop"));
17
17
 
18
- var _react = _interopRequireDefault(require("react"));
18
+ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _novaIcons = require("@coorpacademy/nova-icons");
21
21
 
@@ -35,48 +35,46 @@ var _button = _interopRequireDefault(require("../../atom/button"));
35
35
 
36
36
  var _externalContentViewer = _interopRequireDefault(require("../../molecule/external-content-viewer"));
37
37
 
38
+ var _cmPopin = _interopRequireDefault(require("../../molecule/cm-popin"));
39
+
38
40
  var _style = _interopRequireDefault(require("./style.css"));
39
41
 
42
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
+
44
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
+
40
46
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
41
47
 
48
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
49
+
42
50
  const defaultWrapperStyle = {
43
51
  default: _style.default.default,
44
52
  cockpit: _style.default.defaultCockpit,
45
53
  mobile: _style.default.default
46
54
  };
47
55
 
48
- class ExternalCourse extends _react.default.Component {
49
- constructor(...args) {
50
- super(...args);
51
-
52
- this.handleOnClick = field => e => {
53
- e.stopPropagation();
54
- e.preventDefault();
55
- const onClick = (0, _get2.default)('onClick', field);
56
- return onClick && onClick(e);
57
- };
58
- }
59
-
60
- render() {
61
- const {
62
- name,
63
- type,
64
- url,
65
- warning,
66
- complete,
67
- quit,
68
- loading,
69
- backgroundImageUrl,
70
- contentType,
71
- mode = 'default'
72
- } = this.props;
73
- const {
74
- skin
75
- } = this.context;
76
- const primary = (0, _getOr2.default)('#00B0FF', 'common.primary', skin);
77
- const IconType = _externalContent.EXTERNAL_CONTENT_ICONS[type].icon;
78
- const IconColor = _externalContent.EXTERNAL_CONTENT_ICONS[type].color;
79
- const mainContentSlot = loading ? /*#__PURE__*/_react.default.createElement("div", {
56
+ const ExternalCourse = (props, context) => {
57
+ const {
58
+ name,
59
+ type,
60
+ url,
61
+ quit,
62
+ complete,
63
+ warning,
64
+ loading,
65
+ backgroundImageUrl,
66
+ contentType,
67
+ mode = 'default',
68
+ closePopin
69
+ } = props;
70
+ const {
71
+ skin
72
+ } = context;
73
+ const primary = (0, _getOr2.default)('#00B0FF', 'common.primary', skin);
74
+ const IconType = _externalContent.EXTERNAL_CONTENT_ICONS[type].icon;
75
+ const IconColor = _externalContent.EXTERNAL_CONTENT_ICONS[type].color;
76
+ const mainContentSlot = (0, _react.useMemo)(() => {
77
+ return loading ? /*#__PURE__*/_react.default.createElement("div", {
80
78
  className: _style.default.loader
81
79
  }, /*#__PURE__*/_react.default.createElement(_loader.default, null)) : /*#__PURE__*/_react.default.createElement(_externalContentViewer.default, {
82
80
  url: url,
@@ -84,34 +82,51 @@ class ExternalCourse extends _react.default.Component {
84
82
  backgroundImageUrl: backgroundImageUrl,
85
83
  contentType: contentType
86
84
  });
87
- const completeButton = !(0, _isNil2.default)(complete) ? /*#__PURE__*/_react.default.createElement(_button.default, {
85
+ }, [loading, url, mode, contentType, backgroundImageUrl]);
86
+ const handleOnClick = (0, _react.useCallback)(field => {
87
+ const onClick = (0, _getOr2.default)(_noop2.default, ['onClick'], field);
88
+ return e => {
89
+ e.stopPropagation();
90
+ e.preventDefault();
91
+ return onClick(e);
92
+ };
93
+ }, []);
94
+ const completeButton = (0, _react.useMemo)(() => {
95
+ return !(0, _isNil2.default)(complete) ? /*#__PURE__*/_react.default.createElement(_button.default, {
88
96
  type: "button",
89
97
  disabled: loading ? true : complete.disabled,
90
- onClick: loading ? _identity2.default : this.handleOnClick(complete),
98
+ onClick: loading ? _identity2.default : handleOnClick(complete),
91
99
  submitValue: complete.label,
92
100
  style: {
93
101
  backgroundColor: complete.disabled || loading ? (0, _cssColorFunction.convert)(`color(${primary} a(-50%))`) : primary,
94
102
  cursor: loading ? 'progress' : 'pointer'
95
103
  },
96
- className: (0, _classnames.default)(_style.default.completeCta, complete.disabled || loading ? _style.default.disabled : null, loading ? _style.default.loading : null)
104
+ className: (0, _classnames.default)(_style.default.completeCta, complete.disabled || loading ? _style.default.disabled : null, loading ? _style.default.loading : null),
105
+ "data-testid": "complete-button"
97
106
  }) : null;
98
- const warningButton = !(0, _isNil2.default)(warning) ? /*#__PURE__*/_react.default.createElement("div", {
107
+ }, [complete, loading, primary, handleOnClick]);
108
+ const warningButton = (0, _react.useMemo)(() => {
109
+ return !(0, _isNil2.default)(warning) ? /*#__PURE__*/_react.default.createElement("div", {
99
110
  className: _style.default.leftSection
100
111
  }, /*#__PURE__*/_react.default.createElement("div", {
101
- onClick: this.handleOnClick(warning),
112
+ onClick: handleOnClick(warning),
102
113
  className: (0, _classnames.default)(_style.default.iconLabel, _style.default.link)
103
114
  }, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaSolidInterfaceFeedbackInterfaceQuestionMark, {
104
115
  className: _style.default.iconQuestion,
105
116
  width: 24,
106
117
  height: 24
107
118
  }), /*#__PURE__*/_react.default.createElement("span", null, warning.label))) : null;
108
- const quitButton = !(0, _isNil2.default)(quit) ? /*#__PURE__*/_react.default.createElement("div", {
119
+ }, [handleOnClick, warning]);
120
+ const quitButton = (0, _react.useMemo)(() => {
121
+ return !(0, _isNil2.default)(quit) ? /*#__PURE__*/_react.default.createElement("div", {
109
122
  className: _style.default.leftSection
110
123
  }, /*#__PURE__*/_react.default.createElement("span", {
111
124
  className: (0, _classnames.default)(_style.default.quitCta, loading ? _style.default.loading : null),
112
- onClick: loading ? _identity2.default : this.handleOnClick(quit)
125
+ onClick: loading ? _identity2.default : handleOnClick(quit)
113
126
  }, quit.label)) : null;
114
- const titleSection = !(0, _isNil2.default)(name) ? /*#__PURE__*/_react.default.createElement("div", {
127
+ }, [quit, loading, handleOnClick]);
128
+ const titleSection = (0, _react.useMemo)(() => {
129
+ return !(0, _isNil2.default)(name) ? /*#__PURE__*/_react.default.createElement("div", {
115
130
  className: (0, _classnames.default)(_style.default.iconLabel, _style.default.title)
116
131
  }, /*#__PURE__*/_react.default.createElement("div", {
117
132
  className: _style.default.oval,
@@ -127,26 +142,29 @@ class ExternalCourse extends _react.default.Component {
127
142
  __html: name
128
143
  }
129
144
  })) : null;
130
- const header = !(0, _isNil2.default)(quit) || !(0, _isEmpty2.default)(name) ? /*#__PURE__*/_react.default.createElement("div", {
145
+ }, [name, IconColor]);
146
+ const header = (0, _react.useMemo)(() => {
147
+ return !(0, _isNil2.default)(quit) || !(0, _isEmpty2.default)(name) ? /*#__PURE__*/_react.default.createElement("div", {
131
148
  className: _style.default.header
132
149
  }, quitButton, titleSection, (0, _isNil2.default)(quit) ? null : /*#__PURE__*/_react.default.createElement("div", {
133
150
  className: _style.default.rightSection
134
151
  })) : null;
135
- const footer = !(0, _isNil2.default)(warning) || !(0, _isNil2.default)(complete) ? /*#__PURE__*/_react.default.createElement("div", {
152
+ }, [name, titleSection, quit, quitButton]);
153
+ const footer = (0, _react.useMemo)(() => {
154
+ return !(0, _isNil2.default)(warning) || !(0, _isNil2.default)(complete) ? /*#__PURE__*/_react.default.createElement("div", {
136
155
  className: _style.default.footer
137
156
  }, warningButton, completeButton, (0, _isNil2.default)(warning) ? null : /*#__PURE__*/_react.default.createElement("div", {
138
157
  className: _style.default.rightSection
139
158
  })) : null;
140
- return /*#__PURE__*/_react.default.createElement("div", {
141
- className: defaultWrapperStyle[mode]
142
- }, header, mainContentSlot, footer);
143
- }
144
-
145
- }
146
-
147
- ExternalCourse.contextTypes = {
148
- skin: _provider.default.childContextTypes.skin
159
+ }, [warning, warningButton, complete, completeButton]);
160
+ const popin = (0, _react.useMemo)(() => {
161
+ return !(0, _isNil2.default)(closePopin) ? /*#__PURE__*/_react.default.createElement(_cmPopin.default, closePopin) : null;
162
+ }, [closePopin]);
163
+ return /*#__PURE__*/_react.default.createElement("div", {
164
+ className: defaultWrapperStyle[mode]
165
+ }, header, popin, mainContentSlot, footer);
149
166
  };
167
+
150
168
  ExternalCourse.propTypes = process.env.NODE_ENV !== "production" ? {
151
169
  name: _propTypes.default.string,
152
170
  type: _propTypes.default.oneOf((0, _keys2.default)(_externalContent.EXTERNAL_CONTENT_ICONS)),
@@ -167,8 +185,12 @@ ExternalCourse.propTypes = process.env.NODE_ENV !== "production" ? {
167
185
  loading: _propTypes.default.bool,
168
186
  backgroundImageUrl: _propTypes.default.string,
169
187
  contentType: _propTypes.default.string,
170
- mode: _propTypes.default.string
188
+ mode: _propTypes.default.string,
189
+ closePopin: _propTypes.default.shape(_extends({}, _cmPopin.default.propTypes))
171
190
  } : {};
191
+ ExternalCourse.contextTypes = {
192
+ skin: _provider.default.childContextTypes.skin
193
+ };
172
194
  var _default = ExternalCourse;
173
195
  exports.default = _default;
174
196
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["defaultWrapperStyle","default","style","cockpit","defaultCockpit","mobile","ExternalCourse","React","Component","handleOnClick","field","e","stopPropagation","preventDefault","onClick","render","name","type","url","warning","complete","quit","loading","backgroundImageUrl","contentType","mode","props","skin","context","primary","IconType","EXTERNAL_CONTENT_ICONS","icon","IconColor","color","mainContentSlot","loader","completeButton","disabled","label","backgroundColor","convert","cursor","classnames","completeCta","warningButton","leftSection","iconLabel","link","iconQuestion","quitButton","quitCta","titleSection","title","oval","iconHeader","innerHTML","__html","header","rightSection","footer","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","oneOf","isRequired","shape","func","bool"],"sources":["../../../src/template/external-course/index.js"],"sourcesContent":["import React from 'react';\nimport {NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon} from '@coorpacademy/nova-icons';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {get, getOr, keys, identity, isNil, isEmpty} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport {EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport Loader from '../../atom/loader';\nimport Button from '../../atom/button';\nimport ExternalContentViewer from '../../molecule/external-content-viewer';\nimport style from './style.css';\n\nconst defaultWrapperStyle = {\n default: style.default,\n cockpit: style.defaultCockpit,\n mobile: style.default\n};\n\nclass ExternalCourse extends React.Component {\n static propTypes = {\n name: PropTypes.string,\n type: PropTypes.oneOf(keys(EXTERNAL_CONTENT_ICONS)),\n url: PropTypes.string.isRequired,\n quit: PropTypes.shape({\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func\n }),\n complete: PropTypes.shape({\n label: PropTypes.string.isRequired,\n disabled: PropTypes.bool,\n onClick: PropTypes.func\n }),\n warning: PropTypes.shape({\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func\n }),\n loading: PropTypes.bool,\n backgroundImageUrl: PropTypes.string,\n contentType: PropTypes.string,\n mode: PropTypes.string\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n handleOnClick = field => e => {\n e.stopPropagation();\n e.preventDefault();\n const onClick = get('onClick', field);\n return onClick && onClick(e);\n };\n\n render() {\n const {\n name,\n type,\n url,\n warning,\n complete,\n quit,\n loading,\n backgroundImageUrl,\n contentType,\n mode = 'default'\n } = this.props;\n const {skin} = this.context;\n const primary = getOr('#00B0FF', 'common.primary', skin);\n const IconType = EXTERNAL_CONTENT_ICONS[type].icon;\n const IconColor = EXTERNAL_CONTENT_ICONS[type].color;\n\n const mainContentSlot = loading ? (\n <div className={style.loader}>\n <Loader />\n </div>\n ) : (\n <ExternalContentViewer\n url={url}\n mode={mode}\n backgroundImageUrl={backgroundImageUrl}\n contentType={contentType}\n />\n );\n\n const completeButton = !isNil(complete) ? (\n <Button\n type=\"button\"\n disabled={loading ? true : complete.disabled}\n onClick={loading ? identity : this.handleOnClick(complete)}\n submitValue={complete.label}\n style={{\n backgroundColor:\n complete.disabled || loading ? convert(`color(${primary} a(-50%))`) : primary,\n cursor: loading ? 'progress' : 'pointer'\n }}\n className={classnames(\n style.completeCta,\n complete.disabled || loading ? style.disabled : null,\n loading ? style.loading : null\n )}\n />\n ) : null;\n\n const warningButton = !isNil(warning) ? (\n <div className={style.leftSection}>\n <div\n onClick={this.handleOnClick(warning)}\n className={classnames(style.iconLabel, style.link)}\n >\n <QuestionIcon className={style.iconQuestion} width={24} height={24} />\n <span>{warning.label}</span>\n </div>\n </div>\n ) : null;\n\n const quitButton = !isNil(quit) ? (\n <div className={style.leftSection}>\n <span\n className={classnames(style.quitCta, loading ? style.loading : null)}\n onClick={loading ? identity : this.handleOnClick(quit)}\n >\n {quit.label}\n </span>\n </div>\n ) : null;\n\n const titleSection = !isNil(name) ? (\n <div className={classnames(style.iconLabel, style.title)}>\n <div className={style.oval} style={{backgroundColor: IconColor}}>\n <IconType className={style.iconHeader} />\n </div>\n <span\n className={style.innerHTML}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: name}}\n />\n </div>\n ) : null;\n\n const header =\n !isNil(quit) || !isEmpty(name) ? (\n <div className={style.header}>\n {quitButton}\n {titleSection}\n {isNil(quit) ? null : <div className={style.rightSection} />}\n </div>\n ) : null;\n\n const footer =\n !isNil(warning) || !isNil(complete) ? (\n <div className={style.footer}>\n {warningButton}\n {completeButton}\n {isNil(warning) ? null : <div className={style.rightSection} />}\n </div>\n ) : null;\n\n return (\n <div className={defaultWrapperStyle[mode]}>\n {header}\n {mainContentSlot}\n {footer}\n </div>\n );\n }\n}\n\nexport default ExternalCourse;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["defaultWrapperStyle","default","style","cockpit","defaultCockpit","mobile","ExternalCourse","props","context","name","type","url","quit","complete","warning","loading","backgroundImageUrl","contentType","mode","closePopin","skin","primary","IconType","EXTERNAL_CONTENT_ICONS","icon","IconColor","color","mainContentSlot","useMemo","loader","handleOnClick","useCallback","field","onClick","e","stopPropagation","preventDefault","completeButton","disabled","label","backgroundColor","convert","cursor","classnames","completeCta","warningButton","leftSection","iconLabel","link","iconQuestion","quitButton","quitCta","titleSection","title","oval","iconHeader","innerHTML","__html","header","rightSection","footer","popin","propTypes","PropTypes","string","oneOf","isRequired","shape","func","bool","CmPopin","contextTypes","Provider","childContextTypes"],"sources":["../../../src/template/external-course/index.js"],"sourcesContent":["import React, {useCallback, useMemo} from 'react';\nimport {NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon} from '@coorpacademy/nova-icons';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {noop, getOr, keys, identity, isNil, isEmpty} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport {EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport Loader from '../../atom/loader';\nimport Button from '../../atom/button';\nimport ExternalContentViewer from '../../molecule/external-content-viewer';\nimport CmPopin from '../../molecule/cm-popin';\nimport style from './style.css';\n\nconst defaultWrapperStyle = {\n default: style.default,\n cockpit: style.defaultCockpit,\n mobile: style.default\n};\n\nconst ExternalCourse = (props, context) => {\n const {\n name,\n type,\n url,\n quit,\n complete,\n warning,\n loading,\n backgroundImageUrl,\n contentType,\n mode = 'default',\n closePopin\n } = props;\n const {skin} = context;\n const primary = getOr('#00B0FF', 'common.primary', skin);\n const IconType = EXTERNAL_CONTENT_ICONS[type].icon;\n const IconColor = EXTERNAL_CONTENT_ICONS[type].color;\n\n const mainContentSlot = useMemo(() => {\n return loading ? (\n <div className={style.loader}>\n <Loader />\n </div>\n ) : (\n <ExternalContentViewer\n url={url}\n mode={mode}\n backgroundImageUrl={backgroundImageUrl}\n contentType={contentType}\n />\n );\n }, [loading, url, mode, contentType, backgroundImageUrl]);\n\n const handleOnClick = useCallback(field => {\n const onClick = getOr(noop, ['onClick'], field);\n return e => {\n e.stopPropagation();\n e.preventDefault();\n return onClick(e);\n };\n }, []);\n\n const completeButton = useMemo(() => {\n return !isNil(complete) ? (\n <Button\n type=\"button\"\n disabled={loading ? true : complete.disabled}\n onClick={loading ? identity : handleOnClick(complete)}\n submitValue={complete.label}\n style={{\n backgroundColor:\n complete.disabled || loading ? convert(`color(${primary} a(-50%))`) : primary,\n cursor: loading ? 'progress' : 'pointer'\n }}\n className={classnames(\n style.completeCta,\n complete.disabled || loading ? style.disabled : null,\n loading ? style.loading : null\n )}\n data-testid=\"complete-button\"\n />\n ) : null;\n }, [complete, loading, primary, handleOnClick]);\n\n const warningButton = useMemo(() => {\n return !isNil(warning) ? (\n <div className={style.leftSection}>\n <div onClick={handleOnClick(warning)} className={classnames(style.iconLabel, style.link)}>\n <QuestionIcon className={style.iconQuestion} width={24} height={24} />\n <span>{warning.label}</span>\n </div>\n </div>\n ) : null;\n }, [handleOnClick, warning]);\n\n const quitButton = useMemo(() => {\n return !isNil(quit) ? (\n <div className={style.leftSection}>\n <span\n className={classnames(style.quitCta, loading ? style.loading : null)}\n onClick={loading ? identity : handleOnClick(quit)}\n >\n {quit.label}\n </span>\n </div>\n ) : null;\n }, [quit, loading, handleOnClick]);\n\n const titleSection = useMemo(() => {\n return !isNil(name) ? (\n <div className={classnames(style.iconLabel, style.title)}>\n <div className={style.oval} style={{backgroundColor: IconColor}}>\n <IconType className={style.iconHeader} />\n </div>\n <span\n className={style.innerHTML}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: name}}\n />\n </div>\n ) : null;\n }, [name, IconColor]);\n\n const header = useMemo(() => {\n return !isNil(quit) || !isEmpty(name) ? (\n <div className={style.header}>\n {quitButton}\n {titleSection}\n {isNil(quit) ? null : <div className={style.rightSection} />}\n </div>\n ) : null;\n }, [name, titleSection, quit, quitButton]);\n\n const footer = useMemo(() => {\n return !isNil(warning) || !isNil(complete) ? (\n <div className={style.footer}>\n {warningButton}\n {completeButton}\n {isNil(warning) ? null : <div className={style.rightSection} />}\n </div>\n ) : null;\n }, [warning, warningButton, complete, completeButton]);\n\n const popin = useMemo(() => {\n return !isNil(closePopin) ? <CmPopin {...closePopin} /> : null;\n }, [closePopin]);\n\n return (\n <div className={defaultWrapperStyle[mode]}>\n {header}\n {popin}\n {mainContentSlot}\n {footer}\n </div>\n );\n};\n\nExternalCourse.propTypes = {\n name: PropTypes.string,\n type: PropTypes.oneOf(keys(EXTERNAL_CONTENT_ICONS)),\n url: PropTypes.string.isRequired,\n quit: PropTypes.shape({\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func\n }),\n complete: PropTypes.shape({\n label: PropTypes.string.isRequired,\n disabled: PropTypes.bool,\n onClick: PropTypes.func\n }),\n warning: PropTypes.shape({\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func\n }),\n loading: PropTypes.bool,\n backgroundImageUrl: PropTypes.string,\n contentType: PropTypes.string,\n mode: PropTypes.string,\n closePopin: PropTypes.shape({...CmPopin.propTypes})\n};\n\nExternalCourse.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default ExternalCourse;\n"],"mappings":"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"}
@@ -24,7 +24,7 @@
24
24
  }
25
25
 
26
26
  .defaultCockpit{
27
- composes:default;
27
+ composes: default;
28
28
  height: 100%;
29
29
  }
30
30
 
@@ -17,6 +17,5 @@ export const ICONS: {
17
17
  upload: any;
18
18
  down: any;
19
19
  pdf: any;
20
- back: any;
21
20
  };
22
21
  //# sourceMappingURL=button-icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-icons.d.ts","sourceRoot":"","sources":["../../src/util/button-icons.js"],"names":[],"mappings":"AAsBA;;;;;;;;;;;;;;;;;;;;EAoBE"}
1
+ {"version":3,"file":"button-icons.d.ts","sourceRoot":"","sources":["../../src/util/button-icons.js"],"names":[],"mappings":"AAqBA;;;;;;;;;;;;;;;;;;;EAmBE"}
@@ -23,8 +23,7 @@ const ICONS = {
23
23
  folders: _novaIcons.NovaSolidFilesFoldersFolders,
24
24
  upload: _novaIcons.NovaSolidFilesBasicFileUpload2,
25
25
  down: _novaIcons.NovaCompositionNavigationArrowDown,
26
- pdf: _novaIcons.NovaLineFilesOfficeFileOfficePdf,
27
- back: _novaIcons.NovaCompositionNavigationArrowLeft
26
+ pdf: _novaIcons.NovaLineFilesOfficeFileOfficePdf
28
27
  };
29
28
  exports.ICONS = ICONS;
30
29
  //# sourceMappingURL=button-icons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-icons.js","names":["ICONS","add","AddIcon","analytics","AnalyticsIcon","bin","BinIcon","BulletPointIcon","ChevronLeftIcon","ChevronRightIcon","close","CloseIcon","edit","EditIcon","key","KlfIcon","list","ListIcon","logout","LogoutIcon","publish","PublishIcon","save","SaveIcon","see","EyeIcon","folders","FoldersIcon","upload","UploadIcon","down","ArrowDown","pdf","PDF","back","ArrowLeft"],"sources":["../../src/util/button-icons.js"],"sourcesContent":["import {\n NovaSolidRemoveAddAddCircle1 as AddIcon,\n NovaCompositionCoorpacademyAnalytics as AnalyticsIcon,\n NovaSolidContentEditionBin as BinIcon,\n NovaCompositionCoorpacademyBulletPoint as BulletPointIcon,\n NovaCompositionNavigationArrowLeft as ChevronLeftIcon,\n NovaCompositionNavigationArrowRight as ChevronRightIcon,\n NovaSolidStatusClose as CloseIcon,\n NovaSolidContentEditionPencilWrite as EditIcon,\n NovaCompositionCoorpacademyEye as EyeIcon,\n NovaSolidContentContentViewModule1 as ListIcon,\n NovaSolidLoginLogout1 as LogoutIcon,\n NovaSolidApplicationsWindowUpload3 as PublishIcon,\n NovaSolidComputersSdCard as SaveIcon,\n NovaLineLoginKey1 as KlfIcon,\n NovaSolidFilesFoldersFolders as FoldersIcon,\n NovaSolidFilesBasicFileUpload2 as UploadIcon,\n NovaCompositionNavigationArrowDown as ArrowDown,\n NovaCompositionNavigationArrowLeft as ArrowLeft,\n NovaLineFilesOfficeFileOfficePdf as PDF\n} from '@coorpacademy/nova-icons';\n\nexport const ICONS = {\n add: AddIcon,\n analytics: AnalyticsIcon,\n bin: BinIcon,\n 'bullet-point': BulletPointIcon,\n 'chevron-left': ChevronLeftIcon,\n 'chevron-right': ChevronRightIcon,\n close: CloseIcon,\n edit: EditIcon,\n key: KlfIcon,\n list: ListIcon,\n logout: LogoutIcon,\n publish: PublishIcon,\n save: SaveIcon,\n see: EyeIcon,\n folders: FoldersIcon,\n upload: UploadIcon,\n down: ArrowDown,\n pdf: PDF,\n back: ArrowLeft\n};\n"],"mappings":";;;;;AAAA;;AAsBO,MAAMA,KAAK,GAAG;EACnBC,GAAG,EAAEC,uCADc;EAEnBC,SAAS,EAAEC,+CAFQ;EAGnBC,GAAG,EAAEC,qCAHc;EAInB,gBAAgBC,iDAJG;EAKnB,gBAAgBC,6CALG;EAMnB,iBAAiBC,8CANE;EAOnBC,KAAK,EAAEC,+BAPY;EAQnBC,IAAI,EAAEC,6CARa;EASnBC,GAAG,EAAEC,4BATc;EAUnBC,IAAI,EAAEC,6CAVa;EAWnBC,MAAM,EAAEC,gCAXW;EAYnBC,OAAO,EAAEC,6CAZU;EAanBC,IAAI,EAAEC,mCAba;EAcnBC,GAAG,EAAEC,yCAdc;EAenBC,OAAO,EAAEC,uCAfU;EAgBnBC,MAAM,EAAEC,yCAhBW;EAiBnBC,IAAI,EAAEC,6CAjBa;EAkBnBC,GAAG,EAAEC,2CAlBc;EAmBnBC,IAAI,EAAEC;AAnBa,CAAd"}
1
+ {"version":3,"file":"button-icons.js","names":["ICONS","add","AddIcon","analytics","AnalyticsIcon","bin","BinIcon","BulletPointIcon","ChevronLeftIcon","ChevronRightIcon","close","CloseIcon","edit","EditIcon","key","KlfIcon","list","ListIcon","logout","LogoutIcon","publish","PublishIcon","save","SaveIcon","see","EyeIcon","folders","FoldersIcon","upload","UploadIcon","down","ArrowDown","pdf","PDF"],"sources":["../../src/util/button-icons.js"],"sourcesContent":["import {\n NovaSolidRemoveAddAddCircle1 as AddIcon,\n NovaCompositionCoorpacademyAnalytics as AnalyticsIcon,\n NovaSolidContentEditionBin as BinIcon,\n NovaCompositionCoorpacademyBulletPoint as BulletPointIcon,\n NovaCompositionNavigationArrowLeft as ChevronLeftIcon,\n NovaCompositionNavigationArrowRight as ChevronRightIcon,\n NovaSolidStatusClose as CloseIcon,\n NovaSolidContentEditionPencilWrite as EditIcon,\n NovaCompositionCoorpacademyEye as EyeIcon,\n NovaSolidContentContentViewModule1 as ListIcon,\n NovaSolidLoginLogout1 as LogoutIcon,\n NovaSolidApplicationsWindowUpload3 as PublishIcon,\n NovaSolidComputersSdCard as SaveIcon,\n NovaLineLoginKey1 as KlfIcon,\n NovaSolidFilesFoldersFolders as FoldersIcon,\n NovaSolidFilesBasicFileUpload2 as UploadIcon,\n NovaCompositionNavigationArrowDown as ArrowDown,\n NovaLineFilesOfficeFileOfficePdf as PDF\n} from '@coorpacademy/nova-icons';\n\nexport const ICONS = {\n add: AddIcon,\n analytics: AnalyticsIcon,\n bin: BinIcon,\n 'bullet-point': BulletPointIcon,\n 'chevron-left': ChevronLeftIcon,\n 'chevron-right': ChevronRightIcon,\n close: CloseIcon,\n edit: EditIcon,\n key: KlfIcon,\n list: ListIcon,\n logout: LogoutIcon,\n publish: PublishIcon,\n save: SaveIcon,\n see: EyeIcon,\n folders: FoldersIcon,\n upload: UploadIcon,\n down: ArrowDown,\n pdf: PDF\n};\n"],"mappings":";;;;;AAAA;;AAqBO,MAAMA,KAAK,GAAG;EACnBC,GAAG,EAAEC,uCADc;EAEnBC,SAAS,EAAEC,+CAFQ;EAGnBC,GAAG,EAAEC,qCAHc;EAInB,gBAAgBC,iDAJG;EAKnB,gBAAgBC,6CALG;EAMnB,iBAAiBC,8CANE;EAOnBC,KAAK,EAAEC,+BAPY;EAQnBC,IAAI,EAAEC,6CARa;EASnBC,GAAG,EAAEC,4BATc;EAUnBC,IAAI,EAAEC,6CAVa;EAWnBC,MAAM,EAAEC,gCAXW;EAYnBC,OAAO,EAAEC,6CAZU;EAanBC,IAAI,EAAEC,mCAba;EAcnBC,GAAG,EAAEC,yCAdc;EAenBC,OAAO,EAAEC,uCAfU;EAgBnBC,MAAM,EAAEC,yCAhBW;EAiBnBC,IAAI,EAAEC,6CAjBa;EAkBnBC,GAAG,EAAEC;AAlBc,CAAd"}
@@ -2,4 +2,4 @@
2
2
  @value tablet: (max-width: 960px);
3
3
  @value desktop: (max-width: 1280px);
4
4
  @value wide: (max-width: 1680px);
5
- @value cm_tablet: (max-width: 1123px);
5
+ @value cm_tablet: (max-width: 1123px);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coorpacademy/components",
3
- "version": "11.14.1-alpha.3.27+b0adc6569",
3
+ "version": "11.14.2",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -56,7 +56,7 @@
56
56
  "Soualmi Djamel <djamel.soualmi@coorpacademy.com>"
57
57
  ],
58
58
  "dependencies": {
59
- "@coorpacademy/nova-icons": "4.2.0",
59
+ "@coorpacademy/nova-icons": "4.2.1",
60
60
  "@coorpacademy/react-native-animation": "1.0.3",
61
61
  "@jwplayer/jwplayer-react": "^1.1.0",
62
62
  "@types/react": "^17.0.50",
@@ -166,5 +166,5 @@
166
166
  "last 2 versions",
167
167
  "IE 11"
168
168
  ],
169
- "gitHead": "b0adc65692436f9aa8cb4916c37eb095304e80bd"
169
+ "gitHead": "d188b22d4ae4c8f4e593a1882a13ec146fdd1a4b"
170
170
  }
@@ -1,19 +0,0 @@
1
- /// <reference types="react" />
2
- import { Props } from './types';
3
- export declare const ICONS: {
4
- arrow: any;
5
- };
6
- declare const ExpandableItem: {
7
- ({ icon, title, isExpended, isLink, content, onClick, image }: Props): JSX.Element;
8
- propTypes: {
9
- title: import("prop-types").Requireable<string>;
10
- icon: import("prop-types").Requireable<string>;
11
- isExpended: import("prop-types").Requireable<boolean>;
12
- isLink: import("prop-types").Requireable<boolean>;
13
- content: import("prop-types").Requireable<string>;
14
- image: import("prop-types").Requireable<string>;
15
- onClick: import("prop-types").Requireable<(...args: any[]) => any>;
16
- };
17
- };
18
- export default ExpandableItem;
19
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/expandable-item/index.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAY,KAAK,EAAC,MAAM,SAAS,CAAC;AAGzC,eAAO,MAAM,KAAK;;CAEjB,CAAC;AAEF,QAAA,MAAM,cAAc;mEAAgE,KAAK;;;;;;;;;;CA2BxF,CAAC;AAGF,eAAe,cAAc,CAAC"}
@@ -1,44 +0,0 @@
1
- import React from 'react';
2
- import classnames from 'classnames';
3
- import { NovaCompositionNavigationArrowDown as ArrowIcon } from '@coorpacademy/nova-icons';
4
- import { propTypes } from './types';
5
- import styles from './style.css';
6
- export const ICONS = {
7
- arrow: ArrowIcon
8
- };
9
-
10
- const ExpandableItem = ({
11
- icon,
12
- title,
13
- isExpended,
14
- isLink,
15
- content,
16
- onClick,
17
- image
18
- }) => {
19
- const Icon = ICONS[icon];
20
- return /*#__PURE__*/React.createElement("div", {
21
- className: isExpended ? styles.expendedContainer : styles.container,
22
- onClick: onClick
23
- }, /*#__PURE__*/React.createElement("div", {
24
- className: classnames(styles.header, isExpended ? styles.expendedHeader : null)
25
- }, /*#__PURE__*/React.createElement("h3", {
26
- className: styles.title
27
- }, title), Icon ? /*#__PURE__*/React.createElement(Icon, {
28
- className: classnames(styles.icon, isExpended ? styles.expendedIcon : null, isLink ? styles.linkIcon : null)
29
- }) : null), isExpended ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
30
- className: styles.content // eslint-disable-next-line react/no-danger
31
- ,
32
- dangerouslySetInnerHTML: {
33
- __html: content
34
- }
35
- }), image ? /*#__PURE__*/React.createElement("img", {
36
- className: styles.image,
37
- src: image,
38
- alt: ''
39
- }) : null) : null);
40
- };
41
-
42
- ExpandableItem.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
43
- export default ExpandableItem;
44
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["React","classnames","NovaCompositionNavigationArrowDown","ArrowIcon","propTypes","styles","ICONS","arrow","ExpandableItem","icon","title","isExpended","isLink","content","onClick","image","Icon","expendedContainer","container","header","expendedHeader","expendedIcon","linkIcon","__html"],"sources":["../../../src/molecule/expandable-item/index.tsx"],"sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\nimport {NovaCompositionNavigationArrowDown as ArrowIcon} from '@coorpacademy/nova-icons';\nimport {propTypes, Props} from './types';\nimport styles from './style.css';\n\nexport const ICONS = {\n arrow: ArrowIcon\n};\n\nconst ExpandableItem = ({icon, title, isExpended, isLink, content, onClick, image}: Props) => {\n const Icon = ICONS[icon];\n return (\n <div className={isExpended ? styles.expendedContainer : styles.container} onClick={onClick}>\n <div className={classnames(styles.header, isExpended ? styles.expendedHeader : null)}>\n <h3 className={styles.title}>{title}</h3>\n {Icon ? (\n <Icon\n className={classnames(\n styles.icon,\n isExpended ? styles.expendedIcon : null,\n isLink ? styles.linkIcon : null\n )}\n />\n ) : null}\n </div>\n {isExpended ? (\n <div>\n <div\n className={styles.content} // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n {image ? <img className={styles.image} src={image} alt={''} /> : null}\n </div>\n ) : null}\n </div>\n );\n};\n\nExpandableItem.propTypes = propTypes;\nexport default ExpandableItem;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAAQC,kCAAkC,IAAIC,SAA9C,QAA8D,0BAA9D;AACA,SAAQC,SAAR,QAA+B,SAA/B;AACA,OAAOC,MAAP,MAAmB,aAAnB;AAEA,OAAO,MAAMC,KAAK,GAAG;EACnBC,KAAK,EAAEJ;AADY,CAAd;;AAIP,MAAMK,cAAc,GAAG,CAAC;EAACC,IAAD;EAAOC,KAAP;EAAcC,UAAd;EAA0BC,MAA1B;EAAkCC,OAAlC;EAA2CC,OAA3C;EAAoDC;AAApD,CAAD,KAAuE;EAC5F,MAAMC,IAAI,GAAGV,KAAK,CAACG,IAAD,CAAlB;EACA,oBACE;IAAK,SAAS,EAAEE,UAAU,GAAGN,MAAM,CAACY,iBAAV,GAA8BZ,MAAM,CAACa,SAA/D;IAA0E,OAAO,EAAEJ;EAAnF,gBACE;IAAK,SAAS,EAAEb,UAAU,CAACI,MAAM,CAACc,MAAR,EAAgBR,UAAU,GAAGN,MAAM,CAACe,cAAV,GAA2B,IAArD;EAA1B,gBACE;IAAI,SAAS,EAAEf,MAAM,CAACK;EAAtB,GAA8BA,KAA9B,CADF,EAEGM,IAAI,gBACH,oBAAC,IAAD;IACE,SAAS,EAAEf,UAAU,CACnBI,MAAM,CAACI,IADY,EAEnBE,UAAU,GAAGN,MAAM,CAACgB,YAAV,GAAyB,IAFhB,EAGnBT,MAAM,GAAGP,MAAM,CAACiB,QAAV,GAAqB,IAHR;EADvB,EADG,GAQD,IAVN,CADF,EAaGX,UAAU,gBACT,8CACE;IACE,SAAS,EAAEN,MAAM,CAACQ,OADpB,CAC6B;IAD7B;IAEE,uBAAuB,EAAE;MAACU,MAAM,EAAEV;IAAT;EAF3B,EADF,EAKGE,KAAK,gBAAG;IAAK,SAAS,EAAEV,MAAM,CAACU,KAAvB;IAA8B,GAAG,EAAEA,KAAnC;IAA0C,GAAG,EAAE;EAA/C,EAAH,GAA2D,IALnE,CADS,GAQP,IArBN,CADF;AAyBD,CA3BD;;AA6BAP,cAAc,CAACJ,SAAf,2CAA2BA,SAA3B;AACA,eAAeI,cAAf"}
@@ -1,135 +0,0 @@
1
- @value colors: "../../variables/colors.css";
2
- @value breakpoints: "../../variables/breakpoints.css";
3
- @value mobile from breakpoints;
4
- @value tablet from breakpoints;
5
- @value cm_primary_blue from colors;
6
- @value cm_grey_500 from colors;
7
- @value cm_grey_600 from colors;
8
- @value cm_grey_800 from colors;
9
- @value cm_grey_700 from colors;
10
- @value white from colors;
11
-
12
- .container {
13
- display: flex;
14
- flex-direction: column;
15
- background: white;
16
- gap: 16px;
17
- border-radius: 8px;
18
- width: 100%;
19
- display: flex;
20
- height: 72px;
21
- justify-content: center;
22
- }
23
-
24
- .header {
25
- display: flex;
26
- flex-direction: row;
27
- flex: none;
28
- order: 0;
29
- flex-grow: 0;
30
- justify-content: space-between;
31
- align-items: center;
32
- cursor: pointer;
33
- padding: 24px;
34
- gap: 16px;
35
- }
36
-
37
- .expendedContainer {
38
- display: flex;
39
- flex-direction: column;
40
- background: white;
41
- gap: 16px;
42
- border-radius: 2px;
43
- width: 100%;
44
- display: flex;
45
- justify-content: center;
46
- }
47
-
48
- .expendedHeader {
49
- padding: 24px 24px 0px 24px;
50
- }
51
-
52
- .title {
53
- font-family: Gilroy;
54
- color: cm_grey_700;
55
- margin: 0;
56
- font-weight: inherit;
57
- font-family: Gilroy;
58
- font-size: 18px;
59
- font-weight: 600;
60
- line-height: 24px;
61
- letter-spacing: 0px;
62
- text-align: left;
63
- }
64
-
65
- .icon {
66
- width: 16px;
67
- height: 16px;
68
- width: 14px;
69
- left: 5px;
70
- top: 9px;
71
- border-radius: 0px;
72
- color: cm_grey_500;
73
- flex-shrink: 0;
74
- min-width: 16px;
75
- flex-basis: 16px;
76
- }
77
-
78
- .expendedIcon {
79
- transform: rotateZ(180deg);
80
- }
81
-
82
- .linkIcon {
83
- transform: rotateZ(270deg);
84
- }
85
-
86
- .content {
87
- font-family: Gilroy;
88
- font-size: 20px;
89
- font-weight: 400;
90
- line-height: 28px;
91
- letter-spacing: 0px;
92
- text-align: left;
93
- padding: 0px 40px 32px 40px;
94
-
95
- }
96
-
97
- .image {
98
- width: 100%;
99
- }
100
-
101
- .content span{
102
- font-family: Gilroy;
103
- font-size: 20px;
104
- font-weight: 400;
105
- line-height: 28px;
106
- letter-spacing: 0px;
107
- text-align: left;
108
- color: cm_grey_600;
109
- }
110
-
111
- @media mobile {
112
- .container {
113
- display: flex;
114
- flex-direction: column;
115
- background: white;
116
- gap: 16px;
117
- border-radius: 2px;
118
- width: 100%;
119
- display: flex;
120
- justify-content: center;
121
- height: max-content;
122
- }
123
- .header {
124
- display: flex;
125
- flex-direction: row;
126
- flex: none;
127
- order: 0;
128
- flex-grow: 0;
129
- justify-content: space-between;
130
- align-items: center;
131
- cursor: pointer;
132
- padding: 12px 40px;
133
- height: max-content;
134
- }
135
- }
@@ -1,20 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- export declare const propTypes: {
3
- title: PropTypes.Requireable<string>;
4
- icon: PropTypes.Requireable<string>;
5
- isExpended: PropTypes.Requireable<boolean>;
6
- isLink: PropTypes.Requireable<boolean>;
7
- content: PropTypes.Requireable<string>;
8
- image: PropTypes.Requireable<string>;
9
- onClick: PropTypes.Requireable<(...args: any[]) => any>;
10
- };
11
- export declare type Props = {
12
- title: string;
13
- icon: 'arrow';
14
- isExpended: boolean;
15
- content: string;
16
- isLink?: boolean;
17
- image?: string;
18
- onClick: () => void;
19
- };
20
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/expandable-item/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,eAAO,MAAM,SAAS;;;;;;;;CAQrB,CAAC;AAEF,oBAAY,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC"}
@@ -1,11 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- export const propTypes = {
3
- title: PropTypes.string,
4
- icon: PropTypes.oneOf(['arrow']),
5
- isExpended: PropTypes.bool,
6
- isLink: PropTypes.bool,
7
- content: PropTypes.string,
8
- image: PropTypes.string,
9
- onClick: PropTypes.func
10
- };
11
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","names":["PropTypes","propTypes","title","string","icon","oneOf","isExpended","bool","isLink","content","image","onClick","func"],"sources":["../../../src/molecule/expandable-item/types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const propTypes = {\n title: PropTypes.string,\n icon: PropTypes.oneOf(['arrow']),\n isExpended: PropTypes.bool,\n isLink: PropTypes.bool,\n content: PropTypes.string,\n image: PropTypes.string,\n onClick: PropTypes.func\n};\n\nexport type Props = {\n title: string;\n icon: 'arrow';\n isExpended: boolean;\n content: string;\n isLink?: boolean;\n image?: string;\n onClick: () => void;\n};\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,OAAO,MAAMC,SAAS,GAAG;EACvBC,KAAK,EAAEF,SAAS,CAACG,MADM;EAEvBC,IAAI,EAAEJ,SAAS,CAACK,KAAV,CAAgB,CAAC,OAAD,CAAhB,CAFiB;EAGvBC,UAAU,EAAEN,SAAS,CAACO,IAHC;EAIvBC,MAAM,EAAER,SAAS,CAACO,IAJK;EAKvBE,OAAO,EAAET,SAAS,CAACG,MALI;EAMvBO,KAAK,EAAEV,SAAS,CAACG,MANM;EAOvBQ,OAAO,EAAEX,SAAS,CAACY;AAPI,CAAlB"}
@@ -1,18 +0,0 @@
1
- /// <reference types="react" />
2
- import { Props } from './types';
3
- declare const ExpandableList: {
4
- ({ items }: Props): JSX.Element;
5
- propTypes: {
6
- items: import("prop-types").Requireable<(import("prop-types").InferProps<{
7
- title: import("prop-types").Requireable<string>;
8
- icon: import("prop-types").Requireable<string>;
9
- isExpended: import("prop-types").Requireable<boolean>;
10
- isLink: import("prop-types").Requireable<boolean>;
11
- content: import("prop-types").Requireable<string>;
12
- image: import("prop-types").Requireable<string>;
13
- onClick: import("prop-types").Requireable<(...args: any[]) => any>;
14
- }> | null | undefined)[]>;
15
- };
16
- };
17
- export default ExpandableList;
18
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/expandable-list/index.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAY,KAAK,EAAC,MAAM,SAAS,CAAC;AAGzC,QAAA,MAAM,cAAc;gBAAa,KAAK;;;;;;;;;;;;CAYrC,CAAC;AAIF,eAAe,cAAc,CAAC"}
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
- import ExpandableItem from '../expandable-item';
3
- import { propTypes } from './types';
4
- import styles from './style.css';
5
-
6
- const ExpandableList = ({
7
- items
8
- }) => {
9
- return /*#__PURE__*/React.createElement("ul", {
10
- className: styles.list,
11
- "data-name": "expandable-item"
12
- }, items.map((item, index) => {
13
- return /*#__PURE__*/React.createElement("li", {
14
- key: `menu-link-item-${index}`,
15
- className: styles.item
16
- }, /*#__PURE__*/React.createElement(ExpandableItem, item));
17
- }));
18
- };
19
-
20
- ExpandableList.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
21
- export default ExpandableList;
22
- //# sourceMappingURL=index.js.map