@coorpacademy/components 11.32.29 → 11.32.31
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.
- package/es/atom/button-link-icon/index.js +2 -2
- package/es/atom/button-link-icon/index.js.map +1 -1
- package/es/molecule/bullet-point-menu-button/index.d.ts.map +1 -1
- package/es/molecule/bullet-point-menu-button/index.js +15 -3
- package/es/molecule/bullet-point-menu-button/index.js.map +1 -1
- package/es/molecule/bullet-point-menu-button/style.css +2 -15
- package/es/molecule/playlist-detail-cover/index.js +3 -3
- package/es/molecule/playlist-detail-cover/index.js.map +1 -1
- package/es/template/playlist-detail/style.css +1 -0
- package/lib/atom/button-link-icon/index.js +1 -1
- package/lib/atom/button-link-icon/index.js.map +1 -1
- package/lib/molecule/bullet-point-menu-button/index.d.ts.map +1 -1
- package/lib/molecule/bullet-point-menu-button/index.js +14 -2
- package/lib/molecule/bullet-point-menu-button/index.js.map +1 -1
- package/lib/molecule/bullet-point-menu-button/style.css +2 -15
- package/lib/molecule/playlist-detail-cover/index.js +3 -3
- package/lib/molecule/playlist-detail-cover/index.js.map +1 -1
- package/lib/template/playlist-detail/style.css +1 -0
- package/package.json +4 -4
|
@@ -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, {
|
|
6
|
+
import React, { useState, useCallback, useRef } from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import classnames from 'classnames';
|
|
9
9
|
import { ICONS } from '../../util/button-icons';
|
|
@@ -61,7 +61,7 @@ const ButtonLinkIcon = props => {
|
|
|
61
61
|
const timer = useRef();
|
|
62
62
|
const contentView = getButtonContent(icon, faIcon);
|
|
63
63
|
const styleButton = classnames(getSizeStyle(size), link && style.link, disabled && style.disabled, className);
|
|
64
|
-
const handleOnClick =
|
|
64
|
+
const handleOnClick = useCallback(() => onClick(), [onClick]);
|
|
65
65
|
const handleMouseOver = useCallback(() => {
|
|
66
66
|
timer.current && clearTimeout(timer.current);
|
|
67
67
|
timer.current = setTimeout(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useState","useCallback","useRef","PropTypes","classnames","ICONS","FaIcon","Link","ToolTip","style","getButtonContent","icon","faIcon","Icon","buttonContent","getSizeStyle","size","small","responsive","default","ButtonLinkIcon","props","disabled","dataName","ariaLabel","link","onClick","className","tooltipPlacement","toolTipIsVisible","setToolTipIsVisible","timer","contentView","styleButton","handleOnClick","handleMouseOver","current","clearTimeout","setTimeout","undefined","handleMouseLeave","TooltipContent","tooltipContentWrapper","Button","propTypes","oneOf","string","func","shape","href","download","bool","target"],"sources":["../../../src/atom/button-link-icon/index.js"],"sourcesContent":["import React, {useState, useCallback, useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, keys} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {ICONS} from '../../util/button-icons';\nimport FaIcon from '../icon';\nimport Link from '../link';\nimport ToolTip from '../tooltip';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from './style.css';\n\nconst getButtonContent = (icon, faIcon) => {\n const Icon = getOr(null, icon, ICONS);\n\n if (!Icon && !faIcon) {\n return <div className={style.buttonContent} />;\n }\n\n return (\n <div className={style.buttonContent}>\n {faIcon ? <FaIcon iconName={faIcon} /> : <Icon className={style.icon} />}\n </div>\n );\n};\n\nconst getSizeStyle = size => {\n switch (size) {\n case 'small':\n return style.small;\n case 'responsive':\n return style.responsive;\n default:\n return style.default;\n }\n};\n\nconst ButtonLinkIcon = props => {\n const {\n size = 'default',\n disabled,\n icon,\n faIcon,\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n link,\n onClick,\n className,\n tooltipPlacement = 'left'\n } = props;\n const [toolTipIsVisible, setToolTipIsVisible] = useState(false);\n const timer = useRef();\n\n const contentView = getButtonContent(icon, faIcon);\n const styleButton = classnames(\n getSizeStyle(size),\n link && style.link,\n disabled && style.disabled,\n className\n );\n\n const handleOnClick = useCallback(() => onClick(), [onClick]);\n\n const handleMouseOver = useCallback(() => {\n timer.current && clearTimeout(timer.current);\n timer.current = setTimeout(() => {\n setToolTipIsVisible(true);\n timer.current = undefined;\n }, 300);\n }, [timer, setToolTipIsVisible]);\n\n const handleMouseLeave = useCallback(() => {\n timer.current && clearTimeout(timer.current);\n setToolTipIsVisible(false);\n }, [timer, setToolTipIsVisible]);\n\n const TooltipContent = useCallback(\n () => <span className={style.tooltipContentWrapper}>{ariaLabel}</span>,\n [ariaLabel]\n );\n\n const Button = useCallback(\n () =>\n link ? (\n <Link\n {...link}\n {...(ariaLabel\n ? {\n 'data-for': 'button-icon',\n 'data-tip': toolTipIsVisible\n }\n : {})}\n className={styleButton}\n data-name={dataName}\n aria-label={ariaLabel}\n onMouseLeave={handleMouseLeave}\n onMouseOver={handleMouseOver}\n >\n {contentView}\n </Link>\n ) : (\n <button\n {...(ariaLabel\n ? {\n 'data-for': 'button-icon',\n 'data-tip': toolTipIsVisible\n }\n : {})}\n type=\"button\"\n aria-label={ariaLabel}\n data-name={dataName}\n data-testid={`button-${dataName}-${className}`}\n className={styleButton}\n onClick={handleOnClick}\n onMouseLeave={handleMouseLeave}\n onMouseOver={handleMouseOver}\n disabled={disabled}\n >\n {contentView}\n </button>\n ),\n [\n link,\n ariaLabel,\n className,\n contentView,\n dataName,\n disabled,\n handleMouseLeave,\n handleMouseOver,\n handleOnClick,\n styleButton,\n toolTipIsVisible\n ]\n );\n\n return (\n <>\n <Button />\n {ariaLabel ? (\n <ToolTip\n fontSize={12}\n anchorId=\"button-icon\"\n toolTipIsVisible={toolTipIsVisible}\n placement={tooltipPlacement}\n TooltipContent={TooltipContent}\n closeToolTipInformationTextAriaLabel={ariaLabel}\n />\n ) : null}\n </>\n );\n};\n\nButtonLinkIcon.propTypes = {\n size: PropTypes.oneOf(['default', 'small', 'responsive']),\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n icon: PropTypes.oneOf(keys(ICONS)),\n faIcon: PropTypes.string,\n onClick: PropTypes.func,\n link: PropTypes.shape({\n href: PropTypes.string,\n download: PropTypes.bool,\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top'])\n }),\n disabled: PropTypes.bool,\n className: PropTypes.string,\n tooltipPlacement: PropTypes.oneOf(['left', 'right', 'top', 'bottom'])\n};\n\nexport default ButtonLinkIcon;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"names":[],"mappings":";AAIA,OAAkB,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAG9D,QAAA,MAAM,qBAAqB;YAAW,0BAA0B;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"names":[],"mappings":";AAIA,OAAkB,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAG9D,QAAA,MAAM,qBAAqB;YAAW,0BAA0B;;;;;;;;;;;;;;;;CA2D/D,CAAC;AAIF,eAAe,qBAAqB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useCallback } from 'react';
|
|
1
|
+
import React, { useCallback, useState, useEffect } from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
import ButtonLinkIcon from '../../atom/button-link-icon';
|
|
4
4
|
import ButtonMenu from '../../atom/button-menu';
|
|
@@ -15,13 +15,25 @@ const BulletPointMenuButton = props => {
|
|
|
15
15
|
menuButtonClassName,
|
|
16
16
|
isBulkMenu
|
|
17
17
|
} = props;
|
|
18
|
-
const
|
|
18
|
+
const [visible, setVisible] = useState(false);
|
|
19
|
+
const handleOnClick = useCallback(() => {
|
|
20
|
+
onClick();
|
|
21
|
+
setVisible(true);
|
|
22
|
+
}, [onClick]);
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
const handleMouseDown = () => setVisible(false);
|
|
25
|
+
|
|
26
|
+
document.addEventListener('mousedown', handleMouseDown);
|
|
27
|
+
return () => {
|
|
28
|
+
document.removeEventListener('mousedown', handleMouseDown);
|
|
29
|
+
};
|
|
30
|
+
}, []);
|
|
19
31
|
const menuProps = {
|
|
20
32
|
'data-name': 'button-menu',
|
|
21
33
|
buttons
|
|
22
34
|
};
|
|
23
35
|
const menu = /*#__PURE__*/React.createElement("div", {
|
|
24
|
-
className: classnames(style.bulletPointMenu, isBulkMenu && style.bulkBulletPointMenu),
|
|
36
|
+
className: classnames(style.bulletPointMenu, isBulkMenu && style.bulkBulletPointMenu, visible && style.visible),
|
|
25
37
|
"data-name": "menu-wrapper",
|
|
26
38
|
"aria-label": menuAriaLabel
|
|
27
39
|
}, /*#__PURE__*/React.createElement(ButtonMenu, menuProps));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","classnames","ButtonLinkIcon","ButtonMenu","propTypes","style","BulletPointMenuButton","props","disabled","buttonAriaLabel","menuAriaLabel","onClick","buttons","menuButtonClassName","isBulkMenu","handleOnClick","menuProps","menu","bulletPointMenu","bulkBulletPointMenu","bulletPointButtonProps","size","icon","className","bulletPointWrapper"],"sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"sourcesContent":["import React, {useCallback} from 'react';\nimport classnames from 'classnames';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {BulletPointMenuButtonProps} from './types';\nimport style from './style.css';\n\nconst BulletPointMenuButton = (props: BulletPointMenuButtonProps) => {\n const {\n disabled = false,\n buttonAriaLabel,\n menuAriaLabel,\n onClick,\n buttons,\n menuButtonClassName,\n isBulkMenu\n } = props;\n const handleOnClick = useCallback(() => onClick(), [onClick]);\n\n const menuProps = {\n 'data-name': 'button-menu',\n buttons\n };\n\n const menu = (\n <div\n className={classnames(style.bulletPointMenu
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","useState","useEffect","classnames","ButtonLinkIcon","ButtonMenu","propTypes","style","BulletPointMenuButton","props","disabled","buttonAriaLabel","menuAriaLabel","onClick","buttons","menuButtonClassName","isBulkMenu","visible","setVisible","handleOnClick","handleMouseDown","document","addEventListener","removeEventListener","menuProps","menu","bulletPointMenu","bulkBulletPointMenu","bulletPointButtonProps","size","icon","className","bulletPointWrapper"],"sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useEffect} from 'react';\nimport classnames from 'classnames';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {BulletPointMenuButtonProps} from './types';\nimport style from './style.css';\n\nconst BulletPointMenuButton = (props: BulletPointMenuButtonProps) => {\n const {\n disabled = false,\n buttonAriaLabel,\n menuAriaLabel,\n onClick,\n buttons,\n menuButtonClassName,\n isBulkMenu\n } = props;\n const [visible, setVisible] = useState(false);\n\n const handleOnClick = useCallback(() => {\n onClick();\n setVisible(true);\n }, [onClick]);\n\n useEffect(() => {\n const handleMouseDown = () => setVisible(false);\n document.addEventListener('mousedown', handleMouseDown);\n return () => {\n document.removeEventListener('mousedown', handleMouseDown);\n };\n }, []);\n\n const menuProps = {\n 'data-name': 'button-menu',\n buttons\n };\n\n const menu = (\n <div\n className={classnames(\n style.bulletPointMenu,\n isBulkMenu && style.bulkBulletPointMenu,\n visible && style.visible\n )}\n data-name=\"menu-wrapper\"\n aria-label={menuAriaLabel}\n >\n <ButtonMenu {...menuProps} />\n </div>\n );\n const bulletPointButtonProps = {\n size: 'default',\n 'aria-label': buttonAriaLabel,\n 'data-name': 'bullet-point-button',\n icon: 'bullet-point',\n onClick: handleOnClick,\n disabled,\n className: menuButtonClassName\n };\n\n return (\n <div className={style.bulletPointWrapper} data-name=\"bullet-point-wrapper\">\n <ButtonLinkIcon {...bulletPointButtonProps} />\n {menu}\n </div>\n );\n};\n\nBulletPointMenuButton.propTypes = propTypes;\n\nexport default BulletPointMenuButton;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,WAAf,EAA4BC,QAA5B,EAAsCC,SAAtC,QAAsD,OAAtD;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,cAAP,MAA2B,6BAA3B;AACA,OAAOC,UAAP,MAAuB,wBAAvB;AACA,OAAOC,SAAP,MAAoD,SAApD;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,qBAAqB,GAAIC,KAAD,IAAuC;EACnE,MAAM;IACJC,QAAQ,GAAG,KADP;IAEJC,eAFI;IAGJC,aAHI;IAIJC,OAJI;IAKJC,OALI;IAMJC,mBANI;IAOJC;EAPI,IAQFP,KARJ;EASA,MAAM,CAACQ,OAAD,EAAUC,UAAV,IAAwBjB,QAAQ,CAAC,KAAD,CAAtC;EAEA,MAAMkB,aAAa,GAAGnB,WAAW,CAAC,MAAM;IACtCa,OAAO;IACPK,UAAU,CAAC,IAAD,CAAV;EACD,CAHgC,EAG9B,CAACL,OAAD,CAH8B,CAAjC;EAKAX,SAAS,CAAC,MAAM;IACd,MAAMkB,eAAe,GAAG,MAAMF,UAAU,CAAC,KAAD,CAAxC;;IACAG,QAAQ,CAACC,gBAAT,CAA0B,WAA1B,EAAuCF,eAAvC;IACA,OAAO,MAAM;MACXC,QAAQ,CAACE,mBAAT,CAA6B,WAA7B,EAA0CH,eAA1C;IACD,CAFD;EAGD,CANQ,EAMN,EANM,CAAT;EAQA,MAAMI,SAAS,GAAG;IAChB,aAAa,aADG;IAEhBV;EAFgB,CAAlB;EAKA,MAAMW,IAAI,gBACR;IACE,SAAS,EAAEtB,UAAU,CACnBI,KAAK,CAACmB,eADa,EAEnBV,UAAU,IAAIT,KAAK,CAACoB,mBAFD,EAGnBV,OAAO,IAAIV,KAAK,CAACU,OAHE,CADvB;IAME,aAAU,cANZ;IAOE,cAAYL;EAPd,gBASE,oBAAC,UAAD,EAAgBY,SAAhB,CATF,CADF;EAaA,MAAMI,sBAAsB,GAAG;IAC7BC,IAAI,EAAE,SADuB;IAE7B,cAAclB,eAFe;IAG7B,aAAa,qBAHgB;IAI7BmB,IAAI,EAAE,cAJuB;IAK7BjB,OAAO,EAAEM,aALoB;IAM7BT,QAN6B;IAO7BqB,SAAS,EAAEhB;EAPkB,CAA/B;EAUA,oBACE;IAAK,SAAS,EAAER,KAAK,CAACyB,kBAAtB;IAA0C,aAAU;EAApD,gBACE,oBAAC,cAAD,EAAoBJ,sBAApB,CADF,EAEGH,IAFH,CADF;AAMD,CA3DD;;AA6DAjB,qBAAqB,CAACF,SAAtB,2CAAkCA,SAAlC;AAEA,eAAeE,qBAAf"}
|
|
@@ -29,31 +29,18 @@
|
|
|
29
29
|
border-radius: 7px;
|
|
30
30
|
overflow: hidden;
|
|
31
31
|
background-color: cm_grey_100;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/* Fade-in - Fade-out, does target button class but bulletPointMenu only */
|
|
35
|
-
button + .bulletPointMenu {
|
|
36
|
-
/* fade out combo */
|
|
37
32
|
visibility: hidden;
|
|
38
33
|
opacity:0;
|
|
39
34
|
transition:visibility 0.5s ease,opacity 0.5s ease;
|
|
40
35
|
}
|
|
41
36
|
|
|
42
|
-
|
|
43
|
-
button:focus + .bulletPointMenu {
|
|
37
|
+
.visible {
|
|
44
38
|
/* fade in combo */
|
|
45
39
|
max-height: max-content;
|
|
46
|
-
visibility:visible;
|
|
40
|
+
visibility: visible;
|
|
47
41
|
opacity:1;
|
|
48
42
|
}
|
|
49
43
|
|
|
50
|
-
/*
|
|
51
|
-
Recover - unset pointer-events,
|
|
52
|
-
to be able to click on the button when the menu is open to close it
|
|
53
|
-
*/
|
|
54
|
-
.bulletPointWrapper > button:focus { pointer-events: none; }
|
|
55
|
-
.bulletPointWrapper > button:not(:focus) { pointer-events: auto; }
|
|
56
|
-
|
|
57
44
|
/*
|
|
58
45
|
bulk theme
|
|
59
46
|
*/
|
|
@@ -24,18 +24,18 @@ const PlaylistDetailCover = ({
|
|
|
24
24
|
}, []);
|
|
25
25
|
return /*#__PURE__*/React.createElement("div", {
|
|
26
26
|
className: style.container
|
|
27
|
-
}, images.length === 1 ? /*#__PURE__*/React.createElement("
|
|
27
|
+
}, images.length === 1 ? /*#__PURE__*/React.createElement("div", {
|
|
28
28
|
className: style.image,
|
|
29
29
|
style: buildImageStyle(images[0])
|
|
30
30
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
31
31
|
className: style.imagesWrapper
|
|
32
|
-
}, firstColumnImages.map((image, index) => /*#__PURE__*/React.createElement("
|
|
32
|
+
}, firstColumnImages.map((image, index) => /*#__PURE__*/React.createElement("div", {
|
|
33
33
|
key: index,
|
|
34
34
|
className: style.image,
|
|
35
35
|
style: buildImageStyle(image)
|
|
36
36
|
}))), /*#__PURE__*/React.createElement("div", {
|
|
37
37
|
className: style.imagesWrapper
|
|
38
|
-
}, secondColumnImages.map((image, index) => /*#__PURE__*/React.createElement("
|
|
38
|
+
}, secondColumnImages.map((image, index) => /*#__PURE__*/React.createElement("div", {
|
|
39
39
|
key: index,
|
|
40
40
|
className: style.image,
|
|
41
41
|
style: buildImageStyle(image)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useMemo","useCallback","PropTypes","EXTERNAL_COURSE_TYPES","style","FALLBACK_PATH","PlaylistDetailCover","images","firstColumnImages","secondColumnImages","imagesClone","splice","length","buildImageStyle","type","image","imageUrl","replace","backgroundImage","backgroundSize","backgroundPosition","container","imagesWrapper","map","index","propTypes","arrayOf","shape","oneOf","string","isRequired"],"sources":["../../../src/molecule/playlist-detail-cover/index.js"],"sourcesContent":["import React, {useMemo, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {EXTERNAL_COURSE_TYPES} from '../../util/external-content';\nimport style from './style.css';\n\nconst FALLBACK_PATH =\n 'https://s3.eu-west-1.amazonaws.com/static.coorpacademy.com/assets/images/cover-fallback-external-$TYPE.png';\n\nconst PlaylistDetailCover = ({images}) => {\n const [firstColumnImages, secondColumnImages] = useMemo(() => {\n const imagesClone = [...images];\n return [imagesClone.splice(0, imagesClone.length / 2), imagesClone];\n }, [images]);\n\n const buildImageStyle = useCallback(({type, image}) => {\n const imageUrl = image || FALLBACK_PATH.replace('$TYPE', type);\n\n return {\n backgroundImage: `url(${imageUrl})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center'\n };\n }, []);\n\n return (\n <div className={style.container}>\n {images.length === 1 ? (\n <
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useMemo","useCallback","PropTypes","EXTERNAL_COURSE_TYPES","style","FALLBACK_PATH","PlaylistDetailCover","images","firstColumnImages","secondColumnImages","imagesClone","splice","length","buildImageStyle","type","image","imageUrl","replace","backgroundImage","backgroundSize","backgroundPosition","container","imagesWrapper","map","index","propTypes","arrayOf","shape","oneOf","string","isRequired"],"sources":["../../../src/molecule/playlist-detail-cover/index.js"],"sourcesContent":["import React, {useMemo, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {EXTERNAL_COURSE_TYPES} from '../../util/external-content';\nimport style from './style.css';\n\nconst FALLBACK_PATH =\n 'https://s3.eu-west-1.amazonaws.com/static.coorpacademy.com/assets/images/cover-fallback-external-$TYPE.png';\n\nconst PlaylistDetailCover = ({images}) => {\n const [firstColumnImages, secondColumnImages] = useMemo(() => {\n const imagesClone = [...images];\n return [imagesClone.splice(0, imagesClone.length / 2), imagesClone];\n }, [images]);\n\n const buildImageStyle = useCallback(({type, image}) => {\n const imageUrl = image || FALLBACK_PATH.replace('$TYPE', type);\n\n return {\n backgroundImage: `url(${imageUrl})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center'\n };\n }, []);\n\n return (\n <div className={style.container}>\n {images.length === 1 ? (\n <div className={style.image} style={buildImageStyle(images[0])} />\n ) : (\n <>\n <div className={style.imagesWrapper}>\n {firstColumnImages.map((image, index) => (\n <div key={index} className={style.image} style={buildImageStyle(image)} />\n ))}\n </div>\n <div className={style.imagesWrapper}>\n {secondColumnImages.map((image, index) => (\n <div key={index} className={style.image} style={buildImageStyle(image)} />\n ))}\n </div>\n </>\n )}\n </div>\n );\n};\n\nPlaylistDetailCover.propTypes = {\n images: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(EXTERNAL_COURSE_TYPES),\n image: PropTypes.string\n })\n ).isRequired\n};\n\nexport default PlaylistDetailCover;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,OAAf,EAAwBC,WAAxB,QAA0C,OAA1C;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAAQC,qBAAR,QAAoC,6BAApC;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,aAAa,GACjB,4GADF;;AAGA,MAAMC,mBAAmB,GAAG,CAAC;EAACC;AAAD,CAAD,KAAc;EACxC,MAAM,CAACC,iBAAD,EAAoBC,kBAApB,IAA0CT,OAAO,CAAC,MAAM;IAC5D,MAAMU,WAAW,GAAG,CAAC,GAAGH,MAAJ,CAApB;IACA,OAAO,CAACG,WAAW,CAACC,MAAZ,CAAmB,CAAnB,EAAsBD,WAAW,CAACE,MAAZ,GAAqB,CAA3C,CAAD,EAAgDF,WAAhD,CAAP;EACD,CAHsD,EAGpD,CAACH,MAAD,CAHoD,CAAvD;EAKA,MAAMM,eAAe,GAAGZ,WAAW,CAAC,CAAC;IAACa,IAAD;IAAOC;EAAP,CAAD,KAAmB;IACrD,MAAMC,QAAQ,GAAGD,KAAK,IAAIV,aAAa,CAACY,OAAd,CAAsB,OAAtB,EAA+BH,IAA/B,CAA1B;IAEA,OAAO;MACLI,eAAe,EAAG,OAAMF,QAAS,GAD5B;MAELG,cAAc,EAAE,OAFX;MAGLC,kBAAkB,EAAE;IAHf,CAAP;EAKD,CARkC,EAQhC,EARgC,CAAnC;EAUA,oBACE;IAAK,SAAS,EAAEhB,KAAK,CAACiB;EAAtB,GACGd,MAAM,CAACK,MAAP,KAAkB,CAAlB,gBACC;IAAK,SAAS,EAAER,KAAK,CAACW,KAAtB;IAA6B,KAAK,EAAEF,eAAe,CAACN,MAAM,CAAC,CAAD,CAAP;EAAnD,EADD,gBAGC,uDACE;IAAK,SAAS,EAAEH,KAAK,CAACkB;EAAtB,GACGd,iBAAiB,CAACe,GAAlB,CAAsB,CAACR,KAAD,EAAQS,KAAR,kBACrB;IAAK,GAAG,EAAEA,KAAV;IAAiB,SAAS,EAAEpB,KAAK,CAACW,KAAlC;IAAyC,KAAK,EAAEF,eAAe,CAACE,KAAD;EAA/D,EADD,CADH,CADF,eAME;IAAK,SAAS,EAAEX,KAAK,CAACkB;EAAtB,GACGb,kBAAkB,CAACc,GAAnB,CAAuB,CAACR,KAAD,EAAQS,KAAR,kBACtB;IAAK,GAAG,EAAEA,KAAV;IAAiB,SAAS,EAAEpB,KAAK,CAACW,KAAlC;IAAyC,KAAK,EAAEF,eAAe,CAACE,KAAD;EAA/D,EADD,CADH,CANF,CAJJ,CADF;AAoBD,CApCD;;AAsCAT,mBAAmB,CAACmB,SAApB,2CAAgC;EAC9BlB,MAAM,EAAEL,SAAS,CAACwB,OAAV,CACNxB,SAAS,CAACyB,KAAV,CAAgB;IACdb,IAAI,EAAEZ,SAAS,CAAC0B,KAAV,CAAgBzB,qBAAhB,CADQ;IAEdY,KAAK,EAAEb,SAAS,CAAC2B;EAFH,CAAhB,CADM,EAKNC;AAN4B,CAAhC;AASA,eAAexB,mBAAf"}
|
|
@@ -79,7 +79,7 @@ const ButtonLinkIcon = props => {
|
|
|
79
79
|
const timer = (0, _react.useRef)();
|
|
80
80
|
const contentView = getButtonContent(icon, faIcon);
|
|
81
81
|
const styleButton = (0, _classnames.default)(getSizeStyle(size), link && _style.default.link, disabled && _style.default.disabled, className);
|
|
82
|
-
const handleOnClick = (0, _react.
|
|
82
|
+
const handleOnClick = (0, _react.useCallback)(() => onClick(), [onClick]);
|
|
83
83
|
const handleMouseOver = (0, _react.useCallback)(() => {
|
|
84
84
|
timer.current && clearTimeout(timer.current);
|
|
85
85
|
timer.current = setTimeout(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getButtonContent","icon","faIcon","Icon","ICONS","style","buttonContent","getSizeStyle","size","small","responsive","default","ButtonLinkIcon","props","disabled","dataName","ariaLabel","link","onClick","className","tooltipPlacement","toolTipIsVisible","setToolTipIsVisible","useState","timer","useRef","contentView","styleButton","classnames","handleOnClick","
|
|
1
|
+
{"version":3,"file":"index.js","names":["getButtonContent","icon","faIcon","Icon","ICONS","style","buttonContent","getSizeStyle","size","small","responsive","default","ButtonLinkIcon","props","disabled","dataName","ariaLabel","link","onClick","className","tooltipPlacement","toolTipIsVisible","setToolTipIsVisible","useState","timer","useRef","contentView","styleButton","classnames","handleOnClick","useCallback","handleMouseOver","current","clearTimeout","setTimeout","undefined","handleMouseLeave","TooltipContent","tooltipContentWrapper","Button","propTypes","PropTypes","oneOf","string","func","shape","href","download","bool","target"],"sources":["../../../src/atom/button-link-icon/index.js"],"sourcesContent":["import React, {useState, useCallback, useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, keys} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {ICONS} from '../../util/button-icons';\nimport FaIcon from '../icon';\nimport Link from '../link';\nimport ToolTip from '../tooltip';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from './style.css';\n\nconst getButtonContent = (icon, faIcon) => {\n const Icon = getOr(null, icon, ICONS);\n\n if (!Icon && !faIcon) {\n return <div className={style.buttonContent} />;\n }\n\n return (\n <div className={style.buttonContent}>\n {faIcon ? <FaIcon iconName={faIcon} /> : <Icon className={style.icon} />}\n </div>\n );\n};\n\nconst getSizeStyle = size => {\n switch (size) {\n case 'small':\n return style.small;\n case 'responsive':\n return style.responsive;\n default:\n return style.default;\n }\n};\n\nconst ButtonLinkIcon = props => {\n const {\n size = 'default',\n disabled,\n icon,\n faIcon,\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n link,\n onClick,\n className,\n tooltipPlacement = 'left'\n } = props;\n const [toolTipIsVisible, setToolTipIsVisible] = useState(false);\n const timer = useRef();\n\n const contentView = getButtonContent(icon, faIcon);\n const styleButton = classnames(\n getSizeStyle(size),\n link && style.link,\n disabled && style.disabled,\n className\n );\n\n const handleOnClick = useCallback(() => onClick(), [onClick]);\n\n const handleMouseOver = useCallback(() => {\n timer.current && clearTimeout(timer.current);\n timer.current = setTimeout(() => {\n setToolTipIsVisible(true);\n timer.current = undefined;\n }, 300);\n }, [timer, setToolTipIsVisible]);\n\n const handleMouseLeave = useCallback(() => {\n timer.current && clearTimeout(timer.current);\n setToolTipIsVisible(false);\n }, [timer, setToolTipIsVisible]);\n\n const TooltipContent = useCallback(\n () => <span className={style.tooltipContentWrapper}>{ariaLabel}</span>,\n [ariaLabel]\n );\n\n const Button = useCallback(\n () =>\n link ? (\n <Link\n {...link}\n {...(ariaLabel\n ? {\n 'data-for': 'button-icon',\n 'data-tip': toolTipIsVisible\n }\n : {})}\n className={styleButton}\n data-name={dataName}\n aria-label={ariaLabel}\n onMouseLeave={handleMouseLeave}\n onMouseOver={handleMouseOver}\n >\n {contentView}\n </Link>\n ) : (\n <button\n {...(ariaLabel\n ? {\n 'data-for': 'button-icon',\n 'data-tip': toolTipIsVisible\n }\n : {})}\n type=\"button\"\n aria-label={ariaLabel}\n data-name={dataName}\n data-testid={`button-${dataName}-${className}`}\n className={styleButton}\n onClick={handleOnClick}\n onMouseLeave={handleMouseLeave}\n onMouseOver={handleMouseOver}\n disabled={disabled}\n >\n {contentView}\n </button>\n ),\n [\n link,\n ariaLabel,\n className,\n contentView,\n dataName,\n disabled,\n handleMouseLeave,\n handleMouseOver,\n handleOnClick,\n styleButton,\n toolTipIsVisible\n ]\n );\n\n return (\n <>\n <Button />\n {ariaLabel ? (\n <ToolTip\n fontSize={12}\n anchorId=\"button-icon\"\n toolTipIsVisible={toolTipIsVisible}\n placement={tooltipPlacement}\n TooltipContent={TooltipContent}\n closeToolTipInformationTextAriaLabel={ariaLabel}\n />\n ) : null}\n </>\n );\n};\n\nButtonLinkIcon.propTypes = {\n size: PropTypes.oneOf(['default', 'small', 'responsive']),\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n icon: PropTypes.oneOf(keys(ICONS)),\n faIcon: PropTypes.string,\n onClick: PropTypes.func,\n link: PropTypes.shape({\n href: PropTypes.string,\n download: PropTypes.bool,\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top'])\n }),\n disabled: PropTypes.bool,\n className: PropTypes.string,\n tooltipPlacement: PropTypes.oneOf(['left', 'right', 'top', 'bottom'])\n};\n\nexport default ButtonLinkIcon;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;;;AAEA,MAAMA,gBAAgB,GAAG,CAACC,IAAD,EAAOC,MAAP,KAAkB;EACzC,MAAMC,IAAI,GAAG,qBAAM,IAAN,EAAYF,IAAZ,EAAkBG,kBAAlB,CAAb;;EAEA,IAAI,CAACD,IAAD,IAAS,CAACD,MAAd,EAAsB;IACpB,oBAAO;MAAK,SAAS,EAAEG,cAAA,CAAMC;IAAtB,EAAP;EACD;;EAED,oBACE;IAAK,SAAS,EAAED,cAAA,CAAMC;EAAtB,GACGJ,MAAM,gBAAG,6BAAC,aAAD;IAAQ,QAAQ,EAAEA;EAAlB,EAAH,gBAAkC,6BAAC,IAAD;IAAM,SAAS,EAAEG,cAAA,CAAMJ;EAAvB,EAD3C,CADF;AAKD,CAZD;;AAcA,MAAMM,YAAY,GAAGC,IAAI,IAAI;EAC3B,QAAQA,IAAR;IACE,KAAK,OAAL;MACE,OAAOH,cAAA,CAAMI,KAAb;;IACF,KAAK,YAAL;MACE,OAAOJ,cAAA,CAAMK,UAAb;;IACF;MACE,OAAOL,cAAA,CAAMM,OAAb;EANJ;AAQD,CATD;;AAWA,MAAMC,cAAc,GAAGC,KAAK,IAAI;EAC9B,MAAM;IACJL,IAAI,GAAG,SADH;IAEJM,QAFI;IAGJb,IAHI;IAIJC,MAJI;IAKJ,aAAaa,QALT;IAMJ,cAAcC,SANV;IAOJC,IAPI;IAQJC,OARI;IASJC,SATI;IAUJC,gBAAgB,GAAG;EAVf,IAWFP,KAXJ;EAYA,MAAM,CAACQ,gBAAD,EAAmBC,mBAAnB,IAA0C,IAAAC,eAAA,EAAS,KAAT,CAAhD;EACA,MAAMC,KAAK,GAAG,IAAAC,aAAA,GAAd;EAEA,MAAMC,WAAW,GAAG1B,gBAAgB,CAACC,IAAD,EAAOC,MAAP,CAApC;EACA,MAAMyB,WAAW,GAAG,IAAAC,mBAAA,EAClBrB,YAAY,CAACC,IAAD,CADM,EAElBS,IAAI,IAAIZ,cAAA,CAAMY,IAFI,EAGlBH,QAAQ,IAAIT,cAAA,CAAMS,QAHA,EAIlBK,SAJkB,CAApB;EAOA,MAAMU,aAAa,GAAG,IAAAC,kBAAA,EAAY,MAAMZ,OAAO,EAAzB,EAA6B,CAACA,OAAD,CAA7B,CAAtB;EAEA,MAAMa,eAAe,GAAG,IAAAD,kBAAA,EAAY,MAAM;IACxCN,KAAK,CAACQ,OAAN,IAAiBC,YAAY,CAACT,KAAK,CAACQ,OAAP,CAA7B;IACAR,KAAK,CAACQ,OAAN,GAAgBE,UAAU,CAAC,MAAM;MAC/BZ,mBAAmB,CAAC,IAAD,CAAnB;MACAE,KAAK,CAACQ,OAAN,GAAgBG,SAAhB;IACD,CAHyB,EAGvB,GAHuB,CAA1B;EAID,CANuB,EAMrB,CAACX,KAAD,EAAQF,mBAAR,CANqB,CAAxB;EAQA,MAAMc,gBAAgB,GAAG,IAAAN,kBAAA,EAAY,MAAM;IACzCN,KAAK,CAACQ,OAAN,IAAiBC,YAAY,CAACT,KAAK,CAACQ,OAAP,CAA7B;IACAV,mBAAmB,CAAC,KAAD,CAAnB;EACD,CAHwB,EAGtB,CAACE,KAAD,EAAQF,mBAAR,CAHsB,CAAzB;EAKA,MAAMe,cAAc,GAAG,IAAAP,kBAAA,EACrB,mBAAM;IAAM,SAAS,EAAEzB,cAAA,CAAMiC;EAAvB,GAA+CtB,SAA/C,CADe,EAErB,CAACA,SAAD,CAFqB,CAAvB;EAKA,MAAMuB,MAAM,GAAG,IAAAT,kBAAA,EACb,MACEb,IAAI,gBACF,6BAAC,aAAD,eACMA,IADN,EAEOD,SAAS,GACV;IACE,YAAY,aADd;IAEE,YAAYK;EAFd,CADU,GAKV,EAPN;IAQE,SAAS,EAAEM,WARb;IASE,aAAWZ,QATb;IAUE,cAAYC,SAVd;IAWE,YAAY,EAAEoB,gBAXhB;IAYE,WAAW,EAAEL;EAZf,IAcGL,WAdH,CADE,gBAkBF,oDACOV,SAAS,GACV;IACE,YAAY,aADd;IAEE,YAAYK;EAFd,CADU,GAKV,EANN;IAOE,IAAI,EAAC,QAPP;IAQE,cAAYL,SARd;IASE,aAAWD,QATb;IAUE,eAAc,UAASA,QAAS,IAAGI,SAAU,EAV/C;IAWE,SAAS,EAAEQ,WAXb;IAYE,OAAO,EAAEE,aAZX;IAaE,YAAY,EAAEO,gBAbhB;IAcE,WAAW,EAAEL,eAdf;IAeE,QAAQ,EAAEjB;EAfZ,IAiBGY,WAjBH,CApBS,EAwCb,CACET,IADF,EAEED,SAFF,EAGEG,SAHF,EAIEO,WAJF,EAKEX,QALF,EAMED,QANF,EAOEsB,gBAPF,EAQEL,eARF,EASEF,aATF,EAUEF,WAVF,EAWEN,gBAXF,CAxCa,CAAf;EAuDA,oBACE,yEACE,6BAAC,MAAD,OADF,EAEGL,SAAS,gBACR,6BAAC,gBAAD;IACE,QAAQ,EAAE,EADZ;IAEE,QAAQ,EAAC,aAFX;IAGE,gBAAgB,EAAEK,gBAHpB;IAIE,SAAS,EAAED,gBAJb;IAKE,cAAc,EAAEiB,cALlB;IAME,oCAAoC,EAAErB;EANxC,EADQ,GASN,IAXN,CADF;AAeD,CAlHD;;AAoHAJ,cAAc,CAAC4B,SAAf,2CAA2B;EACzBhC,IAAI,EAAEiC,kBAAA,CAAUC,KAAV,CAAgB,CAAC,SAAD,EAAY,OAAZ,EAAqB,YAArB,CAAhB,CADmB;EAEzB,cAAcD,kBAAA,CAAUE,MAFC;EAGzB,aAAaF,kBAAA,CAAUE,MAHE;EAIzB1C,IAAI,EAAEwC,kBAAA,CAAUC,KAAV,CAAgB,oBAAKtC,kBAAL,CAAhB,CAJmB;EAKzBF,MAAM,EAAEuC,kBAAA,CAAUE,MALO;EAMzBzB,OAAO,EAAEuB,kBAAA,CAAUG,IANM;EAOzB3B,IAAI,EAAEwB,kBAAA,CAAUI,KAAV,CAAgB;IACpBC,IAAI,EAAEL,kBAAA,CAAUE,MADI;IAEpBI,QAAQ,EAAEN,kBAAA,CAAUO,IAFA;IAGpBC,MAAM,EAAER,kBAAA,CAAUC,KAAV,CAAgB,CAAC,OAAD,EAAU,QAAV,EAAoB,SAApB,EAA+B,MAA/B,CAAhB;EAHY,CAAhB,CAPmB;EAYzB5B,QAAQ,EAAE2B,kBAAA,CAAUO,IAZK;EAazB7B,SAAS,EAAEsB,kBAAA,CAAUE,MAbI;EAczBvB,gBAAgB,EAAEqB,kBAAA,CAAUC,KAAV,CAAgB,CAAC,MAAD,EAAS,OAAT,EAAkB,KAAlB,EAAyB,QAAzB,CAAhB;AAdO,CAA3B;eAiBe9B,c"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"names":[],"mappings":";AAIA,OAAkB,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAG9D,QAAA,MAAM,qBAAqB;YAAW,0BAA0B;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"names":[],"mappings":";AAIA,OAAkB,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAG9D,QAAA,MAAM,qBAAqB;YAAW,0BAA0B;;;;;;;;;;;;;;;;CA2D/D,CAAC;AAIF,eAAe,qBAAqB,CAAC"}
|
|
@@ -31,14 +31,26 @@ const BulletPointMenuButton = props => {
|
|
|
31
31
|
menuButtonClassName,
|
|
32
32
|
isBulkMenu
|
|
33
33
|
} = props;
|
|
34
|
-
const
|
|
34
|
+
const [visible, setVisible] = (0, _react.useState)(false);
|
|
35
|
+
const handleOnClick = (0, _react.useCallback)(() => {
|
|
36
|
+
onClick();
|
|
37
|
+
setVisible(true);
|
|
38
|
+
}, [onClick]);
|
|
39
|
+
(0, _react.useEffect)(() => {
|
|
40
|
+
const handleMouseDown = () => setVisible(false);
|
|
41
|
+
|
|
42
|
+
document.addEventListener('mousedown', handleMouseDown);
|
|
43
|
+
return () => {
|
|
44
|
+
document.removeEventListener('mousedown', handleMouseDown);
|
|
45
|
+
};
|
|
46
|
+
}, []);
|
|
35
47
|
const menuProps = {
|
|
36
48
|
'data-name': 'button-menu',
|
|
37
49
|
buttons
|
|
38
50
|
};
|
|
39
51
|
|
|
40
52
|
const menu = /*#__PURE__*/_react.default.createElement("div", {
|
|
41
|
-
className: (0, _classnames.default)(_style.default.bulletPointMenu, isBulkMenu && _style.default.bulkBulletPointMenu),
|
|
53
|
+
className: (0, _classnames.default)(_style.default.bulletPointMenu, isBulkMenu && _style.default.bulkBulletPointMenu, visible && _style.default.visible),
|
|
42
54
|
"data-name": "menu-wrapper",
|
|
43
55
|
"aria-label": menuAriaLabel
|
|
44
56
|
}, /*#__PURE__*/_react.default.createElement(_buttonMenu.default, menuProps));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["BulletPointMenuButton","props","disabled","buttonAriaLabel","menuAriaLabel","onClick","buttons","menuButtonClassName","isBulkMenu","handleOnClick","useCallback","menuProps","menu","classnames","style","bulletPointMenu","bulkBulletPointMenu","bulletPointButtonProps","size","icon","className","bulletPointWrapper","propTypes"],"sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"sourcesContent":["import React, {useCallback} from 'react';\nimport classnames from 'classnames';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {BulletPointMenuButtonProps} from './types';\nimport style from './style.css';\n\nconst BulletPointMenuButton = (props: BulletPointMenuButtonProps) => {\n const {\n disabled = false,\n buttonAriaLabel,\n menuAriaLabel,\n onClick,\n buttons,\n menuButtonClassName,\n isBulkMenu\n } = props;\n const handleOnClick = useCallback(() => onClick(), [onClick]);\n\n const menuProps = {\n 'data-name': 'button-menu',\n buttons\n };\n\n const menu = (\n <div\n className={classnames(style.bulletPointMenu
|
|
1
|
+
{"version":3,"file":"index.js","names":["BulletPointMenuButton","props","disabled","buttonAriaLabel","menuAriaLabel","onClick","buttons","menuButtonClassName","isBulkMenu","visible","setVisible","useState","handleOnClick","useCallback","useEffect","handleMouseDown","document","addEventListener","removeEventListener","menuProps","menu","classnames","style","bulletPointMenu","bulkBulletPointMenu","bulletPointButtonProps","size","icon","className","bulletPointWrapper","propTypes"],"sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useEffect} from 'react';\nimport classnames from 'classnames';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {BulletPointMenuButtonProps} from './types';\nimport style from './style.css';\n\nconst BulletPointMenuButton = (props: BulletPointMenuButtonProps) => {\n const {\n disabled = false,\n buttonAriaLabel,\n menuAriaLabel,\n onClick,\n buttons,\n menuButtonClassName,\n isBulkMenu\n } = props;\n const [visible, setVisible] = useState(false);\n\n const handleOnClick = useCallback(() => {\n onClick();\n setVisible(true);\n }, [onClick]);\n\n useEffect(() => {\n const handleMouseDown = () => setVisible(false);\n document.addEventListener('mousedown', handleMouseDown);\n return () => {\n document.removeEventListener('mousedown', handleMouseDown);\n };\n }, []);\n\n const menuProps = {\n 'data-name': 'button-menu',\n buttons\n };\n\n const menu = (\n <div\n className={classnames(\n style.bulletPointMenu,\n isBulkMenu && style.bulkBulletPointMenu,\n visible && style.visible\n )}\n data-name=\"menu-wrapper\"\n aria-label={menuAriaLabel}\n >\n <ButtonMenu {...menuProps} />\n </div>\n );\n const bulletPointButtonProps = {\n size: 'default',\n 'aria-label': buttonAriaLabel,\n 'data-name': 'bullet-point-button',\n icon: 'bullet-point',\n onClick: handleOnClick,\n disabled,\n className: menuButtonClassName\n };\n\n return (\n <div className={style.bulletPointWrapper} data-name=\"bullet-point-wrapper\">\n <ButtonLinkIcon {...bulletPointButtonProps} />\n {menu}\n </div>\n );\n};\n\nBulletPointMenuButton.propTypes = propTypes;\n\nexport default BulletPointMenuButton;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,MAAMA,qBAAqB,GAAIC,KAAD,IAAuC;EACnE,MAAM;IACJC,QAAQ,GAAG,KADP;IAEJC,eAFI;IAGJC,aAHI;IAIJC,OAJI;IAKJC,OALI;IAMJC,mBANI;IAOJC;EAPI,IAQFP,KARJ;EASA,MAAM,CAACQ,OAAD,EAAUC,UAAV,IAAwB,IAAAC,eAAA,EAAS,KAAT,CAA9B;EAEA,MAAMC,aAAa,GAAG,IAAAC,kBAAA,EAAY,MAAM;IACtCR,OAAO;IACPK,UAAU,CAAC,IAAD,CAAV;EACD,CAHqB,EAGnB,CAACL,OAAD,CAHmB,CAAtB;EAKA,IAAAS,gBAAA,EAAU,MAAM;IACd,MAAMC,eAAe,GAAG,MAAML,UAAU,CAAC,KAAD,CAAxC;;IACAM,QAAQ,CAACC,gBAAT,CAA0B,WAA1B,EAAuCF,eAAvC;IACA,OAAO,MAAM;MACXC,QAAQ,CAACE,mBAAT,CAA6B,WAA7B,EAA0CH,eAA1C;IACD,CAFD;EAGD,CAND,EAMG,EANH;EAQA,MAAMI,SAAS,GAAG;IAChB,aAAa,aADG;IAEhBb;EAFgB,CAAlB;;EAKA,MAAMc,IAAI,gBACR;IACE,SAAS,EAAE,IAAAC,mBAAA,EACTC,cAAA,CAAMC,eADG,EAETf,UAAU,IAAIc,cAAA,CAAME,mBAFX,EAGTf,OAAO,IAAIa,cAAA,CAAMb,OAHR,CADb;IAME,aAAU,cANZ;IAOE,cAAYL;EAPd,gBASE,6BAAC,mBAAD,EAAgBe,SAAhB,CATF,CADF;;EAaA,MAAMM,sBAAsB,GAAG;IAC7BC,IAAI,EAAE,SADuB;IAE7B,cAAcvB,eAFe;IAG7B,aAAa,qBAHgB;IAI7BwB,IAAI,EAAE,cAJuB;IAK7BtB,OAAO,EAAEO,aALoB;IAM7BV,QAN6B;IAO7B0B,SAAS,EAAErB;EAPkB,CAA/B;EAUA,oBACE;IAAK,SAAS,EAAEe,cAAA,CAAMO,kBAAtB;IAA0C,aAAU;EAApD,gBACE,6BAAC,uBAAD,EAAoBJ,sBAApB,CADF,EAEGL,IAFH,CADF;AAMD,CA3DD;;AA6DApB,qBAAqB,CAAC8B,SAAtB,2CAAkCA,cAAlC;eAEe9B,qB"}
|
|
@@ -29,31 +29,18 @@
|
|
|
29
29
|
border-radius: 7px;
|
|
30
30
|
overflow: hidden;
|
|
31
31
|
background-color: cm_grey_100;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/* Fade-in - Fade-out, does target button class but bulletPointMenu only */
|
|
35
|
-
button + .bulletPointMenu {
|
|
36
|
-
/* fade out combo */
|
|
37
32
|
visibility: hidden;
|
|
38
33
|
opacity:0;
|
|
39
34
|
transition:visibility 0.5s ease,opacity 0.5s ease;
|
|
40
35
|
}
|
|
41
36
|
|
|
42
|
-
|
|
43
|
-
button:focus + .bulletPointMenu {
|
|
37
|
+
.visible {
|
|
44
38
|
/* fade in combo */
|
|
45
39
|
max-height: max-content;
|
|
46
|
-
visibility:visible;
|
|
40
|
+
visibility: visible;
|
|
47
41
|
opacity:1;
|
|
48
42
|
}
|
|
49
43
|
|
|
50
|
-
/*
|
|
51
|
-
Recover - unset pointer-events,
|
|
52
|
-
to be able to click on the button when the menu is open to close it
|
|
53
|
-
*/
|
|
54
|
-
.bulletPointWrapper > button:focus { pointer-events: none; }
|
|
55
|
-
.bulletPointWrapper > button:not(:focus) { pointer-events: auto; }
|
|
56
|
-
|
|
57
44
|
/*
|
|
58
45
|
bulk theme
|
|
59
46
|
*/
|
|
@@ -39,18 +39,18 @@ const PlaylistDetailCover = ({
|
|
|
39
39
|
}, []);
|
|
40
40
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
41
41
|
className: _style.default.container
|
|
42
|
-
}, images.length === 1 ? /*#__PURE__*/_react.default.createElement("
|
|
42
|
+
}, images.length === 1 ? /*#__PURE__*/_react.default.createElement("div", {
|
|
43
43
|
className: _style.default.image,
|
|
44
44
|
style: buildImageStyle(images[0])
|
|
45
45
|
}) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
46
46
|
className: _style.default.imagesWrapper
|
|
47
|
-
}, firstColumnImages.map((image, index) => /*#__PURE__*/_react.default.createElement("
|
|
47
|
+
}, firstColumnImages.map((image, index) => /*#__PURE__*/_react.default.createElement("div", {
|
|
48
48
|
key: index,
|
|
49
49
|
className: _style.default.image,
|
|
50
50
|
style: buildImageStyle(image)
|
|
51
51
|
}))), /*#__PURE__*/_react.default.createElement("div", {
|
|
52
52
|
className: _style.default.imagesWrapper
|
|
53
|
-
}, secondColumnImages.map((image, index) => /*#__PURE__*/_react.default.createElement("
|
|
53
|
+
}, secondColumnImages.map((image, index) => /*#__PURE__*/_react.default.createElement("div", {
|
|
54
54
|
key: index,
|
|
55
55
|
className: _style.default.image,
|
|
56
56
|
style: buildImageStyle(image)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["FALLBACK_PATH","PlaylistDetailCover","images","firstColumnImages","secondColumnImages","useMemo","imagesClone","splice","length","buildImageStyle","useCallback","type","image","imageUrl","replace","backgroundImage","backgroundSize","backgroundPosition","style","container","imagesWrapper","map","index","propTypes","PropTypes","arrayOf","shape","oneOf","EXTERNAL_COURSE_TYPES","string","isRequired"],"sources":["../../../src/molecule/playlist-detail-cover/index.js"],"sourcesContent":["import React, {useMemo, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {EXTERNAL_COURSE_TYPES} from '../../util/external-content';\nimport style from './style.css';\n\nconst FALLBACK_PATH =\n 'https://s3.eu-west-1.amazonaws.com/static.coorpacademy.com/assets/images/cover-fallback-external-$TYPE.png';\n\nconst PlaylistDetailCover = ({images}) => {\n const [firstColumnImages, secondColumnImages] = useMemo(() => {\n const imagesClone = [...images];\n return [imagesClone.splice(0, imagesClone.length / 2), imagesClone];\n }, [images]);\n\n const buildImageStyle = useCallback(({type, image}) => {\n const imageUrl = image || FALLBACK_PATH.replace('$TYPE', type);\n\n return {\n backgroundImage: `url(${imageUrl})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center'\n };\n }, []);\n\n return (\n <div className={style.container}>\n {images.length === 1 ? (\n <
|
|
1
|
+
{"version":3,"file":"index.js","names":["FALLBACK_PATH","PlaylistDetailCover","images","firstColumnImages","secondColumnImages","useMemo","imagesClone","splice","length","buildImageStyle","useCallback","type","image","imageUrl","replace","backgroundImage","backgroundSize","backgroundPosition","style","container","imagesWrapper","map","index","propTypes","PropTypes","arrayOf","shape","oneOf","EXTERNAL_COURSE_TYPES","string","isRequired"],"sources":["../../../src/molecule/playlist-detail-cover/index.js"],"sourcesContent":["import React, {useMemo, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {EXTERNAL_COURSE_TYPES} from '../../util/external-content';\nimport style from './style.css';\n\nconst FALLBACK_PATH =\n 'https://s3.eu-west-1.amazonaws.com/static.coorpacademy.com/assets/images/cover-fallback-external-$TYPE.png';\n\nconst PlaylistDetailCover = ({images}) => {\n const [firstColumnImages, secondColumnImages] = useMemo(() => {\n const imagesClone = [...images];\n return [imagesClone.splice(0, imagesClone.length / 2), imagesClone];\n }, [images]);\n\n const buildImageStyle = useCallback(({type, image}) => {\n const imageUrl = image || FALLBACK_PATH.replace('$TYPE', type);\n\n return {\n backgroundImage: `url(${imageUrl})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center'\n };\n }, []);\n\n return (\n <div className={style.container}>\n {images.length === 1 ? (\n <div className={style.image} style={buildImageStyle(images[0])} />\n ) : (\n <>\n <div className={style.imagesWrapper}>\n {firstColumnImages.map((image, index) => (\n <div key={index} className={style.image} style={buildImageStyle(image)} />\n ))}\n </div>\n <div className={style.imagesWrapper}>\n {secondColumnImages.map((image, index) => (\n <div key={index} className={style.image} style={buildImageStyle(image)} />\n ))}\n </div>\n </>\n )}\n </div>\n );\n};\n\nPlaylistDetailCover.propTypes = {\n images: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(EXTERNAL_COURSE_TYPES),\n image: PropTypes.string\n })\n ).isRequired\n};\n\nexport default PlaylistDetailCover;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEA,MAAMA,aAAa,GACjB,4GADF;;AAGA,MAAMC,mBAAmB,GAAG,CAAC;EAACC;AAAD,CAAD,KAAc;EACxC,MAAM,CAACC,iBAAD,EAAoBC,kBAApB,IAA0C,IAAAC,cAAA,EAAQ,MAAM;IAC5D,MAAMC,WAAW,GAAG,CAAC,GAAGJ,MAAJ,CAApB;IACA,OAAO,CAACI,WAAW,CAACC,MAAZ,CAAmB,CAAnB,EAAsBD,WAAW,CAACE,MAAZ,GAAqB,CAA3C,CAAD,EAAgDF,WAAhD,CAAP;EACD,CAH+C,EAG7C,CAACJ,MAAD,CAH6C,CAAhD;EAKA,MAAMO,eAAe,GAAG,IAAAC,kBAAA,EAAY,CAAC;IAACC,IAAD;IAAOC;EAAP,CAAD,KAAmB;IACrD,MAAMC,QAAQ,GAAGD,KAAK,IAAIZ,aAAa,CAACc,OAAd,CAAsB,OAAtB,EAA+BH,IAA/B,CAA1B;IAEA,OAAO;MACLI,eAAe,EAAG,OAAMF,QAAS,GAD5B;MAELG,cAAc,EAAE,OAFX;MAGLC,kBAAkB,EAAE;IAHf,CAAP;EAKD,CARuB,EAQrB,EARqB,CAAxB;EAUA,oBACE;IAAK,SAAS,EAAEC,cAAA,CAAMC;EAAtB,GACGjB,MAAM,CAACM,MAAP,KAAkB,CAAlB,gBACC;IAAK,SAAS,EAAEU,cAAA,CAAMN,KAAtB;IAA6B,KAAK,EAAEH,eAAe,CAACP,MAAM,CAAC,CAAD,CAAP;EAAnD,EADD,gBAGC,yEACE;IAAK,SAAS,EAAEgB,cAAA,CAAME;EAAtB,GACGjB,iBAAiB,CAACkB,GAAlB,CAAsB,CAACT,KAAD,EAAQU,KAAR,kBACrB;IAAK,GAAG,EAAEA,KAAV;IAAiB,SAAS,EAAEJ,cAAA,CAAMN,KAAlC;IAAyC,KAAK,EAAEH,eAAe,CAACG,KAAD;EAA/D,EADD,CADH,CADF,eAME;IAAK,SAAS,EAAEM,cAAA,CAAME;EAAtB,GACGhB,kBAAkB,CAACiB,GAAnB,CAAuB,CAACT,KAAD,EAAQU,KAAR,kBACtB;IAAK,GAAG,EAAEA,KAAV;IAAiB,SAAS,EAAEJ,cAAA,CAAMN,KAAlC;IAAyC,KAAK,EAAEH,eAAe,CAACG,KAAD;EAA/D,EADD,CADH,CANF,CAJJ,CADF;AAoBD,CApCD;;AAsCAX,mBAAmB,CAACsB,SAApB,2CAAgC;EAC9BrB,MAAM,EAAEsB,kBAAA,CAAUC,OAAV,CACND,kBAAA,CAAUE,KAAV,CAAgB;IACdf,IAAI,EAAEa,kBAAA,CAAUG,KAAV,CAAgBC,sCAAhB,CADQ;IAEdhB,KAAK,EAAEY,kBAAA,CAAUK;EAFH,CAAhB,CADM,EAKNC;AAN4B,CAAhC;eASe7B,mB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coorpacademy/components",
|
|
3
|
-
"version": "11.32.
|
|
3
|
+
"version": "11.32.31",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"typecheck": "tsc --noEmit true"
|
|
46
46
|
},
|
|
47
47
|
"engines": {
|
|
48
|
-
"node": ">=12.
|
|
48
|
+
"node": ">=18.12.0"
|
|
49
49
|
},
|
|
50
50
|
"contributors": [
|
|
51
51
|
"Arthur Weber <arthur.weber@coorpacademy.com>",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
],
|
|
60
60
|
"dependencies": {
|
|
61
61
|
"@coorpacademy/nova-icons": "4.4.2",
|
|
62
|
-
"@coorpacademy/react-native-animation": "1.0.
|
|
62
|
+
"@coorpacademy/react-native-animation": "1.0.4",
|
|
63
63
|
"@fortawesome/fontawesome-svg-core": "^6.5.1",
|
|
64
64
|
"@fortawesome/pro-solid-svg-icons": "^6.5.1",
|
|
65
65
|
"@fortawesome/react-fontawesome": "^0.2.0",
|
|
@@ -177,5 +177,5 @@
|
|
|
177
177
|
"last 2 versions",
|
|
178
178
|
"IE 11"
|
|
179
179
|
],
|
|
180
|
-
"gitHead": "
|
|
180
|
+
"gitHead": "56912fa1bfa3d4c52095be1110d352ac8455b0e5"
|
|
181
181
|
}
|