@coorpacademy/components 11.19.1 → 11.19.2-alpha.11

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 (33) hide show
  1. package/es/atom/title/style.css +1 -1
  2. package/es/molecule/card/index.d.ts.map +1 -1
  3. package/es/molecule/card/index.js +6 -2
  4. package/es/molecule/card/index.js.map +1 -1
  5. package/es/molecule/card/style.css +2 -2
  6. package/es/molecule/cm-popin/index.d.ts +1 -1
  7. package/es/molecule/cm-popin/index.d.ts.map +1 -1
  8. package/es/molecule/cm-popin/index.js +23 -5
  9. package/es/molecule/cm-popin/index.js.map +1 -1
  10. package/es/molecule/cm-popin/style.css +17 -0
  11. package/es/template/common/dashboard/index.d.ts.map +1 -1
  12. package/es/template/common/dashboard/index.js.map +1 -1
  13. package/es/template/common/dashboard/style.css +4 -0
  14. package/es/template/common/search-page/index.js +4 -2
  15. package/es/template/common/search-page/index.js.map +1 -1
  16. package/es/template/common/search-page/style.css +4 -0
  17. package/lib/atom/title/style.css +1 -1
  18. package/lib/molecule/card/index.d.ts.map +1 -1
  19. package/lib/molecule/card/index.js +6 -2
  20. package/lib/molecule/card/index.js.map +1 -1
  21. package/lib/molecule/card/style.css +2 -2
  22. package/lib/molecule/cm-popin/index.d.ts +1 -1
  23. package/lib/molecule/cm-popin/index.d.ts.map +1 -1
  24. package/lib/molecule/cm-popin/index.js +27 -5
  25. package/lib/molecule/cm-popin/index.js.map +1 -1
  26. package/lib/molecule/cm-popin/style.css +17 -0
  27. package/lib/template/common/dashboard/index.d.ts.map +1 -1
  28. package/lib/template/common/dashboard/index.js.map +1 -1
  29. package/lib/template/common/dashboard/style.css +4 -0
  30. package/lib/template/common/search-page/index.js +8 -2
  31. package/lib/template/common/search-page/index.js.map +1 -1
  32. package/lib/template/common/search-page/style.css +4 -0
  33. package/package.json +2 -2
@@ -58,7 +58,7 @@
58
58
 
59
59
  .smallSubtitleFormGroup{
60
60
  composes: subtitleFormGroup;
61
- max-width: 450px
61
+ max-width: 455px;
62
62
  }
63
63
 
64
64
  .smallSubtitleFormGroupWithoutMargin{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AAuPA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AA9JF,uDA0HG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AA2PA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AAlKF,uDA8HG"}
@@ -160,8 +160,12 @@ const Card = /*#__PURE__*/memo(function Card(props, context) {
160
160
  className: style.lockIcon,
161
161
  height: 48
162
162
  }), /*#__PURE__*/React.createElement("span", {
163
- "aria-label": disabledArialabel
164
- }, disabledContent)) : null;
163
+ "aria-label": disabledArialabel // eslint-disable-next-line react/no-danger
164
+ ,
165
+ dangerouslySetInnerHTML: {
166
+ __html: disabledContent
167
+ }
168
+ })) : null;
165
169
  const inlineBadgeStyle = {
166
170
  color: primaryColor
167
171
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useMemo","memo","PropTypes","classnames","NovaCompositionCoorpacademyPadlock","LockIcon","NovaCompositionCoorpacademyPictures","PicturesIcon","isExternalContent","EXTERNAL_CONTENT_ICONS","Provider","CardContentInfo","MODES","Customer","Favorite","Selectable","Notification","style","THEMES","default","coorpmanager","CardBackground","type","image","empty","ariaLabel","skin","externalContent","primaryColor","whiteColor","IconType","icon","iconColor","color","backgroundIcon","externalIconCircleWrapper","externalIcon","_backgroundIcon","externalIconCircleWithImageWrapper","backgroundColor","externalIconWithImage","imageWrapper","backgroundImage","externalContentHeader","externalBackground","emptyIcon","chapterImageWrapper","contextTypes","childContextTypes","propTypes","string","bool","Card","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","e","lock","lockContent","lockIcon","inlineBadgeStyle","getType","contentType","CARD","lockWrapper","cardPropTypes","shape","number","func","oneOf"],"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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"}
1
+ {"version":3,"file":"index.js","names":["React","useMemo","memo","PropTypes","classnames","NovaCompositionCoorpacademyPadlock","LockIcon","NovaCompositionCoorpacademyPictures","PicturesIcon","isExternalContent","EXTERNAL_CONTENT_ICONS","Provider","CardContentInfo","MODES","Customer","Favorite","Selectable","Notification","style","THEMES","default","coorpmanager","CardBackground","type","image","empty","ariaLabel","skin","externalContent","primaryColor","whiteColor","IconType","icon","iconColor","color","backgroundIcon","externalIconCircleWrapper","externalIcon","_backgroundIcon","externalIconCircleWithImageWrapper","backgroundColor","externalIconWithImage","imageWrapper","backgroundImage","externalContentHeader","externalBackground","emptyIcon","chapterImageWrapper","contextTypes","childContextTypes","propTypes","string","bool","Card","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","e","lock","lockContent","lockIcon","__html","inlineBadgeStyle","getType","contentType","CARD","lockWrapper","cardPropTypes","shape","number","func","oneOf"],"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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"}
@@ -206,7 +206,7 @@
206
206
 
207
207
  .lockWrapper:hover span {
208
208
  font-weight: 600;
209
- width: 150px;
209
+ width: 174px;
210
210
  }
211
211
 
212
212
  .lockContent {
@@ -217,7 +217,7 @@
217
217
  }
218
218
 
219
219
  .lockContent span {
220
- width: 134px;
220
+ width: 174px;
221
221
  height: 40px;
222
222
  color: white;
223
223
  text-align: center;
@@ -1,5 +1,5 @@
1
1
  export default CMPopin;
2
- declare function CMPopin(props: any): JSX.Element;
2
+ declare function CMPopin(props: any): JSX.Element | null;
3
3
  declare namespace CMPopin {
4
4
  export { propTypes };
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/index.js"],"names":[],"mappings":";AA+BA,kDAwOC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/index.js"],"names":[],"mappings":";AAgCA,yDAsPC"}
@@ -1,4 +1,5 @@
1
- import React from 'react';
1
+ // import React from 'react';
2
+ import React, { useRef, useEffect, useState } from 'react';
2
3
  import { NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond, NovaSolidApplicationsWindowUpload3 as WindowUpload, NovaLineSettingsCookie as Cookie, NovaSolidSpaceMoonRocket as MoonRocket, NovaCompositionCoorpacademyPadlock as LockIcon, NovaLineStatusCheckCircle1 as CheckCircle1, NovaSolidFilesBasicFileLines as FileLinesIcon } from '@coorpacademy/nova-icons';
3
4
  import map from 'lodash/fp/map';
4
5
  import isEmpty from 'lodash/fp/isEmpty';
@@ -50,6 +51,22 @@ const CMPopin = props => {
50
51
  backgroundImage: `url(${backgroundImageUrl})`,
51
52
  backgroundSize: 'cover'
52
53
  } : null;
54
+ const [shloudRender, setShouldRendered] = useState(true);
55
+ const nodeRef = useRef(null);
56
+ useEffect(() => {
57
+ if (mode === 'items') {
58
+ const closePopin = e => {
59
+ if (nodeRef && nodeRef.current && !nodeRef.current.contains(e.target)) {
60
+ setShouldRendered(false);
61
+ }
62
+ };
63
+
64
+ document.addEventListener('click', closePopin);
65
+ return () => {
66
+ document.removeEventListener('click', closePopin);
67
+ };
68
+ }
69
+ }, [mode]);
53
70
 
54
71
  const renderHeader = () => {
55
72
  if (header) {
@@ -144,13 +161,14 @@ const CMPopin = props => {
144
161
  return null;
145
162
  };
146
163
 
147
- const wrapperPopinStyle = classNames(mode === 'cookie' && style.popinCookie, mode === 'list' && style.popinFilesList, style.popin);
148
- return /*#__PURE__*/React.createElement("div", {
164
+ const wrapperPopinStyle = classNames(mode === 'cookie' && style.popinCookie, mode === 'list' && style.popinFilesList, mode === 'items' && style.popinItems, style.popin);
165
+ return shloudRender ? /*#__PURE__*/React.createElement("div", {
149
166
  className: mode !== 'cookie' ? style.background : null,
150
167
  style: backgroundImageStyle,
151
168
  "data-name": 'cm-popin-container'
152
169
  }, /*#__PURE__*/React.createElement("div", {
153
- className: wrapperPopinStyle
170
+ className: wrapperPopinStyle,
171
+ ref: nodeRef
154
172
  }, /*#__PURE__*/React.createElement("header", {
155
173
  className: style.popinHeader
156
174
  }, renderHeader(), onClose ? /*#__PURE__*/React.createElement(ButtonLinkIconOnly, {
@@ -209,7 +227,7 @@ const CMPopin = props => {
209
227
  "aria-label": thirdButton['aria-label'],
210
228
  type: thirdButton.type,
211
229
  customStyle: thirdButton.customStyle
212
- })) : null) : null));
230
+ })) : null) : null)) : null;
213
231
  };
214
232
 
