@coorpacademy/components 10.1.6 → 10.1.7

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 (91) hide show
  1. package/es/atom/button-link/index.js +8 -4
  2. package/es/atom/button-link/index.js.map +1 -1
  3. package/es/atom/button-link/style.css +4 -1
  4. package/es/atom/button-link/test/button-link.js +25 -0
  5. package/es/atom/button-link/test/button-link.js.map +1 -0
  6. package/es/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js +13 -0
  7. package/es/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js.map +1 -0
  8. package/es/atom/button-link/test/fixtures.js +2 -0
  9. package/es/atom/button-link/test/fixtures.js.map +1 -1
  10. package/es/atom/button-menu/index.js +66 -0
  11. package/es/atom/button-menu/index.js.map +1 -0
  12. package/es/atom/button-menu/style.css +51 -0
  13. package/es/atom/button-menu/test/fixtures/default.js +20 -0
  14. package/es/atom/button-menu/test/fixtures/default.js.map +1 -0
  15. package/es/atom/button-menu/test/fixtures/multiple-buttons.js +15 -0
  16. package/es/atom/button-menu/test/fixtures/multiple-buttons.js.map +1 -0
  17. package/es/atom/button-menu/test/fixtures.js +15 -0
  18. package/es/atom/button-menu/test/fixtures.js.map +1 -0
  19. package/es/atom/input-text/index.js.map +1 -1
  20. package/es/molecule/bullet-point-menu-button/index.js +54 -0
  21. package/es/molecule/bullet-point-menu-button/index.js.map +1 -0
  22. package/es/molecule/bullet-point-menu-button/style.css +52 -0
  23. package/es/molecule/bullet-point-menu-button/test/bullet-point-menu-button.js +34 -0
  24. package/es/molecule/bullet-point-menu-button/test/bullet-point-menu-button.js.map +1 -0
  25. package/es/molecule/bullet-point-menu-button/test/fixtures/default.js +11 -0
  26. package/es/molecule/bullet-point-menu-button/test/fixtures/default.js.map +1 -0
  27. package/es/molecule/bullet-point-menu-button/test/fixtures/multiple-buttons.js +13 -0
  28. package/es/molecule/bullet-point-menu-button/test/fixtures/multiple-buttons.js.map +1 -0
  29. package/es/molecule/bullet-point-menu-button/test/fixtures.js +15 -0
  30. package/es/molecule/bullet-point-menu-button/test/fixtures.js.map +1 -0
  31. package/es/molecule/vertical-tabs/index.js +8 -3
  32. package/es/molecule/vertical-tabs/index.js.map +1 -1
  33. package/es/molecule/vertical-tabs/test/fixtures/default.js +2 -1
  34. package/es/molecule/vertical-tabs/test/fixtures/default.js.map +1 -1
  35. package/es/molecule/vertical-tabs/test/fixtures/with-selected-item.js +2 -1
  36. package/es/molecule/vertical-tabs/test/fixtures/with-selected-item.js.map +1 -1
  37. package/es/organism/playlist-translation/index.js +63 -0
  38. package/es/organism/playlist-translation/index.js.map +1 -0
  39. package/es/organism/playlist-translation/style.css +45 -0
  40. package/es/organism/playlist-translation/test/fixtures/default.js +24 -0
  41. package/es/organism/playlist-translation/test/fixtures/default.js.map +1 -0
  42. package/es/organism/playlist-translation/test/fixtures/delete.js +18 -0
  43. package/es/organism/playlist-translation/test/fixtures/delete.js.map +1 -0
  44. package/es/template/teams-dashboard/index.js +4 -3
  45. package/es/template/teams-dashboard/index.js.map +1 -1
  46. package/lib/atom/button-link/index.js +7 -2
  47. package/lib/atom/button-link/index.js.map +1 -1
  48. package/lib/atom/button-link/style.css +4 -1
  49. package/lib/atom/button-link/test/button-link.js +37 -0
  50. package/lib/atom/button-link/test/button-link.js.map +1 -0
  51. package/lib/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js +18 -0
  52. package/lib/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js.map +1 -0
  53. package/lib/atom/button-link/test/fixtures.js +3 -0
  54. package/lib/atom/button-link/test/fixtures.js.map +1 -1
  55. package/lib/atom/button-menu/index.js +82 -0
  56. package/lib/atom/button-menu/index.js.map +1 -0
  57. package/lib/atom/button-menu/style.css +51 -0
  58. package/lib/atom/button-menu/test/fixtures/default.js +27 -0
  59. package/lib/atom/button-menu/test/fixtures/default.js.map +1 -0
  60. package/lib/atom/button-menu/test/fixtures/multiple-buttons.js +23 -0
  61. package/lib/atom/button-menu/test/fixtures/multiple-buttons.js.map +1 -0
  62. package/lib/atom/button-menu/test/fixtures.js +25 -0
  63. package/lib/atom/button-menu/test/fixtures.js.map +1 -0
  64. package/lib/atom/input-text/index.js.map +1 -1
  65. package/lib/molecule/bullet-point-menu-button/index.js +72 -0
  66. package/lib/molecule/bullet-point-menu-button/index.js.map +1 -0
  67. package/lib/molecule/bullet-point-menu-button/style.css +52 -0
  68. package/lib/molecule/bullet-point-menu-button/test/bullet-point-menu-button.js +46 -0
  69. package/lib/molecule/bullet-point-menu-button/test/bullet-point-menu-button.js.map +1 -0
  70. package/lib/molecule/bullet-point-menu-button/test/fixtures/default.js +18 -0
  71. package/lib/molecule/bullet-point-menu-button/test/fixtures/default.js.map +1 -0
  72. package/lib/molecule/bullet-point-menu-button/test/fixtures/multiple-buttons.js +25 -0
  73. package/lib/molecule/bullet-point-menu-button/test/fixtures/multiple-buttons.js.map +1 -0
  74. package/lib/molecule/bullet-point-menu-button/test/fixtures.js +25 -0
  75. package/lib/molecule/bullet-point-menu-button/test/fixtures.js.map +1 -0
  76. package/lib/molecule/vertical-tabs/index.js +8 -3
  77. package/lib/molecule/vertical-tabs/index.js.map +1 -1
  78. package/lib/molecule/vertical-tabs/test/fixtures/default.js +2 -1
  79. package/lib/molecule/vertical-tabs/test/fixtures/default.js.map +1 -1
  80. package/lib/molecule/vertical-tabs/test/fixtures/with-selected-item.js +2 -1
  81. package/lib/molecule/vertical-tabs/test/fixtures/with-selected-item.js.map +1 -1
  82. package/lib/organism/playlist-translation/index.js +78 -0
  83. package/lib/organism/playlist-translation/index.js.map +1 -0
  84. package/lib/organism/playlist-translation/style.css +45 -0
  85. package/lib/organism/playlist-translation/test/fixtures/default.js +35 -0
  86. package/lib/organism/playlist-translation/test/fixtures/default.js.map +1 -0
  87. package/lib/organism/playlist-translation/test/fixtures/delete.js +29 -0
  88. package/lib/organism/playlist-translation/test/fixtures/delete.js.map +1 -0
  89. package/lib/template/teams-dashboard/index.js +3 -1
  90. package/lib/template/teams-dashboard/index.js.map +1 -1
  91. package/package.json +3 -3
