@coorpacademy/components 11.40.2-alpha.5 → 11.40.2
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/dashboard/cards-list/index.d.ts.map +1 -1
- package/es/molecule/dashboard/cards-list/index.js +4 -12
- package/es/molecule/dashboard/cards-list/index.js.map +1 -1
- package/es/template/back-office/brand-update/index.js +1 -1
- package/es/template/back-office/brand-update/index.js.map +1 -1
- package/es/template/common/search-page/index.d.ts +0 -99
- package/es/template/common/search-page/index.d.ts.map +1 -1
- package/es/template/common/search-page/index.js +5 -88
- package/es/template/common/search-page/index.js.map +1 -1
- package/es/template/common/search-page/style.css +0 -78
- package/lib/molecule/dashboard/cards-list/index.d.ts.map +1 -1
- package/lib/molecule/dashboard/cards-list/index.js +4 -12
- package/lib/molecule/dashboard/cards-list/index.js.map +1 -1
- package/lib/template/back-office/brand-update/index.js +1 -1
- package/lib/template/back-office/brand-update/index.js.map +1 -1
- package/lib/template/common/search-page/index.d.ts +0 -99
- package/lib/template/common/search-page/index.d.ts.map +1 -1
- package/lib/template/common/search-page/index.js +5 -88
- package/lib/template/common/search-page/index.js.map +1 -1
- package/lib/template/common/search-page/style.css +0 -78
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/cards-list/index.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/cards-list/index.js"],"names":[],"mappings":";AAuFA;IACE;;;OAGG;IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAqBE;IAEF;;;;;;;;;;;;;;;;;;;;;;;MAGE;IAEF,wBAkCC;IA/BC;;;;;;;;MAQC;IAED,0DAAgE;IAsHlE,qBAiBC;IAED,qBAGC;IAED,sBAGC;IAED,0BASC;IAvJC,uEAA6D;IAyJ/D,mCAIC;IA5DD,oCAMC;IAGD,sCAIC;IA5DD,qBAGC;IAnCD,0BAMC;IAED,2BAYC;IAED,6BAOC;IASD,wCAuCC;IAGC,kBAA2B;IA6D7B,sBAuGC;CACF"}
|
|
@@ -18,8 +18,6 @@ import { NovaSolidContentContentBook1 as LearnerIcon, NovaCompositionCoorpacadem
|
|
|
18
18
|
import Provider from '../../../atom/provider';
|
|
19
19
|
import Card, { cardPropTypes } from '../../card';
|
|
20
20
|
import LearningPriorityCard from '../../learning-priority-card';
|
|
21
|
-
import CertificationCard from '../../certification-card';
|
|
22
|
-
import LearnerSkillCard from '../../learner-skill-card';
|
|
23
21
|
import Icon from '../../../atom/icon';
|
|
24
22
|
import style from './style.css';
|
|
25
23
|
const ShowMoreLink = props => {
|
|
@@ -285,18 +283,12 @@ class CardsList extends React.PureComponent {
|
|
|
285
283
|
const dark = _getOr('#90A4AE', 'common.dark', skin);
|
|
286
284
|
const titleStyle = onShowMore ? style.titleLink : style.title;
|
|
287
285
|
const cardsView = _pipe(_toPairs, _map(([key, card]) => {
|
|
288
|
-
let CardComponent = Card;
|
|
289
|
-
if (card && type === 'learningPrioritiesCards') {
|
|
290
|
-
CardComponent = LearningPriorityCard;
|
|
291
|
-
} else if (card && type === 'skills') {
|
|
292
|
-
CardComponent = LearnerSkillCard;
|
|
293
|
-
} else if (card && type === 'certifications') {
|
|
294
|
-
CardComponent = CertificationCard;
|
|
295
|
-
}
|
|
296
286
|
return /*#__PURE__*/React.createElement("div", {
|
|
297
287
|
className: style.card,
|
|
298
288
|
key: key
|
|
299
|
-
}, /*#__PURE__*/React.createElement(
|
|
289
|
+
}, card && type === 'learningPrioritiesCards' ? /*#__PURE__*/React.createElement(LearningPriorityCard, _extends({}, card, {
|
|
290
|
+
dataName: `${dataName}-${key}`
|
|
291
|
+
})) : /*#__PURE__*/React.createElement(Card, _extends({}, card, {
|
|
300
292
|
dataName: `${dataName}-${key}`
|
|
301
293
|
})));
|
|
302
294
|
}))(cards);
|
|
@@ -373,7 +365,7 @@ CardsList.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
373
365
|
showMoreOnLeftAriaLabel: PropTypes.string,
|
|
374
366
|
showMoreOnRightAriaLabel: PropTypes.string
|
|
375
367
|
}),
|
|
376
|
-
type: PropTypes.oneOf(['cards', 'learningPrioritiesCards'
|
|
368
|
+
type: PropTypes.oneOf(['cards', 'learningPrioritiesCards']),
|
|
377
369
|
// eslint-disable-next-line react/forbid-prop-types
|
|
378
370
|
testingSizes: PropTypes.any
|
|
379
371
|
} : {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","NovaSolidContentContentBook1","LearnerIcon","NovaCompositionCoorpacademyTimer","TimerIcon","Provider","Card","cardPropTypes","LearningPriorityCard","CertificationCard","LearnerSkillCard","Icon","style","ShowMoreLink","props","onShowMore","showMore","className","createElement","onClick","contextTypes","skin","childContextTypes","propTypes","process","env","NODE_ENV","func","string","IconView","context","contentType","ICONS","chapter","course","dark","_get","IconType","color","icon","computeWidth","card","type","nextPage","page","maxPages","CardsList","PureComponent","translate","constructor","state","actualPage","scrollLeft","offsetWidth","possiblePositions","possiblePages","cardsWidth","handleScroll_","_throttle","handleScroll","bind","handleOnLeft","handleOnRight","scrollTo","updateState","_debounce","updatePages","setCardsWrapper","getScrollWidth","handleResize","testingSizes","componentDidMount","cardsWrapper","addEventListener","window","componentDidUpdate","cards","newCardsWidth","_pipe","_map","_sum","updatePaginationState","setState","componentWillUnmount","removeEventListener","cancel","wrapperWidth","wrapperScrollLeft","cardWidths","_reduce","cardPositions","accWidth","cardWidth","_head","acc","pageIndex","accPageWidth","pageWidth","skip","_findIndex","position","_last","element","index","onScroll","leftBound","rightBound","leftIndex","rightIndex","_findLastIndex","limit","indexOfNextFirstCard","indexOf","nextPosition","render","title","customStyle","dataName","ariaLabel","_getOr","titleStyle","titleLink","cardsView","_toPairs","key","CardComponent","_extends","arrowIconProps","preset","borderRadius","showMoreOnLeftAriaLabel","arrows","arrowsWrapper","arrow","iconName","titleView","titleNode","hasPages","showMoreView","showMoreBar","switchPagesView","pagingWrapper","wrapper","list","header","ref","oneOfType","node","arrayOf","shape","objectOf","showMoreOnRightAriaLabel","oneOf","any"],"sources":["../../../../src/molecule/dashboard/cards-list/index.js"],"sourcesContent":["import React from 'react';\nimport {\n debounce,\n throttle,\n get,\n getOr,\n map,\n sum,\n last,\n pipe,\n toPairs,\n reduce,\n head,\n findIndex,\n findLastIndex\n} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport {\n NovaSolidContentContentBook1 as LearnerIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Card, {cardPropTypes} from '../../card';\nimport LearningPriorityCard from '../../learning-priority-card';\nimport CertificationCard from '../../certification-card';\nimport LearnerSkillCard from '../../learner-skill-card';\nimport Icon from '../../../atom/icon';\nimport style from './style.css';\n\nconst ShowMoreLink = props => {\n const {onShowMore, showMore, className} = props;\n return (\n <div className={className} onClick={onShowMore}>\n {showMore}\n </div>\n );\n};\n\nShowMoreLink.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nShowMoreLink.propTypes = {\n onShowMore: PropTypes.func,\n showMore: PropTypes.string,\n className: PropTypes.string\n};\n\nconst IconView = (props, context) => {\n const {skin} = context;\n const {contentType} = props;\n const ICONS = {\n chapter: TimerIcon,\n course: LearnerIcon\n };\n\n if (!contentType) {\n return null;\n }\n\n const dark = get('common.dark', skin);\n const IconType = ICONS[contentType];\n\n return (\n <div>\n <IconType style={{color: dark}} className={style.icon} data-contenttype={contentType} />\n </div>\n );\n};\n\nconst computeWidth = card => {\n switch (card && card.type) {\n case 'chapter':\n return 219;\n default:\n return 272;\n }\n};\n\nconst nextPage = (page, maxPages) => {\n if (page < 0) return maxPages;\n if (page > maxPages) return 0;\n return page;\n};\n\nIconView.propTypes = {\n contentType: PropTypes.string\n};\n\nclass CardsList extends React.PureComponent {\n /**\n * IMPORTANT: update prop-types.ts too, 1st a migration of tests\n * is intended, then, a TS + functional refactor is planned.\n */\n static propTypes = {\n contentType: PropTypes.string,\n dataName: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.node, PropTypes.string]),\n showMore: PropTypes.string,\n cards: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape(cardPropTypes),\n PropTypes.shape(LearningPriorityCard.propTypes)\n ])\n ),\n customStyle: PropTypes.objectOf(PropTypes.string),\n onScroll: PropTypes.func,\n onShowMore: PropTypes.func,\n 'arrows-aria-label': PropTypes.shape({\n showMoreOnLeftAriaLabel: PropTypes.string,\n showMoreOnRightAriaLabel: PropTypes.string\n }),\n type: PropTypes.oneOf(['cards', 'learningPrioritiesCards', 'skills', 'certifications']),\n // eslint-disable-next-line react/forbid-prop-types\n testingSizes: PropTypes.any\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n actualPage: 0,\n maxPages: 0,\n scrollLeft: 0,\n offsetWidth: 0,\n possiblePositions: [],\n possiblePages: [],\n cardsWidth: 0\n };\n\n this.handleScroll_ = throttle(200, this.handleScroll.bind(this));\n this.handleScroll = this.handleScroll.bind(this);\n this.handleOnLeft = this.handleOnLeft.bind(this);\n this.handleOnRight = this.handleOnRight.bind(this);\n this.scrollTo = this.scrollTo.bind(this);\n this.updateState = debounce(200, this.updatePages.bind(this));\n this.updatePages = this.updatePages.bind(this);\n this.setCardsWrapper = this.setCardsWrapper.bind(this);\n this.getScrollWidth = this.getScrollWidth.bind(this);\n this.handleResize = this.handleResize.bind(this);\n\n // for testing purposes only - no other way to test this polluted component\n if (props.testingSizes) {\n const {offsetWidth, scrollLeft, maxPages, possiblePages, possiblePositions} =\n props.testingSizes;\n this.state.offsetWidth = offsetWidth;\n this.state.scrollLeft = scrollLeft;\n this.state.maxPages = maxPages;\n this.state.possiblePages = possiblePages;\n this.state.possiblePositions = possiblePositions;\n }\n }\n\n componentDidMount() {\n this.cardsWrapper.addEventListener('scroll', this.handleScroll_);\n\n if (window) {\n window.addEventListener('resize', this.handleResize);\n }\n }\n\n componentDidUpdate() {\n const {cards = []} = this.props;\n const {offsetWidth, cardsWidth} = this.state;\n const newCardsWidth = pipe(map(computeWidth), sum)(cards);\n\n if (newCardsWidth !== cardsWidth && offsetWidth !== 0) {\n this.updatePaginationState(cards);\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({\n cardsWidth: newCardsWidth\n });\n }\n }\n\n componentWillUnmount() {\n this.cardsWrapper.removeEventListener('scroll', this.handleScroll_);\n\n if (window) {\n window.removeEventListener('resize', this.handleResize);\n }\n this.updateState.cancel();\n }\n\n /* istanbul ignore next */\n handleResize() {\n const {cards = []} = this.props;\n this.updatePaginationState(cards);\n }\n\n /* istanbul ignore next */\n updatePaginationState(cards) {\n const {offsetWidth: wrapperWidth, scrollLeft: wrapperScrollLeft} = this.state;\n\n const cardWidths = map(computeWidth)(cards);\n\n const possiblePositions = pipe(\n reduce(\n ([cardPositions, accWidth], cardWidth) => [\n [...cardPositions, accWidth],\n cardWidth + accWidth\n ],\n [[], 0]\n ),\n head\n )(cardWidths);\n\n const possiblePages = pipe(\n reduce(\n ([acc, pageIndex, accPageWidth], cardWidth) => {\n const pageWidth = accPageWidth + cardWidth;\n if (pageWidth > wrapperWidth) {\n return [[...acc, pageIndex + 1], pageIndex + 1, cardWidth];\n }\n return [[...acc, pageIndex], pageIndex, pageWidth];\n },\n [[], 0, 0]\n ),\n head\n )(cardWidths);\n\n const skip = findIndex(position => position >= wrapperScrollLeft, possiblePositions);\n const actualPage = possiblePages[skip + 1];\n\n this.setState({\n possiblePositions,\n possiblePages,\n maxPages: last(possiblePages),\n actualPage\n });\n }\n\n setCardsWrapper(element) {\n this.cardsWrapper = element;\n this.setState({\n scrollLeft: this.cardsWrapper?.scrollLeft,\n offsetWidth: this.cardsWrapper?.offsetWidth\n });\n }\n\n /* istanbul ignore next */\n getScrollWidth(index) {\n const {cards = []} = this.props;\n const card = cards[index];\n return computeWidth(card);\n }\n\n /* istanbul ignore next */\n handleScroll() {\n const scrollLeft = this.cardsWrapper?.scrollLeft;\n this.setState({scrollLeft});\n\n const {possiblePositions, offsetWidth} = this.state;\n const {onScroll} = this.props;\n if (onScroll) {\n const leftBound = scrollLeft;\n const rightBound = scrollLeft + offsetWidth;\n\n const leftIndex = findIndex(position => position > leftBound, possiblePositions) - 1;\n const rightIndex = findLastIndex(position => position < rightBound, possiblePositions);\n const skip = leftIndex;\n const limit = rightIndex - skip + 1;\n\n onScroll(skip, limit);\n }\n }\n\n handleOnLeft() {\n const {actualPage, maxPages} = this.state;\n this.scrollTo(nextPage(actualPage - 1, maxPages));\n }\n\n handleOnRight() {\n const {actualPage, maxPages} = this.state;\n this.scrollTo(nextPage(actualPage + 1, maxPages));\n }\n\n scrollTo(page) {\n const {possiblePages, possiblePositions} = this.state;\n const indexOfNextFirstCard = possiblePages.indexOf(page);\n const nextPosition = possiblePositions[indexOfNextFirstCard];\n this.cardsWrapper.scrollLeft = nextPosition;\n this.updatePages(page);\n this.setState({\n scrollLeft: nextPosition\n });\n }\n\n updatePages(actualPage) {\n this.setState({\n actualPage\n });\n }\n\n render() {\n const {\n title,\n showMore,\n cards,\n customStyle = {},\n onShowMore,\n dataName,\n contentType,\n 'arrows-aria-label': ariaLabel = {},\n type\n } = this.props;\n const {skin} = this.context;\n const {maxPages} = this.state;\n const dark = getOr('#90A4AE', 'common.dark', skin);\n const titleStyle = onShowMore ? style.titleLink : style.title;\n const cardsView = pipe(\n toPairs,\n map(([key, card]) => {\n let CardComponent = Card;\n\n if (card && type === 'learningPrioritiesCards') {\n CardComponent = LearningPriorityCard;\n } else if (card && type === 'skills') {\n CardComponent = LearnerSkillCard;\n } else if (card && type === 'certifications') {\n CardComponent = CertificationCard;\n }\n\n return (\n <div className={style.card} key={key}>\n <CardComponent {...card} dataName={`${dataName}-${key}`} />\n </div>\n );\n })\n )(cards);\n\n const arrowIconProps = {\n color: dark,\n preset: 's',\n borderRadius: '8px',\n ariaLabel: ariaLabel.showMoreOnLeftAriaLabel\n };\n\n const arrows = (\n <div className={style.arrowsWrapper}>\n <div className={style.arrow} onClick={this.handleOnLeft} data-name=\"card-list-left-arrow\">\n <Icon {...arrowIconProps} iconName=\"arrow-left\" />\n </div>\n <div className={style.arrow} onClick={this.handleOnRight} data-name=\"card-list-right-arrow\">\n <Icon {...arrowIconProps} iconName=\"arrow-right\" />\n </div>\n </div>\n );\n\n const titleView =\n typeof title === 'string' ? (\n <span data-name=\"title\" className={titleStyle} onClick={onShowMore}>\n <IconView contentType={contentType} />\n <span>{title}</span>\n </span>\n ) : (\n <span className={style.titleNode}>{title}</span>\n );\n\n const hasPages = maxPages > 0;\n const showMoreView =\n hasPages && showMore && onShowMore ? (\n <ShowMoreLink\n className={hasPages ? style.showMoreBar : style.showMore}\n onShowMore={onShowMore}\n showMore={showMore}\n />\n ) : null;\n\n const switchPagesView = hasPages ? (\n <div className={style.pagingWrapper}>\n {showMoreView}\n {arrows}\n </div>\n ) : null;\n\n return (\n <div\n className={style.wrapper}\n style={customStyle}\n data-name=\"cardsList\"\n data-max-pages={`${maxPages}`}\n // eslint-disable-next-line react/destructuring-assignment\n data-actual-page={`${this.state.actualPage}`}\n data-scroll-left={this.cardsWrapper?.scrollLeft}\n >\n <div className={style.list}>\n <div>\n <div data-name=\"header\" className={style.header}>\n {titleView}\n {switchPagesView}\n </div>\n <div\n className={style.cards}\n data-testid=\"cards-view-wrapper\"\n ref={this.setCardsWrapper}\n >\n {cardsView}\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default CardsList;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","NovaSolidContentContentBook1","LearnerIcon","NovaCompositionCoorpacademyTimer","TimerIcon","Provider","Card","cardPropTypes","LearningPriorityCard","Icon","style","ShowMoreLink","props","onShowMore","showMore","className","createElement","onClick","contextTypes","skin","childContextTypes","propTypes","process","env","NODE_ENV","func","string","IconView","context","contentType","ICONS","chapter","course","dark","_get","IconType","color","icon","computeWidth","card","type","nextPage","page","maxPages","CardsList","PureComponent","translate","constructor","state","actualPage","scrollLeft","offsetWidth","possiblePositions","possiblePages","cardsWidth","handleScroll_","_throttle","handleScroll","bind","handleOnLeft","handleOnRight","scrollTo","updateState","_debounce","updatePages","setCardsWrapper","getScrollWidth","handleResize","testingSizes","componentDidMount","cardsWrapper","addEventListener","window","componentDidUpdate","cards","newCardsWidth","_pipe","_map","_sum","updatePaginationState","setState","componentWillUnmount","removeEventListener","cancel","wrapperWidth","wrapperScrollLeft","cardWidths","_reduce","cardPositions","accWidth","cardWidth","_head","acc","pageIndex","accPageWidth","pageWidth","skip","_findIndex","position","_last","element","index","onScroll","leftBound","rightBound","leftIndex","rightIndex","_findLastIndex","limit","indexOfNextFirstCard","indexOf","nextPosition","render","title","customStyle","dataName","ariaLabel","_getOr","titleStyle","titleLink","cardsView","_toPairs","key","_extends","arrowIconProps","preset","borderRadius","showMoreOnLeftAriaLabel","arrows","arrowsWrapper","arrow","iconName","titleView","titleNode","hasPages","showMoreView","showMoreBar","switchPagesView","pagingWrapper","wrapper","list","header","ref","oneOfType","node","arrayOf","shape","objectOf","showMoreOnRightAriaLabel","oneOf","any"],"sources":["../../../../src/molecule/dashboard/cards-list/index.js"],"sourcesContent":["import React from 'react';\nimport {\n debounce,\n throttle,\n get,\n getOr,\n map,\n sum,\n last,\n pipe,\n toPairs,\n reduce,\n head,\n findIndex,\n findLastIndex\n} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport {\n NovaSolidContentContentBook1 as LearnerIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Card, {cardPropTypes} from '../../card';\nimport LearningPriorityCard from '../../learning-priority-card';\nimport Icon from '../../../atom/icon';\nimport style from './style.css';\n\nconst ShowMoreLink = props => {\n const {onShowMore, showMore, className} = props;\n return (\n <div className={className} onClick={onShowMore}>\n {showMore}\n </div>\n );\n};\n\nShowMoreLink.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nShowMoreLink.propTypes = {\n onShowMore: PropTypes.func,\n showMore: PropTypes.string,\n className: PropTypes.string\n};\n\nconst IconView = (props, context) => {\n const {skin} = context;\n const {contentType} = props;\n const ICONS = {\n chapter: TimerIcon,\n course: LearnerIcon\n };\n\n if (!contentType) {\n return null;\n }\n\n const dark = get('common.dark', skin);\n const IconType = ICONS[contentType];\n\n return (\n <div>\n <IconType style={{color: dark}} className={style.icon} data-contenttype={contentType} />\n </div>\n );\n};\n\nconst computeWidth = card => {\n switch (card && card.type) {\n case 'chapter':\n return 219;\n default:\n return 272;\n }\n};\n\nconst nextPage = (page, maxPages) => {\n if (page < 0) return maxPages;\n if (page > maxPages) return 0;\n return page;\n};\n\nIconView.propTypes = {\n contentType: PropTypes.string\n};\n\nclass CardsList extends React.PureComponent {\n /**\n * IMPORTANT: update prop-types.ts too, 1st a migration of tests\n * is intended, then, a TS + functional refactor is planned.\n */\n static propTypes = {\n contentType: PropTypes.string,\n dataName: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.node, PropTypes.string]),\n showMore: PropTypes.string,\n cards: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape(cardPropTypes),\n PropTypes.shape(LearningPriorityCard.propTypes)\n ])\n ),\n customStyle: PropTypes.objectOf(PropTypes.string),\n onScroll: PropTypes.func,\n onShowMore: PropTypes.func,\n 'arrows-aria-label': PropTypes.shape({\n showMoreOnLeftAriaLabel: PropTypes.string,\n showMoreOnRightAriaLabel: PropTypes.string\n }),\n type: PropTypes.oneOf(['cards', 'learningPrioritiesCards']),\n // eslint-disable-next-line react/forbid-prop-types\n testingSizes: PropTypes.any\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n actualPage: 0,\n maxPages: 0,\n scrollLeft: 0,\n offsetWidth: 0,\n possiblePositions: [],\n possiblePages: [],\n cardsWidth: 0\n };\n\n this.handleScroll_ = throttle(200, this.handleScroll.bind(this));\n this.handleScroll = this.handleScroll.bind(this);\n this.handleOnLeft = this.handleOnLeft.bind(this);\n this.handleOnRight = this.handleOnRight.bind(this);\n this.scrollTo = this.scrollTo.bind(this);\n this.updateState = debounce(200, this.updatePages.bind(this));\n this.updatePages = this.updatePages.bind(this);\n this.setCardsWrapper = this.setCardsWrapper.bind(this);\n this.getScrollWidth = this.getScrollWidth.bind(this);\n this.handleResize = this.handleResize.bind(this);\n\n // for testing purposes only - no other way to test this polluted component\n if (props.testingSizes) {\n const {offsetWidth, scrollLeft, maxPages, possiblePages, possiblePositions} =\n props.testingSizes;\n this.state.offsetWidth = offsetWidth;\n this.state.scrollLeft = scrollLeft;\n this.state.maxPages = maxPages;\n this.state.possiblePages = possiblePages;\n this.state.possiblePositions = possiblePositions;\n }\n }\n\n componentDidMount() {\n this.cardsWrapper.addEventListener('scroll', this.handleScroll_);\n\n if (window) {\n window.addEventListener('resize', this.handleResize);\n }\n }\n\n componentDidUpdate() {\n const {cards = []} = this.props;\n const {offsetWidth, cardsWidth} = this.state;\n const newCardsWidth = pipe(map(computeWidth), sum)(cards);\n\n if (newCardsWidth !== cardsWidth && offsetWidth !== 0) {\n this.updatePaginationState(cards);\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({\n cardsWidth: newCardsWidth\n });\n }\n }\n\n componentWillUnmount() {\n this.cardsWrapper.removeEventListener('scroll', this.handleScroll_);\n\n if (window) {\n window.removeEventListener('resize', this.handleResize);\n }\n this.updateState.cancel();\n }\n\n /* istanbul ignore next */\n handleResize() {\n const {cards = []} = this.props;\n this.updatePaginationState(cards);\n }\n\n /* istanbul ignore next */\n updatePaginationState(cards) {\n const {offsetWidth: wrapperWidth, scrollLeft: wrapperScrollLeft} = this.state;\n\n const cardWidths = map(computeWidth)(cards);\n\n const possiblePositions = pipe(\n reduce(\n ([cardPositions, accWidth], cardWidth) => [\n [...cardPositions, accWidth],\n cardWidth + accWidth\n ],\n [[], 0]\n ),\n head\n )(cardWidths);\n\n const possiblePages = pipe(\n reduce(\n ([acc, pageIndex, accPageWidth], cardWidth) => {\n const pageWidth = accPageWidth + cardWidth;\n if (pageWidth > wrapperWidth) {\n return [[...acc, pageIndex + 1], pageIndex + 1, cardWidth];\n }\n return [[...acc, pageIndex], pageIndex, pageWidth];\n },\n [[], 0, 0]\n ),\n head\n )(cardWidths);\n\n const skip = findIndex(position => position >= wrapperScrollLeft, possiblePositions);\n const actualPage = possiblePages[skip + 1];\n\n this.setState({\n possiblePositions,\n possiblePages,\n maxPages: last(possiblePages),\n actualPage\n });\n }\n\n setCardsWrapper(element) {\n this.cardsWrapper = element;\n this.setState({\n scrollLeft: this.cardsWrapper?.scrollLeft,\n offsetWidth: this.cardsWrapper?.offsetWidth\n });\n }\n\n /* istanbul ignore next */\n getScrollWidth(index) {\n const {cards = []} = this.props;\n const card = cards[index];\n return computeWidth(card);\n }\n\n /* istanbul ignore next */\n handleScroll() {\n const scrollLeft = this.cardsWrapper?.scrollLeft;\n this.setState({scrollLeft});\n\n const {possiblePositions, offsetWidth} = this.state;\n const {onScroll} = this.props;\n if (onScroll) {\n const leftBound = scrollLeft;\n const rightBound = scrollLeft + offsetWidth;\n\n const leftIndex = findIndex(position => position > leftBound, possiblePositions) - 1;\n const rightIndex = findLastIndex(position => position < rightBound, possiblePositions);\n const skip = leftIndex;\n const limit = rightIndex - skip + 1;\n\n onScroll(skip, limit);\n }\n }\n\n handleOnLeft() {\n const {actualPage, maxPages} = this.state;\n this.scrollTo(nextPage(actualPage - 1, maxPages));\n }\n\n handleOnRight() {\n const {actualPage, maxPages} = this.state;\n this.scrollTo(nextPage(actualPage + 1, maxPages));\n }\n\n scrollTo(page) {\n const {possiblePages, possiblePositions} = this.state;\n const indexOfNextFirstCard = possiblePages.indexOf(page);\n const nextPosition = possiblePositions[indexOfNextFirstCard];\n this.cardsWrapper.scrollLeft = nextPosition;\n this.updatePages(page);\n this.setState({\n scrollLeft: nextPosition\n });\n }\n\n updatePages(actualPage) {\n this.setState({\n actualPage\n });\n }\n\n render() {\n const {\n title,\n showMore,\n cards,\n customStyle = {},\n onShowMore,\n dataName,\n contentType,\n 'arrows-aria-label': ariaLabel = {},\n type\n } = this.props;\n const {skin} = this.context;\n const {maxPages} = this.state;\n const dark = getOr('#90A4AE', 'common.dark', skin);\n const titleStyle = onShowMore ? style.titleLink : style.title;\n const cardsView = pipe(\n toPairs,\n map(([key, card]) => {\n return (\n <div className={style.card} key={key}>\n {card && type === 'learningPrioritiesCards' ? (\n <LearningPriorityCard {...card} dataName={`${dataName}-${key}`} />\n ) : (\n <Card {...card} dataName={`${dataName}-${key}`} />\n )}\n </div>\n );\n })\n )(cards);\n\n const arrowIconProps = {\n color: dark,\n preset: 's',\n borderRadius: '8px',\n ariaLabel: ariaLabel.showMoreOnLeftAriaLabel\n };\n\n const arrows = (\n <div className={style.arrowsWrapper}>\n <div className={style.arrow} onClick={this.handleOnLeft} data-name=\"card-list-left-arrow\">\n <Icon {...arrowIconProps} iconName=\"arrow-left\" />\n </div>\n <div className={style.arrow} onClick={this.handleOnRight} data-name=\"card-list-right-arrow\">\n <Icon {...arrowIconProps} iconName=\"arrow-right\" />\n </div>\n </div>\n );\n\n const titleView =\n typeof title === 'string' ? (\n <span data-name=\"title\" className={titleStyle} onClick={onShowMore}>\n <IconView contentType={contentType} />\n <span>{title}</span>\n </span>\n ) : (\n <span className={style.titleNode}>{title}</span>\n );\n\n const hasPages = maxPages > 0;\n const showMoreView =\n hasPages && showMore && onShowMore ? (\n <ShowMoreLink\n className={hasPages ? style.showMoreBar : style.showMore}\n onShowMore={onShowMore}\n showMore={showMore}\n />\n ) : null;\n\n const switchPagesView = hasPages ? (\n <div className={style.pagingWrapper}>\n {showMoreView}\n {arrows}\n </div>\n ) : null;\n\n return (\n <div\n className={style.wrapper}\n style={customStyle}\n data-name=\"cardsList\"\n data-max-pages={`${maxPages}`}\n // eslint-disable-next-line react/destructuring-assignment\n data-actual-page={`${this.state.actualPage}`}\n data-scroll-left={this.cardsWrapper?.scrollLeft}\n >\n <div className={style.list}>\n <div>\n <div data-name=\"header\" className={style.header}>\n {titleView}\n {switchPagesView}\n </div>\n <div\n className={style.cards}\n data-testid=\"cards-view-wrapper\"\n ref={this.setCardsWrapper}\n >\n {cardsView}\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default CardsList;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -248,7 +248,7 @@ const BrandUpdate = props => {
|
|
|
248
248
|
const detailsView = buildDetailsView(details);
|
|
249
249
|
const popinView = buildPopin(popin);
|
|
250
250
|
const titleView = buildTitle(title);
|
|
251
|
-
const hasVisibleBulletPointMenu = content
|
|
251
|
+
const hasVisibleBulletPointMenu = content?.type === 'list-content' && pipe(getOr([], 'content.items'), some(pipe(getOr([], 'bulletPointMenuButton.buttons'), buttons => buttons.length > 0)))(content);
|
|
252
252
|
const contentStyle = classNames([style.content, !isEmpty(notifications) && style.contentWithNotifications, contentFixHeight && style.contentFixHeight, hasVisibleBulletPointMenu && style.contentListWithBulletPointMenu]);
|
|
253
253
|
return /*#__PURE__*/React.createElement("div", {
|
|
254
254
|
className: style.container
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","map","pipe","get","getOr","isEmpty","find","some","classNames","BrandTabs","IconLinkItem","LinkItem","BrandForm","BrandTable","BrandUpload","BrandAnalytics","BrandDashboard","WizardContents","ListItems","BrandLearningPriorities","Banner","Header","HeaderWithActions","Loader","Accordion","CmPopin","ButtonLinkIcon","ExpandibleActionableTable","BulkInfos","Title","SkillEdition","IconPickerModal","TranslationModal","ContentSkillModal","style","POPIN_THEMES","getStyle","isSelected","selectedElement","unselectedElement","subTabsView","_subTabs","convert","cap","subTab","_index","createElement","key","title","type","_extends","styles","selected","uppercase","target","setChildrenAsHtml","buildLeftNavigation","logo","items","onItemClick","formattedTabs","href","index","children","iconType","formattedTabsViews","tab","className","tabs","navigation","src","tabProps","theme","onClick","buildNotifications","notifications","notificationsList","notification","temporary","permanentNotification","permanentNotifications","buildHeader","header","headerDefault","buildDefaultPopin","popin","icon","popinIcon","secondButton","popinSecondButton","themeIcon","actionButton","themeActionButton","buildPopin","buildDocumentation","documentation","show","onClose","content","open","documentationContent","dangerouslySetInnerHTML","__html","closeButton","size","buildTabs","selectedTab","e","showTabs","subTabs","undefined","buildContentView","loaderContainer","loader","buildDetailsView","details","buildTitle","BrandUpdate","props","contentFixHeight","leftNavigation","notificationsView","documentationView","headerView","tabsView","contentView","detailsView","popinView","titleView","hasVisibleBulletPointMenu","buttons","length","contentStyle","contentWithNotifications","contentListWithBulletPointMenu","container","left","contentWrapper","headerSticky","defaultProps","propTypes","process","env","NODE_ENV","arrayOf","shape","oneOfType","oneOf","isRequired","string","bool","func"],"sources":["../../../../src/template/back-office/brand-update/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport map from 'lodash/fp/map';\nimport pipe from 'lodash/fp/pipe';\nimport get from 'lodash/fp/get';\nimport getOr from 'lodash/fp/getOr';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport find from 'lodash/fp/find';\nimport some from 'lodash/fp/some';\nimport classNames from 'classnames';\nimport BrandTabs from '../../../molecule/brand-tabs';\nimport {IconLinkItem, LinkItem} from '../../../organism/sidebar';\nimport BrandForm from '../../../organism/brand-form';\nimport BrandTable from '../../../organism/brand-table';\nimport BrandUpload from '../../../organism/brand-upload';\nimport BrandAnalytics from '../../../organism/brand-analytics';\nimport BrandDashboard from '../../../organism/brand-dashboard';\nimport WizardContents from '../../../organism/wizard-contents';\nimport ListItems from '../../../organism/list-items';\nimport BrandLearningPriorities from '../../../organism/brand-learning-priorities';\nimport Banner from '../../../molecule/banner';\nimport Header from '../../../organism/setup-header';\nimport HeaderWithActions from '../../../organism/header-with-actions';\nimport Loader from '../../../atom/loader';\nimport Accordion from '../../../organism/accordion/coorp-manager';\nimport CmPopin from '../../../molecule/cm-popin';\nimport ButtonLinkIcon from '../../../atom/button-link-icon';\nimport ExpandibleActionableTable from '../../../molecule/expandible-actionable-table';\nimport BulkInfos from '../../../molecule/bulk-infos';\nimport Title from '../../../atom/title';\nimport SkillEdition from '../../../organism/skill-edition';\nimport IconPickerModal from '../../../molecule/icon-picker-modal';\nimport TranslationModal from '../../../molecule/translation-modal';\nimport ContentSkillModal from '../../../organism/content-skill-modal';\nimport style from './style.css';\nimport {POPIN_THEMES} from './utils';\n\nconst getStyle = isSelected => (isSelected ? style.selectedElement : style.unselectedElement);\n\nconst subTabsView = (_subTabs = []) =>\n map.convert({cap: false})((subTab, _index) => (\n <div key={subTab.title}>\n {subTab.type === 'iconLink' ? (\n <IconLinkItem\n {...subTab}\n styles={getStyle(subTab.selected)}\n uppercase={false}\n target={'_blank'}\n />\n ) : (\n <LinkItem\n {...subTab}\n styles={getStyle(subTab.selected)}\n uppercase={false}\n setChildrenAsHtml={false}\n />\n )}\n </div>\n ))(_subTabs);\n\n// TODO: this fonction should be replaced by a molecule to avoid this file to be unreadable\nconst buildLeftNavigation = (logo, items, onItemClick) => {\n const formattedTabs = items.map(({key, title, href, selected, type = 'simpleTab'}, index) => ({\n title,\n selected,\n type,\n href,\n index,\n children: [],\n iconType: key || 'arrow'\n }));\n\n const formattedTabsViews = map(tab => (\n <div key={tab.title} className={style.subTabsView}>\n {subTabsView(tab.tabs)}\n </div>\n ))(items);\n\n return (\n <div className={style.navigation}>\n <div className={style.logo}>\n <a href=\"/\">\n <img src={logo} />\n </a>\n </div>\n <Accordion tabProps={formattedTabs} theme={'setup'} onClick={onItemClick}>\n {formattedTabsViews}\n </Accordion>\n </div>\n );\n};\n\nconst buildNotifications = notifications => {\n if (isEmpty(notifications)) {\n return null;\n }\n\n const notificationsList = notifications.map((notification, index) => {\n return (\n <div className={!notification.temporary ? style.permanentNotification : null} key={index}>\n <Banner {...notification} />\n </div>\n );\n });\n return (\n <div className={!find({temporary: true}, notifications) ? style.permanentNotifications : null}>\n {notificationsList}\n </div>\n );\n};\n\nconst buildHeader = header => {\n if (!header) return null;\n\n return header.type === 'header-with-actions' ? (\n <HeaderWithActions {...header} />\n ) : (\n <div className={style.headerDefault}>\n <Header {...header} />\n </div>\n );\n};\n\nconst buildDefaultPopin = popin => {\n const {theme, icon: popinIcon, secondButton: popinSecondButton} = popin;\n const {icon: themeIcon, actionButton: themeActionButton} = POPIN_THEMES[theme] ?? {};\n\n return (\n <div className={style.popin}>\n <CmPopin\n {...popin}\n icon={popinIcon || themeIcon}\n secondButton={{...popinSecondButton, ...themeActionButton}}\n />\n </div>\n );\n};\n\nconst buildPopin = popin => {\n if (isEmpty(popin)) return;\n\n switch (popin.type) {\n case 'icon-picker':\n return <IconPickerModal {...popin} />;\n case 'translation':\n return <TranslationModal {...popin} />;\n case 'content':\n return <ContentSkillModal {...popin} />;\n default:\n return buildDefaultPopin(popin);\n }\n};\n\nconst buildDocumentation = documentation => {\n if (!documentation) return null;\n const {show = false, onClose, content = ''} = documentation;\n return (\n <div className={classNames(style.documentation, show && style.open)}>\n <div\n className={style.documentationContent}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n {onClose ? (\n <ButtonLinkIcon\n className={style.closeButton}\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </div>\n );\n};\n\nconst buildTabs = items => {\n const selectedTab = pipe(\n find(e => e.selected),\n get('tabs'),\n find(e => e.selected)\n )(items);\n\n const showTabs = selectedTab ? find(e => e.selected, selectedTab.subTabs) : undefined;\n if (!showTabs) return null;\n return (\n <div className={style.tabs}>\n <BrandTabs type=\"light\" tabs={selectedTab.subTabs} />\n </div>\n );\n};\n\nconst buildContentView = content => {\n if (!content) {\n return (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n );\n }\n\n const {type} = content;\n switch (type) {\n case 'form':\n return <BrandForm {...content} />;\n case 'list':\n return <BrandTable {...content} />;\n case 'upload':\n return <BrandUpload {...content} />;\n case 'analytics-dashboards':\n return <BrandAnalytics {...content} />;\n case 'list-content':\n case 'expandible-actionable-table':\n return <ListItems {...content} />;\n case 'home':\n return <BrandDashboard {...content} />;\n case 'wizard':\n case 'expandible-table':\n return <WizardContents {...content} />;\n case 'bulk-empty-dashboard':\n return <BulkInfos {...content} />;\n case 'table-pending':\n return <ExpandibleActionableTable {...content} />;\n case 'learning-priorities':\n return <BrandLearningPriorities {...content} />;\n case 'skill-edition':\n return <SkillEdition {...content} />;\n }\n};\n\nconst buildDetailsView = details => {\n if (!details) return;\n return <BrandTable {...details} />;\n};\n\nconst buildTitle = title => {\n if (isEmpty(title)) return;\n return (\n <div className={style.title}>\n <Title {...title} />\n </div>\n );\n};\n\nconst BrandUpdate = props => {\n const {\n notifications,\n header,\n items,\n content,\n details,\n popin,\n onItemClick,\n documentation,\n contentFixHeight,\n title\n } = props;\n const logo = 'https://static.coorpacademy.com/logo/coorp-manager.svg';\n\n const leftNavigation = buildLeftNavigation(logo, items, onItemClick);\n const notificationsView = buildNotifications(notifications);\n const documentationView = buildDocumentation(documentation);\n const headerView = buildHeader(header, notifications);\n const tabsView = buildTabs(items);\n const contentView = buildContentView(content);\n const detailsView = buildDetailsView(details);\n const popinView = buildPopin(popin);\n const titleView = buildTitle(title);\n\n const hasVisibleBulletPointMenu =\n content.type === 'list-content' &&\n pipe(\n getOr([], 'content.items'),\n some(pipe(getOr([], 'bulletPointMenuButton.buttons'), buttons => buttons.length > 0))\n )(content);\n\n const contentStyle = classNames([\n style.content,\n !isEmpty(notifications) && style.contentWithNotifications,\n contentFixHeight && style.contentFixHeight,\n hasVisibleBulletPointMenu && style.contentListWithBulletPointMenu\n ]);\n\n return (\n <div className={style.container}>\n <div className={style.left}>{leftNavigation}</div>\n <div className={style.contentWrapper}>\n <div className={style.headerSticky}>{headerView}</div>\n <div className={contentStyle}>\n {notificationsView}\n {titleView}\n {tabsView}\n {contentView}\n {detailsView}\n {documentationView}\n </div>\n </div>\n {popinView}\n </div>\n );\n};\n\nBrandUpdate.defaultProps = {\n notifications: []\n};\n\nBrandUpdate.propTypes = {\n notifications: PropTypes.arrayOf(\n PropTypes.shape({\n ...Banner.propTypes\n })\n ),\n header: PropTypes.oneOfType([\n PropTypes.shape({...Header.propTypes}),\n PropTypes.shape({\n ...HeaderWithActions.propTypes,\n type: PropTypes.oneOf(['header-with-actions']).isRequired\n })\n ]),\n items: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n title: PropTypes.string.isRequired,\n href: PropTypes.string.isRequired,\n selected: PropTypes.bool.isRequired,\n type: PropTypes.string,\n tabs: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n href: PropTypes.string.isRequired,\n selected: PropTypes.bool.isRequired,\n type: PropTypes.string,\n subTabs: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n href: PropTypes.string.isRequired,\n selected: PropTypes.bool.isRequired,\n type: PropTypes.string\n })\n )\n })\n )\n })\n ).isRequired,\n content: PropTypes.oneOfType([\n PropTypes.shape({\n ...BrandForm.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['form'])\n }),\n PropTypes.shape({\n ...BrandTable.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['list'])\n }),\n PropTypes.shape({\n ...BrandUpload.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['upload'])\n }),\n PropTypes.shape({\n ...BrandAnalytics.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['analytics-dashboards'])\n }),\n PropTypes.shape({\n ...BrandDashboard.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['home'])\n }),\n PropTypes.shape({\n ...WizardContents.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['wizard'])\n }),\n PropTypes.shape({\n ...ListItems.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['list-content', 'expandible-actionable-table'])\n }),\n PropTypes.shape({\n ...BulkInfos.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['bulk-empty-dashboard'])\n }),\n PropTypes.shape({\n ...ExpandibleActionableTable.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['table-pending'])\n }),\n PropTypes.shape({\n ...WizardContents.propTypes,\n content: PropTypes.shape({\n ...ExpandibleActionableTable.propTypes,\n ...WizardContents.propTypes.content.propTypes\n }),\n key: PropTypes.string,\n type: PropTypes.oneOf(['expandible-table'])\n }),\n PropTypes.shape({\n ...BrandLearningPriorities.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['learning-priorities'])\n }),\n PropTypes.shape({\n ...SkillEdition.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['skill-edition'])\n })\n ]),\n documentation: PropTypes.shape({\n content: PropTypes.string,\n show: PropTypes.bool,\n onClose: PropTypes.func\n }),\n popin: PropTypes.oneOfType([\n PropTypes.shape({\n ...CmPopin.propTypes,\n theme: PropTypes.oneOf(['published', 'archived', 'deleted', 'draft'])\n }),\n PropTypes.shape({\n ...IconPickerModal.propTypes,\n type: PropTypes.oneOf(['icon-picker'])\n }),\n PropTypes.shape({\n ...TranslationModal.propTypes,\n type: PropTypes.oneOf(['translation'])\n }),\n PropTypes.shape({\n ...ContentSkillModal.propTypes,\n type: PropTypes.oneOf(['content'])\n })\n ]),\n details: PropTypes.shape({\n ...BrandTable.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['list'])\n }),\n onItemClick: PropTypes.func,\n contentFixHeight: PropTypes.bool,\n title: PropTypes.shape(Title.propTypes)\n};\n\nexport default BrandUpdate;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","map","pipe","get","getOr","isEmpty","find","some","classNames","BrandTabs","IconLinkItem","LinkItem","BrandForm","BrandTable","BrandUpload","BrandAnalytics","BrandDashboard","WizardContents","ListItems","BrandLearningPriorities","Banner","Header","HeaderWithActions","Loader","Accordion","CmPopin","ButtonLinkIcon","ExpandibleActionableTable","BulkInfos","Title","SkillEdition","IconPickerModal","TranslationModal","ContentSkillModal","style","POPIN_THEMES","getStyle","isSelected","selectedElement","unselectedElement","subTabsView","_subTabs","convert","cap","subTab","_index","createElement","key","title","type","_extends","styles","selected","uppercase","target","setChildrenAsHtml","buildLeftNavigation","logo","items","onItemClick","formattedTabs","href","index","children","iconType","formattedTabsViews","tab","className","tabs","navigation","src","tabProps","theme","onClick","buildNotifications","notifications","notificationsList","notification","temporary","permanentNotification","permanentNotifications","buildHeader","header","headerDefault","buildDefaultPopin","popin","icon","popinIcon","secondButton","popinSecondButton","themeIcon","actionButton","themeActionButton","buildPopin","buildDocumentation","documentation","show","onClose","content","open","documentationContent","dangerouslySetInnerHTML","__html","closeButton","size","buildTabs","selectedTab","e","showTabs","subTabs","undefined","buildContentView","loaderContainer","loader","buildDetailsView","details","buildTitle","BrandUpdate","props","contentFixHeight","leftNavigation","notificationsView","documentationView","headerView","tabsView","contentView","detailsView","popinView","titleView","hasVisibleBulletPointMenu","buttons","length","contentStyle","contentWithNotifications","contentListWithBulletPointMenu","container","left","contentWrapper","headerSticky","defaultProps","propTypes","process","env","NODE_ENV","arrayOf","shape","oneOfType","oneOf","isRequired","string","bool","func"],"sources":["../../../../src/template/back-office/brand-update/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport map from 'lodash/fp/map';\nimport pipe from 'lodash/fp/pipe';\nimport get from 'lodash/fp/get';\nimport getOr from 'lodash/fp/getOr';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport find from 'lodash/fp/find';\nimport some from 'lodash/fp/some';\nimport classNames from 'classnames';\nimport BrandTabs from '../../../molecule/brand-tabs';\nimport {IconLinkItem, LinkItem} from '../../../organism/sidebar';\nimport BrandForm from '../../../organism/brand-form';\nimport BrandTable from '../../../organism/brand-table';\nimport BrandUpload from '../../../organism/brand-upload';\nimport BrandAnalytics from '../../../organism/brand-analytics';\nimport BrandDashboard from '../../../organism/brand-dashboard';\nimport WizardContents from '../../../organism/wizard-contents';\nimport ListItems from '../../../organism/list-items';\nimport BrandLearningPriorities from '../../../organism/brand-learning-priorities';\nimport Banner from '../../../molecule/banner';\nimport Header from '../../../organism/setup-header';\nimport HeaderWithActions from '../../../organism/header-with-actions';\nimport Loader from '../../../atom/loader';\nimport Accordion from '../../../organism/accordion/coorp-manager';\nimport CmPopin from '../../../molecule/cm-popin';\nimport ButtonLinkIcon from '../../../atom/button-link-icon';\nimport ExpandibleActionableTable from '../../../molecule/expandible-actionable-table';\nimport BulkInfos from '../../../molecule/bulk-infos';\nimport Title from '../../../atom/title';\nimport SkillEdition from '../../../organism/skill-edition';\nimport IconPickerModal from '../../../molecule/icon-picker-modal';\nimport TranslationModal from '../../../molecule/translation-modal';\nimport ContentSkillModal from '../../../organism/content-skill-modal';\nimport style from './style.css';\nimport {POPIN_THEMES} from './utils';\n\nconst getStyle = isSelected => (isSelected ? style.selectedElement : style.unselectedElement);\n\nconst subTabsView = (_subTabs = []) =>\n map.convert({cap: false})((subTab, _index) => (\n <div key={subTab.title}>\n {subTab.type === 'iconLink' ? (\n <IconLinkItem\n {...subTab}\n styles={getStyle(subTab.selected)}\n uppercase={false}\n target={'_blank'}\n />\n ) : (\n <LinkItem\n {...subTab}\n styles={getStyle(subTab.selected)}\n uppercase={false}\n setChildrenAsHtml={false}\n />\n )}\n </div>\n ))(_subTabs);\n\n// TODO: this fonction should be replaced by a molecule to avoid this file to be unreadable\nconst buildLeftNavigation = (logo, items, onItemClick) => {\n const formattedTabs = items.map(({key, title, href, selected, type = 'simpleTab'}, index) => ({\n title,\n selected,\n type,\n href,\n index,\n children: [],\n iconType: key || 'arrow'\n }));\n\n const formattedTabsViews = map(tab => (\n <div key={tab.title} className={style.subTabsView}>\n {subTabsView(tab.tabs)}\n </div>\n ))(items);\n\n return (\n <div className={style.navigation}>\n <div className={style.logo}>\n <a href=\"/\">\n <img src={logo} />\n </a>\n </div>\n <Accordion tabProps={formattedTabs} theme={'setup'} onClick={onItemClick}>\n {formattedTabsViews}\n </Accordion>\n </div>\n );\n};\n\nconst buildNotifications = notifications => {\n if (isEmpty(notifications)) {\n return null;\n }\n\n const notificationsList = notifications.map((notification, index) => {\n return (\n <div className={!notification.temporary ? style.permanentNotification : null} key={index}>\n <Banner {...notification} />\n </div>\n );\n });\n return (\n <div className={!find({temporary: true}, notifications) ? style.permanentNotifications : null}>\n {notificationsList}\n </div>\n );\n};\n\nconst buildHeader = header => {\n if (!header) return null;\n\n return header.type === 'header-with-actions' ? (\n <HeaderWithActions {...header} />\n ) : (\n <div className={style.headerDefault}>\n <Header {...header} />\n </div>\n );\n};\n\nconst buildDefaultPopin = popin => {\n const {theme, icon: popinIcon, secondButton: popinSecondButton} = popin;\n const {icon: themeIcon, actionButton: themeActionButton} = POPIN_THEMES[theme] ?? {};\n\n return (\n <div className={style.popin}>\n <CmPopin\n {...popin}\n icon={popinIcon || themeIcon}\n secondButton={{...popinSecondButton, ...themeActionButton}}\n />\n </div>\n );\n};\n\nconst buildPopin = popin => {\n if (isEmpty(popin)) return;\n\n switch (popin.type) {\n case 'icon-picker':\n return <IconPickerModal {...popin} />;\n case 'translation':\n return <TranslationModal {...popin} />;\n case 'content':\n return <ContentSkillModal {...popin} />;\n default:\n return buildDefaultPopin(popin);\n }\n};\n\nconst buildDocumentation = documentation => {\n if (!documentation) return null;\n const {show = false, onClose, content = ''} = documentation;\n return (\n <div className={classNames(style.documentation, show && style.open)}>\n <div\n className={style.documentationContent}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n {onClose ? (\n <ButtonLinkIcon\n className={style.closeButton}\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </div>\n );\n};\n\nconst buildTabs = items => {\n const selectedTab = pipe(\n find(e => e.selected),\n get('tabs'),\n find(e => e.selected)\n )(items);\n\n const showTabs = selectedTab ? find(e => e.selected, selectedTab.subTabs) : undefined;\n if (!showTabs) return null;\n return (\n <div className={style.tabs}>\n <BrandTabs type=\"light\" tabs={selectedTab.subTabs} />\n </div>\n );\n};\n\nconst buildContentView = content => {\n if (!content) {\n return (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n );\n }\n\n const {type} = content;\n switch (type) {\n case 'form':\n return <BrandForm {...content} />;\n case 'list':\n return <BrandTable {...content} />;\n case 'upload':\n return <BrandUpload {...content} />;\n case 'analytics-dashboards':\n return <BrandAnalytics {...content} />;\n case 'list-content':\n case 'expandible-actionable-table':\n return <ListItems {...content} />;\n case 'home':\n return <BrandDashboard {...content} />;\n case 'wizard':\n case 'expandible-table':\n return <WizardContents {...content} />;\n case 'bulk-empty-dashboard':\n return <BulkInfos {...content} />;\n case 'table-pending':\n return <ExpandibleActionableTable {...content} />;\n case 'learning-priorities':\n return <BrandLearningPriorities {...content} />;\n case 'skill-edition':\n return <SkillEdition {...content} />;\n }\n};\n\nconst buildDetailsView = details => {\n if (!details) return;\n return <BrandTable {...details} />;\n};\n\nconst buildTitle = title => {\n if (isEmpty(title)) return;\n return (\n <div className={style.title}>\n <Title {...title} />\n </div>\n );\n};\n\nconst BrandUpdate = props => {\n const {\n notifications,\n header,\n items,\n content,\n details,\n popin,\n onItemClick,\n documentation,\n contentFixHeight,\n title\n } = props;\n const logo = 'https://static.coorpacademy.com/logo/coorp-manager.svg';\n\n const leftNavigation = buildLeftNavigation(logo, items, onItemClick);\n const notificationsView = buildNotifications(notifications);\n const documentationView = buildDocumentation(documentation);\n const headerView = buildHeader(header, notifications);\n const tabsView = buildTabs(items);\n const contentView = buildContentView(content);\n const detailsView = buildDetailsView(details);\n const popinView = buildPopin(popin);\n const titleView = buildTitle(title);\n\n const hasVisibleBulletPointMenu =\n content?.type === 'list-content' &&\n pipe(\n getOr([], 'content.items'),\n some(pipe(getOr([], 'bulletPointMenuButton.buttons'), buttons => buttons.length > 0))\n )(content);\n\n const contentStyle = classNames([\n style.content,\n !isEmpty(notifications) && style.contentWithNotifications,\n contentFixHeight && style.contentFixHeight,\n hasVisibleBulletPointMenu && style.contentListWithBulletPointMenu\n ]);\n\n return (\n <div className={style.container}>\n <div className={style.left}>{leftNavigation}</div>\n <div className={style.contentWrapper}>\n <div className={style.headerSticky}>{headerView}</div>\n <div className={contentStyle}>\n {notificationsView}\n {titleView}\n {tabsView}\n {contentView}\n {detailsView}\n {documentationView}\n </div>\n </div>\n {popinView}\n </div>\n );\n};\n\nBrandUpdate.defaultProps = {\n notifications: []\n};\n\nBrandUpdate.propTypes = {\n notifications: PropTypes.arrayOf(\n PropTypes.shape({\n ...Banner.propTypes\n })\n ),\n header: PropTypes.oneOfType([\n PropTypes.shape({...Header.propTypes}),\n PropTypes.shape({\n ...HeaderWithActions.propTypes,\n type: PropTypes.oneOf(['header-with-actions']).isRequired\n })\n ]),\n items: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n title: PropTypes.string.isRequired,\n href: PropTypes.string.isRequired,\n selected: PropTypes.bool.isRequired,\n type: PropTypes.string,\n tabs: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n href: PropTypes.string.isRequired,\n selected: PropTypes.bool.isRequired,\n type: PropTypes.string,\n subTabs: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n href: PropTypes.string.isRequired,\n selected: PropTypes.bool.isRequired,\n type: PropTypes.string\n })\n )\n })\n )\n })\n ).isRequired,\n content: PropTypes.oneOfType([\n PropTypes.shape({\n ...BrandForm.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['form'])\n }),\n PropTypes.shape({\n ...BrandTable.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['list'])\n }),\n PropTypes.shape({\n ...BrandUpload.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['upload'])\n }),\n PropTypes.shape({\n ...BrandAnalytics.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['analytics-dashboards'])\n }),\n PropTypes.shape({\n ...BrandDashboard.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['home'])\n }),\n PropTypes.shape({\n ...WizardContents.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['wizard'])\n }),\n PropTypes.shape({\n ...ListItems.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['list-content', 'expandible-actionable-table'])\n }),\n PropTypes.shape({\n ...BulkInfos.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['bulk-empty-dashboard'])\n }),\n PropTypes.shape({\n ...ExpandibleActionableTable.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['table-pending'])\n }),\n PropTypes.shape({\n ...WizardContents.propTypes,\n content: PropTypes.shape({\n ...ExpandibleActionableTable.propTypes,\n ...WizardContents.propTypes.content.propTypes\n }),\n key: PropTypes.string,\n type: PropTypes.oneOf(['expandible-table'])\n }),\n PropTypes.shape({\n ...BrandLearningPriorities.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['learning-priorities'])\n }),\n PropTypes.shape({\n ...SkillEdition.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['skill-edition'])\n })\n ]),\n documentation: PropTypes.shape({\n content: PropTypes.string,\n show: PropTypes.bool,\n onClose: PropTypes.func\n }),\n popin: PropTypes.oneOfType([\n PropTypes.shape({\n ...CmPopin.propTypes,\n theme: PropTypes.oneOf(['published', 'archived', 'deleted', 'draft'])\n }),\n PropTypes.shape({\n ...IconPickerModal.propTypes,\n type: PropTypes.oneOf(['icon-picker'])\n }),\n PropTypes.shape({\n ...TranslationModal.propTypes,\n type: PropTypes.oneOf(['translation'])\n }),\n PropTypes.shape({\n ...ContentSkillModal.propTypes,\n type: PropTypes.oneOf(['content'])\n })\n ]),\n details: PropTypes.shape({\n ...BrandTable.propTypes,\n key: PropTypes.string,\n type: PropTypes.oneOf(['list'])\n }),\n onItemClick: PropTypes.func,\n contentFixHeight: PropTypes.bool,\n title: PropTypes.shape(Title.propTypes)\n};\n\nexport default BrandUpdate;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -997,105 +997,6 @@ declare namespace SearchPage {
|
|
|
997
997
|
disabled: PropTypes.Requireable<boolean>;
|
|
998
998
|
}>>;
|
|
999
999
|
}>>;
|
|
1000
|
-
const sections: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
1001
|
-
title: PropTypes.Requireable<string>;
|
|
1002
|
-
cards: PropTypes.Requireable<(NonNullable<PropTypes.InferProps<{
|
|
1003
|
-
badge: PropTypes.Requireable<string>;
|
|
1004
|
-
image: PropTypes.Requireable<string>;
|
|
1005
|
-
disabled: PropTypes.Requireable<boolean>;
|
|
1006
|
-
adaptiv: PropTypes.Requireable<boolean>;
|
|
1007
|
-
type: PropTypes.Requireable<string>;
|
|
1008
|
-
title: PropTypes.Requireable<string>;
|
|
1009
|
-
author: PropTypes.Requireable<string>;
|
|
1010
|
-
certifiedAuthor: PropTypes.Requireable<boolean>;
|
|
1011
|
-
customer: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1012
|
-
theme: PropTypes.Requireable<string>;
|
|
1013
|
-
type: PropTypes.Requireable<string>;
|
|
1014
|
-
name: PropTypes.Requireable<string>;
|
|
1015
|
-
coorpOriginal: PropTypes.Validator<boolean>;
|
|
1016
|
-
disabled: PropTypes.Requireable<boolean>;
|
|
1017
|
-
'aria-label': PropTypes.Requireable<string>;
|
|
1018
|
-
}>>;
|
|
1019
|
-
progress: PropTypes.Requireable<number>;
|
|
1020
|
-
favorite: PropTypes.Requireable<boolean>;
|
|
1021
|
-
addFavoriteToolTip: PropTypes.Requireable<string>;
|
|
1022
|
-
removeFavoriteToolTip: PropTypes.Requireable<string>;
|
|
1023
|
-
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
1024
|
-
onFavoriteClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
1025
|
-
isSelected: PropTypes.Requireable<boolean>;
|
|
1026
|
-
notification: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1027
|
-
message: PropTypes.Validator<string>;
|
|
1028
|
-
icon: PropTypes.Validator<string>;
|
|
1029
|
-
}>>;
|
|
1030
|
-
badgeCategory: PropTypes.Requireable<string>;
|
|
1031
|
-
badgeLabel: PropTypes.Requireable<string>;
|
|
1032
|
-
theme: PropTypes.Requireable<string>;
|
|
1033
|
-
disabledContent: PropTypes.Requireable<string>;
|
|
1034
|
-
'aria-label': PropTypes.Requireable<string>;
|
|
1035
|
-
'background-aria-label': PropTypes.Requireable<string>;
|
|
1036
|
-
'favorite-aria-label': PropTypes.Requireable<PropTypes.InferProps<{
|
|
1037
|
-
favorite: PropTypes.Requireable<string>;
|
|
1038
|
-
addToFavorite: PropTypes.Requireable<string>;
|
|
1039
|
-
removeFromFavorite: PropTypes.Requireable<string>;
|
|
1040
|
-
}>>;
|
|
1041
|
-
'selectable-aria-label': PropTypes.Requireable<PropTypes.InferProps<{
|
|
1042
|
-
select: PropTypes.Requireable<string>;
|
|
1043
|
-
unSelect: PropTypes.Requireable<string>;
|
|
1044
|
-
}>>;
|
|
1045
|
-
'customer-aria-label': PropTypes.Requireable<string>;
|
|
1046
|
-
'badge-aria-label': PropTypes.Requireable<string>;
|
|
1047
|
-
'disabled-aria-label': PropTypes.Requireable<string>;
|
|
1048
|
-
'card-content-aria-label': PropTypes.Requireable<PropTypes.InferProps<{
|
|
1049
|
-
author: PropTypes.Requireable<string>;
|
|
1050
|
-
progression: PropTypes.Requireable<string>;
|
|
1051
|
-
adaptive: PropTypes.Requireable<string>;
|
|
1052
|
-
}>>;
|
|
1053
|
-
}> | PropTypes.InferProps<{
|
|
1054
|
-
title: PropTypes.Requireable<string>;
|
|
1055
|
-
tagLabel: PropTypes.Requireable<string>;
|
|
1056
|
-
progression: PropTypes.Requireable<number>;
|
|
1057
|
-
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
1058
|
-
}> | PropTypes.InferProps<{
|
|
1059
|
-
label: PropTypes.Requireable<string>;
|
|
1060
|
-
goal: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1061
|
-
title: PropTypes.Requireable<string>;
|
|
1062
|
-
condition: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1063
|
-
nbDone: PropTypes.Requireable<number>;
|
|
1064
|
-
}>>;
|
|
1065
|
-
}>>;
|
|
1066
|
-
progress: PropTypes.Requireable<number>;
|
|
1067
|
-
imgUrl: PropTypes.Requireable<string>;
|
|
1068
|
-
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
1069
|
-
locales: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1070
|
-
conditionDescriptionProgress: PropTypes.Requireable<string>;
|
|
1071
|
-
tag: PropTypes.Requireable<string>;
|
|
1072
|
-
}>>;
|
|
1073
|
-
}> | PropTypes.InferProps<{
|
|
1074
|
-
'aria-label': PropTypes.Requireable<string>;
|
|
1075
|
-
cardIndex: PropTypes.Requireable<number>;
|
|
1076
|
-
skillTitle: PropTypes.Requireable<string>;
|
|
1077
|
-
skillAriaLabel: PropTypes.Requireable<string>;
|
|
1078
|
-
focus: PropTypes.Requireable<boolean>;
|
|
1079
|
-
metrics: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1080
|
-
content: PropTypes.Requireable<number>;
|
|
1081
|
-
score: PropTypes.Requireable<number>;
|
|
1082
|
-
questionsToReview: PropTypes.Requireable<number>;
|
|
1083
|
-
}>>;
|
|
1084
|
-
icon: PropTypes.Requireable<PropTypes.InferProps<{
|
|
1085
|
-
color: PropTypes.Requireable<string>;
|
|
1086
|
-
name: PropTypes.Requireable<string>;
|
|
1087
|
-
}>>;
|
|
1088
|
-
onExploreClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
1089
|
-
}> | null | undefined> | null | undefined)[]>;
|
|
1090
|
-
showMore: PropTypes.Requireable<string>;
|
|
1091
|
-
onShowMore: PropTypes.Requireable<(...args: any[]) => any>;
|
|
1092
|
-
order: PropTypes.Requireable<number>;
|
|
1093
|
-
type: PropTypes.Requireable<string>;
|
|
1094
|
-
'arrows-aria-label': PropTypes.Requireable<PropTypes.InferProps<{
|
|
1095
|
-
showMoreOnLeftAriaLabel: PropTypes.Requireable<string>;
|
|
1096
|
-
showMoreOnRightAriaLabel: PropTypes.Requireable<string>;
|
|
1097
|
-
}>>;
|
|
1098
|
-
}> | null | undefined)[]>;
|
|
1099
1000
|
}
|
|
1100
1001
|
}
|
|
1101
1002
|
import PropTypes from "prop-types";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/common/search-page/index.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/common/search-page/index.js"],"names":[],"mappings":";AAWA,mEA2DC"}
|
|
@@ -8,13 +8,7 @@ import Button from '../../../atom/button';
|
|
|
8
8
|
import Filters from '../../../molecule/filters';
|
|
9
9
|
import CardsGrid from '../../../organism/cards-grid';
|
|
10
10
|
import CardsList from '../../../molecule/dashboard/cards-list';
|
|
11
|
-
import CertificationCard from '../../../molecule/certification-card';
|
|
12
|
-
import LearnerSkillCard from '../../../molecule/learner-skill-card';
|
|
13
11
|
import CMPopin from '../../../molecule/cm-popin';
|
|
14
|
-
import Tag from '../../../atom/tag';
|
|
15
|
-
import { cardPropTypes } from '../../../molecule/card';
|
|
16
|
-
import LearningPriorityCard from '../../../molecule/learning-priority-card';
|
|
17
|
-
import { COLORS } from '../../../variables/colors';
|
|
18
12
|
import style from './style.css';
|
|
19
13
|
const SearchPage = (props, context) => {
|
|
20
14
|
const {
|
|
@@ -28,8 +22,7 @@ const SearchPage = (props, context) => {
|
|
|
28
22
|
moreFilterAriaLabel,
|
|
29
23
|
filterGroupAriaLabel,
|
|
30
24
|
sortAriaLabel,
|
|
31
|
-
popinWithCards
|
|
32
|
-
sections = []
|
|
25
|
+
popinWithCards
|
|
33
26
|
} = props;
|
|
34
27
|
const {
|
|
35
28
|
skin
|
|
@@ -37,45 +30,7 @@ const SearchPage = (props, context) => {
|
|
|
37
30
|
const defaultColor = _getOr('#00B0FF', 'common.primary', skin);
|
|
38
31
|
const nodeRef = useRef(null);
|
|
39
32
|
const recommendationsView = _isEmpty(recommendations) ? null : /*#__PURE__*/React.createElement(CardsList, recommendations);
|
|
40
|
-
|
|
41
|
-
// Helper function to render content sections
|
|
42
|
-
const renderSection = section => {
|
|
43
|
-
if (!section || _isEmpty(section.cards)) return null;
|
|
44
|
-
|
|
45
|
-
// Create title with count tag
|
|
46
|
-
const titleWithCount = /*#__PURE__*/React.createElement("div", {
|
|
47
|
-
className: style.sectionTitle
|
|
48
|
-
}, /*#__PURE__*/React.createElement("span", null, section.title), /*#__PURE__*/React.createElement(Tag, {
|
|
49
|
-
label: section.cards.length.toString(),
|
|
50
|
-
type: "default",
|
|
51
|
-
size: "S",
|
|
52
|
-
customStyle: {
|
|
53
|
-
backgroundColor: COLORS.cm_grey_100,
|
|
54
|
-
color: COLORS.neutral_500
|
|
55
|
-
}
|
|
56
|
-
}));
|
|
57
|
-
const sectionProps = {
|
|
58
|
-
...section,
|
|
59
|
-
title: titleWithCount,
|
|
60
|
-
dataName: `${section.type}-section`
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
// Use CardsList with appropriate type for all sections
|
|
64
|
-
if (section.type === 'certifications') {
|
|
65
|
-
return /*#__PURE__*/React.createElement(CardsList, _extends({}, sectionProps, {
|
|
66
|
-
type: "certifications"
|
|
67
|
-
}));
|
|
68
|
-
}
|
|
69
|
-
if (section.type === 'skills') {
|
|
70
|
-
return /*#__PURE__*/React.createElement(CardsList, _extends({}, sectionProps, {
|
|
71
|
-
type: "skills"
|
|
72
|
-
}));
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// For new content and playlists, use standard cards
|
|
76
|
-
return /*#__PURE__*/React.createElement(CardsList, sectionProps);
|
|
77
|
-
};
|
|
78
|
-
const cardsView = _isEmpty(cards?.list) ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
33
|
+
const cardsView = _isEmpty(cards.list) ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
79
34
|
className: style.noresults
|
|
80
35
|
}, /*#__PURE__*/React.createElement("div", {
|
|
81
36
|
className: style.noresultstxt
|
|
@@ -87,38 +42,12 @@ const SearchPage = (props, context) => {
|
|
|
87
42
|
},
|
|
88
43
|
type: "link"
|
|
89
44
|
}))), recommendationsView) : /*#__PURE__*/React.createElement(CardsGrid, cards);
|
|
90
|
-
|
|
91
|
-
// Sort sections by order
|
|
92
|
-
const sortedSections = sections.sort((a, b) => a.order - b.order);
|
|
93
|
-
const hasSections = sortedSections.length > 0;
|
|
94
|
-
const contentGridSection = cards && !_isEmpty(cards.list) ? /*#__PURE__*/React.createElement("div", {
|
|
95
|
-
className: style.contentSection
|
|
96
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
97
|
-
className: style.sectionHeader
|
|
98
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
99
|
-
className: style.sectionTitle
|
|
100
|
-
}, /*#__PURE__*/React.createElement("span", null, "Content"), /*#__PURE__*/React.createElement(Tag, {
|
|
101
|
-
label: cards.list.length.toString(),
|
|
102
|
-
type: "default",
|
|
103
|
-
size: "S",
|
|
104
|
-
customStyle: {
|
|
105
|
-
backgroundColor: COLORS.cm_grey_100,
|
|
106
|
-
color: COLORS.neutral_500
|
|
107
|
-
}
|
|
108
|
-
})), /*#__PURE__*/React.createElement("div", {
|
|
109
|
-
className: style.contentGrid
|
|
110
|
-
}, ' ', /*#__PURE__*/React.createElement(CardsGrid, cards)))) : null;
|
|
111
|
-
return /*#__PURE__*/React.createElement("div", null, searchFilters ? /*#__PURE__*/React.createElement(Filters, _extends({}, searchFilters, {
|
|
45
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Filters, _extends({}, searchFilters, {
|
|
112
46
|
moreSortAriaLabel: moreSortAriaLabel,
|
|
113
47
|
moreFilterAriaLabel: moreFilterAriaLabel,
|
|
114
48
|
filterGroupAriaLabel: filterGroupAriaLabel,
|
|
115
49
|
sortAriaLabel: sortAriaLabel
|
|
116
|
-
}))
|
|
117
|
-
"data-name": "explorerSections",
|
|
118
|
-
className: style.sectionsWrapper
|
|
119
|
-
}, sortedSections.map((section, index) => /*#__PURE__*/React.createElement("div", {
|
|
120
|
-
key: `${section.type}-${index}`
|
|
121
|
-
}, renderSection(section))), contentGridSection) : /*#__PURE__*/React.createElement("div", {
|
|
50
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
122
51
|
"data-name": "searchResult",
|
|
123
52
|
className: style.cardsWrapper
|
|
124
53
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -143,19 +72,7 @@ SearchPage.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
143
72
|
moreFilterAriaLabel: PropTypes.string,
|
|
144
73
|
filterGroupAriaLabel: PropTypes.string,
|
|
145
74
|
sortAriaLabel: PropTypes.string,
|
|
146
|
-
popinWithCards: PropTypes.shape(CMPopin.propTypes)
|
|
147
|
-
sections: PropTypes.arrayOf(PropTypes.shape({
|
|
148
|
-
title: PropTypes.string,
|
|
149
|
-
cards: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.shape(cardPropTypes), PropTypes.shape(LearnerSkillCard.propTypes), PropTypes.shape(CertificationCard.propTypes), PropTypes.shape(LearningPriorityCard.propTypes)])),
|
|
150
|
-
showMore: PropTypes.string,
|
|
151
|
-
onShowMore: PropTypes.func,
|
|
152
|
-
order: PropTypes.number,
|
|
153
|
-
type: PropTypes.string,
|
|
154
|
-
'arrows-aria-label': PropTypes.shape({
|
|
155
|
-
showMoreOnLeftAriaLabel: PropTypes.string,
|
|
156
|
-
showMoreOnRightAriaLabel: PropTypes.string
|
|
157
|
-
})
|
|
158
|
-
}))
|
|
75
|
+
popinWithCards: PropTypes.shape(CMPopin.propTypes)
|
|
159
76
|
} : {};
|
|
160
77
|
export default SearchPage;
|
|
161
78
|
//# sourceMappingURL=index.js.map
|