215
233
  CMPopin.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","NovaSolidInterfaceFeedbackInterfaceAlertDiamond","AlertDiamond","NovaSolidApplicationsWindowUpload3","WindowUpload","NovaLineSettingsCookie","Cookie","NovaSolidSpaceMoonRocket","MoonRocket","NovaCompositionCoorpacademyPadlock","LockIcon","NovaLineStatusCheckCircle1","CheckCircle1","NovaSolidFilesBasicFileLines","FileLinesIcon","map","isEmpty","classNames","Cta","ButtonLinkIconOnly","InputSwitch","Title","CardsGrid","ListItems","style","propTypes","IconType","lockedContent","lockIcon","fileZipped","filesListIconContainer","filesListIcon","CMPopin","props","content","mode","firstButton","secondButton","onClose","header","icon","backgroundImageUrl","descriptionText","thirdButton","cookieTitle","descriptionBtnTxt","listBtnSwicth","items","logo","LogoComponent","backgroundImageStyle","backgroundImage","backgroundSize","renderHeader","title","headerIcon","TopTitleIcon","headerContent","headerBackground","cookieHeader","cookieIconContainer","cookieIcon","getClassBtnSwitch","index","btnList","firstBtnSwitchContainer","length","lastBtnSwitchContainer","singleSwitchContainer","renderBtnSwitch","convert","cap","el","type","value","onChange","titlePosition","theme","details","requiredSelection","disabled","id","dataName","renderItems","list","itemsContainer","filesListContainer","wrapperPopinStyle","popinCookie","popinFilesList","popin","background","popinHeader","cookieTitleContainer","titleContainer","contentSection","message","__html","descriptionBtn","buttonContainer","largeButton","button","label","handleOnclick","customStyle"],"sources":["../../../src/molecule/cm-popin/index.js"],"sourcesContent":["import React from 'react';\nimport {\n NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond,\n NovaSolidApplicationsWindowUpload3 as WindowUpload,\n NovaLineSettingsCookie as Cookie,\n NovaSolidSpaceMoonRocket as MoonRocket,\n NovaCompositionCoorpacademyPadlock as LockIcon,\n NovaLineStatusCheckCircle1 as CheckCircle1,\n NovaSolidFilesBasicFileLines as FileLinesIcon\n} from '@coorpacademy/nova-icons';\nimport map from 'lodash/fp/map';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport classNames from 'classnames';\nimport Cta from '../../atom/button-link';\nimport ButtonLinkIconOnly from '../../atom/button-link-icon-only';\nimport InputSwitch from '../../atom/input-switch';\nimport Title from '../../atom/title';\nimport CardsGrid from '../../organism/cards-grid';\nimport ListItems from '../../organism/list-items';\nimport style from './style.css';\nimport propTypes from './types';\n\nconst IconType = {\n lockedContent: <LockIcon className={style.lockIcon} />,\n fileZipped: (\n <div className={style.filesListIconContainer}>\n <FileLinesIcon className={style.filesListIcon} />\n </div>\n )\n};\n\nconst CMPopin = props => {\n const {\n content,\n mode = 'alert',\n firstButton,\n secondButton,\n onClose,\n header,\n icon,\n backgroundImageUrl,\n descriptionText,\n thirdButton,\n cookieTitle,\n descriptionBtnTxt,\n listBtnSwicth,\n items\n } = props;\n const logo = {\n AlertDiamond,\n WindowUpload,\n MoonRocket,\n CheckCircle1\n };\n const LogoComponent = logo[icon];\n\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`,\n backgroundSize: 'cover'\n }\n : null;\n\n const renderHeader = () => {\n if (header) {\n const {title, headerIcon, backgroundImage} = header;\n const TopTitleIcon = IconType[headerIcon];\n\n return (\n <>\n {title ? (\n <div className={style.headerContent}>\n {TopTitleIcon}\n <Title {...title} />\n </div>\n ) : null}\n {backgroundImage ? (\n <img className={style.headerBackground} src={backgroundImage} />\n ) : null}\n </>\n );\n }\n\n if (mode === 'cookie')\n return (\n <div className={style.cookieHeader}>\n <div className={style.cookieIconContainer}>\n <Cookie className={style.cookieIcon} />\n </div>\n <div className={style.cookieTitle}>{cookieTitle}</div>\n </div>\n );\n\n return null;\n };\n\n const getClassBtnSwitch = (index, btnList) => {\n switch (index) {\n case 0:\n return style.firstBtnSwitchContainer;\n case btnList.length - 1:\n return style.lastBtnSwitchContainer;\n default:\n return style.singleSwitchContainer;\n }\n };\n\n const renderBtnSwitch = () => {\n return map.convert({cap: false})((el, index) => {\n const {\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n } = el;\n return (\n <div key={index} className={getClassBtnSwitch(index, listBtnSwicth)}>\n <InputSwitch\n {...{\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n }}\n />\n </div>\n );\n })(listBtnSwicth);\n };\n\n const renderItems = () => {\n const {type, list} = items;\n if (isEmpty(list)) return null;\n\n if (type === 'content')\n return (\n <div className={style.itemsContainer} data-name={'cm-popin-cards'}>\n <CardsGrid {...list} />\n </div>\n );\n if (type === 'list')\n return (\n <div className={style.filesListContainer}>\n <ListItems {...list} />\n </div>\n );\n\n return null;\n };\n\n const wrapperPopinStyle = classNames(\n mode === 'cookie' && style.popinCookie,\n mode === 'list' && style.popinFilesList,\n style.popin\n );\n\n return (\n <div\n className={mode !== 'cookie' ? style.background : null}\n style={backgroundImageStyle}\n data-name={'cm-popin-container'}\n >\n <div className={wrapperPopinStyle}>\n <header className={style.popinHeader}>\n {renderHeader()}\n {onClose ? (\n <ButtonLinkIconOnly\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </header>\n {mode !== 'items' && mode !== 'list' ? (\n <div\n className={\n mode === 'cookie' || mode === 'information'\n ? style.cookieTitleContainer\n : style.titleContainer\n }\n >\n <div className={style.contentSection}>\n {LogoComponent ? <LogoComponent className={style.icon} /> : null}\n {content ? (\n <p\n className={mode === 'alert' ? style.content : style.message}\n data-name={'cm-popin-content'}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n ) : null}\n </div>\n {descriptionText ? (\n <p\n className={style.descriptionText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: descriptionText}}\n />\n ) : null}\n </div>\n ) : null}\n {descriptionBtnTxt ? <div className={style.descriptionBtn}>{descriptionBtnTxt}</div> : null}\n {!isEmpty(items) ? renderItems() : null}\n {renderBtnSwitch()}\n {firstButton || secondButton || thirdButton ? (\n <div className={style.buttonContainer}>\n {firstButton ? (\n <div className={firstButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={firstButton.label}\n onClick={firstButton.handleOnclick}\n data-name={'cm-popin-cta'}\n aria-label={firstButton['aria-label']}\n type={firstButton.type}\n customStyle={firstButton.customStyle}\n />\n </div>\n ) : null}\n {secondButton ? (\n <div className={secondButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={secondButton.label}\n onClick={secondButton.handleOnclick}\n data-name={`cm-popin-cta-${secondButton.type}`}\n aria-label={secondButton['aria-label']}\n type={secondButton.type}\n customStyle={secondButton.customStyle}\n />\n </div>\n ) : null}\n {thirdButton ? (\n <div className={thirdButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={thirdButton.label}\n onClick={thirdButton.handleOnclick}\n data-name={`cm-popin-cta-${thirdButton.type}`}\n aria-label={thirdButton['aria-label']}\n type={thirdButton.type}\n customStyle={thirdButton.customStyle}\n />\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n </div>\n );\n};\n\nCMPopin.propTypes = propTypes;\n\nexport default CMPopin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useRef","useEffect","useState","NovaSolidInterfaceFeedbackInterfaceAlertDiamond","AlertDiamond","NovaSolidApplicationsWindowUpload3","WindowUpload","NovaLineSettingsCookie","Cookie","NovaSolidSpaceMoonRocket","MoonRocket","NovaCompositionCoorpacademyPadlock","LockIcon","NovaLineStatusCheckCircle1","CheckCircle1","NovaSolidFilesBasicFileLines","FileLinesIcon","map","isEmpty","classNames","Cta","ButtonLinkIconOnly","InputSwitch","Title","CardsGrid","ListItems","style","propTypes","IconType","lockedContent","lockIcon","fileZipped","filesListIconContainer","filesListIcon","CMPopin","props","content","mode","firstButton","secondButton","onClose","header","icon","backgroundImageUrl","descriptionText","thirdButton","cookieTitle","descriptionBtnTxt","listBtnSwicth","items","logo","LogoComponent","backgroundImageStyle","backgroundImage","backgroundSize","shloudRender","setShouldRendered","nodeRef","closePopin","e","current","contains","target","document","addEventListener","removeEventListener","renderHeader","title","headerIcon","TopTitleIcon","headerContent","headerBackground","cookieHeader","cookieIconContainer","cookieIcon","getClassBtnSwitch","index","btnList","firstBtnSwitchContainer","length","lastBtnSwitchContainer","singleSwitchContainer","renderBtnSwitch","convert","cap","el","type","value","onChange","titlePosition","theme","details","requiredSelection","disabled","id","dataName","renderItems","list","itemsContainer","filesListContainer","wrapperPopinStyle","popinCookie","popinFilesList","popinItems","popin","background","popinHeader","cookieTitleContainer","titleContainer","contentSection","message","__html","descriptionBtn","buttonContainer","largeButton","button","label","handleOnclick","customStyle"],"sources":["../../../src/molecule/cm-popin/index.js"],"sourcesContent":["// import React from 'react';\nimport React, {useRef, useEffect, useState} from 'react';\nimport {\n NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond,\n NovaSolidApplicationsWindowUpload3 as WindowUpload,\n NovaLineSettingsCookie as Cookie,\n NovaSolidSpaceMoonRocket as MoonRocket,\n NovaCompositionCoorpacademyPadlock as LockIcon,\n NovaLineStatusCheckCircle1 as CheckCircle1,\n NovaSolidFilesBasicFileLines as FileLinesIcon\n} from '@coorpacademy/nova-icons';\nimport map from 'lodash/fp/map';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport classNames from 'classnames';\nimport Cta from '../../atom/button-link';\nimport ButtonLinkIconOnly from '../../atom/button-link-icon-only';\nimport InputSwitch from '../../atom/input-switch';\nimport Title from '../../atom/title';\nimport CardsGrid from '../../organism/cards-grid';\nimport ListItems from '../../organism/list-items';\nimport style from './style.css';\nimport propTypes from './types';\n\nconst IconType = {\n lockedContent: <LockIcon className={style.lockIcon} />,\n fileZipped: (\n <div className={style.filesListIconContainer}>\n <FileLinesIcon className={style.filesListIcon} />\n </div>\n )\n};\n\nconst CMPopin = props => {\n const {\n content,\n mode = 'alert',\n firstButton,\n secondButton,\n onClose,\n header,\n icon,\n backgroundImageUrl,\n descriptionText,\n thirdButton,\n cookieTitle,\n descriptionBtnTxt,\n listBtnSwicth,\n items\n } = props;\n const logo = {\n AlertDiamond,\n WindowUpload,\n MoonRocket,\n CheckCircle1\n };\n const LogoComponent = logo[icon];\n\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`,\n backgroundSize: 'cover'\n }\n : null;\n const [shloudRender, setShouldRendered] = useState(true);\n const nodeRef = useRef(null);\n useEffect(() => {\n if (mode === 'items') {\n const closePopin = e => {\n if (nodeRef && nodeRef.current && !nodeRef.current.contains(e.target)) {\n setShouldRendered(false);\n }\n };\n document.addEventListener('click', closePopin);\n return () => {\n document.removeEventListener('click', closePopin);\n };\n }\n }, [mode]);\n const renderHeader = () => {\n if (header) {\n const {title, headerIcon, backgroundImage} = header;\n const TopTitleIcon = IconType[headerIcon];\n\n return (\n <>\n {title ? (\n <div className={style.headerContent}>\n {TopTitleIcon}\n <Title {...title} />\n </div>\n ) : null}\n {backgroundImage ? (\n <img className={style.headerBackground} src={backgroundImage} />\n ) : null}\n </>\n );\n }\n\n if (mode === 'cookie')\n return (\n <div className={style.cookieHeader}>\n <div className={style.cookieIconContainer}>\n <Cookie className={style.cookieIcon} />\n </div>\n <div className={style.cookieTitle}>{cookieTitle}</div>\n </div>\n );\n\n return null;\n };\n\n const getClassBtnSwitch = (index, btnList) => {\n switch (index) {\n case 0:\n return style.firstBtnSwitchContainer;\n case btnList.length - 1:\n return style.lastBtnSwitchContainer;\n default:\n return style.singleSwitchContainer;\n }\n };\n\n const renderBtnSwitch = () => {\n return map.convert({cap: false})((el, index) => {\n const {\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n } = el;\n return (\n <div key={index} className={getClassBtnSwitch(index, listBtnSwicth)}>\n <InputSwitch\n {...{\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n }}\n />\n </div>\n );\n })(listBtnSwicth);\n };\n\n const renderItems = () => {\n const {type, list} = items;\n if (isEmpty(list)) return null;\n\n if (type === 'content')\n return (\n <div className={style.itemsContainer} data-name={'cm-popin-cards'}>\n <CardsGrid {...list} />\n </div>\n );\n if (type === 'list')\n return (\n <div className={style.filesListContainer}>\n <ListItems {...list} />\n </div>\n );\n\n return null;\n };\n\n const wrapperPopinStyle = classNames(\n mode === 'cookie' && style.popinCookie,\n mode === 'list' && style.popinFilesList,\n mode === 'items' && style.popinItems,\n style.popin\n );\n return shloudRender ? (\n <div\n className={mode !== 'cookie' ? style.background : null}\n style={backgroundImageStyle}\n data-name={'cm-popin-container'}\n >\n <div className={wrapperPopinStyle} ref={nodeRef}>\n <header className={style.popinHeader}>\n {renderHeader()}\n {onClose ? (\n <ButtonLinkIconOnly\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </header>\n {mode !== 'items' && mode !== 'list' ? (\n <div\n className={\n mode === 'cookie' || mode === 'information'\n ? style.cookieTitleContainer\n : style.titleContainer\n }\n >\n <div className={style.contentSection}>\n {LogoComponent ? <LogoComponent className={style.icon} /> : null}\n {content ? (\n <p\n className={mode === 'alert' ? style.content : style.message}\n data-name={'cm-popin-content'}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n ) : null}\n </div>\n {descriptionText ? (\n <p\n className={style.descriptionText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: descriptionText}}\n />\n ) : null}\n </div>\n ) : null}\n {descriptionBtnTxt ? <div className={style.descriptionBtn}>{descriptionBtnTxt}</div> : null}\n {!isEmpty(items) ? renderItems() : null}\n {renderBtnSwitch()}\n {firstButton || secondButton || thirdButton ? (\n <div className={style.buttonContainer}>\n {firstButton ? (\n <div className={firstButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={firstButton.label}\n onClick={firstButton.handleOnclick}\n data-name={'cm-popin-cta'}\n aria-label={firstButton['aria-label']}\n type={firstButton.type}\n customStyle={firstButton.customStyle}\n />\n </div>\n ) : null}\n {secondButton ? (\n <div className={secondButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={secondButton.label}\n onClick={secondButton.handleOnclick}\n data-name={`cm-popin-cta-${secondButton.type}`}\n aria-label={secondButton['aria-label']}\n type={secondButton.type}\n customStyle={secondButton.customStyle}\n />\n </div>\n ) : null}\n {thirdButton ? (\n <div className={thirdButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={thirdButton.label}\n onClick={thirdButton.handleOnclick}\n data-name={`cm-popin-cta-${thirdButton.type}`}\n aria-label={thirdButton['aria-label']}\n type={thirdButton.type}\n customStyle={thirdButton.customStyle}\n />\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n </div>\n ) : null;\n};\n\nCMPopin.propTypes = propTypes;\n\nexport default CMPopin;\n"],"mappings":"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"}
@@ -60,6 +60,11 @@
60
60
  animation: popup 0.7s;
61
61
  }
62
62
 
63
+ .popinItems {
64
+ padding: 0;
65
+ }
66
+
67
+
63
68
  .message {
64
69
  display: flex;
65
70
  flex-direction: column;
@@ -151,6 +156,15 @@
151
156
  border-bottom: 1px solid cm_grey_100;
152
157
  }
153
158
 
159
+ .popinItems .headerContent {
160
+ padding: 24px 0px 24px 24px;
161
+ }
162
+
163
+ .popinItems .popinHeader button {
164
+ margin-top: 12px;
165
+ margin-right: 12px;
166
+ }
167
+
154
168
 
155
169
  .lockIcon {
156
170
  height: 48px;
@@ -316,6 +330,9 @@ a {
316
330
  max-height: 369px;
317
331
  overflow-y: auto;
318
332
  width: 100%;
333
+ border-top: 1px solid cm_grey_100;
334
+ border-bottom-left-radius: 16px;
335
+ border-bottom-right-radius: 16px;
319
336
  }
320
337
 
321
338
  /* ---------- FILES DETAILS ---------- */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/common/dashboard/index.js"],"names":[],"mappings":";AAqBA,oDAkDC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/common/dashboard/index.js"],"names":[],"mappings":";AAqBA,oDAiDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PropTypes","Slide","HeroCard","BattleRequestList","CardsList","NewsList","StartBattle","CMPopin","ReviewBanner","style","Hero","memo","hero","welcome","propTypes","shape","Dashboard","props","sections","cookie","popinWithCards","showMoreOnLeftOrRightAriaLabel","buildSectionComponent","section","type","buildSection","index","sectionView","sectionsList","key","map","wrapper","arrayOf","oneOfType"],"sources":["../../../../src/template/common/dashboard/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Slide from '../../../atom/slide';\nimport HeroCard from '../../../molecule/hero';\nimport BattleRequestList from '../../../molecule/dashboard/battle-request-list';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport NewsList from '../../../molecule/dashboard/news-list';\nimport StartBattle from '../../../molecule/dashboard/start-battle';\nimport CMPopin from '../../../molecule/cm-popin';\nimport ReviewBanner from '../../../molecule/dashboard/review-banner';\nimport style from './style.css';\n\nconst Hero = React.memo(function Hero({hero, welcome}) {\n return <div className={style.hero}>{hero ? <HeroCard {...hero} /> : <Slide {...welcome} />}</div>;\n});\n\nHero.propTypes = {\n hero: PropTypes.shape(HeroCard.propTypes),\n welcome: PropTypes.shape(Slide.propTypes)\n};\n\nconst Dashboard = props => {\n const {\n sections = [],\n hero,\n welcome,\n cookie,\n popinWithCards,\n 'arrows-aria-label': showMoreOnLeftOrRightAriaLabel\n } = props;\n\n const buildSectionComponent = section => {\n const {type} = section;\n switch (type) {\n case 'hero':\n return <Hero hero={hero} welcome={welcome} />;\n case 'battleRequests':\n return <BattleRequestList {...section} />;\n case 'cards':\n return <CardsList {...section} arrows-aria-label={showMoreOnLeftOrRightAriaLabel} />;\n case 'news':\n return <NewsList {...section} />;\n case 'battle':\n return <StartBattle {...section} />;\n case 'review':\n return <ReviewBanner {...section} />;\n default:\n return null;\n }\n };\n\n const buildSection = (section, index) => {\n const sectionView = buildSectionComponent(section);\n\n return <div key={index}>{sectionView}</div>;\n };\n\n const sectionsList = [{type: 'hero', key: 'hero'}, ...sections].map(section => (\n <div key={section.key}>{buildSection(section)}</div>\n ));\n return (\n <div className={style.wrapper} data-name=\"dashboard\">\n {sectionsList}\n {cookie ? <CMPopin {...cookie} /> : null}\n {popinWithCards ? (\n <div className={style.popinWithCards}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nDashboard.propTypes = {\n hero: Hero.propTypes.hero,\n welcome: Hero.propTypes.welcome,\n sections: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape(BattleRequestList.propTypes),\n PropTypes.shape(CardsList.propTypes),\n PropTypes.shape(NewsList.propTypes),\n PropTypes.shape(StartBattle.propTypes),\n PropTypes.shape(ReviewBanner.propTypes)\n ])\n ),\n cookie: PropTypes.shape(CMPopin.propTypes),\n 'arrows-aria-label': CardsList.propTypes['arrows-aria-label'],\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\nexport default Dashboard;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","PropTypes","Slide","HeroCard","BattleRequestList","CardsList","NewsList","StartBattle","CMPopin","ReviewBanner","style","Hero","memo","hero","welcome","propTypes","shape","Dashboard","props","sections","cookie","popinWithCards","showMoreOnLeftOrRightAriaLabel","buildSectionComponent","section","type","buildSection","index","sectionView","sectionsList","key","map","wrapper","arrayOf","oneOfType"],"sources":["../../../../src/template/common/dashboard/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Slide from '../../../atom/slide';\nimport HeroCard from '../../../molecule/hero';\nimport BattleRequestList from '../../../molecule/dashboard/battle-request-list';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport NewsList from '../../../molecule/dashboard/news-list';\nimport StartBattle from '../../../molecule/dashboard/start-battle';\nimport CMPopin from '../../../molecule/cm-popin';\nimport ReviewBanner from '../../../molecule/dashboard/review-banner';\nimport style from './style.css';\n\nconst Hero = React.memo(function Hero({hero, welcome}) {\n return <div className={style.hero}>{hero ? <HeroCard {...hero} /> : <Slide {...welcome} />}</div>;\n});\n\nHero.propTypes = {\n hero: PropTypes.shape(HeroCard.propTypes),\n welcome: PropTypes.shape(Slide.propTypes)\n};\n\nconst Dashboard = props => {\n const {\n sections = [],\n hero,\n welcome,\n cookie,\n popinWithCards,\n 'arrows-aria-label': showMoreOnLeftOrRightAriaLabel\n } = props;\n const buildSectionComponent = section => {\n const {type} = section;\n switch (type) {\n case 'hero':\n return <Hero hero={hero} welcome={welcome} />;\n case 'battleRequests':\n return <BattleRequestList {...section} />;\n case 'cards':\n return <CardsList {...section} arrows-aria-label={showMoreOnLeftOrRightAriaLabel} />;\n case 'news':\n return <NewsList {...section} />;\n case 'battle':\n return <StartBattle {...section} />;\n case 'review':\n return <ReviewBanner {...section} />;\n default:\n return null;\n }\n };\n\n const buildSection = (section, index) => {\n const sectionView = buildSectionComponent(section);\n\n return <div key={index}>{sectionView}</div>;\n };\n\n const sectionsList = [{type: 'hero', key: 'hero'}, ...sections].map(section => (\n <div key={section.key}>{buildSection(section)}</div>\n ));\n return (\n <div className={style.wrapper} data-name=\"dashboard\">\n {sectionsList}\n {cookie ? <CMPopin {...cookie} /> : null}\n {popinWithCards ? (\n <div className={style.popinWithCards}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nDashboard.propTypes = {\n hero: Hero.propTypes.hero,\n welcome: Hero.propTypes.welcome,\n sections: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape(BattleRequestList.propTypes),\n PropTypes.shape(CardsList.propTypes),\n PropTypes.shape(NewsList.propTypes),\n PropTypes.shape(StartBattle.propTypes),\n PropTypes.shape(ReviewBanner.propTypes)\n ])\n ),\n cookie: PropTypes.shape(CMPopin.propTypes),\n 'arrows-aria-label': CardsList.propTypes['arrows-aria-label'],\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\nexport default Dashboard;\n"],"mappings":"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"}
@@ -11,6 +11,10 @@
11
11
  height: 350px;
12
12
  width: 100%;
13
13
  }
14
+ /*
15
+ .hidden {
16
+ display: none;
17
+ } */
14
18
 
15
19
  .popinWithCards {
16
20
  position: relative;
@@ -3,7 +3,7 @@ import _getOr from "lodash/fp/getOr";
3
3
 
4
4
  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); }
5
5
 
6
- import React from 'react';
6
+ import React, { useRef } from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import Provider from '../../../atom/provider';
9
9
  import Button from '../../../atom/button';
@@ -33,6 +33,7 @@ const SearchPage = (props, context) => {
33
33
 
34
34
  const defaultColor = _getOr('#00B0FF', 'common.primary', skin);
35
35
 
36
+ const nodeRef = useRef(null);
36
37
  const recommendationsView = _isEmpty(recommendations) ? null : /*#__PURE__*/React.createElement(CardsList, recommendations);
37
38
  const cardsView = _isEmpty(cards.list) ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
38
39
  className: style.noresults
@@ -58,7 +59,8 @@ const SearchPage = (props, context) => {
58
59
  className: style.title,
59
60
  role: "status"
60
61
  }, title), cardsView), popinWithCards ? /*#__PURE__*/React.createElement("div", {
61
- className: style.popinWithCards
62
+ className: style.popinWithCards,
63
+ ref: nodeRef
62
64
  }, /*#__PURE__*/React.createElement(CMPopin, popinWithCards)) : null);
63
65
  };
64
66
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PropTypes","Provider","Button","Filters","CardsGrid","CardsList","CMPopin","style","SearchPage","props","context","title","searchFilters","cards","noresultsfound","clearFilters","recommendations","moreSortAriaLabel","moreFilterAriaLabel","filterGroupAriaLabel","sortAriaLabel","popinWithCards","skin","defaultColor","recommendationsView","cardsView","list","noresults","noresultstxt","clear","background","cardsWrapper","contextTypes","childContextTypes","propTypes","string","shape"],"sources":["../../../../src/template/common/search-page/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, isEmpty} from 'lodash/fp';\nimport Provider from '../../../atom/provider';\nimport Button from '../../../atom/button';\nimport Filters from '../../../molecule/filters';\nimport CardsGrid from '../../../organism/cards-grid';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport CMPopin from '../../../molecule/cm-popin';\nimport style from './style.css';\n\nconst SearchPage = (props, context) => {\n const {\n title,\n searchFilters,\n cards,\n noresultsfound,\n clearFilters,\n recommendations,\n moreSortAriaLabel,\n moreFilterAriaLabel,\n filterGroupAriaLabel,\n sortAriaLabel,\n popinWithCards\n } = props;\n\n const {skin} = context;\n const defaultColor = getOr('#00B0FF', 'common.primary', skin);\n\n const recommendationsView = isEmpty(recommendations) ? null : <CardsList {...recommendations} />;\n\n const cardsView = isEmpty(cards.list) ? (\n <div>\n <div className={style.noresults}>\n <div className={style.noresultstxt}>{noresultsfound}</div>\n <Button\n {...clearFilters}\n data-name=\"searchPageClear\"\n className={style.clear}\n style={{background: defaultColor}}\n type=\"link\"\n />\n </div>\n {recommendationsView}\n </div>\n ) : (\n <CardsGrid {...cards} />\n );\n\n return (\n <div>\n <Filters\n {...searchFilters}\n moreSortAriaLabel={moreSortAriaLabel}\n moreFilterAriaLabel={moreFilterAriaLabel}\n filterGroupAriaLabel={filterGroupAriaLabel}\n sortAriaLabel={sortAriaLabel}\n />\n <div data-name=\"searchResult\" className={style.cardsWrapper}>\n <div className={style.title} role=\"status\">\n {title}\n </div>\n {cardsView}\n </div>\n {popinWithCards ? (\n <div className={style.popinWithCards}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nSearchPage.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSearchPage.propTypes = {\n noresultsfound: PropTypes.string,\n title: PropTypes.string,\n searchFilters: PropTypes.shape(Filters.propTypes),\n cards: PropTypes.shape(CardsGrid.propTypes),\n clearFilters: PropTypes.shape(Button.propTypes),\n recommendations: PropTypes.shape(CardsList.propTypes),\n moreSortAriaLabel: PropTypes.string,\n moreFilterAriaLabel: PropTypes.string,\n filterGroupAriaLabel: PropTypes.string,\n sortAriaLabel: PropTypes.string,\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\n\nexport default SearchPage;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useRef","PropTypes","Provider","Button","Filters","CardsGrid","CardsList","CMPopin","style","SearchPage","props","context","title","searchFilters","cards","noresultsfound","clearFilters","recommendations","moreSortAriaLabel","moreFilterAriaLabel","filterGroupAriaLabel","sortAriaLabel","popinWithCards","skin","defaultColor","nodeRef","recommendationsView","cardsView","list","noresults","noresultstxt","clear","background","cardsWrapper","contextTypes","childContextTypes","propTypes","string","shape"],"sources":["../../../../src/template/common/search-page/index.js"],"sourcesContent":["import React, {useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, isEmpty} from 'lodash/fp';\nimport Provider from '../../../atom/provider';\nimport Button from '../../../atom/button';\nimport Filters from '../../../molecule/filters';\nimport CardsGrid from '../../../organism/cards-grid';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport CMPopin from '../../../molecule/cm-popin';\nimport style from './style.css';\n\nconst SearchPage = (props, context) => {\n const {\n title,\n searchFilters,\n cards,\n noresultsfound,\n clearFilters,\n recommendations,\n moreSortAriaLabel,\n moreFilterAriaLabel,\n filterGroupAriaLabel,\n sortAriaLabel,\n popinWithCards\n } = props;\n\n const {skin} = context;\n const defaultColor = getOr('#00B0FF', 'common.primary', skin);\n const nodeRef = useRef(null);\n const recommendationsView = isEmpty(recommendations) ? null : <CardsList {...recommendations} />;\n\n const cardsView = isEmpty(cards.list) ? (\n <div>\n <div className={style.noresults}>\n <div className={style.noresultstxt}>{noresultsfound}</div>\n <Button\n {...clearFilters}\n data-name=\"searchPageClear\"\n className={style.clear}\n style={{background: defaultColor}}\n type=\"link\"\n />\n </div>\n {recommendationsView}\n </div>\n ) : (\n <CardsGrid {...cards} />\n );\n\n return (\n <div>\n <Filters\n {...searchFilters}\n moreSortAriaLabel={moreSortAriaLabel}\n moreFilterAriaLabel={moreFilterAriaLabel}\n filterGroupAriaLabel={filterGroupAriaLabel}\n sortAriaLabel={sortAriaLabel}\n />\n <div data-name=\"searchResult\" className={style.cardsWrapper}>\n <div className={style.title} role=\"status\">\n {title}\n </div>\n {cardsView}\n </div>\n {popinWithCards ? (\n <div className={style.popinWithCards} ref={nodeRef}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nSearchPage.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSearchPage.propTypes = {\n noresultsfound: PropTypes.string,\n title: PropTypes.string,\n searchFilters: PropTypes.shape(Filters.propTypes),\n cards: PropTypes.shape(CardsGrid.propTypes),\n clearFilters: PropTypes.shape(Button.propTypes),\n recommendations: PropTypes.shape(CardsList.propTypes),\n moreSortAriaLabel: PropTypes.string,\n moreFilterAriaLabel: PropTypes.string,\n filterGroupAriaLabel: PropTypes.string,\n sortAriaLabel: PropTypes.string,\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\n\nexport default SearchPage;\n"],"mappings":"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"}
@@ -17,6 +17,10 @@
17
17
  background: white;
18
18
  }
