@coorpacademy/components 11.6.1 → 11.7.3

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.
Files changed (114) hide show
  1. package/es/atom/loader/index.native.d.ts +10 -0
  2. package/es/atom/loader/index.native.d.ts.map +1 -0
  3. package/es/atom/loader/index.native.js +192 -0
  4. package/es/atom/loader/index.native.js.map +1 -0
  5. package/es/atom/select/index.d.ts.map +1 -1
  6. package/es/atom/select/index.js +48 -11
  7. package/es/atom/select/index.js.map +1 -1
  8. package/es/molecule/answer/index.d.ts.map +1 -1
  9. package/es/molecule/answer/index.js +1 -9
  10. package/es/molecule/answer/index.js.map +1 -1
  11. package/es/molecule/empty-state-dashboard/index.d.ts +23 -0
  12. package/es/molecule/empty-state-dashboard/index.d.ts.map +1 -0
  13. package/es/molecule/empty-state-dashboard/index.js +31 -0
  14. package/es/molecule/empty-state-dashboard/index.js.map +1 -0
  15. package/es/molecule/empty-state-dashboard/style.css +55 -0
  16. package/es/molecule/empty-state-dashboard/types.d.ts +19 -0
  17. package/es/molecule/empty-state-dashboard/types.d.ts.map +1 -0
  18. package/es/molecule/empty-state-dashboard/types.js +19 -0
  19. package/es/molecule/empty-state-dashboard/types.js.map +1 -0
  20. package/es/organism/list-item/index.d.ts +8 -6
  21. package/es/organism/list-item/index.d.ts.map +1 -1
  22. package/es/organism/list-item/index.js +16 -2
  23. package/es/organism/list-item/index.js.map +1 -1
  24. package/es/organism/list-item/style.css +18 -0
  25. package/es/organism/list-items/index.d.ts +2 -0
  26. package/es/organism/list-items/index.js +5 -1
  27. package/es/organism/list-items/index.js.map +1 -1
  28. package/es/template/activity/index.d.ts +36 -40
  29. package/es/template/activity/index.d.ts.map +1 -1
  30. package/es/template/activity/index.js +89 -111
  31. package/es/template/activity/index.js.map +1 -1
  32. package/es/template/activity/stars-summary.d.ts +9 -18
  33. package/es/template/activity/stars-summary.d.ts.map +1 -1
  34. package/es/template/activity/stars-summary.js +94 -122
  35. package/es/template/activity/stars-summary.js.map +1 -1
  36. package/es/template/back-office/brand-update/index.d.ts +20 -0
  37. package/es/template/back-office/brand-update/index.d.ts.map +1 -1
  38. package/es/template/back-office/brand-update/index.js +12 -3
  39. package/es/template/back-office/brand-update/index.js.map +1 -1
  40. package/es/template/back-office/brand-update/style.css +5 -1
  41. package/es/util/button-icons.d.ts +1 -0
  42. package/es/util/button-icons.d.ts.map +1 -1
  43. package/es/util/button-icons.js +3 -2
  44. package/es/util/button-icons.js.map +1 -1
  45. package/lib/atom/loader/index.native.d.ts +10 -0
  46. package/lib/atom/loader/index.native.d.ts.map +1 -0
  47. package/lib/atom/loader/index.native.js +205 -0
  48. package/lib/atom/loader/index.native.js.map +1 -0
  49. package/lib/atom/select/index.d.ts.map +1 -1
  50. package/lib/atom/select/index.js +46 -9
  51. package/lib/atom/select/index.js.map +1 -1
  52. package/lib/molecule/answer/index.d.ts.map +1 -1
  53. package/lib/molecule/answer/index.js +1 -10
  54. package/lib/molecule/answer/index.js.map +1 -1
  55. package/lib/molecule/empty-state-dashboard/index.d.ts +23 -0
  56. package/lib/molecule/empty-state-dashboard/index.d.ts.map +1 -0
  57. package/lib/molecule/empty-state-dashboard/index.js +42 -0
  58. package/lib/molecule/empty-state-dashboard/index.js.map +1 -0
  59. package/lib/molecule/empty-state-dashboard/style.css +55 -0
  60. package/lib/molecule/empty-state-dashboard/types.d.ts +19 -0
  61. package/lib/molecule/empty-state-dashboard/types.d.ts.map +1 -0
  62. package/lib/molecule/empty-state-dashboard/types.js +29 -0
  63. package/lib/molecule/empty-state-dashboard/types.js.map +1 -0
  64. package/lib/organism/list-item/index.d.ts +8 -6
  65. package/lib/organism/list-item/index.d.ts.map +1 -1
  66. package/lib/organism/list-item/index.js +16 -2
  67. package/lib/organism/list-item/index.js.map +1 -1
  68. package/lib/organism/list-item/style.css +18 -0
  69. package/lib/organism/list-items/index.d.ts +2 -0
  70. package/lib/organism/list-items/index.js +5 -1
  71. package/lib/organism/list-items/index.js.map +1 -1
  72. package/lib/template/activity/index.d.ts +36 -40
  73. package/lib/template/activity/index.d.ts.map +1 -1
  74. package/lib/template/activity/index.js +95 -110
  75. package/lib/template/activity/index.js.map +1 -1
  76. package/lib/template/activity/stars-summary.d.ts +9 -18
  77. package/lib/template/activity/stars-summary.d.ts.map +1 -1
  78. package/lib/template/activity/stars-summary.js +90 -119
  79. package/lib/template/activity/stars-summary.js.map +1 -1
  80. package/lib/template/back-office/brand-update/index.d.ts +20 -0
  81. package/lib/template/back-office/brand-update/index.d.ts.map +1 -1
  82. package/lib/template/back-office/brand-update/index.js +13 -3
  83. package/lib/template/back-office/brand-update/index.js.map +1 -1
  84. package/lib/template/back-office/brand-update/style.css +5 -1
  85. package/lib/util/button-icons.d.ts +1 -0
  86. package/lib/util/button-icons.d.ts.map +1 -1
  87. package/lib/util/button-icons.js +2 -1
  88. package/lib/util/button-icons.js.map +1 -1
  89. package/locales/bs/global.json +8 -1
  90. package/locales/cs/global.json +8 -1
  91. package/locales/de/global.json +8 -1
  92. package/locales/en/global.json +0 -1
  93. package/locales/es/global.json +8 -1
  94. package/locales/et/global.json +8 -1
  95. package/locales/fr/global.json +0 -1
  96. package/locales/hr/global.json +8 -1
  97. package/locales/hu/global.json +8 -1
  98. package/locales/hy/global.json +0 -1
  99. package/locales/it/global.json +8 -1
  100. package/locales/ja/global.json +8 -1
  101. package/locales/ko/global.json +8 -1
  102. package/locales/nl/global.json +8 -1
  103. package/locales/pl/global.json +8 -1
  104. package/locales/pt/global.json +8 -1
  105. package/locales/ro/global.json +8 -1
  106. package/locales/ru/global.json +0 -1
  107. package/locales/sk/global.json +8 -1
  108. package/locales/tl/global.json +8 -1
  109. package/locales/tr/global.json +8 -1
  110. package/locales/uk/global.json +8 -1
  111. package/locales/vi/global.json +8 -1
  112. package/locales/zh/global.json +8 -1
  113. package/locales/zh_TW/global.json +8 -1
  114. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PropTypes","classnames","Provider","Button","Select","Loader","ProgressionItem","EngineStars","StarsSummary","style","Progression","Component","constructor","props","context","handleClick","e","recommendation","stopPropagation","preventDefault","onClick","handleSelectTheme","themeFilter","onChange","bind","render","mainTitle","mainSubtitle","progressions","adaptiveAriaLabel","total","engines","loading","skin","primary","loader","allProgressions","map","progression","ref","coreProgression","core","themeSelect","options","selectBorder","select","recommendationSection","recommendationWrapper","title","subtitle","course","innerHTML","__html","courseTitle","cta","backgroundColor","default","headerProgression","wrapperCta","wrapperProgression","contextTypes","childContextTypes","propTypes","string","isRequired","shape","label","stars","number","arrayOf","bool","func"],"sources":["../../../src/template/activity/index.js"],"sourcesContent":["import React from 'react';\nimport {get, omit, isEmpty} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Provider from '../../atom/provider';\nimport Button from '../../atom/button';\nimport Select from '../../atom/select';\nimport Loader from '../../atom/loader';\nimport ProgressionItem from './progression-item';\nimport EngineStars from './engine-stars';\nimport StarsSummary from './stars-summary';\nimport style from './style.css';\n\nclass Progression extends React.Component {\n static propTypes = {\n mainTitle: PropTypes.string.isRequired,\n mainSubtitle: PropTypes.string.isRequired,\n adaptiveAriaLabel: PropTypes.string,\n total: PropTypes.shape({\n label: PropTypes.string.isRequired,\n stars: PropTypes.number.isRequired\n }).isRequired,\n engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)),\n loading: PropTypes.bool.isRequired,\n progressions: PropTypes.arrayOf(\n PropTypes.shape({...ProgressionItem.propTypes, ref: PropTypes.string.isRequired})\n ),\n themeFilter: PropTypes.shape({\n options: Select.propTypes.options.isRequired,\n onChange: Select.propTypes.onChange\n }),\n recommendation: PropTypes.shape({\n cta: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string.isRequired,\n courseTitle: PropTypes.string.isRequired,\n onClick: PropTypes.func\n })\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props, context) {\n super(props, context);\n this.handleClick = this.handleClick.bind(this);\n this.handleSelectTheme = this.handleSelectTheme.bind(this);\n }\n\n handleClick = e => {\n const {recommendation} = this.props;\n e.stopPropagation();\n e.preventDefault();\n const {onClick} = recommendation;\n onClick && onClick(e);\n };\n\n handleSelectTheme = e => {\n const {\n themeFilter: {onChange}\n } = this.props;\n onChange && onChange(e);\n };\n\n render() {\n const {\n mainTitle,\n mainSubtitle,\n recommendation = {},\n progressions = [],\n adaptiveAriaLabel,\n total,\n engines = [],\n themeFilter = {},\n loading\n } = this.props;\n const {skin} = this.context;\n\n const primary = get('common.primary', skin);\n const loader = loading ? (\n <div className={style.loader}>\n <Loader />\n </div>\n ) : null;\n const allProgressions = progressions.map(progression => (\n <ProgressionItem\n {...omit(['ref'], progression)}\n key={progression.ref}\n adaptiveAriaLabel={adaptiveAriaLabel}\n />\n ));\n\n const coreProgression = (\n <div data-name=\"activityCore\" className={style.core}>\n {allProgressions}\n </div>\n );\n const themeSelect = !isEmpty(themeFilter.options) ? (\n <Select\n borderClassName={style.selectBorder}\n className={style.select}\n theme=\"thematiques\"\n options={themeFilter.options}\n onChange={this.handleSelectTheme}\n />\n ) : null;\n const recommendationSection = !isEmpty(recommendation) ? (\n <div className={style.recommendationWrapper}>\n <p className={style.recommendationSection}>{recommendation.title} </p>\n <p className={style.recommendationSection}>\n <span>{recommendation.subtitle} </span>\n <span\n className={classnames(style.course, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: recommendation.courseTitle}}\n />\n </p>\n <Button\n type=\"link\"\n onClick={this.handleClick}\n submitValue={recommendation.cta}\n style={{\n backgroundColor: primary\n }}\n className={style.cta}\n />\n </div>\n ) : null;\n return (\n <div className={style.default}>\n <div data-name=\"activity-header\">\n <div className={style.mainTitle}>\n <span>{mainTitle}</span> {mainSubtitle}\n </div>\n <div className={style.headerProgression}>\n <div className={style.wrapperCta}>\n {themeSelect}\n {recommendationSection}\n </div>\n <StarsSummary engines={engines} total={total} />\n </div>\n </div>\n <div className={style.wrapperProgression} data-name=\"activityList\">\n {coreProgression}\n {loader}\n </div>\n </div>\n );\n }\n}\n\nexport default Progression;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","get","isEmpty","omit","PropTypes","classnames","Provider","GetSkinFromContext","Button","Select","Loader","ProgressionItem","EngineStars","StarsSummary","style","Progression","props","legacyContext","mainTitle","mainSubtitle","recommendation","progressions","adaptiveAriaLabel","total","engines","themeFilter","loading","skin","onChange","themeFilterOnChange","handleClick","e","stopPropagation","preventDefault","onClick","handleSelectTheme","primary","loader","allProgressions","map","progression","ref","coreProgression","core","themeSelect","options","selectBorder","select","recommendationSection","recommendationWrapper","title","subtitle","course","innerHTML","__html","courseTitle","cta","backgroundColor","default","headerProgression","wrapperCta","wrapperProgression","contextTypes","childContextTypes","propTypes","string","isRequired","shape","label","stars","number","arrayOf","bool","func"],"sources":["../../../src/template/activity/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport get from 'lodash/fp/get';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport omit from 'lodash/fp/omit';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Provider, {GetSkinFromContext} from '../../atom/provider';\nimport Button from '../../atom/button';\nimport Select from '../../atom/select';\nimport Loader from '../../atom/loader';\nimport ProgressionItem from './progression-item';\nimport EngineStars from './engine-stars';\nimport StarsSummary from './stars-summary';\nimport style from './style.css';\n\nconst Progression = (props, legacyContext) => {\n const {\n mainTitle,\n mainSubtitle,\n recommendation = {},\n progressions = [],\n adaptiveAriaLabel,\n total,\n engines = [],\n themeFilter = {},\n loading\n } = props;\n const skin = GetSkinFromContext(legacyContext);\n const {onChange: themeFilterOnChange} = themeFilter;\n\n const handleClick = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n const {onClick} = recommendation;\n onClick && onClick(e);\n },\n [recommendation]\n );\n\n const handleSelectTheme = useCallback(\n e => {\n themeFilterOnChange && themeFilterOnChange(e);\n },\n [themeFilterOnChange]\n );\n\n const primary = get('common.primary', skin);\n const loader = loading ? (\n <div className={style.loader}>\n <Loader />\n </div>\n ) : null;\n const allProgressions = progressions.map(progression => (\n <ProgressionItem\n {...omit(['ref'], progression)}\n key={progression.ref}\n adaptiveAriaLabel={adaptiveAriaLabel}\n />\n ));\n\n const coreProgression = (\n <div data-name=\"activityCore\" className={style.core}>\n {allProgressions}\n </div>\n );\n const themeSelect = !isEmpty(themeFilter.options) ? (\n <Select\n borderClassName={style.selectBorder}\n className={style.select}\n theme=\"thematiques\"\n options={themeFilter.options}\n onChange={handleSelectTheme}\n />\n ) : null;\n const recommendationSection = !isEmpty(recommendation) ? (\n <div className={style.recommendationWrapper}>\n <p className={style.recommendationSection}>{recommendation.title} </p>\n <p className={style.recommendationSection}>\n <span>{recommendation.subtitle} </span>\n <span\n className={classnames(style.course, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: recommendation.courseTitle}}\n />\n </p>\n <Button\n type=\"link\"\n onClick={handleClick}\n submitValue={recommendation.cta}\n style={{\n backgroundColor: primary\n }}\n className={style.cta}\n />\n </div>\n ) : null;\n\n return (\n <div className={style.default}>\n <div data-name=\"activity-header\">\n <div className={style.mainTitle}>\n <span>{mainTitle}</span> {mainSubtitle}\n </div>\n <div className={style.headerProgression}>\n <div className={style.wrapperCta}>\n {themeSelect}\n {recommendationSection}\n </div>\n <StarsSummary engines={engines} total={total} />\n </div>\n </div>\n <div className={style.wrapperProgression} data-name=\"activityList\">\n {coreProgression}\n {loader}\n </div>\n </div>\n );\n};\n\nProgression.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nProgression.propTypes = {\n mainTitle: PropTypes.string.isRequired,\n mainSubtitle: PropTypes.string.isRequired,\n adaptiveAriaLabel: PropTypes.string,\n total: PropTypes.shape({\n label: PropTypes.string.isRequired,\n stars: PropTypes.number.isRequired\n }).isRequired,\n engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)),\n loading: PropTypes.bool.isRequired,\n progressions: PropTypes.arrayOf(\n PropTypes.shape({...ProgressionItem.propTypes, ref: PropTypes.string.isRequired})\n ),\n themeFilter: PropTypes.shape({\n options: Select.propTypes.options.isRequired,\n onChange: Select.propTypes.onChange\n }),\n recommendation: PropTypes.shape({\n cta: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string.isRequired,\n courseTitle: PropTypes.string.isRequired,\n onClick: PropTypes.func\n })\n};\n\nexport default Progression;\n"],"mappings":";;AAAA,OAAOA,KAAP,IAAeC,WAAf,QAAiC,OAAjC;AACA,OAAOC,GAAP,MAAgB,eAAhB;AACA,OAAOC,OAAP,MAAoB,mBAApB;AACA,OAAOC,IAAP,MAAiB,gBAAjB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,QAAP,IAAkBC,kBAAlB,QAA2C,qBAA3C;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,OAAOC,eAAP,MAA4B,oBAA5B;AACA,OAAOC,WAAP,MAAwB,gBAAxB;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,WAAW,GAAG,CAACC,KAAD,EAAQC,aAAR,KAA0B;EAC5C,MAAM;IACJC,SADI;IAEJC,YAFI;IAGJC,cAAc,GAAG,EAHb;IAIJC,YAAY,GAAG,EAJX;IAKJC,iBALI;IAMJC,KANI;IAOJC,OAAO,GAAG,EAPN;IAQJC,WAAW,GAAG,EARV;IASJC;EATI,IAUFV,KAVJ;EAWA,MAAMW,IAAI,GAAGpB,kBAAkB,CAACU,aAAD,CAA/B;EACA,MAAM;IAACW,QAAQ,EAAEC;EAAX,IAAkCJ,WAAxC;EAEA,MAAMK,WAAW,GAAG9B,WAAW,CAC7B+B,CAAC,IAAI;IACHA,CAAC,CAACC,eAAF;IACAD,CAAC,CAACE,cAAF;IACA,MAAM;MAACC;IAAD,IAAYd,cAAlB;IACAc,OAAO,IAAIA,OAAO,CAACH,CAAD,CAAlB;EACD,CAN4B,EAO7B,CAACX,cAAD,CAP6B,CAA/B;EAUA,MAAMe,iBAAiB,GAAGnC,WAAW,CACnC+B,CAAC,IAAI;IACHF,mBAAmB,IAAIA,mBAAmB,CAACE,CAAD,CAA1C;EACD,CAHkC,EAInC,CAACF,mBAAD,CAJmC,CAArC;EAOA,MAAMO,OAAO,GAAGnC,GAAG,CAAC,gBAAD,EAAmB0B,IAAnB,CAAnB;EACA,MAAMU,MAAM,GAAGX,OAAO,gBACpB;IAAK,SAAS,EAAEZ,KAAK,CAACuB;EAAtB,gBACE,oBAAC,MAAD,OADF,CADoB,GAIlB,IAJJ;EAKA,MAAMC,eAAe,GAAGjB,YAAY,CAACkB,GAAb,CAAiBC,WAAW,iBAClD,oBAAC,eAAD,eACMrC,IAAI,CAAC,CAAC,KAAD,CAAD,EAAUqC,WAAV,CADV;IAEE,GAAG,EAAEA,WAAW,CAACC,GAFnB;IAGE,iBAAiB,EAAEnB;EAHrB,GADsB,CAAxB;EAQA,MAAMoB,eAAe,gBACnB;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAE5B,KAAK,CAAC6B;EAA/C,GACGL,eADH,CADF;EAKA,MAAMM,WAAW,GAAG,CAAC1C,OAAO,CAACuB,WAAW,CAACoB,OAAb,CAAR,gBAClB,oBAAC,MAAD;IACE,eAAe,EAAE/B,KAAK,CAACgC,YADzB;IAEE,SAAS,EAAEhC,KAAK,CAACiC,MAFnB;IAGE,KAAK,EAAC,aAHR;IAIE,OAAO,EAAEtB,WAAW,CAACoB,OAJvB;IAKE,QAAQ,EAAEV;EALZ,EADkB,GAQhB,IARJ;EASA,MAAMa,qBAAqB,GAAG,CAAC9C,OAAO,CAACkB,cAAD,CAAR,gBAC5B;IAAK,SAAS,EAAEN,KAAK,CAACmC;EAAtB,gBACE;IAAG,SAAS,EAAEnC,KAAK,CAACkC;EAApB,GAA4C5B,cAAc,CAAC8B,KAA3D,MADF,eAEE;IAAG,SAAS,EAAEpC,KAAK,CAACkC;EAApB,gBACE,kCAAO5B,cAAc,CAAC+B,QAAtB,MADF,eAEE;IACE,SAAS,EAAE9C,UAAU,CAACS,KAAK,CAACsC,MAAP,EAAetC,KAAK,CAACuC,SAArB,CADvB,CAEE;IAFF;IAGE,uBAAuB,EAAE;MAACC,MAAM,EAAElC,cAAc,CAACmC;IAAxB;EAH3B,EAFF,CAFF,eAUE,oBAAC,MAAD;IACE,IAAI,EAAC,MADP;IAEE,OAAO,EAAEzB,WAFX;IAGE,WAAW,EAAEV,cAAc,CAACoC,GAH9B;IAIE,KAAK,EAAE;MACLC,eAAe,EAAErB;IADZ,CAJT;IAOE,SAAS,EAAEtB,KAAK,CAAC0C;EAPnB,EAVF,CAD4B,GAqB1B,IArBJ;EAuBA,oBACE;IAAK,SAAS,EAAE1C,KAAK,CAAC4C;EAAtB,gBACE;IAAK,aAAU;EAAf,gBACE;IAAK,SAAS,EAAE5C,KAAK,CAACI;EAAtB,gBACE,kCAAOA,SAAP,CADF,OAC4BC,YAD5B,CADF,eAIE;IAAK,SAAS,EAAEL,KAAK,CAAC6C;EAAtB,gBACE;IAAK,SAAS,EAAE7C,KAAK,CAAC8C;EAAtB,GACGhB,WADH,EAEGI,qBAFH,CADF,eAKE,oBAAC,YAAD;IAAc,OAAO,EAAExB,OAAvB;IAAgC,KAAK,EAAED;EAAvC,EALF,CAJF,CADF,eAaE;IAAK,SAAS,EAAET,KAAK,CAAC+C,kBAAtB;IAA0C,aAAU;EAApD,GACGnB,eADH,EAEGL,MAFH,CAbF,CADF;AAoBD,CAvGD;;AAyGAtB,WAAW,CAAC+C,YAAZ,GAA2B;EACzBnC,IAAI,EAAErB,QAAQ,CAACyD,iBAAT,CAA2BpC;AADR,CAA3B;AAIAZ,WAAW,CAACiD,SAAZ,2CAAwB;EACtB9C,SAAS,EAAEd,SAAS,CAAC6D,MAAV,CAAiBC,UADN;EAEtB/C,YAAY,EAAEf,SAAS,CAAC6D,MAAV,CAAiBC,UAFT;EAGtB5C,iBAAiB,EAAElB,SAAS,CAAC6D,MAHP;EAItB1C,KAAK,EAAEnB,SAAS,CAAC+D,KAAV,CAAgB;IACrBC,KAAK,EAAEhE,SAAS,CAAC6D,MAAV,CAAiBC,UADH;IAErBG,KAAK,EAAEjE,SAAS,CAACkE,MAAV,CAAiBJ;EAFH,CAAhB,EAGJA,UAPmB;EAQtB1C,OAAO,EAAEpB,SAAS,CAACmE,OAAV,CAAkBnE,SAAS,CAAC+D,KAAV,CAAgBvD,WAAW,CAACoD,SAA5B,CAAlB,CARa;EAStBtC,OAAO,EAAEtB,SAAS,CAACoE,IAAV,CAAeN,UATF;EAUtB7C,YAAY,EAAEjB,SAAS,CAACmE,OAAV,CACZnE,SAAS,CAAC+D,KAAV,cAAoBxD,eAAe,CAACqD,SAApC;IAA+CvB,GAAG,EAAErC,SAAS,CAAC6D,MAAV,CAAiBC;EAArE,GADY,CAVQ;EAatBzC,WAAW,EAAErB,SAAS,CAAC+D,KAAV,CAAgB;IAC3BtB,OAAO,EAAEpC,MAAM,CAACuD,SAAP,CAAiBnB,OAAjB,CAAyBqB,UADP;IAE3BtC,QAAQ,EAAEnB,MAAM,CAACuD,SAAP,CAAiBpC;EAFA,CAAhB,CAbS;EAiBtBR,cAAc,EAAEhB,SAAS,CAAC+D,KAAV,CAAgB;IAC9BX,GAAG,EAAEpD,SAAS,CAAC6D,MAAV,CAAiBC,UADQ;IAE9BhB,KAAK,EAAE9C,SAAS,CAAC6D,MAAV,CAAiBC,UAFM;IAG9Bf,QAAQ,EAAE/C,SAAS,CAAC6D,MAAV,CAAiBC,UAHG;IAI9BX,WAAW,EAAEnD,SAAS,CAAC6D,MAAV,CAAiBC,UAJA;IAK9BhC,OAAO,EAAE9B,SAAS,CAACqE;EALW,CAAhB;AAjBM,CAAxB;AA0BA,eAAe1D,WAAf"}
