@coorpacademy/components 10.1.7 → 10.1.11

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 (154) hide show
  1. package/es/atom/button-link/index.js +2 -22
  2. package/es/atom/button-link/index.js.map +1 -1
  3. package/es/atom/button-link/style.css +0 -1
  4. package/es/atom/button-link/test/fixtures.js +0 -4
  5. package/es/atom/button-link/test/fixtures.js.map +1 -1
  6. package/es/atom/button-link-icon-only/index.js +76 -0
  7. package/es/atom/button-link-icon-only/index.js.map +1 -0
  8. package/es/atom/button-link-icon-only/style.css +64 -0
  9. package/es/atom/{button-link/test/button-link.js → button-link-icon-only/test/button-link-icon-only.js} +5 -5
  10. package/es/atom/button-link-icon-only/test/button-link-icon-only.js.map +1 -0
  11. package/es/atom/button-link-icon-only/test/fixtures/button-icon-bullet.js +10 -0
  12. package/es/atom/button-link-icon-only/test/fixtures/button-icon-bullet.js.map +1 -0
  13. package/es/atom/{button-link/test/fixtures/icon-button.js → button-link-icon-only/test/fixtures/default.js} +3 -6
  14. package/es/atom/button-link-icon-only/test/fixtures/default.js.map +1 -0
  15. package/es/atom/button-link-icon-only/test/fixtures/no-icon.js +7 -0
  16. package/es/atom/button-link-icon-only/test/fixtures/no-icon.js.map +1 -0
  17. package/es/atom/button-link-icon-only/test/fixtures/small-button-disabled.js +11 -0
  18. package/es/atom/button-link-icon-only/test/fixtures/small-button-disabled.js.map +1 -0
  19. package/es/atom/button-link-icon-only/test/fixtures/small-link-download.js +13 -0
  20. package/es/atom/button-link-icon-only/test/fixtures/small-link-download.js.map +1 -0
  21. package/es/atom/button-link-icon-only/test/fixtures.js +21 -0
  22. package/es/atom/button-link-icon-only/test/fixtures.js.map +1 -0
  23. package/es/atom/empty-search-result/index.js +24 -0
  24. package/es/atom/empty-search-result/index.js.map +1 -0
  25. package/es/atom/empty-search-result/style.css +25 -0
  26. package/es/atom/empty-search-result/test/fixtures/default.js +7 -0
  27. package/es/atom/empty-search-result/test/fixtures/default.js.map +1 -0
  28. package/es/atom/empty-search-result/test/fixtures.js +13 -0
  29. package/es/atom/empty-search-result/test/fixtures.js.map +1 -0
  30. package/es/atom/input-text/index.js +3 -2
  31. package/es/atom/input-text/index.js.map +1 -1
  32. package/es/atom/tag/index.js +3 -2
  33. package/es/atom/tag/index.js.map +1 -1
  34. package/es/atom/tag/style.css +5 -1
  35. package/es/atom/tag/test/fixtures/draft.js +7 -0
  36. package/es/atom/tag/test/fixtures/draft.js.map +1 -0
  37. package/es/atom/tag/test/fixtures/{revision.js → revised.js} +2 -2
  38. package/es/atom/tag/test/fixtures/revised.js.map +1 -0
  39. package/es/molecule/bullet-point-menu-button/index.js +4 -7
  40. package/es/molecule/bullet-point-menu-button/index.js.map +1 -1
  41. package/es/molecule/cm-popin/index.js +8 -7
  42. package/es/molecule/cm-popin/index.js.map +1 -1
  43. package/es/molecule/cm-popin/style.css +0 -25
  44. package/es/molecule/search/test/fixtures.js +15 -0
  45. package/es/molecule/search/test/fixtures.js.map +1 -0
  46. package/es/molecule/vertical-tabs/style.css +2 -2
  47. package/es/organism/course-selection/index.js +57 -0
  48. package/es/organism/course-selection/index.js.map +1 -0
  49. package/es/organism/course-selection/style.css +23 -0
  50. package/es/organism/course-selection/test/fixtures/default.js +34 -0
  51. package/es/organism/course-selection/test/fixtures/default.js.map +1 -0
  52. package/es/organism/course-selection/test/fixtures/empty.js +18 -0
  53. package/es/organism/course-selection/test/fixtures/empty.js.map +1 -0
  54. package/es/organism/course-selection/test/fixtures/filtered.js +24 -0
  55. package/es/organism/course-selection/test/fixtures/filtered.js.map +1 -0
  56. package/es/organism/course-selection/test/fixtures/sorted-selected.js +31 -0
  57. package/es/organism/course-selection/test/fixtures/sorted-selected.js.map +1 -0
  58. package/es/organism/course-selection/test/fixtures/unsorted-selected.js +31 -0
  59. package/es/organism/course-selection/test/fixtures/unsorted-selected.js.map +1 -0
  60. package/es/organism/course-selection/test/fixtures.js +21 -0
  61. package/es/organism/course-selection/test/fixtures.js.map +1 -0
  62. package/es/organism/playlist-translation/style.css +9 -2
  63. package/es/organism/playlist-translation/test/fixtures.js +15 -0
  64. package/es/organism/playlist-translation/test/fixtures.js.map +1 -0
  65. package/es/organism/search-and-chips-results/index.js +3 -8
  66. package/es/organism/search-and-chips-results/index.js.map +1 -1
  67. package/es/organism/search-and-chips-results/style.css +0 -22
  68. package/es/organism/setup-header/index.js +78 -31
  69. package/es/organism/setup-header/index.js.map +1 -1
  70. package/es/organism/setup-header/style.css +27 -62
  71. package/es/util/button-icons.js +16 -0
  72. package/es/util/button-icons.js.map +1 -0
  73. package/lib/atom/button-link/index.js +5 -26
  74. package/lib/atom/button-link/index.js.map +1 -1
  75. package/lib/atom/button-link/style.css +0 -1
  76. package/lib/atom/button-link/test/fixtures.js +0 -6
  77. package/lib/atom/button-link/test/fixtures.js.map +1 -1
  78. package/lib/atom/button-link-icon-only/index.js +94 -0
  79. package/lib/atom/button-link-icon-only/index.js.map +1 -0
  80. package/lib/atom/button-link-icon-only/style.css +64 -0
  81. package/lib/atom/{button-link/test/button-link.js → button-link-icon-only/test/button-link-icon-only.js} +4 -4
  82. package/lib/atom/button-link-icon-only/test/button-link-icon-only.js.map +1 -0
  83. package/lib/atom/{button-link/test/fixtures/button-tertiary-icon-bullet.js → button-link-icon-only/test/fixtures/button-icon-bullet.js} +3 -6
  84. package/lib/atom/button-link-icon-only/test/fixtures/button-icon-bullet.js.map +1 -0
  85. package/lib/atom/{button-link/test/fixtures/icon-button.js → button-link-icon-only/test/fixtures/default.js} +3 -6
  86. package/lib/atom/button-link-icon-only/test/fixtures/default.js.map +1 -0
  87. package/lib/atom/button-link-icon-only/test/fixtures/no-icon.js +12 -0
  88. package/lib/atom/button-link-icon-only/test/fixtures/no-icon.js.map +1 -0
  89. package/lib/atom/button-link-icon-only/test/fixtures/small-button-disabled.js +16 -0
  90. package/lib/atom/button-link-icon-only/test/fixtures/small-button-disabled.js.map +1 -0
  91. package/lib/atom/button-link-icon-only/test/fixtures/small-link-download.js +18 -0
  92. package/lib/atom/button-link-icon-only/test/fixtures/small-link-download.js.map +1 -0
  93. package/lib/atom/button-link-icon-only/test/fixtures.js +34 -0
  94. package/lib/atom/button-link-icon-only/test/fixtures.js.map +1 -0
  95. package/lib/atom/empty-search-result/index.js +34 -0
  96. package/lib/atom/empty-search-result/index.js.map +1 -0
  97. package/lib/atom/empty-search-result/style.css +25 -0
  98. package/lib/atom/empty-search-result/test/fixtures/default.js +12 -0
  99. package/lib/atom/empty-search-result/test/fixtures/default.js.map +1 -0
  100. package/lib/atom/empty-search-result/test/fixtures.js +22 -0
  101. package/lib/atom/empty-search-result/test/fixtures.js.map +1 -0
  102. package/lib/atom/input-text/index.js +3 -2
  103. package/lib/atom/input-text/index.js.map +1 -1
  104. package/lib/atom/tag/index.js +3 -2
  105. package/lib/atom/tag/index.js.map +1 -1
  106. package/lib/atom/tag/style.css +5 -1
  107. package/lib/atom/tag/test/fixtures/draft.js +12 -0
  108. package/lib/atom/tag/test/fixtures/draft.js.map +1 -0
  109. package/lib/atom/tag/test/fixtures/{revision.js → revised.js} +2 -2
  110. package/lib/atom/tag/test/fixtures/revised.js.map +1 -0
  111. package/lib/molecule/bullet-point-menu-button/index.js +4 -7
  112. package/lib/molecule/bullet-point-menu-button/index.js.map +1 -1
  113. package/lib/molecule/cm-popin/index.js +8 -6
  114. package/lib/molecule/cm-popin/index.js.map +1 -1
  115. package/lib/molecule/cm-popin/style.css +0 -25
  116. package/lib/molecule/search/test/fixtures.js +25 -0
  117. package/lib/molecule/search/test/fixtures.js.map +1 -0
  118. package/lib/molecule/vertical-tabs/style.css +2 -2
  119. package/lib/organism/course-selection/index.js +70 -0
  120. package/lib/organism/course-selection/index.js.map +1 -0
  121. package/lib/organism/course-selection/style.css +23 -0
  122. package/lib/organism/course-selection/test/fixtures/default.js +47 -0
  123. package/lib/organism/course-selection/test/fixtures/default.js.map +1 -0
  124. package/lib/organism/course-selection/test/fixtures/empty.js +23 -0
  125. package/lib/organism/course-selection/test/fixtures/empty.js.map +1 -0
  126. package/lib/organism/course-selection/test/fixtures/filtered.js +36 -0
  127. package/lib/organism/course-selection/test/fixtures/filtered.js.map +1 -0
  128. package/lib/organism/course-selection/test/fixtures/sorted-selected.js +44 -0
  129. package/lib/organism/course-selection/test/fixtures/sorted-selected.js.map +1 -0
  130. package/lib/organism/course-selection/test/fixtures/unsorted-selected.js +44 -0
  131. package/lib/organism/course-selection/test/fixtures/unsorted-selected.js.map +1 -0
  132. package/lib/organism/course-selection/test/fixtures.js +34 -0
  133. package/lib/organism/course-selection/test/fixtures.js.map +1 -0
  134. package/lib/organism/playlist-translation/style.css +9 -2
  135. package/lib/organism/playlist-translation/test/fixtures.js +25 -0
  136. package/lib/organism/playlist-translation/test/fixtures.js.map +1 -0
  137. package/lib/organism/search-and-chips-results/index.js +4 -8
  138. package/lib/organism/search-and-chips-results/index.js.map +1 -1
  139. package/lib/organism/search-and-chips-results/style.css +0 -22
  140. package/lib/organism/setup-header/index.js +80 -32
  141. package/lib/organism/setup-header/index.js.map +1 -1
  142. package/lib/organism/setup-header/style.css +27 -62
  143. package/lib/util/button-icons.js +23 -0
  144. package/lib/util/button-icons.js.map +1 -0
  145. package/package.json +2 -2
  146. package/es/atom/button-link/test/button-link.js.map +0 -1
  147. package/es/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js +0 -13
  148. package/es/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js.map +0 -1
  149. package/es/atom/button-link/test/fixtures/icon-button.js.map +0 -1
  150. package/es/atom/tag/test/fixtures/revision.js.map +0 -1
  151. package/lib/atom/button-link/test/button-link.js.map +0 -1
  152. package/lib/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js.map +0 -1
  153. package/lib/atom/button-link/test/fixtures/icon-button.js.map +0 -1
  154. package/lib/atom/tag/test/fixtures/revision.js.map +0 -1
