@coorpacademy/components 11.19.1-alpha.4 → 11.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/es/atom/button-link/index.js +2 -2
  2. package/es/atom/button-link/index.js.map +1 -1
  3. package/es/atom/button-link/style.css +1 -0
  4. package/es/atom/drag-and-drop/index.d.ts +1 -0
  5. package/es/atom/drag-and-drop/index.d.ts.map +1 -1
  6. package/es/atom/drag-and-drop/index.js +24 -6
  7. package/es/atom/drag-and-drop/index.js.map +1 -1
  8. package/es/atom/drag-and-drop/style.css +22 -7
  9. package/es/atom/{image-upload → input-file-draggable}/index.d.ts +10 -5
  10. package/es/atom/input-file-draggable/index.d.ts.map +1 -0
  11. package/es/atom/{image-upload → input-file-draggable}/index.js +34 -11
  12. package/es/atom/input-file-draggable/index.js.map +1 -0
  13. package/es/atom/input-file-draggable/style.css +81 -0
  14. package/es/atom/title/style.css +1 -1
  15. package/es/atom/video-upload/index.d.ts +1 -0
  16. package/es/molecule/brand-form-group/index.js +5 -5
  17. package/es/molecule/brand-form-group/index.js.map +1 -1
  18. package/es/molecule/card/index.d.ts.map +1 -1
  19. package/es/molecule/card/index.js +2 -6
  20. package/es/molecule/card/index.js.map +1 -1
  21. package/es/molecule/card/style.css +2 -2
  22. package/es/molecule/cm-popin/index.d.ts.map +1 -1
  23. package/es/molecule/cm-popin/index.js +27 -20
  24. package/es/molecule/cm-popin/index.js.map +1 -1
  25. package/es/molecule/cm-popin/style.css +112 -73
  26. package/es/molecule/cm-popin/types.d.ts +182 -5
  27. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  28. package/es/molecule/cm-popin/types.js +5 -3
  29. package/es/molecule/cm-popin/types.js.map +1 -1
  30. package/es/molecule/drag-and-drop-wrapper/index.d.ts +2 -1
  31. package/es/molecule/drag-and-drop-wrapper/index.js +3 -3
  32. package/es/molecule/drag-and-drop-wrapper/index.js.map +1 -1
  33. package/es/molecule/setup-slider/index.js +3 -3
  34. package/es/molecule/setup-slider/index.js.map +1 -1
  35. package/es/molecule/title-and-checkbox-wrapper/index.d.ts +2 -1
  36. package/es/molecule/title-radio-wrapper/index.d.ts +18 -17
  37. package/es/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  38. package/es/molecule/title-radio-wrapper/index.js +2 -2
  39. package/es/molecule/title-radio-wrapper/index.js.map +1 -1
  40. package/es/molecule/title-radio-wrapper/types.d.ts +20 -19
  41. package/es/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  42. package/es/molecule/title-radio-wrapper/types.js +2 -2
  43. package/es/molecule/title-radio-wrapper/types.js.map +1 -1
  44. package/es/organism/list-item/index.d.ts.map +1 -1
  45. package/es/organism/list-item/index.js +2 -5
  46. package/es/organism/list-item/index.js.map +1 -1
  47. package/es/organism/list-item/style.css +3 -7
  48. package/es/organism/list-items/index.d.ts.map +1 -1
  49. package/es/organism/list-items/index.js +1 -3
  50. package/es/organism/list-items/index.js.map +1 -1
  51. package/es/organism/list-items/style.css +1 -4
  52. package/es/organism/rewards-form/index.d.ts +2 -1
  53. package/es/organism/select-opponents/index.d.ts +18 -17
  54. package/es/organism/select-opponents/index.d.ts.map +1 -1
  55. package/es/organism/select-opponents/types.d.ts +18 -17
  56. package/es/organism/select-opponents/types.d.ts.map +1 -1
  57. package/es/organism/setup-header/style.css +3 -1
  58. package/es/organism/title-and-input/index.d.ts +18 -17
  59. package/es/organism/title-and-input/index.d.ts.map +1 -1
  60. package/es/organism/title-and-input/types.d.ts +18 -17
  61. package/es/organism/title-and-input/types.d.ts.map +1 -1
  62. package/es/organism/wizard-contents/index.d.ts +2 -1
  63. package/es/template/app-player/loading/index.d.ts +178 -2
  64. package/es/template/app-player/player/index.d.ts +356 -4
  65. package/es/template/app-player/player/slides/index.d.ts +178 -2
  66. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  67. package/es/template/app-player/popin-correction/index.d.ts +178 -2
  68. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  69. package/es/template/app-player/popin-end/index.d.ts +178 -2
  70. package/es/template/app-review/index.d.ts +178 -2
  71. package/es/template/app-review/index.d.ts.map +1 -1
  72. package/es/template/app-review/player/prop-types.d.ts +178 -2
  73. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  74. package/es/template/app-review/prop-types.d.ts +178 -2
  75. package/es/template/app-review/prop-types.d.ts.map +1 -1
  76. package/es/template/back-office/brand-update/index.d.ts +178 -2
  77. package/es/template/cockpit/jw-uploader/index.d.ts +1 -0
  78. package/es/template/common/dashboard/index.d.ts +356 -4
  79. package/es/template/common/search-page/index.d.ts +178 -2
  80. package/es/template/common/search-page/index.d.ts.map +1 -1
  81. package/es/template/common/search-page/index.js +2 -20
  82. package/es/template/common/search-page/index.js.map +1 -1
  83. package/es/template/external-course/index.d.ts +178 -2
  84. package/es/util/proptypes.d.ts +1 -1
  85. package/es/util/proptypes.d.ts.map +1 -1
  86. package/es/util/proptypes.js +6 -5
  87. package/es/util/proptypes.js.map +1 -1
  88. package/lib/atom/button-link/index.js +2 -2
  89. package/lib/atom/button-link/index.js.map +1 -1
  90. package/lib/atom/button-link/style.css +1 -0
  91. package/lib/atom/drag-and-drop/index.d.ts +1 -0
  92. package/lib/atom/drag-and-drop/index.d.ts.map +1 -1
  93. package/lib/atom/drag-and-drop/index.js +24 -6
  94. package/lib/atom/drag-and-drop/index.js.map +1 -1
  95. package/lib/atom/drag-and-drop/style.css +22 -7
  96. package/lib/atom/{image-upload → input-file-draggable}/index.d.ts +10 -5
  97. package/lib/atom/input-file-draggable/index.d.ts.map +1 -0
  98. package/lib/atom/{image-upload → input-file-draggable}/index.js +34 -10
  99. package/lib/atom/input-file-draggable/index.js.map +1 -0
  100. package/lib/atom/input-file-draggable/style.css +81 -0
  101. package/lib/atom/title/style.css +1 -1
  102. package/lib/atom/video-upload/index.d.ts +1 -0
  103. package/lib/molecule/brand-form-group/index.js +5 -5
  104. package/lib/molecule/brand-form-group/index.js.map +1 -1
  105. package/lib/molecule/card/index.d.ts.map +1 -1
  106. package/lib/molecule/card/index.js +2 -6
  107. package/lib/molecule/card/index.js.map +1 -1
  108. package/lib/molecule/card/style.css +2 -2
  109. package/lib/molecule/cm-popin/index.d.ts.map +1 -1
  110. package/lib/molecule/cm-popin/index.js +29 -19
  111. package/lib/molecule/cm-popin/index.js.map +1 -1
  112. package/lib/molecule/cm-popin/style.css +112 -73
  113. package/lib/molecule/cm-popin/types.d.ts +182 -5
  114. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  115. package/lib/molecule/cm-popin/types.js +6 -3
  116. package/lib/molecule/cm-popin/types.js.map +1 -1
  117. package/lib/molecule/drag-and-drop-wrapper/index.d.ts +2 -1
  118. package/lib/molecule/drag-and-drop-wrapper/index.js +3 -3
  119. package/lib/molecule/drag-and-drop-wrapper/index.js.map +1 -1
  120. package/lib/molecule/setup-slider/index.js +3 -3
  121. package/lib/molecule/setup-slider/index.js.map +1 -1
  122. package/lib/molecule/title-and-checkbox-wrapper/index.d.ts +2 -1
  123. package/lib/molecule/title-radio-wrapper/index.d.ts +18 -17
  124. package/lib/molecule/title-radio-wrapper/index.d.ts.map +1 -1
  125. package/lib/molecule/title-radio-wrapper/index.js +2 -2
  126. package/lib/molecule/title-radio-wrapper/index.js.map +1 -1
  127. package/lib/molecule/title-radio-wrapper/types.d.ts +20 -19
  128. package/lib/molecule/title-radio-wrapper/types.d.ts.map +1 -1
  129. package/lib/molecule/title-radio-wrapper/types.js +2 -2
  130. package/lib/molecule/title-radio-wrapper/types.js.map +1 -1
  131. package/lib/organism/list-item/index.d.ts.map +1 -1
  132. package/lib/organism/list-item/index.js +3 -5
  133. package/lib/organism/list-item/index.js.map +1 -1
  134. package/lib/organism/list-item/style.css +3 -7
  135. package/lib/organism/list-items/index.d.ts.map +1 -1
  136. package/lib/organism/list-items/index.js +1 -3
  137. package/lib/organism/list-items/index.js.map +1 -1
  138. package/lib/organism/list-items/style.css +1 -4
  139. package/lib/organism/rewards-form/index.d.ts +2 -1
  140. package/lib/organism/select-opponents/index.d.ts +18 -17
  141. package/lib/organism/select-opponents/index.d.ts.map +1 -1
  142. package/lib/organism/select-opponents/types.d.ts +18 -17
  143. package/lib/organism/select-opponents/types.d.ts.map +1 -1
  144. package/lib/organism/setup-header/style.css +3 -1
  145. package/lib/organism/title-and-input/index.d.ts +18 -17
  146. package/lib/organism/title-and-input/index.d.ts.map +1 -1
  147. package/lib/organism/title-and-input/types.d.ts +18 -17
  148. package/lib/organism/title-and-input/types.d.ts.map +1 -1
  149. package/lib/organism/wizard-contents/index.d.ts +2 -1
  150. package/lib/template/app-player/loading/index.d.ts +178 -2
  151. package/lib/template/app-player/player/index.d.ts +356 -4
  152. package/lib/template/app-player/player/slides/index.d.ts +178 -2
  153. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  154. package/lib/template/app-player/popin-correction/index.d.ts +178 -2
  155. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  156. package/lib/template/app-player/popin-end/index.d.ts +178 -2
  157. package/lib/template/app-review/index.d.ts +178 -2
  158. package/lib/template/app-review/index.d.ts.map +1 -1
  159. package/lib/template/app-review/player/prop-types.d.ts +178 -2
  160. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  161. package/lib/template/app-review/prop-types.d.ts +178 -2
  162. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  163. package/lib/template/back-office/brand-update/index.d.ts +178 -2
  164. package/lib/template/cockpit/jw-uploader/index.d.ts +1 -0
  165. package/lib/template/common/dashboard/index.d.ts +356 -4
  166. package/lib/template/common/search-page/index.d.ts +178 -2
  167. package/lib/template/common/search-page/index.d.ts.map +1 -1
  168. package/lib/template/common/search-page/index.js +2 -24
  169. package/lib/template/common/search-page/index.js.map +1 -1
  170. package/lib/template/external-course/index.d.ts +178 -2
  171. package/lib/util/proptypes.d.ts +1 -1
  172. package/lib/util/proptypes.d.ts.map +1 -1
  173. package/lib/util/proptypes.js +10 -7
  174. package/lib/util/proptypes.js.map +1 -1
  175. package/package.json +3 -3
  176. package/es/atom/image-upload/index.d.ts.map +0 -1
  177. package/es/atom/image-upload/index.js.map +0 -1
  178. package/es/atom/image-upload/style.css +0 -28
  179. package/lib/atom/image-upload/index.d.ts.map +0 -1
  180. package/lib/atom/image-upload/index.js.map +0 -1
  181. package/lib/atom/image-upload/style.css +0 -28