@@ -1,11 +1,12 @@
1
1
  export default StarsSummary;
2
- declare class StarsSummary extends React.Component<any, any, any> {
3
- static propTypes: {
4
- total: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
2
+ declare function StarsSummary(props: any, legacyContext: any): JSX.Element | null;
3
+ declare namespace StarsSummary {
4
+ namespace propTypes {
5
+ const total: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
5
6
  label: PropTypes.Validator<string>;
6
7
  stars: PropTypes.Validator<number>;
7
8
  }>>>;
8
- engines: PropTypes.Requireable<(PropTypes.InferProps<{
9
+ const engines: PropTypes.Validator<(PropTypes.InferProps<{
9
10
  type: PropTypes.Validator<string>;
10
11
  stars: PropTypes.Validator<number>;
11
12
  title: PropTypes.Validator<string>;
@@ -19,9 +20,9 @@ declare class StarsSummary extends React.Component<any, any, any> {
19
20
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
20
21
  }>>;
21
22
  }> | null | undefined)[]>;
22
- };
23
- static contextTypes: {
24
- skin: PropTypes.Requireable<PropTypes.InferProps<{
23
+ }
24
+ namespace contextTypes {
25
+ const skin: PropTypes.Requireable<PropTypes.InferProps<{
25
26
  common: PropTypes.Requireable<{
26
27
  [x: string]: any;
27
28
  }>;
@@ -42,17 +43,7 @@ declare class StarsSummary extends React.Component<any, any, any> {
42
43
  [x: string]: any;
43
44
  }>;
44
45
  }>>;
45
- };
46
- constructor(props: any);
47
- state: {
48
- firstItem: number;
49
- totalItems: any;
50
- };
51
- handleOnLeft(): void;
52
- handleOnRight(): void;
53
- scrollTo(page: any): void;
54
- render(): JSX.Element | null;
46
+ }
55
47
  }
56
- import React from "react";
57
48
  import PropTypes from "prop-types";
58
49
  //# sourceMappingURL=stars-summary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stars-summary.d.ts","sourceRoot":"","sources":["../../../src/template/activity/stars-summary.js"],"names":[],"mappings":";AAkDA;IACE;;;;;;;;;;;;;;;;;;;MAME;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,wBAYC;IARC;;;MAGC;IAOH,qBAGC;IAED,sBAGC;IAED,0BAIC;IAED,6BAiDC;CACF"}
1
+ {"version":3,"file":"stars-summary.d.ts","sourceRoot":"","sources":["../../../src/template/activity/stars-summary.js"],"names":[],"mappings":";AA0DA,kFAiFC"}
@@ -5,176 +5,148 @@ import _get from "lodash/fp/get";
5
5
 
6
6
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
7
7
 
8
- import React, { useMemo } from 'react';
8
+ import React, { useCallback, useMemo, useState } from 'react';
9
9
  import PropTypes from 'prop-types';
10
10
  import { NovaCompositionNavigationArrowLeft as ArrowLeft, NovaCompositionNavigationArrowRight as ArrowRight, NovaCompositionCoorpacademyStar as StarIcon } from '@coorpacademy/nova-icons';
11
- import Provider from '../../atom/provider';
11
+ import Provider, { GetSkinFromContext } from '../../atom/provider';
12
12
  import EngineStars from './engine-stars';
13
13
  import style from './stars-summary.css';
14
14
 
15
15
  const EngineTab = ({
16
16
  engine,
17
17
  engineIndex,
18
- firstItem
18
+ firstItemIndex
19
19
  }) => {
20
20
  const {
21
21
  type
22
22
  } = engine;
23
- const state = engineIndex < firstItem ? 'hidden' : 'active';
23
+ const state = useMemo(() => engineIndex < firstItemIndex ? 'hidden' : 'active', [engineIndex, firstItemIndex]);
24
+ const dataName = useMemo(() => `${type}_total_${state}`, [state, type]);
24
25
  return /*#__PURE__*/React.createElement("li", {
25
26
  className: style[state],
26
27
  key: type,
27
- "data-name": `${type}_total_${state}`
28
+ "data-name": dataName
28
29
  }, /*#__PURE__*/React.createElement(EngineStars, _extends({}, engine, {
29
- className: engineIndex < firstItem ? style.hidden : style.active
30
+ className: engineIndex < firstItemIndex ? style.hidden : style.active
30
31
  })));
31
32
  };
32
33
 
33
34
  EngineTab.propTypes = process.env.NODE_ENV !== "production" ? {
34
35
  engine: PropTypes.shape(EngineStars.propTypes),
35
36
  engineIndex: PropTypes.number,
36
- firstItem: PropTypes.number
37
+ firstItemIndex: PropTypes.number
37
38
  } : {};
38
39
 
39
40
  const EngineTabs = ({
40
41
  engines,
41
- firstItem
42
+ firstItemIndex
42
43
  }) => {
43
44
  return useMemo(() => _map.convert({
44
45
  cap: false
45
46
  })((engine, index) => /*#__PURE__*/React.createElement(EngineTab, {
46
47
  engine: engine,
47
48
  key: `engineTab_${index}`,
48
- firstItem: firstItem,
49
+ firstItemIndex: firstItemIndex,
49
50
  engineIndex: index
50
- }), engines), [engines, firstItem]);
51
+ }), engines), [engines, firstItemIndex]);
51
52
  };