@@ -0,0 +1,15 @@
1
+ import test from 'ava';
2
+ import forEach from 'lodash/forEach';
3
+ import renderComponentMacro from '../../../test/helpers/render-component';
4
+ import OrganismPlaylistTranslation from '..';
5
+ import fixtureDefault from './fixtures/default';
6
+ import fixtureDelete from './fixtures/delete';
7
+ test('Organism › OrganismPlaylistTranslation > should have valid propTypes', t => {
8
+ t.pass();
9
+ forEach(OrganismPlaylistTranslation.propTypes, (value, key) => {
10
+ t.not(value, undefined, `PropType for "Organism.OrganismPlaylistTranslation.propTypes.${key}" may not be undefined. Did you mistype the propTypes definition?`);
11
+ });
12
+ });
13
+ test('Organism › OrganismPlaylistTranslation › Default › should be rendered', renderComponentMacro, OrganismPlaylistTranslation, fixtureDefault);
14
+ test('Organism › OrganismPlaylistTranslation › Delete › should be rendered', renderComponentMacro, OrganismPlaylistTranslation, fixtureDelete);
15
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/organism/playlist-translation/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","OrganismPlaylistTranslation","fixtureDefault","fixtureDelete","t","pass","propTypes","value","key","not","undefined"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,KAAjB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,oBAAP,MAAiC,wCAAjC;AACA,OAAOC,2BAAP,MAAwC,IAAxC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AAEAL,IAAI,CAAC,sEAAD,EAAyEM,CAAC,IAAI;AAChFA,EAAAA,CAAC,CAACC,IAAF;AACAN,EAAAA,OAAO,CAACE,2BAA2B,CAACK,SAA7B,EAAwC,CAACC,KAAD,EAAQC,GAAR,KAAgB;AAC7DJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,gEAA+DF,GAAI,mEAA5F;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAV,IAAI,CAAC,uEAAD,EAA0EE,oBAA1E,EAAgGC,2BAAhG,EAA6HC,cAA7H,CAAJ;AACAJ,IAAI,CAAC,sEAAD,EAAyEE,oBAAzE,EAA+FC,2BAA/F,EAA4HE,aAA5H,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport OrganismPlaylistTranslation from '..';\nimport fixtureDefault from './fixtures/default';\nimport fixtureDelete from './fixtures/delete';\n\ntest('Organism › OrganismPlaylistTranslation > should have valid propTypes', t => {\n t.pass();\n forEach(OrganismPlaylistTranslation.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Organism.OrganismPlaylistTranslation.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Organism › OrganismPlaylistTranslation › Default › should be rendered', renderComponentMacro, OrganismPlaylistTranslation, fixtureDefault);\ntest('Organism › OrganismPlaylistTranslation › Delete › should be rendered', renderComponentMacro, OrganismPlaylistTranslation, fixtureDelete);\n"],"file":"fixtures.js"}
@@ -4,6 +4,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
4
4
 
5
5
  import React from 'react';
6
6
  import PropTypes from 'prop-types';
7
+ import EmptySearchResult from '../../atom/empty-search-result';
7
8
  import Search from '../../atom/input-search';
8
9
  import ButtonLink from '../../atom/button-link';
9
10
  import Chips from '../../atom/chips';