19
19
 
20
+ /* .hidden {
21
+ display: none;
22
+ } */
23
+
20
24
  .noresults {
21
25
  font-family: "Gilroy";
22
26
  border-top: solid 1px xtraLightGrey;
@@ -58,7 +58,7 @@
58
58
 
59
59
  .smallSubtitleFormGroup{
60
60
  composes: subtitleFormGroup;
61
- max-width: 450px
61
+ max-width: 455px;
62
62
  }
63
63
 
64
64
  .smallSubtitleFormGroupWithoutMargin{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AAuPA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AA9JF,uDA0HG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AA2PA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AAlKF,uDA8HG"}
@@ -182,8 +182,12 @@ 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
186
- }, disabledContent)) : null;
185
+ "aria-label": disabledArialabel // eslint-disable-next-line react/no-danger
186
+ ,
187
+ dangerouslySetInnerHTML: {
188
+ __html: disabledContent
189
+ }
190
+ })) : null;
187
191
  const inlineBadgeStyle = {
188
192
  color: primaryColor
189
193
  };
@@ -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","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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"}
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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"}
@@ -206,7 +206,7 @@
206
206
 
207
207
  .lockWrapper:hover span {
208
208
  font-weight: 600;
209
- width: 150px;
209
+ width: 174px;
210
210
  }