52
53
 
53
54
  EngineTabs.propTypes = process.env.NODE_ENV !== "production" ? {
54
55
  engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)),
55
- firstItem: PropTypes.number
56
+ firstItemIndex: PropTypes.number
56
57
  } : {};
57
58
 
58
- class StarsSummary extends React.Component {
59
- constructor(props) {
60
- super(props);
61
- const {
62
- engines = []
63
- } = props;
64
- this.state = {
65
- firstItem: 0,
66
- totalItems: engines.length
67
- };
68
- this.handleOnLeft = this.handleOnLeft.bind(this);
69
- this.handleOnRight = this.handleOnRight.bind(this);
70
- this.scrollTo = this.scrollTo.bind(this);
71
- }
72
-
73
- handleOnLeft() {
74
- const {
75
- firstItem
76
- } = this.state;
77
- this.scrollTo(firstItem - 1);
78
- }
79
-
80
- handleOnRight() {
81
- const {
82
- firstItem
83
- } = this.state;
84
- this.scrollTo(firstItem + 1);
85
- }
86
-
87
- scrollTo(page) {
88
- this.setState({
89
- firstItem: page
90
- });
59
+ const StarsSummary = (props, legacyContext) => {
60
+ const {
61
+ total,
62
+ engines
63
+ } = props;
64
+ const skin = GetSkinFromContext(legacyContext);
65
+ const [firstItemIndex, setFirstItemIndex] = useState(0);
66
+ const [totalItems] = useState(engines.length);
67
+
68
+ const dark = _getOr('#90A4AE', 'common.dark', skin);
69
+
70
+ const primary = _get('common.primary', skin);
71
+
72
+ const scrollTo = useCallback(page => setFirstItemIndex(page), []);
73
+ const handleOnLeft = useCallback(() => {
74
+ scrollTo(firstItemIndex - 1);
75
+ }, [firstItemIndex, scrollTo]);
76
+ const handleOnRight = useCallback(() => {
77
+ scrollTo(firstItemIndex + 1);
78
+ }, [firstItemIndex, scrollTo]);
79
+
80
+ if (_isEmpty(engines)) {
81
+ return null;
91
82
  }
92
83
 
93
- render() {
94
- const {
95
- total,
96
- engines = []
97
- } = this.props;
98
- const {
99
- skin
100
- } = this.context;
101
- const {
102
- firstItem,
103
- totalItems
104
- } = this.state;
105
-
106
- const dark = _getOr('#90A4AE', 'common.dark', skin);
107
-
108
- const primary = _get('common.primary', skin);
109
-
110
- if (_isEmpty(engines)) {
111
- return null;
84
+ const leftArrowView = totalItems > 6 && firstItemIndex > 0 ? /*#__PURE__*/React.createElement("div", {
85
+ className: style.circle,
86
+ onClick: handleOnLeft,
87
+ "data-name": "left-arrow",
88
+ "data-testid": "stars-summary-left-arrow"
89
+ }, /*#__PURE__*/React.createElement(ArrowLeft, {
90
+ color: dark,
91
+ className: style.left,
92
+ width: 10,
93
+ height: 10
94
+ })) : null;
95
+ const rightArrowView = totalItems > 6 && firstItemIndex < totalItems - 6 ? /*#__PURE__*/React.createElement("div", {
96
+ className: style.circle,
97
+ onClick: handleOnRight,
98
+ "data-name": "right-arrow",
99
+ "data-testid": "stars-summary-right-arrow"
100
+ }, /*#__PURE__*/React.createElement(ArrowRight, {
101
+ color: dark,
102
+ className: style.right,
103
+ width: 10,
104
+ height: 10
105
+ })) : null;
106
+ return /*#__PURE__*/React.createElement("div", {
107
+ "data-name": "myStars",
108
+ className: style.myStars
109
+ }, /*#__PURE__*/React.createElement("div", {
110
+ "data-name": "myStars-wrapper",
111
+ className: style.myStarsWrapper,
112
+ "data-testid": `stars-summary-engine-index-${firstItemIndex}`
113
+ }, /*#__PURE__*/React.createElement("ul", {
114
+ className: style.allStars,
115
+ "data-name": "engineList",
116
+ "data-testid": "stars-summary-engine-tabs"
117
+ }, /*#__PURE__*/React.createElement(EngineTabs, {
118
+ engines: engines,
119
+ firstItemIndex: firstItemIndex
120
+ })), /*#__PURE__*/React.createElement("div", {
121
+ className: style.footerSummaryStars,
122
+ style: {
123
+ backgroundColor: primary
112
124
  }
113
-
114
- const leftArrowView = totalItems > 6 && firstItem > 0 ? /*#__PURE__*/React.createElement("div", {
115
- className: style.circle,
116
- onClick: this.handleOnLeft,
117
- "data-name": "left-arrow"
118
- }, /*#__PURE__*/React.createElement(ArrowLeft, {
119
- color: dark,
120
- className: style.left,
121
- width: 10,
122
- height: 10
123
- })) : null;
124
- const rightArrowView = totalItems > 6 && firstItem < totalItems - 6 ? /*#__PURE__*/React.createElement("div", {
125
- className: style.circle,
126
- onClick: this.handleOnRight,
127
- "data-name": "right-arrow"
128
- }, /*#__PURE__*/React.createElement(ArrowRight, {
129
- color: dark,
130
- className: style.right,
131
- width: 10,
132
- height: 10
133
- })) : null;
134
- return /*#__PURE__*/React.createElement("div", {
135
- "data-name": "myStars",
136
- className: style.myStars
137
- }, /*#__PURE__*/React.createElement("div", {
138
- "data-name": "myStars-wrapper",
139
- className: style.myStarsWrapper
140
- }, /*#__PURE__*/React.createElement("ul", {
141
- className: style.allStars,
142
- "data-name": "engineList"
143
- }, /*#__PURE__*/React.createElement(EngineTabs, {
144
- engines: engines,
145
- firstItem: firstItem
146
- })), /*#__PURE__*/React.createElement("div", {
147
- className: style.footerSummaryStars,
148
- style: {
149
- backgroundColor: primary
150
- }
151
- }, /*#__PURE__*/React.createElement("div", {
152
- className: style.totalStars
153
- }, /*#__PURE__*/React.createElement("span", null, total.label), /*#__PURE__*/React.createElement("p", {
154
- "data-name": "star-counter"
155
- }, total.stars), /*#__PURE__*/React.createElement("div", {
156
- className: style.iconBubble
157
- }, /*#__PURE__*/React.createElement(StarIcon, {
158
- className: style.iconHeader,
159
- color: primary
160
- }))), /*#__PURE__*/React.createElement("div", {
161
- className: style.navigationLeft
162
- }, leftArrowView), /*#__PURE__*/React.createElement("div", {
163
- className: style.navigationRight
164
- }, rightArrowView))));
165
- }
166
-
167
- }
168
-
169
- StarsSummary.contextTypes = {
170
- skin: Provider.childContextTypes.skin
125
+ }, /*#__PURE__*/React.createElement("div", {
126
+ className: style.totalStars
127
+ }, /*#__PURE__*/React.createElement("span", null, total.label), /*#__PURE__*/React.createElement("p", {
128
+ "data-name": "star-counter"
129
+ }, total.stars), /*#__PURE__*/React.createElement("div", {
130
+ className: style.iconBubble
131
+ }, /*#__PURE__*/React.createElement(StarIcon, {
132
+ className: style.iconHeader,
133
+ color: primary
134
+ }))), /*#__PURE__*/React.createElement("div", {
135
+ className: style.navigationLeft
136
+ }, leftArrowView), /*#__PURE__*/React.createElement("div", {
137
+ className: style.navigationRight
138
+ }, rightArrowView))));
171
139
  };
140
+
172
141
  StarsSummary.propTypes = process.env.NODE_ENV !== "production" ? {
173
142
  total: PropTypes.shape({
174
143
  label: PropTypes.string.isRequired,
175
144
  stars: PropTypes.number.isRequired
176
145
  }).isRequired,
177
- engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes))
146
+ engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)).isRequired
178
147
  } : {};