@@ -11,13 +12,7 @@ import style from './style.css';
11
12
 
12
13
  const buildResultView = (results, resultsAriaLabel, emptyMessages) => {
13
14
  if (_isEmpty(results)) {
14
- return /*#__PURE__*/React.createElement("div", {
15
- className: style.errorSection
16
- }, /*#__PURE__*/React.createElement("span", {
17
- className: style.firstErrorMessage
18
- }, emptyMessages.firstMessage), /*#__PURE__*/React.createElement("span", {
19
- className: style.secondErrorMessage
20
- }, emptyMessages.secondMessage));
15
+ return /*#__PURE__*/React.createElement(EmptySearchResult, emptyMessages);
21
16
  }
22
17
 
23
18
  const items = results.map((result, index) => {
@@ -25,7 +20,7 @@ const buildResultView = (results, resultsAriaLabel, emptyMessages) => {
25
20
  className: style.result,
26
21
  key: `result-${index}`
27
22
  }, /*#__PURE__*/React.createElement(Chips, result));
28
- }, results);
23
+ });
29
24
  return /*#__PURE__*/React.createElement("ul", {
30
25
  "aria-label": resultsAriaLabel
31
26
  }, items);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/organism/search-and-chips-results/index.js"],"names":["React","PropTypes","Search","ButtonLink","Chips","style","buildResultView","results","resultsAriaLabel","emptyMessages","errorSection","firstErrorMessage","firstMessage","secondErrorMessage","secondMessage","items","map","result","index","SearchAndChipsResults","props","search","selectAllButton","onClick","label","disabled","ariaLabel","resultView","buttonProps","type","icon","position","container","header","button","resultContainer","propTypes","shape","string","func","bool","arrayOf"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport Search from '../../atom/input-search';\nimport ButtonLink from '../../atom/button-link';\nimport Chips from '../../atom/chips';\nimport style from './style.css';\n\nconst buildResultView = (results, resultsAriaLabel, emptyMessages) => {\n if (isEmpty(results)) {\n return (\n <div className={style.errorSection}>\n <span className={style.firstErrorMessage}>{emptyMessages.firstMessage}</span>\n <span className={style.secondErrorMessage}>{emptyMessages.secondMessage}</span>\n </div>\n );\n }\n\n const items = results.map((result, index) => {\n return (\n <li className={style.result} key={`result-${index}`}>\n <Chips {...result} />\n </li>\n );\n }, results);\n\n return <ul aria-label={resultsAriaLabel}>{items}</ul>;\n};\n\nconst SearchAndChipsResults = props => {\n const {\n search,\n selectAllButton,\n results,\n emptyMessages,\n 'results-aria-label': resultsAriaLabel\n } = props;\n\n const {onClick, label, disabled = false, 'aria-label': ariaLabel} = selectAllButton;\n const resultView = buildResultView(results, resultsAriaLabel, emptyMessages);\n const buttonProps = {\n type: 'secondary',\n label,\n 'aria-label': ariaLabel,\n 'data-name': `select-all-button`,\n icon: {\n position: 'right',\n type: 'add'\n },\n onClick,\n disabled\n };\n\n return (\n <div className={style.container}>\n <div className={style.header}>\n <div className={style.button}>\n <ButtonLink {...buttonProps} />\n </div>\n <div className={style.search}>\n <Search {...search} theme=\"coorpmanager\" />\n </div>\n </div>\n <div className={style.resultContainer}>{resultView}</div>\n </div>\n );\n};\n\nSearchAndChipsResults.propTypes = {\n selectAllButton: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n 'aria-label': PropTypes.string\n }),\n search: PropTypes.shape(Search.PropTypes),\n results: PropTypes.arrayOf(PropTypes.shape(Chips.propTypes)),\n 'results-aria-label': PropTypes.string,\n emptyMessages: PropTypes.shape({\n firstMessage: PropTypes.string,\n secondMessage: PropTypes.string\n })\n};\n\nexport default SearchAndChipsResults;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/organism/search-and-chips-results/index.js"],"names":["React","PropTypes","EmptySearchResult","Search","ButtonLink","Chips","style","buildResultView","results","resultsAriaLabel","emptyMessages","items","map","result","index","SearchAndChipsResults","props","search","selectAllButton","onClick","label","disabled","ariaLabel","resultView","buttonProps","type","icon","position","container","header","button","resultContainer","propTypes","shape","string","func","bool","arrayOf","firstMessage","secondMessage"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {isEmpty} from 'lodash/fp';\nimport EmptySearchResult from '../../atom/empty-search-result';\nimport Search from '../../atom/input-search';\nimport ButtonLink from '../../atom/button-link';\nimport Chips from '../../atom/chips';\nimport style from './style.css';\n\nconst buildResultView = (results, resultsAriaLabel, emptyMessages) => {\n if (isEmpty(results)) {\n return <EmptySearchResult {...emptyMessages} />;\n }\n\n const items = results.map((result, index) => {\n return (\n <li className={style.result} key={`result-${index}`}>\n <Chips {...result} />\n </li>\n );\n });\n\n return <ul aria-label={resultsAriaLabel}>{items}</ul>;\n};\n\nconst SearchAndChipsResults = props => {\n const {\n search,\n selectAllButton,\n results,\n emptyMessages,\n 'results-aria-label': resultsAriaLabel\n } = props;\n\n const {onClick, label, disabled = false, 'aria-label': ariaLabel} = selectAllButton;\n const resultView = buildResultView(results, resultsAriaLabel, emptyMessages);\n const buttonProps = {\n type: 'secondary',\n label,\n 'aria-label': ariaLabel,\n 'data-name': `select-all-button`,\n icon: {\n position: 'right',\n type: 'add'\n },\n onClick,\n disabled\n };\n\n return (\n <div className={style.container}>\n <div className={style.header}>\n <div className={style.button}>\n <ButtonLink {...buttonProps} />\n </div>\n <div className={style.search}>\n <Search {...search} theme=\"coorpmanager\" />\n </div>\n </div>\n <div className={style.resultContainer}>{resultView}</div>\n </div>\n );\n};\n\nSearchAndChipsResults.propTypes = {\n selectAllButton: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n 'aria-label': PropTypes.string\n }),\n search: PropTypes.shape(Search.PropTypes),\n results: PropTypes.arrayOf(PropTypes.shape(Chips.propTypes)),\n 'results-aria-label': PropTypes.string,\n emptyMessages: PropTypes.shape({\n firstMessage: PropTypes.string,\n secondMessage: PropTypes.string\n })\n};\n\nexport default SearchAndChipsResults;\n"],"file":"index.js"}
@@ -32,26 +32,4 @@
32
32
  max-width: 268px;
33
33
  display: inline-block;
34
34
  margin: 0 16px 16px 0px;
35
- }
36
-
37
- .errorSection {
38
- margin: 48px 0;
39
- width: 100%;
40
- display: flex;
41
- flex-direction: column;
42
- align-items: center;
43
- font-size: 16px;
44
- font-weight: bold;
45
- font-family: Gilroy;
46
- font-size: 16px;
47
- }
48
-
49
- .firstErrorMessage {
50
- color: cm_grey_900;
51
- display: block;
52
- }
53
-
54
- .secondErrorMessage {
55
- color: cm_primary_blue;
56
- display: block;
57
35
  }
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
- import { NovaCompositionCoorpacademyTypeEye as EyeIcon, NovaCompositionCoorpacademyAnalytics as AnalyticsIcon, NovaSolidContentContentViewModule1 as ListIcon, NovaSolidLoginLogout1 as LogoutIcon } from '@coorpacademy/nova-icons';
3
2
  import PropTypes from 'prop-types';