211
211
 
212
212
  .lockContent {
@@ -217,7 +217,7 @@
217
217
  }
218
218
 
219
219
  .lockContent span {
220
- width: 134px;
220
+ width: 174px;
221
221
  height: 40px;
222
222
  color: white;
223
223
  text-align: center;
@@ -1,5 +1,5 @@
1
1
  export default CMPopin;
2
- declare function CMPopin(props: any): JSX.Element;
2
+ declare function CMPopin(props: any): JSX.Element | null;
3
3
  declare namespace CMPopin {
4
4
  export { propTypes };
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/index.js"],"names":[],"mappings":";AA+BA,kDAwOC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/cm-popin/index.js"],"names":[],"mappings":";AAgCA,yDAsPC"}
@@ -3,7 +3,7 @@
3
3
  exports.__esModule = true;
4
4
  exports.default = void 0;
5
5
 
6
- var _react = _interopRequireDefault(require("react"));
6
+ var _react = _interopRequireWildcard(require("react"));
7
7
 
8
8
  var _novaIcons = require("@coorpacademy/nova-icons");
9
9
 
@@ -31,6 +31,11 @@ var _types = _interopRequireDefault(require("./types"));
31
31
 
32
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
33
 
34
+ 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); }
35
+
36
+ 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; }
37
+
38
+ // import React from 'react';
34
39
  const IconType = {
35
40
  lockedContent: /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyPadlock, {
36
41
  className: _style.default.lockIcon
@@ -70,6 +75,22 @@ const CMPopin = props => {
70
75
  backgroundImage: `url(${backgroundImageUrl})`,
71
76
  backgroundSize: 'cover'
72
77
  } : null;
78
+ const [shloudRender, setShouldRendered] = (0, _react.useState)(true);
79
+ const nodeRef = (0, _react.useRef)(null);
80
+ (0, _react.useEffect)(() => {
81
+ if (mode === 'items') {
82
+ const closePopin = e => {
83
+ if (nodeRef && nodeRef.current && !nodeRef.current.contains(e.target)) {
84
+ setShouldRendered(false);
85
+ }
86
+ };
87
+
88
+ document.addEventListener('click', closePopin);
89
+ return () => {
90
+ document.removeEventListener('click', closePopin);
91
+ };
92
+ }
93
+ }, [mode]);
73
94
 
74
95
  const renderHeader = () => {
75
96
  if (header) {
@@ -164,13 +185,14 @@ const CMPopin = props => {
164
185
  return null;
165
186
  };
166
187
 
167
- const wrapperPopinStyle = (0, _classnames.default)(mode === 'cookie' && _style.default.popinCookie, mode === 'list' && _style.default.popinFilesList, _style.default.popin);
168
- return /*#__PURE__*/_react.default.createElement("div", {
188
+ const wrapperPopinStyle = (0, _classnames.default)(mode === 'cookie' && _style.default.popinCookie, mode === 'list' && _style.default.popinFilesList, mode === 'items' && _style.default.popinItems, _style.default.popin);
189
+ return shloudRender ? /*#__PURE__*/_react.default.createElement("div", {
169
190
  className: mode !== 'cookie' ? _style.default.background : null,
170
191
  style: backgroundImageStyle,
171
192
  "data-name": 'cm-popin-container'
172
193
  }, /*#__PURE__*/_react.default.createElement("div", {
173
- className: wrapperPopinStyle
194
+ className: wrapperPopinStyle,
195
+ ref: nodeRef
174
196
  }, /*#__PURE__*/_react.default.createElement("header", {
175
197
  className: _style.default.popinHeader
176
198
  }, renderHeader(), onClose ? /*#__PURE__*/_react.default.createElement(_buttonLinkIconOnly.default, {
@@ -229,7 +251,7 @@ const CMPopin = props => {
229
251
  "aria-label": thirdButton['aria-label'],
230
252
  type: thirdButton.type,
231
253
  customStyle: thirdButton.customStyle
232
- })) : null) : null));
254
+ })) : null) : null)) : null;
233
255
  };