@@ -9,6 +9,8 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
+ var _novaIcons = require("@coorpacademy/nova-icons");
13
+
12
14
  var _dragAndDrop = _interopRequireDefault(require("../drag-and-drop"));
13
15
 
14
16
  var _buttonLink = _interopRequireDefault(require("../button-link"));
@@ -25,7 +27,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
25
27
 
26
28
  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); }
27
29
 
28
- const ImageUpload = ({
30
+ const InputFileDraggable = ({
29
31
  title,
30
32
  description,
31
33
  previewLabel,
@@ -40,12 +42,16 @@ const ImageUpload = ({
40
42
  labelLink,
41
43
  labelButtonLink,
42
44
  hrefLink,
43
- imageTypes = 'image/*',
45
+ filesTypes = '',
44
46
  error = '',
45
47
  buttonAriaLabel,
46
48
  errorButtonLabel,
47
49
  pdfButtonLabel,
48
- pdfButtonAriaLabel
50
+ pdfButtonAriaLabel,
51
+ filesNumber = 0,
52
+ multiple = false,
53
+ required = false,
54
+ onClick
49
55
  }) => {
50
56
  const handleReset = (0, _react.useCallback)(e => {
51
57
  if ((0, _isNil2.default)(onReset)) return;
@@ -56,6 +62,10 @@ const ImageUpload = ({
56
62
  width: '40px',
57
63
  color: '#FF541F'
58
64
  };
65
+ const onClick_ = (0, _react.useCallback)(e => {
66
+ e.preventDefault();
67
+ return onClick(e);
68
+ }, [onClick]);
59
69
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_dragAndDrop.default, {
60
70
  title: title,
61
71
  description: description,
@@ -70,17 +80,20 @@ const ImageUpload = ({
70
80
  buttonAriaLabel: buttonAriaLabel,
71
81
  errorButtonLabel: errorButtonLabel,
72
82
  pdfButtonLabel: pdfButtonLabel,
73
- pdfButtonAriaLabel: pdfButtonAriaLabel
83
+ pdfButtonAriaLabel: pdfButtonAriaLabel,
84
+ multiple: multiple
74
85
  }, (onDragStart, onDragStop) => /*#__PURE__*/_react.default.createElement("input", {
75
86
  type: "file",
76
87
  name: name,
77
- accept: imageTypes,
88
+ accept: filesTypes,
78
89
  disabled: loading || disabled,
79
90
  className: _style.default.input,
80
91
  onChange: onChange,
81
92
  onDragEnter: onDragStart,
82
93
  onDrop: onDragStop,
83
- onDragLeave: onDragStop
94
+ onDragLeave: onDragStop,
95
+ multiple: multiple,
96
+ required: required
84
97
  })), labelLink && hrefLink ? /*#__PURE__*/_react.default.createElement("div", {
85
98
  className: _style.default.templateLink
86
99
  }, labelLink, /*#__PURE__*/_react.default.createElement(_buttonLink.default, {
@@ -91,20 +104,31 @@ const ImageUpload = ({
91
104
  download: true
92
105
  },
93
106
  label: labelButtonLink
94
- })) : null);
107
+ })) : null, multiple && filesNumber > 0 ? /*#__PURE__*/_react.default.createElement("div", {
108
+ className: _style.default.multipleFilesContainer
109
+ }, /*#__PURE__*/_react.default.createElement("div", {
110
+ className: _style.default.filesNumber
111
+ }, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaSolidFilesBasicFileLines, {
112
+ className: _style.default.icon
113
+ }), /*#__PURE__*/_react.default.createElement("div", null, filesNumber, " files")), /*#__PURE__*/_react.default.createElement("div", {
114
+ className: _style.default.seeDetailsButton,
115
+ onClick: onClick_
116
+ }, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyEye, {
117
+ className: _style.default.seeIcon
118
+ }), /*#__PURE__*/_react.default.createElement("div", null, "See details"))) : null);
95
119
  };
96
120
 
97
- ImageUpload.propTypes = process.env.NODE_ENV !== "production" ? _extends({}, _dragAndDrop.default.propTypes, {
121
+ InputFileDraggable.propTypes = process.env.NODE_ENV !== "production" ? _extends({}, _dragAndDrop.default.propTypes, {
98
122
  name: _propTypes.default.string,
99
123
  onChange: _propTypes.default.func,
100
124
  onReset: _propTypes.default.func,
101
- imageTypes: _proptypes.ImagePropType,
125
+ filesTypes: _proptypes.FilesPropType,
102
126
  error: _propTypes.default.string,
103
127
  buttonAriaLabel: _propTypes.default.string,
104
128
  errorButtonLabel: _propTypes.default.string,
105
129
  labelLink: _propTypes.default.string,
106
130
  hrefLink: _propTypes.default.string
107
131
  }) : {};
108
- var _default = ImageUpload;
132
+ var _default = InputFileDraggable;
109
133
  exports.default = _default;
110
134
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["InputFileDraggable","title","description","previewLabel","previewContent","uploadLabel","loading","modified","disabled","onChange","onReset","name","labelLink","labelButtonLink","hrefLink","filesTypes","error","buttonAriaLabel","errorButtonLabel","pdfButtonLabel","pdfButtonAriaLabel","filesNumber","multiple","required","onClick","handleReset","useCallback","e","preventDefault","linkCustomStyle","width","color","onClick_","onDragStart","onDragStop","style","input","templateLink","href","download","multipleFilesContainer","icon","seeDetailsButton","seeIcon","propTypes","DragAndDrop","PropTypes","string","func","FilesPropType"],"sources":["../../../src/atom/input-file-draggable/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {isNil} from 'lodash/fp';\nimport {\n NovaSolidFilesBasicFileLines as FileLinesIcon,\n NovaCompositionCoorpacademyEye as EyeIcon\n} from '@coorpacademy/nova-icons';\nimport DragAndDrop from '../drag-and-drop';\nimport Link from '../button-link';\nimport {FilesPropType} from '../../util/proptypes';\nimport style from './style.css';\n\nconst InputFileDraggable = ({\n title,\n description,\n previewLabel,\n previewContent,\n uploadLabel,\n loading,\n modified,\n disabled = false,\n onChange,\n onReset = null,\n name,\n labelLink,\n labelButtonLink,\n hrefLink,\n filesTypes = '',\n error = '',\n buttonAriaLabel,\n errorButtonLabel,\n pdfButtonLabel,\n pdfButtonAriaLabel,\n filesNumber = 0,\n multiple = false,\n required = false,\n onClick\n}) => {\n const handleReset = useCallback(\n e => {\n if (isNil(onReset)) return;\n e.preventDefault();\n return onReset(e);\n },\n [onReset]\n );\n\n const linkCustomStyle = {\n width: '40px',\n color: '#FF541F'\n };\n\n const onClick_ = useCallback(\n e => {\n e.preventDefault();\n return onClick(e);\n },\n [onClick]\n );\n\n return (\n <>\n <DragAndDrop\n title={title}\n description={description}\n previewLabel={previewLabel}\n previewContent={previewContent}\n uploadLabel={uploadLabel}\n loading={loading}\n modified={modified}\n onReset={handleReset}\n error={error}\n disabled={disabled}\n buttonAriaLabel={buttonAriaLabel}\n errorButtonLabel={errorButtonLabel}\n pdfButtonLabel={pdfButtonLabel}\n pdfButtonAriaLabel={pdfButtonAriaLabel}\n multiple={multiple}\n >\n {(onDragStart, onDragStop) => (\n <input\n type=\"file\"\n name={name}\n accept={filesTypes}\n disabled={loading || disabled}\n className={style.input}\n onChange={onChange}\n onDragEnter={onDragStart}\n onDrop={onDragStop}\n onDragLeave={onDragStop}\n multiple={multiple}\n required={required}\n />\n )}\n </DragAndDrop>\n {labelLink && hrefLink ? (\n <div className={style.templateLink}>\n {labelLink}\n <Link\n type=\"text\"\n customStyle={linkCustomStyle}\n link={{href: hrefLink, download: true}}\n label={labelButtonLink}\n />\n </div>\n ) : null}\n {multiple && filesNumber > 0 ? (\n <div className={style.multipleFilesContainer}>\n <div className={style.filesNumber}>\n <FileLinesIcon className={style.icon} />\n <div>{filesNumber} files</div>\n </div>\n <div className={style.seeDetailsButton} onClick={onClick_}>\n <EyeIcon className={style.seeIcon} />\n <div>See details</div>\n </div>\n </div>\n ) : null}\n </>\n );\n};\n\nInputFileDraggable.propTypes = {\n ...DragAndDrop.propTypes,\n name: PropTypes.string,\n onChange: PropTypes.func,\n onReset: PropTypes.func,\n filesTypes: FilesPropType,\n error: PropTypes.string,\n buttonAriaLabel: PropTypes.string,\n errorButtonLabel: PropTypes.string,\n labelLink: PropTypes.string,\n hrefLink: PropTypes.string\n};\n\nexport default InputFileDraggable;\n"],"mappings":"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"}
@@ -0,0 +1,81 @@
1
+ @value colors: "../../variables/colors.css";
2
+ @value cm_grey_50 from colors;
3
+ @value cm_grey_300 from colors;
4
+ @value cm_grey_500 from colors;
5
+ @value cm_grey_700 from colors;
6
+
7
+ .input {
8
+ width: 100%;
9
+ height: 100%;
10
+ cursor: pointer;
11
+ opacity: 0;
12
+ margin: auto;
13
+ position: absolute;
14
+ top: 0;
15
+ left: 0;
16
+ bottom: 0;
17
+ right: 0;
18
+ }
19
+
20
+ .templateLink {
21
+ display: flex;
22
+ flex-direction: row;
23
+ justify-content: center;
24
+ text-align: center;
25
+ margin-top: 16px;
26
+ background-color: cm_grey_50;
27
+ padding: 16px 0 16px 0;
28
+ border-radius: 10px;
29
+ font-family: "Gilroy";
30
+ font-size: 14px;
31
+ }
32
+
33
+ /* ---------- MULTIPLE FILES ---------- */
34
+ .multipleFilesContainer {
35
+ display: flex;
36
+ flex-direction: row;
37
+ justify-content: space-between;
38
+ text-align: center;
39
+ margin-top: 16px;
40
+ background-color: cm_grey_50;
41
+ padding: 16px 24px 16px 24px;
42
+ border-radius: 10px;
43
+ font-family: "Gilroy";
44
+ font-size: 14px;
45
+ }
46
+
47
+ .multipleFilesInfo {
48
+ display: flex;
49
+ justify-content: space-between;
50
+ align-items: center;
51
+ font-family: "Gilroy";
52
+ }
53
+
54
+ .filesNumber {
55
+ composes: multipleFilesInfo;
56
+ font-weight: 500;
57
+ color: cm_grey_700;
58
+ }
59
+
60
+ .seeDetailsButton {
61
+ composes: multipleFilesInfo;
62
+ font-weight: 700;
63
+ color: cm_grey_500;
64
+ cursor: pointer;
65
+ }
66
+
67
+ .icon {
68
+ min-width: 14px;
69
+ min-height: 14px;
70
+ max-width: 30px;
71
+ max-height: 30px;
72
+ height: 20%;
73
+ width: 20%;
74
+ transition: all 0.2s cubic-bezier(0.47, 1.04, 0.46, 2.16);
75
+ color: cm_grey_300;
76
+ }
77
+
78
+ .seeIcon {
79
+ composes: icon;
80
+ color: cm_grey_500;
81
+ }
@@ -58,7 +58,7 @@
58
58
 
59
59
  .smallSubtitleFormGroup{
60
60
  composes: subtitleFormGroup;
61
- max-width: 455px;
61
+ max-width: 450px
62
62
  }
63
63
 
64
64
  .smallSubtitleFormGroupWithoutMargin{
@@ -33,6 +33,7 @@ declare namespace VideoUpload {
33
33
  errorButtonLabel: PropTypes.Requireable<string>;
34
34
  pdfButtonLabel: PropTypes.Requireable<string>;
35
35
  pdfButtonAriaLabel: PropTypes.Requireable<string>;
36
+ multiple: PropTypes.Requireable<boolean>;
36
37
  };
37
38
  }
38
39
  import PropTypes from "prop-types";
@@ -43,7 +43,7 @@ var _inputHtml = _interopRequireDefault(require("../../atom/input-html"));
43
43
 
44
44
  var _inputDoublestep = _interopRequireDefault(require("../../atom/input-doublestep"));
45
45
 
46
- var _imageUpload = _interopRequireDefault(require("../../atom/image-upload"));
46
+ var _inputFileDraggable = _interopRequireDefault(require("../../atom/input-file-draggable"));
47
47
 
48
48
  var _setupSlider = _interopRequireDefault(require("../setup-slider"));
49
49
 
@@ -116,12 +116,12 @@ const buildInput = field => {
116
116
  case 'image':
117
117
  return /*#__PURE__*/_react.default.createElement("div", {
118
118
  className: _style.default.imageUploadContainer
119
- }, /*#__PURE__*/_react.default.createElement(_imageUpload.default, field));
119
+ }, /*#__PURE__*/_react.default.createElement(_inputFileDraggable.default, field));
120
120
 
121
121
  case 'bulkUpload':
122
122
  return /*#__PURE__*/_react.default.createElement("div", {
123
123
  className: _style.default.bulkUploadContainer
124
- }, /*#__PURE__*/_react.default.createElement(_imageUpload.default, field));
124
+ }, /*#__PURE__*/_react.default.createElement(_inputFileDraggable.default, field));
125
125
 