4
3
  import classnames from 'classnames';
5
4
  import Picture from '../../atom/picture';
6
5
  import Link from '../../atom/link';
6
+ import ButtonLink from '../../atom/button-link';
7
+ import IconLink from '../../atom/button-link-icon-only';
7
8
  import style from './style.css';
8
9
 
9
10
  const SetupHeader = props => {
@@ -30,6 +31,66 @@ const SetupHeader = props => {
30
31
  updateShow(false);
31
32
  }
32
33
 
34
+ const platformListButtonProps = {
35
+ type: 'tertiary',
36
+ label: items.platformList.label,
37
+ 'aria-label': items.platformList.label,
38
+ 'data-name': `platform-list-button`,
39
+ link: {
40
+ href: items.platformList.href
41
+ },
42
+ icon: {
43
+ position: 'left',
44
+ type: 'list'
45
+ }
46
+ };
47
+ const platformListIconButtonProps = {
48
+ 'aria-label': items.platformList.label,
49
+ 'data-name': `platform-list-button`,
50
+ link: {
51
+ href: items.platformList.href
52
+ },
53
+ icon: 'list'
54
+ };
55
+ const goAnalyticsButtonProps = items.globalAnalytics && isDashboard === false ? {
56
+ type: 'secondary',
57
+ label: items.globalAnalytics.label,
58
+ 'aria-label': items.globalAnalytics.label,
59
+ 'data-name': `platform-list-button`,
60
+ link: {
61
+ href: items.globalAnalytics.href
62
+ },
63
+ icon: {
64
+ position: 'left',
65
+ type: 'analytics'
66
+ }
67
+ } : null;
68
+ const myPlatformButtonProps = {
69
+ type: 'primary',
70
+ label: items.platformList.label,
71
+ 'aria-label': items.platformList.label,
72
+ 'data-name': `platform-list-button`,
73
+ link: {
74
+ href
75
+ },
76
+ icon: {
77
+ position: 'left',
78
+ type: 'see'
79
+ }
80
+ };
81
+ const logoutButtonProps = {
82
+ type: 'text',
83
+ label: items.logOut.label,
84
+ 'aria-label': items.logOut.label,
85
+ 'data-name': `logout-list-button`,
86
+ link: {
87
+ href: items.logOut.href
88
+ },
89
+ icon: {
90
+ position: 'left',
91
+ type: 'logout'
92
+ }
93
+ };
33
94
  return /*#__PURE__*/React.createElement("div", {
34
95
  className: style.container
35
96
  }, /*#__PURE__*/React.createElement("div", {
@@ -46,47 +107,33 @@ const SetupHeader = props => {
46
107
  src: logoMobile
47
108
  }))) : /*#__PURE__*/React.createElement("ul", {
48
109
  className: style.list
49
- }, /*#__PURE__*/React.createElement(Link, {
50
- href: items.platformList.href,
51
- className: classnames(style.element, style.platformList)
52
- }, /*#__PURE__*/React.createElement(ListIcon, {
53
- className: style.icon
54
- }), /*#__PURE__*/React.createElement("li", null, items.platformList.label)), !isDashboard ? /*#__PURE__*/React.createElement("li", {
110
+ }, /*#__PURE__*/React.createElement("div", {
111
+ className: classnames([style.button, style.platformList])
112
+ }, /*#__PURE__*/React.createElement(ButtonLink, platformListButtonProps)), /*#__PURE__*/React.createElement("div", {
113
+ className: style.platformListIcon
114
+ }, /*#__PURE__*/React.createElement(IconLink, platformListIconButtonProps)), !isDashboard ? /*#__PURE__*/React.createElement("li", {
55
115
  className: classnames(style.element, style.platformName)
56
116
  }, platformName) : null), /*#__PURE__*/React.createElement("ul", {
57
117
  className: style.list
58
- }, items.globalAnalytics && isDashboard === false ? /*#__PURE__*/React.createElement(Link, {
59
- href: items.globalAnalytics.href,
60
- className: classnames(style.element, style.globalAnalytics)
61
- }, /*#__PURE__*/React.createElement(AnalyticsIcon, {
62
- className: style.icon
63
- }), /*#__PURE__*/React.createElement("li", null, items.globalAnalytics.label)) : null, isHome || isDashboard ? null : /*#__PURE__*/React.createElement(Link, {
64
- href: items.seeMyPlatform.href,
65
- target: "_blank",
66
- className: classnames(style.element, style.seeMyPlatform)
67
- }, /*#__PURE__*/React.createElement(EyeIcon, {
68
- className: style.icon
69
- }), /*#__PURE__*/React.createElement("li", null, items.seeMyPlatform.label)), /*#__PURE__*/React.createElement("li", {
118
+ }, goAnalyticsButtonProps ? /*#__PURE__*/React.createElement("div", {
119
+ className: style.button
120
+ }, /*#__PURE__*/React.createElement(ButtonLink, goAnalyticsButtonProps)) : null, isDashboard || isHome ? null : /*#__PURE__*/React.createElement("div", {
121
+ className: style.button
122
+ }, /*#__PURE__*/React.createElement(ButtonLink, myPlatformButtonProps)), /*#__PURE__*/React.createElement("li", {
70
123
  onMouseEnter: onMouseEnter,
71
124
  className: style.profilePicture
72
125
  }, /*#__PURE__*/React.createElement("img", {
73
126
  src: image
74
- })), /*#__PURE__*/React.createElement(Link, {
75
- href: items.logOut.href,
76
- className: classnames(style.element, style.logOut)
77
- }, /*#__PURE__*/React.createElement(LogoutIcon, {
78
- className: style.icon
79
- }), /*#__PURE__*/React.createElement("li", null, items.logOut.label)))), /*#__PURE__*/React.createElement("div", {
127
+ })), /*#__PURE__*/React.createElement("div", {
128
+ className: style.logOut
129
+ }, /*#__PURE__*/React.createElement(ButtonLink, logoutButtonProps)))), /*#__PURE__*/React.createElement("div", {
80
130
  "data-name": `logout-${show ? 'show' : 'hide'}`
81
131
  }, /*#__PURE__*/React.createElement("div", {
82
132
  className: style.arrowUp
83
- }), /*#__PURE__*/React.createElement(Link, {
84
- href: items.logOut.href,
85
- className: classnames(style.element, style.logOut),
133
+ }), /*#__PURE__*/React.createElement("div", {
134
+ className: style.logOut,
86
135
  onMouseLeave: onMouseLeave
87
- }, /*#__PURE__*/React.createElement(LogoutIcon, {
88
- className: style.icon
89
- }), /*#__PURE__*/React.createElement("li", null, items.logOut.label))));
136
+ }, /*#__PURE__*/React.createElement(ButtonLink, logoutButtonProps))));
90
137
  };
91
138
 