@@ -0,0 +1,11 @@
1
+ import { actionButtonProps, deleteButtonProps } from '../../../../atom/button-menu/test/fixtures/default';
2
+ export default {
3
+ props: {
4
+ buttonAriaLabel: 'aria button',
5
+ menuAriaLabel: 'aria menu',
6
+ buttons: [actionButtonProps, deleteButtonProps],
7
+ onClick: () => console.log('click on bullet point button - test in a bigger component to see the menu'),
8
+ componentKey: 'bullet-key'
9
+ }
10
+ };
11
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/molecule/bullet-point-menu-button/test/fixtures/default.js"],"names":["actionButtonProps","deleteButtonProps","props","buttonAriaLabel","menuAriaLabel","buttons","onClick","console","log","componentKey"],"mappings":"AAAA,SACEA,iBADF,EAEEC,iBAFF,QAGO,oDAHP;AAKA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,eAAe,EAAE,aADZ;AAELC,IAAAA,aAAa,EAAE,WAFV;AAGLC,IAAAA,OAAO,EAAE,CAACL,iBAAD,EAAoBC,iBAApB,CAHJ;AAILK,IAAAA,OAAO,EAAE,MACPC,OAAO,CAACC,GAAR,CAAY,2EAAZ,CALG;AAMLC,IAAAA,YAAY,EAAE;AANT;AADM,CAAf","sourcesContent":["import {\n actionButtonProps,\n deleteButtonProps\n} from '../../../../atom/button-menu/test/fixtures/default';\n\nexport default {\n props: {\n buttonAriaLabel: 'aria button',\n menuAriaLabel: 'aria menu',\n buttons: [actionButtonProps, deleteButtonProps],\n onClick: () =>\n console.log('click on bullet point button - test in a bigger component to see the menu'),\n componentKey: 'bullet-key'\n }\n};\n"],"file":"default.js"}
@@ -0,0 +1,13 @@
1
+ import defaultsDeep from 'lodash/fp/defaultsDeep';
2
+ import { actionButtonProps, deleteButtonProps } from '../../../../atom/button-menu/test/fixtures/default';
3
+ import { disabledButtonProps } from '../../../../atom/button-menu/test/fixtures/multiple-buttons';
4
+ import Default from './default';
5
+ const {
6
+ props
7
+ } = Default;
8
+ export default {
9
+ props: defaultsDeep(props, {
10
+ buttons: [actionButtonProps, disabledButtonProps, deleteButtonProps]
11
+ })
12
+ };
13
+ //# sourceMappingURL=multiple-buttons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/molecule/bullet-point-menu-button/test/fixtures/multiple-buttons.js"],"names":["defaultsDeep","actionButtonProps","deleteButtonProps","disabledButtonProps","Default","props","buttons"],"mappings":"AAAA,OAAOA,YAAP,MAAyB,wBAAzB;AACA,SACEC,iBADF,EAEEC,iBAFF,QAGO,oDAHP;AAIA,SAAQC,mBAAR,QAAkC,6DAAlC;AACA,OAAOC,OAAP,MAAoB,WAApB;AAEA,MAAM;AAACC,EAAAA;AAAD,IAAUD,OAAhB;AAEA,eAAe;AACbC,EAAAA,KAAK,EAAEL,YAAY,CAACK,KAAD,EAAQ;AACzBC,IAAAA,OAAO,EAAE,CAACL,iBAAD,EAAoBE,mBAApB,EAAyCD,iBAAzC;AADgB,GAAR;AADN,CAAf","sourcesContent":["import defaultsDeep from 'lodash/fp/defaultsDeep';\nimport {\n actionButtonProps,\n deleteButtonProps\n} from '../../../../atom/button-menu/test/fixtures/default';\nimport {disabledButtonProps} from '../../../../atom/button-menu/test/fixtures/multiple-buttons';\nimport Default from './default';\n\nconst {props} = Default;\n\nexport default {\n props: defaultsDeep(props, {\n buttons: [actionButtonProps, disabledButtonProps, deleteButtonProps]\n })\n};\n"],"file":"multiple-buttons.js"}
@@ -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 MoleculeBulletPointMenuButton from '..';
5
+ import fixtureDefault from './fixtures/default';
6
+ import fixtureMultipleButtons from './fixtures/multiple-buttons';
7
+ test('Molecule › MoleculeBulletPointMenuButton > should have valid propTypes', t => {
8
+ t.pass();
9
+ forEach(MoleculeBulletPointMenuButton.propTypes, (value, key) => {
10
+ t.not(value, undefined, `PropType for "Molecule.MoleculeBulletPointMenuButton.propTypes.${key}" may not be undefined. Did you mistype the propTypes definition?`);
11
+ });
12
+ });
13
+ test('Molecule › MoleculeBulletPointMenuButton › Default › should be rendered', renderComponentMacro, MoleculeBulletPointMenuButton, fixtureDefault);
14
+ test('Molecule › MoleculeBulletPointMenuButton › MultipleButtons › should be rendered', renderComponentMacro, MoleculeBulletPointMenuButton, fixtureMultipleButtons);
15
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/molecule/bullet-point-menu-button/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","MoleculeBulletPointMenuButton","fixtureDefault","fixtureMultipleButtons","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,6BAAP,MAA0C,IAA1C;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,sBAAP,MAAmC,6BAAnC;AAEAL,IAAI,CAAC,wEAAD,EAA2EM,CAAC,IAAI;AAClFA,EAAAA,CAAC,CAACC,IAAF;AACAN,EAAAA,OAAO,CAACE,6BAA6B,CAACK,SAA/B,EAA0C,CAACC,KAAD,EAAQC,GAAR,KAAgB;AAC/DJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,kEAAiEF,GAAI,mEAA9F;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAV,IAAI,CAAC,yEAAD,EAA4EE,oBAA5E,EAAkGC,6BAAlG,EAAiIC,cAAjI,CAAJ;AACAJ,IAAI,CAAC,iFAAD,EAAoFE,oBAApF,EAA0GC,6BAA1G,EAAyIE,sBAAzI,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport MoleculeBulletPointMenuButton from '..';\nimport fixtureDefault from './fixtures/default';\nimport fixtureMultipleButtons from './fixtures/multiple-buttons';\n\ntest('Molecule › MoleculeBulletPointMenuButton > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeBulletPointMenuButton.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Molecule.MoleculeBulletPointMenuButton.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Molecule › MoleculeBulletPointMenuButton › Default › should be rendered', renderComponentMacro, MoleculeBulletPointMenuButton, fixtureDefault);\ntest('Molecule › MoleculeBulletPointMenuButton › MultipleButtons › should be rendered', renderComponentMacro, MoleculeBulletPointMenuButton, fixtureMultipleButtons);\n"],"file":"fixtures.js"}
@@ -31,11 +31,14 @@ const buildTab = (tab, index) => {
31
31
 
32
32
  const VerticalTabs = props => {
33
33
  const {
34
- tabs
34
+ tabs,
35
+ className,
36
+ 'aria-label': ariaLabel
35
37
  } = props;
36
38
  const tabsList = tabs.map(buildTab);
37
39
  return /*#__PURE__*/React.createElement("ul", {
38
- className: style.wrapper
40
+ className: classnames([style.wrapper, className]),
41
+ title: ariaLabel
39
42
  }, tabsList);
40
43
  };
41
44
 
@@ -45,7 +48,9 @@ VerticalTabs.propTypes = process.env.NODE_ENV !== "production" ? {
45
48
  selected: PropTypes.bool,
46
49
  leftIcon: PropTypes.string,
47
50
  onClick: PropTypes.func
48
- }))
51
+ })),
52
+ className: PropTypes.string,
53
+ 'aria-label': PropTypes.string
49
54
  } : {};
50
55
  export default VerticalTabs;
