@coorpacademy/components 11.2.3 → 11.2.4-alpha.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/atom/select/index.d.ts +1 -0
- package/es/atom/select/index.d.ts.map +1 -1
- package/es/atom/select/index.js +5 -2
- package/es/atom/select/index.js.map +1 -1
- package/es/molecule/brand-form-group/index.d.ts +2 -0
- package/es/molecule/card-content/index.d.ts.map +1 -1
- package/es/molecule/card-content/index.js +3 -3
- package/es/molecule/card-content/index.js.map +1 -1
- package/es/molecule/dashboard/cards-list/index.d.ts +4 -0
- package/es/molecule/dashboard/cards-list/index.d.ts.map +1 -1
- package/es/molecule/dashboard/cards-list/index.js +11 -4
- package/es/molecule/dashboard/cards-list/index.js.map +1 -1
- package/es/molecule/filters/index.d.ts +1 -0
- package/es/molecule/filters/index.d.ts.map +1 -1
- package/es/molecule/setup-slide/index.d.ts +1 -0
- package/es/molecule/setup-slider/index.d.ts +1 -0
- package/es/organism/brand-form/index.d.ts +2 -0
- package/es/organism/get-the-app/index.d.ts.map +1 -1
- package/es/organism/get-the-app/index.js +4 -2
- package/es/organism/get-the-app/index.js.map +1 -1
- package/es/organism/mooc-footer/index.d.ts +1 -1
- package/es/organism/mooc-footer/index.js +2 -2
- package/es/organism/mooc-footer/index.js.map +1 -1
- package/es/organism/mooc-header/index.d.ts.map +1 -1
- package/es/organism/mooc-header/index.js +3 -3
- package/es/organism/mooc-header/index.js.map +1 -1
- package/es/organism/wizard-contents/index.d.ts +2 -0
- package/es/template/app-player/popin-end/index.d.ts +4 -0
- package/es/template/app-player/popin-end/summary.d.ts +4 -0
- package/es/template/back-office/brand-update/index.d.ts +4 -0
- package/es/template/common/dashboard/index.d.ts +10 -6
- package/es/template/common/dashboard/index.d.ts.map +1 -1
- package/es/template/common/dashboard/index.js +9 -3
- package/es/template/common/dashboard/index.js.map +1 -1
- package/es/template/common/search-page/index.d.ts +5 -0
- package/es/template/teams-dashboard/index.d.ts +4 -0
- package/lib/atom/select/index.d.ts +1 -0
- package/lib/atom/select/index.d.ts.map +1 -1
- package/lib/atom/select/index.js +5 -2
- package/lib/atom/select/index.js.map +1 -1
- package/lib/molecule/brand-form-group/index.d.ts +2 -0
- package/lib/molecule/card-content/index.d.ts.map +1 -1
- package/lib/molecule/card-content/index.js +3 -3
- package/lib/molecule/card-content/index.js.map +1 -1
- package/lib/molecule/dashboard/cards-list/index.d.ts +4 -0
- package/lib/molecule/dashboard/cards-list/index.d.ts.map +1 -1
- package/lib/molecule/dashboard/cards-list/index.js +11 -4
- package/lib/molecule/dashboard/cards-list/index.js.map +1 -1
- package/lib/molecule/filters/index.d.ts +1 -0
- package/lib/molecule/filters/index.d.ts.map +1 -1
- package/lib/molecule/setup-slide/index.d.ts +1 -0
- package/lib/molecule/setup-slider/index.d.ts +1 -0
- package/lib/organism/brand-form/index.d.ts +2 -0
- package/lib/organism/get-the-app/index.d.ts.map +1 -1
- package/lib/organism/get-the-app/index.js +4 -2
- package/lib/organism/get-the-app/index.js.map +1 -1
- package/lib/organism/mooc-footer/index.d.ts +1 -1
- package/lib/organism/mooc-footer/index.js +2 -2
- package/lib/organism/mooc-footer/index.js.map +1 -1
- package/lib/organism/mooc-header/index.d.ts.map +1 -1
- package/lib/organism/mooc-header/index.js +3 -3
- package/lib/organism/mooc-header/index.js.map +1 -1
- package/lib/organism/wizard-contents/index.d.ts +2 -0
- package/lib/template/app-player/popin-end/index.d.ts +4 -0
- package/lib/template/app-player/popin-end/summary.d.ts +4 -0
- package/lib/template/back-office/brand-update/index.d.ts +4 -0
- package/lib/template/common/dashboard/index.d.ts +10 -6
- package/lib/template/common/dashboard/index.d.ts.map +1 -1
- package/lib/template/common/dashboard/index.js +9 -3
- package/lib/template/common/dashboard/index.js.map +1 -1
- package/lib/template/common/search-page/index.d.ts +5 -0
- package/lib/template/teams-dashboard/index.d.ts +4 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["themeStyle","filter","style","invalid","header","mooc","question","sort","thematiques","player","template","coorpmanager","Select","props","legacyContext","name","options","className","borderClassName","onChange","multiple","disabled","required","description","theme","modified","error","title","propTitle","skin","GetSkinFromContext","useMemo","optionList","map","option","index","value","selectOption","titleView","selected","get","find","selectedLabel","isSelectedInValidOption","getOr","validOption","handleChange","e","target","selectedOptions","black","color","shouldUseSkinFontColor","includes","arrowColor","undefined","arrowView","selectedArrow","arrow","behaviourClassName","getClassState","default","composedClassName","classnames","unselected","labelSize","size","isLongLabel","selectWrapper","selectSpan","noLabelCommon","longLabel","selectBox","SelectOptionPropTypes","PropTypes","string","isRequired","oneOfType","number","bool","contextTypes","Provider","childContextTypes","propTypes","func","oneOf","keys","arrayOf","shape"],"sources":["../../../src/atom/select/index.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport filter from 'lodash/fp/filter';\nimport find from 'lodash/fp/find';\nimport get from 'lodash/fp/get';\nimport getOr from 'lodash/fp/getOr';\nimport includes from 'lodash/fp/includes';\nimport keys from 'lodash/fp/keys';\nimport map from 'lodash/fp/map';\nimport size from 'lodash/fp/size';\nimport {NovaCompositionNavigationArrowDown as ArrowDown} from '@coorpacademy/nova-icons';\nimport Provider, {GetSkinFromContext} from '../provider';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst themeStyle = {\n filter: style.filter,\n invalid: style.invalid,\n header: style.header,\n mooc: style.mooc,\n question: style.question,\n sort: style.sort,\n thematiques: style.thematiques,\n player: style.player,\n template: style.template,\n coorpmanager: null\n};\n\nconst Select = (props, legacyContext) => {\n const {\n name,\n options = [],\n className,\n borderClassName,\n onChange,\n multiple = false,\n disabled,\n required,\n description,\n theme,\n modified = false,\n error = false,\n title: propTitle\n } = props;\n\n const skin = GetSkinFromContext(legacyContext);\n const title = useMemo(\n () => (propTitle ? `${propTitle}${required ? '*' : ''}` : null),\n [propTitle, required]\n );\n\n const optionList =\n options &&\n options.map((option, index) => {\n return (\n <option key={index} value={option.value} className={style.selectOption}>\n {option.name}\n </option>\n );\n });\n\n const titleView = title ? <span className={style.title}>{title} </span> : null;\n\n const selected = useMemo(\n () =>\n multiple\n ? map(get('value'), filter({selected: true}, options))\n : get('value', find({selected: true}, options)),\n [multiple, options]\n );\n const selectedLabel = useMemo(\n () =>\n multiple\n ? map(get('name'), filter({selected: true}, options))\n : get('name', find({selected: true}, options)),\n [multiple, options]\n );\n\n const isSelectedInValidOption = useMemo(\n () =>\n theme === 'player' &&\n getOr(false, 'name', find({validOption: false, selected: true}, options)),\n [options, theme]\n );\n\n const handleChange = useMemo(\n () =>\n multiple\n ? e => {\n onChange(map(get('value'), e.target.selectedOptions));\n }\n : e => {\n onChange(e.target.value);\n },\n [onChange, multiple]\n );\n\n const black = useMemo(() => getOr('#14171A', 'common.black', skin), [skin]);\n const color = useMemo(() => getOr('#00B0FF', 'common.primary', skin), [skin]);\n const shouldUseSkinFontColor = useMemo(\n () =>\n !isSelectedInValidOption && selected && includes(theme, ['question', 'template', 'player']),\n [isSelectedInValidOption, selected, theme]\n );\n const arrowColor = selected ? color : undefined;\n\n const arrowView = !multiple ? (\n <ArrowDown\n color={includes(theme, ['question', 'template', 'player']) ? arrowColor : black}\n className={shouldUseSkinFontColor ? style.selectedArrow : style.arrow}\n />\n ) : null;\n const behaviourClassName = useMemo(\n () => getClassState(style.default, style.modified, style.error, modified, error),\n [error, modified]\n );\n const composedClassName = useMemo(\n () =>\n classnames(\n theme && theme !== 'coorpmanager' ? themeStyle[theme] : behaviourClassName,\n selected ? style.selected : style.unselected,\n className\n ),\n [behaviourClassName, className, selected, theme]\n );\n\n const labelSize = useMemo(() => size(selectedLabel), [selectedLabel]);\n\n const isLongLabel = useMemo(() => labelSize >= 65, [labelSize]);\n\n return (\n <div\n className={classnames(\n composedClassName,\n theme === 'coorpmanager' ? style.coorpmanager : null\n )}\n >\n <label\n data-name=\"select-wrapper\"\n style={{\n ...(shouldUseSkinFontColor && {\n color\n })\n }}\n className={style.selectWrapper}\n >\n {titleView}\n <span\n data-name=\"select-span\"\n className={classnames(\n style.selectSpan,\n includes(theme, ['player', 'invalid', 'question', 'thematiques', 'template'])\n ? style.noLabelCommon\n : null,\n borderClassName,\n isLongLabel ? style.longLabel : null\n )}\n style={{\n ...(shouldUseSkinFontColor && {\n color\n })\n }}\n >\n {selectedLabel}\n </span>\n {arrowView}\n <select\n data-name=\"native-select\"\n className={style.selectBox}\n title={selectedLabel}\n name={name}\n onChange={handleChange}\n value={selected}\n multiple={multiple}\n disabled={disabled}\n >\n {optionList}\n </select>\n </label>\n <div className={style.description}>{description}</div>\n </div>\n );\n};\n\nexport const SelectOptionPropTypes = {\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n selected: PropTypes.bool,\n validOption: PropTypes.bool\n};\n\nSelect.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSelect.propTypes = {\n title: PropTypes.string,\n name: PropTypes.string,\n className: PropTypes.string,\n borderClassName: PropTypes.string,\n disabled: PropTypes.bool,\n multiple: PropTypes.bool,\n description: PropTypes.string,\n required: PropTypes.bool,\n onChange: PropTypes.func,\n theme: PropTypes.oneOf(keys(themeStyle)),\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes)),\n modified: PropTypes.bool,\n error: PropTypes.bool\n};\n\nexport default Select;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,MAAMA,UAAU,GAAG;EACjBC,MAAM,EAAEC,cAAA,CAAMD,MADG;EAEjBE,OAAO,EAAED,cAAA,CAAMC,OAFE;EAGjBC,MAAM,EAAEF,cAAA,CAAME,MAHG;EAIjBC,IAAI,EAAEH,cAAA,CAAMG,IAJK;EAKjBC,QAAQ,EAAEJ,cAAA,CAAMI,QALC;EAMjBC,IAAI,EAAEL,cAAA,CAAMK,IANK;EAOjBC,WAAW,EAAEN,cAAA,CAAMM,WAPF;EAQjBC,MAAM,EAAEP,cAAA,CAAMO,MARG;EASjBC,QAAQ,EAAER,cAAA,CAAMQ,QATC;EAUjBC,YAAY,EAAE;AAVG,CAAnB;;AAaA,MAAMC,MAAM,GAAG,CAACC,KAAD,EAAQC,aAAR,KAA0B;EACvC,MAAM;IACJC,IADI;IAEJC,OAAO,GAAG,EAFN;IAGJC,SAHI;IAIJC,eAJI;IAKJC,QALI;IAMJC,QAAQ,GAAG,KANP;IAOJC,QAPI;IAQJC,QARI;IASJC,WATI;IAUJC,KAVI;IAWJC,QAAQ,GAAG,KAXP;IAYJC,KAAK,GAAG,KAZJ;IAaJC,KAAK,EAAEC;EAbH,IAcFf,KAdJ;EAgBA,MAAMgB,IAAI,GAAG,IAAAC,4BAAA,EAAmBhB,aAAnB,CAAb;EACA,MAAMa,KAAK,GAAG,IAAAI,cAAA,EACZ,MAAOH,SAAS,GAAI,GAAEA,SAAU,GAAEN,QAAQ,GAAG,GAAH,GAAS,EAAG,EAAtC,GAA0C,IAD9C,EAEZ,CAACM,SAAD,EAAYN,QAAZ,CAFY,CAAd;EAKA,MAAMU,UAAU,GACdhB,OAAO,IACPA,OAAO,CAACiB,GAAR,CAAY,CAACC,MAAD,EAASC,KAAT,KAAmB;IAC7B,oBACE;MAAQ,GAAG,EAAEA,KAAb;MAAoB,KAAK,EAAED,MAAM,CAACE,KAAlC;MAAyC,SAAS,EAAElC,cAAA,CAAMmC;IAA1D,GACGH,MAAM,CAACnB,IADV,CADF;EAKD,CAND,CAFF;EAUA,MAAMuB,SAAS,GAAGX,KAAK,gBAAG;IAAM,SAAS,EAAEzB,cAAA,CAAMyB;EAAvB,GAA+BA,KAA/B,MAAH,GAAmD,IAA1E;EAEA,MAAMY,QAAQ,GAAG,IAAAR,cAAA,EACf,MACEX,QAAQ,GACJ,IAAAa,YAAA,EAAI,IAAAO,YAAA,EAAI,OAAJ,CAAJ,EAAkB,IAAAvC,eAAA,EAAO;IAACsC,QAAQ,EAAE;EAAX,CAAP,EAAyBvB,OAAzB,CAAlB,CADI,GAEJ,IAAAwB,YAAA,EAAI,OAAJ,EAAa,IAAAC,aAAA,EAAK;IAACF,QAAQ,EAAE;EAAX,CAAL,EAAuBvB,OAAvB,CAAb,CAJS,EAKf,CAACI,QAAD,EAAWJ,OAAX,CALe,CAAjB;EAOA,MAAM0B,aAAa,GAAG,IAAAX,cAAA,EACpB,MACEX,QAAQ,GACJ,IAAAa,YAAA,EAAI,IAAAO,YAAA,EAAI,MAAJ,CAAJ,EAAiB,IAAAvC,eAAA,EAAO;IAACsC,QAAQ,EAAE;EAAX,CAAP,EAAyBvB,OAAzB,CAAjB,CADI,GAEJ,IAAAwB,YAAA,EAAI,MAAJ,EAAY,IAAAC,aAAA,EAAK;IAACF,QAAQ,EAAE;EAAX,CAAL,EAAuBvB,OAAvB,CAAZ,CAJc,EAKpB,CAACI,QAAD,EAAWJ,OAAX,CALoB,CAAtB;EAQA,MAAM2B,uBAAuB,GAAG,IAAAZ,cAAA,EAC9B,MACEP,KAAK,KAAK,QAAV,IACA,IAAAoB,cAAA,EAAM,KAAN,EAAa,MAAb,EAAqB,IAAAH,aAAA,EAAK;IAACI,WAAW,EAAE,KAAd;IAAqBN,QAAQ,EAAE;EAA/B,CAAL,EAA2CvB,OAA3C,CAArB,CAH4B,EAI9B,CAACA,OAAD,EAAUQ,KAAV,CAJ8B,CAAhC;EAOA,MAAMsB,YAAY,GAAG,IAAAf,cAAA,EACnB,MACEX,QAAQ,GACJ2B,CAAC,IAAI;IACH5B,QAAQ,CAAC,IAAAc,YAAA,EAAI,IAAAO,YAAA,EAAI,OAAJ,CAAJ,EAAkBO,CAAC,CAACC,MAAF,CAASC,eAA3B,CAAD,CAAR;EACD,CAHG,GAIJF,CAAC,IAAI;IACH5B,QAAQ,CAAC4B,CAAC,CAACC,MAAF,CAASZ,KAAV,CAAR;EACD,CARY,EASnB,CAACjB,QAAD,EAAWC,QAAX,CATmB,CAArB;EAYA,MAAM8B,KAAK,GAAG,IAAAnB,cAAA,EAAQ,MAAM,IAAAa,cAAA,EAAM,SAAN,EAAiB,cAAjB,EAAiCf,IAAjC,CAAd,EAAsD,CAACA,IAAD,CAAtD,CAAd;EACA,MAAMsB,KAAK,GAAG,IAAApB,cAAA,EAAQ,MAAM,IAAAa,cAAA,EAAM,SAAN,EAAiB,gBAAjB,EAAmCf,IAAnC,CAAd,EAAwD,CAACA,IAAD,CAAxD,CAAd;EACA,MAAMuB,sBAAsB,GAAG,IAAArB,cAAA,EAC7B,MACE,CAACY,uBAAD,IAA4BJ,QAA5B,IAAwC,IAAAc,iBAAA,EAAS7B,KAAT,EAAgB,CAAC,UAAD,EAAa,UAAb,EAAyB,QAAzB,CAAhB,CAFb,EAG7B,CAACmB,uBAAD,EAA0BJ,QAA1B,EAAoCf,KAApC,CAH6B,CAA/B;EAKA,MAAM8B,UAAU,GAAGf,QAAQ,GAAGY,KAAH,GAAWI,SAAtC;EAEA,MAAMC,SAAS,GAAG,CAACpC,QAAD,gBAChB,6BAAC,6CAAD;IACE,KAAK,EAAE,IAAAiC,iBAAA,EAAS7B,KAAT,EAAgB,CAAC,UAAD,EAAa,UAAb,EAAyB,QAAzB,CAAhB,IAAsD8B,UAAtD,GAAmEJ,KAD5E;IAEE,SAAS,EAAEE,sBAAsB,GAAGlD,cAAA,CAAMuD,aAAT,GAAyBvD,cAAA,CAAMwD;EAFlE,EADgB,GAKd,IALJ;EAMA,MAAMC,kBAAkB,GAAG,IAAA5B,cAAA,EACzB,MAAM,IAAA6B,sBAAA,EAAc1D,cAAA,CAAM2D,OAApB,EAA6B3D,cAAA,CAAMuB,QAAnC,EAA6CvB,cAAA,CAAMwB,KAAnD,EAA0DD,QAA1D,EAAoEC,KAApE,CADmB,EAEzB,CAACA,KAAD,EAAQD,QAAR,CAFyB,CAA3B;EAIA,MAAMqC,iBAAiB,GAAG,IAAA/B,cAAA,EACxB,MACE,IAAAgC,mBAAA,EACEvC,KAAK,IAAIA,KAAK,KAAK,cAAnB,GAAoCxB,UAAU,CAACwB,KAAD,CAA9C,GAAwDmC,kBAD1D,EAEEpB,QAAQ,GAAGrC,cAAA,CAAMqC,QAAT,GAAoBrC,cAAA,CAAM8D,UAFpC,EAGE/C,SAHF,CAFsB,EAOxB,CAAC0C,kBAAD,EAAqB1C,SAArB,EAAgCsB,QAAhC,EAA0Cf,KAA1C,CAPwB,CAA1B;EAUA,MAAMyC,SAAS,GAAG,IAAAlC,cAAA,EAAQ,MAAM,IAAAmC,aAAA,EAAKxB,aAAL,CAAd,EAAmC,CAACA,aAAD,CAAnC,CAAlB;EAEA,MAAMyB,WAAW,GAAG,IAAApC,cAAA,EAAQ,MAAMkC,SAAS,IAAI,EAA3B,EAA+B,CAACA,SAAD,CAA/B,CAApB;EAEA,oBACE;IACE,SAAS,EAAE,IAAAF,mBAAA,EACTD,iBADS,EAETtC,KAAK,KAAK,cAAV,GAA2BtB,cAAA,CAAMS,YAAjC,GAAgD,IAFvC;EADb,gBAME;IACE,aAAU,gBADZ;IAEE,KAAK,eACCyC,sBAAsB,IAAI;MAC5BD;IAD4B,CAD3B,CAFP;IAOE,SAAS,EAAEjD,cAAA,CAAMkE;EAPnB,GASG9B,SATH,eAUE;IACE,aAAU,aADZ;IAEE,SAAS,EAAE,IAAAyB,mBAAA,EACT7D,cAAA,CAAMmE,UADG,EAET,IAAAhB,iBAAA,EAAS7B,KAAT,EAAgB,CAAC,QAAD,EAAW,SAAX,EAAsB,UAAtB,EAAkC,aAAlC,EAAiD,UAAjD,CAAhB,IACItB,cAAA,CAAMoE,aADV,GAEI,IAJK,EAKTpD,eALS,EAMTiD,WAAW,GAAGjE,cAAA,CAAMqE,SAAT,GAAqB,IANvB,CAFb;IAUE,KAAK,eACCnB,sBAAsB,IAAI;MAC5BD;IAD4B,CAD3B;EAVP,GAgBGT,aAhBH,CAVF,EA4BGc,SA5BH,eA6BE;IACE,aAAU,eADZ;IAEE,SAAS,EAAEtD,cAAA,CAAMsE,SAFnB;IAGE,KAAK,EAAE9B,aAHT;IAIE,IAAI,EAAE3B,IAJR;IAKE,QAAQ,EAAE+B,YALZ;IAME,KAAK,EAAEP,QANT;IAOE,QAAQ,EAAEnB,QAPZ;IAQE,QAAQ,EAAEC;EARZ,GAUGW,UAVH,CA7BF,CANF,eAgDE;IAAK,SAAS,EAAE9B,cAAA,CAAMqB;EAAtB,GAAoCA,WAApC,CAhDF,CADF;AAoDD,CA1JD;;AA4JO,MAAMkD,qBAAqB,GAAG;EACnC1D,IAAI,EAAE2D,kBAAA,CAAUC,MAAV,CAAiBC,UADY;EAEnCxC,KAAK,EAAEsC,kBAAA,CAAUG,SAAV,CAAoB,CAACH,kBAAA,CAAUC,MAAX,EAAmBD,kBAAA,CAAUI,MAA7B,CAApB,CAF4B;EAGnCvC,QAAQ,EAAEmC,kBAAA,CAAUK,IAHe;EAInClC,WAAW,EAAE6B,kBAAA,CAAUK;AAJY,CAA9B;;AAOPnE,MAAM,CAACoE,YAAP,GAAsB;EACpBnD,IAAI,EAAEoD,iBAAA,CAASC,iBAAT,CAA2BrD;AADb,CAAtB;AAIAjB,MAAM,CAACuE,SAAP,2CAAmB;EACjBxD,KAAK,EAAE+C,kBAAA,CAAUC,MADA;EAEjB5D,IAAI,EAAE2D,kBAAA,CAAUC,MAFC;EAGjB1D,SAAS,EAAEyD,kBAAA,CAAUC,MAHJ;EAIjBzD,eAAe,EAAEwD,kBAAA,CAAUC,MAJV;EAKjBtD,QAAQ,EAAEqD,kBAAA,CAAUK,IALH;EAMjB3D,QAAQ,EAAEsD,kBAAA,CAAUK,IANH;EAOjBxD,WAAW,EAAEmD,kBAAA,CAAUC,MAPN;EAQjBrD,QAAQ,EAAEoD,kBAAA,CAAUK,IARH;EASjB5D,QAAQ,EAAEuD,kBAAA,CAAUU,IATH;EAUjB5D,KAAK,EAAEkD,kBAAA,CAAUW,KAAV,CAAgB,IAAAC,aAAA,EAAKtF,UAAL,CAAhB,CAVU;EAWjBgB,OAAO,EAAE0D,kBAAA,CAAUa,OAAV,CAAkBb,kBAAA,CAAUc,KAAV,CAAgBf,qBAAhB,CAAlB,CAXQ;EAYjBhD,QAAQ,EAAEiD,kBAAA,CAAUK,IAZH;EAajBrD,KAAK,EAAEgD,kBAAA,CAAUK;AAbA,CAAnB;eAgBenE,M"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["themeStyle","filter","style","invalid","header","mooc","question","sort","thematiques","player","template","coorpmanager","Select","props","legacyContext","name","options","className","borderClassName","onChange","multiple","disabled","required","description","theme","modified","error","title","propTitle","moreLabel","skin","GetSkinFromContext","useMemo","optionList","map","option","index","value","selectOption","titleView","selected","get","find","selectedLabel","isSelectedInValidOption","getOr","validOption","handleChange","e","target","selectedOptions","black","color","shouldUseSkinFontColor","includes","arrowColor","undefined","arrowView","selectedArrow","arrow","behaviourClassName","getClassState","default","composedClassName","classnames","unselected","labelSize","size","isLongLabel","selectWrapper","selectSpan","noLabelCommon","longLabel","selectBox","SelectOptionPropTypes","PropTypes","string","isRequired","oneOfType","number","bool","contextTypes","Provider","childContextTypes","propTypes","func","oneOf","keys","arrayOf","shape"],"sources":["../../../src/atom/select/index.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport filter from 'lodash/fp/filter';\nimport find from 'lodash/fp/find';\nimport get from 'lodash/fp/get';\nimport getOr from 'lodash/fp/getOr';\nimport includes from 'lodash/fp/includes';\nimport keys from 'lodash/fp/keys';\nimport map from 'lodash/fp/map';\nimport size from 'lodash/fp/size';\nimport {NovaCompositionNavigationArrowDown as ArrowDown} from '@coorpacademy/nova-icons';\nimport Provider, {GetSkinFromContext} from '../provider';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst themeStyle = {\n filter: style.filter,\n invalid: style.invalid,\n header: style.header,\n mooc: style.mooc,\n question: style.question,\n sort: style.sort,\n thematiques: style.thematiques,\n player: style.player,\n template: style.template,\n coorpmanager: null\n};\n\nconst Select = (props, legacyContext) => {\n const {\n name,\n options = [],\n className,\n borderClassName,\n onChange,\n multiple = false,\n disabled,\n required,\n description,\n theme,\n modified = false,\n error = false,\n title: propTitle,\n moreLabel\n } = props;\n\n const skin = GetSkinFromContext(legacyContext);\n const title = useMemo(\n () => (propTitle ? `${propTitle}${required ? '*' : ''}` : null),\n [propTitle, required]\n );\n\n const optionList =\n options &&\n options.map((option, index) => {\n return (\n <option key={index} value={option.value} className={style.selectOption}>\n {option.name}\n </option>\n );\n });\n\n const titleView = title ? <span className={style.title}>{title} </span> : null;\n\n const selected = useMemo(\n () =>\n multiple\n ? map(get('value'), filter({selected: true}, options))\n : get('value', find({selected: true}, options)),\n [multiple, options]\n );\n const selectedLabel = useMemo(\n () =>\n multiple\n ? map(get('name'), filter({selected: true}, options))\n : get('name', find({selected: true}, options)),\n [multiple, options]\n );\n\n const isSelectedInValidOption = useMemo(\n () =>\n theme === 'player' &&\n getOr(false, 'name', find({validOption: false, selected: true}, options)),\n [options, theme]\n );\n\n const handleChange = useMemo(\n () =>\n multiple\n ? e => {\n onChange(map(get('value'), e.target.selectedOptions));\n }\n : e => {\n onChange(e.target.value);\n },\n [onChange, multiple]\n );\n\n const black = useMemo(() => getOr('#14171A', 'common.black', skin), [skin]);\n const color = useMemo(() => getOr('#00B0FF', 'common.primary', skin), [skin]);\n const shouldUseSkinFontColor = useMemo(\n () =>\n !isSelectedInValidOption && selected && includes(theme, ['question', 'template', 'player']),\n [isSelectedInValidOption, selected, theme]\n );\n const arrowColor = selected ? color : undefined;\n\n const arrowView = !multiple ? (\n <ArrowDown\n color={includes(theme, ['question', 'template', 'player']) ? arrowColor : black}\n className={shouldUseSkinFontColor ? style.selectedArrow : style.arrow}\n aria-label={moreLabel}\n />\n ) : null;\n const behaviourClassName = useMemo(\n () => getClassState(style.default, style.modified, style.error, modified, error),\n [error, modified]\n );\n const composedClassName = useMemo(\n () =>\n classnames(\n theme && theme !== 'coorpmanager' ? themeStyle[theme] : behaviourClassName,\n selected ? style.selected : style.unselected,\n className\n ),\n [behaviourClassName, className, selected, theme]\n );\n\n const labelSize = useMemo(() => size(selectedLabel), [selectedLabel]);\n\n const isLongLabel = useMemo(() => labelSize >= 65, [labelSize]);\n\n return (\n <div\n className={classnames(\n composedClassName,\n theme === 'coorpmanager' ? style.coorpmanager : null\n )}\n >\n <label\n data-name=\"select-wrapper\"\n style={{\n ...(shouldUseSkinFontColor && {\n color\n })\n }}\n className={style.selectWrapper}\n >\n {titleView}\n <span\n data-name=\"select-span\"\n className={classnames(\n style.selectSpan,\n includes(theme, ['player', 'invalid', 'question', 'thematiques', 'template'])\n ? style.noLabelCommon\n : null,\n borderClassName,\n isLongLabel ? style.longLabel : null\n )}\n style={{\n ...(shouldUseSkinFontColor && {\n color\n })\n }}\n >\n {selectedLabel}\n </span>\n {arrowView}\n <select\n data-name=\"native-select\"\n className={style.selectBox}\n title={selectedLabel}\n name={name}\n onChange={handleChange}\n value={selected}\n multiple={multiple}\n disabled={disabled}\n >\n {optionList}\n </select>\n </label>\n <div className={style.description}>{description}</div>\n </div>\n );\n};\n\nexport const SelectOptionPropTypes = {\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n selected: PropTypes.bool,\n validOption: PropTypes.bool\n};\n\nSelect.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nSelect.propTypes = {\n title: PropTypes.string,\n moreLabel: PropTypes.string,\n name: PropTypes.string,\n className: PropTypes.string,\n borderClassName: PropTypes.string,\n disabled: PropTypes.bool,\n multiple: PropTypes.bool,\n description: PropTypes.string,\n required: PropTypes.bool,\n onChange: PropTypes.func,\n theme: PropTypes.oneOf(keys(themeStyle)),\n options: PropTypes.arrayOf(PropTypes.shape(SelectOptionPropTypes)),\n modified: PropTypes.bool,\n error: PropTypes.bool\n};\n\nexport default Select;\n"],"mappings":"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"}
|
|
@@ -81,6 +81,7 @@ declare namespace BrandFormGroup {
|
|
|
81
81
|
type: PropTypes.Requireable<string>;
|
|
82
82
|
size: PropTypes.Requireable<string>;
|
|
83
83
|
title: PropTypes.Requireable<string>;
|
|
84
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
84
85
|
name: PropTypes.Requireable<string>;
|
|
85
86
|
className: PropTypes.Requireable<string>;
|
|
86
87
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -184,6 +185,7 @@ declare namespace BrandFormGroup {
|
|
|
184
185
|
}> | PropTypes.InferProps<{
|
|
185
186
|
type: PropTypes.Requireable<string>;
|
|
186
187
|
title: PropTypes.Requireable<string>;
|
|
188
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
187
189
|
name: PropTypes.Requireable<string>;
|
|
188
190
|
className: PropTypes.Requireable<string>;
|
|
189
191
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card-content/index.js"],"names":[],"mappings":";;;;;;;;;;AAyHA;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/card-content/index.js"],"names":[],"mappings":";;;;;;;;;;AAyHA;;;;;;;;;;;;;;gBA6EC"}
|
|
@@ -165,10 +165,10 @@ const ContentInfo = ({
|
|
|
165
165
|
"aria-label": (0, _get2.default)('progression', ariaLabel)
|
|
166
166
|
}) : null) : null;
|
|
167
167
|
const adaptiveIcon = adaptiv ? /*#__PURE__*/_react.default.createElement("div", {
|
|
168
|
-
className: (0, _classnames.default)(_style.default.adaptiveIcon, courseContent ? _style.default.iconShadow : null)
|
|
169
|
-
"aria-label": (0, _get2.default)('adaptive', ariaLabel)
|
|
168
|
+
className: (0, _classnames.default)(_style.default.adaptiveIcon, courseContent ? _style.default.iconShadow : null)
|
|
170
169
|
}, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyAdaptive, {
|
|
171
|
-
height: 25
|
|
170
|
+
height: 25,
|
|
171
|
+
"aria-label": (0, _get2.default)('adaptive', ariaLabel)
|
|
172
172
|
})) : null;
|
|
173
173
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
174
174
|
"data-name": "info",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["MODES","HERO","CARD","THEMES","default","coorpmanager","style","ContentTypeInfo","mode","type","externalContent","context","translate","microLearningIcon","timerIcon","microLearninglabel","EXTERNAL_CONTENT_ICONS","textColor","color","contentTypeInfo","contextTypes","skin","Provider","childContextTypes","propTypes","PropTypes","bool","string","CardTitle","title","empty","courseContent","classnames","innerHTML","lightTitle","darkTitle","__html","AuthorName","author","certifiedAuthor","ariaLabel","checkIcon","authorIcon","iconShadow","darkAuthorTitle","ContentInfo","adaptiv","disabled","progress","badgeCategory","badgeLabel","theme","progressBarColor","inlineProgressValueStyle","backgroundColor","width","isExternalContent","chapterContent","progressBar","progressWrapper","hideProgressBar","adaptiveIcon","infoWrapper","hero","card","progressBarDisabled","cardInfo","microLearningCardInfo","iconWrapper","number","ContentBadge","category","label","oneOf","shape","progression","adaptive"],"sources":["../../../src/molecule/card-content/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, isNil, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyAdaptive as AdaptivIcon,\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport {isExternalContent, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport ContentBadge from '../../atom/content-badge';\nimport style from './style.css';\n\nexport const MODES = {\n HERO: 'hero',\n CARD: 'card'\n};\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst ContentTypeInfo = ({mode, type, externalContent}, context) => {\n const {translate} = context;\n if (mode !== MODES.CARD) {\n return null;\n }\n\n if (type === 'chapter') {\n return (\n <div className={style.microLearningIcon}>\n <TimerIcon className={style.timerIcon} />\n <span className={style.microLearninglabel}>{\"5' learning\"}</span>\n </div>\n );\n }\n if (externalContent && EXTERNAL_CONTENT_ICONS[type]) {\n const textColor = EXTERNAL_CONTENT_ICONS[type].color;\n\n return (\n <div className={style.contentTypeInfo} style={{color: textColor}}>\n {type === 'scorm' ? translate('external_content_scorm') : ''}\n {type === 'video' ? translate('external_content_video') : ''}\n {type === 'article' ? translate('external_content_article') : ''}\n {type === 'podcast' ? translate('external_content_podcast') : ''}\n </div>\n );\n }\n\n return null;\n};\n\nContentTypeInfo.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContentTypeInfo.propTypes = {\n externalContent: PropTypes.bool,\n type: PropTypes.string,\n mode: PropTypes.string\n};\n\nconst CardTitle = ({title, empty, courseContent}) => {\n return (\n <div\n className={classnames(\n style.title,\n style.innerHTML,\n courseContent ? style.lightTitle : style.darkTitle,\n empty ? style.empty : null\n )}\n data-name=\"title\"\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n};\n\nCardTitle.propTypes = {\n title: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool\n};\n\nconst AuthorName = ({author, empty, courseContent, certifiedAuthor, 'aria-label': ariaLabel}) => {\n const checkIcon = certifiedAuthor ? (\n <CheckIcon\n className={classnames(style.authorIcon, courseContent ? style.iconShadow : null)}\n color=\"inherit\"\n />\n ) : null;\n\n return (\n <div\n data-name=\"author\"\n title={author}\n aria-label={ariaLabel}\n className={classnames(\n style.author,\n courseContent ? style.lightTitle : style.darkAuthorTitle,\n empty ? style.empty : null\n )}\n >\n <span>{author}</span>\n {checkIcon}\n </div>\n );\n};\n\nAuthorName.propTypes = {\n author: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool,\n certifiedAuthor: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst ContentInfo = ({\n adaptiv,\n author,\n certifiedAuthor = false,\n disabled = false,\n empty = false,\n mode = MODES.CARD,\n progress,\n title,\n type,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n 'aria-label': ariaLabel\n}) => {\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${progress * 100}%`\n };\n const externalContent = isExternalContent(type);\n const courseContent = type === 'course';\n const chapterContent = type === 'chapter';\n\n const progressBar =\n mode === MODES.HERO || (!empty && !disabled) ? (\n <div className={!isNil(progress) ? style.progressWrapper : style.hideProgressBar}>\n {!disabled ? (\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n aria-label={get('progression', ariaLabel)}\n />\n ) : null}\n </div>\n ) : null;\n\n const adaptiveIcon = adaptiv ? (\n <div\n className={classnames(style.adaptiveIcon, courseContent ? style.iconShadow : null)}\n aria-label={get('adaptive', ariaLabel)}\n >\n <AdaptivIcon height={25} />\n </div>\n ) : null;\n\n return (\n <div\n data-name=\"info\"\n className={classnames(\n THEMES[theme],\n style.infoWrapper,\n mode === MODES.HERO ? style.hero : style.card,\n disabled ? style.progressBarDisabled : null,\n externalContent ? style.externalContent : null\n )}\n >\n <ContentTypeInfo mode={mode} type={type} externalContent={externalContent} />\n <div\n className={classnames(style.cardInfo, chapterContent ? style.microLearningCardInfo : null)}\n >\n <div className={style.iconWrapper}>\n {adaptiveIcon}\n {!empty && badgeLabel && badgeCategory && courseContent ? (\n <ContentBadge category={badgeCategory} label={badgeLabel} />\n ) : null}\n </div>\n <CardTitle title={title} empty={empty} courseContent={courseContent} />\n <AuthorName\n author={author}\n empty={empty}\n courseContent={courseContent}\n certifiedAuthor={certifiedAuthor}\n aria-label={get('author', ariaLabel)}\n />\n </div>\n {progressBar}\n </div>\n );\n};\n\nContentInfo.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nContentInfo.propTypes = {\n adaptiv: PropTypes.bool,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n disabled: PropTypes.bool,\n empty: PropTypes.bool,\n progress: PropTypes.number,\n title: PropTypes.string,\n type: PropTypes.string,\n mode: PropTypes.string,\n badgeCategory: ContentBadge.propTypes.category,\n badgeLabel: ContentBadge.propTypes.label,\n theme: PropTypes.oneOf(keys(THEMES)),\n 'aria-label': PropTypes.shape({\n author: PropTypes.string,\n progression: PropTypes.string,\n adaptive: PropTypes.string\n })\n};\n\nexport default ContentInfo;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["MODES","HERO","CARD","THEMES","default","coorpmanager","style","ContentTypeInfo","mode","type","externalContent","context","translate","microLearningIcon","timerIcon","microLearninglabel","EXTERNAL_CONTENT_ICONS","textColor","color","contentTypeInfo","contextTypes","skin","Provider","childContextTypes","propTypes","PropTypes","bool","string","CardTitle","title","empty","courseContent","classnames","innerHTML","lightTitle","darkTitle","__html","AuthorName","author","certifiedAuthor","ariaLabel","checkIcon","authorIcon","iconShadow","darkAuthorTitle","ContentInfo","adaptiv","disabled","progress","badgeCategory","badgeLabel","theme","progressBarColor","inlineProgressValueStyle","backgroundColor","width","isExternalContent","chapterContent","progressBar","progressWrapper","hideProgressBar","adaptiveIcon","infoWrapper","hero","card","progressBarDisabled","cardInfo","microLearningCardInfo","iconWrapper","number","ContentBadge","category","label","oneOf","shape","progression","adaptive"],"sources":["../../../src/molecule/card-content/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, isNil, keys} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyAdaptive as AdaptivIcon,\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport {isExternalContent, EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport Provider from '../../atom/provider';\nimport ContentBadge from '../../atom/content-badge';\nimport style from './style.css';\n\nexport const MODES = {\n HERO: 'hero',\n CARD: 'card'\n};\n\nexport const THEMES = {\n default: null,\n coorpmanager: style.coorpmanager\n};\n\nconst ContentTypeInfo = ({mode, type, externalContent}, context) => {\n const {translate} = context;\n if (mode !== MODES.CARD) {\n return null;\n }\n\n if (type === 'chapter') {\n return (\n <div className={style.microLearningIcon}>\n <TimerIcon className={style.timerIcon} />\n <span className={style.microLearninglabel}>{\"5' learning\"}</span>\n </div>\n );\n }\n if (externalContent && EXTERNAL_CONTENT_ICONS[type]) {\n const textColor = EXTERNAL_CONTENT_ICONS[type].color;\n\n return (\n <div className={style.contentTypeInfo} style={{color: textColor}}>\n {type === 'scorm' ? translate('external_content_scorm') : ''}\n {type === 'video' ? translate('external_content_video') : ''}\n {type === 'article' ? translate('external_content_article') : ''}\n {type === 'podcast' ? translate('external_content_podcast') : ''}\n </div>\n );\n }\n\n return null;\n};\n\nContentTypeInfo.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nContentTypeInfo.propTypes = {\n externalContent: PropTypes.bool,\n type: PropTypes.string,\n mode: PropTypes.string\n};\n\nconst CardTitle = ({title, empty, courseContent}) => {\n return (\n <div\n className={classnames(\n style.title,\n style.innerHTML,\n courseContent ? style.lightTitle : style.darkTitle,\n empty ? style.empty : null\n )}\n data-name=\"title\"\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n};\n\nCardTitle.propTypes = {\n title: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool\n};\n\nconst AuthorName = ({author, empty, courseContent, certifiedAuthor, 'aria-label': ariaLabel}) => {\n const checkIcon = certifiedAuthor ? (\n <CheckIcon\n className={classnames(style.authorIcon, courseContent ? style.iconShadow : null)}\n color=\"inherit\"\n />\n ) : null;\n\n return (\n <div\n data-name=\"author\"\n title={author}\n aria-label={ariaLabel}\n className={classnames(\n style.author,\n courseContent ? style.lightTitle : style.darkAuthorTitle,\n empty ? style.empty : null\n )}\n >\n <span>{author}</span>\n {checkIcon}\n </div>\n );\n};\n\nAuthorName.propTypes = {\n author: PropTypes.string,\n empty: PropTypes.bool,\n courseContent: PropTypes.bool,\n certifiedAuthor: PropTypes.bool,\n 'aria-label': PropTypes.string\n};\n\nconst ContentInfo = ({\n adaptiv,\n author,\n certifiedAuthor = false,\n disabled = false,\n empty = false,\n mode = MODES.CARD,\n progress,\n title,\n type,\n badgeCategory,\n badgeLabel,\n theme = 'default',\n 'aria-label': ariaLabel\n}) => {\n const progressBarColor = '#3EC483';\n const inlineProgressValueStyle = {\n backgroundColor: progressBarColor,\n width: `${progress * 100}%`\n };\n const externalContent = isExternalContent(type);\n const courseContent = type === 'course';\n const chapterContent = type === 'chapter';\n\n const progressBar =\n mode === MODES.HERO || (!empty && !disabled) ? (\n <div className={!isNil(progress) ? style.progressWrapper : style.hideProgressBar}>\n {!disabled ? (\n <div\n data-name=\"progress\"\n className={style.progress}\n style={inlineProgressValueStyle}\n aria-label={get('progression', ariaLabel)}\n />\n ) : null}\n </div>\n ) : null;\n\n const adaptiveIcon = adaptiv ? (\n <div className={classnames(style.adaptiveIcon, courseContent ? style.iconShadow : null)}>\n <AdaptivIcon height={25} aria-label={get('adaptive', ariaLabel)} />\n </div>\n ) : null;\n\n return (\n <div\n data-name=\"info\"\n className={classnames(\n THEMES[theme],\n style.infoWrapper,\n mode === MODES.HERO ? style.hero : style.card,\n disabled ? style.progressBarDisabled : null,\n externalContent ? style.externalContent : null\n )}\n >\n <ContentTypeInfo mode={mode} type={type} externalContent={externalContent} />\n <div\n className={classnames(style.cardInfo, chapterContent ? style.microLearningCardInfo : null)}\n >\n <div className={style.iconWrapper}>\n {adaptiveIcon}\n {!empty && badgeLabel && badgeCategory && courseContent ? (\n <ContentBadge category={badgeCategory} label={badgeLabel} />\n ) : null}\n </div>\n <CardTitle title={title} empty={empty} courseContent={courseContent} />\n <AuthorName\n author={author}\n empty={empty}\n courseContent={courseContent}\n certifiedAuthor={certifiedAuthor}\n aria-label={get('author', ariaLabel)}\n />\n </div>\n {progressBar}\n </div>\n );\n};\n\nContentInfo.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nContentInfo.propTypes = {\n adaptiv: PropTypes.bool,\n author: PropTypes.string,\n certifiedAuthor: PropTypes.bool,\n disabled: PropTypes.bool,\n empty: PropTypes.bool,\n progress: PropTypes.number,\n title: PropTypes.string,\n type: PropTypes.string,\n mode: PropTypes.string,\n badgeCategory: ContentBadge.propTypes.category,\n badgeLabel: ContentBadge.propTypes.label,\n theme: PropTypes.oneOf(keys(THEMES)),\n 'aria-label': PropTypes.shape({\n author: PropTypes.string,\n progression: PropTypes.string,\n adaptive: PropTypes.string\n })\n};\n\nexport default ContentInfo;\n"],"mappings":"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"}
|
|
@@ -8,6 +8,10 @@ declare class CardsList extends React.PureComponent<any, any, any> {
|
|
|
8
8
|
cards: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
|
9
9
|
onScroll: PropTypes.Requireable<(...args: any[]) => any>;
|
|
10
10
|
onShowMore: PropTypes.Requireable<(...args: any[]) => any>;
|
|
11
|
+
'arrows-aria-label': PropTypes.Requireable<PropTypes.InferProps<{
|
|
12
|
+
showMoreOnLeftAriaLabel: PropTypes.Requireable<string>;
|
|
13
|
+
showMoreOnRightAriaLabel: PropTypes.Requireable<string>;
|
|
14
|
+
}>>;
|
|
11
15
|
};
|
|
12
16
|
static contextTypes: {
|
|
13
17
|
skin: PropTypes.Requireable<PropTypes.InferProps<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/cards-list/index.js"],"names":[],"mappings":";AAuFA;IACE
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/dashboard/cards-list/index.js"],"names":[],"mappings":";AAuFA;IACE;;;;;;;;;;;;MAYE;IAEF;;;;;;;;;;;;;;;;;;;;;;;MAGE;IAEF,wBAuBC;IApBC;;;;;;;;MAQC;IAED,0DAAgE;IAuGlE,qBAiBC;IAED,qBAGC;IAED,sBAGC;IAED,0BASC;IAxIC,uEAA6D;IA0I/D,mCAIC;IA1DD,oCAMC;IAED,sCAIC;IA1DD,qBAGC;IAlCD,0BAMC;IAED,2BAYC;IAED,6BAOC;IAOD,wCAuCC;IAGC,kBAA2B;IA2D7B,sBAsFC;CACF"}
|
|
@@ -288,7 +288,8 @@ class CardsList extends _react.default.PureComponent {
|
|
|
288
288
|
cards,
|
|
289
289
|
onShowMore,
|
|
290
290
|
dataName,
|
|
291
|
-
contentType
|
|
291
|
+
contentType,
|
|
292
|
+
'arrows-aria-label': ariaLabel = {}
|
|
292
293
|
} = this.props;
|
|
293
294
|
const {
|
|
294
295
|
skin
|
|
@@ -315,7 +316,8 @@ class CardsList extends _react.default.PureComponent {
|
|
|
315
316
|
color: dark,
|
|
316
317
|
className: _style.default.left,
|
|
317
318
|
width: 10,
|
|
318
|
-
height: 10
|
|
319
|
+
height: 10,
|
|
320
|
+
"aria-label": ariaLabel.showMoreOnLeftAriaLabel
|
|
319
321
|
}));
|
|
320
322
|
|
|
321
323
|
const rightArrowView = /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -326,7 +328,8 @@ class CardsList extends _react.default.PureComponent {
|
|
|
326
328
|
color: dark,
|
|
327
329
|
className: _style.default.right,
|
|
328
330
|
width: 10,
|
|
329
|
-
height: 10
|
|
331
|
+
height: 10,
|
|
332
|
+
"aria-label": ariaLabel.showMoreOnRightAriaLabel
|
|
330
333
|
}));
|
|
331
334
|
|
|
332
335
|
const titleView = /*#__PURE__*/_react.default.createElement("span", {
|
|
@@ -373,7 +376,11 @@ CardsList.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
373
376
|
showMore: _propTypes.default.string,
|
|
374
377
|
cards: _propTypes.default.arrayOf(_propTypes.default.shape(_card.default.protoTypes)),
|
|
375
378
|
onScroll: _propTypes.default.func,
|
|
376
|
-
onShowMore: _propTypes.default.func
|
|
379
|
+
onShowMore: _propTypes.default.func,
|
|
380
|
+
'arrows-aria-label': _propTypes.default.shape({
|
|
381
|
+
showMoreOnLeftAriaLabel: _propTypes.default.string,
|
|
382
|
+
showMoreOnRightAriaLabel: _propTypes.default.string
|
|
383
|
+
})
|
|
377
384
|
} : {};
|
|
378
385
|
var _default = CardsList;
|
|
379
386
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["ShowMoreLink","props","onShowMore","showMore","className","contextTypes","skin","Provider","childContextTypes","propTypes","PropTypes","func","string","IconView","context","contentType","ICONS","chapter","TimerIcon","course","LearnerIcon","dark","IconType","style","icon","computeWidth","card","type","nextPage","page","maxPages","CardsList","React","PureComponent","constructor","state","actualPage","scrollLeft","offsetWidth","possiblePositions","possiblePages","cardsWidth","handleScroll_","handleScroll","bind","handleOnLeft","handleOnRight","scrollTo","updateState","updatePages","setCardsWrapper","getScrollWidth","handleResize","componentDidMount","cardsWrapper","addEventListener","window","componentDidUpdate","cards","newCardsWidth","updatePaginationState","setState","componentWillUnmount","removeEventListener","cancel","wrapperWidth","wrapperScrollLeft","cardWidths","cardPositions","accWidth","cardWidth","acc","pageIndex","accPageWidth","pageWidth","skip","position","element","index","onScroll","leftBound","rightBound","leftIndex","rightIndex","limit","indexOfNextFirstCard","indexOf","nextPosition","render","title","dataName","titleStyle","titleLink","cardsView","key","leftArrowView","circle","left","rightArrowView","right","titleView","hasPages","showMoreView","showMoreBar","switchPagesView","pagingWrapper","wrapper","list","header","translate","arrayOf","shape","Card","protoTypes"],"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 NovaCompositionNavigationArrowLeft as ArrowLeft,\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaSolidContentContentBook1 as LearnerIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Card from '../../card';\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 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 static propTypes = {\n contentType: PropTypes.string,\n dataName: PropTypes.string,\n title: PropTypes.string,\n showMore: PropTypes.string,\n cards: PropTypes.arrayOf(PropTypes.shape(Card.protoTypes)),\n onScroll: PropTypes.func,\n onShowMore: PropTypes.func\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\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 handleResize() {\n const {cards = []} = this.props;\n this.updatePaginationState(cards);\n }\n\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 getScrollWidth(index) {\n const {cards = []} = this.props;\n const card = cards[index];\n return computeWidth(card);\n }\n\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 {title, showMore, cards, onShowMore, dataName, contentType} = 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 {...card} dataName={`${dataName}-${key}`} />\n </div>\n );\n })\n )(cards);\n const leftArrowView = (\n <div className={style.circle} onClick={this.handleOnLeft} data-name=\"card-list-left-arrow\">\n <ArrowLeft color={dark} className={style.left} width={10} height={10} />\n </div>\n );\n const rightArrowView = (\n <div className={style.circle} onClick={this.handleOnRight} data-name=\"card-list-right-arrow\">\n <ArrowRight color={dark} className={style.right} width={10} height={10} />\n </div>\n );\n\n const titleView = (\n <span data-name=\"title\" className={titleStyle} onClick={onShowMore}>\n <IconView contentType={contentType} />\n <span>{title}</span>\n </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 {leftArrowView}\n {rightArrowView}\n </div>\n ) : null;\n return (\n <div className={style.wrapper} data-name=\"cardsList\">\n <div className={style.list}>\n <div>\n <div data-name=\"header\" className={style.header}>\n {titleView}\n {switchPagesView}\n </div>\n <div className={style.cards} ref={this.setCardsWrapper}>\n {cardsView}\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default CardsList;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["ShowMoreLink","props","onShowMore","showMore","className","contextTypes","skin","Provider","childContextTypes","propTypes","PropTypes","func","string","IconView","context","contentType","ICONS","chapter","TimerIcon","course","LearnerIcon","dark","IconType","style","icon","computeWidth","card","type","nextPage","page","maxPages","CardsList","React","PureComponent","constructor","state","actualPage","scrollLeft","offsetWidth","possiblePositions","possiblePages","cardsWidth","handleScroll_","handleScroll","bind","handleOnLeft","handleOnRight","scrollTo","updateState","updatePages","setCardsWrapper","getScrollWidth","handleResize","componentDidMount","cardsWrapper","addEventListener","window","componentDidUpdate","cards","newCardsWidth","updatePaginationState","setState","componentWillUnmount","removeEventListener","cancel","wrapperWidth","wrapperScrollLeft","cardWidths","cardPositions","accWidth","cardWidth","acc","pageIndex","accPageWidth","pageWidth","skip","position","element","index","onScroll","leftBound","rightBound","leftIndex","rightIndex","limit","indexOfNextFirstCard","indexOf","nextPosition","render","title","dataName","ariaLabel","titleStyle","titleLink","cardsView","key","leftArrowView","circle","left","showMoreOnLeftAriaLabel","rightArrowView","right","showMoreOnRightAriaLabel","titleView","hasPages","showMoreView","showMoreBar","switchPagesView","pagingWrapper","wrapper","list","header","translate","arrayOf","shape","Card","protoTypes"],"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 NovaCompositionNavigationArrowLeft as ArrowLeft,\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaSolidContentContentBook1 as LearnerIcon,\n NovaCompositionCoorpacademyTimer as TimerIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../../atom/provider';\nimport Card from '../../card';\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 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 static propTypes = {\n contentType: PropTypes.string,\n dataName: PropTypes.string,\n title: PropTypes.string,\n showMore: PropTypes.string,\n cards: PropTypes.arrayOf(PropTypes.shape(Card.protoTypes)),\n onScroll: PropTypes.func,\n onShowMore: PropTypes.func,\n 'arrows-aria-label': PropTypes.shape({\n showMoreOnLeftAriaLabel: PropTypes.string,\n showMoreOnRightAriaLabel: PropTypes.string\n })\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\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 handleResize() {\n const {cards = []} = this.props;\n this.updatePaginationState(cards);\n }\n\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 getScrollWidth(index) {\n const {cards = []} = this.props;\n const card = cards[index];\n return computeWidth(card);\n }\n\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 onShowMore,\n dataName,\n contentType,\n 'arrows-aria-label': ariaLabel = {}\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 {...card} dataName={`${dataName}-${key}`} />\n </div>\n );\n })\n )(cards);\n const leftArrowView = (\n <div className={style.circle} onClick={this.handleOnLeft} data-name=\"card-list-left-arrow\">\n <ArrowLeft\n color={dark}\n className={style.left}\n width={10}\n height={10}\n aria-label={ariaLabel.showMoreOnLeftAriaLabel}\n />\n </div>\n );\n const rightArrowView = (\n <div className={style.circle} onClick={this.handleOnRight} data-name=\"card-list-right-arrow\">\n <ArrowRight\n color={dark}\n className={style.right}\n width={10}\n height={10}\n aria-label={ariaLabel.showMoreOnRightAriaLabel}\n />\n </div>\n );\n\n const titleView = (\n <span data-name=\"title\" className={titleStyle} onClick={onShowMore}>\n <IconView contentType={contentType} />\n <span>{title}</span>\n </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 {leftArrowView}\n {rightArrowView}\n </div>\n ) : null;\n return (\n <div className={style.wrapper} data-name=\"cardsList\">\n <div className={style.list}>\n <div>\n <div data-name=\"header\" className={style.header}>\n {titleView}\n {switchPagesView}\n </div>\n <div className={style.cards} ref={this.setCardsWrapper}>\n {cardsView}\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default CardsList;\n"],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ declare class Filters extends React.Component<any, any, any> {
|
|
|
13
13
|
}> | null | undefined)[]>;
|
|
14
14
|
sorting: PropTypes.Requireable<PropTypes.InferProps<{
|
|
15
15
|
title: PropTypes.Requireable<string>;
|
|
16
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
16
17
|
name: PropTypes.Requireable<string>;
|
|
17
18
|
className: PropTypes.Requireable<string>;
|
|
18
19
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/filters/index.js"],"names":[],"mappings":";AASA;IACE
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/filters/index.js"],"names":[],"mappings":";AASA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAYE;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,wBASC;IAPC;;;MAGC;IAMH,yBAcC;IAED,uBAYC;IAED,qBAOC;IAED,sBA8EC;CACF"}
|
|
@@ -39,6 +39,7 @@ declare namespace SetupSlide {
|
|
|
39
39
|
}> | PropTypes.InferProps<{
|
|
40
40
|
type: PropTypes.Requireable<string>;
|
|
41
41
|
title: PropTypes.Requireable<string>;
|
|
42
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
42
43
|
name: PropTypes.Requireable<string>;
|
|
43
44
|
className: PropTypes.Requireable<string>;
|
|
44
45
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -52,6 +52,7 @@ declare namespace SetupSlider {
|
|
|
52
52
|
}> | PropTypes.InferProps<{
|
|
53
53
|
type: PropTypes.Requireable<string>;
|
|
54
54
|
title: PropTypes.Requireable<string>;
|
|
55
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
55
56
|
name: PropTypes.Requireable<string>;
|
|
56
57
|
className: PropTypes.Requireable<string>;
|
|
57
58
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -111,6 +111,7 @@ declare namespace BrandForm {
|
|
|
111
111
|
type: PropTypes.Requireable<string>;
|
|
112
112
|
size: PropTypes.Requireable<string>;
|
|
113
113
|
title: PropTypes.Requireable<string>;
|
|
114
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
114
115
|
name: PropTypes.Requireable<string>;
|
|
115
116
|
className: PropTypes.Requireable<string>;
|
|
116
117
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -214,6 +215,7 @@ declare namespace BrandForm {
|
|
|
214
215
|
}> | PropTypes.InferProps<{
|
|
215
216
|
type: PropTypes.Requireable<string>;
|
|
216
217
|
title: PropTypes.Requireable<string>;
|
|
218
|
+
moreLabel: PropTypes.Requireable<string>;
|
|
217
219
|
name: PropTypes.Requireable<string>;
|
|
218
220
|
className: PropTypes.Requireable<string>;
|
|
219
221
|
borderClassName: PropTypes.Requireable<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/get-the-app/index.js"],"names":[],"mappings":";AAwIA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/get-the-app/index.js"],"names":[],"mappings":";AAwIA,kEA2EC"}
|
|
@@ -170,7 +170,8 @@ const GetTheApp = (props, context) => {
|
|
|
170
170
|
endMessage,
|
|
171
171
|
'android-alt': androidAlt,
|
|
172
172
|
'ios-alt': iosAlt,
|
|
173
|
-
qrCodeImageAlt
|
|
173
|
+
qrCodeImageAlt,
|
|
174
|
+
'logo-aria-label': coorpAppLogoAriaLabel
|
|
174
175
|
} = props;
|
|
175
176
|
const {
|
|
176
177
|
skin
|
|
@@ -183,7 +184,8 @@ const GetTheApp = (props, context) => {
|
|
|
183
184
|
}, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyCoorpApp, {
|
|
184
185
|
height: 51,
|
|
185
186
|
width: 250,
|
|
186
|
-
className: _style.default.coorpAppLogo
|
|
187
|
+
className: _style.default.coorpAppLogo,
|
|
188
|
+
"aria-label": coorpAppLogoAriaLabel
|
|
187
189
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
188
190
|
className: _style.default.store
|
|
189
191
|
}, /*#__PURE__*/_react.default.createElement(Header, storeStep), /*#__PURE__*/_react.default.createElement(StoresLinks, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Header","step","header","subHeader","style","headerContainer","headerWrapper","propTypes","PropTypes","string","QrCodeImage","showMobileAppAccess","qrCodeImageUrl","preMessage","linkMessage","endMessage","qrCodeImageAlt","qrcodeWrapper","qrcodeOverlay","qrcodeModal","qrcodeModalLink","bool","MagicLink","disabled","submitValue","magicLinkUrl","color","buttonWrapper","iconWrapper","magicLinkIcon","StoresLinks","onAppStoreButtonClick","appStoreButtonImageUrl","playStoreButtonImageUrl","onPlayStoreButtonClick","androidAlt","iosAlt","storeLinksContainer","img","func","Divider","word","dividerWrapper","divider","GetTheApp","props","context","storeStep","connectionStep","qrCodeStep","magicLinkStep","diviserWord","skin","primaryColor","container","coorpAppLogoWrapper","coorpAppLogo","store","secondStepWrapper","connectionWrapper","wrapper","shape"],"sources":["../../../src/organism/get-the-app/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyMagicWand as MagicWand,\n NovaCompositionCoorpacademyCoorpApp as CoorpAppLogo\n} from '@coorpacademy/nova-icons';\nimport {get} from 'lodash/fp';\nimport Button from '../../atom/button';\nimport Picture from '../../atom/picture';\nimport style from './style.css';\n\nconst Header = ({step, header, subHeader}) => (\n <div className={style.headerContainer}>\n {step ? (\n <div className={style.headerWrapper}>\n <h1 className={style.step}>{step}</h1>\n <h1 className={style.header}>{header}</h1>\n </div>\n ) : (\n <h1 className={style.header}>{header} </h1>\n )}\n {subHeader ? <h4 className={style.subHeader}>{subHeader} </h4> : null}\n </div>\n);\n\nHeader.propTypes = {\n step: PropTypes.string,\n header: PropTypes.string,\n subHeader: PropTypes.string\n};\n\nconst QrCodeImage = ({\n showMobileAppAccess,\n qrCodeImageUrl,\n preMessage,\n linkMessage,\n endMessage,\n qrCodeImageAlt\n}) => {\n return (\n <div className={style.qrcodeWrapper}>\n <Picture src={qrCodeImageUrl} alt={qrCodeImageAlt} />\n {showMobileAppAccess ? (\n <div className={style.qrcodeOverlay}>\n <div className={style.qrcodeModal}>\n <span>{preMessage} </span>\n <a href=\"mailto:assistance@coorpacademy.com\" className={style.qrcodeModalLink}>\n <span>{linkMessage} </span>\n </a>\n <span>{endMessage} </span>\n </div>\n </div>\n ) : null}\n </div>\n );\n};\nQrCodeImage.propTypes = {\n showMobileAppAccess: PropTypes.bool,\n qrCodeImageUrl: PropTypes.string,\n preMessage: PropTypes.string,\n linkMessage: PropTypes.string,\n endMessage: PropTypes.string,\n qrCodeImageAlt: PropTypes.string\n};\n\nconst MagicLink = ({disabled, submitValue, magicLinkUrl, color}) => {\n return (\n <div className={style.buttonWrapper}>\n <Button\n color={color}\n disabled={disabled}\n isLinkDisabled={disabled}\n href={magicLinkUrl}\n type=\"link\"\n submitValue={null}\n >\n <div className={style.iconWrapper}>\n <MagicWand className={style.magicLinkIcon} />\n <p>{submitValue}</p>\n </div>\n </Button>\n </div>\n );\n};\n\nMagicLink.propTypes = {\n magicLinkUrl: PropTypes.string,\n disabled: PropTypes.bool,\n submitValue: PropTypes.string\n};\n\nconst StoresLinks = ({\n onAppStoreButtonClick,\n appStoreButtonImageUrl,\n playStoreButtonImageUrl,\n onPlayStoreButtonClick,\n 'android-alt': androidAlt,\n 'ios-alt': iosAlt\n}) => (\n <div className={style.storeLinksContainer}>\n <Picture\n className={style.img}\n src={appStoreButtonImageUrl}\n onClick={onAppStoreButtonClick}\n alt={iosAlt}\n />\n <Picture\n className={style.img}\n src={playStoreButtonImageUrl}\n onClick={onPlayStoreButtonClick}\n alt={androidAlt}\n />\n </div>\n);\n\nStoresLinks.propTypes = {\n onAppStoreButtonClick: PropTypes.func,\n appStoreButtonImageUrl: PropTypes.string,\n playStoreButtonImageUrl: PropTypes.string,\n onPlayStoreButtonClick: PropTypes.func,\n 'android-alt': PropTypes.string,\n 'ios-alt': PropTypes.string\n};\n\nconst Divider = ({word}) => (\n <div className={style.dividerWrapper}>\n <div className={style.divider} />\n <p>{word}</p>\n <div className={style.divider} />\n </div>\n);\n\nDivider.propTypes = {\n word: PropTypes.string\n};\n\nconst GetTheApp = (props, context) => {\n const {\n onAppStoreButtonClick,\n appStoreButtonImageUrl,\n playStoreButtonImageUrl,\n onPlayStoreButtonClick,\n storeStep,\n connectionStep,\n qrCodeStep,\n magicLinkStep,\n diviserWord,\n qrCodeImageUrl,\n magicLinkUrl,\n disabled,\n showMobileAppAccess,\n submitValue,\n preMessage,\n linkMessage,\n endMessage,\n 'android-alt': androidAlt,\n 'ios-alt': iosAlt,\n qrCodeImageAlt\n } = props;\n const {skin} = context;\n const primaryColor = get('common.primary', skin);\n return (\n <div className={style.container}>\n <div className={style.coorpAppLogoWrapper}>\n <CoorpAppLogo height={51} width={250} className={style.coorpAppLogo} />\n </div>\n <div className={style.store}>\n <Header {...storeStep} />\n <StoresLinks\n onAppStoreButtonClick={onAppStoreButtonClick}\n appStoreButtonImageUrl={appStoreButtonImageUrl}\n playStoreButtonImageUrl={playStoreButtonImageUrl}\n onPlayStoreButtonClick={onPlayStoreButtonClick}\n android-alt={androidAlt}\n ios-alt={iosAlt}\n />\n </div>\n <div className={style.secondStepWrapper}>\n <Header {...connectionStep} />\n <div className={style.connectionWrapper}>\n <div className={style.wrapper}>\n <Header {...qrCodeStep} />\n <QrCodeImage\n showMobileAppAccess={showMobileAppAccess}\n qrCodeImageUrl={qrCodeImageUrl}\n preMessage={preMessage}\n linkMessage={linkMessage}\n endMessage={endMessage}\n qrCodeImageAlt={qrCodeImageAlt}\n />\n </div>\n <Divider word={diviserWord} />\n <div className={style.wrapper}>\n <Header {...magicLinkStep} />\n <MagicLink\n color={primaryColor}\n submitValue={submitValue}\n disabled={disabled}\n magicLinkUrl={magicLinkUrl}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nGetTheApp.propTypes = {\n ...StoresLinks.propTypes,\n storeStep: PropTypes.shape(Header.propTypes),\n connectionStep: PropTypes.shape(Header.propTypes),\n qrCodeStep: PropTypes.shape(Header.propTypes),\n magicLinkStep: PropTypes.shape(Header.propTypes),\n ...QrCodeImage.propTypes,\n diviserWord: Divider.propTypes.word,\n ...MagicLink.propTypes\n};\n\nexport default GetTheApp;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Header","step","header","subHeader","style","headerContainer","headerWrapper","propTypes","PropTypes","string","QrCodeImage","showMobileAppAccess","qrCodeImageUrl","preMessage","linkMessage","endMessage","qrCodeImageAlt","qrcodeWrapper","qrcodeOverlay","qrcodeModal","qrcodeModalLink","bool","MagicLink","disabled","submitValue","magicLinkUrl","color","buttonWrapper","iconWrapper","magicLinkIcon","StoresLinks","onAppStoreButtonClick","appStoreButtonImageUrl","playStoreButtonImageUrl","onPlayStoreButtonClick","androidAlt","iosAlt","storeLinksContainer","img","func","Divider","word","dividerWrapper","divider","GetTheApp","props","context","storeStep","connectionStep","qrCodeStep","magicLinkStep","diviserWord","coorpAppLogoAriaLabel","skin","primaryColor","container","coorpAppLogoWrapper","coorpAppLogo","store","secondStepWrapper","connectionWrapper","wrapper","shape"],"sources":["../../../src/organism/get-the-app/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyMagicWand as MagicWand,\n NovaCompositionCoorpacademyCoorpApp as CoorpAppLogo\n} from '@coorpacademy/nova-icons';\nimport {get} from 'lodash/fp';\nimport Button from '../../atom/button';\nimport Picture from '../../atom/picture';\nimport style from './style.css';\n\nconst Header = ({step, header, subHeader}) => (\n <div className={style.headerContainer}>\n {step ? (\n <div className={style.headerWrapper}>\n <h1 className={style.step}>{step}</h1>\n <h1 className={style.header}>{header}</h1>\n </div>\n ) : (\n <h1 className={style.header}>{header} </h1>\n )}\n {subHeader ? <h4 className={style.subHeader}>{subHeader} </h4> : null}\n </div>\n);\n\nHeader.propTypes = {\n step: PropTypes.string,\n header: PropTypes.string,\n subHeader: PropTypes.string\n};\n\nconst QrCodeImage = ({\n showMobileAppAccess,\n qrCodeImageUrl,\n preMessage,\n linkMessage,\n endMessage,\n qrCodeImageAlt\n}) => {\n return (\n <div className={style.qrcodeWrapper}>\n <Picture src={qrCodeImageUrl} alt={qrCodeImageAlt} />\n {showMobileAppAccess ? (\n <div className={style.qrcodeOverlay}>\n <div className={style.qrcodeModal}>\n <span>{preMessage} </span>\n <a href=\"mailto:assistance@coorpacademy.com\" className={style.qrcodeModalLink}>\n <span>{linkMessage} </span>\n </a>\n <span>{endMessage} </span>\n </div>\n </div>\n ) : null}\n </div>\n );\n};\nQrCodeImage.propTypes = {\n showMobileAppAccess: PropTypes.bool,\n qrCodeImageUrl: PropTypes.string,\n preMessage: PropTypes.string,\n linkMessage: PropTypes.string,\n endMessage: PropTypes.string,\n qrCodeImageAlt: PropTypes.string\n};\n\nconst MagicLink = ({disabled, submitValue, magicLinkUrl, color}) => {\n return (\n <div className={style.buttonWrapper}>\n <Button\n color={color}\n disabled={disabled}\n isLinkDisabled={disabled}\n href={magicLinkUrl}\n type=\"link\"\n submitValue={null}\n >\n <div className={style.iconWrapper}>\n <MagicWand className={style.magicLinkIcon} />\n <p>{submitValue}</p>\n </div>\n </Button>\n </div>\n );\n};\n\nMagicLink.propTypes = {\n magicLinkUrl: PropTypes.string,\n disabled: PropTypes.bool,\n submitValue: PropTypes.string\n};\n\nconst StoresLinks = ({\n onAppStoreButtonClick,\n appStoreButtonImageUrl,\n playStoreButtonImageUrl,\n onPlayStoreButtonClick,\n 'android-alt': androidAlt,\n 'ios-alt': iosAlt\n}) => (\n <div className={style.storeLinksContainer}>\n <Picture\n className={style.img}\n src={appStoreButtonImageUrl}\n onClick={onAppStoreButtonClick}\n alt={iosAlt}\n />\n <Picture\n className={style.img}\n src={playStoreButtonImageUrl}\n onClick={onPlayStoreButtonClick}\n alt={androidAlt}\n />\n </div>\n);\n\nStoresLinks.propTypes = {\n onAppStoreButtonClick: PropTypes.func,\n appStoreButtonImageUrl: PropTypes.string,\n playStoreButtonImageUrl: PropTypes.string,\n onPlayStoreButtonClick: PropTypes.func,\n 'android-alt': PropTypes.string,\n 'ios-alt': PropTypes.string\n};\n\nconst Divider = ({word}) => (\n <div className={style.dividerWrapper}>\n <div className={style.divider} />\n <p>{word}</p>\n <div className={style.divider} />\n </div>\n);\n\nDivider.propTypes = {\n word: PropTypes.string\n};\n\nconst GetTheApp = (props, context) => {\n const {\n onAppStoreButtonClick,\n appStoreButtonImageUrl,\n playStoreButtonImageUrl,\n onPlayStoreButtonClick,\n storeStep,\n connectionStep,\n qrCodeStep,\n magicLinkStep,\n diviserWord,\n qrCodeImageUrl,\n magicLinkUrl,\n disabled,\n showMobileAppAccess,\n submitValue,\n preMessage,\n linkMessage,\n endMessage,\n 'android-alt': androidAlt,\n 'ios-alt': iosAlt,\n qrCodeImageAlt,\n 'logo-aria-label': coorpAppLogoAriaLabel\n } = props;\n const {skin} = context;\n const primaryColor = get('common.primary', skin);\n return (\n <div className={style.container}>\n <div className={style.coorpAppLogoWrapper}>\n <CoorpAppLogo\n height={51}\n width={250}\n className={style.coorpAppLogo}\n aria-label={coorpAppLogoAriaLabel}\n />\n </div>\n <div className={style.store}>\n <Header {...storeStep} />\n <StoresLinks\n onAppStoreButtonClick={onAppStoreButtonClick}\n appStoreButtonImageUrl={appStoreButtonImageUrl}\n playStoreButtonImageUrl={playStoreButtonImageUrl}\n onPlayStoreButtonClick={onPlayStoreButtonClick}\n android-alt={androidAlt}\n ios-alt={iosAlt}\n />\n </div>\n <div className={style.secondStepWrapper}>\n <Header {...connectionStep} />\n <div className={style.connectionWrapper}>\n <div className={style.wrapper}>\n <Header {...qrCodeStep} />\n <QrCodeImage\n showMobileAppAccess={showMobileAppAccess}\n qrCodeImageUrl={qrCodeImageUrl}\n preMessage={preMessage}\n linkMessage={linkMessage}\n endMessage={endMessage}\n qrCodeImageAlt={qrCodeImageAlt}\n />\n </div>\n <Divider word={diviserWord} />\n <div className={style.wrapper}>\n <Header {...magicLinkStep} />\n <MagicLink\n color={primaryColor}\n submitValue={submitValue}\n disabled={disabled}\n magicLinkUrl={magicLinkUrl}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nGetTheApp.propTypes = {\n ...StoresLinks.propTypes,\n storeStep: PropTypes.shape(Header.propTypes),\n connectionStep: PropTypes.shape(Header.propTypes),\n qrCodeStep: PropTypes.shape(Header.propTypes),\n magicLinkStep: PropTypes.shape(Header.propTypes),\n ...QrCodeImage.propTypes,\n diviserWord: Divider.propTypes.word,\n ...MagicLink.propTypes\n};\n\nexport default GetTheApp;\n"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ declare namespace MoocFooter {
|
|
|
8
8
|
appStoreButtonImageUrl: PropTypes.Requireable<string>;
|
|
9
9
|
playStoreButtonImageUrl: PropTypes.Requireable<string>;
|
|
10
10
|
onPlayStoreButtonClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
11
|
-
'
|
|
11
|
+
'logo-aria-label': PropTypes.Requireable<string>;
|
|
12
12
|
'android-alt': PropTypes.Requireable<string>;
|
|
13
13
|
'ios-alt': PropTypes.Requireable<string>;
|
|
14
14
|
}>>;
|
|
@@ -74,7 +74,7 @@ function MoocFooter(props) {
|
|
|
74
74
|
className: _style.default.logoWrapper
|
|
75
75
|
}, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyCoorpApp, {
|
|
76
76
|
className: _style.default.coorpAppLogo,
|
|
77
|
-
"aria-label": headSection['
|
|
77
|
+
"aria-label": headSection['logo-aria-label']
|
|
78
78
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
79
79
|
"data-name": "mobile-marketing-text",
|
|
80
80
|
className: _style.default.marketingLabel
|
|
@@ -169,7 +169,7 @@ MoocFooter.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
169
169
|
appStoreButtonImageUrl: _propTypes.default.string,
|
|
170
170
|
playStoreButtonImageUrl: _propTypes.default.string,
|
|
171
171
|
onPlayStoreButtonClick: _propTypes.default.func,
|
|
172
|
-
'
|
|
172
|
+
'logo-aria-label': _propTypes.default.string,
|
|
173
173
|
'android-alt': _propTypes.default.string,
|
|
174
174
|
'ios-alt': _propTypes.default.string
|
|
175
175
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["socialLinksTypes","StoresLinks","onAppStoreButtonClick","appStoreButtonImageUrl","playStoreButtonImageUrl","onPlayStoreButtonClick","androidAlt","iosAlt","style","storeLinksContainer","imgApple","img","propTypes","PropTypes","func","string","MoocFooter","props","headSection","socialLinks","logoAriaLabel","socialLinksAriaLabel","siteMapSections","headSectionView","headSpacingContainer","headSectionWrapper","logoAndLabelWrapper","logoWrapper","coorpAppLogo","marketingLabel","title","mobileAppLinks","renderPagesFromSection","pages","pagesList","map","page","pindex","handleClick","onClick","link","pageLink","target","sections","section","index","sectionWrapper","sectionTitle","socialLinksView","socialLink","type","socialNetworks","logoSocialNetworksContainer","coorpLogo","socialNetworksWrapper","siteMap","siteMapSpacingContainer","siteMapContainer","sectionsContainer","shape","arrayOf","oneOf"],"sources":["../../../src/organism/mooc-footer/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyCoorpApp as CoorpAppLogo,\n NovaCompositionCoorpacademyCoorpLogo as CoorpLogo\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport SocialLink from '../../atom/social-link';\nimport Picture from '../../atom/picture';\nimport style from './style.css';\n\nconst socialLinksTypes = ['facebook', 'twitter', 'linkedin', 'youtube', 'instagram'];\n\nconst StoresLinks = ({\n onAppStoreButtonClick,\n appStoreButtonImageUrl,\n playStoreButtonImageUrl,\n onPlayStoreButtonClick,\n 'android-alt': androidAlt,\n 'ios-alt': iosAlt\n}) => (\n <div className={style.storeLinksContainer}>\n <Picture\n className={style.imgApple}\n src={appStoreButtonImageUrl}\n onClick={onAppStoreButtonClick}\n alt={iosAlt}\n />\n <Picture\n className={style.img}\n src={playStoreButtonImageUrl}\n onClick={onPlayStoreButtonClick}\n alt={androidAlt}\n />\n </div>\n);\n\nStoresLinks.propTypes = {\n onAppStoreButtonClick: PropTypes.func,\n appStoreButtonImageUrl: PropTypes.string,\n playStoreButtonImageUrl: PropTypes.string,\n onPlayStoreButtonClick: PropTypes.func,\n 'android-alt': PropTypes.string,\n 'ios-alt': PropTypes.string\n};\n\nfunction MoocFooter(props) {\n const {\n headSection = {},\n socialLinks = [],\n 'logo-aria-label': logoAriaLabel,\n 'social-links-aria-label': socialLinksAriaLabel,\n siteMapSections = []\n } = props;\n\n // Header section of the footer (the marketing banner)\n\n const headSectionView = !isEmpty(headSection) ? (\n <div data-name=\"headSpacingContainer\" className={style.headSpacingContainer}>\n <div data-name=\"headSection\" className={style.headSectionWrapper}>\n <div className={style.logoAndLabelWrapper}>\n <div className={style.logoWrapper}>\n <CoorpAppLogo\n className={style.coorpAppLogo}\n aria-label={headSection['mobile-logo-aria-label']}\n />\n </div>\n <div data-name=\"mobile-marketing-text\" className={style.marketingLabel}>\n {headSection.title}\n </div>\n </div>\n <div data-name=\"mobile-apps-buttons-wrapper\" className={style.mobileAppLinks}>\n <StoresLinks\n // ignored due to naming conventions in JSX rather than a linting error\n // eslint-disable-next-line react/jsx-handler-names\n onAppStoreButtonClick={headSection.onAppStoreButtonClick}\n appStoreButtonImageUrl={headSection.appStoreButtonImageUrl}\n playStoreButtonImageUrl={headSection.playStoreButtonImageUrl}\n // eslint-disable-next-line react/jsx-handler-names\n onPlayStoreButtonClick={headSection.onPlayStoreButtonClick}\n android-alt={headSection['android-alt']}\n ios-alt={headSection['ios-alt']}\n />\n </div>\n </div>\n </div>\n ) : null;\n\n // Sitemap section of the footer (contains HELP, TOOLBOX... and other pages, as well as social links)\n\n const renderPagesFromSection = pages => {\n return (\n <ul className={style.pagesList} data-name=\"pages-list\">\n {pages.map((page, pindex) => {\n const handleClick = page.onClick;\n return (\n <li key={pindex}>\n <Link\n href={page.link}\n onClick={handleClick}\n title={page.title}\n data-text={page.title}\n className={style.pageLink}\n target={page.target}\n data-name={page.title}\n >\n {page.title}\n </Link>\n </li>\n );\n })}\n </ul>\n );\n };\n\n const sections = !isEmpty(siteMapSections)\n ? siteMapSections.map((section, index) => {\n return (\n <div key={index} className={style.sectionWrapper}>\n <p className={style.sectionTitle}>{section.title}</p>\n {renderPagesFromSection(section.pages)}\n </div>\n );\n })\n : null;\n\n const socialLinksView = socialLinks.map((socialLink, index) => {\n return (\n <li className={style.socialLink} key={index}>\n <SocialLink\n type={socialLink.type}\n link={socialLink.link}\n mode=\"footer\"\n aria-label={socialLink['aria-label']}\n />\n </li>\n );\n });\n\n const socialNetworks = (\n <div data-name=\"logo-social-networks-container\" className={style.logoSocialNetworksContainer}>\n <CoorpLogo\n className={style.coorpLogo}\n data-name=\"coorp-social-networks-logo\"\n aria-label={logoAriaLabel}\n />\n <ul\n data-name=\"social-networks-wrapper\"\n className={style.socialNetworksWrapper}\n aria-label={socialLinksAriaLabel}\n >\n {socialLinksView}\n </ul>\n </div>\n );\n\n const siteMap = (\n <div data-name=\"site-map-spacing-container\" className={style.siteMapSpacingContainer}>\n <div data-name=\"site-map\" className={style.siteMapContainer}>\n <div data-name=\"sections\" className={style.sectionsContainer}>\n {sections}\n </div>\n {socialNetworks}\n </div>\n </div>\n );\n\n return (\n <footer data-name=\"mooc-footer\">\n {headSectionView}\n {siteMap}\n </footer>\n );\n}\n\nMoocFooter.propTypes = {\n headSection: PropTypes.shape({\n title: PropTypes.string,\n onAppStoreButtonClick: PropTypes.func,\n appStoreButtonImageUrl: PropTypes.string,\n playStoreButtonImageUrl: PropTypes.string,\n onPlayStoreButtonClick: PropTypes.func,\n 'mobile-logo-aria-label': PropTypes.string,\n 'android-alt': PropTypes.string,\n 'ios-alt': PropTypes.string\n }),\n siteMapSections: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n pages: PropTypes.arrayOf(\n PropTypes.shape({title: PropTypes.string, link: PropTypes.string, target: PropTypes.string})\n )\n })\n ),\n socialLinks: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(socialLinksTypes),\n link: PropTypes.string,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n ),\n 'logo-aria-label': PropTypes.string,\n 'social-links-aria-label': PropTypes.string\n};\n\nexport default MoocFooter;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["socialLinksTypes","StoresLinks","onAppStoreButtonClick","appStoreButtonImageUrl","playStoreButtonImageUrl","onPlayStoreButtonClick","androidAlt","iosAlt","style","storeLinksContainer","imgApple","img","propTypes","PropTypes","func","string","MoocFooter","props","headSection","socialLinks","logoAriaLabel","socialLinksAriaLabel","siteMapSections","headSectionView","headSpacingContainer","headSectionWrapper","logoAndLabelWrapper","logoWrapper","coorpAppLogo","marketingLabel","title","mobileAppLinks","renderPagesFromSection","pages","pagesList","map","page","pindex","handleClick","onClick","link","pageLink","target","sections","section","index","sectionWrapper","sectionTitle","socialLinksView","socialLink","type","socialNetworks","logoSocialNetworksContainer","coorpLogo","socialNetworksWrapper","siteMap","siteMapSpacingContainer","siteMapContainer","sectionsContainer","shape","arrayOf","oneOf"],"sources":["../../../src/organism/mooc-footer/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport {\n NovaCompositionCoorpacademyCoorpApp as CoorpAppLogo,\n NovaCompositionCoorpacademyCoorpLogo as CoorpLogo\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport SocialLink from '../../atom/social-link';\nimport Picture from '../../atom/picture';\nimport style from './style.css';\n\nconst socialLinksTypes = ['facebook', 'twitter', 'linkedin', 'youtube', 'instagram'];\n\nconst StoresLinks = ({\n onAppStoreButtonClick,\n appStoreButtonImageUrl,\n playStoreButtonImageUrl,\n onPlayStoreButtonClick,\n 'android-alt': androidAlt,\n 'ios-alt': iosAlt\n}) => (\n <div className={style.storeLinksContainer}>\n <Picture\n className={style.imgApple}\n src={appStoreButtonImageUrl}\n onClick={onAppStoreButtonClick}\n alt={iosAlt}\n />\n <Picture\n className={style.img}\n src={playStoreButtonImageUrl}\n onClick={onPlayStoreButtonClick}\n alt={androidAlt}\n />\n </div>\n);\n\nStoresLinks.propTypes = {\n onAppStoreButtonClick: PropTypes.func,\n appStoreButtonImageUrl: PropTypes.string,\n playStoreButtonImageUrl: PropTypes.string,\n onPlayStoreButtonClick: PropTypes.func,\n 'android-alt': PropTypes.string,\n 'ios-alt': PropTypes.string\n};\n\nfunction MoocFooter(props) {\n const {\n headSection = {},\n socialLinks = [],\n 'logo-aria-label': logoAriaLabel,\n 'social-links-aria-label': socialLinksAriaLabel,\n siteMapSections = []\n } = props;\n\n // Header section of the footer (the marketing banner)\n\n const headSectionView = !isEmpty(headSection) ? (\n <div data-name=\"headSpacingContainer\" className={style.headSpacingContainer}>\n <div data-name=\"headSection\" className={style.headSectionWrapper}>\n <div className={style.logoAndLabelWrapper}>\n <div className={style.logoWrapper}>\n <CoorpAppLogo\n className={style.coorpAppLogo}\n aria-label={headSection['logo-aria-label']}\n />\n </div>\n <div data-name=\"mobile-marketing-text\" className={style.marketingLabel}>\n {headSection.title}\n </div>\n </div>\n <div data-name=\"mobile-apps-buttons-wrapper\" className={style.mobileAppLinks}>\n <StoresLinks\n // ignored due to naming conventions in JSX rather than a linting error\n // eslint-disable-next-line react/jsx-handler-names\n onAppStoreButtonClick={headSection.onAppStoreButtonClick}\n appStoreButtonImageUrl={headSection.appStoreButtonImageUrl}\n playStoreButtonImageUrl={headSection.playStoreButtonImageUrl}\n // eslint-disable-next-line react/jsx-handler-names\n onPlayStoreButtonClick={headSection.onPlayStoreButtonClick}\n android-alt={headSection['android-alt']}\n ios-alt={headSection['ios-alt']}\n />\n </div>\n </div>\n </div>\n ) : null;\n\n // Sitemap section of the footer (contains HELP, TOOLBOX... and other pages, as well as social links)\n\n const renderPagesFromSection = pages => {\n return (\n <ul className={style.pagesList} data-name=\"pages-list\">\n {pages.map((page, pindex) => {\n const handleClick = page.onClick;\n return (\n <li key={pindex}>\n <Link\n href={page.link}\n onClick={handleClick}\n title={page.title}\n data-text={page.title}\n className={style.pageLink}\n target={page.target}\n data-name={page.title}\n >\n {page.title}\n </Link>\n </li>\n );\n })}\n </ul>\n );\n };\n\n const sections = !isEmpty(siteMapSections)\n ? siteMapSections.map((section, index) => {\n return (\n <div key={index} className={style.sectionWrapper}>\n <p className={style.sectionTitle}>{section.title}</p>\n {renderPagesFromSection(section.pages)}\n </div>\n );\n })\n : null;\n\n const socialLinksView = socialLinks.map((socialLink, index) => {\n return (\n <li className={style.socialLink} key={index}>\n <SocialLink\n type={socialLink.type}\n link={socialLink.link}\n mode=\"footer\"\n aria-label={socialLink['aria-label']}\n />\n </li>\n );\n });\n\n const socialNetworks = (\n <div data-name=\"logo-social-networks-container\" className={style.logoSocialNetworksContainer}>\n <CoorpLogo\n className={style.coorpLogo}\n data-name=\"coorp-social-networks-logo\"\n aria-label={logoAriaLabel}\n />\n <ul\n data-name=\"social-networks-wrapper\"\n className={style.socialNetworksWrapper}\n aria-label={socialLinksAriaLabel}\n >\n {socialLinksView}\n </ul>\n </div>\n );\n\n const siteMap = (\n <div data-name=\"site-map-spacing-container\" className={style.siteMapSpacingContainer}>\n <div data-name=\"site-map\" className={style.siteMapContainer}>\n <div data-name=\"sections\" className={style.sectionsContainer}>\n {sections}\n </div>\n {socialNetworks}\n </div>\n </div>\n );\n\n return (\n <footer data-name=\"mooc-footer\">\n {headSectionView}\n {siteMap}\n </footer>\n );\n}\n\nMoocFooter.propTypes = {\n headSection: PropTypes.shape({\n title: PropTypes.string,\n onAppStoreButtonClick: PropTypes.func,\n appStoreButtonImageUrl: PropTypes.string,\n playStoreButtonImageUrl: PropTypes.string,\n onPlayStoreButtonClick: PropTypes.func,\n 'logo-aria-label': PropTypes.string,\n 'android-alt': PropTypes.string,\n 'ios-alt': PropTypes.string\n }),\n siteMapSections: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n pages: PropTypes.arrayOf(\n PropTypes.shape({title: PropTypes.string, link: PropTypes.string, target: PropTypes.string})\n )\n })\n ),\n socialLinks: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(socialLinksTypes),\n link: PropTypes.string,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n ),\n 'logo-aria-label': PropTypes.string,\n 'social-links-aria-label': PropTypes.string\n};\n\nexport default MoocFooter;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/mooc-header/index.js"],"names":[],"mappings":";AAwBA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2FE;IAEF;;;;;;;;;;;;;;;;;;;;;;;MAGE;IAEF,wBAmBC;IAjBC;;;;MAIC;IA6CH,6BAIC;IAED,yBAGC;IAxBD,qCAQC;IAED,wBAGC;IAjBD,+BAEC;IA4BD,2BAKC;IAED,0BAKC;IAED,sBAIC;IAED,qBAIC;IAED,yBAQC;IAED,0BAQC;IArFD,2EASC;IAGC,kBAAsB;IA2ExB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/mooc-header/index.js"],"names":[],"mappings":";AAwBA;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2FE;IAEF;;;;;;;;;;;;;;;;;;;;;;;MAGE;IAEF,wBAmBC;IAjBC;;;;MAIC;IA6CH,6BAIC;IAED,yBAGC;IAxBD,qCAQC;IAED,wBAGC;IAjBD,+BAEC;IA4BD,2BAKC;IAED,0BAKC;IAED,sBAIC;IAED,qBAIC;IAED,yBAQC;IAED,0BAQC;IArFD,2EASC;IAGC,kBAAsB;IA2ExB,6BA0YC;CACF"}
|
|
@@ -279,11 +279,11 @@ class MoocHeader extends _react.default.Component {
|
|
|
279
279
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
280
280
|
className: _style.default.currentOption,
|
|
281
281
|
"aria-haspopup": "true",
|
|
282
|
-
"data-name": "item-more"
|
|
283
|
-
"aria-label": moreLabel
|
|
282
|
+
"data-name": "item-more"
|
|
284
283
|
}, moreLabel, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionNavigationArrowDown, {
|
|
285
284
|
color: mediumColor,
|
|
286
|
-
className: _style.default.caret
|
|
285
|
+
className: _style.default.caret,
|
|
286
|
+
"aria-label": moreLabel
|
|
287
287
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
288
288
|
className: _style.default.optionsGroup
|
|
289
289
|
}, optionsView)));
|