234
256
 
235
257
  CMPopin.propTypes = process.env.NODE_ENV !== "production" ? _types.default : {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["IconType","lockedContent","style","lockIcon","fileZipped","filesListIconContainer","filesListIcon","CMPopin","props","content","mode","firstButton","secondButton","onClose","header","icon","backgroundImageUrl","descriptionText","thirdButton","cookieTitle","descriptionBtnTxt","listBtnSwicth","items","logo","AlertDiamond","WindowUpload","MoonRocket","CheckCircle1","LogoComponent","backgroundImageStyle","backgroundImage","backgroundSize","renderHeader","title","headerIcon","TopTitleIcon","headerContent","headerBackground","cookieHeader","cookieIconContainer","cookieIcon","getClassBtnSwitch","index","btnList","firstBtnSwitchContainer","length","lastBtnSwitchContainer","singleSwitchContainer","renderBtnSwitch","map","convert","cap","el","type","value","onChange","titlePosition","theme","details","requiredSelection","disabled","id","dataName","renderItems","list","isEmpty","itemsContainer","filesListContainer","wrapperPopinStyle","classNames","popinCookie","popinFilesList","popin","background","popinHeader","cookieTitleContainer","titleContainer","contentSection","message","__html","descriptionBtn","buttonContainer","largeButton","button","label","handleOnclick","customStyle","propTypes"],"sources":["../../../src/molecule/cm-popin/index.js"],"sourcesContent":["import React from 'react';\nimport {\n NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond,\n NovaSolidApplicationsWindowUpload3 as WindowUpload,\n NovaLineSettingsCookie as Cookie,\n NovaSolidSpaceMoonRocket as MoonRocket,\n NovaCompositionCoorpacademyPadlock as LockIcon,\n NovaLineStatusCheckCircle1 as CheckCircle1,\n NovaSolidFilesBasicFileLines as FileLinesIcon\n} from '@coorpacademy/nova-icons';\nimport map from 'lodash/fp/map';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport classNames from 'classnames';\nimport Cta from '../../atom/button-link';\nimport ButtonLinkIconOnly from '../../atom/button-link-icon-only';\nimport InputSwitch from '../../atom/input-switch';\nimport Title from '../../atom/title';\nimport CardsGrid from '../../organism/cards-grid';\nimport ListItems from '../../organism/list-items';\nimport style from './style.css';\nimport propTypes from './types';\n\nconst IconType = {\n lockedContent: <LockIcon className={style.lockIcon} />,\n fileZipped: (\n <div className={style.filesListIconContainer}>\n <FileLinesIcon className={style.filesListIcon} />\n </div>\n )\n};\n\nconst CMPopin = props => {\n const {\n content,\n mode = 'alert',\n firstButton,\n secondButton,\n onClose,\n header,\n icon,\n backgroundImageUrl,\n descriptionText,\n thirdButton,\n cookieTitle,\n descriptionBtnTxt,\n listBtnSwicth,\n items\n } = props;\n const logo = {\n AlertDiamond,\n WindowUpload,\n MoonRocket,\n CheckCircle1\n };\n const LogoComponent = logo[icon];\n\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`,\n backgroundSize: 'cover'\n }\n : null;\n\n const renderHeader = () => {\n if (header) {\n const {title, headerIcon, backgroundImage} = header;\n const TopTitleIcon = IconType[headerIcon];\n\n return (\n <>\n {title ? (\n <div className={style.headerContent}>\n {TopTitleIcon}\n <Title {...title} />\n </div>\n ) : null}\n {backgroundImage ? (\n <img className={style.headerBackground} src={backgroundImage} />\n ) : null}\n </>\n );\n }\n\n if (mode === 'cookie')\n return (\n <div className={style.cookieHeader}>\n <div className={style.cookieIconContainer}>\n <Cookie className={style.cookieIcon} />\n </div>\n <div className={style.cookieTitle}>{cookieTitle}</div>\n </div>\n );\n\n return null;\n };\n\n const getClassBtnSwitch = (index, btnList) => {\n switch (index) {\n case 0:\n return style.firstBtnSwitchContainer;\n case btnList.length - 1:\n return style.lastBtnSwitchContainer;\n default:\n return style.singleSwitchContainer;\n }\n };\n\n const renderBtnSwitch = () => {\n return map.convert({cap: false})((el, index) => {\n const {\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n } = el;\n return (\n <div key={index} className={getClassBtnSwitch(index, listBtnSwicth)}>\n <InputSwitch\n {...{\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n }}\n />\n </div>\n );\n })(listBtnSwicth);\n };\n\n const renderItems = () => {\n const {type, list} = items;\n if (isEmpty(list)) return null;\n\n if (type === 'content')\n return (\n <div className={style.itemsContainer} data-name={'cm-popin-cards'}>\n <CardsGrid {...list} />\n </div>\n );\n if (type === 'list')\n return (\n <div className={style.filesListContainer}>\n <ListItems {...list} />\n </div>\n );\n\n return null;\n };\n\n const wrapperPopinStyle = classNames(\n mode === 'cookie' && style.popinCookie,\n mode === 'list' && style.popinFilesList,\n style.popin\n );\n\n return (\n <div\n className={mode !== 'cookie' ? style.background : null}\n style={backgroundImageStyle}\n data-name={'cm-popin-container'}\n >\n <div className={wrapperPopinStyle}>\n <header className={style.popinHeader}>\n {renderHeader()}\n {onClose ? (\n <ButtonLinkIconOnly\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </header>\n {mode !== 'items' && mode !== 'list' ? (\n <div\n className={\n mode === 'cookie' || mode === 'information'\n ? style.cookieTitleContainer\n : style.titleContainer\n }\n >\n <div className={style.contentSection}>\n {LogoComponent ? <LogoComponent className={style.icon} /> : null}\n {content ? (\n <p\n className={mode === 'alert' ? style.content : style.message}\n data-name={'cm-popin-content'}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n ) : null}\n </div>\n {descriptionText ? (\n <p\n className={style.descriptionText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: descriptionText}}\n />\n ) : null}\n </div>\n ) : null}\n {descriptionBtnTxt ? <div className={style.descriptionBtn}>{descriptionBtnTxt}</div> : null}\n {!isEmpty(items) ? renderItems() : null}\n {renderBtnSwitch()}\n {firstButton || secondButton || thirdButton ? (\n <div className={style.buttonContainer}>\n {firstButton ? (\n <div className={firstButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={firstButton.label}\n onClick={firstButton.handleOnclick}\n data-name={'cm-popin-cta'}\n aria-label={firstButton['aria-label']}\n type={firstButton.type}\n customStyle={firstButton.customStyle}\n />\n </div>\n ) : null}\n {secondButton ? (\n <div className={secondButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={secondButton.label}\n onClick={secondButton.handleOnclick}\n data-name={`cm-popin-cta-${secondButton.type}`}\n aria-label={secondButton['aria-label']}\n type={secondButton.type}\n customStyle={secondButton.customStyle}\n />\n </div>\n ) : null}\n {thirdButton ? (\n <div className={thirdButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={thirdButton.label}\n onClick={thirdButton.handleOnclick}\n data-name={`cm-popin-cta-${thirdButton.type}`}\n aria-label={thirdButton['aria-label']}\n type={thirdButton.type}\n customStyle={thirdButton.customStyle}\n />\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n </div>\n );\n};\n\nCMPopin.propTypes = propTypes;\n\nexport default CMPopin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["IconType","lockedContent","style","lockIcon","fileZipped","filesListIconContainer","filesListIcon","CMPopin","props","content","mode","firstButton","secondButton","onClose","header","icon","backgroundImageUrl","descriptionText","thirdButton","cookieTitle","descriptionBtnTxt","listBtnSwicth","items","logo","AlertDiamond","WindowUpload","MoonRocket","CheckCircle1","LogoComponent","backgroundImageStyle","backgroundImage","backgroundSize","shloudRender","setShouldRendered","useState","nodeRef","useRef","useEffect","closePopin","e","current","contains","target","document","addEventListener","removeEventListener","renderHeader","title","headerIcon","TopTitleIcon","headerContent","headerBackground","cookieHeader","cookieIconContainer","cookieIcon","getClassBtnSwitch","index","btnList","firstBtnSwitchContainer","length","lastBtnSwitchContainer","singleSwitchContainer","renderBtnSwitch","map","convert","cap","el","type","value","onChange","titlePosition","theme","details","requiredSelection","disabled","id","dataName","renderItems","list","isEmpty","itemsContainer","filesListContainer","wrapperPopinStyle","classNames","popinCookie","popinFilesList","popinItems","popin","background","popinHeader","cookieTitleContainer","titleContainer","contentSection","message","__html","descriptionBtn","buttonContainer","largeButton","button","label","handleOnclick","customStyle","propTypes"],"sources":["../../../src/molecule/cm-popin/index.js"],"sourcesContent":["// import React from 'react';\nimport React, {useRef, useEffect, useState} from 'react';\nimport {\n NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond,\n NovaSolidApplicationsWindowUpload3 as WindowUpload,\n NovaLineSettingsCookie as Cookie,\n NovaSolidSpaceMoonRocket as MoonRocket,\n NovaCompositionCoorpacademyPadlock as LockIcon,\n NovaLineStatusCheckCircle1 as CheckCircle1,\n NovaSolidFilesBasicFileLines as FileLinesIcon\n} from '@coorpacademy/nova-icons';\nimport map from 'lodash/fp/map';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport classNames from 'classnames';\nimport Cta from '../../atom/button-link';\nimport ButtonLinkIconOnly from '../../atom/button-link-icon-only';\nimport InputSwitch from '../../atom/input-switch';\nimport Title from '../../atom/title';\nimport CardsGrid from '../../organism/cards-grid';\nimport ListItems from '../../organism/list-items';\nimport style from './style.css';\nimport propTypes from './types';\n\nconst IconType = {\n lockedContent: <LockIcon className={style.lockIcon} />,\n fileZipped: (\n <div className={style.filesListIconContainer}>\n <FileLinesIcon className={style.filesListIcon} />\n </div>\n )\n};\n\nconst CMPopin = props => {\n const {\n content,\n mode = 'alert',\n firstButton,\n secondButton,\n onClose,\n header,\n icon,\n backgroundImageUrl,\n descriptionText,\n thirdButton,\n cookieTitle,\n descriptionBtnTxt,\n listBtnSwicth,\n items\n } = props;\n const logo = {\n AlertDiamond,\n WindowUpload,\n MoonRocket,\n CheckCircle1\n };\n const LogoComponent = logo[icon];\n\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`,\n backgroundSize: 'cover'\n }\n : null;\n const [shloudRender, setShouldRendered] = useState(true);\n const nodeRef = useRef(null);\n useEffect(() => {\n if (mode === 'items') {\n const closePopin = e => {\n if (nodeRef && nodeRef.current && !nodeRef.current.contains(e.target)) {\n setShouldRendered(false);\n }\n };\n document.addEventListener('click', closePopin);\n return () => {\n document.removeEventListener('click', closePopin);\n };\n }\n }, [mode]);\n const renderHeader = () => {\n if (header) {\n const {title, headerIcon, backgroundImage} = header;\n const TopTitleIcon = IconType[headerIcon];\n\n return (\n <>\n {title ? (\n <div className={style.headerContent}>\n {TopTitleIcon}\n <Title {...title} />\n </div>\n ) : null}\n {backgroundImage ? (\n <img className={style.headerBackground} src={backgroundImage} />\n ) : null}\n </>\n );\n }\n\n if (mode === 'cookie')\n return (\n <div className={style.cookieHeader}>\n <div className={style.cookieIconContainer}>\n <Cookie className={style.cookieIcon} />\n </div>\n <div className={style.cookieTitle}>{cookieTitle}</div>\n </div>\n );\n\n return null;\n };\n\n const getClassBtnSwitch = (index, btnList) => {\n switch (index) {\n case 0:\n return style.firstBtnSwitchContainer;\n case btnList.length - 1:\n return style.lastBtnSwitchContainer;\n default:\n return style.singleSwitchContainer;\n }\n };\n\n const renderBtnSwitch = () => {\n return map.convert({cap: false})((el, index) => {\n const {\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n } = el;\n return (\n <div key={index} className={getClassBtnSwitch(index, listBtnSwicth)}>\n <InputSwitch\n {...{\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id,\n 'data-name': dataName\n }}\n />\n </div>\n );\n })(listBtnSwicth);\n };\n\n const renderItems = () => {\n const {type, list} = items;\n if (isEmpty(list)) return null;\n\n if (type === 'content')\n return (\n <div className={style.itemsContainer} data-name={'cm-popin-cards'}>\n <CardsGrid {...list} />\n </div>\n );\n if (type === 'list')\n return (\n <div className={style.filesListContainer}>\n <ListItems {...list} />\n </div>\n );\n\n return null;\n };\n\n const wrapperPopinStyle = classNames(\n mode === 'cookie' && style.popinCookie,\n mode === 'list' && style.popinFilesList,\n mode === 'items' && style.popinItems,\n style.popin\n );\n return shloudRender ? (\n <div\n className={mode !== 'cookie' ? style.background : null}\n style={backgroundImageStyle}\n data-name={'cm-popin-container'}\n >\n <div className={wrapperPopinStyle} ref={nodeRef}>\n <header className={style.popinHeader}>\n {renderHeader()}\n {onClose ? (\n <ButtonLinkIconOnly\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </header>\n {mode !== 'items' && mode !== 'list' ? (\n <div\n className={\n mode === 'cookie' || mode === 'information'\n ? style.cookieTitleContainer\n : style.titleContainer\n }\n >\n <div className={style.contentSection}>\n {LogoComponent ? <LogoComponent className={style.icon} /> : null}\n {content ? (\n <p\n className={mode === 'alert' ? style.content : style.message}\n data-name={'cm-popin-content'}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n ) : null}\n </div>\n {descriptionText ? (\n <p\n className={style.descriptionText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: descriptionText}}\n />\n ) : null}\n </div>\n ) : null}\n {descriptionBtnTxt ? <div className={style.descriptionBtn}>{descriptionBtnTxt}</div> : null}\n {!isEmpty(items) ? renderItems() : null}\n {renderBtnSwitch()}\n {firstButton || secondButton || thirdButton ? (\n <div className={style.buttonContainer}>\n {firstButton ? (\n <div className={firstButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={firstButton.label}\n onClick={firstButton.handleOnclick}\n data-name={'cm-popin-cta'}\n aria-label={firstButton['aria-label']}\n type={firstButton.type}\n customStyle={firstButton.customStyle}\n />\n </div>\n ) : null}\n {secondButton ? (\n <div className={secondButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={secondButton.label}\n onClick={secondButton.handleOnclick}\n data-name={`cm-popin-cta-${secondButton.type}`}\n aria-label={secondButton['aria-label']}\n type={secondButton.type}\n customStyle={secondButton.customStyle}\n />\n </div>\n ) : null}\n {thirdButton ? (\n <div className={thirdButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={thirdButton.label}\n onClick={thirdButton.handleOnclick}\n data-name={`cm-popin-cta-${thirdButton.type}`}\n aria-label={thirdButton['aria-label']}\n type={thirdButton.type}\n customStyle={thirdButton.customStyle}\n />\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n </div>\n ) : null;\n};\n\nCMPopin.propTypes = propTypes;\n\nexport default CMPopin;\n"],"mappings":"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"}
@@ -60,6 +60,11 @@
60
60
  animation: popup 0.7s;
61
61
  }
62
62
 
63
+ .popinItems {
64
+ padding: 0;
65
+ }
66
+
67
+
63
68
  .message {
64
69
  display: flex;
65
70
  flex-direction: column;
@@ -151,6 +156,15 @@
151
156
  border-bottom: 1px solid cm_grey_100;
152
157
  }
153
158
 
159
+ .popinItems .headerContent {
160
+ padding: 24px 0px 24px 24px;
161
+ }
162
+
163
+ .popinItems .popinHeader button {
164
+ margin-top: 12px;
165
+ margin-right: 12px;
166
+ }
167
+
154
168
 
155
169
  .lockIcon {
156
170
  height: 48px;
@@ -316,6 +330,9 @@ a {
316
330
  max-height: 369px;
317
331
  overflow-y: auto;
318
332
  width: 100%;
333
+ border-top: 1px solid cm_grey_100;
334
+ border-bottom-left-radius: 16px;
335
+ border-bottom-right-radius: 16px;
319
336
  }
320
337
 
321
338
  /* ---------- FILES DETAILS ---------- */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/common/dashboard/index.js"],"names":[],"mappings":";AAqBA,oDAkDC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/common/dashboard/index.js"],"names":[],"mappings":";AAqBA,oDAiDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Hero","React","memo","hero","welcome","style","propTypes","PropTypes","shape","HeroCard","Slide","Dashboard","props","sections","cookie","popinWithCards","showMoreOnLeftOrRightAriaLabel","buildSectionComponent","section","type","buildSection","index","sectionView","sectionsList","key","map","wrapper","arrayOf","oneOfType","BattleRequestList","CardsList","NewsList","StartBattle","ReviewBanner","CMPopin"],"sources":["../../../../src/template/common/dashboard/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Slide from '../../../atom/slide';\nimport HeroCard from '../../../molecule/hero';\nimport BattleRequestList from '../../../molecule/dashboard/battle-request-list';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport NewsList from '../../../molecule/dashboard/news-list';\nimport StartBattle from '../../../molecule/dashboard/start-battle';\nimport CMPopin from '../../../molecule/cm-popin';\nimport ReviewBanner from '../../../molecule/dashboard/review-banner';\nimport style from './style.css';\n\nconst Hero = React.memo(function Hero({hero, welcome}) {\n return <div className={style.hero}>{hero ? <HeroCard {...hero} /> : <Slide {...welcome} />}</div>;\n});\n\nHero.propTypes = {\n hero: PropTypes.shape(HeroCard.propTypes),\n welcome: PropTypes.shape(Slide.propTypes)\n};\n\nconst Dashboard = props => {\n const {\n sections = [],\n hero,\n welcome,\n cookie,\n popinWithCards,\n 'arrows-aria-label': showMoreOnLeftOrRightAriaLabel\n } = props;\n\n const buildSectionComponent = section => {\n const {type} = section;\n switch (type) {\n case 'hero':\n return <Hero hero={hero} welcome={welcome} />;\n case 'battleRequests':\n return <BattleRequestList {...section} />;\n case 'cards':\n return <CardsList {...section} arrows-aria-label={showMoreOnLeftOrRightAriaLabel} />;\n case 'news':\n return <NewsList {...section} />;\n case 'battle':\n return <StartBattle {...section} />;\n case 'review':\n return <ReviewBanner {...section} />;\n default:\n return null;\n }\n };\n\n const buildSection = (section, index) => {\n const sectionView = buildSectionComponent(section);\n\n return <div key={index}>{sectionView}</div>;\n };\n\n const sectionsList = [{type: 'hero', key: 'hero'}, ...sections].map(section => (\n <div key={section.key}>{buildSection(section)}</div>\n ));\n return (\n <div className={style.wrapper} data-name=\"dashboard\">\n {sectionsList}\n {cookie ? <CMPopin {...cookie} /> : null}\n {popinWithCards ? (\n <div className={style.popinWithCards}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nDashboard.propTypes = {\n hero: Hero.propTypes.hero,\n welcome: Hero.propTypes.welcome,\n sections: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape(BattleRequestList.propTypes),\n PropTypes.shape(CardsList.propTypes),\n PropTypes.shape(NewsList.propTypes),\n PropTypes.shape(StartBattle.propTypes),\n PropTypes.shape(ReviewBanner.propTypes)\n ])\n ),\n cookie: PropTypes.shape(CMPopin.propTypes),\n 'arrows-aria-label': CardsList.propTypes['arrows-aria-label'],\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\nexport default Dashboard;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Hero","React","memo","hero","welcome","style","propTypes","PropTypes","shape","HeroCard","Slide","Dashboard","props","sections","cookie","popinWithCards","showMoreOnLeftOrRightAriaLabel","buildSectionComponent","section","type","buildSection","index","sectionView","sectionsList","key","map","wrapper","arrayOf","oneOfType","BattleRequestList","CardsList","NewsList","StartBattle","ReviewBanner","CMPopin"],"sources":["../../../../src/template/common/dashboard/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Slide from '../../../atom/slide';\nimport HeroCard from '../../../molecule/hero';\nimport BattleRequestList from '../../../molecule/dashboard/battle-request-list';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport NewsList from '../../../molecule/dashboard/news-list';\nimport StartBattle from '../../../molecule/dashboard/start-battle';\nimport CMPopin from '../../../molecule/cm-popin';\nimport ReviewBanner from '../../../molecule/dashboard/review-banner';\nimport style from './style.css';\n\nconst Hero = React.memo(function Hero({hero, welcome}) {\n return <div className={style.hero}>{hero ? <HeroCard {...hero} /> : <Slide {...welcome} />}</div>;\n});\n\nHero.propTypes = {\n hero: PropTypes.shape(HeroCard.propTypes),\n welcome: PropTypes.shape(Slide.propTypes)\n};\n\nconst Dashboard = props => {\n const {\n sections = [],\n hero,\n welcome,\n cookie,\n popinWithCards,\n 'arrows-aria-label': showMoreOnLeftOrRightAriaLabel\n } = props;\n const buildSectionComponent = section => {\n const {type} = section;\n switch (type) {\n case 'hero':\n return <Hero hero={hero} welcome={welcome} />;\n case 'battleRequests':\n return <BattleRequestList {...section} />;\n case 'cards':\n return <CardsList {...section} arrows-aria-label={showMoreOnLeftOrRightAriaLabel} />;\n case 'news':\n return <NewsList {...section} />;\n case 'battle':\n return <StartBattle {...section} />;\n case 'review':\n return <ReviewBanner {...section} />;\n default:\n return null;\n }\n };\n\n const buildSection = (section, index) => {\n const sectionView = buildSectionComponent(section);\n\n return <div key={index}>{sectionView}</div>;\n };\n\n const sectionsList = [{type: 'hero', key: 'hero'}, ...sections].map(section => (\n <div key={section.key}>{buildSection(section)}</div>\n ));\n return (\n <div className={style.wrapper} data-name=\"dashboard\">\n {sectionsList}\n {cookie ? <CMPopin {...cookie} /> : null}\n {popinWithCards ? (\n <div className={style.popinWithCards}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nDashboard.propTypes = {\n hero: Hero.propTypes.hero,\n welcome: Hero.propTypes.welcome,\n sections: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape(BattleRequestList.propTypes),\n PropTypes.shape(CardsList.propTypes),\n PropTypes.shape(NewsList.propTypes),\n PropTypes.shape(StartBattle.propTypes),\n PropTypes.shape(ReviewBanner.propTypes)\n ])\n ),\n cookie: PropTypes.shape(CMPopin.propTypes),\n 'arrows-aria-label': CardsList.propTypes['arrows-aria-label'],\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\nexport default Dashboard;\n"],"mappings":"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"}
@@ -11,6 +11,10 @@
11
11
  height: 350px;
12
12
  width: 100%;
13
13
  }
14
+ /*
15
+ .hidden {
16
+ display: none;
17
+ } */
14
18
 
15
19
  .popinWithCards {
16
20
  position: relative;
@@ -7,7 +7,7 @@ var _isEmpty2 = _interopRequireDefault(require("lodash/fp/isEmpty"));
7
7
 
8
8
  var _getOr2 = _interopRequireDefault(require("lodash/fp/getOr"));
9
9
 
10
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
@@ -25,6 +25,10 @@ var _cmPopin = _interopRequireDefault(require("../../../molecule/cm-popin"));
25
25
 
26
26
  var _style = _interopRequireDefault(require("./style.css"));
27
27
 
28
+ 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); }
29
+
30
+ 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; }
31
+
28
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
33
 