148
+ StarsSummary.contextTypes = {
149
+ skin: Provider.childContextTypes.skin
150
+ };
179
151
  export default StarsSummary;
180
152
  //# sourceMappingURL=stars-summary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stars-summary.js","names":["React","useMemo","PropTypes","NovaCompositionNavigationArrowLeft","ArrowLeft","NovaCompositionNavigationArrowRight","ArrowRight","NovaCompositionCoorpacademyStar","StarIcon","Provider","EngineStars","style","EngineTab","engine","engineIndex","firstItem","type","state","hidden","active","propTypes","shape","number","EngineTabs","engines","convert","cap","index","arrayOf","StarsSummary","Component","constructor","props","totalItems","length","handleOnLeft","bind","handleOnRight","scrollTo","page","setState","render","total","skin","context","dark","primary","leftArrowView","circle","left","rightArrowView","right","myStars","myStarsWrapper","allStars","footerSummaryStars","backgroundColor","totalStars","label","stars","iconBubble","iconHeader","navigationLeft","navigationRight","contextTypes","childContextTypes","string","isRequired"],"sources":["../../../src/template/activity/stars-summary.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, getOr, isEmpty, map} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowLeft as ArrowLeft,\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaCompositionCoorpacademyStar as StarIcon\n} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport EngineStars from './engine-stars';\nimport style from './stars-summary.css';\n\nconst EngineTab = ({engine, engineIndex, firstItem}) => {\n const {type} = engine;\n const state = engineIndex < firstItem ? 'hidden' : 'active';\n return (\n <li className={style[state]} key={type} data-name={`${type}_total_${state}`}>\n <EngineStars {...engine} className={engineIndex < firstItem ? style.hidden : style.active} />\n </li>\n );\n};\nEngineTab.propTypes = {\n engine: PropTypes.shape(EngineStars.propTypes),\n engineIndex: PropTypes.number,\n firstItem: PropTypes.number\n};\n\nconst EngineTabs = ({engines, firstItem}) => {\n return useMemo(\n () =>\n map.convert({cap: false})(\n (engine, index) => (\n <EngineTab\n engine={engine}\n key={`engineTab_${index}`}\n firstItem={firstItem}\n engineIndex={index}\n />\n ),\n engines\n ),\n [engines, firstItem]\n );\n};\n\nEngineTabs.propTypes = {\n engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)),\n firstItem: PropTypes.number\n};\n\nclass StarsSummary extends React.Component {\n static propTypes = {\n total: PropTypes.shape({\n label: PropTypes.string.isRequired,\n stars: PropTypes.number.isRequired\n }).isRequired,\n engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes))\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props) {\n super(props);\n\n const {engines = []} = props;\n this.state = {\n firstItem: 0,\n totalItems: engines.length\n };\n\n this.handleOnLeft = this.handleOnLeft.bind(this);\n this.handleOnRight = this.handleOnRight.bind(this);\n this.scrollTo = this.scrollTo.bind(this);\n }\n\n handleOnLeft() {\n const {firstItem} = this.state;\n this.scrollTo(firstItem - 1);\n }\n\n handleOnRight() {\n const {firstItem} = this.state;\n this.scrollTo(firstItem + 1);\n }\n\n scrollTo(page) {\n this.setState({\n firstItem: page\n });\n }\n\n render() {\n const {total, engines = []} = this.props;\n const {skin} = this.context;\n const {firstItem, totalItems} = this.state;\n const dark = getOr('#90A4AE', 'common.dark', skin);\n const primary = get('common.primary', skin);\n\n if (isEmpty(engines)) {\n return null;\n }\n const leftArrowView =\n totalItems > 6 && firstItem > 0 ? (\n <div className={style.circle} onClick={this.handleOnLeft} data-name=\"left-arrow\">\n <ArrowLeft color={dark} className={style.left} width={10} height={10} />\n </div>\n ) : null;\n\n const rightArrowView =\n totalItems > 6 && firstItem < totalItems - 6 ? (\n <div className={style.circle} onClick={this.handleOnRight} data-name=\"right-arrow\">\n <ArrowRight color={dark} className={style.right} width={10} height={10} />\n </div>\n ) : null;\n\n return (\n <div data-name=\"myStars\" className={style.myStars}>\n <div data-name=\"myStars-wrapper\" className={style.myStarsWrapper}>\n <ul className={style.allStars} data-name=\"engineList\">\n <EngineTabs engines={engines} firstItem={firstItem} />\n </ul>\n <div\n className={style.footerSummaryStars}\n style={{\n backgroundColor: primary\n }}\n >\n <div className={style.totalStars}>\n <span>{total.label}</span>\n <p data-name=\"star-counter\">{total.stars}</p>\n <div className={style.iconBubble}>\n <StarIcon className={style.iconHeader} color={primary} />\n </div>\n </div>\n <div className={style.navigationLeft}>{leftArrowView}</div>\n <div className={style.navigationRight}>{rightArrowView}</div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default StarsSummary;\n"],"mappings":"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"}