51
56
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/vertical-tabs/index.js"],"names":["React","PropTypes","classnames","NovaSolidStatusCheckCircle2","CheckIcon","Link","style","LeftIcons","BlueValidatedCircle","buildTab","tab","index","title","selected","onClick","leftIcon","LeftIcon","VerticalTabs","props","tabs","tabsList","map","wrapper","propTypes","arrayOf","shape","children","bool","string","func"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAAQC,2BAA2B,IAAIC,SAAvC,QAAuD,0BAAvD;AAEA,OAAOC,IAAP,MAAiB,iBAAjB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,SAAS,GAAG;AAChBC,EAAAA,mBAAmB,EAAEJ;AADL,CAAlB;;AAIA,MAAMK,QAAQ,GAAG,CAACC,GAAD,EAAMC,KAAN,KAAgB;AAC/B,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA,OAAlB;AAA2BC,IAAAA;AAA3B,MAAuCL,GAA7C;AAEA,QAAMM,QAAQ,GAAGT,SAAS,CAACQ,QAAD,CAA1B;AACA,sBACE;AACE,iBAAY,gBAAe,WAAUH,KAAV,CAAiB,EAD9C;AAEE,IAAA,SAAS,EAAEV,UAAU,CAACI,KAAK,CAACI,GAAP,EAAYG,QAAQ,IAAIP,KAAK,CAACO,QAA9B,CAFvB;AAGE,IAAA,GAAG,EAAEF,KAHP;AAIE,IAAA,OAAO,EAAEG;AAJX,kBAME;AAAM,IAAA,SAAS,EAAER,KAAK,CAACM;AAAvB,KAA+BA,KAA/B,CANF,EAOGI,QAAQ,gBAAG,oBAAC,QAAD;AAAU,IAAA,SAAS,EAAEV,KAAK,CAACS;AAA3B,IAAH,GAA6C,IAPxD,CADF;AAWD,CAfD;;AAiBA,MAAME,YAAY,GAAGC,KAAK,IAAI;AAC5B,QAAM;AAACC,IAAAA;AAAD,MAASD,KAAf;AACA,QAAME,QAAQ,GAAGD,IAAI,CAACE,GAAL,CAASZ,QAAT,CAAjB;AAEA,sBAAO;AAAI,IAAA,SAAS,EAAEH,KAAK,CAACgB;AAArB,KAA+BF,QAA/B,CAAP;AACD,CALD;;AAOAH,YAAY,CAACM,SAAb,2CAAyB;AACvBJ,EAAAA,IAAI,EAAElB,SAAS,CAACuB,OAAV,CACJvB,SAAS,CAACwB,KAAV,CAAgB;AACdb,IAAAA,KAAK,EAAEP,IAAI,CAACkB,SAAL,CAAeG,QADR;AAEdb,IAAAA,QAAQ,EAAEZ,SAAS,CAAC0B,IAFN;AAGdZ,IAAAA,QAAQ,EAAEd,SAAS,CAAC2B,MAHN;AAIdd,IAAAA,OAAO,EAAEb,SAAS,CAAC4B;AAJL,GAAhB,CADI;AADiB,CAAzB;AAUA,eAAeZ,YAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaSolidStatusCheckCircle2 as CheckIcon} from '@coorpacademy/nova-icons';\nimport {snakeCase} from 'lodash/fp';\nimport Link from '../../atom/link';\nimport style from './style.css';\n\nconst LeftIcons = {\n BlueValidatedCircle: CheckIcon\n};\n\nconst buildTab = (tab, index) => {\n const {title, selected, onClick, leftIcon} = tab;\n\n const LeftIcon = LeftIcons[leftIcon];\n return (\n <li\n data-name={`vertical_tab_${snakeCase(title)}`}\n className={classnames(style.tab, selected && style.selected)}\n key={index}\n onClick={onClick}\n >\n <span className={style.title}>{title}</span>\n {LeftIcon ? <LeftIcon className={style.leftIcon} /> : null}\n </li>\n );\n};\n\nconst VerticalTabs = props => {\n const {tabs} = props;\n const tabsList = tabs.map(buildTab);\n\n return <ul className={style.wrapper}>{tabsList}</ul>;\n};\n\nVerticalTabs.propTypes = {\n tabs: PropTypes.arrayOf(\n PropTypes.shape({\n title: Link.propTypes.children,\n selected: PropTypes.bool,\n leftIcon: PropTypes.string,\n onClick: PropTypes.func\n })\n )\n};\nexport default VerticalTabs;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/vertical-tabs/index.js"],"names":["React","PropTypes","classnames","NovaSolidStatusCheckCircle2","CheckIcon","Link","style","LeftIcons","BlueValidatedCircle","buildTab","tab","index","title","selected","onClick","leftIcon","LeftIcon","VerticalTabs","props","tabs","className","ariaLabel","tabsList","map","wrapper","propTypes","arrayOf","shape","children","bool","string","func"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAAQC,2BAA2B,IAAIC,SAAvC,QAAuD,0BAAvD;AAEA,OAAOC,IAAP,MAAiB,iBAAjB;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,MAAMC,SAAS,GAAG;AAChBC,EAAAA,mBAAmB,EAAEJ;AADL,CAAlB;;AAIA,MAAMK,QAAQ,GAAG,CAACC,GAAD,EAAMC,KAAN,KAAgB;AAC/B,QAAM;AAACC,IAAAA,KAAD;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA,OAAlB;AAA2BC,IAAAA;AAA3B,MAAuCL,GAA7C;AAEA,QAAMM,QAAQ,GAAGT,SAAS,CAACQ,QAAD,CAA1B;AACA,sBACE;AACE,iBAAY,gBAAe,WAAUH,KAAV,CAAiB,EAD9C;AAEE,IAAA,SAAS,EAAEV,UAAU,CAACI,KAAK,CAACI,GAAP,EAAYG,QAAQ,IAAIP,KAAK,CAACO,QAA9B,CAFvB;AAGE,IAAA,GAAG,EAAEF,KAHP;AAIE,IAAA,OAAO,EAAEG;AAJX,kBAME;AAAM,IAAA,SAAS,EAAER,KAAK,CAACM;AAAvB,KAA+BA,KAA/B,CANF,EAOGI,QAAQ,gBAAG,oBAAC,QAAD;AAAU,IAAA,SAAS,EAAEV,KAAK,CAACS;AAA3B,IAAH,GAA6C,IAPxD,CADF;AAWD,CAfD;;AAiBA,MAAME,YAAY,GAAGC,KAAK,IAAI;AAC5B,QAAM;AAACC,IAAAA,IAAD;AAAOC,IAAAA,SAAP;AAAkB,kBAAcC;AAAhC,MAA6CH,KAAnD;AACA,QAAMI,QAAQ,GAAGH,IAAI,CAACI,GAAL,CAASd,QAAT,CAAjB;AAEA,sBACE;AAAI,IAAA,SAAS,EAAEP,UAAU,CAAC,CAACI,KAAK,CAACkB,OAAP,EAAgBJ,SAAhB,CAAD,CAAzB;AAAuD,IAAA,KAAK,EAAEC;AAA9D,KACGC,QADH,CADF;AAKD,CATD;;AAWAL,YAAY,CAACQ,SAAb,2CAAyB;AACvBN,EAAAA,IAAI,EAAElB,SAAS,CAACyB,OAAV,CACJzB,SAAS,CAAC0B,KAAV,CAAgB;AACdf,IAAAA,KAAK,EAAEP,IAAI,CAACoB,SAAL,CAAeG,QADR;AAEdf,IAAAA,QAAQ,EAAEZ,SAAS,CAAC4B,IAFN;AAGdd,IAAAA,QAAQ,EAAEd,SAAS,CAAC6B,MAHN;AAIdhB,IAAAA,OAAO,EAAEb,SAAS,CAAC8B;AAJL,GAAhB,CADI,CADiB;AASvBX,EAAAA,SAAS,EAAEnB,SAAS,CAAC6B,MATE;AAUvB,gBAAc7B,SAAS,CAAC6B;AAVD,CAAzB;AAYA,eAAeb,YAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaSolidStatusCheckCircle2 as CheckIcon} from '@coorpacademy/nova-icons';\nimport {snakeCase} from 'lodash/fp';\nimport Link from '../../atom/link';\nimport style from './style.css';\n\nconst LeftIcons = {\n BlueValidatedCircle: CheckIcon\n};\n\nconst buildTab = (tab, index) => {\n const {title, selected, onClick, leftIcon} = tab;\n\n const LeftIcon = LeftIcons[leftIcon];\n return (\n <li\n data-name={`vertical_tab_${snakeCase(title)}`}\n className={classnames(style.tab, selected && style.selected)}\n key={index}\n onClick={onClick}\n >\n <span className={style.title}>{title}</span>\n {LeftIcon ? <LeftIcon className={style.leftIcon} /> : null}\n </li>\n );\n};\n\nconst VerticalTabs = props => {\n const {tabs, className, 'aria-label': ariaLabel} = props;\n const tabsList = tabs.map(buildTab);\n\n return (\n <ul className={classnames([style.wrapper, className])} title={ariaLabel}>\n {tabsList}\n </ul>\n );\n};\n\nVerticalTabs.propTypes = {\n tabs: PropTypes.arrayOf(\n PropTypes.shape({\n title: Link.propTypes.children,\n selected: PropTypes.bool,\n leftIcon: PropTypes.string,\n onClick: PropTypes.func\n })\n ),\n className: PropTypes.string,\n 'aria-label': PropTypes.string\n};\nexport default VerticalTabs;\n"],"file":"index.js"}
@@ -35,7 +35,8 @@ export default {
35
35
  leftIcon: '',
36
36
  onClick: () => console.log('click'),
37
37
  selected: false
38
- }]
38
+ }],
39
+ 'aria-label': 'Languages list'
39
40
  }
40
41
  };