92
139
  SetupHeader.propTypes = process.env.NODE_ENV !== "production" ? {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/organism/setup-header/index.js"],"names":["React","NovaCompositionCoorpacademyTypeEye","EyeIcon","NovaCompositionCoorpacademyAnalytics","AnalyticsIcon","NovaSolidContentContentViewModule1","ListIcon","NovaSolidLoginLogout1","LogoutIcon","PropTypes","classnames","Picture","Link","style","SetupHeader","props","show","updateShow","useState","platformName","items","href","user","logo","logoMobile","isHome","isDashboard","image","onMouseEnter","onMouseLeave","container","wrapper","logoDesktop","list","platformList","element","icon","label","globalAnalytics","seeMyPlatform","profilePicture","logOut","arrowUp","propTypes","shape","string","bool","username","src"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n NovaCompositionCoorpacademyTypeEye as EyeIcon,\n NovaCompositionCoorpacademyAnalytics as AnalyticsIcon,\n NovaSolidContentContentViewModule1 as ListIcon,\n NovaSolidLoginLogout1 as LogoutIcon\n} from '@coorpacademy/nova-icons';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Picture from '../../atom/picture';\nimport Link from '../../atom/link';\nimport style from './style.css';\n\nconst SetupHeader = props => {\n const [show, updateShow] = React.useState(false);\n const {\n platformName,\n items,\n href,\n user = {},\n logo,\n logoMobile,\n isHome = false,\n isDashboard = false\n } = props;\n const {image = ''} = user;\n\n function onMouseEnter() {\n updateShow(true);\n }\n\n function onMouseLeave() {\n updateShow(false);\n }\n\n return (\n <div className={style.container}>\n <div className={style.wrapper}>\n {isHome ? (\n <div className={style.logo}>\n <Link href={href}>\n <Picture className={style.logoDesktop} src={logo} />\n <Picture className={style.logoMobile} src={logoMobile} />\n </Link>\n </div>\n ) : (\n <ul className={style.list}>\n <Link\n href={items.platformList.href}\n className={classnames(style.element, style.platformList)}\n >\n <ListIcon className={style.icon} />\n <li>{items.platformList.label}</li>\n </Link>\n {!isDashboard ? (\n <li className={classnames(style.element, style.platformName)}>{platformName}</li>\n ) : null}\n </ul>\n )}\n <ul className={style.list}>\n {items.globalAnalytics && isDashboard === false ? (\n <Link\n href={items.globalAnalytics.href}\n className={classnames(style.element, style.globalAnalytics)}\n >\n <AnalyticsIcon className={style.icon} />\n <li>{items.globalAnalytics.label}</li>\n </Link>\n ) : null}\n {isHome || isDashboard ? null : (\n <Link\n href={items.seeMyPlatform.href}\n target=\"_blank\"\n className={classnames(style.element, style.seeMyPlatform)}\n >\n <EyeIcon className={style.icon} />\n <li>{items.seeMyPlatform.label}</li>\n </Link>\n )}\n <li onMouseEnter={onMouseEnter} className={style.profilePicture}>\n <img src={image} />\n </li>\n <Link href={items.logOut.href} className={classnames(style.element, style.logOut)}>\n <LogoutIcon className={style.icon} />\n <li>{items.logOut.label}</li>\n </Link>\n </ul>\n </div>\n\n <div data-name={`logout-${show ? 'show' : 'hide'}`}>\n <div className={style.arrowUp} />\n <Link\n href={items.logOut.href}\n className={classnames(style.element, style.logOut)}\n onMouseLeave={onMouseLeave}\n >\n <LogoutIcon className={style.icon} />\n <li>{items.logOut.label}</li>\n </Link>\n </div>\n </div>\n );\n};\n\nSetupHeader.propTypes = {\n items: PropTypes.shape({\n seeMyPlatform: PropTypes.shape({href: PropTypes.string, label: PropTypes.string}),\n logOut: PropTypes.shape({href: PropTypes.string, label: PropTypes.string}),\n globalAnalytics: PropTypes.shape({href: PropTypes.string, label: PropTypes.string}),\n platformList: PropTypes.shape({href: PropTypes.string, label: PropTypes.string})\n }),\n platformName: PropTypes.string,\n isDashboard: PropTypes.bool,\n isHome: PropTypes.bool,\n href: Link.propTypes.href,\n user: PropTypes.shape({\n username: PropTypes.string,\n image: PropTypes.string\n }),\n logo: Picture.propTypes.src,\n logoMobile: Picture.propTypes.src\n};\n\nexport default SetupHeader;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/organism/setup-header/index.js"],"names":["React","PropTypes","classnames","Picture","Link","ButtonLink","IconLink","style","SetupHeader","props","show","updateShow","useState","platformName","items","href","user","logo","logoMobile","isHome","isDashboard","image","onMouseEnter","onMouseLeave","platformListButtonProps","type","label","platformList","link","icon","position","platformListIconButtonProps","goAnalyticsButtonProps","globalAnalytics","myPlatformButtonProps","logoutButtonProps","logOut","container","wrapper","logoDesktop","list","button","platformListIcon","element","profilePicture","arrowUp","propTypes","shape","seeMyPlatform","string","bool","username","src"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Picture from '../../atom/picture';\nimport Link from '../../atom/link';\nimport ButtonLink from '../../atom/button-link';\nimport IconLink from '../../atom/button-link-icon-only';\nimport style from './style.css';\n\nconst SetupHeader = props => {\n const [show, updateShow] = React.useState(false);\n const {\n platformName,\n items,\n href,\n user = {},\n logo,\n logoMobile,\n isHome = false,\n isDashboard = false\n } = props;\n const {image = ''} = user;\n\n function onMouseEnter() {\n updateShow(true);\n }\n\n function onMouseLeave() {\n updateShow(false);\n }\n\n const platformListButtonProps = {\n type: 'tertiary',\n label: items.platformList.label,\n 'aria-label': items.platformList.label,\n 'data-name': `platform-list-button`,\n link: {\n href: items.platformList.href\n },\n icon: {\n position: 'left',\n type: 'list'\n }\n };\n\n const platformListIconButtonProps = {\n 'aria-label': items.platformList.label,\n 'data-name': `platform-list-button`,\n link: {\n href: items.platformList.href\n },\n icon: 'list'\n };\n\n const goAnalyticsButtonProps =\n items.globalAnalytics && isDashboard === false\n ? {\n type: 'secondary',\n label: items.globalAnalytics.label,\n 'aria-label': items.globalAnalytics.label,\n 'data-name': `platform-list-button`,\n link: {\n href: items.globalAnalytics.href\n },\n icon: {\n position: 'left',\n type: 'analytics'\n }\n }\n : null;\n\n const myPlatformButtonProps = {\n type: 'primary',\n label: items.platformList.label,\n 'aria-label': items.platformList.label,\n 'data-name': `platform-list-button`,\n link: {\n href\n },\n icon: {\n position: 'left',\n type: 'see'\n }\n };\n\n const logoutButtonProps = {\n type: 'text',\n label: items.logOut.label,\n 'aria-label': items.logOut.label,\n 'data-name': `logout-list-button`,\n link: {\n href: items.logOut.href\n },\n icon: {\n position: 'left',\n type: 'logout'\n }\n };\n\n return (\n <div className={style.container}>\n <div className={style.wrapper}>\n {isHome ? (\n <div className={style.logo}>\n <Link href={href}>\n <Picture className={style.logoDesktop} src={logo} />\n <Picture className={style.logoMobile} src={logoMobile} />\n </Link>\n </div>\n ) : (\n <ul className={style.list}>\n <div className={classnames([style.button, style.platformList])}>\n <ButtonLink {...platformListButtonProps} />\n </div>\n <div className={style.platformListIcon}>\n <IconLink {...platformListIconButtonProps} />\n </div>\n {!isDashboard ? (\n <li className={classnames(style.element, style.platformName)}>{platformName}</li>\n ) : null}\n </ul>\n )}\n <ul className={style.list}>\n {goAnalyticsButtonProps ? (\n <div className={style.button}>\n <ButtonLink {...goAnalyticsButtonProps} />\n </div>\n ) : null}\n {isDashboard || isHome ? null : (\n <div className={style.button}>\n <ButtonLink {...myPlatformButtonProps} />\n </div>\n )}\n <li onMouseEnter={onMouseEnter} className={style.profilePicture}>\n <img src={image} />\n </li>\n <div className={style.logOut}>\n <ButtonLink {...logoutButtonProps} />\n </div>\n </ul>\n </div>\n <div data-name={`logout-${show ? 'show' : 'hide'}`}>\n <div className={style.arrowUp} />\n <div className={style.logOut} onMouseLeave={onMouseLeave}>\n <ButtonLink {...logoutButtonProps} />\n </div>\n </div>\n </div>\n );\n};\n\nSetupHeader.propTypes = {\n items: PropTypes.shape({\n seeMyPlatform: PropTypes.shape({href: PropTypes.string, label: PropTypes.string}),\n logOut: PropTypes.shape({href: PropTypes.string, label: PropTypes.string}),\n globalAnalytics: PropTypes.shape({href: PropTypes.string, label: PropTypes.string}),\n platformList: PropTypes.shape({href: PropTypes.string, label: PropTypes.string})\n }),\n platformName: PropTypes.string,\n isDashboard: PropTypes.bool,\n isHome: PropTypes.bool,\n href: Link.propTypes.href,\n user: PropTypes.shape({\n username: PropTypes.string,\n image: PropTypes.string\n }),\n logo: Picture.propTypes.src,\n logoMobile: Picture.propTypes.src\n};\n\nexport default SetupHeader;\n"],"file":"index.js"}
@@ -83,6 +83,11 @@
83
83
  text-decoration: none;
84
84
  }