126
126
  case 'slider':
127
127
  return /*#__PURE__*/_react.default.createElement(_setupSlider.default, field);
@@ -236,9 +236,9 @@ BrandFormGroup.propTypes = process.env.NODE_ENV !== "production" ? {
236
236
  size: _propTypes.default.oneOf((0, _keys2.default)(inputContainerStyle))
237
237
  })), _propTypes.default.shape(_extends({}, _inputCheckbox.default.propTypes, {
238
238
  type: _propTypes.default.oneOf(['checkbox'])
239
- })), _propTypes.default.shape(_extends({}, _imageUpload.default.propTypes, {
239
+ })), _propTypes.default.shape(_extends({}, _inputFileDraggable.default.propTypes, {
240
240
  type: _propTypes.default.oneOf(['image'])
241
- })), _propTypes.default.shape(_extends({}, _imageUpload.default.propTypes, {
241
+ })), _propTypes.default.shape(_extends({}, _inputFileDraggable.default.propTypes, {
242
242
  type: _propTypes.default.oneOf(['bulkImage'])
243
243
  })), _propTypes.default.shape(_extends({}, _setupSlider.default.propTypes, {
244
244
  type: _propTypes.default.oneOf(['slider'])
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["inputContainerStyle","default","style","defaultWidth","medium","mediumWidth","large","largeWidth","buildInput","field","type","imageUploadContainer","bulkUploadContainer","buttonType","buildField","index","input","theme","size","styleInput","styleField","fieldMassiveBattle","defineLayoutClass","layout","classNames","grid","layoutBulk","BrandFormGroup","props","title","subtitle","fieldsLayout","groupLayout","fields","subtitleSize","fieldsList","convert","cap","useMemo","wrapper","groupGrid","titleWrapper","propTypes","PropTypes","string","arrayOf","oneOfType","shape","Autocomplete","oneOf","InputColor","InputReadonly","InputSwitch","InputTextarea","InputHTML","InputDoublestep","Select","InputCheckbox","ImageUpload","SetupSlider","SetupSections","InputText","BrandDownloadBox","BrandUploadBox","Button","ButtonLink","SelectMultiple","Roles","TitleAndInput"],"sources":["../../../src/molecule/brand-form-group/index.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {keys, map, snakeCase} from 'lodash/fp';\nimport classNames from 'classnames';\nimport Autocomplete from '../../atom/autocomplete';\nimport Select from '../../atom/select';\nimport SelectMultiple from '../select-multiple';\nimport InputText from '../../atom/input-text';\nimport InputColor from '../../atom/input-color';\nimport InputCheckbox from '../../atom/input-checkbox';\nimport InputReadonly from '../../atom/input-readonly';\nimport InputSwitch from '../../atom/input-switch';\nimport BrandUploadBox from '../brand-upload-box';\nimport BrandDownloadBox from '../brand-download-box';\nimport Button from '../../atom/button';\nimport InputTextarea from '../../atom/input-textarea';\nimport InputHTML from '../../atom/input-html';\nimport InputDoublestep from '../../atom/input-doublestep';\nimport ImageUpload from '../../atom/image-upload';\nimport SetupSlider from '../setup-slider';\nimport SetupSections from '../setup-sections';\nimport Title from '../../atom/title';\nimport Roles from '../coorp-manager-roles';\nimport TitleAndCheckBoxWrapper from '../title-and-checkbox-wrapper';\nimport ButtonLink from '../../atom/button-link';\nimport TitleAndInput from '../../organism/title-and-input';\nimport style from './style.css';\n\nconst inputContainerStyle = {\n default: style.defaultWidth,\n medium: style.mediumWidth,\n large: style.largeWidth\n};\n\nconst buildInput = field => {\n const {type} = field;\n\n switch (type) {\n case 'autoComplete':\n return <Autocomplete {...field} />;\n case 'color':\n return <InputColor {...field} />;\n case 'readonly':\n return <InputReadonly {...field} />;\n case 'switch':\n return <InputSwitch {...field} />;\n case 'textarea':\n return <InputTextarea {...field} />;\n case 'html':\n return <InputHTML {...field} />;\n case 'doublestep':\n return <InputDoublestep {...field} />;\n case 'select':\n return <Select {...field} theme={'coorpmanager'} />;\n case 'selectMultiple':\n return <SelectMultiple {...field} />;\n case 'checkbox':\n return <InputCheckbox {...field} />;\n case 'image':\n return (\n <div className={style.imageUploadContainer}>\n <ImageUpload {...field} />\n </div>\n );\n case 'bulkUpload':\n return (\n <div className={style.bulkUploadContainer}>\n <ImageUpload {...field} />\n </div>\n );\n case 'slider':\n return <SetupSlider {...field} />;\n case 'sections':\n return <SetupSections {...field} />;\n case 'text':\n return <InputText {...field} />;\n case 'downloadbox':\n return <BrandDownloadBox {...field} />;\n case 'uploadbox':\n return <BrandUploadBox {...field} />;\n case 'button':\n case 'link':\n return <Button {...field} />;\n case 'buttonLink':\n return <ButtonLink {...field} type={field.buttonType} />;\n case 'roles':\n return <Roles {...field} />;\n case 'titleAndCheckBoxWrapper':\n return <TitleAndCheckBoxWrapper {...field} />;\n case 'titleAndInput':\n return <TitleAndInput {...field} />;\n default:\n return <InputText {...field} />;\n }\n};\n\nconst buildField = (field, index) => {\n const input = buildInput(field);\n const {theme, size = 'default'} = field.type === 'titleAndInput' ? field.field : field;\n const styleInput = theme === 'coorpmanager' ? inputContainerStyle[size] : style.field;\n const styleField = field.type === 'titleAndInput' ? style.fieldMassiveBattle : styleInput;\n\n return (\n <div className={styleField} key={index}>\n {input}\n </div>\n );\n};\n\nconst defineLayoutClass = layout => {\n if (layout === 'grid') return classNames(style.grid);\n else if (layout === 'bulkLayout') return classNames(style.layoutBulk);\n else return classNames(null);\n};\n\nconst BrandFormGroup = props => {\n const {\n title,\n subtitle = '',\n fieldsLayout = '',\n groupLayout = '',\n fields = [],\n subtitleSize = 'standard'\n } = props;\n const fieldsList = map.convert({cap: false})(buildField, fields);\n const layout = useMemo(() => defineLayoutClass(fieldsLayout), [fieldsLayout]);\n\n return (\n <div\n data-name={`brand_form_group_${snakeCase(title)}`}\n className={classNames(style.wrapper, groupLayout === 'grid' && style.groupGrid)}\n >\n <div className={style.titleWrapper}>\n <Title title={title} subtitle={subtitle} subtitleSize={subtitleSize} type={'form-group'} />\n </div>\n <div className={layout}>{fieldsList}</div>\n </div>\n );\n};\n\nBrandFormGroup.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n subtitleSize: PropTypes.string,\n fieldsLayout: PropTypes.string,\n groupLayout: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape({\n ...Autocomplete.propTypes,\n type: PropTypes.oneOf(['autoComplete']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...InputColor.propTypes,\n type: PropTypes.oneOf(['color'])\n }),\n PropTypes.shape({\n ...InputReadonly.propTypes,\n type: PropTypes.oneOf(['readonly'])\n }),\n PropTypes.shape({\n ...InputSwitch.propTypes,\n type: PropTypes.oneOf(['switch'])\n }),\n PropTypes.shape({\n ...InputTextarea.propTypes,\n type: PropTypes.oneOf(['textarea']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...InputHTML.propTypes,\n type: PropTypes.oneOf(['html'])\n }),\n PropTypes.shape({\n ...InputDoublestep.propTypes,\n type: PropTypes.oneOf(['doublestep'])\n }),\n PropTypes.shape({\n ...Select.propTypes,\n type: PropTypes.oneOf(['select']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...InputCheckbox.propTypes,\n type: PropTypes.oneOf(['checkbox'])\n }),\n PropTypes.shape({\n ...ImageUpload.propTypes,\n type: PropTypes.oneOf(['image'])\n }),\n PropTypes.shape({\n ...ImageUpload.propTypes,\n type: PropTypes.oneOf(['bulkImage'])\n }),\n PropTypes.shape({\n ...SetupSlider.propTypes,\n type: PropTypes.oneOf(['slider'])\n }),\n PropTypes.shape({\n ...SetupSections.propTypes,\n type: PropTypes.oneOf(['sections'])\n }),\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...BrandDownloadBox.propTypes,\n type: PropTypes.oneOf(['downloadbox'])\n }),\n PropTypes.shape({\n ...BrandUploadBox.propTypes,\n type: PropTypes.oneOf(['uploadbox'])\n }),\n PropTypes.shape({\n ...Button.propTypes,\n type: PropTypes.oneOf(['button'])\n }),\n PropTypes.shape({\n ...ButtonLink.propTypes,\n buttonType: ButtonLink.propTypes.type,\n type: PropTypes.oneOf(['buttonLink'])\n }),\n PropTypes.shape({\n ...SelectMultiple.propTypes,\n type: PropTypes.oneOf(['selectMultiple'])\n }),\n PropTypes.shape({\n ...Roles.propTypes,\n type: PropTypes.oneOf(['roles'])\n }),\n PropTypes.shape(InputText.propTypes),\n PropTypes.shape({\n ...TitleAndInput.propTypes,\n type: PropTypes.oneOf(['titleAndInput'])\n })\n ])\n )\n};\nexport default BrandFormGroup;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["inputContainerStyle","default","style","defaultWidth","medium","mediumWidth","large","largeWidth","buildInput","field","type","imageUploadContainer","bulkUploadContainer","buttonType","buildField","index","input","theme","size","styleInput","styleField","fieldMassiveBattle","defineLayoutClass","layout","classNames","grid","layoutBulk","BrandFormGroup","props","title","subtitle","fieldsLayout","groupLayout","fields","subtitleSize","fieldsList","convert","cap","useMemo","wrapper","groupGrid","titleWrapper","propTypes","PropTypes","string","arrayOf","oneOfType","shape","Autocomplete","oneOf","InputColor","InputReadonly","InputSwitch","InputTextarea","InputHTML","InputDoublestep","Select","InputCheckbox","InputFileDraggable","SetupSlider","SetupSections","InputText","BrandDownloadBox","BrandUploadBox","Button","ButtonLink","SelectMultiple","Roles","TitleAndInput"],"sources":["../../../src/molecule/brand-form-group/index.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {keys, map, snakeCase} from 'lodash/fp';\nimport classNames from 'classnames';\nimport Autocomplete from '../../atom/autocomplete';\nimport Select from '../../atom/select';\nimport SelectMultiple from '../select-multiple';\nimport InputText from '../../atom/input-text';\nimport InputColor from '../../atom/input-color';\nimport InputCheckbox from '../../atom/input-checkbox';\nimport InputReadonly from '../../atom/input-readonly';\nimport InputSwitch from '../../atom/input-switch';\nimport BrandUploadBox from '../brand-upload-box';\nimport BrandDownloadBox from '../brand-download-box';\nimport Button from '../../atom/button';\nimport InputTextarea from '../../atom/input-textarea';\nimport InputHTML from '../../atom/input-html';\nimport InputDoublestep from '../../atom/input-doublestep';\nimport InputFileDraggable from '../../atom/input-file-draggable';\nimport SetupSlider from '../setup-slider';\nimport SetupSections from '../setup-sections';\nimport Title from '../../atom/title';\nimport Roles from '../coorp-manager-roles';\nimport TitleAndCheckBoxWrapper from '../title-and-checkbox-wrapper';\nimport ButtonLink from '../../atom/button-link';\nimport TitleAndInput from '../../organism/title-and-input';\nimport style from './style.css';\n\nconst inputContainerStyle = {\n default: style.defaultWidth,\n medium: style.mediumWidth,\n large: style.largeWidth\n};\n\nconst buildInput = field => {\n const {type} = field;\n\n switch (type) {\n case 'autoComplete':\n return <Autocomplete {...field} />;\n case 'color':\n return <InputColor {...field} />;\n case 'readonly':\n return <InputReadonly {...field} />;\n case 'switch':\n return <InputSwitch {...field} />;\n case 'textarea':\n return <InputTextarea {...field} />;\n case 'html':\n return <InputHTML {...field} />;\n case 'doublestep':\n return <InputDoublestep {...field} />;\n case 'select':\n return <Select {...field} theme={'coorpmanager'} />;\n case 'selectMultiple':\n return <SelectMultiple {...field} />;\n case 'checkbox':\n return <InputCheckbox {...field} />;\n case 'image':\n return (\n <div className={style.imageUploadContainer}>\n <InputFileDraggable {...field} />\n </div>\n );\n case 'bulkUpload':\n return (\n <div className={style.bulkUploadContainer}>\n <InputFileDraggable {...field} />\n </div>\n );\n case 'slider':\n return <SetupSlider {...field} />;\n case 'sections':\n return <SetupSections {...field} />;\n case 'text':\n return <InputText {...field} />;\n case 'downloadbox':\n return <BrandDownloadBox {...field} />;\n case 'uploadbox':\n return <BrandUploadBox {...field} />;\n case 'button':\n case 'link':\n return <Button {...field} />;\n case 'buttonLink':\n return <ButtonLink {...field} type={field.buttonType} />;\n case 'roles':\n return <Roles {...field} />;\n case 'titleAndCheckBoxWrapper':\n return <TitleAndCheckBoxWrapper {...field} />;\n case 'titleAndInput':\n return <TitleAndInput {...field} />;\n default:\n return <InputText {...field} />;\n }\n};\n\nconst buildField = (field, index) => {\n const input = buildInput(field);\n const {theme, size = 'default'} = field.type === 'titleAndInput' ? field.field : field;\n const styleInput = theme === 'coorpmanager' ? inputContainerStyle[size] : style.field;\n const styleField = field.type === 'titleAndInput' ? style.fieldMassiveBattle : styleInput;\n\n return (\n <div className={styleField} key={index}>\n {input}\n </div>\n );\n};\n\nconst defineLayoutClass = layout => {\n if (layout === 'grid') return classNames(style.grid);\n else if (layout === 'bulkLayout') return classNames(style.layoutBulk);\n else return classNames(null);\n};\n\nconst BrandFormGroup = props => {\n const {\n title,\n subtitle = '',\n fieldsLayout = '',\n groupLayout = '',\n fields = [],\n subtitleSize = 'standard'\n } = props;\n const fieldsList = map.convert({cap: false})(buildField, fields);\n const layout = useMemo(() => defineLayoutClass(fieldsLayout), [fieldsLayout]);\n\n return (\n <div\n data-name={`brand_form_group_${snakeCase(title)}`}\n className={classNames(style.wrapper, groupLayout === 'grid' && style.groupGrid)}\n >\n <div className={style.titleWrapper}>\n <Title title={title} subtitle={subtitle} subtitleSize={subtitleSize} type={'form-group'} />\n </div>\n <div className={layout}>{fieldsList}</div>\n </div>\n );\n};\n\nBrandFormGroup.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n subtitleSize: PropTypes.string,\n fieldsLayout: PropTypes.string,\n groupLayout: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape({\n ...Autocomplete.propTypes,\n type: PropTypes.oneOf(['autoComplete']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...InputColor.propTypes,\n type: PropTypes.oneOf(['color'])\n }),\n PropTypes.shape({\n ...InputReadonly.propTypes,\n type: PropTypes.oneOf(['readonly'])\n }),\n PropTypes.shape({\n ...InputSwitch.propTypes,\n type: PropTypes.oneOf(['switch'])\n }),\n PropTypes.shape({\n ...InputTextarea.propTypes,\n type: PropTypes.oneOf(['textarea']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...InputHTML.propTypes,\n type: PropTypes.oneOf(['html'])\n }),\n PropTypes.shape({\n ...InputDoublestep.propTypes,\n type: PropTypes.oneOf(['doublestep'])\n }),\n PropTypes.shape({\n ...Select.propTypes,\n type: PropTypes.oneOf(['select']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...InputCheckbox.propTypes,\n type: PropTypes.oneOf(['checkbox'])\n }),\n PropTypes.shape({\n ...InputFileDraggable.propTypes,\n type: PropTypes.oneOf(['image'])\n }),\n PropTypes.shape({\n ...InputFileDraggable.propTypes,\n type: PropTypes.oneOf(['bulkImage'])\n }),\n PropTypes.shape({\n ...SetupSlider.propTypes,\n type: PropTypes.oneOf(['slider'])\n }),\n PropTypes.shape({\n ...SetupSections.propTypes,\n type: PropTypes.oneOf(['sections'])\n }),\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text']),\n size: PropTypes.oneOf(keys(inputContainerStyle))\n }),\n PropTypes.shape({\n ...BrandDownloadBox.propTypes,\n type: PropTypes.oneOf(['downloadbox'])\n }),\n PropTypes.shape({\n ...BrandUploadBox.propTypes,\n type: PropTypes.oneOf(['uploadbox'])\n }),\n PropTypes.shape({\n ...Button.propTypes,\n type: PropTypes.oneOf(['button'])\n }),\n PropTypes.shape({\n ...ButtonLink.propTypes,\n buttonType: ButtonLink.propTypes.type,\n type: PropTypes.oneOf(['buttonLink'])\n }),\n PropTypes.shape({\n ...SelectMultiple.propTypes,\n type: PropTypes.oneOf(['selectMultiple'])\n }),\n PropTypes.shape({\n ...Roles.propTypes,\n type: PropTypes.oneOf(['roles'])\n }),\n PropTypes.shape(InputText.propTypes),\n PropTypes.shape({\n ...TitleAndInput.propTypes,\n type: PropTypes.oneOf(['titleAndInput'])\n })\n ])\n )\n};\nexport default BrandFormGroup;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AA2PA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AAlKF,uDA8HG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AAuPA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AA9JF,uDA0HG"}
@@ -182,12 +182,8 @@ const Card = /*#__PURE__*/(0, _react.memo)(function Card(props, context) {
182
182
  className: _style.default.lockIcon,
183
183
  height: 48
184
184
  }), /*#__PURE__*/_react.default.createElement("span", {
185
- "aria-label": disabledArialabel // eslint-disable-next-line react/no-danger
186
- ,
187
- dangerouslySetInnerHTML: {
188
- __html: disabledContent
189
- }
190
- })) : null;
185
+ "aria-label": disabledArialabel
186
+ }, disabledContent)) : null;
191
187
  const inlineBadgeStyle = {
192
188
  color: primaryColor
193
189
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["THEMES","default","coorpmanager","style","CardBackground","type","image","empty","ariaLabel","skin","externalContent","isExternalContent","primaryColor","whiteColor","EXTERNAL_CONTENT_ICONS","IconType","icon","iconColor","color","backgroundIcon","externalIconCircleWrapper","externalIcon","_backgroundIcon","classnames","externalIconCircleWithImageWrapper","backgroundColor","externalIconWithImage","imageWrapper","backgroundImage","externalContentHeader","externalBackground","emptyIcon","chapterImageWrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","bool","Card","memo","props","context","badge","adaptiv","disabled","hidden","title","author","customer","certifiedAuthor","progress","favorite","addFavoriteToolTip","removeFavoriteToolTip","onClick","onFavoriteClick","isSelected","notification","badgeCategory","badgeLabel","theme","disabledContent","cardArialabel","backgroundAriaLabel","favoriteAriaLabel","selectableAriaLabel","customerAriaLabel","badgeAriaLabel","disabledArialabel","cardContentLabelAriaLabel","cardStyle","chapter","course","lazy","grid","handleClick","useMemo","e","lock","lockContent","lockIcon","__html","inlineBadgeStyle","getType","contentType","MODES","CARD","lockWrapper","cardPropTypes","shape","Customer","number","func","Notification","CardContentInfo","oneOf","Favorite","Selectable"],"sources":["../../../src/molecule/card/index.js"],"sourcesContent":["import React, {useMemo, memo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, isEmpty, isUndefined, pick, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyPadlock as LockIcon,\n NovaCompositionCoorpacademyPictures as PicturesIcon\n} from '@coorpacademy/nova-icons';\nimport {isExternalContent, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport CardContentInfo, {MODES} from '../card-content';\nimport Customer from './customer';\nimport Favorite from './favorite';\nimport Selectable from './selectable';\nimport Notification from './notification';\nimport style from './style.css';\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst CardBackground = ({type, image, empty, 'aria-label': ariaLabel}, {skin}) => {\n const externalContent = isExternalContent(type);\n const primaryColor = get('common.primary', skin);\n const whiteColor = get('common.white', skin);\n\n if (externalContent && EXTERNAL_CONTENT_ICONS[type]) {\n const IconType = EXTERNAL_CONTENT_ICONS[type].icon;\n const iconColor = EXTERNAL_CONTENT_ICONS[type].color;\n const backgroundIcon = (\n <div className={style.externalIconCircleWrapper}>\n <IconType className={style.externalIcon} />\n </div>\n );\n\n if (image) {\n const _backgroundIcon = (\n <div\n className={classnames(\n style.externalIconCircleWrapper,\n style.externalIconCircleWithImageWrapper\n )}\n style={{\n backgroundColor: iconColor\n }}\n >\n <IconType className={style.externalIconWithImage} />\n </div>\n );\n\n return (\n <div className={style.imageWrapper}>\n <div\n data-name=\"cover\"\n aria-label={ariaLabel}\n style={{\n backgroundColor: iconColor,\n backgroundImage: `url('${image}')`\n }}\n className={classnames(style.externalContentHeader, style.externalBackground)}\n >\n {_backgroundIcon}\n </div>\n </div>\n );\n }\n return (\n <div className={style.imageWrapper}>\n <div\n data-name=\"cover\"\n aria-label={ariaLabel}\n style={{\n backgroundColor: iconColor\n }}\n className={style.externalContentHeader}\n >\n {backgroundIcon}\n </div>\n </div>\n );\n }\n\n const emptyIcon = empty ? (\n <PicturesIcon className={style.emptyIcon} style={{color: whiteColor}} />\n ) : null;\n return (\n <div\n className={classnames(\n style.imageWrapper,\n type === 'chapter' ? style.chapterImageWrapper : null\n )}\n >\n <div\n data-name=\"cover\"\n aria-label={ariaLabel}\n className={style.image}\n style={{\n backgroundColor: primaryColor,\n backgroundImage: image ? `url('${image}')` : 'none'\n }}\n >\n {emptyIcon}\n </div>\n </div>\n );\n};\n\nCardBackground.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nCardBackground.propTypes = {\n type: PropTypes.string,\n image: PropTypes.string,\n empty: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst Card = memo(function Card(props, context) {\n const {skin} = context;\n const {\n image,\n badge,\n adaptiv,\n disabled: hidden = false,\n type = 'course',\n title,\n author,\n customer,\n certifiedAuthor,\n progress,\n favorite,\n addFavoriteToolTip,\n removeFavoriteToolTip,\n onClick,\n onFavoriteClick,\n isSelected,\n notification,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n disabledContent,\n 'aria-label': cardArialabel,\n 'background-aria-label': backgroundAriaLabel,\n 'favorite-aria-label': favoriteAriaLabel,\n 'selectable-aria-label': selectableAriaLabel,\n 'customer-aria-label': customerAriaLabel,\n 'badge-aria-label': badgeAriaLabel,\n 'disabled-aria-label': disabledArialabel,\n 'card-content-aria-label': cardContentLabelAriaLabel\n } = props;\n const empty = isEmpty(pick(['title', 'type', 'author', 'image'], props));\n const primaryColor = get('common.primary', skin);\n const cardStyle = classnames(\n THEMES[theme],\n type === 'chapter' ? style.chapter : style.course,\n title ? null : style.lazy,\n style.grid,\n empty ? style.empty : null\n );\n const disabled = hidden && (!isSelected || isUndefined(isSelected));\n const handleClick = useMemo(() => e => onClick(e), [onClick]);\n const lock = disabled ? (\n <div className={style.lockContent}>\n <LockIcon className={style.lockIcon} height={48} />\n <span\n aria-label={disabledArialabel}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: disabledContent}}\n />\n </div>\n ) : null;\n const inlineBadgeStyle = {color: primaryColor};\n const getType = contentType => {\n switch (contentType) {\n case 'chapter':\n return 'microlearning';\n case 'course':\n return 'learner';\n default:\n return contentType;\n }\n };\n\n return (\n <div\n className={cardStyle}\n data-name=\"card\"\n data-lock={disabled}\n data-type={getType(type)}\n disabled={disabled}\n onClick={handleClick}\n aria-label={cardArialabel}\n >\n <CardBackground type={type} image={image} empty={empty} aria-label={backgroundAriaLabel} />\n {isUndefined(isSelected) && !isUndefined(favorite) ? (\n <Favorite\n className={style.favorite}\n favorite={favorite}\n disabled={disabled}\n onFavoriteClick={onFavoriteClick}\n addFavoriteToolTip={addFavoriteToolTip}\n removeFavoriteToolTip={removeFavoriteToolTip}\n aria-label={favoriteAriaLabel}\n />\n ) : null}\n <Selectable isSelected={isSelected} hidden={hidden} aria-label={selectableAriaLabel} />\n {notification ? <Notification {...notification} /> : null}\n {customer ? (\n <Customer\n {...customer}\n theme={theme}\n type={type}\n disabled={disabled}\n aria-label={customerAriaLabel}\n />\n ) : null}\n <CardContentInfo\n mode={MODES.CARD}\n adaptiv={adaptiv}\n author={author}\n certifiedAuthor={certifiedAuthor}\n disabled={disabled}\n empty={empty}\n progress={progress}\n title={title}\n type={type}\n badgeCategory={badgeCategory}\n badgeLabel={badgeLabel}\n theme={theme}\n aria-label={cardContentLabelAriaLabel}\n />\n {badge ? (\n <div className={style.badge} style={inlineBadgeStyle} aria-label={badgeAriaLabel}>\n {badge}\n </div>\n ) : null}\n {disabled ? (\n <div className={style.lockWrapper} aria-label={disabledArialabel}>\n {lock}\n </div>\n ) : null}\n </div>\n );\n});\n\nCard.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport const cardPropTypes = {\n badge: PropTypes.string,\n image: PropTypes.string,\n disabled: PropTypes.bool,\n adaptiv: PropTypes.bool,\n type: PropTypes.string,\n title: PropTypes.string,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n customer: PropTypes.shape(Customer.propTypes),\n progress: PropTypes.number,\n favorite: PropTypes.bool,\n addFavoriteToolTip: PropTypes.string,\n removeFavoriteToolTip: PropTypes.string,\n onClick: PropTypes.func,\n onFavoriteClick: PropTypes.func,\n isSelected: PropTypes.bool,\n notification: PropTypes.shape(Notification.propTypes),\n badgeCategory: CardContentInfo.propTypes.badgeCategory,\n badgeLabel: CardContentInfo.propTypes.badgeLabel,\n theme: PropTypes.oneOf(keys(THEMES)),\n disabledContent: PropTypes.string,\n 'aria-label': PropTypes.string,\n 'background-aria-label': PropTypes.string,\n 'favorite-aria-label': Favorite.propTypes['aria-label'],\n 'selectable-aria-label': Selectable.propTypes['aria-label'],\n 'customer-aria-label': Customer.propTypes['aria-label'],\n 'badge-aria-label': PropTypes.string,\n 'disabled-aria-label': PropTypes.string,\n 'card-content-aria-label': CardContentInfo.propTypes['aria-label']\n};\n\nCard.propTypes = cardPropTypes;\n\nexport default Card;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["THEMES","default","coorpmanager","style","CardBackground","type","image","empty","ariaLabel","skin","externalContent","isExternalContent","primaryColor","whiteColor","EXTERNAL_CONTENT_ICONS","IconType","icon","iconColor","color","backgroundIcon","externalIconCircleWrapper","externalIcon","_backgroundIcon","classnames","externalIconCircleWithImageWrapper","backgroundColor","externalIconWithImage","imageWrapper","backgroundImage","externalContentHeader","externalBackground","emptyIcon","chapterImageWrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","bool","Card","memo","props","context","badge","adaptiv","disabled","hidden","title","author","customer","certifiedAuthor","progress","favorite","addFavoriteToolTip","removeFavoriteToolTip","onClick","onFavoriteClick","isSelected","notification","badgeCategory","badgeLabel","theme","disabledContent","cardArialabel","backgroundAriaLabel","favoriteAriaLabel","selectableAriaLabel","customerAriaLabel","badgeAriaLabel","disabledArialabel","cardContentLabelAriaLabel","cardStyle","chapter","course","lazy","grid","handleClick","useMemo","e","lock","lockContent","lockIcon","inlineBadgeStyle","getType","contentType","MODES","CARD","lockWrapper","cardPropTypes","shape","Customer","number","func","Notification","CardContentInfo","oneOf","Favorite","Selectable"],"sources":["../../../src/molecule/card/index.js"],"sourcesContent":["import React, {useMemo, memo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, isEmpty, isUndefined, pick, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyPadlock as LockIcon,\n NovaCompositionCoorpacademyPictures as PicturesIcon\n} from '@coorpacademy/nova-icons';\nimport {isExternalContent, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport CardContentInfo, {MODES} from '../card-content';\nimport Customer from './customer';\nimport Favorite from './favorite';\nimport Selectable from './selectable';\nimport Notification from './notification';\nimport style from './style.css';\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst CardBackground = ({type, image, empty, 'aria-label': ariaLabel}, {skin}) => {\n const externalContent = isExternalContent(type);\n const primaryColor = get('common.primary', skin);\n const whiteColor = get('common.white', skin);\n\n if (externalContent && EXTERNAL_CONTENT_ICONS[type]) {\n const IconType = EXTERNAL_CONTENT_ICONS[type].icon;\n const iconColor = EXTERNAL_CONTENT_ICONS[type].color;\n const backgroundIcon = (\n <div className={style.externalIconCircleWrapper}>\n <IconType className={style.externalIcon} />\n </div>\n );\n\n if (image) {\n const _backgroundIcon = (\n <div\n className={classnames(\n style.externalIconCircleWrapper,\n style.externalIconCircleWithImageWrapper\n )}\n style={{\n backgroundColor: iconColor\n }}\n >\n <IconType className={style.externalIconWithImage} />\n </div>\n );\n\n return (\n <div className={style.imageWrapper}>\n <div\n data-name=\"cover\"\n aria-label={ariaLabel}\n style={{\n backgroundColor: iconColor,\n backgroundImage: `url('${image}')`\n }}\n className={classnames(style.externalContentHeader, style.externalBackground)}\n >\n {_backgroundIcon}\n </div>\n </div>\n );\n }\n return (\n <div className={style.imageWrapper}>\n <div\n data-name=\"cover\"\n aria-label={ariaLabel}\n style={{\n backgroundColor: iconColor\n }}\n className={style.externalContentHeader}\n >\n {backgroundIcon}\n </div>\n </div>\n );\n }\n\n const emptyIcon = empty ? (\n <PicturesIcon className={style.emptyIcon} style={{color: whiteColor}} />\n ) : null;\n return (\n <div\n className={classnames(\n style.imageWrapper,\n type === 'chapter' ? style.chapterImageWrapper : null\n )}\n >\n <div\n data-name=\"cover\"\n aria-label={ariaLabel}\n className={style.image}\n style={{\n backgroundColor: primaryColor,\n backgroundImage: image ? `url('${image}')` : 'none'\n }}\n >\n {emptyIcon}\n </div>\n </div>\n );\n};\n\nCardBackground.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nCardBackground.propTypes = {\n type: PropTypes.string,\n image: PropTypes.string,\n empty: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst Card = memo(function Card(props, context) {\n const {skin} = context;\n const {\n image,\n badge,\n adaptiv,\n disabled: hidden = false,\n type = 'course',\n title,\n author,\n customer,\n certifiedAuthor,\n progress,\n favorite,\n addFavoriteToolTip,\n removeFavoriteToolTip,\n onClick,\n onFavoriteClick,\n isSelected,\n notification,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n disabledContent,\n 'aria-label': cardArialabel,\n 'background-aria-label': backgroundAriaLabel,\n 'favorite-aria-label': favoriteAriaLabel,\n 'selectable-aria-label': selectableAriaLabel,\n 'customer-aria-label': customerAriaLabel,\n 'badge-aria-label': badgeAriaLabel,\n 'disabled-aria-label': disabledArialabel,\n 'card-content-aria-label': cardContentLabelAriaLabel\n } = props;\n const empty = isEmpty(pick(['title', 'type', 'author', 'image'], props));\n const primaryColor = get('common.primary', skin);\n const cardStyle = classnames(\n THEMES[theme],\n type === 'chapter' ? style.chapter : style.course,\n title ? null : style.lazy,\n style.grid,\n empty ? style.empty : null\n );\n const disabled = hidden && (!isSelected || isUndefined(isSelected));\n const handleClick = useMemo(() => e => onClick(e), [onClick]);\n const lock = disabled ? (\n <div className={style.lockContent}>\n <LockIcon className={style.lockIcon} height={48} />\n <span aria-label={disabledArialabel}>{disabledContent}</span>\n </div>\n ) : null;\n const inlineBadgeStyle = {color: primaryColor};\n const getType = contentType => {\n switch (contentType) {\n case 'chapter':\n return 'microlearning';\n case 'course':\n return 'learner';\n default:\n return contentType;\n }\n };\n\n return (\n <div\n className={cardStyle}\n data-name=\"card\"\n data-lock={disabled}\n data-type={getType(type)}\n disabled={disabled}\n onClick={handleClick}\n aria-label={cardArialabel}\n >\n <CardBackground type={type} image={image} empty={empty} aria-label={backgroundAriaLabel} />\n {isUndefined(isSelected) && !isUndefined(favorite) ? (\n <Favorite\n className={style.favorite}\n favorite={favorite}\n disabled={disabled}\n onFavoriteClick={onFavoriteClick}\n addFavoriteToolTip={addFavoriteToolTip}\n removeFavoriteToolTip={removeFavoriteToolTip}\n aria-label={favoriteAriaLabel}\n />\n ) : null}\n <Selectable isSelected={isSelected} hidden={hidden} aria-label={selectableAriaLabel} />\n {notification ? <Notification {...notification} /> : null}\n {customer ? (\n <Customer\n {...customer}\n theme={theme}\n type={type}\n disabled={disabled}\n aria-label={customerAriaLabel}\n />\n ) : null}\n <CardContentInfo\n mode={MODES.CARD}\n adaptiv={adaptiv}\n author={author}\n certifiedAuthor={certifiedAuthor}\n disabled={disabled}\n empty={empty}\n progress={progress}\n title={title}\n type={type}\n badgeCategory={badgeCategory}\n badgeLabel={badgeLabel}\n theme={theme}\n aria-label={cardContentLabelAriaLabel}\n />\n {badge ? (\n <div className={style.badge} style={inlineBadgeStyle} aria-label={badgeAriaLabel}>\n {badge}\n </div>\n ) : null}\n {disabled ? (\n <div className={style.lockWrapper} aria-label={disabledArialabel}>\n {lock}\n </div>\n ) : null}\n </div>\n );\n});\n\nCard.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport const cardPropTypes = {\n badge: PropTypes.string,\n image: PropTypes.string,\n disabled: PropTypes.bool,\n adaptiv: PropTypes.bool,\n type: PropTypes.string,\n title: PropTypes.string,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n customer: PropTypes.shape(Customer.propTypes),\n progress: PropTypes.number,\n favorite: PropTypes.bool,\n addFavoriteToolTip: PropTypes.string,\n removeFavoriteToolTip: PropTypes.string,\n onClick: PropTypes.func,\n onFavoriteClick: PropTypes.func,\n isSelected: PropTypes.bool,\n notification: PropTypes.shape(Notification.propTypes),\n badgeCategory: CardContentInfo.propTypes.badgeCategory,\n badgeLabel: CardContentInfo.propTypes.badgeLabel,\n theme: PropTypes.oneOf(keys(THEMES)),\n disabledContent: PropTypes.string,\n 'aria-label': PropTypes.string,\n 'background-aria-label': PropTypes.string,\n 'favorite-aria-label': Favorite.propTypes['aria-label'],\n 'selectable-aria-label': Selectable.propTypes['aria-label'],\n 'customer-aria-label': Customer.propTypes['aria-label'],\n 'badge-aria-label': PropTypes.string,\n 'disabled-aria-label': PropTypes.string,\n 'card-content-aria-label': CardContentInfo.propTypes['aria-label']\n};\n\nCard.propTypes = cardPropTypes;\n\nexport default Card;\n"],"mappings":"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"}
@@ -206,7 +206,7 @@
206
206
 
207
207
  .lockWrapper:hover span {
208
208
  font-weight: 600;
209
- width: 174px;
209
+ width: 150px;
210
210
  }
211
211
 
212
212
  .lockContent {
@@ -217,7 +217,7 @@
217
217
  }
218
218
 
219
219
  .lockContent span {
220
- width: 174px;
220
+ width: 134px;
221
221
  height: 40px;
222
222
  color: white;
223
223
  text-align: center;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/index.js"],"names":[],"mappings":";AAsBA,kDA6MC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/index.js"],"names":[],"mappings":";AA+BA,kDAwOC"}
@@ -9,6 +9,10 @@ var _novaIcons = require("@coorpacademy/nova-icons");
9
9
 
10
10
  var _map = _interopRequireDefault(require("lodash/fp/map"));
11
11
 
12
+ var _isEmpty = _interopRequireDefault(require("lodash/fp/isEmpty"));
13
+
14
+ var _classnames = _interopRequireDefault(require("classnames"));
15
+
12
16
  var _buttonLink = _interopRequireDefault(require("../../atom/button-link"));
13
17
 
14
18
  var _buttonLinkIconOnly = _interopRequireDefault(require("../../atom/button-link-icon-only"));
@@ -19,6 +23,8 @@ var _title = _interopRequireDefault(require("../../atom/title"));
19
23
 
20
24
  var _cardsGrid = _interopRequireDefault(require("../../organism/cards-grid"));
21
25
 
26
+ var _listItems = _interopRequireDefault(require("../../organism/list-items"));
27
+
22
28
  var _style = _interopRequireDefault(require("./style.css"));
23
29
 
24
30
  var _types = _interopRequireDefault(require("./types"));
@@ -28,7 +34,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
28
34
  const IconType = {
29
35
  lockedContent: /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyPadlock, {
30
36
  className: _style.default.lockIcon
31
- })
37
+ }),
38
+ fileZipped: /*#__PURE__*/_react.default.createElement("div", {
39
+ className: _style.default.filesListIconContainer
40
+ }, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaSolidFilesBasicFileLines, {
41
+ className: _style.default.filesListIcon
42
+ }))
32
43
  };
33
44
 
34
45
  const CMPopin = props => {
@@ -68,19 +79,12 @@ const CMPopin = props => {
68
79
  backgroundImage
69
80
  } = header;
70
81
  const TopTitleIcon = IconType[headerIcon];
71
-
72
- if (title) {
73
- return /*#__PURE__*/_react.default.createElement("div", {
74
- className: _style.default.headerContent
75
- }, TopTitleIcon, /*#__PURE__*/_react.default.createElement("div", {
76
- className: _style.default.headerTitle
77
- }, /*#__PURE__*/_react.default.createElement(_title.default, title)));
78
- }
79
-
80
- return /*#__PURE__*/_react.default.createElement("img", {
82
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, title ? /*#__PURE__*/_react.default.createElement("div", {
83
+ className: _style.default.headerContent
84
+ }, TopTitleIcon, /*#__PURE__*/_react.default.createElement(_title.default, title)) : null, backgroundImage ? /*#__PURE__*/_react.default.createElement("img", {
81
85
  className: _style.default.headerBackground,
82
86
  src: backgroundImage
83
- });
87
+ }) : null);
84
88
  }
85
89
 
86
90
  if (mode === 'cookie') return /*#__PURE__*/_react.default.createElement("div", {
@@ -149,15 +153,24 @@ const CMPopin = props => {
149
153
  type,
150
154
  list
151
155
  } = items;
152
- return type === 'content' ? /*#__PURE__*/_react.default.createElement(_cardsGrid.default, list) : null;
156
+ if ((0, _isEmpty.default)(list)) return null;
157
+ if (type === 'content') return /*#__PURE__*/_react.default.createElement("div", {
158
+ className: _style.default.itemsContainer,
159
+ "data-name": 'cm-popin-cards'
160
+ }, /*#__PURE__*/_react.default.createElement(_cardsGrid.default, list));
161
+ if (type === 'list') return /*#__PURE__*/_react.default.createElement("div", {
162
+ className: _style.default.filesListContainer
163
+ }, /*#__PURE__*/_react.default.createElement(_listItems.default, list));
164
+ return null;
153
165
  };
154
166
 
167
+ const wrapperPopinStyle = (0, _classnames.default)(mode === 'cookie' && _style.default.popinCookie, mode === 'list' && _style.default.popinFilesList, _style.default.popin);
155
168
  return /*#__PURE__*/_react.default.createElement("div", {
156
169
  className: mode !== 'cookie' ? _style.default.background : null,
157
170
  style: backgroundImageStyle,
158
171
  "data-name": 'cm-popin-container'
159
172
  }, /*#__PURE__*/_react.default.createElement("div", {
160
- className: mode === 'cookie' ? _style.default.popinCookie : _style.default.popin
173
+ className: wrapperPopinStyle
161
174
  }, /*#__PURE__*/_react.default.createElement("header", {
162
175
  className: _style.default.popinHeader
163
176
  }, renderHeader(), onClose ? /*#__PURE__*/_react.default.createElement(_buttonLinkIconOnly.default, {
@@ -166,7 +179,7 @@ const CMPopin = props => {
166
179
  "aria-label": 'close-icon',
167
180
  size: "small",
168
181
  icon: "close"
169
- }) : null), mode !== 'items' ? /*#__PURE__*/_react.default.createElement("div", {
182
+ }) : null), mode !== 'items' && mode !== 'list' ? /*#__PURE__*/_react.default.createElement("div", {
170
183
  className: mode === 'cookie' || mode === 'information' ? _style.default.cookieTitleContainer : _style.default.titleContainer
171
184
  }, /*#__PURE__*/_react.default.createElement("div", {
172
185
  className: _style.default.contentSection
@@ -187,10 +200,7 @@ const CMPopin = props => {
187
200
  }
188
201
  }) : null) : null, descriptionBtnTxt ? /*#__PURE__*/_react.default.createElement("div", {
189
202
  className: _style.default.descriptionBtn
190
- }, descriptionBtnTxt) : null, items ? /*#__PURE__*/_react.default.createElement("div", {
191
- className: _style.default.itemsContainer,
192
- "data-name": 'cm-popin-cards'
193
- }, renderItems()) : null, renderBtnSwitch(), firstButton || secondButton || thirdButton ? /*#__PURE__*/_react.default.createElement("div", {
203
+ }, descriptionBtnTxt) : null, !(0, _isEmpty.default)(items) ? renderItems() : null, renderBtnSwitch(), firstButton || secondButton || thirdButton ? /*#__PURE__*/_react.default.createElement("div", {
194
204
  className: _style.default.buttonContainer
195
205
  }, firstButton ? /*#__PURE__*/_react.default.createElement("div", {
196
206
  className: firstButton.largeButton ? _style.default.largeButton : _style.default.button