41
42
  //# sourceMappingURL=default.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/molecule/vertical-tabs/test/fixtures/default.js"],"names":["props","tabs","title","leftIcon","onClick","console","log","selected"],"mappings":"AAAA,eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,IAAI,EAAE,CACJ;AACEC,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,QAAQ,EAAE,qBAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KADI,EAOJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,qBAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAPI,EAaJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,qBAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAbI,EAmBJ;AACEL,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAnBI,EAyBJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAzBI,EA+BJ;AACEL,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KA/BI,EAqCJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KArCI;AADD;AADM,CAAf","sourcesContent":["export default {\n props: {\n tabs: [\n {\n title: '🇫🇷 French',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇪🇸 Spanish',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇮🇹 Italian',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n }\n ]\n }\n};\n"],"file":"default.js"}
1
+ {"version":3,"sources":["../../../../../src/molecule/vertical-tabs/test/fixtures/default.js"],"names":["props","tabs","title","leftIcon","onClick","console","log","selected"],"mappings":"AAAA,eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,IAAI,EAAE,CACJ;AACEC,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,QAAQ,EAAE,qBAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KADI,EAOJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,qBAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAPI,EAaJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,qBAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAbI,EAmBJ;AACEL,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAnBI,EAyBJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KAzBI,EA+BJ;AACEL,MAAAA,KAAK,EAAE,aADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KA/BI,EAqCJ;AACEL,MAAAA,KAAK,EAAE,cADT;AAEEC,MAAAA,QAAQ,EAAE,EAFZ;AAGEC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ,CAHjB;AAIEC,MAAAA,QAAQ,EAAE;AAJZ,KArCI,CADD;AA6CL,kBAAc;AA7CT;AADM,CAAf","sourcesContent":["export default {\n props: {\n tabs: [\n {\n title: '🇫🇷 French',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇪🇸 Spanish',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇮🇹 Italian',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n }\n ],\n 'aria-label': 'Languages list'\n }\n};\n"],"file":"default.js"}
@@ -75,7 +75,8 @@ export default {
75
75
  leftIcon: '',
76
76
  onClick: () => console.log('click'),
77
77
  selected: false
78
- }]
78
+ }],
79
+ 'aria-label': 'Languages list'
79
80
  }
80
81
  };
81
82
  //# sourceMappingURL=with-selected-item.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/molecule/vertical-tabs/test/fixtures/with-selected-item.js"],"names":["props","tabs","title","leftIcon","onClick","console","log","selected"],"mappings":"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","sourcesContent":["export default {\n props: {\n tabs: [\n {\n title: '🇫🇷 French',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: true\n },\n {\n title: '🇪🇸 Spanish',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇮🇹 Italian',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n }\n ]\n }\n};\n"],"file":"with-selected-item.js"}