85
85
 
86
+ .button {
87
+ min-width: 175px;
88
+ margin-right: 16px;
89
+ }
90
+
86
91
  .element {
87
92
  font-family: Gilroy;
88
93
  font-size: 14px;
@@ -99,48 +104,7 @@
99
104
  border-radius: 5px;
100
105
  }
101
106
 
102
- .icon {
103
- height: 12px;
104
- top: 0;
105
- left: 0;
106
- margin-right: 8px;
107
- }
108
-
109
- .seeMyPlatform {
110
- composes: element;
111
- color: white;
112
- min-width: 175px;
113
- background-color: cm_primary_blue;
114
- }
115
-
116
- .seeMyPlatform:hover {
117
- background-color: cm_blue_600;
118
- }
119
-
120
- .globalAnalytics {
121
- composes: element;
122
- min-width: 175px;
123
- background-color: cm_grey_100;
124
- }
125
-
126
- .globalAnalytics:hover {
127
- background-color: cm_grey_200;
128
- }
129
-
130
- .platformList {
131
- composes: element;
132
- width: 145px;
133
- margin-right: 16px;
134
- background-color: xtraLightGrey;
135
- }
136
-
137
- .platformList:hover {
138
- background-color: cm_grey_100;
139
- }
140
-
141
107
  .logOut {
142
- composes: element;
143
- background-color: transparent;
144
108
  width: 100px;
145
109
  color: negative;
146
110
  }
@@ -179,6 +143,10 @@
179
143
  border-radius: 50%;
180
144
  }
181
145
 