1
+ {"version":3,"file":"stars-summary.js","names":["React","useCallback","useMemo","useState","PropTypes","NovaCompositionNavigationArrowLeft","ArrowLeft","NovaCompositionNavigationArrowRight","ArrowRight","NovaCompositionCoorpacademyStar","StarIcon","Provider","GetSkinFromContext","EngineStars","style","EngineTab","engine","engineIndex","firstItemIndex","type","state","dataName","hidden","active","propTypes","shape","number","EngineTabs","engines","convert","cap","index","arrayOf","StarsSummary","props","legacyContext","total","skin","setFirstItemIndex","totalItems","length","dark","primary","scrollTo","page","handleOnLeft","handleOnRight","leftArrowView","circle","left","rightArrowView","right","myStars","myStarsWrapper","allStars","footerSummaryStars","backgroundColor","totalStars","label","stars","iconBubble","iconHeader","navigationLeft","navigationRight","string","isRequired","contextTypes","childContextTypes"],"sources":["../../../src/template/activity/stars-summary.js"],"sourcesContent":["import React, {useCallback, useMemo, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, getOr, isEmpty, map} from 'lodash/fp';\nimport {\n NovaCompositionNavigationArrowLeft as ArrowLeft,\n NovaCompositionNavigationArrowRight as ArrowRight,\n NovaCompositionCoorpacademyStar as StarIcon\n} from '@coorpacademy/nova-icons';\nimport Provider, {GetSkinFromContext} from '../../atom/provider';\nimport EngineStars from './engine-stars';\nimport style from './stars-summary.css';\n\nconst EngineTab = ({engine, engineIndex, firstItemIndex}) => {\n const {type} = engine;\n const state = useMemo(\n () => (engineIndex < firstItemIndex ? 'hidden' : 'active'),\n [engineIndex, firstItemIndex]\n );\n const dataName = useMemo(() => `${type}_total_${state}`, [state, type]);\n\n return (\n <li className={style[state]} key={type} data-name={dataName}>\n <EngineStars\n {...engine}\n className={engineIndex < firstItemIndex ? style.hidden : style.active}\n />\n </li>\n );\n};\nEngineTab.propTypes = {\n engine: PropTypes.shape(EngineStars.propTypes),\n engineIndex: PropTypes.number,\n firstItemIndex: PropTypes.number\n};\n\nconst EngineTabs = ({engines, firstItemIndex}) => {\n return useMemo(\n () =>\n map.convert({cap: false})(\n (engine, index) => (\n <EngineTab\n engine={engine}\n key={`engineTab_${index}`}\n firstItemIndex={firstItemIndex}\n engineIndex={index}\n />\n ),\n engines\n ),\n [engines, firstItemIndex]\n );\n};\n\nEngineTabs.propTypes = {\n engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)),\n firstItemIndex: PropTypes.number\n};\n\nconst StarsSummary = (props, legacyContext) => {\n const {total, engines} = props;\n const skin = GetSkinFromContext(legacyContext);\n\n const [firstItemIndex, setFirstItemIndex] = useState(0);\n const [totalItems] = useState(engines.length);\n\n const dark = getOr('#90A4AE', 'common.dark', skin);\n const primary = get('common.primary', skin);\n\n const scrollTo = useCallback(page => setFirstItemIndex(page), []);\n\n const handleOnLeft = useCallback(() => {\n scrollTo(firstItemIndex - 1);\n }, [firstItemIndex, scrollTo]);\n\n const handleOnRight = useCallback(() => {\n scrollTo(firstItemIndex + 1);\n }, [firstItemIndex, scrollTo]);\n\n if (isEmpty(engines)) {\n return null;\n }\n\n const leftArrowView =\n totalItems > 6 && firstItemIndex > 0 ? (\n <div\n className={style.circle}\n onClick={handleOnLeft}\n data-name=\"left-arrow\"\n data-testid=\"stars-summary-left-arrow\"\n >\n <ArrowLeft color={dark} className={style.left} width={10} height={10} />\n </div>\n ) : null;\n\n const rightArrowView =\n totalItems > 6 && firstItemIndex < totalItems - 6 ? (\n <div\n className={style.circle}\n onClick={handleOnRight}\n data-name=\"right-arrow\"\n data-testid=\"stars-summary-right-arrow\"\n >\n <ArrowRight color={dark} className={style.right} width={10} height={10} />\n </div>\n ) : null;\n\n return (\n <div data-name=\"myStars\" className={style.myStars}>\n <div\n data-name=\"myStars-wrapper\"\n className={style.myStarsWrapper}\n data-testid={`stars-summary-engine-index-${firstItemIndex}`}\n >\n <ul\n className={style.allStars}\n data-name=\"engineList\"\n data-testid=\"stars-summary-engine-tabs\"\n >\n <EngineTabs engines={engines} firstItemIndex={firstItemIndex} />\n </ul>\n <div\n className={style.footerSummaryStars}\n style={{\n backgroundColor: primary\n }}\n >\n <div className={style.totalStars}>\n <span>{total.label}</span>\n <p data-name=\"star-counter\">{total.stars}</p>\n <div className={style.iconBubble}>\n <StarIcon className={style.iconHeader} color={primary} />\n </div>\n </div>\n <div className={style.navigationLeft}>{leftArrowView}</div>\n <div className={style.navigationRight}>{rightArrowView}</div>\n </div>\n </div>\n </div>\n );\n};\n\nStarsSummary.propTypes = {\n total: PropTypes.shape({\n label: PropTypes.string.isRequired,\n stars: PropTypes.number.isRequired\n }).isRequired,\n engines: PropTypes.arrayOf(PropTypes.shape(EngineStars.propTypes)).isRequired\n};\n\nStarsSummary.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default StarsSummary;\n"],"mappings":"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"}
@@ -1443,8 +1443,27 @@ declare namespace BrandUpdate {
1443
1443
  type: PropTypes.Requireable<string>;
1444
1444
  }> | null | undefined)[]>;