1
+ {"version":3,"sources":["../../../../../src/molecule/vertical-tabs/test/fixtures/with-selected-item.js"],"names":["props","tabs","title","leftIcon","onClick","console","log","selected"],"mappings":"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","sourcesContent":["export default {\n props: {\n tabs: [\n {\n title: '🇫🇷 French',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: true\n },\n {\n title: '🇪🇸 Spanish',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇮🇹 Italian',\n leftIcon: 'BlueValidatedCircle',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇩🇪 German',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇷🇺 Russian',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇵🇱 Polish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n },\n {\n title: '🇹🇷 Turkish',\n leftIcon: '',\n onClick: () => console.log('click'),\n selected: false\n }\n ],\n 'aria-label': 'Languages list'\n }\n};\n"],"file":"with-selected-item.js"}
@@ -0,0 +1,63 @@
1
+ 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); }
2
+
3
+ import React from 'react';
4
+ import PropTypes from 'prop-types';
5
+ import classNames from 'classnames';
6
+ import VerticalLanguageMenu from '../../molecule/vertical-tabs';
7
+ import InputText from '../../atom/input-text';
8
+ import TextArea from '../../atom/input-textarea';
9
+ import Button from '../../atom/button-link';
10
+ import style from './style.css';
11
+
12
+ const PlayListTranslation = props => {
13
+ const {
14
+ languageTabs,
15
+ inputText,
16
+ textArea,
17
+ cta,
18
+ 'list-aria-label': listAriaLabel
19
+ } = props;
20
+ const ariaLabel = {
21
+ 'aria-label': listAriaLabel
22
+ };
23
+ return /*#__PURE__*/React.createElement("div", {
24
+ className: style.container
25
+ }, /*#__PURE__*/React.createElement(VerticalLanguageMenu, _extends({}, ariaLabel, {
26
+ className: style.menu,
27
+ tabs: languageTabs
28
+ })), /*#__PURE__*/React.createElement("div", {
29
+ className: style.horizontalSection
30
+ }, /*#__PURE__*/React.createElement("div", {
31
+ className: style.input
32
+ }, /*#__PURE__*/React.createElement(InputText, inputText)), /*#__PURE__*/React.createElement("div", {
33
+ className: style.input
34
+ }, /*#__PURE__*/React.createElement(TextArea, textArea)), /*#__PURE__*/React.createElement("div", {
35
+ className: classNames(style.button, cta.type === 'delete' && style.binButton)
36
+ }, /*#__PURE__*/React.createElement(Button, {
37
+ onClick: cta.handleOnclick,
38
+ type: cta.type === 'delete' ? 'text' : 'primary',
39
+ icon: {
40
+ type: cta.type === 'delete' ? 'bin' : 'add',
41
+ position: 'left'
42
+ },
43
+ label: cta.label
44
+ }))));
45
+ };
46
+
47
+ PlayListTranslation.propTypes = process.env.NODE_ENV !== "production" ? {
48
+ languageTabs: VerticalLanguageMenu.propTypes.tabs,
49
+ inputText: PropTypes.shape(_extends(_extends({}, InputText.propTypes), {}, {
50
+ theme: PropTypes.string
51
+ })),
52
+ textArea: PropTypes.shape(_extends(_extends({}, TextArea.propTypes), {}, {
53
+ theme: PropTypes.string
54
+ })),
55
+ cta: PropTypes.shape({
56
+ label: PropTypes.string,
57
+ handleOnclick: PropTypes.func,
58
+ type: PropTypes.oneOf(['delete', 'add'])
59
+ }),
60
+ 'list-aria-label': PropTypes.string
61
+ } : {};
62
+ export default PlayListTranslation;
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/organism/playlist-translation/index.js"],"names":["React","PropTypes","classNames","VerticalLanguageMenu","InputText","TextArea","Button","style","PlayListTranslation","props","languageTabs","inputText","textArea","cta","listAriaLabel","ariaLabel","container","menu","horizontalSection","input","button","type","binButton","handleOnclick","position","label","propTypes","tabs","shape","theme","string","func","oneOf"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,oBAAP,MAAiC,8BAAjC;AACA,OAAOC,SAAP,MAAsB,uBAAtB;AACA,OAAOC,QAAP,MAAqB,2BAArB;AACA,OAAOC,MAAP,MAAmB,wBAAnB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,mBAAmB,GAAGC,KAAK,IAAI;AACnC,QAAM;AAACC,IAAAA,YAAD;AAAeC,IAAAA,SAAf;AAA0BC,IAAAA,QAA1B;AAAoCC,IAAAA,GAApC;AAAyC,uBAAmBC;AAA5D,MAA6EL,KAAnF;AAEA,QAAMM,SAAS,GAAG;AAAC,kBAAcD;AAAf,GAAlB;AACA,sBACE;AAAK,IAAA,SAAS,EAAEP,KAAK,CAACS;AAAtB,kBACE,oBAAC,oBAAD,eAA0BD,SAA1B;AAAqC,IAAA,SAAS,EAAER,KAAK,CAACU,IAAtD;AAA4D,IAAA,IAAI,EAAEP;AAAlE,KADF,eAEE;AAAK,IAAA,SAAS,EAAEH,KAAK,CAACW;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEX,KAAK,CAACY;AAAtB,kBACE,oBAAC,SAAD,EAAeR,SAAf,CADF,CADF,eAIE;AAAK,IAAA,SAAS,EAAEJ,KAAK,CAACY;AAAtB,kBACE,oBAAC,QAAD,EAAcP,QAAd,CADF,CAJF,eAOE;AAAK,IAAA,SAAS,EAAEV,UAAU,CAACK,KAAK,CAACa,MAAP,EAAeP,GAAG,CAACQ,IAAJ,KAAa,QAAb,IAAyBd,KAAK,CAACe,SAA9C;AAA1B,kBACE,oBAAC,MAAD;AACE,IAAA,OAAO,EAAET,GAAG,CAACU,aADf;AAEE,IAAA,IAAI,EAAEV,GAAG,CAACQ,IAAJ,KAAa,QAAb,GAAwB,MAAxB,GAAiC,SAFzC;AAGE,IAAA,IAAI,EAAE;AAACA,MAAAA,IAAI,EAAER,GAAG,CAACQ,IAAJ,KAAa,QAAb,GAAwB,KAAxB,GAAgC,KAAvC;AAA8CG,MAAAA,QAAQ,EAAE;AAAxD,KAHR;AAIE,IAAA,KAAK,EAAEX,GAAG,CAACY;AAJb,IADF,CAPF,CAFF,CADF;AAqBD,CAzBD;;AA2BAjB,mBAAmB,CAACkB,SAApB,2CAAgC;AAC9BhB,EAAAA,YAAY,EAAEP,oBAAoB,CAACuB,SAArB,CAA+BC,IADf;AAE9BhB,EAAAA,SAAS,EAAEV,SAAS,CAAC2B,KAAV,uBAAoBxB,SAAS,CAACsB,SAA9B;AAAyCG,IAAAA,KAAK,EAAE5B,SAAS,CAAC6B;AAA1D,KAFmB;AAG9BlB,EAAAA,QAAQ,EAAEX,SAAS,CAAC2B,KAAV,uBAAoBvB,QAAQ,CAACqB,SAA7B;AAAwCG,IAAAA,KAAK,EAAE5B,SAAS,CAAC6B;AAAzD,KAHoB;AAI9BjB,EAAAA,GAAG,EAAEZ,SAAS,CAAC2B,KAAV,CAAgB;AACnBH,IAAAA,KAAK,EAAExB,SAAS,CAAC6B,MADE;AAEnBP,IAAAA,aAAa,EAAEtB,SAAS,CAAC8B,IAFN;AAGnBV,IAAAA,IAAI,EAAEpB,SAAS,CAAC+B,KAAV,CAAgB,CAAC,QAAD,EAAW,KAAX,CAAhB;AAHa,GAAhB,CAJyB;AAS9B,qBAAmB/B,SAAS,CAAC6B;AATC,CAAhC;AAYA,eAAetB,mBAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport VerticalLanguageMenu from '../../molecule/vertical-tabs';\nimport InputText from '../../atom/input-text';\nimport TextArea from '../../atom/input-textarea';\nimport Button from '../../atom/button-link';\nimport style from './style.css';\n\nconst PlayListTranslation = props => {\n const {languageTabs, inputText, textArea, cta, 'list-aria-label': listAriaLabel} = props;\n\n const ariaLabel = {'aria-label': listAriaLabel};\n return (\n <div className={style.container}>\n <VerticalLanguageMenu {...ariaLabel} className={style.menu} tabs={languageTabs} />\n <div className={style.horizontalSection}>\n <div className={style.input}>\n <InputText {...inputText} />\n </div>\n <div className={style.input}>\n <TextArea {...textArea} />\n </div>\n <div className={classNames(style.button, cta.type === 'delete' && style.binButton)}>\n <Button\n onClick={cta.handleOnclick}\n type={cta.type === 'delete' ? 'text' : 'primary'}\n icon={{type: cta.type === 'delete' ? 'bin' : 'add', position: 'left'}}\n label={cta.label}\n />\n </div>\n </div>\n </div>\n );\n};\n\nPlayListTranslation.propTypes = {\n languageTabs: VerticalLanguageMenu.propTypes.tabs,\n inputText: PropTypes.shape({...InputText.propTypes, theme: PropTypes.string}),\n textArea: PropTypes.shape({...TextArea.propTypes, theme: PropTypes.string}),\n cta: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n type: PropTypes.oneOf(['delete', 'add'])\n }),\n 'list-aria-label': PropTypes.string\n};\n\nexport default PlayListTranslation;\n"],"file":"index.js"}
@@ -0,0 +1,45 @@
1
+ @value colors: "../../variables/colors.css";
2
+ @value dark from colors;
3
+ @value brand from colors;
4
+ @value light from colors;
5
+ @value cm_grey_50 from colors;
6
+ @value cm_negative_100 from colors;
7
+ @value cm_negative_200 from colors;
8
+
9
+ .container {
10
+ display: flex;
11
+ background-color: cm_grey_50;
12
+ }
13
+
14
+ .menu {
15
+ background-color: cm_grey_50;
16
+ height: 360px;
17
+ width: 200px;
18
+ margin: 24px 8px 24px 24px;
19
+ }
20
+
21
+ .horizontalSection{
22
+ display: flex;
23
+ flex-direction: column;
24
+ padding: 24px 24px 24px 8px;
25
+ width: 100%;
26
+ align-items: end;
27
+ }
28
+
29
+ .input {
30
+ width: 100%;
31
+ margin-bottom: 16px;
32
+ }
33
+
34
+ .button {
35
+ width: 170px;
36
+ margin-top: 16px;
37
+ }
38
+
39
+ .binButton {
40
+ color: cm_negative_100;
41
+ }
42
+
43
+ .binButton:hover {
44
+ color: cm_negative_200;
45
+ }
@@ -0,0 +1,24 @@
1
+ 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); }
2
+
3
+ import vericalMenu from '../../../../molecule/vertical-tabs/test/fixtures/with-selected-item';
4
+ import inputText from '../../../../atom/input-text/test/fixtures/cm-default';
5
+ import textArea from '../../../../atom/input-textarea/test/fixtures/cm-default';
6
+ const languageTabs = vericalMenu.props.tabs;
7
+ export default {
8
+ props: {
9
+ languageTabs,
10
+ inputText: _extends(_extends({}, inputText.props), {}, {
11
+ theme: 'coorpmanager'
12
+ }),
13
+ textArea: _extends(_extends({}, textArea.props), {}, {
14
+ theme: 'coorpmanager'
15
+ }),
16
+ cta: {
17
+ label: 'Add translation',
18
+ type: 'add',
19
+ handleOnClick: () => {}
20
+ },
21
+ 'list-aria-label': 'Languages list'
22
+ }
23
+ };
24
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/playlist-translation/test/fixtures/default.js"],"names":["vericalMenu","inputText","textArea","languageTabs","props","tabs","theme","cta","label","type","handleOnClick"],"mappings":";;AAAA,OAAOA,WAAP,MAAwB,qEAAxB;AACA,OAAOC,SAAP,MAAsB,sDAAtB;AACA,OAAOC,QAAP,MAAqB,0DAArB;AAEA,MAAMC,YAAY,GAAGH,WAAW,CAACI,KAAZ,CAAkBC,IAAvC;AAEA,eAAe;AACbD,EAAAA,KAAK,EAAE;AACLD,IAAAA,YADK;AAELF,IAAAA,SAAS,wBAAMA,SAAS,CAACG,KAAhB;AAAuBE,MAAAA,KAAK,EAAE;AAA9B,MAFJ;AAGLJ,IAAAA,QAAQ,wBAAMA,QAAQ,CAACE,KAAf;AAAsBE,MAAAA,KAAK,EAAE;AAA7B,MAHH;AAILC,IAAAA,GAAG,EAAE;AACHC,MAAAA,KAAK,EAAE,iBADJ;AAEHC,MAAAA,IAAI,EAAE,KAFH;AAGHC,MAAAA,aAAa,EAAE,MAAM,CAAE;AAHpB,KAJA;AASL,uBAAmB;AATd;AADM,CAAf","sourcesContent":["import vericalMenu from '../../../../molecule/vertical-tabs/test/fixtures/with-selected-item';\nimport inputText from '../../../../atom/input-text/test/fixtures/cm-default';\nimport textArea from '../../../../atom/input-textarea/test/fixtures/cm-default';\n\nconst languageTabs = vericalMenu.props.tabs;\n\nexport default {\n props: {\n languageTabs,\n inputText: {...inputText.props, theme: 'coorpmanager'},\n textArea: {...textArea.props, theme: 'coorpmanager'},\n cta: {\n label: 'Add translation',\n type: 'add',\n handleOnClick: () => {}\n },\n 'list-aria-label': 'Languages list'\n }\n};\n"],"file":"default.js"}
@@ -0,0 +1,18 @@
1
+ import vericalMenu from '../../../../molecule/vertical-tabs/test/fixtures/with-selected-item';
2
+ import inputText from '../../../../atom/input-text/test/fixtures/cm-default';
3
+ import textArea from '../../../../atom/input-textarea/test/fixtures/cm-default';
4
+ const languageTabs = vericalMenu.props.tabs;
5
+ export default {
6
+ props: {
7
+ languageTabs,
8
+ inputText: inputText.props,
9
+ textArea: textArea.props,
10
+ cta: {
11
+ label: 'Delete translation',
12
+ type: 'delete',
13
+ handleOnClick: () => {}
14
+ },
15
+ 'list-aria-label': 'Languages list'
16
+ }
17
+ };
18
+ //# sourceMappingURL=delete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/playlist-translation/test/fixtures/delete.js"],"names":["vericalMenu","inputText","textArea","languageTabs","props","tabs","cta","label","type","handleOnClick"],"mappings":"AAAA,OAAOA,WAAP,MAAwB,qEAAxB;AACA,OAAOC,SAAP,MAAsB,sDAAtB;AACA,OAAOC,QAAP,MAAqB,0DAArB;AAEA,MAAMC,YAAY,GAAGH,WAAW,CAACI,KAAZ,CAAkBC,IAAvC;AAEA,eAAe;AACbD,EAAAA,KAAK,EAAE;AACLD,IAAAA,YADK;AAELF,IAAAA,SAAS,EAAEA,SAAS,CAACG,KAFhB;AAGLF,IAAAA,QAAQ,EAAEA,QAAQ,CAACE,KAHd;AAILE,IAAAA,GAAG,EAAE;AACHC,MAAAA,KAAK,EAAE,oBADJ;AAEHC,MAAAA,IAAI,EAAE,QAFH;AAGHC,MAAAA,aAAa,EAAE,MAAM,CAAE;AAHpB,KAJA;AASL,uBAAmB;AATd;AADM,CAAf","sourcesContent":["import vericalMenu from '../../../../molecule/vertical-tabs/test/fixtures/with-selected-item';\nimport inputText from '../../../../atom/input-text/test/fixtures/cm-default';\nimport textArea from '../../../../atom/input-textarea/test/fixtures/cm-default';\n\nconst languageTabs = vericalMenu.props.tabs;\n\nexport default {\n props: {\n languageTabs,\n inputText: inputText.props,\n textArea: textArea.props,\n cta: {\n label: 'Delete translation',\n type: 'delete',\n handleOnClick: () => {}\n },\n 'list-aria-label': 'Languages list'\n }\n};\n"],"file":"delete.js"}
@@ -2,7 +2,7 @@ import _map from "lodash/fp/map";
2
2
 
