@coorpacademy/components 11.40.22 → 11.40.23
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/chip/index.d.ts.map +1 -1
- package/es/atom/chip/index.js +10 -0
- package/es/atom/chip/index.js.map +1 -1
- package/es/atom/chips/index.d.ts.map +1 -1
- package/es/atom/chips/index.js +9 -0
- package/es/atom/chips/index.js.map +1 -1
- package/es/atom/circular-progress-bar/index.d.ts.map +1 -1
- package/es/atom/circular-progress-bar/index.js +4 -0
- package/es/atom/circular-progress-bar/index.js.map +1 -1
- package/es/atom/input-select/index.d.ts.map +1 -1
- package/es/atom/input-select/index.js +2 -2
- package/es/atom/input-select/index.js.map +1 -1
- package/es/atom/input-text-with-title/index.js +1 -0
- package/es/atom/input-text-with-title/index.js.map +1 -1
- package/es/atom/review-presentation/index.js +1 -0
- package/es/atom/review-presentation/index.js.map +1 -1
- package/es/atom/title/index.js +1 -0
- package/es/atom/title/index.js.map +1 -1
- package/es/atom/tooltip/index.d.ts.map +1 -1
- package/es/atom/tooltip/index.js +1 -0
- package/es/atom/tooltip/index.js.map +1 -1
- package/es/molecule/base-modal/index.js +1 -0
- package/es/molecule/base-modal/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 +1 -0
- package/es/molecule/bullet-point-menu-button/index.js.map +1 -1
- package/es/molecule/button-menu-action/index.d.ts.map +1 -1
- package/es/molecule/button-menu-action/index.js +1 -0
- package/es/molecule/button-menu-action/index.js.map +1 -1
- package/es/molecule/card/customer.js +1 -0
- package/es/molecule/card/customer.js.map +1 -1
- package/es/molecule/card/index.d.ts.map +1 -1
- package/es/molecule/card/index.js +7 -0
- package/es/molecule/card/index.js.map +1 -1
- package/es/molecule/card-content/index.d.ts.map +1 -1
- package/es/molecule/card-content/index.js +1 -0
- package/es/molecule/card-content/index.js.map +1 -1
- package/es/molecule/course-section/index.d.ts.map +1 -1
- package/es/molecule/course-section/index.js +3 -0
- package/es/molecule/course-section/index.js.map +1 -1
- package/es/molecule/dashboard/learning-profile-banner/index.d.ts.map +1 -1
- package/es/molecule/dashboard/learning-profile-banner/index.js +2 -4
- package/es/molecule/dashboard/learning-profile-banner/index.js.map +1 -1
- package/es/molecule/dashboard/review-banner/index.d.ts.map +1 -1
- package/es/molecule/dashboard/review-banner/index.js +2 -4
- package/es/molecule/dashboard/review-banner/index.js.map +1 -1
- package/es/molecule/learner-skill-card/index.d.ts.map +1 -1
- package/es/molecule/learner-skill-card/index.js +11 -0
- package/es/molecule/learner-skill-card/index.js.map +1 -1
- package/es/molecule/learning-priority-card/index.d.ts.map +1 -1
- package/es/molecule/learning-priority-card/index.js +1 -0
- package/es/molecule/learning-priority-card/index.js.map +1 -1
- package/es/molecule/learning-priority-setup-item/index.d.ts.map +1 -1
- package/es/molecule/learning-priority-setup-item/index.js +1 -0
- package/es/molecule/learning-priority-setup-item/index.js.map +1 -1
- package/es/molecule/progress-wrapper/index.d.ts.map +1 -1
- package/es/molecule/progress-wrapper/index.js +3 -0
- package/es/molecule/progress-wrapper/index.js.map +1 -1
- package/es/molecule/questions/qcm/index.d.ts.map +1 -1
- package/es/molecule/questions/qcm/index.js +10 -0
- package/es/molecule/questions/qcm/index.js.map +1 -1
- package/es/molecule/questions/qcm-graphic/index.d.ts.map +1 -1
- package/es/molecule/questions/qcm-graphic/index.js +1 -0
- package/es/molecule/questions/qcm-graphic/index.js.map +1 -1
- package/es/molecule/quick-filters/index.d.ts.map +1 -1
- package/es/molecule/quick-filters/index.js +1 -0
- package/es/molecule/quick-filters/index.js.map +1 -1
- package/es/molecule/review-correction-popin/index.d.ts.map +1 -1
- package/es/molecule/review-correction-popin/index.js +3 -0
- package/es/molecule/review-correction-popin/index.js.map +1 -1
- package/es/molecule/search-form/index.d.ts.map +1 -1
- package/es/molecule/search-form/index.js +7 -0
- package/es/molecule/search-form/index.js.map +1 -1
- package/es/molecule/skill-card/index.d.ts.map +1 -1
- package/es/molecule/skill-card/index.js +3 -0
- package/es/molecule/skill-card/index.js.map +1 -1
- package/es/organism/header-with-actions/index.js +0 -1
- package/es/organism/header-with-actions/index.js.map +1 -1
- package/es/organism/list-item/index.js +1 -0
- package/es/organism/list-item/index.js.map +1 -1
- package/es/organism/mooc-header/index.d.ts.map +1 -1
- package/es/organism/mooc-header/index.js +3 -0
- package/es/organism/mooc-header/index.js.map +1 -1
- package/es/organism/review-congrats/index.d.ts.map +1 -1
- package/es/organism/review-congrats/index.js +1 -0
- package/es/organism/review-congrats/index.js.map +1 -1
- package/es/organism/review-header/index.d.ts.map +1 -1
- package/es/organism/review-header/index.js +3 -0
- package/es/organism/review-header/index.js.map +1 -1
- package/es/template/app-review/skills/index.js +1 -0
- package/es/template/app-review/skills/index.js.map +1 -1
- package/es/template/review-dashboard-skills/index.js +1 -0
- package/es/template/review-dashboard-skills/index.js.map +1 -1
- package/lib/atom/chip/index.d.ts.map +1 -1
- package/lib/atom/chip/index.js +10 -0
- package/lib/atom/chip/index.js.map +1 -1
- package/lib/atom/chips/index.d.ts.map +1 -1
- package/lib/atom/chips/index.js +9 -0
- package/lib/atom/chips/index.js.map +1 -1
- package/lib/atom/circular-progress-bar/index.d.ts.map +1 -1
- package/lib/atom/circular-progress-bar/index.js +4 -0
- package/lib/atom/circular-progress-bar/index.js.map +1 -1
- package/lib/atom/input-select/index.d.ts.map +1 -1
- package/lib/atom/input-select/index.js +2 -2
- package/lib/atom/input-select/index.js.map +1 -1
- package/lib/atom/input-text-with-title/index.js +1 -0
- package/lib/atom/input-text-with-title/index.js.map +1 -1
- package/lib/atom/review-presentation/index.js +1 -0
- package/lib/atom/review-presentation/index.js.map +1 -1
- package/lib/atom/title/index.js +1 -0
- package/lib/atom/title/index.js.map +1 -1
- package/lib/atom/tooltip/index.d.ts.map +1 -1
- package/lib/atom/tooltip/index.js +1 -0
- package/lib/atom/tooltip/index.js.map +1 -1
- package/lib/molecule/base-modal/index.js +1 -0
- package/lib/molecule/base-modal/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 +1 -0
- package/lib/molecule/bullet-point-menu-button/index.js.map +1 -1
- package/lib/molecule/button-menu-action/index.d.ts.map +1 -1
- package/lib/molecule/button-menu-action/index.js +1 -0
- package/lib/molecule/button-menu-action/index.js.map +1 -1
- package/lib/molecule/card/customer.js +1 -0
- package/lib/molecule/card/customer.js.map +1 -1
- package/lib/molecule/card/index.d.ts.map +1 -1
- package/lib/molecule/card/index.js +7 -0
- package/lib/molecule/card/index.js.map +1 -1
- package/lib/molecule/card-content/index.d.ts.map +1 -1
- package/lib/molecule/card-content/index.js +1 -0
- package/lib/molecule/card-content/index.js.map +1 -1
- package/lib/molecule/course-section/index.d.ts.map +1 -1
- package/lib/molecule/course-section/index.js +3 -0
- package/lib/molecule/course-section/index.js.map +1 -1
- package/lib/molecule/dashboard/learning-profile-banner/index.d.ts.map +1 -1
- package/lib/molecule/dashboard/learning-profile-banner/index.js +2 -4
- package/lib/molecule/dashboard/learning-profile-banner/index.js.map +1 -1
- package/lib/molecule/dashboard/review-banner/index.d.ts.map +1 -1
- package/lib/molecule/dashboard/review-banner/index.js +2 -4
- package/lib/molecule/dashboard/review-banner/index.js.map +1 -1
- package/lib/molecule/learner-skill-card/index.d.ts.map +1 -1
- package/lib/molecule/learner-skill-card/index.js +11 -0
- package/lib/molecule/learner-skill-card/index.js.map +1 -1
- package/lib/molecule/learning-priority-card/index.d.ts.map +1 -1
- package/lib/molecule/learning-priority-card/index.js +1 -0
- package/lib/molecule/learning-priority-card/index.js.map +1 -1
- package/lib/molecule/learning-priority-setup-item/index.d.ts.map +1 -1
- package/lib/molecule/learning-priority-setup-item/index.js +1 -0
- package/lib/molecule/learning-priority-setup-item/index.js.map +1 -1
- package/lib/molecule/progress-wrapper/index.d.ts.map +1 -1
- package/lib/molecule/progress-wrapper/index.js +3 -0
- package/lib/molecule/progress-wrapper/index.js.map +1 -1
- package/lib/molecule/questions/qcm/index.d.ts.map +1 -1
- package/lib/molecule/questions/qcm/index.js +10 -0
- package/lib/molecule/questions/qcm/index.js.map +1 -1
- package/lib/molecule/questions/qcm-graphic/index.d.ts.map +1 -1
- package/lib/molecule/questions/qcm-graphic/index.js +1 -0
- package/lib/molecule/questions/qcm-graphic/index.js.map +1 -1
- package/lib/molecule/quick-filters/index.d.ts.map +1 -1
- package/lib/molecule/quick-filters/index.js +1 -0
- package/lib/molecule/quick-filters/index.js.map +1 -1
- package/lib/molecule/review-correction-popin/index.d.ts.map +1 -1
- package/lib/molecule/review-correction-popin/index.js +3 -0
- package/lib/molecule/review-correction-popin/index.js.map +1 -1
- package/lib/molecule/search-form/index.d.ts.map +1 -1
- package/lib/molecule/search-form/index.js +7 -0
- package/lib/molecule/search-form/index.js.map +1 -1
- package/lib/molecule/skill-card/index.d.ts.map +1 -1
- package/lib/molecule/skill-card/index.js +3 -0
- package/lib/molecule/skill-card/index.js.map +1 -1
- package/lib/organism/header-with-actions/index.js +0 -1
- package/lib/organism/header-with-actions/index.js.map +1 -1
- package/lib/organism/list-item/index.js +1 -0
- package/lib/organism/list-item/index.js.map +1 -1
- package/lib/organism/mooc-header/index.d.ts.map +1 -1
- package/lib/organism/mooc-header/index.js +3 -0
- package/lib/organism/mooc-header/index.js.map +1 -1
- package/lib/organism/review-congrats/index.d.ts.map +1 -1
- package/lib/organism/review-congrats/index.js +1 -0
- package/lib/organism/review-congrats/index.js.map +1 -1
- package/lib/organism/review-header/index.d.ts.map +1 -1
- package/lib/organism/review-header/index.js +3 -0
- package/lib/organism/review-header/index.js.map +1 -1
- package/lib/template/app-review/skills/index.js +1 -0
- package/lib/template/app-review/skills/index.js.map +1 -1
- package/lib/template/review-dashboard-skills/index.js +1 -0
- package/lib/template/review-dashboard-skills/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"names":[],"mappings":";AAKA,OAAkB,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAM9D,QAAA,MAAM,qBAAqB;YAAW,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"names":[],"mappings":";AAKA,OAAkB,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAM9D,QAAA,MAAM,qBAAqB;YAAW,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4H/D,CAAC;AAIF,eAAe,qBAAqB,CAAC"}
|
|
@@ -77,6 +77,7 @@ const BulletPointMenuButton = props => {
|
|
|
77
77
|
const menu = visible ? /*#__PURE__*/React.createElement("div", {
|
|
78
78
|
className: menuStyle,
|
|
79
79
|
"data-name": "menu-wrapper",
|
|
80
|
+
role: "group",
|
|
80
81
|
"aria-label": menuAriaLabel,
|
|
81
82
|
ref: wrapperRef
|
|
82
83
|
}, /*#__PURE__*/React.createElement(ButtonMenu, menuProps)) : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","useState","useEffect","useRef","classnames","ButtonLinkIcon","ButtonMenu","propTypes","style","MENU_TOGGLE_EVENT","BulletPointMenuButton","props","disabled","buttonAriaLabel","menuAriaLabel","onClick","_noop","buttons","menuButtonClassName","isBulkMenu","dataName","visible","setVisible","wrapperRef","menuIdRef","Date","now","Math","random","handleOnClick","event","stopPropagation","preventDefault","customEvent","CustomEvent","detail","menuId","current","window","dispatchEvent","handleMenuToggle","addEventListener","removeEventListener","handleClick","clickEvent","contains","target","document","menuProps","menuStyle","bulletPointMenu","bulkBulletPointMenu","menu","createElement","className","ref","tooltipDisabled","setTooltipDisabled","timer","setTimeout","clearTimeout","bulletPointButtonProps","size","undefined","icon","tooltipPlacement","bulletPointWrapper","process","env","NODE_ENV"],"sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useEffect, useRef} from 'react';\nimport classnames from 'classnames';\nimport {noop} from 'lodash/fp';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {BulletPointMenuButtonProps} from './types';\nimport style from './style.css';\n\n// Global event for menu coordination\nconst MENU_TOGGLE_EVENT = 'bulletPointMenuToggle';\n\nconst BulletPointMenuButton = (props: BulletPointMenuButtonProps) => {\n const {\n disabled = false,\n buttonAriaLabel,\n menuAriaLabel,\n onClick = noop,\n buttons,\n menuButtonClassName,\n isBulkMenu,\n 'data-name': dataName = 'bullet-point-button'\n } = props;\n const [visible, setVisible] = useState(false);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const menuIdRef = useRef<string>(`menu-${Date.now()}-${Math.random()}`);\n\n const handleOnClick = useCallback(\n (event: React.MouseEvent | React.TouchEvent) => {\n event.stopPropagation();\n event.preventDefault();\n onClick();\n // Emit event to close other menus\n // had to do it this way because state is handled per item.\n // meaning > item has no knowledge of other items state.\n const customEvent = new CustomEvent(MENU_TOGGLE_EVENT, {\n detail: {menuId: menuIdRef.current}\n });\n window.dispatchEvent(customEvent);\n\n setVisible(!visible);\n },\n [onClick, visible]\n );\n\n useEffect(() => {\n const handleMenuToggle = (event: Event) => {\n const customEvent = event as CustomEvent;\n if (customEvent.detail.menuId !== menuIdRef.current && visible) {\n setVisible(false);\n }\n };\n\n window.addEventListener(MENU_TOGGLE_EVENT, handleMenuToggle);\n return () => {\n window.removeEventListener(MENU_TOGGLE_EVENT, handleMenuToggle);\n };\n }, [visible]);\n\n // Handle clicks outside the menu\n useEffect(() => {\n const handleClick = (clickEvent: MouseEvent | TouchEvent) => {\n if (\n wrapperRef &&\n wrapperRef.current &&\n !wrapperRef.current.contains(clickEvent.target as Node)\n ) {\n setVisible(false);\n }\n };\n if (visible) {\n document.addEventListener('click', handleClick);\n document.addEventListener('touchstart', handleClick);\n } else {\n document.removeEventListener('click', handleClick);\n document.removeEventListener('touchstart', handleClick);\n }\n return () => {\n document.removeEventListener('click', handleClick);\n document.removeEventListener('touchstart', handleClick);\n };\n }, [visible]);\n\n const menuProps = {\n 'data-name': 'button-menu',\n buttons\n };\n\n const menuStyle = classnames(\n style.bulletPointMenu,\n isBulkMenu && style.bulkBulletPointMenu,\n style.visible\n );\n\n const menu = visible ? (\n <div
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","useState","useEffect","useRef","classnames","ButtonLinkIcon","ButtonMenu","propTypes","style","MENU_TOGGLE_EVENT","BulletPointMenuButton","props","disabled","buttonAriaLabel","menuAriaLabel","onClick","_noop","buttons","menuButtonClassName","isBulkMenu","dataName","visible","setVisible","wrapperRef","menuIdRef","Date","now","Math","random","handleOnClick","event","stopPropagation","preventDefault","customEvent","CustomEvent","detail","menuId","current","window","dispatchEvent","handleMenuToggle","addEventListener","removeEventListener","handleClick","clickEvent","contains","target","document","menuProps","menuStyle","bulletPointMenu","bulkBulletPointMenu","menu","createElement","className","role","ref","tooltipDisabled","setTooltipDisabled","timer","setTimeout","clearTimeout","bulletPointButtonProps","size","undefined","icon","tooltipPlacement","bulletPointWrapper","process","env","NODE_ENV"],"sources":["../../../src/molecule/bullet-point-menu-button/index.tsx"],"sourcesContent":["import React, {useCallback, useState, useEffect, useRef} from 'react';\nimport classnames from 'classnames';\nimport {noop} from 'lodash/fp';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport ButtonMenu from '../../atom/button-menu';\nimport propTypes, {BulletPointMenuButtonProps} from './types';\nimport style from './style.css';\n\n// Global event for menu coordination\nconst MENU_TOGGLE_EVENT = 'bulletPointMenuToggle';\n\nconst BulletPointMenuButton = (props: BulletPointMenuButtonProps) => {\n const {\n disabled = false,\n buttonAriaLabel,\n menuAriaLabel,\n onClick = noop,\n buttons,\n menuButtonClassName,\n isBulkMenu,\n 'data-name': dataName = 'bullet-point-button'\n } = props;\n const [visible, setVisible] = useState(false);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const menuIdRef = useRef<string>(`menu-${Date.now()}-${Math.random()}`);\n\n const handleOnClick = useCallback(\n (event: React.MouseEvent | React.TouchEvent) => {\n event.stopPropagation();\n event.preventDefault();\n onClick();\n // Emit event to close other menus\n // had to do it this way because state is handled per item.\n // meaning > item has no knowledge of other items state.\n const customEvent = new CustomEvent(MENU_TOGGLE_EVENT, {\n detail: {menuId: menuIdRef.current}\n });\n window.dispatchEvent(customEvent);\n\n setVisible(!visible);\n },\n [onClick, visible]\n );\n\n useEffect(() => {\n const handleMenuToggle = (event: Event) => {\n const customEvent = event as CustomEvent;\n if (customEvent.detail.menuId !== menuIdRef.current && visible) {\n setVisible(false);\n }\n };\n\n window.addEventListener(MENU_TOGGLE_EVENT, handleMenuToggle);\n return () => {\n window.removeEventListener(MENU_TOGGLE_EVENT, handleMenuToggle);\n };\n }, [visible]);\n\n // Handle clicks outside the menu\n useEffect(() => {\n const handleClick = (clickEvent: MouseEvent | TouchEvent) => {\n if (\n wrapperRef &&\n wrapperRef.current &&\n !wrapperRef.current.contains(clickEvent.target as Node)\n ) {\n setVisible(false);\n }\n };\n if (visible) {\n document.addEventListener('click', handleClick);\n document.addEventListener('touchstart', handleClick);\n } else {\n document.removeEventListener('click', handleClick);\n document.removeEventListener('touchstart', handleClick);\n }\n return () => {\n document.removeEventListener('click', handleClick);\n document.removeEventListener('touchstart', handleClick);\n };\n }, [visible]);\n\n const menuProps = {\n 'data-name': 'button-menu',\n buttons\n };\n\n const menuStyle = classnames(\n style.bulletPointMenu,\n isBulkMenu && style.bulkBulletPointMenu,\n style.visible\n );\n\n const menu = visible ? (\n <div\n className={menuStyle}\n data-name=\"menu-wrapper\"\n role=\"group\"\n aria-label={menuAriaLabel}\n ref={wrapperRef}\n >\n <ButtonMenu {...menuProps} />\n </div>\n ) : null;\n\n // Conditionally show tooltip - hide it when menu is open or just closed\n const [tooltipDisabled, setTooltipDisabled] = useState(false);\n\n useEffect(() => {\n if (visible) {\n setTooltipDisabled(true);\n } else {\n // Delay re-enabling tooltip after menu closes\n const timer = setTimeout(() => setTooltipDisabled(false), 500);\n return () => clearTimeout(timer);\n }\n }, [visible]);\n\n const bulletPointButtonProps = {\n size: 'default',\n 'aria-label': tooltipDisabled ? undefined : buttonAriaLabel,\n 'data-name': dataName,\n icon: 'bullet-point',\n onClick: handleOnClick,\n disabled,\n className: menuButtonClassName,\n tooltipPlacement: 'top' as const\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":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/button-menu-action/index.tsx"],"names":[],"mappings":";AAQA,OAAkB,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAGzD,QAAA,MAAM,gBAAgB;YAAW,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/button-menu-action/index.tsx"],"names":[],"mappings":";AAQA,OAAkB,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAGzD,QAAA,MAAM,gBAAgB;YAAW,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsHrD,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
|
|
@@ -56,6 +56,7 @@ const ButtonMenuAction = props => {
|
|
|
56
56
|
const _menu = /*#__PURE__*/React.createElement("div", {
|
|
57
57
|
className: menuWrapperClass,
|
|
58
58
|
"data-name": "menu-wrapper",
|
|
59
|
+
role: "group",
|
|
59
60
|
"aria-label": menuWrapper?.ariaLabel,
|
|
60
61
|
style: menuWrapper?.customStyle
|
|
61
62
|
}, /*#__PURE__*/React.createElement(ButtonMenu, _extends({}, menuWithClose, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","useEffect","useState","useRef","useMemo","classnames","map","FontAwesomeIcon","ButtonLink","ButtonMenu","COLORS","propTypes","style","ButtonMenuAction","props","button","menu","menuWrapper","type","primaryColor","containerCustom","closeOnClick","enableScroll","showFade","onClick","_noop","withChevron","visible","setVisible","containerRef","toggleVisibility","prevState","handleMouseDown","event","current","contains","target","document","addEventListener","removeEventListener","menuWithClose","buttons","btn","menuWrapperClass","length","_menu","createElement","className","ariaLabel","customStyle","_extends","buttonProps","baseIcons","Array","isArray","icon","chevronIcon","position","faIcon","name","color","neutral_700","size","icons","filter","i","container","ref","currentOption","undefined","label","caret","process","env","NODE_ENV"],"sources":["../../../src/molecule/button-menu-action/index.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useState, useRef, useMemo} from 'react';\nimport classnames from 'classnames';\nimport {noop} from 'lodash/fp';\nimport map from 'lodash/fp/map';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonMenu from '../../atom/button-menu';\nimport {COLORS} from '../../variables/colors';\nimport propTypes, {ButtonMenuActionProps} from './types';\nimport style from './style.css';\n\nconst ButtonMenuAction = (props: ButtonMenuActionProps) => {\n const {\n button,\n menu,\n menuWrapper,\n type = 'button',\n primaryColor,\n containerCustom,\n closeOnClick = false,\n enableScroll = false,\n showFade = false\n } = props;\n const {onClick = noop, withChevron = false} = button;\n const [visible, setVisible] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const toggleVisibility = useCallback(() => {\n onClick();\n setVisible(prevState => !prevState);\n }, [onClick]);\n\n useEffect(() => {\n const handleMouseDown = (event: MouseEvent) => {\n if (visible && containerRef.current && !containerRef.current.contains(event.target as Node)) {\n setVisible(false);\n }\n };\n\n document.addEventListener('mousedown', handleMouseDown);\n return () => {\n document.removeEventListener('mousedown', handleMouseDown);\n };\n }, [visible, containerRef]);\n\n const menuWithClose = closeOnClick\n ? {\n ...menu,\n buttons: map(\n btn => ({\n ...btn,\n onClick: () => setVisible(false)\n }),\n menu.buttons\n )\n }\n : menu;\n\n const menuWrapperClass = classnames(style.menuWrapper, {\n [style.visible]: visible,\n [style.showFade]: showFade && menuWithClose.buttons && menuWithClose.buttons.length > 6\n });\n\n const _menu = (\n <div\n className={menuWrapperClass}\n data-name=\"menu-wrapper\"\n aria-label={menuWrapper?.ariaLabel}\n style={menuWrapper?.customStyle}\n >\n <ButtonMenu {...menuWithClose} enableScroll={enableScroll} />\n </div>\n );\n\n const buttonProps = useMemo(() => {\n if (!withChevron) return button;\n\n // to handle array/object/undefined\n // eslint-disable-next-line no-nested-ternary\n const baseIcons = Array.isArray(button.icon) ? button.icon : button.icon ? [button.icon] : [];\n\n const chevronIcon = {\n position: 'right' as const,\n faIcon: {\n name: visible ? 'chevron-up' : 'chevron-down',\n color: COLORS.neutral_700,\n size: 14\n }\n };\n\n // remove right icon if exists\n const icons = [...baseIcons.filter(i => i && i.position !== 'right'), chevronIcon];\n\n return {\n ...button,\n icon: icons\n };\n }, [button, withChevron, visible]);\n\n return (\n <div\n className={style.container}\n data-name=\"button-menu-action-wrapper\"\n style={containerCustom}\n ref={containerRef}\n >\n {type === 'link' ? (\n <div\n className={style.currentOption}\n data-name={button['data-name']}\n onClick={toggleVisibility}\n aria-expanded={visible}\n aria-haspopup=\"true\"\n >\n <span style={{color: visible ? primaryColor : undefined}}>{button.label}</span>\n <FontAwesomeIcon\n icon={visible ? 'chevron-up' : 'chevron-down'}\n className={style.caret}\n style={{color: visible ? primaryColor : undefined}}\n aria-label={button['aria-label']}\n />\n </div>\n ) : (\n <ButtonLink {...buttonProps} onClick={toggleVisibility} />\n )}\n {_menu}\n </div>\n );\n};\n\nButtonMenuAction.propTypes = propTypes;\n\nexport default ButtonMenuAction;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAGC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,OAAO,QAAO,OAAO;AAC9E,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,GAAG,MAAM,eAAe;AAC/B,SAAQC,eAAe,QAAO,gCAAgC;AAC9D,OAAOC,UAAU,MAAM,wBAAwB;AAC/C,OAAOC,UAAU,MAAM,wBAAwB;AAC/C,SAAQC,MAAM,QAAO,wBAAwB;AAC7C,OAAOC,SAAS,MAA+B,SAAS;AACxD,OAAOC,KAAK,MAAM,aAAa;AAE/B,MAAMC,gBAAgB,GAAIC,KAA4B,IAAK;EACzD,MAAM;IACJC,MAAM;IACNC,IAAI;IACJC,WAAW;IACXC,IAAI,GAAG,QAAQ;IACfC,YAAY;IACZC,eAAe;IACfC,YAAY,GAAG,KAAK;IACpBC,YAAY,GAAG,KAAK;IACpBC,QAAQ,GAAG;EACb,CAAC,GAAGT,KAAK;EACT,MAAM;IAACU,OAAO,GAAAC,KAAO;IAAEC,WAAW,GAAG;EAAK,CAAC,GAAGX,MAAM;EACpD,MAAM,CAACY,OAAO,EAAEC,UAAU,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EAC7C,MAAM2B,YAAY,GAAG1B,MAAM,CAAiB,IAAI,CAAC;EAEjD,MAAM2B,gBAAgB,GAAG9B,WAAW,CAAC,MAAM;IACzCwB,OAAO,CAAC,CAAC;IACTI,UAAU,CAACG,SAAS,IAAI,CAACA,SAAS,CAAC;EACrC,CAAC,EAAE,CAACP,OAAO,CAAC,CAAC;EAEbvB,SAAS,CAAC,MAAM;IACd,MAAM+B,eAAe,GAAIC,KAAiB,IAAK;MAC7C,IAAIN,OAAO,IAAIE,YAAY,CAACK,OAAO,IAAI,CAACL,YAAY,CAACK,OAAO,CAACC,QAAQ,CAACF,KAAK,CAACG,MAAc,CAAC,EAAE;QAC3FR,UAAU,CAAC,KAAK,CAAC;MACnB;IACF,CAAC;IAEDS,QAAQ,CAACC,gBAAgB,CAAC,WAAW,EAAEN,eAAe,CAAC;IACvD,OAAO,MAAM;MACXK,QAAQ,CAACE,mBAAmB,CAAC,WAAW,EAAEP,eAAe,CAAC;IAC5D,CAAC;EACH,CAAC,EAAE,CAACL,OAAO,EAAEE,YAAY,CAAC,CAAC;EAE3B,MAAMW,aAAa,GAAGnB,YAAY,GAC9B;IACE,GAAGL,IAAI;IACPyB,OAAO,EAAEnC,GAAG,CACVoC,GAAG,KAAK;MACN,GAAGA,GAAG;MACNlB,OAAO,EAAEA,CAAA,KAAMI,UAAU,CAAC,KAAK;IACjC,CAAC,CAAC,EACFZ,IAAI,CAACyB,OACP;EACF,CAAC,GACDzB,IAAI;EAER,MAAM2B,gBAAgB,GAAGtC,UAAU,CAACO,KAAK,CAACK,WAAW,EAAE;IACrD,CAACL,KAAK,CAACe,OAAO,GAAGA,OAAO;IACxB,CAACf,KAAK,CAACW,QAAQ,GAAGA,QAAQ,IAAIiB,aAAa,CAACC,OAAO,IAAID,aAAa,CAACC,OAAO,CAACG,MAAM,GAAG;EACxF,CAAC,CAAC;EAEF,MAAMC,KAAK,gBACT9C,KAAA,CAAA+C,aAAA;IACEC,SAAS,EAAEJ,gBAAiB;IAC5B,aAAU,cAAc;
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","useEffect","useState","useRef","useMemo","classnames","map","FontAwesomeIcon","ButtonLink","ButtonMenu","COLORS","propTypes","style","ButtonMenuAction","props","button","menu","menuWrapper","type","primaryColor","containerCustom","closeOnClick","enableScroll","showFade","onClick","_noop","withChevron","visible","setVisible","containerRef","toggleVisibility","prevState","handleMouseDown","event","current","contains","target","document","addEventListener","removeEventListener","menuWithClose","buttons","btn","menuWrapperClass","length","_menu","createElement","className","role","ariaLabel","customStyle","_extends","buttonProps","baseIcons","Array","isArray","icon","chevronIcon","position","faIcon","name","color","neutral_700","size","icons","filter","i","container","ref","currentOption","undefined","label","caret","process","env","NODE_ENV"],"sources":["../../../src/molecule/button-menu-action/index.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useState, useRef, useMemo} from 'react';\nimport classnames from 'classnames';\nimport {noop} from 'lodash/fp';\nimport map from 'lodash/fp/map';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonMenu from '../../atom/button-menu';\nimport {COLORS} from '../../variables/colors';\nimport propTypes, {ButtonMenuActionProps} from './types';\nimport style from './style.css';\n\nconst ButtonMenuAction = (props: ButtonMenuActionProps) => {\n const {\n button,\n menu,\n menuWrapper,\n type = 'button',\n primaryColor,\n containerCustom,\n closeOnClick = false,\n enableScroll = false,\n showFade = false\n } = props;\n const {onClick = noop, withChevron = false} = button;\n const [visible, setVisible] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const toggleVisibility = useCallback(() => {\n onClick();\n setVisible(prevState => !prevState);\n }, [onClick]);\n\n useEffect(() => {\n const handleMouseDown = (event: MouseEvent) => {\n if (visible && containerRef.current && !containerRef.current.contains(event.target as Node)) {\n setVisible(false);\n }\n };\n\n document.addEventListener('mousedown', handleMouseDown);\n return () => {\n document.removeEventListener('mousedown', handleMouseDown);\n };\n }, [visible, containerRef]);\n\n const menuWithClose = closeOnClick\n ? {\n ...menu,\n buttons: map(\n btn => ({\n ...btn,\n onClick: () => setVisible(false)\n }),\n menu.buttons\n )\n }\n : menu;\n\n const menuWrapperClass = classnames(style.menuWrapper, {\n [style.visible]: visible,\n [style.showFade]: showFade && menuWithClose.buttons && menuWithClose.buttons.length > 6\n });\n\n const _menu = (\n <div\n className={menuWrapperClass}\n data-name=\"menu-wrapper\"\n role=\"group\"\n aria-label={menuWrapper?.ariaLabel}\n style={menuWrapper?.customStyle}\n >\n <ButtonMenu {...menuWithClose} enableScroll={enableScroll} />\n </div>\n );\n\n const buttonProps = useMemo(() => {\n if (!withChevron) return button;\n\n // to handle array/object/undefined\n // eslint-disable-next-line no-nested-ternary\n const baseIcons = Array.isArray(button.icon) ? button.icon : button.icon ? [button.icon] : [];\n\n const chevronIcon = {\n position: 'right' as const,\n faIcon: {\n name: visible ? 'chevron-up' : 'chevron-down',\n color: COLORS.neutral_700,\n size: 14\n }\n };\n\n // remove right icon if exists\n const icons = [...baseIcons.filter(i => i && i.position !== 'right'), chevronIcon];\n\n return {\n ...button,\n icon: icons\n };\n }, [button, withChevron, visible]);\n\n return (\n <div\n className={style.container}\n data-name=\"button-menu-action-wrapper\"\n style={containerCustom}\n ref={containerRef}\n >\n {type === 'link' ? (\n <div\n className={style.currentOption}\n data-name={button['data-name']}\n onClick={toggleVisibility}\n aria-expanded={visible}\n aria-haspopup=\"true\"\n >\n <span style={{color: visible ? primaryColor : undefined}}>{button.label}</span>\n <FontAwesomeIcon\n icon={visible ? 'chevron-up' : 'chevron-down'}\n className={style.caret}\n style={{color: visible ? primaryColor : undefined}}\n aria-label={button['aria-label']}\n />\n </div>\n ) : (\n <ButtonLink {...buttonProps} onClick={toggleVisibility} />\n )}\n {_menu}\n </div>\n );\n};\n\nButtonMenuAction.propTypes = propTypes;\n\nexport default ButtonMenuAction;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customer.js","names":["React","PropTypes","classnames","style","THEMES","default","coorpmanager","Customer","props","name","type","coorpOriginal","theme","disabled","ariaLabel","className","customer","chapterCustomer","createElement","content","coorp","original","propTypes","process","env","NODE_ENV","oneOf","_keys","string","bool","isRequired"],"sources":["../../../src/molecule/card/customer.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {keys} from 'lodash/fp';\nimport style from './customer.css';\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst Customer = props => {\n const {name, type, coorpOriginal, theme, disabled, 'aria-label': ariaLabel} = props;\n const className = classnames(\n THEMES[theme],\n style.customer,\n type === 'chapter' ? style.chapterCustomer : null\n );\n\n return (\n <div className={className} disabled={disabled} aria-label={ariaLabel}>\n <div className={style.content}>\n {coorpOriginal ? <span className={style.coorp}>Coorp </span> : null}\n {coorpOriginal ? <span className={style.original}>Original </span> : null}\n {!coorpOriginal && name}\n </div>\n </div>\n );\n};\n\nCustomer.propTypes = {\n theme: PropTypes.oneOf(keys(THEMES)),\n type: PropTypes.string,\n name: PropTypes.string,\n coorpOriginal: PropTypes.bool.isRequired,\n disabled: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nexport default Customer;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,KAAK,MAAM,gBAAgB;AAElC,OAAO,MAAMC,MAAM,GAAG;EACpBC,OAAO,EAAE,IAAI;EACbC,YAAY,EAAEH,KAAK,CAACG;AACtB,CAAC;AAED,MAAMC,QAAQ,GAAGC,KAAK,IAAI;EACxB,MAAM;IAACC,IAAI;IAAEC,IAAI;IAAEC,aAAa;IAAEC,KAAK;IAAEC,QAAQ;IAAE,YAAY,EAAEC;EAAS,CAAC,GAAGN,KAAK;EACnF,MAAMO,SAAS,GAAGb,UAAU,CAC1BE,MAAM,CAACQ,KAAK,CAAC,EACbT,KAAK,CAACa,QAAQ,EACdN,IAAI,KAAK,SAAS,GAAGP,KAAK,CAACc,eAAe,GAAG,IAC/C,CAAC;EAED,oBACEjB,KAAA,CAAAkB,aAAA;IAAKH,SAAS,EAAEA,SAAU;IAACF,QAAQ,EAAEA,QAAS;IAAC,
|
|
1
|
+
{"version":3,"file":"customer.js","names":["React","PropTypes","classnames","style","THEMES","default","coorpmanager","Customer","props","name","type","coorpOriginal","theme","disabled","ariaLabel","className","customer","chapterCustomer","createElement","role","content","coorp","original","propTypes","process","env","NODE_ENV","oneOf","_keys","string","bool","isRequired"],"sources":["../../../src/molecule/card/customer.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {keys} from 'lodash/fp';\nimport style from './customer.css';\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst Customer = props => {\n const {name, type, coorpOriginal, theme, disabled, 'aria-label': ariaLabel} = props;\n const className = classnames(\n THEMES[theme],\n style.customer,\n type === 'chapter' ? style.chapterCustomer : null\n );\n\n return (\n <div className={className} disabled={disabled} role=\"group\" aria-label={ariaLabel}>\n <div className={style.content}>\n {coorpOriginal ? <span className={style.coorp}>Coorp </span> : null}\n {coorpOriginal ? <span className={style.original}>Original </span> : null}\n {!coorpOriginal && name}\n </div>\n </div>\n );\n};\n\nCustomer.propTypes = {\n theme: PropTypes.oneOf(keys(THEMES)),\n type: PropTypes.string,\n name: PropTypes.string,\n coorpOriginal: PropTypes.bool.isRequired,\n disabled: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nexport default Customer;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,KAAK,MAAM,gBAAgB;AAElC,OAAO,MAAMC,MAAM,GAAG;EACpBC,OAAO,EAAE,IAAI;EACbC,YAAY,EAAEH,KAAK,CAACG;AACtB,CAAC;AAED,MAAMC,QAAQ,GAAGC,KAAK,IAAI;EACxB,MAAM;IAACC,IAAI;IAAEC,IAAI;IAAEC,aAAa;IAAEC,KAAK;IAAEC,QAAQ;IAAE,YAAY,EAAEC;EAAS,CAAC,GAAGN,KAAK;EACnF,MAAMO,SAAS,GAAGb,UAAU,CAC1BE,MAAM,CAACQ,KAAK,CAAC,EACbT,KAAK,CAACa,QAAQ,EACdN,IAAI,KAAK,SAAS,GAAGP,KAAK,CAACc,eAAe,GAAG,IAC/C,CAAC;EAED,oBACEjB,KAAA,CAAAkB,aAAA;IAAKH,SAAS,EAAEA,SAAU;IAACF,QAAQ,EAAEA,QAAS;IAACM,IAAI,EAAC,OAAO;IAAC,cAAYL;EAAU,gBAChFd,KAAA,CAAAkB,aAAA;IAAKH,SAAS,EAAEZ,KAAK,CAACiB;EAAQ,GAC3BT,aAAa,gBAAGX,KAAA,CAAAkB,aAAA;IAAMH,SAAS,EAAEZ,KAAK,CAACkB;EAAM,GAAC,QAAY,CAAC,GAAG,IAAI,EAClEV,aAAa,gBAAGX,KAAA,CAAAkB,aAAA;IAAMH,SAAS,EAAEZ,KAAK,CAACmB;EAAS,GAAC,WAAe,CAAC,GAAG,IAAI,EACxE,CAACX,aAAa,IAAIF,IAChB,CACF,CAAC;AAEV,CAAC;AAEDF,QAAQ,CAACgB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACnBd,KAAK,EAAEX,SAAS,CAAC0B,KAAK,CAACC,KAAA,CAAKxB,MAAM,CAAC,CAAC;EACpCM,IAAI,EAAET,SAAS,CAAC4B,MAAM;EACtBpB,IAAI,EAAER,SAAS,CAAC4B,MAAM;EACtBlB,aAAa,EAAEV,SAAS,CAAC6B,IAAI,CAACC,UAAU;EACxClB,QAAQ,EAAEZ,SAAS,CAAC6B,IAAI;EACxB,YAAY,EAAE7B,SAAS,CAAC4B;AAC1B,CAAC;AAED,eAAetB,QAAQ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card/index.js"],"names":[],"mappings":";;;;;AAsRA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;;;AAxKF,uDAoIG"}
|
|
@@ -68,6 +68,7 @@ const CardBackground = ({
|
|
|
68
68
|
className: style.imageWrapper
|
|
69
69
|
}, /*#__PURE__*/React.createElement("div", {
|
|
70
70
|
"data-name": "cover",
|
|
71
|
+
role: "img",
|
|
71
72
|
"aria-label": ariaLabel,
|
|
72
73
|
style: {
|
|
73
74
|
backgroundColor: iconColor,
|
|
@@ -80,6 +81,7 @@ const CardBackground = ({
|
|
|
80
81
|
className: style.imageWrapper
|
|
81
82
|
}, /*#__PURE__*/React.createElement("div", {
|
|
82
83
|
"data-name": "cover",
|
|
84
|
+
role: "img",
|
|
83
85
|
"aria-label": ariaLabel,
|
|
84
86
|
style: {
|
|
85
87
|
backgroundColor: iconColor
|
|
@@ -97,6 +99,7 @@ const CardBackground = ({
|
|
|
97
99
|
className: style.imageWrapper
|
|
98
100
|
}, /*#__PURE__*/React.createElement("div", {
|
|
99
101
|
"data-name": "cover",
|
|
102
|
+
role: "img",
|
|
100
103
|
"aria-label": ariaLabel,
|
|
101
104
|
className: style.image,
|
|
102
105
|
style: {
|
|
@@ -160,6 +163,7 @@ const Card = /*#__PURE__*/memo(function Card(props, context) {
|
|
|
160
163
|
className: style.lockIcon,
|
|
161
164
|
height: 48
|
|
162
165
|
}), /*#__PURE__*/React.createElement("span", {
|
|
166
|
+
role: "group",
|
|
163
167
|
"aria-label": disabledArialabel
|
|
164
168
|
// eslint-disable-next-line react/no-danger
|
|
165
169
|
,
|
|
@@ -187,6 +191,7 @@ const Card = /*#__PURE__*/memo(function Card(props, context) {
|
|
|
187
191
|
"data-type": getType(type),
|
|
188
192
|
disabled: disabled,
|
|
189
193
|
onClick: handleClick,
|
|
194
|
+
role: "group",
|
|
190
195
|
"aria-label": cardArialabel
|
|
191
196
|
}, /*#__PURE__*/React.createElement(CardBackground, {
|
|
192
197
|
type: type,
|
|
@@ -227,9 +232,11 @@ const Card = /*#__PURE__*/memo(function Card(props, context) {
|
|
|
227
232
|
}), badge ? /*#__PURE__*/React.createElement("div", {
|
|
228
233
|
className: style.badge,
|
|
229
234
|
style: inlineBadgeStyle,
|
|
235
|
+
role: "group",
|
|
230
236
|
"aria-label": badgeAriaLabel
|
|
231
237
|
}, badge) : null, disabled ? /*#__PURE__*/React.createElement("div", {
|
|
232
238
|
className: style.lockWrapper,
|
|
239
|
+
role: "group",
|
|
233
240
|
"aria-label": disabledArialabel
|
|
234
241
|
}, lock) : null);
|
|
235
242
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useMemo","memo","PropTypes","classnames","NovaCompositionCoorpacademyPadlock","LockIcon","NovaCompositionCoorpacademyPictures","PicturesIcon","isExternalContent","ICONS_TYPES","EXTERNAL_CONTENT_ICONS","Provider","CardContentInfo","MODES","FaIcon","COLORS","Customer","Favorite","Selectable","Notification","style","THEMES","default","coorpmanager","ICON_SIZE","CardBackground","type","image","empty","ariaLabel","skin","externalContent","primaryColor","_get","whiteColor","iconName","iconColor","backgroundIcon","createElement","className","externalIconCircleWrapper","externalIconCircleWithImageWrapper","customStyle","color","white","height","width","_backgroundIcon","backgroundColor","imageWrapper","backgroundImage","externalContentHeader","externalBackground","emptyIcon","contextTypes","childContextTypes","propTypes","process","env","NODE_ENV","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","_isEmpty","_pick","cardStyle","course","lazy","grid","_isUndefined","handleClick","e","lock","lockContent","lockIcon","dangerouslySetInnerHTML","__html","inlineBadgeStyle","getType","contentType","_extends","mode","CARD","lockWrapper","cardPropTypes","shape","number","func","oneOf","_keys"],"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, ICONS_TYPES, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport CardContentInfo, {MODES} from '../card-content';\nimport FaIcon from '../../atom/icon';\nimport {COLORS} from '../../variables/colors';\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 ICON_SIZE = '28px';\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]) || type === 'chapter') {\n const {iconName, iconColor} = ICONS_TYPES[type];\n const backgroundIcon = (\n <div\n className={classnames(\n style.externalIconCircleWrapper,\n style.externalIconCircleWithImageWrapper\n )}\n >\n <FaIcon\n iconName={iconName}\n customStyle={{\n color: COLORS.white,\n height: ICON_SIZE,\n width: ICON_SIZE\n }}\n />\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 data-testid=\"card-background-image\"\n >\n <FaIcon\n iconName={iconName}\n customStyle={{\n color: COLORS.white,\n height: ICON_SIZE,\n width: ICON_SIZE\n }}\n />\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 className={style.imageWrapper}>\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 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 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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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useMemo","memo","PropTypes","classnames","NovaCompositionCoorpacademyPadlock","LockIcon","NovaCompositionCoorpacademyPictures","PicturesIcon","isExternalContent","ICONS_TYPES","EXTERNAL_CONTENT_ICONS","Provider","CardContentInfo","MODES","FaIcon","COLORS","Customer","Favorite","Selectable","Notification","style","THEMES","default","coorpmanager","ICON_SIZE","CardBackground","type","image","empty","ariaLabel","skin","externalContent","primaryColor","_get","whiteColor","iconName","iconColor","backgroundIcon","createElement","className","externalIconCircleWrapper","externalIconCircleWithImageWrapper","customStyle","color","white","height","width","_backgroundIcon","backgroundColor","imageWrapper","role","backgroundImage","externalContentHeader","externalBackground","emptyIcon","contextTypes","childContextTypes","propTypes","process","env","NODE_ENV","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","_isEmpty","_pick","cardStyle","course","lazy","grid","_isUndefined","handleClick","e","lock","lockContent","lockIcon","dangerouslySetInnerHTML","__html","inlineBadgeStyle","getType","contentType","_extends","mode","CARD","lockWrapper","cardPropTypes","shape","number","func","oneOf","_keys"],"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, ICONS_TYPES, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport CardContentInfo, {MODES} from '../card-content';\nimport FaIcon from '../../atom/icon';\nimport {COLORS} from '../../variables/colors';\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 ICON_SIZE = '28px';\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]) || type === 'chapter') {\n const {iconName, iconColor} = ICONS_TYPES[type];\n const backgroundIcon = (\n <div\n className={classnames(\n style.externalIconCircleWrapper,\n style.externalIconCircleWithImageWrapper\n )}\n >\n <FaIcon\n iconName={iconName}\n customStyle={{\n color: COLORS.white,\n height: ICON_SIZE,\n width: ICON_SIZE\n }}\n />\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 data-testid=\"card-background-image\"\n >\n <FaIcon\n iconName={iconName}\n customStyle={{\n color: COLORS.white,\n height: ICON_SIZE,\n width: ICON_SIZE\n }}\n />\n </div>\n );\n\n return (\n <div className={style.imageWrapper}>\n <div\n data-name=\"cover\"\n role=\"img\"\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 role=\"img\"\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 className={style.imageWrapper}>\n <div\n data-name=\"cover\"\n role=\"img\"\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 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 role=\"group\"\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 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 role=\"group\"\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\n className={style.badge}\n style={inlineBadgeStyle}\n role=\"group\"\n aria-label={badgeAriaLabel}\n >\n {badge}\n </div>\n ) : null}\n {disabled ? (\n <div className={style.lockWrapper} role=\"group\" 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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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card-content/index.js"],"names":[],"mappings":";;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card-content/index.js"],"names":[],"mappings":";;;;;;;;;;AAkIA;;;;;;;;;;;;;;gBA0EC"}
|
|
@@ -116,6 +116,7 @@ const AuthorName = ({
|
|
|
116
116
|
return /*#__PURE__*/React.createElement("div", {
|
|
117
117
|
"data-name": "author",
|
|
118
118
|
title: author,
|
|
119
|
+
role: "group",
|
|
119
120
|
"aria-label": ariaLabel,
|
|
120
121
|
className: classnames(style.author, courseContent ? style.lightTitle : style.darkAuthorTitle, empty ? style.empty : null)
|
|
121
122
|
}, /*#__PURE__*/React.createElement("span", null, author), checkIcon);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","classnames","NovaCompositionCoorpacademyAdaptive","AdaptivIcon","NovaSolidStatusCheckCircle2","CheckIcon","Provider","ContentBadge","Tag","COLORS","isExternalContent","ICONS_NAMES_MAP","style","MODES","HERO","CARD","THEMES","default","coorpmanager","ContentTypeInfo","mode","type","adaptiv","ariaLabel","isCourse","empty","theme","context","translate","getLabel","contentType","label","iconName","_getOr","createElement","className","contentTypeInfos","size","icon","adaptiveIcon","iconShadow","height","_get","contextTypes","skin","childContextTypes","propTypes","process","env","NODE_ENV","string","bool","oneOf","_keys","CardTitle","title","courseContent","innerHTML","lightTitle","darkTitle","dangerouslySetInnerHTML","__html","AuthorName","author","certifiedAuthor","checkIcon","authorIcon","darkAuthorTitle","ContentInfo","disabled","progress","badgeCategory","badgeLabel","progressBarColor","cm_positive_500","inlineProgressValueStyle","backgroundColor","width","chapterContent","externalContent","progressBar","_isNil","progressWrapper","hideProgressBar","role","infoWrapper","hero","card","progressBarDisabled","standardContent","cardInfo","cardCourseTitle","iconWrapper","category","number","shape","progression","adaptive"],"sources":["../../../src/molecule/card-content/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, getOr, isNil, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyAdaptive as AdaptivIcon,\n NovaSolidStatusCheckCircle2 as CheckIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport ContentBadge from '../../atom/content-badge';\nimport Tag from '../../atom/tag';\nimport {COLORS} from '../../variables/colors';\nimport {isExternalContent} from '../../util/external-content';\nimport {ICONS_NAMES_MAP} from '../../util/icons';\nimport style from './style.css';\n\nexport const MODES = {\n HERO: 'hero',\n CARD: 'card'\n};\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst ContentTypeInfo = ({mode, type, adaptiv, ariaLabel, isCourse, empty, theme}, context) => {\n const {translate} = context;\n if (mode !== MODES.CARD || empty || theme === 'coorpmanager') {\n return null;\n }\n const getLabel = contentType => {\n switch (contentType) {\n case 'scorm':\n return translate('content_type_scorm');\n case 'video':\n return translate('content_type_video');\n case 'article':\n return translate('content_type_article');\n case 'podcast':\n return translate('content_type_podcast');\n case 'course':\n return translate('content_type_course');\n default:\n return `5'learning`;\n }\n };\n const label = getLabel(type);\n const iconName = getOr('stopwatch', type, ICONS_NAMES_MAP);\n return (\n <div className={style.contentTypeInfos}>\n <Tag size=\"S\" label={label} icon={{iconName}} />\n {adaptiv ? (\n <div className={classnames(style.adaptiveIcon, isCourse ? style.iconShadow : null)}>\n <AdaptivIcon height={20} aria-label={get('adaptive', ariaLabel)} />\n </div>\n ) : null}\n </div>\n );\n};\n\nContentTypeInfo.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContentTypeInfo.propTypes = {\n type: PropTypes.string,\n mode: PropTypes.string,\n adaptiv: PropTypes.bool,\n ariaLabel: PropTypes.string,\n isCourse: PropTypes.bool,\n empty: PropTypes.bool,\n theme: PropTypes.oneOf(keys(THEMES))\n};\n\nconst CardTitle = ({title, empty, courseContent}) => {\n return (\n <div\n className={classnames(\n style.title,\n style.innerHTML,\n courseContent ? style.lightTitle : style.darkTitle,\n empty ? style.empty : null\n )}\n data-name=\"title\"\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n};\n\nCardTitle.propTypes = {\n title: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool\n};\n\nconst AuthorName = ({author, empty, courseContent, certifiedAuthor, 'aria-label': ariaLabel}) => {\n const checkIcon = certifiedAuthor ? (\n <CheckIcon className={classnames(style.authorIcon, courseContent ? style.iconShadow : null)} />\n ) : null;\n\n return (\n <div\n data-name=\"author\"\n title={author}\n aria-label={ariaLabel}\n className={classnames(\n style.author,\n courseContent ? style.lightTitle : style.darkAuthorTitle,\n empty ? style.empty : null\n )}\n >\n <span>{author}</span>\n {checkIcon}\n </div>\n );\n};\n\nAuthorName.propTypes = {\n author: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool,\n certifiedAuthor: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst ContentInfo = ({\n adaptiv,\n author,\n certifiedAuthor = false,\n disabled = false,\n empty = false,\n mode = MODES.CARD,\n progress,\n title,\n type,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n 'aria-label': ariaLabel\n}) => {\n const progressBarColor = COLORS.cm_positive_500;\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${progress * 100}%`\n };\n const courseContent = type === 'course';\n const chapterContent = type === 'chapter';\n const externalContent = isExternalContent(type);\n const progressBar =\n mode === MODES.HERO || (!empty && !disabled) ? (\n <div className={!isNil(progress) ? style.progressWrapper : style.hideProgressBar}>\n {!disabled ? (\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n role=\"progressbar\"\n aria-label={get('progression', ariaLabel)}\n />\n ) : null}\n </div>\n ) : null;\n return (\n <div\n data-name=\"info\"\n className={classnames(\n THEMES[theme],\n style.infoWrapper,\n mode === MODES.HERO ? style.hero : style.card,\n disabled ? style.progressBarDisabled : null,\n chapterContent || courseContent || externalContent ? style.standardContent : null\n )}\n >\n <ContentTypeInfo\n mode={mode}\n type={type}\n adaptiv={adaptiv}\n isCourse={courseContent}\n empty={empty}\n theme={theme}\n />\n <div className={classnames(style.cardInfo, courseContent ? style.cardCourseTitle : null)}>\n <div className={style.iconWrapper}>\n {!empty && badgeLabel && badgeCategory && courseContent ? (\n <ContentBadge category={badgeCategory} label={badgeLabel} />\n ) : null}\n </div>\n <CardTitle title={title} empty={empty} courseContent={courseContent} />\n <AuthorName\n author={author}\n empty={empty}\n courseContent={courseContent}\n certifiedAuthor={certifiedAuthor}\n aria-label={get('author', ariaLabel)}\n />\n </div>\n {progressBar}\n </div>\n );\n};\n\nContentInfo.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nContentInfo.propTypes = {\n adaptiv: PropTypes.bool,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n disabled: PropTypes.bool,\n empty: PropTypes.bool,\n progress: PropTypes.number,\n title: PropTypes.string,\n type: PropTypes.string,\n mode: PropTypes.string,\n badgeCategory: ContentBadge.propTypes.category,\n badgeLabel: ContentBadge.propTypes.label,\n theme: PropTypes.oneOf(keys(THEMES)),\n 'aria-label': PropTypes.shape({\n author: PropTypes.string,\n progression: PropTypes.string,\n adaptive: PropTypes.string\n })\n};\n\nexport default ContentInfo;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","classnames","NovaCompositionCoorpacademyAdaptive","AdaptivIcon","NovaSolidStatusCheckCircle2","CheckIcon","Provider","ContentBadge","Tag","COLORS","isExternalContent","ICONS_NAMES_MAP","style","MODES","HERO","CARD","THEMES","default","coorpmanager","ContentTypeInfo","mode","type","adaptiv","ariaLabel","isCourse","empty","theme","context","translate","getLabel","contentType","label","iconName","_getOr","createElement","className","contentTypeInfos","size","icon","adaptiveIcon","iconShadow","height","_get","contextTypes","skin","childContextTypes","propTypes","process","env","NODE_ENV","string","bool","oneOf","_keys","CardTitle","title","courseContent","innerHTML","lightTitle","darkTitle","dangerouslySetInnerHTML","__html","AuthorName","author","certifiedAuthor","checkIcon","authorIcon","role","darkAuthorTitle","ContentInfo","disabled","progress","badgeCategory","badgeLabel","progressBarColor","cm_positive_500","inlineProgressValueStyle","backgroundColor","width","chapterContent","externalContent","progressBar","_isNil","progressWrapper","hideProgressBar","infoWrapper","hero","card","progressBarDisabled","standardContent","cardInfo","cardCourseTitle","iconWrapper","category","number","shape","progression","adaptive"],"sources":["../../../src/molecule/card-content/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, getOr, isNil, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyAdaptive as AdaptivIcon,\n NovaSolidStatusCheckCircle2 as CheckIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport ContentBadge from '../../atom/content-badge';\nimport Tag from '../../atom/tag';\nimport {COLORS} from '../../variables/colors';\nimport {isExternalContent} from '../../util/external-content';\nimport {ICONS_NAMES_MAP} from '../../util/icons';\nimport style from './style.css';\n\nexport const MODES = {\n HERO: 'hero',\n CARD: 'card'\n};\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst ContentTypeInfo = ({mode, type, adaptiv, ariaLabel, isCourse, empty, theme}, context) => {\n const {translate} = context;\n if (mode !== MODES.CARD || empty || theme === 'coorpmanager') {\n return null;\n }\n const getLabel = contentType => {\n switch (contentType) {\n case 'scorm':\n return translate('content_type_scorm');\n case 'video':\n return translate('content_type_video');\n case 'article':\n return translate('content_type_article');\n case 'podcast':\n return translate('content_type_podcast');\n case 'course':\n return translate('content_type_course');\n default:\n return `5'learning`;\n }\n };\n const label = getLabel(type);\n const iconName = getOr('stopwatch', type, ICONS_NAMES_MAP);\n return (\n <div className={style.contentTypeInfos}>\n <Tag size=\"S\" label={label} icon={{iconName}} />\n {adaptiv ? (\n <div className={classnames(style.adaptiveIcon, isCourse ? style.iconShadow : null)}>\n <AdaptivIcon height={20} aria-label={get('adaptive', ariaLabel)} />\n </div>\n ) : null}\n </div>\n );\n};\n\nContentTypeInfo.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContentTypeInfo.propTypes = {\n type: PropTypes.string,\n mode: PropTypes.string,\n adaptiv: PropTypes.bool,\n ariaLabel: PropTypes.string,\n isCourse: PropTypes.bool,\n empty: PropTypes.bool,\n theme: PropTypes.oneOf(keys(THEMES))\n};\n\nconst CardTitle = ({title, empty, courseContent}) => {\n return (\n <div\n className={classnames(\n style.title,\n style.innerHTML,\n courseContent ? style.lightTitle : style.darkTitle,\n empty ? style.empty : null\n )}\n data-name=\"title\"\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n};\n\nCardTitle.propTypes = {\n title: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool\n};\n\nconst AuthorName = ({author, empty, courseContent, certifiedAuthor, 'aria-label': ariaLabel}) => {\n const checkIcon = certifiedAuthor ? (\n <CheckIcon className={classnames(style.authorIcon, courseContent ? style.iconShadow : null)} />\n ) : null;\n\n return (\n <div\n data-name=\"author\"\n title={author}\n role=\"group\"\n aria-label={ariaLabel}\n className={classnames(\n style.author,\n courseContent ? style.lightTitle : style.darkAuthorTitle,\n empty ? style.empty : null\n )}\n >\n <span>{author}</span>\n {checkIcon}\n </div>\n );\n};\n\nAuthorName.propTypes = {\n author: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool,\n certifiedAuthor: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst ContentInfo = ({\n adaptiv,\n author,\n certifiedAuthor = false,\n disabled = false,\n empty = false,\n mode = MODES.CARD,\n progress,\n title,\n type,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n 'aria-label': ariaLabel\n}) => {\n const progressBarColor = COLORS.cm_positive_500;\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${progress * 100}%`\n };\n const courseContent = type === 'course';\n const chapterContent = type === 'chapter';\n const externalContent = isExternalContent(type);\n const progressBar =\n mode === MODES.HERO || (!empty && !disabled) ? (\n <div className={!isNil(progress) ? style.progressWrapper : style.hideProgressBar}>\n {!disabled ? (\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n role=\"progressbar\"\n aria-label={get('progression', ariaLabel)}\n />\n ) : null}\n </div>\n ) : null;\n return (\n <div\n data-name=\"info\"\n className={classnames(\n THEMES[theme],\n style.infoWrapper,\n mode === MODES.HERO ? style.hero : style.card,\n disabled ? style.progressBarDisabled : null,\n chapterContent || courseContent || externalContent ? style.standardContent : null\n )}\n >\n <ContentTypeInfo\n mode={mode}\n type={type}\n adaptiv={adaptiv}\n isCourse={courseContent}\n empty={empty}\n theme={theme}\n />\n <div className={classnames(style.cardInfo, courseContent ? style.cardCourseTitle : null)}>\n <div className={style.iconWrapper}>\n {!empty && badgeLabel && badgeCategory && courseContent ? (\n <ContentBadge category={badgeCategory} label={badgeLabel} />\n ) : null}\n </div>\n <CardTitle title={title} empty={empty} courseContent={courseContent} />\n <AuthorName\n author={author}\n empty={empty}\n courseContent={courseContent}\n certifiedAuthor={certifiedAuthor}\n aria-label={get('author', ariaLabel)}\n />\n </div>\n {progressBar}\n </div>\n );\n};\n\nContentInfo.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nContentInfo.propTypes = {\n adaptiv: PropTypes.bool,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n disabled: PropTypes.bool,\n empty: PropTypes.bool,\n progress: PropTypes.number,\n title: PropTypes.string,\n type: PropTypes.string,\n mode: PropTypes.string,\n badgeCategory: ContentBadge.propTypes.category,\n badgeLabel: ContentBadge.propTypes.label,\n theme: PropTypes.oneOf(keys(THEMES)),\n 'aria-label': PropTypes.shape({\n author: PropTypes.string,\n progression: PropTypes.string,\n adaptive: PropTypes.string\n })\n};\n\nexport default ContentInfo;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/course-section/index.js"],"names":[],"mappings":";AAOA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/course-section/index.js"],"names":[],"mappings":";AAOA,wDA6CC"}
|
|
@@ -21,12 +21,14 @@ const CourseSection = props => {
|
|
|
21
21
|
} = props;
|
|
22
22
|
return /*#__PURE__*/React.createElement("div", {
|
|
23
23
|
className: style.container,
|
|
24
|
+
role: "group",
|
|
24
25
|
"aria-label": ariaLabelTitle,
|
|
25
26
|
"data-name": `course-section-${id}`
|
|
26
27
|
}, /*#__PURE__*/React.createElement("div", {
|
|
27
28
|
className: style.wrapper
|
|
28
29
|
}, /*#__PURE__*/React.createElement("span", {
|
|
29
30
|
className: style.position,
|
|
31
|
+
role: "group",
|
|
30
32
|
"aria-label": coursePosition,
|
|
31
33
|
"data-name": "position"
|
|
32
34
|
}, position), /*#__PURE__*/React.createElement("div", {
|
|
@@ -39,6 +41,7 @@ const CourseSection = props => {
|
|
|
39
41
|
className: style.title
|
|
40
42
|
}, title), /*#__PURE__*/React.createElement("span", {
|
|
41
43
|
className: style.author,
|
|
44
|
+
role: "group",
|
|
42
45
|
"aria-label": ariaLabelAuthor
|
|
43
46
|
}, author))), /*#__PURE__*/React.createElement(ListBadges, {
|
|
44
47
|
"aria-label": ariaLabelModules,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","CardImagePreview","ContentBadge","ListBadges","style","CourseSection","props","image","badgeList","title","author","position","ariaLabelTitle","ariaLabelAuthor","modules","ariaLabelModules","coursePosition","id","createElement","className","container","wrapper","containerImage","containerInfos","items","propTypes","process","env","NODE_ENV","shape","string","arrayOf","number"],"sources":["../../../src/molecule/course-section/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CardImagePreview from '../../atom/card-image-preview';\nimport ContentBadge from '../../atom/content-badge';\nimport ListBadges from '../list-badges';\nimport style from './style.css';\n\nconst CourseSection = props => {\n const {\n image,\n badgeList,\n title,\n author,\n position,\n 'aria-label': {\n title: ariaLabelTitle,\n author: ariaLabelAuthor,\n modules: ariaLabelModules,\n position: coursePosition\n },\n id\n } = props;\n\n return (\n <div
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","CardImagePreview","ContentBadge","ListBadges","style","CourseSection","props","image","badgeList","title","author","position","ariaLabelTitle","ariaLabelAuthor","modules","ariaLabelModules","coursePosition","id","createElement","className","container","role","wrapper","containerImage","containerInfos","items","propTypes","process","env","NODE_ENV","shape","string","arrayOf","number"],"sources":["../../../src/molecule/course-section/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CardImagePreview from '../../atom/card-image-preview';\nimport ContentBadge from '../../atom/content-badge';\nimport ListBadges from '../list-badges';\nimport style from './style.css';\n\nconst CourseSection = props => {\n const {\n image,\n badgeList,\n title,\n author,\n position,\n 'aria-label': {\n title: ariaLabelTitle,\n author: ariaLabelAuthor,\n modules: ariaLabelModules,\n position: coursePosition\n },\n id\n } = props;\n\n return (\n <div\n className={style.container}\n role=\"group\"\n aria-label={ariaLabelTitle}\n data-name={`course-section-${id}`}\n >\n <div className={style.wrapper}>\n <span\n className={style.position}\n role=\"group\"\n aria-label={coursePosition}\n data-name=\"position\"\n >\n {position}\n </span>\n <div className={style.containerImage}>\n <CardImagePreview image={image} />\n </div>\n <div className={style.containerInfos}>\n <div className={style.title}>{title}</div>\n <span className={style.author} role=\"group\" aria-label={ariaLabelAuthor}>\n {author}\n </span>\n </div>\n </div>\n <ListBadges aria-label={ariaLabelModules} items={badgeList} />\n </div>\n );\n};\n\nCourseSection.propTypes = {\n 'aria-label': PropTypes.shape({\n title: PropTypes.string,\n author: PropTypes.string,\n modules: PropTypes.string,\n position: PropTypes.string\n }),\n image: PropTypes.string,\n badgeList: PropTypes.arrayOf(PropTypes.shape(ContentBadge.propTypes)),\n title: PropTypes.string,\n author: PropTypes.string,\n position: PropTypes.number,\n id: PropTypes.string\n};\n\nexport default CourseSection;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,YAAY,MAAM,0BAA0B;AACnD,OAAOC,UAAU,MAAM,gBAAgB;AACvC,OAAOC,KAAK,MAAM,aAAa;AAE/B,MAAMC,aAAa,GAAGC,KAAK,IAAI;EAC7B,MAAM;IACJC,KAAK;IACLC,SAAS;IACTC,KAAK;IACLC,MAAM;IACNC,QAAQ;IACR,YAAY,EAAE;MACZF,KAAK,EAAEG,cAAc;MACrBF,MAAM,EAAEG,eAAe;MACvBC,OAAO,EAAEC,gBAAgB;MACzBJ,QAAQ,EAAEK;IACZ,CAAC;IACDC;EACF,CAAC,GAAGX,KAAK;EAET,oBACEP,KAAA,CAAAmB,aAAA;IACEC,SAAS,EAAEf,KAAK,CAACgB,SAAU;IAC3BC,IAAI,EAAC,OAAO;IACZ,cAAYT,cAAe;IAC3B,aAAW,kBAAkBK,EAAE;EAAG,gBAElClB,KAAA,CAAAmB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACkB;EAAQ,gBAC5BvB,KAAA,CAAAmB,aAAA;IACEC,SAAS,EAAEf,KAAK,CAACO,QAAS;IAC1BU,IAAI,EAAC,OAAO;IACZ,cAAYL,cAAe;IAC3B,aAAU;EAAU,GAEnBL,QACG,CAAC,eACPZ,KAAA,CAAAmB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACmB;EAAe,gBACnCxB,KAAA,CAAAmB,aAAA,CAACjB,gBAAgB;IAACM,KAAK,EAAEA;EAAM,CAAE,CAC9B,CAAC,eACNR,KAAA,CAAAmB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACoB;EAAe,gBACnCzB,KAAA,CAAAmB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACK;EAAM,GAAEA,KAAW,CAAC,eAC1CV,KAAA,CAAAmB,aAAA;IAAMC,SAAS,EAAEf,KAAK,CAACM,MAAO;IAACW,IAAI,EAAC,OAAO;IAAC,cAAYR;EAAgB,GACrEH,MACG,CACH,CACF,CAAC,eACNX,KAAA,CAAAmB,aAAA,CAACf,UAAU;IAAC,cAAYY,gBAAiB;IAACU,KAAK,EAAEjB;EAAU,CAAE,CAC1D,CAAC;AAEV,CAAC;AAEDH,aAAa,CAACqB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACxB,YAAY,EAAE7B,SAAS,CAAC8B,KAAK,CAAC;IAC5BrB,KAAK,EAAET,SAAS,CAAC+B,MAAM;IACvBrB,MAAM,EAAEV,SAAS,CAAC+B,MAAM;IACxBjB,OAAO,EAAEd,SAAS,CAAC+B,MAAM;IACzBpB,QAAQ,EAAEX,SAAS,CAAC+B;EACtB,CAAC,CAAC;EACFxB,KAAK,EAAEP,SAAS,CAAC+B,MAAM;EACvBvB,SAAS,EAAER,SAAS,CAACgC,OAAO,CAAChC,SAAS,CAAC8B,KAAK,CAAC5B,YAAY,CAACwB,SAAS,CAAC,CAAC;EACrEjB,KAAK,EAAET,SAAS,CAAC+B,MAAM;EACvBrB,MAAM,EAAEV,SAAS,CAAC+B,MAAM;EACxBpB,QAAQ,EAAEX,SAAS,CAACiC,MAAM;EAC1BhB,EAAE,EAAEjB,SAAS,CAAC+B;AAChB,CAAC;AAED,eAAe1B,aAAa","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/learning-profile-banner/index.js"],"names":[],"mappings":";AASA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/learning-profile-banner/index.js"],"names":[],"mappings":";AASA,wEA8BG"}
|
|
@@ -35,12 +35,10 @@ const LearningProfileBanner = /*#__PURE__*/React.memo(function LearningProfileBa
|
|
|
35
35
|
className: style.middle
|
|
36
36
|
}, /*#__PURE__*/React.createElement("span", {
|
|
37
37
|
className: style.title,
|
|
38
|
-
"data-name": "learning-profile-banner-title"
|
|
39
|
-
"aria-label": "{title}"
|
|
38
|
+
"data-name": "learning-profile-banner-title"
|
|
40
39
|
}, title), /*#__PURE__*/React.createElement("span", {
|
|
41
40
|
className: style.subtitle,
|
|
42
|
-
"data-name": "learning-profile-banner-subtitle"
|
|
43
|
-
"aria-label": "{subtitle}"
|
|
41
|
+
"data-name": "learning-profile-banner-subtitle"
|
|
44
42
|
}, subtitle), /*#__PURE__*/React.createElement(ButtonLink, _extends({}, buttonProps, {
|
|
45
43
|
className: style.cta
|
|
46
44
|
}))), /*#__PURE__*/React.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","ButtonLink","style","BOOK_IMG_URL","TARGET_IMG_URL","LearningProfileBanner","memo","props","title","subtitle","cta","buttonProps","type","createElement","className","root","container","banner","left","role","image","src","alt","middle","_extends","right","propTypes","process","env","NODE_ENV","string","shape","onClick","func","label"],"sources":["../../../../src/molecule/dashboard/learning-profile-banner/index.js"],"sourcesContent":["// this is a clone and adapt of the review-banner component (packages/@coorpacademy-components/src/molecule/dashboard/review-banner/index.js)\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonLink from '../../../atom/button-link';\nimport style from './style.css';\n\nconst BOOK_IMG_URL = 'https://static.coorpacademy.com/assets/images/section-item-book.png';\nconst TARGET_IMG_URL = 'https://static.coorpacademy.com/assets/images/section-item-dart.png';\n\nconst LearningProfileBanner = React.memo(function LearningProfileBanner(props) {\n const {title, subtitle, cta} = props;\n const buttonProps = {\n ...cta,\n type: 'primary'\n };\n\n return (\n <div className={style.root} data-name=\"start-learning-profile-banner\">\n <div className={style.container}>\n <div className={style.banner}>\n <div className={style.left} role=\"img\" aria-label=\"Left image container\">\n <img className={style.image} src={BOOK_IMG_URL} alt=\"Notebook image\" />\n </div>\n <div className={style.middle}>\n <span
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","ButtonLink","style","BOOK_IMG_URL","TARGET_IMG_URL","LearningProfileBanner","memo","props","title","subtitle","cta","buttonProps","type","createElement","className","root","container","banner","left","role","image","src","alt","middle","_extends","right","propTypes","process","env","NODE_ENV","string","shape","onClick","func","label"],"sources":["../../../../src/molecule/dashboard/learning-profile-banner/index.js"],"sourcesContent":["// this is a clone and adapt of the review-banner component (packages/@coorpacademy-components/src/molecule/dashboard/review-banner/index.js)\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonLink from '../../../atom/button-link';\nimport style from './style.css';\n\nconst BOOK_IMG_URL = 'https://static.coorpacademy.com/assets/images/section-item-book.png';\nconst TARGET_IMG_URL = 'https://static.coorpacademy.com/assets/images/section-item-dart.png';\n\nconst LearningProfileBanner = React.memo(function LearningProfileBanner(props) {\n const {title, subtitle, cta} = props;\n const buttonProps = {\n ...cta,\n type: 'primary'\n };\n\n return (\n <div className={style.root} data-name=\"start-learning-profile-banner\">\n <div className={style.container}>\n <div className={style.banner}>\n <div className={style.left} role=\"img\" aria-label=\"Left image container\">\n <img className={style.image} src={BOOK_IMG_URL} alt=\"Notebook image\" />\n </div>\n <div className={style.middle}>\n <span className={style.title} data-name=\"learning-profile-banner-title\">\n {title}\n </span>\n <span className={style.subtitle} data-name=\"learning-profile-banner-subtitle\">\n {subtitle}\n </span>\n <ButtonLink {...buttonProps} className={style.cta} />\n </div>\n <div className={style.right} role=\"img\" aria-label=\"Right image container\">\n <img className={style.image} src={TARGET_IMG_URL} alt=\"Target image\" />\n </div>\n </div>\n </div>\n </div>\n );\n});\n\nLearningProfileBanner.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n cta: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string\n })\n};\n\nexport default LearningProfileBanner;\n"],"mappings":";AAAA;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,2BAA2B;AAClD,OAAOC,KAAK,MAAM,aAAa;AAE/B,MAAMC,YAAY,GAAG,qEAAqE;AAC1F,MAAMC,cAAc,GAAG,qEAAqE;AAE5F,MAAMC,qBAAqB,gBAAGN,KAAK,CAACO,IAAI,CAAC,SAASD,qBAAqBA,CAACE,KAAK,EAAE;EAC7E,MAAM;IAACC,KAAK;IAAEC,QAAQ;IAAEC;EAAG,CAAC,GAAGH,KAAK;EACpC,MAAMI,WAAW,GAAG;IAClB,GAAGD,GAAG;IACNE,IAAI,EAAE;EACR,CAAC;EAED,oBACEb,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACa,IAAK;IAAC,aAAU;EAA+B,gBACnEhB,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACc;EAAU,gBAC9BjB,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACe;EAAO,gBAC3BlB,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACgB,IAAK;IAACC,IAAI,EAAC,KAAK;IAAC,cAAW;EAAsB,gBACtEpB,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACkB,KAAM;IAACC,GAAG,EAAElB,YAAa;IAACmB,GAAG,EAAC;EAAgB,CAAE,CACnE,CAAC,eACNvB,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACqB;EAAO,gBAC3BxB,KAAA,CAAAc,aAAA;IAAMC,SAAS,EAAEZ,KAAK,CAACM,KAAM;IAAC,aAAU;EAA+B,GACpEA,KACG,CAAC,eACPT,KAAA,CAAAc,aAAA;IAAMC,SAAS,EAAEZ,KAAK,CAACO,QAAS;IAAC,aAAU;EAAkC,GAC1EA,QACG,CAAC,eACPV,KAAA,CAAAc,aAAA,CAACZ,UAAU,EAAAuB,QAAA,KAAKb,WAAW;IAAEG,SAAS,EAAEZ,KAAK,CAACQ;EAAI,EAAE,CACjD,CAAC,eACNX,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACuB,KAAM;IAACN,IAAI,EAAC,KAAK;IAAC,cAAW;EAAuB,gBACxEpB,KAAA,CAAAc,aAAA;IAAKC,SAAS,EAAEZ,KAAK,CAACkB,KAAM;IAACC,GAAG,EAAEjB,cAAe;IAACkB,GAAG,EAAC;EAAc,CAAE,CACnE,CACF,CACF,CACF,CAAC;AAEV,CAAC,CAAC;AAEFjB,qBAAqB,CAACqB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EAChCrB,KAAK,EAAER,SAAS,CAAC8B,MAAM;EACvBrB,QAAQ,EAAET,SAAS,CAAC8B,MAAM;EAC1BpB,GAAG,EAAEV,SAAS,CAAC+B,KAAK,CAAC;IACnBC,OAAO,EAAEhC,SAAS,CAACiC,IAAI;IACvBC,KAAK,EAAElC,SAAS,CAAC8B;EACnB,CAAC;AACH,CAAC;AAED,eAAezB,qBAAqB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/review-banner/index.js"],"names":[],"mappings":";AAKA,+
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/review-banner/index.js"],"names":[],"mappings":";AAKA,+DAuCG"}
|
|
@@ -32,12 +32,10 @@ const ReviewBanner = /*#__PURE__*/React.memo(function ReviewBanner(props) {
|
|
|
32
32
|
className: style.middle
|
|
33
33
|
}, /*#__PURE__*/React.createElement("span", {
|
|
34
34
|
className: style.title,
|
|
35
|
-
"data-name": "review-banner-title"
|
|
36
|
-
"aria-label": "{title}"
|
|
35
|
+
"data-name": "review-banner-title"
|
|
37
36
|
}, title), /*#__PURE__*/React.createElement("span", {
|
|
38
37
|
className: style.subtitle,
|
|
39
|
-
"data-name": "review-banner-subtitle"
|
|
40
|
-
"aria-label": "{subtitle}"
|
|
38
|
+
"data-name": "review-banner-subtitle"
|
|
41
39
|
}, subtitle), /*#__PURE__*/React.createElement(ButtonLink, _extends({}, buttonProps, {
|
|
42
40
|
className: style.cta
|
|
43
41
|
}))), /*#__PURE__*/React.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","ButtonLink","style","ReviewBanner","memo","props","title","subtitle","cta","buttonProps","type","createElement","className","root","container","banner","left","role","image","src","alt","middle","_extends","right","propTypes","process","env","NODE_ENV","string","shape","onClick","func","label"],"sources":["../../../../src/molecule/dashboard/review-banner/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonLink from '../../../atom/button-link';\nimport style from './style.css';\n\nconst ReviewBanner = React.memo(function ReviewBanner(props) {\n const {title, subtitle, cta} = props;\n\n const buttonProps = {\n ...cta,\n type: 'primary'\n };\n\n return (\n <div className={style.root} data-name=\"start-review-banner\">\n <div className={style.container}>\n <div className={style.banner}>\n <div className={style.left} role=\"img\" aria-label=\"Left image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/book.png\"\n alt=\"Book image\"\n />\n </div>\n <div className={style.middle}>\n <span className={style.title} data-name=\"review-banner-title\"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","ButtonLink","style","ReviewBanner","memo","props","title","subtitle","cta","buttonProps","type","createElement","className","root","container","banner","left","role","image","src","alt","middle","_extends","right","propTypes","process","env","NODE_ENV","string","shape","onClick","func","label"],"sources":["../../../../src/molecule/dashboard/review-banner/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonLink from '../../../atom/button-link';\nimport style from './style.css';\n\nconst ReviewBanner = React.memo(function ReviewBanner(props) {\n const {title, subtitle, cta} = props;\n\n const buttonProps = {\n ...cta,\n type: 'primary'\n };\n\n return (\n <div className={style.root} data-name=\"start-review-banner\">\n <div className={style.container}>\n <div className={style.banner}>\n <div className={style.left} role=\"img\" aria-label=\"Left image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/book.png\"\n alt=\"Book image\"\n />\n </div>\n <div className={style.middle}>\n <span className={style.title} data-name=\"review-banner-title\">\n {title}\n </span>\n <span className={style.subtitle} data-name=\"review-banner-subtitle\">\n {subtitle}\n </span>\n <ButtonLink {...buttonProps} className={style.cta} />\n </div>\n <div className={style.right} role=\"img\" aria-label=\"Rigth image container\">\n <img\n className={style.image}\n src=\"https://static.coorpacademy.com/site/dumbell.png\"\n alt=\"Dumbbell image\"\n />\n </div>\n </div>\n </div>\n </div>\n );\n});\n\nReviewBanner.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n cta: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string\n })\n};\n\nexport default ReviewBanner;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,2BAA2B;AAClD,OAAOC,KAAK,MAAM,aAAa;AAE/B,MAAMC,YAAY,gBAAGJ,KAAK,CAACK,IAAI,CAAC,SAASD,YAAYA,CAACE,KAAK,EAAE;EAC3D,MAAM;IAACC,KAAK;IAAEC,QAAQ;IAAEC;EAAG,CAAC,GAAGH,KAAK;EAEpC,MAAMI,WAAW,GAAG;IAClB,GAAGD,GAAG;IACNE,IAAI,EAAE;EACR,CAAC;EAED,oBACEX,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAEV,KAAK,CAACW,IAAK;IAAC,aAAU;EAAqB,gBACzDd,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAEV,KAAK,CAACY;EAAU,gBAC9Bf,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAEV,KAAK,CAACa;EAAO,gBAC3BhB,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAEV,KAAK,CAACc,IAAK;IAACC,IAAI,EAAC,KAAK;IAAC,cAAW;EAAsB,gBACtElB,KAAA,CAAAY,aAAA;IACEC,SAAS,EAAEV,KAAK,CAACgB,KAAM;IACvBC,GAAG,EAAC,+CAA+C;IACnDC,GAAG,EAAC;EAAY,CACjB,CACE,CAAC,eACNrB,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAEV,KAAK,CAACmB;EAAO,gBAC3BtB,KAAA,CAAAY,aAAA;IAAMC,SAAS,EAAEV,KAAK,CAACI,KAAM;IAAC,aAAU;EAAqB,GAC1DA,KACG,CAAC,eACPP,KAAA,CAAAY,aAAA;IAAMC,SAAS,EAAEV,KAAK,CAACK,QAAS;IAAC,aAAU;EAAwB,GAChEA,QACG,CAAC,eACPR,KAAA,CAAAY,aAAA,CAACV,UAAU,EAAAqB,QAAA,KAAKb,WAAW;IAAEG,SAAS,EAAEV,KAAK,CAACM;EAAI,EAAE,CACjD,CAAC,eACNT,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAEV,KAAK,CAACqB,KAAM;IAACN,IAAI,EAAC,KAAK;IAAC,cAAW;EAAuB,gBACxElB,KAAA,CAAAY,aAAA;IACEC,SAAS,EAAEV,KAAK,CAACgB,KAAM;IACvBC,GAAG,EAAC,kDAAkD;IACtDC,GAAG,EAAC;EAAgB,CACrB,CACE,CACF,CACF,CACF,CAAC;AAEV,CAAC,CAAC;AAEFjB,YAAY,CAACqB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAG;EACvBrB,KAAK,EAAEN,SAAS,CAAC4B,MAAM;EACvBrB,QAAQ,EAAEP,SAAS,CAAC4B,MAAM;EAC1BpB,GAAG,EAAER,SAAS,CAAC6B,KAAK,CAAC;IACnBC,OAAO,EAAE9B,SAAS,CAAC+B,IAAI;IACvBC,KAAK,EAAEhC,SAAS,CAAC4B;EACnB,CAAC;AACH,CAAC;AAED,eAAezB,YAAY","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learner-skill-card/index.js"],"names":[],"mappings":"AAWO,uEAIN;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learner-skill-card/index.js"],"names":[],"mappings":"AAWO,uEAIN;;AAUD,yEA0IC"}
|
|
@@ -12,6 +12,13 @@ export const updateBackgroundImage = (ref, background) => {
|
|
|
12
12
|
ref.current.style.backgroundImage = background;
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
|
+
const handleCardKeyDown = onClick => event => {
|
|
16
|
+
if (!onClick) return;
|
|
17
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
18
|
+
event.preventDefault();
|
|
19
|
+
onClick(event);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
15
22
|
const LearnerSkillCard = (props, context) => {
|
|
16
23
|
const {
|
|
17
24
|
'aria-label': ariaLabel,
|
|
@@ -47,6 +54,9 @@ const LearnerSkillCard = (props, context) => {
|
|
|
47
54
|
"data-testid": `learner-skill-card-wrapper-${cardIndex}`,
|
|
48
55
|
"data-name": `skill-card-${label}`,
|
|
49
56
|
onClick: onClick,
|
|
57
|
+
role: onClick ? 'button' : 'group',
|
|
58
|
+
tabIndex: onClick ? 0 : undefined,
|
|
59
|
+
onKeyDown: handleCardKeyDown(onClick),
|
|
50
60
|
className: style.learnerSkillCardContainer,
|
|
51
61
|
"aria-label": ariaLabel,
|
|
52
62
|
onMouseEnter: handleMouseEnter,
|
|
@@ -100,6 +110,7 @@ const LearnerSkillCard = (props, context) => {
|
|
|
100
110
|
}, /*#__PURE__*/React.createElement("div", {
|
|
101
111
|
"data-name": "skill-card-title",
|
|
102
112
|
className: style.skillTitle,
|
|
113
|
+
role: "group",
|
|
103
114
|
"aria-label": ariaLabel || title
|
|
104
115
|
}, title), /*#__PURE__*/React.createElement("div", {
|
|
105
116
|
className: style.contentAndQuestionsWrapper
|