1445
1445
  title: PropTypes.Validator<string>;
1446
+ order: PropTypes.Requireable<number>;
1447
+ 'aria-label': PropTypes.Requireable<string>;
1446
1448
  }> | null | undefined)[]>;
1447
1449
  title: PropTypes.Requireable<string>;
1450
+ }> | PropTypes.InferProps<{
1451
+ key: PropTypes.Requireable<string>;
1452
+ type: PropTypes.Requireable<string>;
1453
+ mainText: PropTypes.Requireable<string>;
1454
+ subText: PropTypes.Requireable<string>;
1455
+ imageUrl: PropTypes.Requireable<any>;
1456
+ buttonLink: PropTypes.Requireable<PropTypes.InferProps<{
1457
+ type: PropTypes.Requireable<string>;
1458
+ label: PropTypes.Requireable<string>;
1459
+ ariaLabel: PropTypes.Requireable<string>;
1460
+ dataName: PropTypes.Requireable<string>;
1461
+ icon: PropTypes.Requireable<PropTypes.InferProps<{
1462
+ position: PropTypes.Requireable<string>;
1463
+ type: PropTypes.Requireable<string>;
1464
+ }>>;
1465
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
1466
+ }>>;
1448
1467
  }> | null | undefined>>;
1449
1468
  export const documentation: PropTypes.Requireable<PropTypes.InferProps<{
1450
1469
  content: PropTypes.Requireable<string>;
@@ -1543,6 +1562,7 @@ declare namespace BrandUpdate {
1543
1562
  headerTitle: PropTypes.Requireable<string>;
1544
1563
  }>>;
1545
1564
  export const onItemClick: PropTypes.Requireable<(...args: any[]) => any>;
1565
+ export const contentFixHeight: PropTypes.Requireable<boolean>;
1546
1566
  }