3
3
  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); }
4
4
 
5
- import React, { useState, useCallback } from 'react';
5
+ import React, { useState, useCallback, useMemo } from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import MoocHeader from '../../organism/mooc-header';
8
8
  import Cta from '../../atom/cta';
@@ -26,8 +26,9 @@ const TeamsDashboard = ({
26
26
  }));
27
27
  };
28
28
 
29
- const sectionsList = _map(buildSection, sections);
30
-
29
+ const sectionsList = useMemo(() => _map.convert({
30
+ cap: false
31
+ })(buildSection, sections), [buildSection, sections]);
31
32
  return isLoading ? /*#__PURE__*/React.createElement("div", {
32
33
  className: style.loader
33
34
  }, /*#__PURE__*/React.createElement(Loader, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/template/teams-dashboard/index.js"],"names":["React","useState","useCallback","PropTypes","MoocHeader","Cta","Loader","CardsList","style","TeamsDashboard","logo","platformLinks","sections","isLoading","isShadowed","setShadowed","onMenuOpen","onMenuClose","buildSection","section","index","title","sectionsList","loader","shadowedTeamsDashboard","teamsDashboard","sectionsWrapper","propTypes","arrayOf","shape","bool"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAeC,QAAf,EAAyBC,WAAzB,QAA2C,OAA3C;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,UAAP,MAAuB,4BAAvB;AACA,OAAOC,GAAP,MAAgB,gBAAhB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,OAAOC,SAAP,MAAsB,qCAAtB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,cAAc,GAAG,CAAC;AAACC,EAAAA,IAAD;AAAOC,EAAAA,aAAP;AAAsBC,EAAAA,QAAtB;AAAgCC,EAAAA;AAAhC,CAAD,KAAgD;AACrE,QAAM,CAACC,UAAD,EAAaC,WAAb,IAA4Bd,QAAQ,CAAC,KAAD,CAA1C;AACA,QAAMe,UAAU,GAAGd,WAAW,CAAC,MAAMa,WAAW,CAAC,IAAD,CAAlB,CAA9B;AACA,QAAME,WAAW,GAAGf,WAAW,CAAC,MAAMa,WAAW,CAAC,KAAD,CAAlB,CAA/B;;AAEA,QAAMG,YAAY,GAAG,CAACC,OAAD,EAAUC,KAAV,KAAoB;AACvC,wBAAO,oBAAC,SAAD,eAAeD,OAAf;AAAwB,MAAA,GAAG,EAAEA,OAAO,CAACE,KAAR,GAAgBD;AAA7C,OAAP;AACD,GAFD;;AAGA,QAAME,YAAY,GAAG,KAAIJ,YAAJ,EAAkBN,QAAlB,CAArB;;AACA,SAAOC,SAAS,gBACd;AAAK,IAAA,SAAS,EAAEL,KAAK,CAACe;AAAtB,kBACE,oBAAC,MAAD;AAAQ,iBAAU;AAAlB,IADF,CADc,gBAKd;AACE,iBAAU,iBADZ;AAEE,IAAA,SAAS,EAAET,UAAU,GAAGN,KAAK,CAACgB,sBAAT,GAAkChB,KAAK,CAACiB;AAF/D,kBAIE,oBAAC,UAAD;AACE,iBAAU,wBADZ;AAEE,IAAA,IAAI,EAAEf,IAFR;AAGE,IAAA,KAAK,EAAEC,aAHT;AAIE,IAAA,UAAU,EAAEK,UAJd;AAKE,IAAA,WAAW,EAAEC;AALf,IAJF,eAWE;AAAK,iBAAU,kBAAf;AAAkC,IAAA,SAAS,EAAEH,UAAU,GAAGN,KAAK,CAACkB,eAAT,GAA2B;AAAlF,KACGJ,YADH,CAXF,CALF;AAqBD,CA9BD;;AAgCAb,cAAc,CAACkB,SAAf,2CAA2B;AACzBjB,EAAAA,IAAI,EAAEN,UAAU,CAACuB,SAAX,CAAqBjB,IADF;AAEzBC,EAAAA,aAAa,EAAER,SAAS,CAACyB,OAAV,CAAkBzB,SAAS,CAAC0B,KAAV,CAAgBxB,GAAG,CAACsB,SAApB,CAAlB,CAFU;AAGzBf,EAAAA,QAAQ,EAAET,SAAS,CAACyB,OAAV,CAAkBzB,SAAS,CAAC0B,KAAV,CAAgBtB,SAAS,CAACoB,SAA1B,CAAlB,CAHe;AAIzBd,EAAAA,SAAS,EAAEV,SAAS,CAAC2B;AAJI,CAA3B;AAOA,eAAerB,cAAf","sourcesContent":["import React, {useState, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {map} from 'lodash/fp';\nimport MoocHeader from '../../organism/mooc-header';\nimport Cta from '../../atom/cta';\nimport Loader from '../../atom/loader';\nimport CardsList from '../../molecule/dashboard/cards-list';\nimport style from './style.css';\n\nconst TeamsDashboard = ({logo, platformLinks, sections, isLoading}) => {\n const [isShadowed, setShadowed] = useState(false);\n const onMenuOpen = useCallback(() => setShadowed(true));\n const onMenuClose = useCallback(() => setShadowed(false));\n\n const buildSection = (section, index) => {\n return <CardsList {...section} key={section.title + index} />;\n };\n const sectionsList = map(buildSection, sections);\n return isLoading ? (\n <div className={style.loader}>\n <Loader data-name=\"teams-dashboard-loader\" />\n </div>\n ) : (\n <div\n data-name=\"teams-dashboard\"\n className={isShadowed ? style.shadowedTeamsDashboard : style.teamsDashboard}\n >\n <MoocHeader\n data-name=\"teams-dashboard-header\"\n logo={logo}\n links={platformLinks}\n onMenuOpen={onMenuOpen}\n onMenuClose={onMenuClose}\n />\n <div data-name=\"sections-wrapper\" className={isShadowed ? style.sectionsWrapper : null}>\n {sectionsList}\n </div>\n </div>\n );\n};\n\nTeamsDashboard.propTypes = {\n logo: MoocHeader.propTypes.logo,\n platformLinks: PropTypes.arrayOf(PropTypes.shape(Cta.propTypes)),\n sections: PropTypes.arrayOf(PropTypes.shape(CardsList.propTypes)),\n isLoading: PropTypes.bool\n};\n\nexport default TeamsDashboard;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/template/teams-dashboard/index.js"],"names":["React","useState","useCallback","useMemo","PropTypes","MoocHeader","Cta","Loader","CardsList","style","TeamsDashboard","logo","platformLinks","sections","isLoading","isShadowed","setShadowed","onMenuOpen","onMenuClose","buildSection","section","index","title","sectionsList","convert","cap","loader","shadowedTeamsDashboard","teamsDashboard","sectionsWrapper","propTypes","arrayOf","shape","bool"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAeC,QAAf,EAAyBC,WAAzB,EAAsCC,OAAtC,QAAoD,OAApD;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,UAAP,MAAuB,4BAAvB;AACA,OAAOC,GAAP,MAAgB,gBAAhB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,OAAOC,SAAP,MAAsB,qCAAtB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,cAAc,GAAG,CAAC;AAACC,EAAAA,IAAD;AAAOC,EAAAA,aAAP;AAAsBC,EAAAA,QAAtB;AAAgCC,EAAAA;AAAhC,CAAD,KAAgD;AACrE,QAAM,CAACC,UAAD,EAAaC,WAAb,IAA4Bf,QAAQ,CAAC,KAAD,CAA1C;AACA,QAAMgB,UAAU,GAAGf,WAAW,CAAC,MAAMc,WAAW,CAAC,IAAD,CAAlB,CAA9B;AACA,QAAME,WAAW,GAAGhB,WAAW,CAAC,MAAMc,WAAW,CAAC,KAAD,CAAlB,CAA/B;;AAEA,QAAMG,YAAY,GAAG,CAACC,OAAD,EAAUC,KAAV,KAAoB;AACvC,wBAAO,oBAAC,SAAD,eAAeD,OAAf;AAAwB,MAAA,GAAG,EAAEA,OAAO,CAACE,KAAR,GAAgBD;AAA7C,OAAP;AACD,GAFD;;AAGA,QAAME,YAAY,GAAGpB,OAAO,CAAC,MAAM,KAAIqB,OAAJ,CAAY;AAACC,IAAAA,GAAG,EAAE;AAAN,GAAZ,EAA0BN,YAA1B,EAAwCN,QAAxC,CAAP,EAA0D,CACpFM,YADoF,EAEpFN,QAFoF,CAA1D,CAA5B;AAIA,SAAOC,SAAS,gBACd;AAAK,IAAA,SAAS,EAAEL,KAAK,CAACiB;AAAtB,kBACE,oBAAC,MAAD;AAAQ,iBAAU;AAAlB,IADF,CADc,gBAKd;AACE,iBAAU,iBADZ;AAEE,IAAA,SAAS,EAAEX,UAAU,GAAGN,KAAK,CAACkB,sBAAT,GAAkClB,KAAK,CAACmB;AAF/D,kBAIE,oBAAC,UAAD;AACE,iBAAU,wBADZ;AAEE,IAAA,IAAI,EAAEjB,IAFR;AAGE,IAAA,KAAK,EAAEC,aAHT;AAIE,IAAA,UAAU,EAAEK,UAJd;AAKE,IAAA,WAAW,EAAEC;AALf,IAJF,eAWE;AAAK,iBAAU,kBAAf;AAAkC,IAAA,SAAS,EAAEH,UAAU,GAAGN,KAAK,CAACoB,eAAT,GAA2B;AAAlF,KACGN,YADH,CAXF,CALF;AAqBD,CAjCD;;AAmCAb,cAAc,CAACoB,SAAf,2CAA2B;AACzBnB,EAAAA,IAAI,EAAEN,UAAU,CAACyB,SAAX,CAAqBnB,IADF;AAEzBC,EAAAA,aAAa,EAAER,SAAS,CAAC2B,OAAV,CAAkB3B,SAAS,CAAC4B,KAAV,CAAgB1B,GAAG,CAACwB,SAApB,CAAlB,CAFU;AAGzBjB,EAAAA,QAAQ,EAAET,SAAS,CAAC2B,OAAV,CAAkB3B,SAAS,CAAC4B,KAAV,CAAgBxB,SAAS,CAACsB,SAA1B,CAAlB,CAHe;AAIzBhB,EAAAA,SAAS,EAAEV,SAAS,CAAC6B;AAJI,CAA3B;AAOA,eAAevB,cAAf","sourcesContent":["import React, {useState, useCallback, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {map} from 'lodash/fp';\nimport MoocHeader from '../../organism/mooc-header';\nimport Cta from '../../atom/cta';\nimport Loader from '../../atom/loader';\nimport CardsList from '../../molecule/dashboard/cards-list';\nimport style from './style.css';\n\nconst TeamsDashboard = ({logo, platformLinks, sections, isLoading}) => {\n const [isShadowed, setShadowed] = useState(false);\n const onMenuOpen = useCallback(() => setShadowed(true));\n const onMenuClose = useCallback(() => setShadowed(false));\n\n const buildSection = (section, index) => {\n return <CardsList {...section} key={section.title + index} />;\n };\n const sectionsList = useMemo(() => map.convert({cap: false})(buildSection, sections), [\n buildSection,\n sections\n ]);\n return isLoading ? (\n <div className={style.loader}>\n <Loader data-name=\"teams-dashboard-loader\" />\n </div>\n ) : (\n <div\n data-name=\"teams-dashboard\"\n className={isShadowed ? style.shadowedTeamsDashboard : style.teamsDashboard}\n >\n <MoocHeader\n data-name=\"teams-dashboard-header\"\n logo={logo}\n links={platformLinks}\n onMenuOpen={onMenuOpen}\n onMenuClose={onMenuClose}\n />\n <div data-name=\"sections-wrapper\" className={isShadowed ? style.sectionsWrapper : null}>\n {sectionsList}\n </div>\n </div>\n );\n};\n\nTeamsDashboard.propTypes = {\n logo: MoocHeader.propTypes.logo,\n platformLinks: PropTypes.arrayOf(PropTypes.shape(Cta.propTypes)),\n sections: PropTypes.arrayOf(PropTypes.shape(CardsList.propTypes)),\n isLoading: PropTypes.bool\n};\n\nexport default TeamsDashboard;\n"],"file":"index.js"}
@@ -3,6 +3,8 @@
3
3
  exports.__esModule = true;
4
4
  exports.default = void 0;
5
5
 
6
+ var _keys2 = _interopRequireDefault(require("lodash/fp/keys"));
7
+
6
8
  var _getOr2 = _interopRequireDefault(require("lodash/fp/getOr"));
7
9
 
8
10
  var _react = _interopRequireWildcard(require("react"));
@@ -28,6 +30,8 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
28
30
  const ICONS = {
29
31
  add: _novaIcons.NovaSolidRemoveAddAddCircle1,
30
32
  analytics: _novaIcons.NovaCompositionCoorpacademyAnalytics,
33
+ bin: _novaIcons.NovaSolidContentEditionBin,
34
+ 'bullet-point': _novaIcons.NovaCompositionCoorpacademyBulletPoint,
31
35
  'chevron-left': _novaIcons.NovaCompositionNavigationArrowLeft,
32
36
  'chevron-right': _novaIcons.NovaCompositionNavigationArrowRight,
33
37
  close: _novaIcons.NovaCompositionCoorpacademyNext,
@@ -93,11 +97,12 @@ const ButtonLink = props => {
93
97
  }), contentView);
94
98
  }
95
99
 
96
- const handleOnClick = (0, _react.useMemo)(() => () => onClick(), [onClick]);
100
+ const handleOnClick = (0, _react.useCallback)(() => onClick(), [onClick]);
97
101
  return /*#__PURE__*/_react.default.createElement("button", {
98
102
  type: "button",
99
103
  "aria-label": ariaLabel || label,
100
104
  title: ariaLabel || label,
105
+ "data-name": dataName,
101
106
  className: styleButton,
102
107
  onClick: handleOnClick
103
108
  }, contentView);
@@ -110,7 +115,7 @@ ButtonLink.propTypes = process.env.NODE_ENV !== "production" ? {
110
115
  'data-name': _propTypes.default.string,
111
116
  icon: _propTypes.default.shape({
112
117
  position: _propTypes.default.oneOf(['right', 'left', 'center']),
113
- type: _propTypes.default.string
118
+ type: _propTypes.default.oneOf((0, _keys2.default)(ICONS))
114
119
  }),
115
120
  onClick: _propTypes.default.func,
116
121
  link: _propTypes.default.shape({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/button-link/index.js"],"names":["ICONS","add","AddIcon","analytics","AnalyticsIcon","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, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {getOr} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {\n NovaSolidRemoveAddAddCircle1 as AddIcon,\n NovaCompositionNavigationArrowLeft as ChevronLeftIcon,\n NovaCompositionNavigationArrowRight as ChevronRightIcon,\n NovaCompositionCoorpacademyEye as EyeIcon,\n NovaCompositionCoorpacademyAnalytics as AnalyticsIcon,\n NovaCompositionCoorpacademyNext as CloseIcon,\n NovaSolidComputersSdCard as SaveIcon,\n NovaSolidContentEditionPencilWrite as EditIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../link';\nimport style from './style.css';\n\nconst ICONS = {\n add: AddIcon,\n analytics: AnalyticsIcon,\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 = useMemo(() => () => onClick(), [onClick]);\n return (\n <button\n type=\"button\"\n aria-label={ariaLabel || label}\n title={ariaLabel || label}\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.string\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":["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"}
@@ -21,6 +21,9 @@
21
21
  align-items: center;
22
22
  cursor: pointer;
23
23
  border: none;
24
+ /* prevents text selection when dragging
25
+ the mouse over the button */
26
+ user-select: none;
24
27
  }
25
28
 
26
29
  .disabled {
@@ -90,4 +93,4 @@
90
93
  color: inherit;
91
94
  border-radius: 0px;
92
95
  height: auto;
93
- }
96
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _identity2 = _interopRequireDefault(require("lodash/fp/identity"));
4
+
5
+ var _browserEnv = _interopRequireDefault(require("browser-env"));
6
+
7
+ var _ava = _interopRequireDefault(require("ava"));
8
+
9
+ var _react = _interopRequireDefault(require("react"));
10
+
11
+ var _enzyme = require("enzyme");
12
+
13
+ var _enzymeAdapterReact = _interopRequireDefault(require("enzyme-adapter-react-16"));
14
+
15
+ var _ = _interopRequireDefault(require(".."));
16
+
17
+ var _buttonTertiaryIconBullet = _interopRequireDefault(require("./fixtures/button-tertiary-icon-bullet"));
18
+
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+
21
+ (0, _browserEnv.default)();
22
+ (0, _enzyme.configure)({
23
+ adapter: new _enzymeAdapterReact.default()
24
+ });
25
+ const translate = _identity2.default;
26
+ (0, _ava.default)('should launch onClick on click event', t => {
27
+ const wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react.default.createElement(_.default, _buttonTertiaryIconBullet.default.props), {
28
+ context: {
29
+ translate
30
+ }
31
+ });
32
+ const button = wrapper.find('[data-name="bullet-button"]');
33
+ t.true(button.exists());
34
+ button.first().simulate('click', {});
35
+ t.pass();
36
+ });
37
+ //# sourceMappingURL=button-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/atom/button-link/test/button-link.js"],"names":["adapter","Adapter","translate","t","wrapper","defaultFixture","props","context","button","find","true","exists","first","simulate","pass"],"mappings":";;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;AAEA;AACA,uBAAU;AAACA,EAAAA,OAAO,EAAE,IAAIC,2BAAJ;AAAV,CAAV;AACA,MAAMC,SAAS,qBAAf;AAEA,kBAAK,sCAAL,EAA6CC,CAAC,IAAI;AAChD,QAAMC,OAAO,GAAG,mCAAQ,6BAAC,SAAD,EAAgBC,kCAAeC,KAA/B,CAAR,EAAkD;AAChEC,IAAAA,OAAO,EAAE;AAACL,MAAAA;AAAD;AADuD,GAAlD,CAAhB;AAGA,QAAMM,MAAM,GAAGJ,OAAO,CAACK,IAAR,CAAa,6BAAb,CAAf;AACAN,EAAAA,CAAC,CAACO,IAAF,CAAOF,MAAM,CAACG,MAAP,EAAP;AACAH,EAAAA,MAAM,CAACI,KAAP,GAAeC,QAAf,CAAwB,OAAxB,EAAiC,EAAjC;AACAV,EAAAA,CAAC,CAACW,IAAF;AACD,CARD","sourcesContent":["import browserEnv from 'browser-env';\nimport test from 'ava';\nimport React from 'react';\nimport {shallow, configure} from 'enzyme';\nimport {identity} from 'lodash/fp';\nimport Adapter from 'enzyme-adapter-react-16';\nimport ButtonLink from '..';\nimport defaultFixture from './fixtures/button-tertiary-icon-bullet';\n\nbrowserEnv();\nconfigure({adapter: new Adapter()});\nconst translate = identity;\n\ntest('should launch onClick on click event', t => {\n const wrapper = shallow(<ButtonLink {...defaultFixture.props} />, {\n context: {translate}\n });\n const button = wrapper.find('[data-name=\"bullet-button\"]');\n t.true(button.exists());\n button.first().simulate('click', {});\n t.pass();\n});\n"],"file":"button-link.js"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+ var _default = {
6
+ props: {
7
+ type: 'tertiary',
8
+ 'aria-label': 'aria button',
9
+ 'data-name': 'bullet-button',
10
+ icon: {
11
+ position: 'center',
12
+ type: 'bullet-point'
13
+ },
14
+ onClick: () => console.log('click')
15
+ }
16
+ };
17
+ exports.default = _default;
18
+ //# sourceMappingURL=button-tertiary-icon-bullet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/atom/button-link/test/fixtures/button-tertiary-icon-bullet.js"],"names":["props","type","icon","position","onClick","console","log"],"mappings":";;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,IAAI,EAAE,UADD;AAEL,kBAAc,aAFT;AAGL,iBAAa,eAHR;AAILC,IAAAA,IAAI,EAAE;AACJC,MAAAA,QAAQ,EAAE,QADN;AAEJF,MAAAA,IAAI,EAAE;AAFF,KAJD;AAQLG,IAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ;AARV;AADM,C","sourcesContent":["export default {\n props: {\n type: 'tertiary',\n 'aria-label': 'aria button',\n 'data-name': 'bullet-button',\n icon: {\n position: 'center',\n type: 'bullet-point'\n },\n onClick: () => console.log('click')\n }\n};\n"],"file":"button-tertiary-icon-bullet.js"}
@@ -16,6 +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
+
19
21
  var _buttonTertiaryIconLeft = _interopRequireDefault(require("./fixtures/button-tertiary-icon-left"));
20
22
 
21
23
  var _iconButton = _interopRequireDefault(require("./fixtures/icon-button"));
@@ -42,6 +44,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
42
44
  (0, _ava.default)('Atom › AtomButtonLink › ButtonPrimaryIconLeft › should be rendered', _renderComponent.default, _.default, _buttonPrimaryIconLeft.default);
43
45
  (0, _ava.default)('Atom › AtomButtonLink › ButtonPrimaryNoIcon › should be rendered', _renderComponent.default, _.default, _buttonPrimaryNoIcon.default);
44
46
  (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);
45
48
  (0, _ava.default)('Atom › AtomButtonLink › ButtonTertiaryIconLeft › should be rendered', _renderComponent.default, _.default, _buttonTertiaryIconLeft.default);
46
49
  (0, _ava.default)('Atom › AtomButtonLink › IconButton › should be rendered', _renderComponent.default, _.default, _iconButton.default);
47
50
  (0, _ava.default)('Atom › AtomButtonLink › LinkPrimaryDisabledIconRight › should be rendered', _renderComponent.default, _.default, _linkPrimaryDisabledIconRight.default);