146
+ .platformListIcon{
147
+ display: none;
148
+ }
149
+
182
150
  @media cm_tablet {
183
151
  [data-name="logout-show"] {
184
152
  position: absolute;
@@ -192,6 +160,11 @@
192
160
  }
193
161
 
194
162
  [data-name="logout-show"] .logOut {
163
+ border-radius: 7px;
164
+ height: 44px;
165
+ display: flex;
166
+ margin: 0;
167
+ color: negative;
195
168
  background-color: cm_grey_100;
196
169
  justify-content: center;
197
170
  align-items: center;
@@ -199,6 +172,12 @@
199
172
  text-decoration: none;
200
173
  }
201
174
 
175
+ [data-name="logout-show"] .logOut:hover {
176
+ display: flex;
177
+ margin: 0;
178
+ color: cm_negative_200;
179
+ }
180
+
202
181
  .arrowUp {
203
182
  width: 0;
204
183
  height: 0;
@@ -208,33 +187,18 @@
208
187
  border-bottom: 8px solid cm_grey_100;
209
188
  }
210
189
 
211
- [data-name="logout-show"] .logOut {
190
+ .platformListIcon {
212
191
  display: flex;
213
- margin: 0;
214
- color: black;
215
- }
216
-
217
- [data-name="logout-show"] .logOut:hover {
218
- display: flex;
219
- margin: 0;
220
- color: negative;
221
- }
222
-
223
- .platformList {
224
192
  justify-content: center;
225
193
  align-items: center;
226
- padding: 0 8px;
227
- width: auto;
194
+ padding: 0 16px 0px 0px;
195
+ width: 44px;
228
196
  }
229
197
 
230
- .platformList li {
198
+ .platformList {
231
199
  display: none;
232
200
  }
233
201
 
234
- .platformList .icon {
235
- margin-right: 0;
236
- }
237
-
238
202
  .platformName {
239
203
  font-size: 16px;
240
204
  }
@@ -243,9 +207,10 @@
243
207
  display: none;
244
208
  }
245
209
 
246
- .platformList .icon {
247
- width: 30px;
210
+ .container {
211
+ margin: 24px 32px;
248
212
  }
213
+
249
214
  }
250
215
 
251
216
  @media mobile {
@@ -0,0 +1,16 @@
1
+ import { NovaSolidRemoveAddAddCircle1 as AddIcon, NovaCompositionCoorpacademyAnalytics as AnalyticsIcon, NovaSolidContentEditionBin as BinIcon, NovaCompositionCoorpacademyBulletPoint as BulletPointIcon, NovaCompositionNavigationArrowLeft as ChevronLeftIcon, NovaCompositionNavigationArrowRight as ChevronRightIcon, NovaSolidStatusClose as CloseIcon, NovaSolidContentEditionPencilWrite as EditIcon, NovaCompositionCoorpacademyEye as EyeIcon, NovaSolidComputersSdCard as SaveIcon, NovaSolidContentContentViewModule1 as ListIcon, NovaSolidLoginLogout1 as LogoutIcon } from '@coorpacademy/nova-icons';
2
+ export const ICONS = {
3
+ add: AddIcon,
4
+ analytics: AnalyticsIcon,
5
+ bin: BinIcon,
6
+ 'bullet-point': BulletPointIcon,
7
+ 'chevron-left': ChevronLeftIcon,
8
+ 'chevron-right': ChevronRightIcon,
9
+ close: CloseIcon,
10
+ edit: EditIcon,
11
+ list: ListIcon,
12
+ logout: LogoutIcon,
13
+ save: SaveIcon,
14
+ see: EyeIcon
15
+ };
16
+ //# sourceMappingURL=button-icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/util/button-icons.js"],"names":["NovaSolidRemoveAddAddCircle1","AddIcon","NovaCompositionCoorpacademyAnalytics","AnalyticsIcon","NovaSolidContentEditionBin","BinIcon","NovaCompositionCoorpacademyBulletPoint","BulletPointIcon","NovaCompositionNavigationArrowLeft","ChevronLeftIcon","NovaCompositionNavigationArrowRight","ChevronRightIcon","NovaSolidStatusClose","CloseIcon","NovaSolidContentEditionPencilWrite","EditIcon","NovaCompositionCoorpacademyEye","EyeIcon","NovaSolidComputersSdCard","SaveIcon","NovaSolidContentContentViewModule1","ListIcon","NovaSolidLoginLogout1","LogoutIcon","ICONS","add","analytics","bin","close","edit","list","logout","save","see"],"mappings":"AAAA,SACEA,4BAA4B,IAAIC,OADlC,EAEEC,oCAAoC,IAAIC,aAF1C,EAGEC,0BAA0B,IAAIC,OAHhC,EAIEC,sCAAsC,IAAIC,eAJ5C,EAKEC,kCAAkC,IAAIC,eALxC,EAMEC,mCAAmC,IAAIC,gBANzC,EAOEC,oBAAoB,IAAIC,SAP1B,EAQEC,kCAAkC,IAAIC,QARxC,EASEC,8BAA8B,IAAIC,OATpC,EAUEC,wBAAwB,IAAIC,QAV9B,EAWEC,kCAAkC,IAAIC,QAXxC,EAYEC,qBAAqB,IAAIC,UAZ3B,QAaO,0BAbP;AAeA,OAAO,MAAMC,KAAK,GAAG;AACnBC,EAAAA,GAAG,EAAExB,OADc;AAEnByB,EAAAA,SAAS,EAAEvB,aAFQ;AAGnBwB,EAAAA,GAAG,EAAEtB,OAHc;AAInB,kBAAgBE,eAJG;AAKnB,kBAAgBE,eALG;AAMnB,mBAAiBE,gBANE;AAOnBiB,EAAAA,KAAK,EAAEf,SAPY;AAQnBgB,EAAAA,IAAI,EAAEd,QARa;AASnBe,EAAAA,IAAI,EAAET,QATa;AAUnBU,EAAAA,MAAM,EAAER,UAVW;AAWnBS,EAAAA,IAAI,EAAEb,QAXa;AAYnBc,EAAAA,GAAG,EAAEhB;AAZc,CAAd","sourcesContent":["import {\n NovaSolidRemoveAddAddCircle1 as AddIcon,\n NovaCompositionCoorpacademyAnalytics as AnalyticsIcon,\n NovaSolidContentEditionBin as BinIcon,\n NovaCompositionCoorpacademyBulletPoint as BulletPointIcon,\n NovaCompositionNavigationArrowLeft as ChevronLeftIcon,\n NovaCompositionNavigationArrowRight as ChevronRightIcon,\n NovaSolidStatusClose as CloseIcon,\n NovaSolidContentEditionPencilWrite as EditIcon,\n NovaCompositionCoorpacademyEye as EyeIcon,\n NovaSolidComputersSdCard as SaveIcon,\n NovaSolidContentContentViewModule1 as ListIcon,\n NovaSolidLoginLogout1 as LogoutIcon\n} from '@coorpacademy/nova-icons';\n\nexport const ICONS = {\n add: AddIcon,\n analytics: AnalyticsIcon,\n bin: BinIcon,\n 'bullet-point': BulletPointIcon,\n 'chevron-left': ChevronLeftIcon,\n 'chevron-right': ChevronRightIcon,\n close: CloseIcon,\n edit: EditIcon,\n list: ListIcon,\n logout: LogoutIcon,\n save: SaveIcon,\n see: EyeIcon\n};\n"],"file":"button-icons.js"}
@@ -13,10 +13,10 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
15
 
16
- var _novaIcons = require("@coorpacademy/nova-icons");
17
-
18
16
  var _link = _interopRequireDefault(require("../link"));
19
17
 
18
+ var _buttonIcons = require("../../util/button-icons");
19
+
20
20
  var _style = _interopRequireDefault(require("./style.css"));
21
21
 
22
22
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
@@ -27,25 +27,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
27
27
 
28
28
  function _extends() { _extends = Object.assign || 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); }
29
29
 
30
- const ICONS = {
31
- add: _novaIcons.NovaSolidRemoveAddAddCircle1,
32
- analytics: _novaIcons.NovaCompositionCoorpacademyAnalytics,
33
- bin: _novaIcons.NovaSolidContentEditionBin,
34
- 'bullet-point': _novaIcons.NovaCompositionCoorpacademyBulletPoint,
35
- 'chevron-left': _novaIcons.NovaCompositionNavigationArrowLeft,
36
- 'chevron-right': _novaIcons.NovaCompositionNavigationArrowRight,
37
- close: _novaIcons.NovaCompositionCoorpacademyNext,
38
- edit: _novaIcons.NovaSolidContentEditionPencilWrite,
39
- save: _novaIcons.NovaSolidComputersSdCard,
40
- see: _novaIcons.NovaCompositionCoorpacademyEye
41
- };
42
-
43
30
  const getButtonContent = (icon, label) => {
44
31
  const {
45
32
  type,
46
33
  position
47
34
  } = icon;
48
- const Icon = (0, _getOr2.default)(null, type, ICONS);
35
+ const Icon = (0, _getOr2.default)(null, type, _buttonIcons.ICONS);
49
36
 
50
37
  if (!Icon) {
51
38
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -55,14 +42,6 @@ const getButtonContent = (icon, label) => {
55
42
  }, label));
56
43
  }
57
44
 
58
- if (position === 'center' && Icon) {
59
- return /*#__PURE__*/_react.default.createElement("div", {
60
- className: _style.default.buttonContent
61
- }, /*#__PURE__*/_react.default.createElement(Icon, {
62
- className: _style.default.icon
63
- }));
64
- }
65
-
66
45
  return /*#__PURE__*/_react.default.createElement("div", {
67
46
  className: _style.default.buttonContent
68
47
  }, position === 'left' ? /*#__PURE__*/_react.default.createElement(Icon, {
@@ -114,8 +93,8 @@ ButtonLink.propTypes = process.env.NODE_ENV !== "production" ? {
114
93
  'aria-label': _propTypes.default.string,
115
94
  'data-name': _propTypes.default.string,
116
95
  icon: _propTypes.default.shape({
117
- position: _propTypes.default.oneOf(['right', 'left', 'center']),
118
- type: _propTypes.default.oneOf((0, _keys2.default)(ICONS))
96
+ position: _propTypes.default.oneOf(['right', 'left']),
97
+ type: _propTypes.default.oneOf((0, _keys2.default)(_buttonIcons.ICONS))
119
98
  }),
120
99
  onClick: _propTypes.default.func,
121
100
  link: _propTypes.default.shape({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/button-link/index.js"],"names":["ICONS","add","AddIcon","analytics","AnalyticsIcon","bin","BinIcon","BulletPointIcon","ChevronLeftIcon","ChevronRightIcon","close","CloseIcon","edit","EditIcon","save","SaveIcon","see","EyeIcon","getButtonContent","icon","label","type","position","Icon","style","buttonContent","ButtonLink","props","disabled","dataName","ariaLabel","link","onClick","contentView","styleButton","button","primary","secondary","tertiary","text","dangerous","handleOnClick","propTypes","PropTypes","oneOf","string","shape","func","href","download","bool","target"],"mappings":"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","sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, keys} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {\n NovaSolidRemoveAddAddCircle1 as AddIcon,\n NovaCompositionCoorpacademyAnalytics as AnalyticsIcon,\n NovaSolidContentEditionBin as BinIcon,\n NovaCompositionCoorpacademyBulletPoint as BulletPointIcon,\n NovaCompositionNavigationArrowLeft as ChevronLeftIcon,\n NovaCompositionNavigationArrowRight as ChevronRightIcon,\n NovaCompositionCoorpacademyNext as CloseIcon,\n NovaSolidContentEditionPencilWrite as EditIcon,\n NovaCompositionCoorpacademyEye as EyeIcon,\n NovaSolidComputersSdCard as SaveIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../link';\nimport style from './style.css';\n\nconst ICONS = {\n add: AddIcon,\n analytics: AnalyticsIcon,\n bin: BinIcon,\n 'bullet-point': BulletPointIcon,\n 'chevron-left': ChevronLeftIcon,\n 'chevron-right': ChevronRightIcon,\n close: CloseIcon,\n edit: EditIcon,\n save: SaveIcon,\n see: EyeIcon\n};\n\nconst getButtonContent = (icon, label) => {\n const {type, position} = icon;\n const Icon = getOr(null, type, ICONS);\n\n if (!Icon) {\n return (\n <div className={style.buttonContent}>\n <span className={style.label}>{label}</span>\n </div>\n );\n }\n\n if (position === 'center' && Icon) {\n return (\n <div className={style.buttonContent}>\n <Icon className={style.icon} />\n </div>\n );\n }\n\n return (\n <div className={style.buttonContent}>\n {position === 'left' ? <Icon className={style.icon} /> : null}\n <span className={style.label}>{label}</span>\n {position === 'right' ? <Icon className={style.icon} /> : null}\n </div>\n );\n};\n\nconst ButtonLink = props => {\n const {\n type,\n label,\n disabled,\n icon = {},\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n link,\n onClick\n } = props;\n const contentView = getButtonContent(icon, label);\n const styleButton = classnames(\n style.button,\n type === 'primary' && style.primary,\n type === 'secondary' && style.secondary,\n type === 'tertiary' && style.tertiary,\n type === 'text' && style.text,\n type === 'dangerous' && style.dangerous,\n link && style.link,\n disabled && style.disabled\n );\n\n if (link) {\n return (\n <Link\n {...link}\n className={styleButton}\n data-name={dataName}\n aria-label={ariaLabel || label}\n title={ariaLabel || label}\n >\n {contentView}\n </Link>\n );\n }\n\n const handleOnClick = useCallback(() => onClick(), [onClick]);\n return (\n <button\n type=\"button\"\n aria-label={ariaLabel || label}\n title={ariaLabel || label}\n data-name={dataName}\n className={styleButton}\n onClick={handleOnClick}\n >\n {contentView}\n </button>\n );\n};\n\nButtonLink.propTypes = {\n type: PropTypes.oneOf(['primary', 'secondary', 'tertiary', 'text', 'dangerous']),\n label: PropTypes.string,\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.oneOf(['right', 'left', 'center']),\n type: PropTypes.oneOf(keys(ICONS))\n }),\n onClick: PropTypes.func,\n link: PropTypes.shape({\n href: PropTypes.string,\n download: PropTypes.bool,\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top'])\n }),\n disabled: PropTypes.bool\n};\n\nexport default ButtonLink;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/button-link/index.js"],"names":["getButtonContent","icon","label","type","position","Icon","ICONS","style","buttonContent","ButtonLink","props","disabled","dataName","ariaLabel","link","onClick","contentView","styleButton","button","primary","secondary","tertiary","text","dangerous","handleOnClick","propTypes","PropTypes","oneOf","string","shape","func","href","download","bool","target"],"mappings":"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","sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr, keys} from 'lodash/fp';\nimport classnames from 'classnames';\nimport Link from '../link';\nimport {ICONS} from '../../util/button-icons';\nimport style from './style.css';\n\nconst getButtonContent = (icon, label) => {\n const {type, position} = icon;\n const Icon = getOr(null, type, ICONS);\n\n if (!Icon) {\n return (\n <div className={style.buttonContent}>\n <span className={style.label}>{label}</span>\n </div>\n );\n }\n\n return (\n <div className={style.buttonContent}>\n {position === 'left' ? <Icon className={style.icon} /> : null}\n <span className={style.label}>{label}</span>\n {position === 'right' ? <Icon className={style.icon} /> : null}\n </div>\n );\n};\n\nconst ButtonLink = props => {\n const {\n type,\n label,\n disabled,\n icon = {},\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n link,\n onClick\n } = props;\n const contentView = getButtonContent(icon, label);\n const styleButton = classnames(\n style.button,\n type === 'primary' && style.primary,\n type === 'secondary' && style.secondary,\n type === 'tertiary' && style.tertiary,\n type === 'text' && style.text,\n type === 'dangerous' && style.dangerous,\n link && style.link,\n disabled && style.disabled\n );\n\n if (link) {\n return (\n <Link\n {...link}\n className={styleButton}\n data-name={dataName}\n aria-label={ariaLabel || label}\n title={ariaLabel || label}\n >\n {contentView}\n </Link>\n );\n }\n\n const handleOnClick = useCallback(() => onClick(), [onClick]);\n return (\n <button\n type=\"button\"\n aria-label={ariaLabel || label}\n title={ariaLabel || label}\n data-name={dataName}\n className={styleButton}\n onClick={handleOnClick}\n >\n {contentView}\n </button>\n );\n};\n\nButtonLink.propTypes = {\n type: PropTypes.oneOf(['primary', 'secondary', 'tertiary', 'text', 'dangerous']),\n label: PropTypes.string,\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n icon: PropTypes.shape({\n position: PropTypes.oneOf(['right', 'left']),\n type: PropTypes.oneOf(keys(ICONS))\n }),\n onClick: PropTypes.func,\n link: PropTypes.shape({\n href: PropTypes.string,\n download: PropTypes.bool,\n target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top'])\n }),\n disabled: PropTypes.bool\n};\n\nexport default ButtonLink;\n"],"file":"index.js"}
@@ -73,7 +73,6 @@
73
73
  .tertiary {
74
74
  background-color: cm_grey_50;
75
75
  color: cm_grey_900;
76
- border-radius: 0px;
77
76
  }
78
77
 
79
78
  .tertiary:hover {
@@ -16,12 +16,8 @@ var _buttonPrimaryNoIcon = _interopRequireDefault(require("./fixtures/button-pri
16
16
 
17
17
  var _buttonSecondaryNoIconDisabled = _interopRequireDefault(require("./fixtures/button-secondary-no-icon-disabled"));
18
18
 
19
- var _buttonTertiaryIconBullet = _interopRequireDefault(require("./fixtures/button-tertiary-icon-bullet"));
20
-
21
19
  var _buttonTertiaryIconLeft = _interopRequireDefault(require("./fixtures/button-tertiary-icon-left"));
22
20
 
23
- var _iconButton = _interopRequireDefault(require("./fixtures/icon-button"));
24
-
25
21
  var _linkPrimaryDisabledIconRight = _interopRequireDefault(require("./fixtures/link-primary-disabled-icon-right"));
26
22
 
27
23
  var _linkSecondaryIconRight = _interopRequireDefault(require("./fixtures/link-secondary-icon-right"));
@@ -44,9 +40,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
44
40
  (0, _ava.default)('Atom › AtomButtonLink › ButtonPrimaryIconLeft › should be rendered', _renderComponent.default, _.default, _buttonPrimaryIconLeft.default);
45
41
  (0, _ava.default)('Atom › AtomButtonLink › ButtonPrimaryNoIcon › should be rendered', _renderComponent.default, _.default, _buttonPrimaryNoIcon.default);
46
42
  (0, _ava.default)('Atom › AtomButtonLink › ButtonSecondaryNoIconDisabled › should be rendered', _renderComponent.default, _.default, _buttonSecondaryNoIconDisabled.default);
47
- (0, _ava.default)('Atom › AtomButtonLink › ButtonTertiaryIconBullet › should be rendered', _renderComponent.default, _.default, _buttonTertiaryIconBullet.default);
48
43
  (0, _ava.default)('Atom › AtomButtonLink › ButtonTertiaryIconLeft › should be rendered', _renderComponent.default, _.default, _buttonTertiaryIconLeft.default);
49
- (0, _ava.default)('Atom › AtomButtonLink › IconButton › should be rendered', _renderComponent.default, _.default, _iconButton.default);
50
44
  (0, _ava.default)('Atom › AtomButtonLink › LinkPrimaryDisabledIconRight › should be rendered', _renderComponent.default, _.default, _linkPrimaryDisabledIconRight.default);
51
45
  (0, _ava.default)('Atom › AtomButtonLink › LinkSecondaryIconRight › should be rendered', _renderComponent.default, _.default, _linkSecondaryIconRight.default);
52
46
  (0, _ava.default)('Atom › AtomButtonLink › LinkTertiaryNoIcon › should be rendered', _renderComponent.default, _.default, _linkTertiaryNoIcon.default);