1547
1567
  }
1548
1568
  import PropTypes from "prop-types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/back-office/brand-update/index.js"],"names":[],"mappings":";AAmLA,sDAkCC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/template/back-office/brand-update/index.js"],"names":[],"mappings":";AAsLA,sDA6CC"}
@@ -23,6 +23,7 @@ import Loader from '../../../atom/loader';
23
23
  import Accordion from '../../../organism/accordion/coorp-manager';
24
24
  import CmPopin from '../../../molecule/cm-popin';
25
25
  import ButtonLinkIconOnly from '../../../atom/button-link-icon-only';
26
+ import EmptyStateDashboard from '../../../molecule/empty-state-dashboard';
26
27
  import style from './style.css';
27
28
 
28
29
  const getStyle = isSelected => isSelected ? style.selectedElement : style.unselectedElement;
@@ -176,6 +177,9 @@ const buildContentView = content => {
176
177
 
177
178
  case 'wizard':
178
179
  return /*#__PURE__*/React.createElement(WizardContents, content);
180
+
181
+ case 'empty-state-dashboard':
182
+ return /*#__PURE__*/React.createElement(EmptyStateDashboard, content);
179
183
  }
180
184
  };
181
185
 
@@ -193,7 +197,8 @@ const BrandUpdate = props => {
193
197
  details,
194
198
  popin,
195
199
  onItemClick,
196
- documentation
200
+ documentation,
201
+ contentFixHeight
197
202
  } = props;
