@coorpacademy/components 11.32.20-alpha.32 → 11.32.20-alpha.33
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/molecule/learning-priority-modal/index.d.ts.map +1 -1
- package/es/molecule/learning-priority-modal/index.js +6 -3
- package/es/molecule/learning-priority-modal/index.js.map +1 -1
- package/es/molecule/learning-priority-modal/style.css +1 -1
- package/es/molecule/learning-priority-setup-item/index.d.ts.map +1 -1
- package/es/molecule/learning-priority-setup-item/index.js +16 -2
- package/es/molecule/learning-priority-setup-item/index.js.map +1 -1
- package/es/organism/list-item/index.js +2 -2
- package/es/organism/list-item/index.js.map +1 -1
- package/lib/molecule/learning-priority-modal/index.d.ts.map +1 -1
- package/lib/molecule/learning-priority-modal/index.js +6 -3
- package/lib/molecule/learning-priority-modal/index.js.map +1 -1
- package/lib/molecule/learning-priority-modal/style.css +1 -1
- package/lib/molecule/learning-priority-setup-item/index.d.ts.map +1 -1
- package/lib/molecule/learning-priority-setup-item/index.js +16 -2
- package/lib/molecule/learning-priority-setup-item/index.js.map +1 -1
- package/lib/organism/list-item/index.js +2 -2
- package/lib/organism/list-item/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-modal/index.js"],"names":[],"mappings":";AAgEA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-modal/index.js"],"names":[],"mappings":";AAgEA,qFAyJC"}
|
|
@@ -117,10 +117,13 @@ const LearningPriorityModal = (props, context) => {
|
|
|
117
117
|
label: translate('cancel')
|
|
118
118
|
},
|
|
119
119
|
confirmButton: {
|
|
120
|
-
onConfirm: () =>
|
|
120
|
+
onConfirm: () => {
|
|
121
|
+
onAdd(selectedPriority);
|
|
122
|
+
onClose();
|
|
123
|
+
},
|
|
121
124
|
label: translate('add'),
|
|
122
125
|
iconName: 'plus',
|
|
123
|
-
disabled: isLoading
|
|
126
|
+
disabled: isLoading || !selectedPriority
|
|
124
127
|
}
|
|
125
128
|
};
|
|
126
129
|
}, [handleCancel, onAdd, translate, selectedPriority, isLoading]);
|
|
@@ -212,7 +215,7 @@ LearningPriorityModal.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
212
215
|
ref: PropTypes.string,
|
|
213
216
|
title: PropTypes.string,
|
|
214
217
|
courses: PropTypes.number,
|
|
215
|
-
type: PropTypes.
|
|
218
|
+
type: PropTypes.oneOf(['skill', 'playlist', 'certificate'])
|
|
216
219
|
})),
|
|
217
220
|
preselected: PropTypes.arrayOf(PropTypes.string),
|
|
218
221
|
isOpen: PropTypes.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useEffect","useMemo","useState","useCallback","PropTypes","convert","BaseModal","ListItem","ButtonLink","Loader","Provider","SelectOptionPropTypes","SearchForm","searchValueIncluded","style","FilterButton","props","context","active","filter","itemTotal","onClick","skin","primarySkinColor","Content","skillFilterNumber","skillFilterNumberInActive","backgroundColor","color","buttonProps","customStyle","transition","width","content","contextTypes","childContextTypes","translate","propTypes","bool","string","number","func","LearningPriorityModal","priorities","preselected","isOpen","isLoading","filters","options","onChange","onCancel","onAdd","onClose","selectedPriority","setSelectedPriority","searchValue","setSearchValue","searchResults","setSearchResults","handleCancel","handleClose","handleSearch","value","priority","title","handleSearchReset","priorityList","map","isPreSelectedPriority","some","selected","ref","disabled","footer","cancelButton","label","confirmButton","onConfirm","iconName","LearningPriorityContainer","loaderContainer","loader","searchWrapper","placeholder","filterWrapper","length","index","name","count","handleChange","filterButtonWrapper","priorityListWrapper","courses","type","handlePriorityClick","arrayOf","shape"],"sources":["../../../src/molecule/learning-priority-modal/index.js"],"sourcesContent":["import React, {useEffect, useMemo, useState, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, assign, pick} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport BaseModal from '../base-modal';\nimport ListItem from '../../organism/list-item';\nimport ButtonLink from '../../atom/button-link';\nimport Loader from '../../atom/loader';\nimport Provider from '../../atom/provider';\nimport {SelectOptionPropTypes} from '../../atom/select';\nimport SearchForm from '../search-form';\nimport searchValueIncluded from '../../util/search-value-included';\nimport style from './style.css';\n\nconst FilterButton = (props, context) => {\n const {active, filter, itemTotal, onClick} = props;\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span\n className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}\n style={{\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',\n color: active ? primarySkinColor : '#515161'\n }}\n >\n {itemTotal}\n </span>\n </div>\n ),\n [filter, itemTotal, active, primarySkinColor]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : 'transparent',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n itemTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst LearningPriorityModal = (props, context) => {\n const {\n priorities,\n preselected,\n isOpen,\n isLoading,\n filters: {options, onChange},\n onCancel,\n onAdd,\n onClose\n } = props;\n const {translate} = context;\n\n const [selectedPriority, setSelectedPriority] = useState('');\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(priorities);\n\n const handleCancel = useCallback(() => {\n setSelectedPriority('');\n onCancel();\n }, [setSelectedPriority, onCancel]);\n\n const handleClose = useCallback(() => {\n setSelectedPriority('');\n onClose();\n }, [setSelectedPriority, onClose]);\n\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(priorities.filter(priority => searchValueIncluded(priority.title, value)));\n },\n [priorities, setSearchValue, setSearchResults]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(priorities);\n }, [priorities, setSearchValue, setSearchResults]);\n\n useEffect(() => {\n setSearchResults(priorities);\n }, [priorities]);\n\n const priorityList = useMemo(() => {\n return searchResults.map(priority => {\n const isPreSelectedPriority = preselected.some(selected => selected === priority.ref);\n return assign(\n {\n selected: isPreSelectedPriority,\n disabled: isPreSelectedPriority\n },\n pick(['title', 'ref', 'type', 'courses'], priority)\n );\n });\n }, [searchResults, preselected]);\n\n const footer = useMemo(() => {\n return {\n cancelButton: {\n onCancel: handleCancel,\n label: translate('cancel')\n },\n confirmButton: {\n onConfirm: () => onAdd(selectedPriority),\n label: translate('add'),\n iconName: 'plus',\n disabled: isLoading\n }\n };\n }, [handleCancel, onAdd, translate, selectedPriority, isLoading]);\n\n if ((!isLoading && !priorities) || !isOpen) return null;\n\n return (\n <BaseModal\n title={translate('learning_priority_modal_title')}\n description={translate('learning_priority_modal_description')}\n isOpen={isOpen}\n onClose={handleClose}\n footer={footer}\n >\n <div className={style.LearningPriorityContainer}>\n {isLoading ? (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n ) : (\n <>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_priority_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n <div className={style.filterWrapper}>\n {searchResults.length > 0\n ? options.map((filter, index) => {\n const {name, value, selected, count} = filter;\n\n function handleChange() {\n onChange(value);\n handleSearchReset();\n }\n\n if (count === 0) return null;\n\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton\n active={selected}\n filter={name}\n onClick={handleChange}\n itemTotal={count}\n />\n </div>\n );\n })\n : null}\n </div>\n <div className={style.priorityListWrapper}>\n {priorityList.map(priority => {\n const {title, ref, courses, type, selected, disabled} = priority;\n function handlePriorityClick() {\n setSelectedPriority(ref);\n }\n\n return (\n <ListItem\n title={title}\n subtitle={`${courses} ${translate('courses')}`}\n selected={selected || selectedPriority === ref}\n disabled={disabled}\n onClick={handlePriorityClick}\n tags={[{label: type, type: 'default'}]}\n key={ref}\n backgroundColor=\"skin\"\n />\n );\n })}\n </div>\n </>\n )}\n </div>\n </BaseModal>\n );\n};\n\nLearningPriorityModal.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nLearningPriorityModal.propTypes = {\n priorities: PropTypes.arrayOf(\n PropTypes.shape({\n ref: PropTypes.string,\n title: PropTypes.string,\n courses: PropTypes.number,\n type: PropTypes.string\n })\n ),\n preselected: PropTypes.arrayOf(PropTypes.string),\n isOpen: PropTypes.bool,\n isLoading: PropTypes.bool,\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n ...SelectOptionPropTypes,\n count: PropTypes.number\n })\n )\n }),\n onCancel: PropTypes.func,\n onAdd: PropTypes.func,\n onClose: PropTypes.func\n};\n\nexport default LearningPriorityModal;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useEffect","useMemo","useState","useCallback","PropTypes","convert","BaseModal","ListItem","ButtonLink","Loader","Provider","SelectOptionPropTypes","SearchForm","searchValueIncluded","style","FilterButton","props","context","active","filter","itemTotal","onClick","skin","primarySkinColor","Content","skillFilterNumber","skillFilterNumberInActive","backgroundColor","color","buttonProps","customStyle","transition","width","content","contextTypes","childContextTypes","translate","propTypes","bool","string","number","func","LearningPriorityModal","priorities","preselected","isOpen","isLoading","filters","options","onChange","onCancel","onAdd","onClose","selectedPriority","setSelectedPriority","searchValue","setSearchValue","searchResults","setSearchResults","handleCancel","handleClose","handleSearch","value","priority","title","handleSearchReset","priorityList","map","isPreSelectedPriority","some","selected","ref","disabled","footer","cancelButton","label","confirmButton","onConfirm","iconName","LearningPriorityContainer","loaderContainer","loader","searchWrapper","placeholder","filterWrapper","length","index","name","count","handleChange","filterButtonWrapper","priorityListWrapper","courses","type","handlePriorityClick","arrayOf","shape","oneOf"],"sources":["../../../src/molecule/learning-priority-modal/index.js"],"sourcesContent":["import React, {useEffect, useMemo, useState, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, assign, pick} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport BaseModal from '../base-modal';\nimport ListItem from '../../organism/list-item';\nimport ButtonLink from '../../atom/button-link';\nimport Loader from '../../atom/loader';\nimport Provider from '../../atom/provider';\nimport {SelectOptionPropTypes} from '../../atom/select';\nimport SearchForm from '../search-form';\nimport searchValueIncluded from '../../util/search-value-included';\nimport style from './style.css';\n\nconst FilterButton = (props, context) => {\n const {active, filter, itemTotal, onClick} = props;\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span\n className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}\n style={{\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',\n color: active ? primarySkinColor : '#515161'\n }}\n >\n {itemTotal}\n </span>\n </div>\n ),\n [filter, itemTotal, active, primarySkinColor]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : 'transparent',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n itemTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst LearningPriorityModal = (props, context) => {\n const {\n priorities,\n preselected,\n isOpen,\n isLoading,\n filters: {options, onChange},\n onCancel,\n onAdd,\n onClose\n } = props;\n const {translate} = context;\n\n const [selectedPriority, setSelectedPriority] = useState('');\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(priorities);\n\n const handleCancel = useCallback(() => {\n setSelectedPriority('');\n onCancel();\n }, [setSelectedPriority, onCancel]);\n\n const handleClose = useCallback(() => {\n setSelectedPriority('');\n onClose();\n }, [setSelectedPriority, onClose]);\n\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(priorities.filter(priority => searchValueIncluded(priority.title, value)));\n },\n [priorities, setSearchValue, setSearchResults]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(priorities);\n }, [priorities, setSearchValue, setSearchResults]);\n\n useEffect(() => {\n setSearchResults(priorities);\n }, [priorities]);\n\n const priorityList = useMemo(() => {\n return searchResults.map(priority => {\n const isPreSelectedPriority = preselected.some(selected => selected === priority.ref);\n return assign(\n {\n selected: isPreSelectedPriority,\n disabled: isPreSelectedPriority\n },\n pick(['title', 'ref', 'type', 'courses'], priority)\n );\n });\n }, [searchResults, preselected]);\n\n const footer = useMemo(() => {\n return {\n cancelButton: {\n onCancel: handleCancel,\n label: translate('cancel')\n },\n confirmButton: {\n onConfirm: () => {\n onAdd(selectedPriority);\n onClose();\n },\n label: translate('add'),\n iconName: 'plus',\n disabled: isLoading || !selectedPriority\n }\n };\n }, [handleCancel, onAdd, translate, selectedPriority, isLoading]);\n\n if ((!isLoading && !priorities) || !isOpen) return null;\n\n return (\n <BaseModal\n title={translate('learning_priority_modal_title')}\n description={translate('learning_priority_modal_description')}\n isOpen={isOpen}\n onClose={handleClose}\n footer={footer}\n >\n <div className={style.LearningPriorityContainer}>\n {isLoading ? (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n ) : (\n <>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_priority_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n <div className={style.filterWrapper}>\n {searchResults.length > 0\n ? options.map((filter, index) => {\n const {name, value, selected, count} = filter;\n\n function handleChange() {\n onChange(value);\n handleSearchReset();\n }\n\n if (count === 0) return null;\n\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton\n active={selected}\n filter={name}\n onClick={handleChange}\n itemTotal={count}\n />\n </div>\n );\n })\n : null}\n </div>\n <div className={style.priorityListWrapper}>\n {priorityList.map(priority => {\n const {title, ref, courses, type, selected, disabled} = priority;\n function handlePriorityClick() {\n setSelectedPriority(ref);\n }\n\n return (\n <ListItem\n title={title}\n subtitle={`${courses} ${translate('courses')}`}\n selected={selected || selectedPriority === ref}\n disabled={disabled}\n onClick={handlePriorityClick}\n tags={[{label: type, type: 'default'}]}\n key={ref}\n backgroundColor=\"skin\"\n />\n );\n })}\n </div>\n </>\n )}\n </div>\n </BaseModal>\n );\n};\n\nLearningPriorityModal.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nLearningPriorityModal.propTypes = {\n priorities: PropTypes.arrayOf(\n PropTypes.shape({\n ref: PropTypes.string,\n title: PropTypes.string,\n courses: PropTypes.number,\n type: PropTypes.oneOf(['skill', 'playlist', 'certificate'])\n })\n ),\n preselected: PropTypes.arrayOf(PropTypes.string),\n isOpen: PropTypes.bool,\n isLoading: PropTypes.bool,\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n ...SelectOptionPropTypes,\n count: PropTypes.number\n })\n )\n }),\n onCancel: PropTypes.func,\n onAdd: PropTypes.func,\n onClose: PropTypes.func\n};\n\nexport default LearningPriorityModal;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"names":[],"mappings":";AAOA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"names":[],"mappings":";AAOA,kFAoDC"}
|
|
@@ -19,6 +19,20 @@ const LearningPrioritySetupItem = (props, context) => {
|
|
|
19
19
|
translate
|
|
20
20
|
} = context;
|
|
21
21
|
const handleRemovePriority = useCallback(() => onRemove(priorityRef, type), [priorityRef, type]);
|
|
22
|
+
|
|
23
|
+
const handleTypeTranslate = itemType => {
|
|
24
|
+
switch (itemType) {
|
|
25
|
+
case 'skill':
|
|
26
|
+
return translate('skill');
|
|
27
|
+
|
|
28
|
+
case 'playlist':
|
|
29
|
+
return translate('playlist');
|
|
30
|
+
|
|
31
|
+
case 'certificate':
|
|
32
|
+
return translate('certificate');
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
22
36
|
return /*#__PURE__*/React.createElement("div", {
|
|
23
37
|
className: style.container,
|
|
24
38
|
"aria-label": ariaLabel,
|
|
@@ -30,7 +44,7 @@ const LearningPrioritySetupItem = (props, context) => {
|
|
|
30
44
|
}, /*#__PURE__*/React.createElement("div", {
|
|
31
45
|
className: style.title
|
|
32
46
|
}, title), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Tag, {
|
|
33
|
-
label:
|
|
47
|
+
label: handleTypeTranslate(type),
|
|
34
48
|
size: 'S'
|
|
35
49
|
}))), /*#__PURE__*/React.createElement("span", {
|
|
36
50
|
className: style.courses
|
|
@@ -62,7 +76,7 @@ LearningPrioritySetupItem.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
62
76
|
priorityRef: PropTypes.string,
|
|
63
77
|
title: PropTypes.string,
|
|
64
78
|
courses: PropTypes.number,
|
|
65
|
-
type: PropTypes.
|
|
79
|
+
type: PropTypes.oneOf(['skill', 'playlist', 'certificate']),
|
|
66
80
|
onRemove: PropTypes.func
|
|
67
81
|
} : {};
|
|
68
82
|
export default LearningPrioritySetupItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","PropTypes","Provider","Tag","ButtonLink","style","LearningPrioritySetupItem","props","context","priorityRef","id","title","courses","type","ariaLabel","onRemove","translate","handleRemovePriority","container","containerInfos","titleWrapper","width","backgroundColor","position","faIcon","name","color","size","contextTypes","childContextTypes","propTypes","string","number","func"],"sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst LearningPrioritySetupItem = (props, context) => {\n const {priorityRef, id, title, courses, type, 'aria-label': ariaLabel, onRemove} = props;\n\n const {translate} = context;\n\n const handleRemovePriority = useCallback(() => onRemove(priorityRef, type), [priorityRef, type]);\n\n return (\n <div\n className={style.container}\n aria-label={ariaLabel}\n data-name={`learning-priority-setup-item-${id}`}\n >\n <div className={style.containerInfos}>\n <div className={style.titleWrapper}>\n <div className={style.title}>{title}</div>\n <div>\n <Tag label={
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","PropTypes","Provider","Tag","ButtonLink","style","LearningPrioritySetupItem","props","context","priorityRef","id","title","courses","type","ariaLabel","onRemove","translate","handleRemovePriority","handleTypeTranslate","itemType","container","containerInfos","titleWrapper","width","backgroundColor","position","faIcon","name","color","size","contextTypes","childContextTypes","propTypes","string","number","oneOf","func"],"sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst LearningPrioritySetupItem = (props, context) => {\n const {priorityRef, id, title, courses, type, 'aria-label': ariaLabel, onRemove} = props;\n\n const {translate} = context;\n\n const handleRemovePriority = useCallback(() => onRemove(priorityRef, type), [priorityRef, type]);\n\n const handleTypeTranslate = itemType => {\n switch (itemType) {\n case 'skill':\n return translate('skill');\n case 'playlist':\n return translate('playlist');\n case 'certificate':\n return translate('certificate');\n }\n };\n\n return (\n <div\n className={style.container}\n aria-label={ariaLabel}\n data-name={`learning-priority-setup-item-${id}`}\n >\n <div className={style.containerInfos}>\n <div className={style.titleWrapper}>\n <div className={style.title}>{title}</div>\n <div>\n <Tag label={handleTypeTranslate(type)} size={'S'} />\n </div>\n </div>\n <span className={style.courses}>{`${courses} ${translate('courses')}`}</span>\n </div>\n <ButtonLink\n type=\"primary\"\n customStyle={{\n width: 'fit-content',\n backgroundColor: 'transparent'\n }}\n hoverBackgroundColor=\"#EAEAEB\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'trash',\n color: '#515161',\n size: 16\n }\n }}\n onClick={handleRemovePriority}\n />\n </div>\n );\n};\n\nLearningPrioritySetupItem.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nLearningPrioritySetupItem.propTypes = {\n 'aria-label': PropTypes.string,\n id: PropTypes.string,\n priorityRef: PropTypes.string,\n title: PropTypes.string,\n courses: PropTypes.number,\n type: PropTypes.oneOf(['skill', 'playlist', 'certificate']),\n onRemove: PropTypes.func\n};\n\nexport default LearningPrioritySetupItem;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,WAAf,QAAiC,OAAjC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,QAAP,MAAqB,qBAArB;AACA,OAAOC,GAAP,MAAgB,gBAAhB;AACA,OAAOC,UAAP,MAAuB,wBAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,yBAAyB,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACpD,MAAM;IAACC,WAAD;IAAcC,EAAd;IAAkBC,KAAlB;IAAyBC,OAAzB;IAAkCC,IAAlC;IAAwC,cAAcC,SAAtD;IAAiEC;EAAjE,IAA6ER,KAAnF;EAEA,MAAM;IAACS;EAAD,IAAcR,OAApB;EAEA,MAAMS,oBAAoB,GAAGjB,WAAW,CAAC,MAAMe,QAAQ,CAACN,WAAD,EAAcI,IAAd,CAAf,EAAoC,CAACJ,WAAD,EAAcI,IAAd,CAApC,CAAxC;;EAEA,MAAMK,mBAAmB,GAAGC,QAAQ,IAAI;IACtC,QAAQA,QAAR;MACE,KAAK,OAAL;QACE,OAAOH,SAAS,CAAC,OAAD,CAAhB;;MACF,KAAK,UAAL;QACE,OAAOA,SAAS,CAAC,UAAD,CAAhB;;MACF,KAAK,aAAL;QACE,OAAOA,SAAS,CAAC,aAAD,CAAhB;IANJ;EAQD,CATD;;EAWA,oBACE;IACE,SAAS,EAAEX,KAAK,CAACe,SADnB;IAEE,cAAYN,SAFd;IAGE,aAAY,gCAA+BJ,EAAG;EAHhD,gBAKE;IAAK,SAAS,EAAEL,KAAK,CAACgB;EAAtB,gBACE;IAAK,SAAS,EAAEhB,KAAK,CAACiB;EAAtB,gBACE;IAAK,SAAS,EAAEjB,KAAK,CAACM;EAAtB,GAA8BA,KAA9B,CADF,eAEE,8CACE,oBAAC,GAAD;IAAK,KAAK,EAAEO,mBAAmB,CAACL,IAAD,CAA/B;IAAuC,IAAI,EAAE;EAA7C,EADF,CAFF,CADF,eAOE;IAAM,SAAS,EAAER,KAAK,CAACO;EAAvB,GAAkC,GAAEA,OAAQ,IAAGI,SAAS,CAAC,SAAD,CAAY,EAApE,CAPF,CALF,eAcE,oBAAC,UAAD;IACE,IAAI,EAAC,SADP;IAEE,WAAW,EAAE;MACXO,KAAK,EAAE,aADI;MAEXC,eAAe,EAAE;IAFN,CAFf;IAME,oBAAoB,EAAC,SANvB;IAOE,IAAI,EAAE;MACJC,QAAQ,EAAE,MADN;MAEJC,MAAM,EAAE;QACNC,IAAI,EAAE,OADA;QAENC,KAAK,EAAE,SAFD;QAGNC,IAAI,EAAE;MAHA;IAFJ,CAPR;IAeE,OAAO,EAAEZ;EAfX,EAdF,CADF;AAkCD,CApDD;;AAsDAX,yBAAyB,CAACwB,YAA1B,GAAyC;EACvCd,SAAS,EAAEd,QAAQ,CAAC6B,iBAAT,CAA2Bf;AADC,CAAzC;AAIAV,yBAAyB,CAAC0B,SAA1B,2CAAsC;EACpC,cAAc/B,SAAS,CAACgC,MADY;EAEpCvB,EAAE,EAAET,SAAS,CAACgC,MAFsB;EAGpCxB,WAAW,EAAER,SAAS,CAACgC,MAHa;EAIpCtB,KAAK,EAAEV,SAAS,CAACgC,MAJmB;EAKpCrB,OAAO,EAAEX,SAAS,CAACiC,MALiB;EAMpCrB,IAAI,EAAEZ,SAAS,CAACkC,KAAV,CAAgB,CAAC,OAAD,EAAU,UAAV,EAAsB,aAAtB,CAAhB,CAN8B;EAOpCpB,QAAQ,EAAEd,SAAS,CAACmC;AAPgB,CAAtC;AAUA,eAAe9B,yBAAf"}
|
|
@@ -80,9 +80,9 @@ const ListItem = ({
|
|
|
80
80
|
}, isPublished && contentType === 'certification' ? orderView : null, /*#__PURE__*/React.createElement("div", {
|
|
81
81
|
className: style.title,
|
|
82
82
|
title: title
|
|
83
|
-
}, title, /*#__PURE__*/React.createElement("div", {
|
|
83
|
+
}, title, subtitle ? /*#__PURE__*/React.createElement("div", {
|
|
84
84
|
className: style.subtitle
|
|
85
|
-
}, subtitle)), dataColumnsView), /*#__PURE__*/React.createElement("div", {
|
|
85
|
+
}, subtitle) : null), dataColumnsView), /*#__PURE__*/React.createElement("div", {
|
|
86
86
|
className: style.settings
|
|
87
87
|
}, tagsView, selected ? /*#__PURE__*/React.createElement(Icon, {
|
|
88
88
|
iconName: "circle-check",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","convert","classnames","Provider","Tag","Icon","ButtonLink","BulletPointMenuButton","style","ListItem","buttonLink","secondButtonLink","bulletPointMenuButton","tags","title","selected","subtitle","dataColumns","order","ariaLabel","disabled","contentType","isBulkStyle","isOverflowHidden","onClick","context","skin","primarySkinColor","mapUncapped","cap","isPublished","selectedStyle","backgroundColor","tagSelectedStyle","color","tagsView","tag","index","type","dataColumnsView","dataColumn","className","label","orderView","undefined","wrapper","gridLayout","withSubtitle","dataColumnsWrapper","hiddenOverflowX","settings","faSize","wrapperSize","contextTypes","childContextTypes","translate","propTypes","string","isRequired","bool","arrayOf","shape","oneOf","dataName","icon","position","func","buttonAriaLabel","menuAriaLabel","buttons","number","id"],"sources":["../../../src/organism/list-item/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty, map, noop, get} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport Icon from '../../atom/icon';\nimport ButtonLink from '../../atom/button-link';\nimport BulletPointMenuButton from '../../molecule/bullet-point-menu-button';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from './style.css';\n\nconst ListItem = (\n {\n buttonLink,\n secondButtonLink,\n bulletPointMenuButton,\n tags,\n title,\n selected,\n subtitle,\n dataColumns,\n order,\n 'aria-label': ariaLabel,\n disabled = false,\n contentType,\n isBulkStyle = false,\n isOverflowHidden = false,\n onClick = noop\n },\n context\n) => {\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n const mapUncapped = map.convert({cap: false});\n let isPublished = false;\n\n const selectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.07))`)\n }\n : {};\n\n const tagSelectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.15))`),\n color: primarySkinColor\n }\n : {};\n\n const tagsView = mapUncapped((tag, index) => {\n isPublished = tag.type === 'success';\n return (\n <div key={index} className={style.tag}>\n <Tag {...tag} customStyle={tagSelectedStyle} />\n </div>\n );\n })(tags);\n\n const dataColumnsView = mapUncapped((dataColumn, index) => {\n return (\n <div key={index} className={style[dataColumn.className]}>\n {dataColumn.type ? <Tag {...dataColumn} /> : dataColumn.label}\n </div>\n );\n })(dataColumns);\n\n const orderView =\n order !== null && order !== undefined ? (\n <div className={style.order} aria-label={ariaLabel}>\n {order + 1}\n </div>\n ) : null;\n\n return (\n <div\n className={classnames(\n style.wrapper,\n isBulkStyle && style.gridLayout,\n subtitle && style.withSubtitle,\n disabled && style.disabled\n )}\n onClick={!disabled ? onClick : undefined}\n style={selectedStyle}\n >\n <div\n className={classnames(style.dataColumnsWrapper, isOverflowHidden && style.hiddenOverflowX)}\n >\n {isPublished && contentType === 'certification' ? orderView : null}\n <div className={style.title} title={title}>\n {title}\n <div className={style.subtitle}>{subtitle}</div>\n </div>\n {dataColumnsView}\n </div>\n\n <div className={style.settings}>\n {tagsView}\n {selected ? (\n <Icon\n iconName=\"circle-check\"\n iconColor={primarySkinColor}\n backgroundColor={'#ffffff'}\n size={{faSize: 16, wrapperSize: 16}}\n />\n ) : null}\n {buttonLink ? <ButtonLink {...buttonLink} /> : null}\n {secondButtonLink ? <ButtonLink {...secondButtonLink} /> : null}\n {!isEmpty(bulletPointMenuButton) ? (\n <BulletPointMenuButton {...bulletPointMenuButton} />\n ) : null}\n </div>\n </div>\n );\n};\n\nListItem.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nListItem.propTypes = {\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string,\n selected: PropTypes.bool,\n dataColumns: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default']),\n className: PropTypes.oneOf(['cell', 'title'])\n })\n ),\n buttonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n secondButtonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n bulletPointMenuButton: PropTypes.shape({\n buttonAriaLabel: PropTypes.string,\n menuAriaLabel: PropTypes.string,\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n 'data-name': PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n onClick: PropTypes.func\n })\n ),\n onClick: PropTypes.func\n }),\n tags: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default'])\n })\n ),\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n isBulkStyle: PropTypes.bool,\n isOverflowHidden: PropTypes.bool,\n order: PropTypes.number,\n 'aria-label': PropTypes.string,\n contentType: PropTypes.string,\n id: PropTypes.string\n};\n\nexport default ListItem;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","convert","classnames","Provider","Tag","Icon","ButtonLink","BulletPointMenuButton","style","ListItem","buttonLink","secondButtonLink","bulletPointMenuButton","tags","title","selected","subtitle","dataColumns","order","ariaLabel","disabled","contentType","isBulkStyle","isOverflowHidden","onClick","context","skin","primarySkinColor","mapUncapped","cap","isPublished","selectedStyle","backgroundColor","tagSelectedStyle","color","tagsView","tag","index","type","dataColumnsView","dataColumn","className","label","orderView","undefined","wrapper","gridLayout","withSubtitle","dataColumnsWrapper","hiddenOverflowX","settings","faSize","wrapperSize","contextTypes","childContextTypes","translate","propTypes","string","isRequired","bool","arrayOf","shape","oneOf","dataName","icon","position","func","buttonAriaLabel","menuAriaLabel","buttons","number","id"],"sources":["../../../src/organism/list-item/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty, map, noop, get} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport Icon from '../../atom/icon';\nimport ButtonLink from '../../atom/button-link';\nimport BulletPointMenuButton from '../../molecule/bullet-point-menu-button';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from './style.css';\n\nconst ListItem = (\n {\n buttonLink,\n secondButtonLink,\n bulletPointMenuButton,\n tags,\n title,\n selected,\n subtitle,\n dataColumns,\n order,\n 'aria-label': ariaLabel,\n disabled = false,\n contentType,\n isBulkStyle = false,\n isOverflowHidden = false,\n onClick = noop\n },\n context\n) => {\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n const mapUncapped = map.convert({cap: false});\n let isPublished = false;\n\n const selectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.07))`)\n }\n : {};\n\n const tagSelectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.15))`),\n color: primarySkinColor\n }\n : {};\n\n const tagsView = mapUncapped((tag, index) => {\n isPublished = tag.type === 'success';\n return (\n <div key={index} className={style.tag}>\n <Tag {...tag} customStyle={tagSelectedStyle} />\n </div>\n );\n })(tags);\n\n const dataColumnsView = mapUncapped((dataColumn, index) => {\n return (\n <div key={index} className={style[dataColumn.className]}>\n {dataColumn.type ? <Tag {...dataColumn} /> : dataColumn.label}\n </div>\n );\n })(dataColumns);\n\n const orderView =\n order !== null && order !== undefined ? (\n <div className={style.order} aria-label={ariaLabel}>\n {order + 1}\n </div>\n ) : null;\n\n return (\n <div\n className={classnames(\n style.wrapper,\n isBulkStyle && style.gridLayout,\n subtitle && style.withSubtitle,\n disabled && style.disabled\n )}\n onClick={!disabled ? onClick : undefined}\n style={selectedStyle}\n >\n <div\n className={classnames(style.dataColumnsWrapper, isOverflowHidden && style.hiddenOverflowX)}\n >\n {isPublished && contentType === 'certification' ? orderView : null}\n <div className={style.title} title={title}>\n {title}\n {subtitle ? <div className={style.subtitle}>{subtitle}</div> : null}\n </div>\n {dataColumnsView}\n </div>\n\n <div className={style.settings}>\n {tagsView}\n {selected ? (\n <Icon\n iconName=\"circle-check\"\n iconColor={primarySkinColor}\n backgroundColor={'#ffffff'}\n size={{faSize: 16, wrapperSize: 16}}\n />\n ) : null}\n {buttonLink ? <ButtonLink {...buttonLink} /> : null}\n {secondButtonLink ? <ButtonLink {...secondButtonLink} /> : null}\n {!isEmpty(bulletPointMenuButton) ? (\n <BulletPointMenuButton {...bulletPointMenuButton} />\n ) : null}\n </div>\n </div>\n );\n};\n\nListItem.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nListItem.propTypes = {\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string,\n selected: PropTypes.bool,\n dataColumns: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default']),\n className: PropTypes.oneOf(['cell', 'title'])\n })\n ),\n buttonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n secondButtonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n bulletPointMenuButton: PropTypes.shape({\n buttonAriaLabel: PropTypes.string,\n menuAriaLabel: PropTypes.string,\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n 'data-name': PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n onClick: PropTypes.func\n })\n ),\n onClick: PropTypes.func\n }),\n tags: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default'])\n })\n ),\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n isBulkStyle: PropTypes.bool,\n isOverflowHidden: PropTypes.bool,\n order: PropTypes.number,\n 'aria-label': PropTypes.string,\n contentType: PropTypes.string,\n id: PropTypes.string\n};\n\nexport default ListItem;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-modal/index.js"],"names":[],"mappings":";AAgEA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-modal/index.js"],"names":[],"mappings":";AAgEA,qFAyJC"}
|
|
@@ -139,10 +139,13 @@ const LearningPriorityModal = (props, context) => {
|
|
|
139
139
|
label: translate('cancel')
|
|
140
140
|
},
|
|
141
141
|
confirmButton: {
|
|
142
|
-
onConfirm: () =>
|
|
142
|
+
onConfirm: () => {
|
|
143
|
+
onAdd(selectedPriority);
|
|
144
|
+
onClose();
|
|
145
|
+
},
|
|
143
146
|
label: translate('add'),
|
|
144
147
|
iconName: 'plus',
|
|
145
|
-
disabled: isLoading
|
|
148
|
+
disabled: isLoading || !selectedPriority
|
|
146
149
|
}
|
|
147
150
|
};
|
|
148
151
|
}, [handleCancel, onAdd, translate, selectedPriority, isLoading]);
|
|
@@ -234,7 +237,7 @@ LearningPriorityModal.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
234
237
|
ref: _propTypes.default.string,
|
|
235
238
|
title: _propTypes.default.string,
|
|
236
239
|
courses: _propTypes.default.number,
|
|
237
|
-
type: _propTypes.default.
|
|
240
|
+
type: _propTypes.default.oneOf(['skill', 'playlist', 'certificate'])
|
|
238
241
|
})),
|
|
239
242
|
preselected: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
240
243
|
isOpen: _propTypes.default.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["FilterButton","props","context","active","filter","itemTotal","onClick","skin","primarySkinColor","Content","useCallback","style","skillFilterNumber","skillFilterNumberInActive","backgroundColor","convert","color","buttonProps","customStyle","transition","width","content","contextTypes","Provider","childContextTypes","translate","propTypes","PropTypes","bool","string","number","func","LearningPriorityModal","priorities","preselected","isOpen","isLoading","filters","options","onChange","onCancel","onAdd","onClose","selectedPriority","setSelectedPriority","useState","searchValue","setSearchValue","searchResults","setSearchResults","handleCancel","handleClose","handleSearch","value","priority","searchValueIncluded","title","handleSearchReset","useEffect","priorityList","useMemo","map","isPreSelectedPriority","some","selected","ref","disabled","footer","cancelButton","label","confirmButton","onConfirm","iconName","LearningPriorityContainer","loaderContainer","loader","searchWrapper","placeholder","filterWrapper","length","index","name","count","handleChange","filterButtonWrapper","priorityListWrapper","courses","type","handlePriorityClick","arrayOf","shape","SelectOptionPropTypes"],"sources":["../../../src/molecule/learning-priority-modal/index.js"],"sourcesContent":["import React, {useEffect, useMemo, useState, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, assign, pick} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport BaseModal from '../base-modal';\nimport ListItem from '../../organism/list-item';\nimport ButtonLink from '../../atom/button-link';\nimport Loader from '../../atom/loader';\nimport Provider from '../../atom/provider';\nimport {SelectOptionPropTypes} from '../../atom/select';\nimport SearchForm from '../search-form';\nimport searchValueIncluded from '../../util/search-value-included';\nimport style from './style.css';\n\nconst FilterButton = (props, context) => {\n const {active, filter, itemTotal, onClick} = props;\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span\n className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}\n style={{\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',\n color: active ? primarySkinColor : '#515161'\n }}\n >\n {itemTotal}\n </span>\n </div>\n ),\n [filter, itemTotal, active, primarySkinColor]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : 'transparent',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n itemTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst LearningPriorityModal = (props, context) => {\n const {\n priorities,\n preselected,\n isOpen,\n isLoading,\n filters: {options, onChange},\n onCancel,\n onAdd,\n onClose\n } = props;\n const {translate} = context;\n\n const [selectedPriority, setSelectedPriority] = useState('');\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(priorities);\n\n const handleCancel = useCallback(() => {\n setSelectedPriority('');\n onCancel();\n }, [setSelectedPriority, onCancel]);\n\n const handleClose = useCallback(() => {\n setSelectedPriority('');\n onClose();\n }, [setSelectedPriority, onClose]);\n\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(priorities.filter(priority => searchValueIncluded(priority.title, value)));\n },\n [priorities, setSearchValue, setSearchResults]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(priorities);\n }, [priorities, setSearchValue, setSearchResults]);\n\n useEffect(() => {\n setSearchResults(priorities);\n }, [priorities]);\n\n const priorityList = useMemo(() => {\n return searchResults.map(priority => {\n const isPreSelectedPriority = preselected.some(selected => selected === priority.ref);\n return assign(\n {\n selected: isPreSelectedPriority,\n disabled: isPreSelectedPriority\n },\n pick(['title', 'ref', 'type', 'courses'], priority)\n );\n });\n }, [searchResults, preselected]);\n\n const footer = useMemo(() => {\n return {\n cancelButton: {\n onCancel: handleCancel,\n label: translate('cancel')\n },\n confirmButton: {\n onConfirm: () => onAdd(selectedPriority),\n label: translate('add'),\n iconName: 'plus',\n disabled: isLoading\n }\n };\n }, [handleCancel, onAdd, translate, selectedPriority, isLoading]);\n\n if ((!isLoading && !priorities) || !isOpen) return null;\n\n return (\n <BaseModal\n title={translate('learning_priority_modal_title')}\n description={translate('learning_priority_modal_description')}\n isOpen={isOpen}\n onClose={handleClose}\n footer={footer}\n >\n <div className={style.LearningPriorityContainer}>\n {isLoading ? (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n ) : (\n <>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_priority_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n <div className={style.filterWrapper}>\n {searchResults.length > 0\n ? options.map((filter, index) => {\n const {name, value, selected, count} = filter;\n\n function handleChange() {\n onChange(value);\n handleSearchReset();\n }\n\n if (count === 0) return null;\n\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton\n active={selected}\n filter={name}\n onClick={handleChange}\n itemTotal={count}\n />\n </div>\n );\n })\n : null}\n </div>\n <div className={style.priorityListWrapper}>\n {priorityList.map(priority => {\n const {title, ref, courses, type, selected, disabled} = priority;\n function handlePriorityClick() {\n setSelectedPriority(ref);\n }\n\n return (\n <ListItem\n title={title}\n subtitle={`${courses} ${translate('courses')}`}\n selected={selected || selectedPriority === ref}\n disabled={disabled}\n onClick={handlePriorityClick}\n tags={[{label: type, type: 'default'}]}\n key={ref}\n backgroundColor=\"skin\"\n />\n );\n })}\n </div>\n </>\n )}\n </div>\n </BaseModal>\n );\n};\n\nLearningPriorityModal.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nLearningPriorityModal.propTypes = {\n priorities: PropTypes.arrayOf(\n PropTypes.shape({\n ref: PropTypes.string,\n title: PropTypes.string,\n courses: PropTypes.number,\n type: PropTypes.string\n })\n ),\n preselected: PropTypes.arrayOf(PropTypes.string),\n isOpen: PropTypes.bool,\n isLoading: PropTypes.bool,\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n ...SelectOptionPropTypes,\n count: PropTypes.number\n })\n )\n }),\n onCancel: PropTypes.func,\n onAdd: PropTypes.func,\n onClose: PropTypes.func\n};\n\nexport default LearningPriorityModal;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,MAAMA,YAAY,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACvC,MAAM;IAACC,MAAD;IAASC,MAAT;IAAiBC,SAAjB;IAA4BC;EAA5B,IAAuCL,KAA7C;EACA,MAAM;IAACM;EAAD,IAASL,OAAf;EACA,MAAMM,gBAAgB,GAAG,mBAAI,gBAAJ,EAAsBD,IAAtB,CAAzB;EAEA,MAAME,OAAO,GAAG,IAAAC,kBAAA,EACd,mBACE,0CACGN,MADH,eAEE;IACE,SAAS,EAAED,MAAM,GAAGQ,cAAA,CAAMC,iBAAT,GAA6BD,cAAA,CAAME,yBADtD;IAEE,KAAK,EAAE;MACLC,eAAe,EAAEX,MAAM,GAAG,IAAAY,yBAAA,EAAS,SAAQP,gBAAiB,WAAlC,CAAH,GAAmD,SADrE;MAELQ,KAAK,EAAEb,MAAM,GAAGK,gBAAH,GAAsB;IAF9B;EAFT,GAOGH,SAPH,CAFF,CAFY,EAed,CAACD,MAAD,EAASC,SAAT,EAAoBF,MAApB,EAA4BK,gBAA5B,CAfc,CAAhB;EAkBA,MAAMS,WAAW,GAAG;IAClBC,WAAW,EAAE;MACXJ,eAAe,EAAEX,MAAM,GAAG,IAAAY,yBAAA,EAAS,SAAQP,gBAAiB,WAAlC,CAAH,GAAmD,aAD/D;MAEXQ,KAAK,EAAEb,MAAM,GAAGK,gBAAH,GAAsB,SAFxB;MAGXW,UAAU,EAAE,6DAHD;MAIXC,KAAK,EAAE;IAJI,CADK;IAOlBd,OAPkB;IAQlBe,OAAO,eAAE,6BAAC,OAAD,OARS;IASlB,aAAa;EATK,CAApB;EAYA,oBAAO,6BAAC,mBAAD,EAAgBJ,WAAhB,CAAP;AACD,CApCD;;AAsCAjB,YAAY,CAACsB,YAAb,GAA4B;EAC1Bf,IAAI,EAAEgB,iBAAA,CAASC,iBAAT,CAA2BjB,IADP;EAE1BkB,SAAS,EAAEF,iBAAA,CAASC,iBAAT,CAA2BC;AAFZ,CAA5B;AAKAzB,YAAY,CAAC0B,SAAb,2CAAyB;EACvBvB,MAAM,EAAEwB,kBAAA,CAAUC,IADK;EAEvBxB,MAAM,EAAEuB,kBAAA,CAAUE,MAFK;EAGvBxB,SAAS,EAAEsB,kBAAA,CAAUG,MAHE;EAIvBxB,OAAO,EAAEqB,kBAAA,CAAUI;AAJI,CAAzB;;AAOA,MAAMC,qBAAqB,GAAG,CAAC/B,KAAD,EAAQC,OAAR,KAAoB;EAChD,MAAM;IACJ+B,UADI;IAEJC,WAFI;IAGJC,MAHI;IAIJC,SAJI;IAKJC,OAAO,EAAE;MAACC,OAAD;MAAUC;IAAV,CALL;IAMJC,QANI;IAOJC,KAPI;IAQJC;EARI,IASFzC,KATJ;EAUA,MAAM;IAACwB;EAAD,IAAcvB,OAApB;EAEA,MAAM,CAACyC,gBAAD,EAAmBC,mBAAnB,IAA0C,IAAAC,eAAA,EAAS,EAAT,CAAhD;EACA,MAAM,CAACC,WAAD,EAAcC,cAAd,IAAgC,IAAAF,eAAA,EAAS,EAAT,CAAtC;EACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoC,IAAAJ,eAAA,EAASZ,UAAT,CAA1C;EAEA,MAAMiB,YAAY,GAAG,IAAAxC,kBAAA,EAAY,MAAM;IACrCkC,mBAAmB,CAAC,EAAD,CAAnB;IACAJ,QAAQ;EACT,CAHoB,EAGlB,CAACI,mBAAD,EAAsBJ,QAAtB,CAHkB,CAArB;EAKA,MAAMW,WAAW,GAAG,IAAAzC,kBAAA,EAAY,MAAM;IACpCkC,mBAAmB,CAAC,EAAD,CAAnB;IACAF,OAAO;EACR,CAHmB,EAGjB,CAACE,mBAAD,EAAsBF,OAAtB,CAHiB,CAApB;EAKA,MAAMU,YAAY,GAAG,IAAA1C,kBAAA,EACnB2C,KAAK,IAAI;IACPN,cAAc,CAACM,KAAD,CAAd;IACAJ,gBAAgB,CAAChB,UAAU,CAAC7B,MAAX,CAAkBkD,QAAQ,IAAI,IAAAC,4BAAA,EAAoBD,QAAQ,CAACE,KAA7B,EAAoCH,KAApC,CAA9B,CAAD,CAAhB;EACD,CAJkB,EAKnB,CAACpB,UAAD,EAAac,cAAb,EAA6BE,gBAA7B,CALmB,CAArB;EAQA,MAAMQ,iBAAiB,GAAG,IAAA/C,kBAAA,EAAY,MAAM;IAC1CqC,cAAc,CAAC,EAAD,CAAd;IACAE,gBAAgB,CAAChB,UAAD,CAAhB;EACD,CAHyB,EAGvB,CAACA,UAAD,EAAac,cAAb,EAA6BE,gBAA7B,CAHuB,CAA1B;EAKA,IAAAS,gBAAA,EAAU,MAAM;IACdT,gBAAgB,CAAChB,UAAD,CAAhB;EACD,CAFD,EAEG,CAACA,UAAD,CAFH;EAIA,MAAM0B,YAAY,GAAG,IAAAC,cAAA,EAAQ,MAAM;IACjC,OAAOZ,aAAa,CAACa,GAAd,CAAkBP,QAAQ,IAAI;MACnC,MAAMQ,qBAAqB,GAAG5B,WAAW,CAAC6B,IAAZ,CAAiBC,QAAQ,IAAIA,QAAQ,KAAKV,QAAQ,CAACW,GAAnD,CAA9B;MACA,OAAO,sBACL;QACED,QAAQ,EAAEF,qBADZ;QAEEI,QAAQ,EAAEJ;MAFZ,CADK,EAKL,oBAAK,CAAC,OAAD,EAAU,KAAV,EAAiB,MAAjB,EAAyB,SAAzB,CAAL,EAA0CR,QAA1C,CALK,CAAP;IAOD,CATM,CAAP;EAUD,CAXoB,EAWlB,CAACN,aAAD,EAAgBd,WAAhB,CAXkB,CAArB;EAaA,MAAMiC,MAAM,GAAG,IAAAP,cAAA,EAAQ,MAAM;IAC3B,OAAO;MACLQ,YAAY,EAAE;QACZ5B,QAAQ,EAAEU,YADE;QAEZmB,KAAK,EAAE5C,SAAS,CAAC,QAAD;MAFJ,CADT;MAKL6C,aAAa,EAAE;QACbC,SAAS,EAAE,MAAM9B,KAAK,CAACE,gBAAD,CADT;QAEb0B,KAAK,EAAE5C,SAAS,CAAC,KAAD,CAFH;QAGb+C,QAAQ,EAAE,MAHG;QAIbN,QAAQ,EAAE9B;MAJG;IALV,CAAP;EAYD,CAbc,EAaZ,CAACc,YAAD,EAAeT,KAAf,EAAsBhB,SAAtB,EAAiCkB,gBAAjC,EAAmDP,SAAnD,CAbY,CAAf;EAeA,IAAK,CAACA,SAAD,IAAc,CAACH,UAAhB,IAA+B,CAACE,MAApC,EAA4C,OAAO,IAAP;EAE5C,oBACE,6BAAC,kBAAD;IACE,KAAK,EAAEV,SAAS,CAAC,+BAAD,CADlB;IAEE,WAAW,EAAEA,SAAS,CAAC,qCAAD,CAFxB;IAGE,MAAM,EAAEU,MAHV;IAIE,OAAO,EAAEgB,WAJX;IAKE,MAAM,EAAEgB;EALV,gBAOE;IAAK,SAAS,EAAExD,cAAA,CAAM8D;EAAtB,GACGrC,SAAS,gBACR;IAAK,SAAS,EAAEzB,cAAA,CAAM+D;EAAtB,gBACE,6BAAC,eAAD;IAAQ,SAAS,EAAE/D,cAAA,CAAMgE,MAAzB;IAAiC,KAAK,EAAC;EAAvC,EADF,CADQ,gBAKR,yEACE;IAAK,SAAS,EAAEhE,cAAA,CAAMiE;EAAtB,gBACE,6BAAC,mBAAD;IACE,MAAM,EAAE;MACNC,WAAW,EAAEpD,SAAS,CAAC,8BAAD,CADhB;MAEN4B,KAAK,EAAEP,WAFD;MAGNP,QAAQ,EAAEa;IAHJ,CADV;IAME,OAAO,EAAEK;EANX,EADF,CADF,eAWE;IAAK,SAAS,EAAE9C,cAAA,CAAMmE;EAAtB,GACG9B,aAAa,CAAC+B,MAAd,GAAuB,CAAvB,GACGzC,OAAO,CAACuB,GAAR,CAAY,CAACzD,MAAD,EAAS4E,KAAT,KAAmB;IAC7B,MAAM;MAACC,IAAD;MAAO5B,KAAP;MAAcW,QAAd;MAAwBkB;IAAxB,IAAiC9E,MAAvC;;IAEA,SAAS+E,YAAT,GAAwB;MACtB5C,QAAQ,CAACc,KAAD,CAAR;MACAI,iBAAiB;IAClB;;IAED,IAAIyB,KAAK,KAAK,CAAd,EAAiB,OAAO,IAAP;IAEjB,oBACE;MAAK,GAAG,EAAEF,KAAV;MAAiB,SAAS,EAAErE,cAAA,CAAMyE;IAAlC,gBACE,6BAAC,YAAD;MACE,MAAM,EAAEpB,QADV;MAEE,MAAM,EAAEiB,IAFV;MAGE,OAAO,EAAEE,YAHX;MAIE,SAAS,EAAED;IAJb,EADF,CADF;EAUD,CApBD,CADH,GAsBG,IAvBN,CAXF,eAoCE;IAAK,SAAS,EAAEvE,cAAA,CAAM0E;EAAtB,GACG1B,YAAY,CAACE,GAAb,CAAiBP,QAAQ,IAAI;IAC5B,MAAM;MAACE,KAAD;MAAQS,GAAR;MAAaqB,OAAb;MAAsBC,IAAtB;MAA4BvB,QAA5B;MAAsCE;IAAtC,IAAkDZ,QAAxD;;IACA,SAASkC,mBAAT,GAA+B;MAC7B5C,mBAAmB,CAACqB,GAAD,CAAnB;IACD;;IAED,oBACE,6BAAC,iBAAD;MACE,KAAK,EAAET,KADT;MAEE,QAAQ,EAAG,GAAE8B,OAAQ,IAAG7D,SAAS,CAAC,SAAD,CAAY,EAF/C;MAGE,QAAQ,EAAEuC,QAAQ,IAAIrB,gBAAgB,KAAKsB,GAH7C;MAIE,QAAQ,EAAEC,QAJZ;MAKE,OAAO,EAAEsB,mBALX;MAME,IAAI,EAAE,CAAC;QAACnB,KAAK,EAAEkB,IAAR;QAAcA,IAAI,EAAE;MAApB,CAAD,CANR;MAOE,GAAG,EAAEtB,GAPP;MAQE,eAAe,EAAC;IARlB,EADF;EAYD,CAlBA,CADH,CApCF,CANJ,CAPF,CADF;AA4ED,CAtJD;;AAwJAjC,qBAAqB,CAACV,YAAtB,GAAqC;EACnCG,SAAS,EAAEF,iBAAA,CAASC,iBAAT,CAA2BC;AADH,CAArC;AAIAO,qBAAqB,CAACN,SAAtB,2CAAkC;EAChCO,UAAU,EAAEN,kBAAA,CAAU8D,OAAV,CACV9D,kBAAA,CAAU+D,KAAV,CAAgB;IACdzB,GAAG,EAAEtC,kBAAA,CAAUE,MADD;IAEd2B,KAAK,EAAE7B,kBAAA,CAAUE,MAFH;IAGdyD,OAAO,EAAE3D,kBAAA,CAAUG,MAHL;IAIdyD,IAAI,EAAE5D,kBAAA,CAAUE;EAJF,CAAhB,CADU,CADoB;EAShCK,WAAW,EAAEP,kBAAA,CAAU8D,OAAV,CAAkB9D,kBAAA,CAAUE,MAA5B,CATmB;EAUhCM,MAAM,EAAER,kBAAA,CAAUC,IAVc;EAWhCQ,SAAS,EAAET,kBAAA,CAAUC,IAXW;EAYhCS,OAAO,EAAEV,kBAAA,CAAU+D,KAAV,CAAgB;IACvBnD,QAAQ,EAAEZ,kBAAA,CAAUI,IADG;IAEvBO,OAAO,EAAEX,kBAAA,CAAU8D,OAAV,CACP9D,kBAAA,CAAU+D,KAAV,cACKC,6BADL;MAEET,KAAK,EAAEvD,kBAAA,CAAUG;IAFnB,GADO;EAFc,CAAhB,CAZuB;EAqBhCU,QAAQ,EAAEb,kBAAA,CAAUI,IArBY;EAsBhCU,KAAK,EAAEd,kBAAA,CAAUI,IAtBe;EAuBhCW,OAAO,EAAEf,kBAAA,CAAUI;AAvBa,CAAlC;eA0BeC,qB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["FilterButton","props","context","active","filter","itemTotal","onClick","skin","primarySkinColor","Content","useCallback","style","skillFilterNumber","skillFilterNumberInActive","backgroundColor","convert","color","buttonProps","customStyle","transition","width","content","contextTypes","Provider","childContextTypes","translate","propTypes","PropTypes","bool","string","number","func","LearningPriorityModal","priorities","preselected","isOpen","isLoading","filters","options","onChange","onCancel","onAdd","onClose","selectedPriority","setSelectedPriority","useState","searchValue","setSearchValue","searchResults","setSearchResults","handleCancel","handleClose","handleSearch","value","priority","searchValueIncluded","title","handleSearchReset","useEffect","priorityList","useMemo","map","isPreSelectedPriority","some","selected","ref","disabled","footer","cancelButton","label","confirmButton","onConfirm","iconName","LearningPriorityContainer","loaderContainer","loader","searchWrapper","placeholder","filterWrapper","length","index","name","count","handleChange","filterButtonWrapper","priorityListWrapper","courses","type","handlePriorityClick","arrayOf","shape","oneOf","SelectOptionPropTypes"],"sources":["../../../src/molecule/learning-priority-modal/index.js"],"sourcesContent":["import React, {useEffect, useMemo, useState, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, assign, pick} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport BaseModal from '../base-modal';\nimport ListItem from '../../organism/list-item';\nimport ButtonLink from '../../atom/button-link';\nimport Loader from '../../atom/loader';\nimport Provider from '../../atom/provider';\nimport {SelectOptionPropTypes} from '../../atom/select';\nimport SearchForm from '../search-form';\nimport searchValueIncluded from '../../util/search-value-included';\nimport style from './style.css';\n\nconst FilterButton = (props, context) => {\n const {active, filter, itemTotal, onClick} = props;\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n\n const Content = useCallback(\n () => (\n <div>\n {filter}\n <span\n className={active ? style.skillFilterNumber : style.skillFilterNumberInActive}\n style={{\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : '#EAEAEB',\n color: active ? primarySkinColor : '#515161'\n }}\n >\n {itemTotal}\n </span>\n </div>\n ),\n [filter, itemTotal, active, primarySkinColor]\n );\n\n const buttonProps = {\n customStyle: {\n backgroundColor: active ? convert(`color(${primarySkinColor} a(0.07))`) : 'transparent',\n color: active ? primarySkinColor : '#9999A8',\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out',\n width: 'fit-content'\n },\n onClick,\n content: <Content />,\n 'data-name': 'change-skill-focus-button'\n };\n\n return <ButtonLink {...buttonProps} />;\n};\n\nFilterButton.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nFilterButton.propTypes = {\n active: PropTypes.bool,\n filter: PropTypes.string,\n itemTotal: PropTypes.number,\n onClick: PropTypes.func\n};\n\nconst LearningPriorityModal = (props, context) => {\n const {\n priorities,\n preselected,\n isOpen,\n isLoading,\n filters: {options, onChange},\n onCancel,\n onAdd,\n onClose\n } = props;\n const {translate} = context;\n\n const [selectedPriority, setSelectedPriority] = useState('');\n const [searchValue, setSearchValue] = useState('');\n const [searchResults, setSearchResults] = useState(priorities);\n\n const handleCancel = useCallback(() => {\n setSelectedPriority('');\n onCancel();\n }, [setSelectedPriority, onCancel]);\n\n const handleClose = useCallback(() => {\n setSelectedPriority('');\n onClose();\n }, [setSelectedPriority, onClose]);\n\n const handleSearch = useCallback(\n value => {\n setSearchValue(value);\n setSearchResults(priorities.filter(priority => searchValueIncluded(priority.title, value)));\n },\n [priorities, setSearchValue, setSearchResults]\n );\n\n const handleSearchReset = useCallback(() => {\n setSearchValue('');\n setSearchResults(priorities);\n }, [priorities, setSearchValue, setSearchResults]);\n\n useEffect(() => {\n setSearchResults(priorities);\n }, [priorities]);\n\n const priorityList = useMemo(() => {\n return searchResults.map(priority => {\n const isPreSelectedPriority = preselected.some(selected => selected === priority.ref);\n return assign(\n {\n selected: isPreSelectedPriority,\n disabled: isPreSelectedPriority\n },\n pick(['title', 'ref', 'type', 'courses'], priority)\n );\n });\n }, [searchResults, preselected]);\n\n const footer = useMemo(() => {\n return {\n cancelButton: {\n onCancel: handleCancel,\n label: translate('cancel')\n },\n confirmButton: {\n onConfirm: () => {\n onAdd(selectedPriority);\n onClose();\n },\n label: translate('add'),\n iconName: 'plus',\n disabled: isLoading || !selectedPriority\n }\n };\n }, [handleCancel, onAdd, translate, selectedPriority, isLoading]);\n\n if ((!isLoading && !priorities) || !isOpen) return null;\n\n return (\n <BaseModal\n title={translate('learning_priority_modal_title')}\n description={translate('learning_priority_modal_description')}\n isOpen={isOpen}\n onClose={handleClose}\n footer={footer}\n >\n <div className={style.LearningPriorityContainer}>\n {isLoading ? (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n ) : (\n <>\n <div className={style.searchWrapper}>\n <SearchForm\n search={{\n placeholder: translate('search_priority_place_holder'),\n value: searchValue,\n onChange: handleSearch\n }}\n onReset={handleSearchReset}\n />\n </div>\n <div className={style.filterWrapper}>\n {searchResults.length > 0\n ? options.map((filter, index) => {\n const {name, value, selected, count} = filter;\n\n function handleChange() {\n onChange(value);\n handleSearchReset();\n }\n\n if (count === 0) return null;\n\n return (\n <div key={index} className={style.filterButtonWrapper}>\n <FilterButton\n active={selected}\n filter={name}\n onClick={handleChange}\n itemTotal={count}\n />\n </div>\n );\n })\n : null}\n </div>\n <div className={style.priorityListWrapper}>\n {priorityList.map(priority => {\n const {title, ref, courses, type, selected, disabled} = priority;\n function handlePriorityClick() {\n setSelectedPriority(ref);\n }\n\n return (\n <ListItem\n title={title}\n subtitle={`${courses} ${translate('courses')}`}\n selected={selected || selectedPriority === ref}\n disabled={disabled}\n onClick={handlePriorityClick}\n tags={[{label: type, type: 'default'}]}\n key={ref}\n backgroundColor=\"skin\"\n />\n );\n })}\n </div>\n </>\n )}\n </div>\n </BaseModal>\n );\n};\n\nLearningPriorityModal.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nLearningPriorityModal.propTypes = {\n priorities: PropTypes.arrayOf(\n PropTypes.shape({\n ref: PropTypes.string,\n title: PropTypes.string,\n courses: PropTypes.number,\n type: PropTypes.oneOf(['skill', 'playlist', 'certificate'])\n })\n ),\n preselected: PropTypes.arrayOf(PropTypes.string),\n isOpen: PropTypes.bool,\n isLoading: PropTypes.bool,\n filters: PropTypes.shape({\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n ...SelectOptionPropTypes,\n count: PropTypes.number\n })\n )\n }),\n onCancel: PropTypes.func,\n onAdd: PropTypes.func,\n onClose: PropTypes.func\n};\n\nexport default LearningPriorityModal;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"names":[],"mappings":";AAOA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"names":[],"mappings":";AAOA,kFAoDC"}
|
|
@@ -35,6 +35,20 @@ const LearningPrioritySetupItem = (props, context) => {
|
|
|
35
35
|
translate
|
|
36
36
|
} = context;
|
|
37
37
|
const handleRemovePriority = (0, _react.useCallback)(() => onRemove(priorityRef, type), [priorityRef, type]);
|
|
38
|
+
|
|
39
|
+
const handleTypeTranslate = itemType => {
|
|
40
|
+
switch (itemType) {
|
|
41
|
+
case 'skill':
|
|
42
|
+
return translate('skill');
|
|
43
|
+
|
|
44
|
+
case 'playlist':
|
|
45
|
+
return translate('playlist');
|
|
46
|
+
|
|
47
|
+
case 'certificate':
|
|
48
|
+
return translate('certificate');
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
|
|
38
52
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
39
53
|
className: _style.default.container,
|
|
40
54
|
"aria-label": ariaLabel,
|
|
@@ -46,7 +60,7 @@ const LearningPrioritySetupItem = (props, context) => {
|
|
|
46
60
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
47
61
|
className: _style.default.title
|
|
48
62
|
}, title), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_tag.default, {
|
|
49
|
-
label:
|
|
63
|
+
label: handleTypeTranslate(type),
|
|
50
64
|
size: 'S'
|
|
51
65
|
}))), /*#__PURE__*/_react.default.createElement("span", {
|
|
52
66
|
className: _style.default.courses
|
|
@@ -78,7 +92,7 @@ LearningPrioritySetupItem.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
78
92
|
priorityRef: _propTypes.default.string,
|
|
79
93
|
title: _propTypes.default.string,
|
|
80
94
|
courses: _propTypes.default.number,
|
|
81
|
-
type: _propTypes.default.
|
|
95
|
+
type: _propTypes.default.oneOf(['skill', 'playlist', 'certificate']),
|
|
82
96
|
onRemove: _propTypes.default.func
|
|
83
97
|
} : {};
|
|
84
98
|
var _default = LearningPrioritySetupItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["LearningPrioritySetupItem","props","context","priorityRef","id","title","courses","type","ariaLabel","onRemove","translate","handleRemovePriority","useCallback","style","container","containerInfos","titleWrapper","width","backgroundColor","position","faIcon","name","color","size","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","number","func"],"sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst LearningPrioritySetupItem = (props, context) => {\n const {priorityRef, id, title, courses, type, 'aria-label': ariaLabel, onRemove} = props;\n\n const {translate} = context;\n\n const handleRemovePriority = useCallback(() => onRemove(priorityRef, type), [priorityRef, type]);\n\n return (\n <div\n className={style.container}\n aria-label={ariaLabel}\n data-name={`learning-priority-setup-item-${id}`}\n >\n <div className={style.containerInfos}>\n <div className={style.titleWrapper}>\n <div className={style.title}>{title}</div>\n <div>\n <Tag label={
|
|
1
|
+
{"version":3,"file":"index.js","names":["LearningPrioritySetupItem","props","context","priorityRef","id","title","courses","type","ariaLabel","onRemove","translate","handleRemovePriority","useCallback","handleTypeTranslate","itemType","style","container","containerInfos","titleWrapper","width","backgroundColor","position","faIcon","name","color","size","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","number","oneOf","func"],"sources":["../../../src/molecule/learning-priority-setup-item/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst LearningPrioritySetupItem = (props, context) => {\n const {priorityRef, id, title, courses, type, 'aria-label': ariaLabel, onRemove} = props;\n\n const {translate} = context;\n\n const handleRemovePriority = useCallback(() => onRemove(priorityRef, type), [priorityRef, type]);\n\n const handleTypeTranslate = itemType => {\n switch (itemType) {\n case 'skill':\n return translate('skill');\n case 'playlist':\n return translate('playlist');\n case 'certificate':\n return translate('certificate');\n }\n };\n\n return (\n <div\n className={style.container}\n aria-label={ariaLabel}\n data-name={`learning-priority-setup-item-${id}`}\n >\n <div className={style.containerInfos}>\n <div className={style.titleWrapper}>\n <div className={style.title}>{title}</div>\n <div>\n <Tag label={handleTypeTranslate(type)} size={'S'} />\n </div>\n </div>\n <span className={style.courses}>{`${courses} ${translate('courses')}`}</span>\n </div>\n <ButtonLink\n type=\"primary\"\n customStyle={{\n width: 'fit-content',\n backgroundColor: 'transparent'\n }}\n hoverBackgroundColor=\"#EAEAEB\"\n icon={{\n position: 'left',\n faIcon: {\n name: 'trash',\n color: '#515161',\n size: 16\n }\n }}\n onClick={handleRemovePriority}\n />\n </div>\n );\n};\n\nLearningPrioritySetupItem.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nLearningPrioritySetupItem.propTypes = {\n 'aria-label': PropTypes.string,\n id: PropTypes.string,\n priorityRef: PropTypes.string,\n title: PropTypes.string,\n courses: PropTypes.number,\n type: PropTypes.oneOf(['skill', 'playlist', 'certificate']),\n onRemove: PropTypes.func\n};\n\nexport default LearningPrioritySetupItem;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,MAAMA,yBAAyB,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACpD,MAAM;IAACC,WAAD;IAAcC,EAAd;IAAkBC,KAAlB;IAAyBC,OAAzB;IAAkCC,IAAlC;IAAwC,cAAcC,SAAtD;IAAiEC;EAAjE,IAA6ER,KAAnF;EAEA,MAAM;IAACS;EAAD,IAAcR,OAApB;EAEA,MAAMS,oBAAoB,GAAG,IAAAC,kBAAA,EAAY,MAAMH,QAAQ,CAACN,WAAD,EAAcI,IAAd,CAA1B,EAA+C,CAACJ,WAAD,EAAcI,IAAd,CAA/C,CAA7B;;EAEA,MAAMM,mBAAmB,GAAGC,QAAQ,IAAI;IACtC,QAAQA,QAAR;MACE,KAAK,OAAL;QACE,OAAOJ,SAAS,CAAC,OAAD,CAAhB;;MACF,KAAK,UAAL;QACE,OAAOA,SAAS,CAAC,UAAD,CAAhB;;MACF,KAAK,aAAL;QACE,OAAOA,SAAS,CAAC,aAAD,CAAhB;IANJ;EAQD,CATD;;EAWA,oBACE;IACE,SAAS,EAAEK,cAAA,CAAMC,SADnB;IAEE,cAAYR,SAFd;IAGE,aAAY,gCAA+BJ,EAAG;EAHhD,gBAKE;IAAK,SAAS,EAAEW,cAAA,CAAME;EAAtB,gBACE;IAAK,SAAS,EAAEF,cAAA,CAAMG;EAAtB,gBACE;IAAK,SAAS,EAAEH,cAAA,CAAMV;EAAtB,GAA8BA,KAA9B,CADF,eAEE,uDACE,6BAAC,YAAD;IAAK,KAAK,EAAEQ,mBAAmB,CAACN,IAAD,CAA/B;IAAuC,IAAI,EAAE;EAA7C,EADF,CAFF,CADF,eAOE;IAAM,SAAS,EAAEQ,cAAA,CAAMT;EAAvB,GAAkC,GAAEA,OAAQ,IAAGI,SAAS,CAAC,SAAD,CAAY,EAApE,CAPF,CALF,eAcE,6BAAC,mBAAD;IACE,IAAI,EAAC,SADP;IAEE,WAAW,EAAE;MACXS,KAAK,EAAE,aADI;MAEXC,eAAe,EAAE;IAFN,CAFf;IAME,oBAAoB,EAAC,SANvB;IAOE,IAAI,EAAE;MACJC,QAAQ,EAAE,MADN;MAEJC,MAAM,EAAE;QACNC,IAAI,EAAE,OADA;QAENC,KAAK,EAAE,SAFD;QAGNC,IAAI,EAAE;MAHA;IAFJ,CAPR;IAeE,OAAO,EAAEd;EAfX,EAdF,CADF;AAkCD,CApDD;;AAsDAX,yBAAyB,CAAC0B,YAA1B,GAAyC;EACvChB,SAAS,EAAEiB,iBAAA,CAASC,iBAAT,CAA2BlB;AADC,CAAzC;AAIAV,yBAAyB,CAAC6B,SAA1B,2CAAsC;EACpC,cAAcC,kBAAA,CAAUC,MADY;EAEpC3B,EAAE,EAAE0B,kBAAA,CAAUC,MAFsB;EAGpC5B,WAAW,EAAE2B,kBAAA,CAAUC,MAHa;EAIpC1B,KAAK,EAAEyB,kBAAA,CAAUC,MAJmB;EAKpCzB,OAAO,EAAEwB,kBAAA,CAAUE,MALiB;EAMpCzB,IAAI,EAAEuB,kBAAA,CAAUG,KAAV,CAAgB,CAAC,OAAD,EAAU,UAAV,EAAsB,aAAtB,CAAhB,CAN8B;EAOpCxB,QAAQ,EAAEqB,kBAAA,CAAUI;AAPgB,CAAtC;eAUelC,yB"}
|
|
@@ -97,9 +97,9 @@ const ListItem = ({
|
|
|
97
97
|
}, isPublished && contentType === 'certification' ? orderView : null, /*#__PURE__*/_react.default.createElement("div", {
|
|
98
98
|
className: _style.default.title,
|
|
99
99
|
title: title
|
|
100
|
-
}, title, /*#__PURE__*/_react.default.createElement("div", {
|
|
100
|
+
}, title, subtitle ? /*#__PURE__*/_react.default.createElement("div", {
|
|
101
101
|
className: _style.default.subtitle
|
|
102
|
-
}, subtitle)), dataColumnsView), /*#__PURE__*/_react.default.createElement("div", {
|
|
102
|
+
}, subtitle) : null), dataColumnsView), /*#__PURE__*/_react.default.createElement("div", {
|
|
103
103
|
className: _style.default.settings
|
|
104
104
|
}, tagsView, selected ? /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
105
105
|
iconName: "circle-check",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["ListItem","buttonLink","secondButtonLink","bulletPointMenuButton","tags","title","selected","subtitle","dataColumns","order","ariaLabel","disabled","contentType","isBulkStyle","isOverflowHidden","onClick","context","skin","primarySkinColor","mapUncapped","convert","cap","isPublished","selectedStyle","backgroundColor","tagSelectedStyle","color","tagsView","tag","index","type","style","dataColumnsView","dataColumn","className","label","orderView","undefined","classnames","wrapper","gridLayout","withSubtitle","dataColumnsWrapper","hiddenOverflowX","settings","faSize","wrapperSize","contextTypes","Provider","childContextTypes","translate","propTypes","PropTypes","string","isRequired","bool","arrayOf","shape","oneOf","dataName","icon","position","func","buttonAriaLabel","menuAriaLabel","buttons","number","id"],"sources":["../../../src/organism/list-item/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty, map, noop, get} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport Icon from '../../atom/icon';\nimport ButtonLink from '../../atom/button-link';\nimport BulletPointMenuButton from '../../molecule/bullet-point-menu-button';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from './style.css';\n\nconst ListItem = (\n {\n buttonLink,\n secondButtonLink,\n bulletPointMenuButton,\n tags,\n title,\n selected,\n subtitle,\n dataColumns,\n order,\n 'aria-label': ariaLabel,\n disabled = false,\n contentType,\n isBulkStyle = false,\n isOverflowHidden = false,\n onClick = noop\n },\n context\n) => {\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n const mapUncapped = map.convert({cap: false});\n let isPublished = false;\n\n const selectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.07))`)\n }\n : {};\n\n const tagSelectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.15))`),\n color: primarySkinColor\n }\n : {};\n\n const tagsView = mapUncapped((tag, index) => {\n isPublished = tag.type === 'success';\n return (\n <div key={index} className={style.tag}>\n <Tag {...tag} customStyle={tagSelectedStyle} />\n </div>\n );\n })(tags);\n\n const dataColumnsView = mapUncapped((dataColumn, index) => {\n return (\n <div key={index} className={style[dataColumn.className]}>\n {dataColumn.type ? <Tag {...dataColumn} /> : dataColumn.label}\n </div>\n );\n })(dataColumns);\n\n const orderView =\n order !== null && order !== undefined ? (\n <div className={style.order} aria-label={ariaLabel}>\n {order + 1}\n </div>\n ) : null;\n\n return (\n <div\n className={classnames(\n style.wrapper,\n isBulkStyle && style.gridLayout,\n subtitle && style.withSubtitle,\n disabled && style.disabled\n )}\n onClick={!disabled ? onClick : undefined}\n style={selectedStyle}\n >\n <div\n className={classnames(style.dataColumnsWrapper, isOverflowHidden && style.hiddenOverflowX)}\n >\n {isPublished && contentType === 'certification' ? orderView : null}\n <div className={style.title} title={title}>\n {title}\n <div className={style.subtitle}>{subtitle}</div>\n </div>\n {dataColumnsView}\n </div>\n\n <div className={style.settings}>\n {tagsView}\n {selected ? (\n <Icon\n iconName=\"circle-check\"\n iconColor={primarySkinColor}\n backgroundColor={'#ffffff'}\n size={{faSize: 16, wrapperSize: 16}}\n />\n ) : null}\n {buttonLink ? <ButtonLink {...buttonLink} /> : null}\n {secondButtonLink ? <ButtonLink {...secondButtonLink} /> : null}\n {!isEmpty(bulletPointMenuButton) ? (\n <BulletPointMenuButton {...bulletPointMenuButton} />\n ) : null}\n </div>\n </div>\n );\n};\n\nListItem.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nListItem.propTypes = {\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string,\n selected: PropTypes.bool,\n dataColumns: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default']),\n className: PropTypes.oneOf(['cell', 'title'])\n })\n ),\n buttonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n secondButtonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n bulletPointMenuButton: PropTypes.shape({\n buttonAriaLabel: PropTypes.string,\n menuAriaLabel: PropTypes.string,\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n 'data-name': PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n onClick: PropTypes.func\n })\n ),\n onClick: PropTypes.func\n }),\n tags: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default'])\n })\n ),\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n isBulkStyle: PropTypes.bool,\n isOverflowHidden: PropTypes.bool,\n order: PropTypes.number,\n 'aria-label': PropTypes.string,\n contentType: PropTypes.string,\n id: PropTypes.string\n};\n\nexport default ListItem;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["ListItem","buttonLink","secondButtonLink","bulletPointMenuButton","tags","title","selected","subtitle","dataColumns","order","ariaLabel","disabled","contentType","isBulkStyle","isOverflowHidden","onClick","context","skin","primarySkinColor","mapUncapped","convert","cap","isPublished","selectedStyle","backgroundColor","tagSelectedStyle","color","tagsView","tag","index","type","style","dataColumnsView","dataColumn","className","label","orderView","undefined","classnames","wrapper","gridLayout","withSubtitle","dataColumnsWrapper","hiddenOverflowX","settings","faSize","wrapperSize","contextTypes","Provider","childContextTypes","translate","propTypes","PropTypes","string","isRequired","bool","arrayOf","shape","oneOf","dataName","icon","position","func","buttonAriaLabel","menuAriaLabel","buttons","number","id"],"sources":["../../../src/organism/list-item/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty, map, noop, get} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport Provider from '../../atom/provider';\nimport Tag from '../../atom/tag';\nimport Icon from '../../atom/icon';\nimport ButtonLink from '../../atom/button-link';\nimport BulletPointMenuButton from '../../molecule/bullet-point-menu-button';\n// eslint-disable-next-line css-modules/no-unused-class\nimport style from './style.css';\n\nconst ListItem = (\n {\n buttonLink,\n secondButtonLink,\n bulletPointMenuButton,\n tags,\n title,\n selected,\n subtitle,\n dataColumns,\n order,\n 'aria-label': ariaLabel,\n disabled = false,\n contentType,\n isBulkStyle = false,\n isOverflowHidden = false,\n onClick = noop\n },\n context\n) => {\n const {skin} = context;\n const primarySkinColor = get('common.primary', skin);\n const mapUncapped = map.convert({cap: false});\n let isPublished = false;\n\n const selectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.07))`)\n }\n : {};\n\n const tagSelectedStyle = selected\n ? {\n backgroundColor: convert(`color(${primarySkinColor} a(0.15))`),\n color: primarySkinColor\n }\n : {};\n\n const tagsView = mapUncapped((tag, index) => {\n isPublished = tag.type === 'success';\n return (\n <div key={index} className={style.tag}>\n <Tag {...tag} customStyle={tagSelectedStyle} />\n </div>\n );\n })(tags);\n\n const dataColumnsView = mapUncapped((dataColumn, index) => {\n return (\n <div key={index} className={style[dataColumn.className]}>\n {dataColumn.type ? <Tag {...dataColumn} /> : dataColumn.label}\n </div>\n );\n })(dataColumns);\n\n const orderView =\n order !== null && order !== undefined ? (\n <div className={style.order} aria-label={ariaLabel}>\n {order + 1}\n </div>\n ) : null;\n\n return (\n <div\n className={classnames(\n style.wrapper,\n isBulkStyle && style.gridLayout,\n subtitle && style.withSubtitle,\n disabled && style.disabled\n )}\n onClick={!disabled ? onClick : undefined}\n style={selectedStyle}\n >\n <div\n className={classnames(style.dataColumnsWrapper, isOverflowHidden && style.hiddenOverflowX)}\n >\n {isPublished && contentType === 'certification' ? orderView : null}\n <div className={style.title} title={title}>\n {title}\n {subtitle ? <div className={style.subtitle}>{subtitle}</div> : null}\n </div>\n {dataColumnsView}\n </div>\n\n <div className={style.settings}>\n {tagsView}\n {selected ? (\n <Icon\n iconName=\"circle-check\"\n iconColor={primarySkinColor}\n backgroundColor={'#ffffff'}\n size={{faSize: 16, wrapperSize: 16}}\n />\n ) : null}\n {buttonLink ? <ButtonLink {...buttonLink} /> : null}\n {secondButtonLink ? <ButtonLink {...secondButtonLink} /> : null}\n {!isEmpty(bulletPointMenuButton) ? (\n <BulletPointMenuButton {...bulletPointMenuButton} />\n ) : null}\n </div>\n </div>\n );\n};\n\nListItem.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nListItem.propTypes = {\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string,\n selected: PropTypes.bool,\n dataColumns: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default']),\n className: PropTypes.oneOf(['cell', 'title'])\n })\n ),\n buttonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n secondButtonLink: PropTypes.shape({\n type: PropTypes.string,\n label: PropTypes.string,\n ariaLabel: PropTypes.string,\n dataName: PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.string,\n type: PropTypes.string\n }),\n onClick: PropTypes.func\n }),\n bulletPointMenuButton: PropTypes.shape({\n buttonAriaLabel: PropTypes.string,\n menuAriaLabel: PropTypes.string,\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n 'data-name': PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n onClick: PropTypes.func\n })\n ),\n onClick: PropTypes.func\n }),\n tags: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n type: PropTypes.oneOf(['success', 'failure', 'warning', 'progress', 'default'])\n })\n ),\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n isBulkStyle: PropTypes.bool,\n isOverflowHidden: PropTypes.bool,\n order: PropTypes.number,\n 'aria-label': PropTypes.string,\n contentType: PropTypes.string,\n id: PropTypes.string\n};\n\nexport default ListItem;\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coorpacademy/components",
|
|
3
|
-
"version": "11.32.20-alpha.
|
|
3
|
+
"version": "11.32.20-alpha.33+56f780785",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
@@ -177,5 +177,5 @@
|
|
|
177
177
|
"last 2 versions",
|
|
178
178
|
"IE 11"
|
|
179
179
|
],
|
|
180
|
-
"gitHead": "
|
|
180
|
+
"gitHead": "56f780785e5c1c66348657cd462b3e435d43f341"
|
|
181
181
|
}
|