30
34
  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); }
@@ -47,6 +51,7 @@ const SearchPage = (props, context) => {
47
51
  skin
48
52
  } = context;
49
53
  const defaultColor = (0, _getOr2.default)('#00B0FF', 'common.primary', skin);
54
+ const nodeRef = (0, _react.useRef)(null);
50
55
  const recommendationsView = (0, _isEmpty2.default)(recommendations) ? null : /*#__PURE__*/_react.default.createElement(_cardsList.default, recommendations);
51
56
  const cardsView = (0, _isEmpty2.default)(cards.list) ? /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
52
57
  className: _style.default.noresults
@@ -72,7 +77,8 @@ const SearchPage = (props, context) => {
72
77
  className: _style.default.title,
73
78
  role: "status"
74
79
  }, title), cardsView), popinWithCards ? /*#__PURE__*/_react.default.createElement("div", {
75
- className: _style.default.popinWithCards
80
+ className: _style.default.popinWithCards,
81
+ ref: nodeRef
76
82
  }, /*#__PURE__*/_react.default.createElement(_cmPopin.default, popinWithCards)) : null);
77
83
  };
78
84
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["SearchPage","props","context","title","searchFilters","cards","noresultsfound","clearFilters","recommendations","moreSortAriaLabel","moreFilterAriaLabel","filterGroupAriaLabel","sortAriaLabel","popinWithCards","skin","defaultColor","recommendationsView","cardsView","list","style","noresults","noresultstxt","clear","background","cardsWrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","shape","Filters","CardsGrid","Button","CardsList","CMPopin"],"sources":["../../../../src/template/common/search-page/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, isEmpty} from 'lodash/fp';\nimport Provider from '../../../atom/provider';\nimport Button from '../../../atom/button';\nimport Filters from '../../../molecule/filters';\nimport CardsGrid from '../../../organism/cards-grid';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport CMPopin from '../../../molecule/cm-popin';\nimport style from './style.css';\n\nconst SearchPage = (props, context) => {\n const {\n title,\n searchFilters,\n cards,\n noresultsfound,\n clearFilters,\n recommendations,\n moreSortAriaLabel,\n moreFilterAriaLabel,\n filterGroupAriaLabel,\n sortAriaLabel,\n popinWithCards\n } = props;\n\n const {skin} = context;\n const defaultColor = getOr('#00B0FF', 'common.primary', skin);\n\n const recommendationsView = isEmpty(recommendations) ? null : <CardsList {...recommendations} />;\n\n const cardsView = isEmpty(cards.list) ? (\n <div>\n <div className={style.noresults}>\n <div className={style.noresultstxt}>{noresultsfound}</div>\n <Button\n {...clearFilters}\n data-name=\"searchPageClear\"\n className={style.clear}\n style={{background: defaultColor}}\n type=\"link\"\n />\n </div>\n {recommendationsView}\n </div>\n ) : (\n <CardsGrid {...cards} />\n );\n\n return (\n <div>\n <Filters\n {...searchFilters}\n moreSortAriaLabel={moreSortAriaLabel}\n moreFilterAriaLabel={moreFilterAriaLabel}\n filterGroupAriaLabel={filterGroupAriaLabel}\n sortAriaLabel={sortAriaLabel}\n />\n <div data-name=\"searchResult\" className={style.cardsWrapper}>\n <div className={style.title} role=\"status\">\n {title}\n </div>\n {cardsView}\n </div>\n {popinWithCards ? (\n <div className={style.popinWithCards}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nSearchPage.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSearchPage.propTypes = {\n noresultsfound: PropTypes.string,\n title: PropTypes.string,\n searchFilters: PropTypes.shape(Filters.propTypes),\n cards: PropTypes.shape(CardsGrid.propTypes),\n clearFilters: PropTypes.shape(Button.propTypes),\n recommendations: PropTypes.shape(CardsList.propTypes),\n moreSortAriaLabel: PropTypes.string,\n moreFilterAriaLabel: PropTypes.string,\n filterGroupAriaLabel: PropTypes.string,\n sortAriaLabel: PropTypes.string,\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\n\nexport default SearchPage;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,MAAMA,UAAU,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACrC,MAAM;IACJC,KADI;IAEJC,aAFI;IAGJC,KAHI;IAIJC,cAJI;IAKJC,YALI;IAMJC,eANI;IAOJC,iBAPI;IAQJC,mBARI;IASJC,oBATI;IAUJC,aAVI;IAWJC;EAXI,IAYFZ,KAZJ;EAcA,MAAM;IAACa;EAAD,IAASZ,OAAf;EACA,MAAMa,YAAY,GAAG,qBAAM,SAAN,EAAiB,gBAAjB,EAAmCD,IAAnC,CAArB;EAEA,MAAME,mBAAmB,GAAG,uBAAQR,eAAR,IAA2B,IAA3B,gBAAkC,6BAAC,kBAAD,EAAeA,eAAf,CAA9D;EAEA,MAAMS,SAAS,GAAG,uBAAQZ,KAAK,CAACa,IAAd,iBAChB,uDACE;IAAK,SAAS,EAAEC,cAAA,CAAMC;EAAtB,gBACE;IAAK,SAAS,EAAED,cAAA,CAAME;EAAtB,GAAqCf,cAArC,CADF,eAEE,6BAAC,eAAD,eACMC,YADN;IAEE,aAAU,iBAFZ;IAGE,SAAS,EAAEY,cAAA,CAAMG,KAHnB;IAIE,KAAK,EAAE;MAACC,UAAU,EAAER;IAAb,CAJT;IAKE,IAAI,EAAC;EALP,GAFF,CADF,EAWGC,mBAXH,CADgB,gBAehB,6BAAC,kBAAD,EAAeX,KAAf,CAfF;EAkBA,oBACE,uDACE,6BAAC,gBAAD,eACMD,aADN;IAEE,iBAAiB,EAAEK,iBAFrB;IAGE,mBAAmB,EAAEC,mBAHvB;IAIE,oBAAoB,EAAEC,oBAJxB;IAKE,aAAa,EAAEC;EALjB,GADF,eAQE;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAEO,cAAA,CAAMK;EAA/C,gBACE;IAAK,SAAS,EAAEL,cAAA,CAAMhB,KAAtB;IAA6B,IAAI,EAAC;EAAlC,GACGA,KADH,CADF,EAIGc,SAJH,CARF,EAcGJ,cAAc,gBACb;IAAK,SAAS,EAAEM,cAAA,CAAMN;EAAtB,gBACE,6BAAC,gBAAD,EAAaA,cAAb,CADF,CADa,GAIX,IAlBN,CADF;AAsBD,CA5DD;;AA8DAb,UAAU,CAACyB,YAAX,GAA0B;EACxBX,IAAI,EAAEY,iBAAA,CAASC,iBAAT,CAA2Bb;AADT,CAA1B;AAIAd,UAAU,CAAC4B,SAAX,2CAAuB;EACrBtB,cAAc,EAAEuB,kBAAA,CAAUC,MADL;EAErB3B,KAAK,EAAE0B,kBAAA,CAAUC,MAFI;EAGrB1B,aAAa,EAAEyB,kBAAA,CAAUE,KAAV,CAAgBC,gBAAA,CAAQJ,SAAxB,CAHM;EAIrBvB,KAAK,EAAEwB,kBAAA,CAAUE,KAAV,CAAgBE,kBAAA,CAAUL,SAA1B,CAJc;EAKrBrB,YAAY,EAAEsB,kBAAA,CAAUE,KAAV,CAAgBG,eAAA,CAAON,SAAvB,CALO;EAMrBpB,eAAe,EAAEqB,kBAAA,CAAUE,KAAV,CAAgBI,kBAAA,CAAUP,SAA1B,CANI;EAOrBnB,iBAAiB,EAAEoB,kBAAA,CAAUC,MAPR;EAQrBpB,mBAAmB,EAAEmB,kBAAA,CAAUC,MARV;EASrBnB,oBAAoB,EAAEkB,kBAAA,CAAUC,MATX;EAUrBlB,aAAa,EAAEiB,kBAAA,CAAUC,MAVJ;EAWrBjB,cAAc,EAAEgB,kBAAA,CAAUE,KAAV,CAAgBK,gBAAA,CAAQR,SAAxB;AAXK,CAAvB;eAce5B,U"}
1
+ {"version":3,"file":"index.js","names":["SearchPage","props","context","title","searchFilters","cards","noresultsfound","clearFilters","recommendations","moreSortAriaLabel","moreFilterAriaLabel","filterGroupAriaLabel","sortAriaLabel","popinWithCards","skin","defaultColor","nodeRef","useRef","recommendationsView","cardsView","list","style","noresults","noresultstxt","clear","background","cardsWrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","shape","Filters","CardsGrid","Button","CardsList","CMPopin"],"sources":["../../../../src/template/common/search-page/index.js"],"sourcesContent":["import React, {useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, isEmpty} from 'lodash/fp';\nimport Provider from '../../../atom/provider';\nimport Button from '../../../atom/button';\nimport Filters from '../../../molecule/filters';\nimport CardsGrid from '../../../organism/cards-grid';\nimport CardsList from '../../../molecule/dashboard/cards-list';\nimport CMPopin from '../../../molecule/cm-popin';\nimport style from './style.css';\n\nconst SearchPage = (props, context) => {\n const {\n title,\n searchFilters,\n cards,\n noresultsfound,\n clearFilters,\n recommendations,\n moreSortAriaLabel,\n moreFilterAriaLabel,\n filterGroupAriaLabel,\n sortAriaLabel,\n popinWithCards\n } = props;\n\n const {skin} = context;\n const defaultColor = getOr('#00B0FF', 'common.primary', skin);\n const nodeRef = useRef(null);\n const recommendationsView = isEmpty(recommendations) ? null : <CardsList {...recommendations} />;\n\n const cardsView = isEmpty(cards.list) ? (\n <div>\n <div className={style.noresults}>\n <div className={style.noresultstxt}>{noresultsfound}</div>\n <Button\n {...clearFilters}\n data-name=\"searchPageClear\"\n className={style.clear}\n style={{background: defaultColor}}\n type=\"link\"\n />\n </div>\n {recommendationsView}\n </div>\n ) : (\n <CardsGrid {...cards} />\n );\n\n return (\n <div>\n <Filters\n {...searchFilters}\n moreSortAriaLabel={moreSortAriaLabel}\n moreFilterAriaLabel={moreFilterAriaLabel}\n filterGroupAriaLabel={filterGroupAriaLabel}\n sortAriaLabel={sortAriaLabel}\n />\n <div data-name=\"searchResult\" className={style.cardsWrapper}>\n <div className={style.title} role=\"status\">\n {title}\n </div>\n {cardsView}\n </div>\n {popinWithCards ? (\n <div className={style.popinWithCards} ref={nodeRef}>\n <CMPopin {...popinWithCards} />\n </div>\n ) : null}\n </div>\n );\n};\n\nSearchPage.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSearchPage.propTypes = {\n noresultsfound: PropTypes.string,\n title: PropTypes.string,\n searchFilters: PropTypes.shape(Filters.propTypes),\n cards: PropTypes.shape(CardsGrid.propTypes),\n clearFilters: PropTypes.shape(Button.propTypes),\n recommendations: PropTypes.shape(CardsList.propTypes),\n moreSortAriaLabel: PropTypes.string,\n moreFilterAriaLabel: PropTypes.string,\n filterGroupAriaLabel: PropTypes.string,\n sortAriaLabel: PropTypes.string,\n popinWithCards: PropTypes.shape(CMPopin.propTypes)\n};\n\nexport default SearchPage;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,MAAMA,UAAU,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACrC,MAAM;IACJC,KADI;IAEJC,aAFI;IAGJC,KAHI;IAIJC,cAJI;IAKJC,YALI;IAMJC,eANI;IAOJC,iBAPI;IAQJC,mBARI;IASJC,oBATI;IAUJC,aAVI;IAWJC;EAXI,IAYFZ,KAZJ;EAcA,MAAM;IAACa;EAAD,IAASZ,OAAf;EACA,MAAMa,YAAY,GAAG,qBAAM,SAAN,EAAiB,gBAAjB,EAAmCD,IAAnC,CAArB;EACA,MAAME,OAAO,GAAG,IAAAC,aAAA,EAAO,IAAP,CAAhB;EACA,MAAMC,mBAAmB,GAAG,uBAAQV,eAAR,IAA2B,IAA3B,gBAAkC,6BAAC,kBAAD,EAAeA,eAAf,CAA9D;EAEA,MAAMW,SAAS,GAAG,uBAAQd,KAAK,CAACe,IAAd,iBAChB,uDACE;IAAK,SAAS,EAAEC,cAAA,CAAMC;EAAtB,gBACE;IAAK,SAAS,EAAED,cAAA,CAAME;EAAtB,GAAqCjB,cAArC,CADF,eAEE,6BAAC,eAAD,eACMC,YADN;IAEE,aAAU,iBAFZ;IAGE,SAAS,EAAEc,cAAA,CAAMG,KAHnB;IAIE,KAAK,EAAE;MAACC,UAAU,EAAEV;IAAb,CAJT;IAKE,IAAI,EAAC;EALP,GAFF,CADF,EAWGG,mBAXH,CADgB,gBAehB,6BAAC,kBAAD,EAAeb,KAAf,CAfF;EAkBA,oBACE,uDACE,6BAAC,gBAAD,eACMD,aADN;IAEE,iBAAiB,EAAEK,iBAFrB;IAGE,mBAAmB,EAAEC,mBAHvB;IAIE,oBAAoB,EAAEC,oBAJxB;IAKE,aAAa,EAAEC;EALjB,GADF,eAQE;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAES,cAAA,CAAMK;EAA/C,gBACE;IAAK,SAAS,EAAEL,cAAA,CAAMlB,KAAtB;IAA6B,IAAI,EAAC;EAAlC,GACGA,KADH,CADF,EAIGgB,SAJH,CARF,EAcGN,cAAc,gBACb;IAAK,SAAS,EAAEQ,cAAA,CAAMR,cAAtB;IAAsC,GAAG,EAAEG;EAA3C,gBACE,6BAAC,gBAAD,EAAaH,cAAb,CADF,CADa,GAIX,IAlBN,CADF;AAsBD,CA5DD;;AA8DAb,UAAU,CAAC2B,YAAX,GAA0B;EACxBb,IAAI,EAAEc,iBAAA,CAASC,iBAAT,CAA2Bf;AADT,CAA1B;AAIAd,UAAU,CAAC8B,SAAX,2CAAuB;EACrBxB,cAAc,EAAEyB,kBAAA,CAAUC,MADL;EAErB7B,KAAK,EAAE4B,kBAAA,CAAUC,MAFI;EAGrB5B,aAAa,EAAE2B,kBAAA,CAAUE,KAAV,CAAgBC,gBAAA,CAAQJ,SAAxB,CAHM;EAIrBzB,KAAK,EAAE0B,kBAAA,CAAUE,KAAV,CAAgBE,kBAAA,CAAUL,SAA1B,CAJc;EAKrBvB,YAAY,EAAEwB,kBAAA,CAAUE,KAAV,CAAgBG,eAAA,CAAON,SAAvB,CALO;EAMrBtB,eAAe,EAAEuB,kBAAA,CAAUE,KAAV,CAAgBI,kBAAA,CAAUP,SAA1B,CANI;EAOrBrB,iBAAiB,EAAEsB,kBAAA,CAAUC,MAPR;EAQrBtB,mBAAmB,EAAEqB,kBAAA,CAAUC,MARV;EASrBrB,oBAAoB,EAAEoB,kBAAA,CAAUC,MATX;EAUrBpB,aAAa,EAAEmB,kBAAA,CAAUC,MAVJ;EAWrBnB,cAAc,EAAEkB,kBAAA,CAAUE,KAAV,CAAgBK,gBAAA,CAAQR,SAAxB;AAXK,CAAvB;eAce9B,U"}
@@ -17,6 +17,10 @@
17
17
  background: white;
18
18
  }
19
19
 
20
+ /* .hidden {
21
+ display: none;
22
+ } */
23
+
20
24
  .noresults {
21
25
  font-family: "Gilroy";
22
26
  border-top: solid 1px xtraLightGrey;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coorpacademy/components",
3
- "version": "11.19.1",
3
+ "version": "11.19.2-alpha.11+813211358",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -168,5 +168,5 @@
168
168
  "last 2 versions",
169
169
  "IE 11"
170
170
  ],
171
- "gitHead": "1d40f5af230ef1d8b92b966561aed6da8360b7e4"
171
+ "gitHead": "8132113583339e8a6e895432300ea2d1bb7a3f2e"
172
172
  }