198
203
  const logo = 'https://static.coorpacademy.com/logo/coorp-manager.svg';
199
204
  const leftNavigation = buildLeftNavigation(logo, items, onItemClick);
@@ -204,7 +209,7 @@ const BrandUpdate = props => {
204
209
  const contentView = buildContentView(content);
205
210
  const detailsView = buildDetailsView(details);
206
211
  const popinView = buildPopin(popin);
207
- const contentStyle = classNames([style.content, !isEmpty(notifications) && style.contentWithNotifications]);
212
+ const contentStyle = classNames([style.content, !isEmpty(notifications) && style.contentWithNotifications, contentFixHeight && style.contentFixHeight]);
208
213
  return /*#__PURE__*/React.createElement("div", {
209
214
  className: style.container
210
215
  }, /*#__PURE__*/React.createElement("div", {
@@ -264,6 +269,9 @@ BrandUpdate.propTypes = process.env.NODE_ENV !== "production" ? {
264
269
  })), PropTypes.shape(_extends({}, ListItems.propTypes, {
265
270
  key: PropTypes.string,
266
271
  type: PropTypes.oneOf(['list-content'])
272
+ })), PropTypes.shape(_extends({}, EmptyStateDashboard.propTypes, {
273
+ key: PropTypes.string,
274
+ type: PropTypes.oneOf(['empty-state-dashboard'])
267
275
  }))]),
268
276
  documentation: PropTypes.shape({
269
277
  content: PropTypes.string,
@@ -275,7 +283,8 @@ BrandUpdate.propTypes = process.env.NODE_ENV !== "production" ? {
275
283
  key: PropTypes.string,
276
284
  type: PropTypes.oneOf(['list'])
277
285
  })),
278
- onItemClick: PropTypes.func
286
+ onItemClick: PropTypes.func,
287
+ contentFixHeight: PropTypes.bool
279
288
  } : {};
280
289
  export default BrandUpdate;
281
290
  //# sourceMappingURL=index.js.map