@coorpacademy/components 10.1.15 → 10.2.0

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 (101) hide show
  1. package/es/atom/button-link/index.js +1 -1
  2. package/es/atom/button-link/index.js.map +1 -1
  3. package/es/atom/button-link-icon-only/index.js +1 -1
  4. package/es/atom/button-link-icon-only/index.js.map +1 -1
  5. package/es/atom/button-menu/index.js +2 -4
  6. package/es/atom/button-menu/index.js.map +1 -1
  7. package/es/atom/chips/style.css +1 -2
  8. package/es/atom/image-upload/index.js +5 -3
  9. package/es/atom/image-upload/index.js.map +1 -1
  10. package/es/atom/input-color/style.css +1 -1
  11. package/es/hoc/transition/index.js +10 -3
  12. package/es/hoc/transition/index.js.map +1 -1
  13. package/es/molecule/banner/test/fixtures.js +8 -0
  14. package/es/molecule/banner/test/fixtures.js.map +1 -1
  15. package/es/molecule/brand-create-form/index.js +4 -1
  16. package/es/molecule/brand-create-form/index.js.map +1 -1
  17. package/es/molecule/card/index.js +1 -1
  18. package/es/molecule/card/index.js.map +1 -1
  19. package/es/molecule/cockpit-popin/test/fixtures.js +17 -0
  20. package/es/molecule/cockpit-popin/test/fixtures.js.map +1 -0
  21. package/es/molecule/select-multiple/index.js +1 -1
  22. package/es/molecule/select-multiple/index.js.map +1 -1
  23. package/es/molecule/select-multiple/test/fixtures.js +8 -0
  24. package/es/molecule/select-multiple/test/fixtures.js.map +1 -1
  25. package/es/molecule/share/index.js +3 -2
  26. package/es/molecule/share/index.js.map +1 -1
  27. package/es/molecule/wizard-summary/index.js +16 -10
  28. package/es/molecule/wizard-summary/index.js.map +1 -1
  29. package/es/organism/accordion/container/index.js +1 -1
  30. package/es/organism/accordion/container/index.js.map +1 -1
  31. package/es/organism/accordion/coorp-manager/index.js +1 -1
  32. package/es/organism/accordion/coorp-manager/index.js.map +1 -1
  33. package/es/organism/list-item/test/fixtures.js +19 -0
  34. package/es/organism/list-item/test/fixtures.js.map +1 -0
  35. package/es/organism/list-items/index.js +40 -0
  36. package/es/organism/list-items/index.js.map +1 -0
  37. package/es/organism/list-items/style.css +39 -0
  38. package/es/organism/list-items/test/fixtures/archived.js +24 -0
  39. package/es/organism/list-items/test/fixtures/archived.js.map +1 -0
  40. package/es/organism/list-items/test/fixtures/draft.js +24 -0
  41. package/es/organism/list-items/test/fixtures/draft.js.map +1 -0
  42. package/es/organism/list-items/test/fixtures/published.js +26 -0
  43. package/es/organism/list-items/test/fixtures/published.js.map +1 -0
  44. package/es/template/back-office/brand-update/index.js +13 -6
  45. package/es/template/back-office/brand-update/index.js.map +1 -1
  46. package/es/template/back-office/brand-update/style.css +57 -13
  47. package/es/template/back-office/brand-update/test/fixtures.js +0 -2
  48. package/es/template/back-office/brand-update/test/fixtures.js.map +1 -1
  49. package/es/template/teams-dashboard/index.js +4 -6
  50. package/es/template/teams-dashboard/index.js.map +1 -1
  51. package/lib/atom/button-link/index.js +1 -1
  52. package/lib/atom/button-link/index.js.map +1 -1
  53. package/lib/atom/button-link-icon-only/index.js +1 -1
  54. package/lib/atom/button-link-icon-only/index.js.map +1 -1
  55. package/lib/atom/button-menu/index.js +2 -4
  56. package/lib/atom/button-menu/index.js.map +1 -1
  57. package/lib/atom/chips/style.css +1 -2
  58. package/lib/atom/image-upload/index.js +5 -2
  59. package/lib/atom/image-upload/index.js.map +1 -1
  60. package/lib/atom/input-color/style.css +1 -1
  61. package/lib/hoc/transition/index.js +10 -3
  62. package/lib/hoc/transition/index.js.map +1 -1
  63. package/lib/molecule/banner/test/fixtures.js +12 -0
  64. package/lib/molecule/banner/test/fixtures.js.map +1 -1
  65. package/lib/molecule/brand-create-form/index.js +4 -1
  66. package/lib/molecule/brand-create-form/index.js.map +1 -1
  67. package/lib/molecule/card/index.js +1 -1
  68. package/lib/molecule/card/index.js.map +1 -1
  69. package/lib/molecule/cockpit-popin/test/fixtures.js +28 -0
  70. package/lib/molecule/cockpit-popin/test/fixtures.js.map +1 -0
  71. package/lib/molecule/select-multiple/index.js +1 -1
  72. package/lib/molecule/select-multiple/index.js.map +1 -1
  73. package/lib/molecule/select-multiple/test/fixtures.js +12 -0
  74. package/lib/molecule/select-multiple/test/fixtures.js.map +1 -1
  75. package/lib/molecule/share/index.js +2 -1
  76. package/lib/molecule/share/index.js.map +1 -1
  77. package/lib/molecule/wizard-summary/index.js +16 -10
  78. package/lib/molecule/wizard-summary/index.js.map +1 -1
  79. package/lib/organism/accordion/container/index.js +1 -1
  80. package/lib/organism/accordion/container/index.js.map +1 -1
  81. package/lib/organism/accordion/coorp-manager/index.js +1 -1
  82. package/lib/organism/accordion/coorp-manager/index.js.map +1 -1
  83. package/lib/organism/list-item/test/fixtures.js +31 -0
  84. package/lib/organism/list-item/test/fixtures.js.map +1 -0
  85. package/lib/organism/list-items/index.js +53 -0
  86. package/lib/organism/list-items/index.js.map +1 -0
  87. package/lib/organism/list-items/style.css +39 -0
  88. package/lib/organism/list-items/test/fixtures/archived.js +33 -0
  89. package/lib/organism/list-items/test/fixtures/archived.js.map +1 -0
  90. package/lib/organism/list-items/test/fixtures/draft.js +33 -0
  91. package/lib/organism/list-items/test/fixtures/draft.js.map +1 -0
  92. package/lib/organism/list-items/test/fixtures/published.js +36 -0
  93. package/lib/organism/list-items/test/fixtures/published.js.map +1 -0
  94. package/lib/template/back-office/brand-update/index.js +14 -6
  95. package/lib/template/back-office/brand-update/index.js.map +1 -1
  96. package/lib/template/back-office/brand-update/style.css +57 -13
  97. package/lib/template/back-office/brand-update/test/fixtures.js +0 -3
  98. package/lib/template/back-office/brand-update/test/fixtures.js.map +1 -1
  99. package/lib/template/teams-dashboard/index.js +4 -6
  100. package/lib/template/teams-dashboard/index.js.map +1 -1
  101. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/molecule/select-multiple/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","MoleculeSelectMultiple","fixtureCheckedCockpitTheme","fixtureCheckedSetupTheme","fixtureChecked","fixtureDefault","fixtureSetupThemeError","fixtureSetupTheme","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,sBAAP,MAAmC,IAAnC;AACA,OAAOC,0BAAP,MAAuC,kCAAvC;AACA,OAAOC,wBAAP,MAAqC,gCAArC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,sBAAP,MAAmC,8BAAnC;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AAEAT,IAAI,CAAC,iEAAD,EAAoEU,CAAC,IAAI;AAC3EA,EAAAA,CAAC,CAACC,IAAF;AACAV,EAAAA,OAAO,CAACE,sBAAsB,CAACS,SAAxB,EAAmC,CAACC,KAAD,EAAQC,GAAR,KAAgB;AACxDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,2DAA0DF,GAAI,mEAAvF;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAd,IAAI,CAAC,8EAAD,EAAiFE,oBAAjF,EAAuGC,sBAAvG,EAA+HC,0BAA/H,CAAJ;AACAJ,IAAI,CAAC,4EAAD,EAA+EE,oBAA/E,EAAqGC,sBAArG,EAA6HE,wBAA7H,CAAJ;AACAL,IAAI,CAAC,kEAAD,EAAqEE,oBAArE,EAA2FC,sBAA3F,EAAmHG,cAAnH,CAAJ;AACAN,IAAI,CAAC,kEAAD,EAAqEE,oBAArE,EAA2FC,sBAA3F,EAAmHI,cAAnH,CAAJ;AACAP,IAAI,CAAC,0EAAD,EAA6EE,oBAA7E,EAAmGC,sBAAnG,EAA2HK,sBAA3H,CAAJ;AACAR,IAAI,CAAC,qEAAD,EAAwEE,oBAAxE,EAA8FC,sBAA9F,EAAsHM,iBAAtH,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport MoleculeSelectMultiple from '..';\nimport fixtureCheckedCockpitTheme from './fixtures/checked-cockpit-theme';\nimport fixtureCheckedSetupTheme from './fixtures/checked-setup-theme';\nimport fixtureChecked from './fixtures/checked';\nimport fixtureDefault from './fixtures/default';\nimport fixtureSetupThemeError from './fixtures/setup-theme-error';\nimport fixtureSetupTheme from './fixtures/setup-theme';\n\ntest('Molecule › MoleculeSelectMultiple > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeSelectMultiple.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Molecule.MoleculeSelectMultiple.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Molecule › MoleculeSelectMultiple › CheckedCockpitTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedCockpitTheme);\ntest('Molecule › MoleculeSelectMultiple › CheckedSetupTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedSetupTheme);\ntest('Molecule › MoleculeSelectMultiple › Checked › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureChecked);\ntest('Molecule › MoleculeSelectMultiple › Default › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureDefault);\ntest('Molecule › MoleculeSelectMultiple › SetupThemeError › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureSetupThemeError);\ntest('Molecule › MoleculeSelectMultiple › SetupTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureSetupTheme);\n"],"file":"fixtures.js"}
1
+ {"version":3,"sources":["../../../../src/molecule/select-multiple/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","MoleculeSelectMultiple","fixtureCheckedCmThemeDisabled","fixtureCheckedCmThemeError","fixtureCheckedCmThemeMultiple","fixtureCheckedCmTheme","fixtureCheckedCockpitTheme","fixtureCheckedSetupTheme","fixtureChecked","fixtureDefault","fixtureSetupThemeError","fixtureSetupTheme","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,sBAAP,MAAmC,IAAnC;AACA,OAAOC,6BAAP,MAA0C,sCAA1C;AACA,OAAOC,0BAAP,MAAuC,mCAAvC;AACA,OAAOC,6BAAP,MAA0C,sCAA1C;AACA,OAAOC,qBAAP,MAAkC,6BAAlC;AACA,OAAOC,0BAAP,MAAuC,kCAAvC;AACA,OAAOC,wBAAP,MAAqC,gCAArC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,OAAOC,sBAAP,MAAmC,8BAAnC;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AAEAb,IAAI,CAAC,iEAAD,EAAoEc,CAAC,IAAI;AAC3EA,EAAAA,CAAC,CAACC,IAAF;AACAd,EAAAA,OAAO,CAACE,sBAAsB,CAACa,SAAxB,EAAmC,CAACC,KAAD,EAAQC,GAAR,KAAgB;AACxDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,2DAA0DF,GAAI,mEAAvF;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAlB,IAAI,CAAC,iFAAD,EAAoFE,oBAApF,EAA0GC,sBAA1G,EAAkIC,6BAAlI,CAAJ;AACAJ,IAAI,CAAC,8EAAD,EAAiFE,oBAAjF,EAAuGC,sBAAvG,EAA+HE,0BAA/H,CAAJ;AACAL,IAAI,CAAC,iFAAD,EAAoFE,oBAApF,EAA0GC,sBAA1G,EAAkIG,6BAAlI,CAAJ;AACAN,IAAI,CAAC,yEAAD,EAA4EE,oBAA5E,EAAkGC,sBAAlG,EAA0HI,qBAA1H,CAAJ;AACAP,IAAI,CAAC,8EAAD,EAAiFE,oBAAjF,EAAuGC,sBAAvG,EAA+HK,0BAA/H,CAAJ;AACAR,IAAI,CAAC,4EAAD,EAA+EE,oBAA/E,EAAqGC,sBAArG,EAA6HM,wBAA7H,CAAJ;AACAT,IAAI,CAAC,kEAAD,EAAqEE,oBAArE,EAA2FC,sBAA3F,EAAmHO,cAAnH,CAAJ;AACAV,IAAI,CAAC,kEAAD,EAAqEE,oBAArE,EAA2FC,sBAA3F,EAAmHQ,cAAnH,CAAJ;AACAX,IAAI,CAAC,0EAAD,EAA6EE,oBAA7E,EAAmGC,sBAAnG,EAA2HS,sBAA3H,CAAJ;AACAZ,IAAI,CAAC,qEAAD,EAAwEE,oBAAxE,EAA8FC,sBAA9F,EAAsHU,iBAAtH,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport MoleculeSelectMultiple from '..';\nimport fixtureCheckedCmThemeDisabled from './fixtures/checked-cm-theme-disabled';\nimport fixtureCheckedCmThemeError from './fixtures/checked-cm-theme-error';\nimport fixtureCheckedCmThemeMultiple from './fixtures/checked-cm-theme-multiple';\nimport fixtureCheckedCmTheme from './fixtures/checked-cm-theme';\nimport fixtureCheckedCockpitTheme from './fixtures/checked-cockpit-theme';\nimport fixtureCheckedSetupTheme from './fixtures/checked-setup-theme';\nimport fixtureChecked from './fixtures/checked';\nimport fixtureDefault from './fixtures/default';\nimport fixtureSetupThemeError from './fixtures/setup-theme-error';\nimport fixtureSetupTheme from './fixtures/setup-theme';\n\ntest('Molecule › MoleculeSelectMultiple > should have valid propTypes', t => {\n t.pass();\n forEach(MoleculeSelectMultiple.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Molecule.MoleculeSelectMultiple.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Molecule › MoleculeSelectMultiple › CheckedCmThemeDisabled › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedCmThemeDisabled);\ntest('Molecule › MoleculeSelectMultiple › CheckedCmThemeError › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedCmThemeError);\ntest('Molecule › MoleculeSelectMultiple › CheckedCmThemeMultiple › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedCmThemeMultiple);\ntest('Molecule › MoleculeSelectMultiple › CheckedCmTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedCmTheme);\ntest('Molecule › MoleculeSelectMultiple › CheckedCockpitTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedCockpitTheme);\ntest('Molecule › MoleculeSelectMultiple › CheckedSetupTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureCheckedSetupTheme);\ntest('Molecule › MoleculeSelectMultiple › Checked › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureChecked);\ntest('Molecule › MoleculeSelectMultiple › Default › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureDefault);\ntest('Molecule › MoleculeSelectMultiple › SetupThemeError › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureSetupThemeError);\ntest('Molecule › MoleculeSelectMultiple › SetupTheme › should be rendered', renderComponentMacro, MoleculeSelectMultiple, fixtureSetupTheme);\n"],"file":"fixtures.js"}
@@ -1,4 +1,4 @@
1
- import React, { useState, useCallback, useContext, useEffect } from 'react';
1
+ import React, { useState, useMemo, useCallback, useContext, useEffect } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import classnames from 'classnames';
4
4
  import { NovaCompositionCoorpacademyCheck as CheckIcon, NovaCompositionCoorpacademyShare as ShareIcon, NovaCompositionCoorpacademyAttention as AttentionIcon } from '@coorpacademy/nova-icons';
@@ -53,8 +53,9 @@ export const ShareStatusProvider = ({
53
53
 
54
54
  return () => clearTimeout(timeoutId);
55
55
  }, [status]);
56
+ const value = useMemo(() => [status, setStatus], [status]);
56
57
  return /*#__PURE__*/React.createElement(StatusContext.Provider, {
57
- value: [status, setStatus]
58
+ value: value
58
59
  }, children);
59
60
  };
60
61
  export const ShareFeedback = ({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/share/index.js"],"names":["React","useState","useCallback","useContext","useEffect","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionCoorpacademyShare","ShareIcon","NovaCompositionCoorpacademyAttention","AttentionIcon","Link","styles","SHARE_STATUS","IDLE","ERROR","SUCCESS","copyTextViaExecCommand","text","textarea","document","createElement","style","border","padding","visibility","position","setAttribute","value","body","appendChild","status","select","setSelectionRange","length","execCommand","error","removeChild","StatusContext","createContext","ShareStatusProvider","children","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","ShareFeedback","successWording","errorWording","feedback","errorFeedback","checkIcon","Share","wording","onClick","browserSupportsClipboardWriteText","navigator","clipboard","writeText","copyStatus","container","cta","wrapper","shareIcon","propTypes","node","string"],"mappings":"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","sourcesContent":["import React, {useState, useCallback, useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionCoorpacademyShare as ShareIcon,\n NovaCompositionCoorpacademyAttention as AttentionIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst SHARE_STATUS = {\n IDLE: 'IDLE',\n ERROR: 'ERROR',\n SUCCESS: 'SUCCESS'\n};\n\nconst copyTextViaExecCommand = text => {\n const textarea = document.createElement('textarea');\n\n textarea.style.border = '0';\n textarea.style.padding = '0';\n textarea.style.visibility = 'hidden';\n textarea.style.position = 'absolute';\n textarea.setAttribute('readonly', '');\n textarea.value = text;\n\n // Element.append is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-append\n document.body.appendChild(textarea);\n let status = SHARE_STATUS.IDLE;\n\n try {\n textarea.select();\n textarea.setSelectionRange(0, textarea.value.length);\n document.execCommand('copy');\n status = SHARE_STATUS.SUCCESS;\n } catch (error) {\n status = SHARE_STATUS.ERROR;\n }\n\n // Element.remove is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-remove\n document.body.removeChild(textarea);\n\n return status;\n};\n\nconst StatusContext = React.createContext(SHARE_STATUS.IDLE);\n\nexport const ShareStatusProvider = ({children}) => {\n const [status, setStatus] = useState(SHARE_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== SHARE_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(SHARE_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n return <StatusContext.Provider value={[status, setStatus]}>{children}</StatusContext.Provider>;\n};\n\nexport const ShareFeedback = ({successWording, errorWording}) => {\n const [status] = useContext(StatusContext);\n if (status === SHARE_STATUS.IDLE) return null;\n\n return (\n <div\n className={classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)}\n >\n {status === SHARE_STATUS.SUCCESS ? (\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n ) : (\n <AttentionIcon className={styles.checkIcon} width={13} height={13} />\n )}\n <p>{status === SHARE_STATUS.SUCCESS ? successWording : errorWording}</p>\n </div>\n );\n};\n\nconst Share = ({style, text, wording}) => {\n const [, setStatus] = useContext(StatusContext);\n const onClick = useCallback(async () => {\n const browserSupportsClipboardWriteText =\n 'clipboard' in navigator && 'writeText' in navigator.clipboard;\n if (browserSupportsClipboardWriteText) {\n try {\n await navigator.clipboard.writeText(text);\n setStatus(SHARE_STATUS.SUCCESS);\n } catch (error) {\n setStatus(SHARE_STATUS.ERROR);\n }\n return;\n } else {\n const copyStatus = copyTextViaExecCommand(text);\n setStatus(copyStatus);\n }\n return;\n }, [setStatus]);\n\n return (\n <div className={(styles.container, style)}>\n <Link onClick={onClick} className={styles.cta} data-name={'share-button'}>\n <div className={styles.wrapper}>\n <ShareIcon className={styles.shareIcon} width={18} height={18} />\n <p>{wording}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nShareStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nShareFeedback.propTypes = {\n successWording: PropTypes.string,\n errorWording: PropTypes.string\n};\n\nShare.propTypes = {\n style: PropTypes.string,\n text: PropTypes.string,\n wording: PropTypes.string\n};\n\nexport default Share;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/share/index.js"],"names":["React","useState","useMemo","useCallback","useContext","useEffect","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionCoorpacademyShare","ShareIcon","NovaCompositionCoorpacademyAttention","AttentionIcon","Link","styles","SHARE_STATUS","IDLE","ERROR","SUCCESS","copyTextViaExecCommand","text","textarea","document","createElement","style","border","padding","visibility","position","setAttribute","value","body","appendChild","status","select","setSelectionRange","length","execCommand","error","removeChild","StatusContext","createContext","ShareStatusProvider","children","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","ShareFeedback","successWording","errorWording","feedback","errorFeedback","checkIcon","Share","wording","onClick","browserSupportsClipboardWriteText","navigator","clipboard","writeText","copyStatus","container","cta","wrapper","shareIcon","propTypes","node","string"],"mappings":"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","sourcesContent":["import React, {useState, useMemo, useCallback, useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionCoorpacademyShare as ShareIcon,\n NovaCompositionCoorpacademyAttention as AttentionIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst SHARE_STATUS = {\n IDLE: 'IDLE',\n ERROR: 'ERROR',\n SUCCESS: 'SUCCESS'\n};\n\nconst copyTextViaExecCommand = text => {\n const textarea = document.createElement('textarea');\n\n textarea.style.border = '0';\n textarea.style.padding = '0';\n textarea.style.visibility = 'hidden';\n textarea.style.position = 'absolute';\n textarea.setAttribute('readonly', '');\n textarea.value = text;\n\n // Element.append is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-append\n document.body.appendChild(textarea);\n let status = SHARE_STATUS.IDLE;\n\n try {\n textarea.select();\n textarea.setSelectionRange(0, textarea.value.length);\n document.execCommand('copy');\n status = SHARE_STATUS.SUCCESS;\n } catch (error) {\n status = SHARE_STATUS.ERROR;\n }\n\n // Element.remove is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-remove\n document.body.removeChild(textarea);\n\n return status;\n};\n\nconst StatusContext = React.createContext(SHARE_STATUS.IDLE);\n\nexport const ShareStatusProvider = ({children}) => {\n const [status, setStatus] = useState(SHARE_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== SHARE_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(SHARE_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n\n const value = useMemo(() => [status, setStatus], [status]);\n\n return <StatusContext.Provider value={value}>{children}</StatusContext.Provider>;\n};\n\nexport const ShareFeedback = ({successWording, errorWording}) => {\n const [status] = useContext(StatusContext);\n if (status === SHARE_STATUS.IDLE) return null;\n\n return (\n <div\n className={classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)}\n >\n {status === SHARE_STATUS.SUCCESS ? (\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n ) : (\n <AttentionIcon className={styles.checkIcon} width={13} height={13} />\n )}\n <p>{status === SHARE_STATUS.SUCCESS ? successWording : errorWording}</p>\n </div>\n );\n};\n\nconst Share = ({style, text, wording}) => {\n const [, setStatus] = useContext(StatusContext);\n const onClick = useCallback(async () => {\n const browserSupportsClipboardWriteText =\n 'clipboard' in navigator && 'writeText' in navigator.clipboard;\n if (browserSupportsClipboardWriteText) {\n try {\n await navigator.clipboard.writeText(text);\n setStatus(SHARE_STATUS.SUCCESS);\n } catch (error) {\n setStatus(SHARE_STATUS.ERROR);\n }\n return;\n } else {\n const copyStatus = copyTextViaExecCommand(text);\n setStatus(copyStatus);\n }\n return;\n }, [setStatus]);\n\n return (\n <div className={(styles.container, style)}>\n <Link onClick={onClick} className={styles.cta} data-name={'share-button'}>\n <div className={styles.wrapper}>\n <ShareIcon className={styles.shareIcon} width={18} height={18} />\n <p>{wording}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nShareStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nShareFeedback.propTypes = {\n successWording: PropTypes.string,\n errorWording: PropTypes.string\n};\n\nShare.propTypes = {\n style: PropTypes.string,\n text: PropTypes.string,\n wording: PropTypes.string\n};\n\nexport default Share;\n"],"file":"index.js"}
@@ -103,8 +103,9 @@ const buildSections = sections => {
103
103
  });
104
104
  };
105
105
 
106
- const buildAction = action => {
107
- if (!action) return null;
106
+ const BuildAction = ({
107
+ action
108
+ }) => {
108
109
  const {
109
110
  onClick,
110
111
  text,
@@ -112,6 +113,7 @@ const buildAction = action => {
112
113
  'aria-label': ariaLabel
113
114
  } = action;
114
115
  const handleClick = useMemo(() => () => onClick(), [onClick]);
116
+ if (!action) return null;
115
117
  const buttonProps = {
116
118
  type: 'text',
117
119
  label: text,
@@ -135,7 +137,6 @@ const WizardSummary = props => {
135
137
  action
136
138
  } = props;
137
139
  const sectionsView = buildSections(sections);
138
- const actionView = buildAction(action);
139
140
  const idSwitch = 'open-summary-wizard';
140
141
  return /*#__PURE__*/React.createElement("div", {
141
142
  className: style.container
@@ -161,9 +162,19 @@ const WizardSummary = props => {
161
162
  className: style.summarySections
162
163
  }, sectionsView)), /*#__PURE__*/React.createElement("div", {
163
164
  className: style.actionZone
164
- }, actionView));
165
+ }, /*#__PURE__*/React.createElement(BuildAction, {
166
+ action: action
167
+ })));
165
168
  };
166
169
 
170
+ BuildAction.propTypes = process.env.NODE_ENV !== "production" ? {
171
+ action: PropTypes.shape({
172
+ icon: PropTypes.string,
173
+ text: PropTypes.string,
174
+ onClick: PropTypes.func,
175
+ 'aria-label': PropTypes.string
176
+ })
177
+ } : {};
167
178
  WizardSummary.propTypes = process.env.NODE_ENV !== "production" ? {
168
179
  title: PropTypes.string,
169
180
  sections: PropTypes.arrayOf(PropTypes.shape({
@@ -186,12 +197,7 @@ WizardSummary.propTypes = process.env.NODE_ENV !== "production" ? {
186
197
  })])),
187
198
  counterText: PropTypes.string
188
199
  })),
189
- action: PropTypes.shape({
190
- icon: PropTypes.string,
191
- text: PropTypes.string,
192
- onClick: PropTypes.func,
193
- 'aria-label': PropTypes.string
194
- })
200
+ action: BuildAction.propTypes.action
195
201
  } : {};
196
202
  export default WizardSummary;
197
203
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/wizard-summary/index.js"],"names":["React","useMemo","PropTypes","classnames","NovaCompositionNavigationArrowDown","ArrowDownIcon","ContentBadge","ButtonLink","style","buildItemsOfSection","items","map","item","index","type","title","value","category","label","author","unsaved","contentWrapper","contentCounter","contentItem","content","contentTitle","__html","text","valueSimpleText","buildSectionHeader","section","counterText","sectionHeader","buildSections","sections","itemsView","sectionWrapper","buildAction","action","onClick","icon","ariaLabel","handleClick","buttonProps","position","button","WizardSummary","props","sectionsView","actionView","idSwitch","container","desktopSummaryTitle","checkbox","summary","tabletSummaryHeader","tabletSummaryTitle","tabletSummaryIcon","summarySections","actionZone","propTypes","string","arrayOf","shape","oneOfType","bool","oneOf","func"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionNavigationArrowDown as ArrowDownIcon} from '@coorpacademy/nova-icons';\nimport ContentBadge from '../../atom/content-badge';\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst buildItemsOfSection = items => {\n return items.map((item, index) => {\n const {type} = item;\n switch (type) {\n case 'mainElement':\n return (\n <li key={`${item.title}-${index}`}>\n <span className={style.title}>{item.title}</span>\n <span className={style.value}>{item.value}</span>\n </li>\n );\n case 'content': {\n const {category, label, title, author, unsaved = false} = item;\n return (\n <li className={style.contentWrapper} key={`${title}-${index}`}>\n <span className={style.contentCounter}>{index + 1}</span>\n <div className={style.contentItem}>\n <div className={style.content}>\n <ContentBadge category={category} label={label} />\n <span\n className={classnames(style.contentTitle, unsaved && style.unsaved)}\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n {author ? <span className={style.author}>{author}</span> : null}\n </div>\n </li>\n );\n }\n case 'text':\n default: {\n const {text, unsaved = false} = item;\n return (\n <li key={`${item.text}-${index}`}>\n <span className={classnames(style.valueSimpleText, unsaved && style.unsaved)}>\n {text}\n </span>\n </li>\n );\n }\n }\n });\n};\n\nconst buildSectionHeader = section => {\n const {title, counterText} = section;\n if (!title) {\n return null;\n }\n return (\n <div className={style.sectionHeader}>\n <span className={style.title}>{title}</span>\n {counterText ? <span className={style.counterText}>{counterText}</span> : null}\n </div>\n );\n};\n\nconst buildSections = sections => {\n return sections.map((section, index) => {\n const sectionHeader = buildSectionHeader(section);\n const itemsView = buildItemsOfSection(section.items);\n return (\n <div key={`summary-section-${index}`} data-step={index} className={style.sectionWrapper}>\n {sectionHeader}\n <ul>{itemsView}</ul>\n </div>\n );\n });\n};\n\nconst buildAction = action => {\n if (!action) return null;\n\n const {onClick, text, icon, 'aria-label': ariaLabel} = action;\n const handleClick = useMemo(() => () => onClick(), [onClick]);\n const buttonProps = {\n type: 'text',\n label: text,\n 'aria-label': ariaLabel,\n 'data-name': `${icon}-button`,\n onClick: handleClick,\n icon: {\n position: 'left',\n type: icon\n }\n };\n\n return (\n <div className={style.button}>\n <ButtonLink {...buttonProps} />\n </div>\n );\n};\n\nconst WizardSummary = props => {\n const {title, sections, action} = props;\n const sectionsView = buildSections(sections);\n const actionView = buildAction(action);\n const idSwitch = 'open-summary-wizard';\n\n return (\n <div className={style.container}>\n <span className={style.desktopSummaryTitle}>{title}</span>\n <input\n type=\"checkbox\"\n id={idSwitch}\n name=\"toogle\"\n title={idSwitch}\n className={style.checkbox}\n />\n <div className={style.summary}>\n <div className={style.tabletSummaryHeader}>\n <label htmlFor={idSwitch}>\n <span className={style.tabletSummaryTitle}>{title}</span>\n <ArrowDownIcon className={style.tabletSummaryIcon} />\n </label>\n </div>\n <div className={style.summarySections}>{sectionsView}</div>\n </div>\n <div className={style.actionZone}>{actionView}</div>\n </div>\n );\n};\n\nWizardSummary.propTypes = {\n title: PropTypes.string,\n sections: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n items: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape({\n type: PropTypes.string,\n title: PropTypes.string,\n value: PropTypes.string\n }),\n PropTypes.shape({\n type: PropTypes.string,\n text: PropTypes.string,\n unsaved: PropTypes.bool\n }),\n PropTypes.shape({\n type: PropTypes.string,\n category: PropTypes.oneOf([\n 'base',\n 'advanced',\n 'coach',\n 'chapter',\n 'scorm',\n 'video',\n 'article',\n 'podcast'\n ]),\n title: PropTypes.string,\n label: PropTypes.string,\n author: PropTypes.string,\n unsaved: PropTypes.bool\n })\n ])\n ),\n counterText: PropTypes.string\n })\n ),\n action: PropTypes.shape({\n icon: PropTypes.string,\n text: PropTypes.string,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n};\n\nexport default WizardSummary;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/wizard-summary/index.js"],"names":["React","useMemo","PropTypes","classnames","NovaCompositionNavigationArrowDown","ArrowDownIcon","ContentBadge","ButtonLink","style","buildItemsOfSection","items","map","item","index","type","title","value","category","label","author","unsaved","contentWrapper","contentCounter","contentItem","content","contentTitle","__html","text","valueSimpleText","buildSectionHeader","section","counterText","sectionHeader","buildSections","sections","itemsView","sectionWrapper","BuildAction","action","onClick","icon","ariaLabel","handleClick","buttonProps","position","button","WizardSummary","props","sectionsView","idSwitch","container","desktopSummaryTitle","checkbox","summary","tabletSummaryHeader","tabletSummaryTitle","tabletSummaryIcon","summarySections","actionZone","propTypes","shape","string","func","arrayOf","oneOfType","bool","oneOf"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionNavigationArrowDown as ArrowDownIcon} from '@coorpacademy/nova-icons';\nimport ContentBadge from '../../atom/content-badge';\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst buildItemsOfSection = items => {\n return items.map((item, index) => {\n const {type} = item;\n switch (type) {\n case 'mainElement':\n return (\n <li key={`${item.title}-${index}`}>\n <span className={style.title}>{item.title}</span>\n <span className={style.value}>{item.value}</span>\n </li>\n );\n case 'content': {\n const {category, label, title, author, unsaved = false} = item;\n return (\n <li className={style.contentWrapper} key={`${title}-${index}`}>\n <span className={style.contentCounter}>{index + 1}</span>\n <div className={style.contentItem}>\n <div className={style.content}>\n <ContentBadge category={category} label={label} />\n <span\n className={classnames(style.contentTitle, unsaved && style.unsaved)}\n title={title}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n </div>\n {author ? <span className={style.author}>{author}</span> : null}\n </div>\n </li>\n );\n }\n case 'text':\n default: {\n const {text, unsaved = false} = item;\n return (\n <li key={`${item.text}-${index}`}>\n <span className={classnames(style.valueSimpleText, unsaved && style.unsaved)}>\n {text}\n </span>\n </li>\n );\n }\n }\n });\n};\n\nconst buildSectionHeader = section => {\n const {title, counterText} = section;\n if (!title) {\n return null;\n }\n return (\n <div className={style.sectionHeader}>\n <span className={style.title}>{title}</span>\n {counterText ? <span className={style.counterText}>{counterText}</span> : null}\n </div>\n );\n};\n\nconst buildSections = sections => {\n return sections.map((section, index) => {\n const sectionHeader = buildSectionHeader(section);\n const itemsView = buildItemsOfSection(section.items);\n return (\n <div key={`summary-section-${index}`} data-step={index} className={style.sectionWrapper}>\n {sectionHeader}\n <ul>{itemsView}</ul>\n </div>\n );\n });\n};\n\nconst BuildAction = ({action}) => {\n const {onClick, text, icon, 'aria-label': ariaLabel} = action;\n const handleClick = useMemo(() => () => onClick(), [onClick]);\n\n if (!action) return null;\n\n const buttonProps = {\n type: 'text',\n label: text,\n 'aria-label': ariaLabel,\n 'data-name': `${icon}-button`,\n onClick: handleClick,\n icon: {\n position: 'left',\n type: icon\n }\n };\n\n return (\n <div className={style.button}>\n <ButtonLink {...buttonProps} />\n </div>\n );\n};\n\nconst WizardSummary = props => {\n const {title, sections, action} = props;\n const sectionsView = buildSections(sections);\n const idSwitch = 'open-summary-wizard';\n\n return (\n <div className={style.container}>\n <span className={style.desktopSummaryTitle}>{title}</span>\n <input\n type=\"checkbox\"\n id={idSwitch}\n name=\"toogle\"\n title={idSwitch}\n className={style.checkbox}\n />\n <div className={style.summary}>\n <div className={style.tabletSummaryHeader}>\n <label htmlFor={idSwitch}>\n <span className={style.tabletSummaryTitle}>{title}</span>\n <ArrowDownIcon className={style.tabletSummaryIcon} />\n </label>\n </div>\n <div className={style.summarySections}>{sectionsView}</div>\n </div>\n <div className={style.actionZone}>\n <BuildAction action={action} />\n </div>\n </div>\n );\n};\n\nBuildAction.propTypes = {\n action: PropTypes.shape({\n icon: PropTypes.string,\n text: PropTypes.string,\n onClick: PropTypes.func,\n 'aria-label': PropTypes.string\n })\n};\n\nWizardSummary.propTypes = {\n title: PropTypes.string,\n sections: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n items: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape({\n type: PropTypes.string,\n title: PropTypes.string,\n value: PropTypes.string\n }),\n PropTypes.shape({\n type: PropTypes.string,\n text: PropTypes.string,\n unsaved: PropTypes.bool\n }),\n PropTypes.shape({\n type: PropTypes.string,\n category: PropTypes.oneOf([\n 'base',\n 'advanced',\n 'coach',\n 'chapter',\n 'scorm',\n 'video',\n 'article',\n 'podcast'\n ]),\n title: PropTypes.string,\n label: PropTypes.string,\n author: PropTypes.string,\n unsaved: PropTypes.bool\n })\n ])\n ),\n counterText: PropTypes.string\n })\n ),\n action: BuildAction.propTypes.action\n};\n\nexport default WizardSummary;\n"],"file":"index.js"}
@@ -22,7 +22,7 @@ const Tab = ({
22
22
  onClick,
23
23
  theme
24
24
  }) => {
25
- const handleOnClick = useMemo(() => evt => onClick(index, evt), [onClick]);
25
+ const handleOnClick = useMemo(() => evt => onClick(index, evt), [index, onClick]);
26
26
  return children ? /*#__PURE__*/React.createElement("div", {
27
27
  "data-name": "accordion",
28
28
  className: themeStyle[theme]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/organism/accordion/container/index.js"],"names":["React","useMemo","PropTypes","Part","style","themeStyle","setup","setupWrapper","default","wrapper","Tab","children","index","title","isOpen","iconType","onClick","theme","handleOnClick","evt","wrapperHidden","propTypes","content","number","Accordion","props","tabProps","accordion","convert","cap","child","tabProps_","defaultProps","arrayOf","shape"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, map, noop} from 'lodash/fp';\nimport Part from '../part';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setupWrapper,\n default: style.wrapper\n};\n\nconst Tab = ({children, index, title, isOpen, iconType, onClick, theme}) => {\n const handleOnClick = useMemo(() => evt => onClick(index, evt), [onClick]);\n\n return children ? (\n <div data-name=\"accordion\" className={themeStyle[theme]}>\n <Part\n iconType={iconType}\n title={title}\n content={children}\n isOpen={isOpen}\n theme={theme}\n onClick={handleOnClick}\n />\n </div>\n ) : (\n <div data-name=\"accordion\" className={style.wrapperHidden} />\n );\n};\n\nTab.propTypes = {\n children: Part.propTypes.content,\n index: PropTypes.number,\n title: Part.propTypes.title,\n iconType: Part.propTypes.iconType,\n isOpen: Part.propTypes.isOpen,\n theme: Part.propTypes.theme,\n onClick: Part.propTypes.onClick\n};\n\nconst Accordion = props => {\n const {tabProps, children, theme = 'default', onClick = noop} = props;\n const accordion = map.convert({cap: false})((child, index) => {\n const tabProps_ = get(index, tabProps);\n return (\n <Tab {...tabProps_} key={index} index={index} theme={theme} onClick={onClick}>\n {child}\n </Tab>\n );\n }, children);\n\n return <div>{accordion}</div>;\n};\n\nAccordion.defaultProps = {\n children: []\n};\n\nAccordion.propTypes = {\n children: PropTypes.arrayOf(Tab.propTypes.children),\n tabProps: PropTypes.arrayOf(\n PropTypes.shape({\n title: Tab.propTypes.title,\n iconType: Tab.propTypes.iconType,\n isOpen: Tab.propTypes.isOpen\n })\n ),\n onClick: Tab.propTypes.onClick,\n theme: Tab.propTypes.theme\n};\n\nexport default Accordion;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/organism/accordion/container/index.js"],"names":["React","useMemo","PropTypes","Part","style","themeStyle","setup","setupWrapper","default","wrapper","Tab","children","index","title","isOpen","iconType","onClick","theme","handleOnClick","evt","wrapperHidden","propTypes","content","number","Accordion","props","tabProps","accordion","convert","cap","child","tabProps_","defaultProps","arrayOf","shape"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {get, map, noop} from 'lodash/fp';\nimport Part from '../part';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setupWrapper,\n default: style.wrapper\n};\n\nconst Tab = ({children, index, title, isOpen, iconType, onClick, theme}) => {\n const handleOnClick = useMemo(() => evt => onClick(index, evt), [index, onClick]);\n\n return children ? (\n <div data-name=\"accordion\" className={themeStyle[theme]}>\n <Part\n iconType={iconType}\n title={title}\n content={children}\n isOpen={isOpen}\n theme={theme}\n onClick={handleOnClick}\n />\n </div>\n ) : (\n <div data-name=\"accordion\" className={style.wrapperHidden} />\n );\n};\n\nTab.propTypes = {\n children: Part.propTypes.content,\n index: PropTypes.number,\n title: Part.propTypes.title,\n iconType: Part.propTypes.iconType,\n isOpen: Part.propTypes.isOpen,\n theme: Part.propTypes.theme,\n onClick: Part.propTypes.onClick\n};\n\nconst Accordion = props => {\n const {tabProps, children, theme = 'default', onClick = noop} = props;\n const accordion = map.convert({cap: false})((child, index) => {\n const tabProps_ = get(index, tabProps);\n return (\n <Tab {...tabProps_} key={index} index={index} theme={theme} onClick={onClick}>\n {child}\n </Tab>\n );\n }, children);\n\n return <div>{accordion}</div>;\n};\n\nAccordion.defaultProps = {\n children: []\n};\n\nAccordion.propTypes = {\n children: PropTypes.arrayOf(Tab.propTypes.children),\n tabProps: PropTypes.arrayOf(\n PropTypes.shape({\n title: Tab.propTypes.title,\n iconType: Tab.propTypes.iconType,\n isOpen: Tab.propTypes.isOpen\n })\n ),\n onClick: Tab.propTypes.onClick,\n theme: Tab.propTypes.theme\n};\n\nexport default Accordion;\n"],"file":"index.js"}
@@ -26,7 +26,7 @@ const Tab = ({
26
26
  isOpen,
27
27
  onUpdateOpenedTab
28
28
  }) => {
29
- const handleOnClick = useMemo(() => evt => onClick(index, evt), [onClick]);
29
+ const handleOnClick = useMemo(() => evt => onClick(index, evt), [index, onClick]);
30
30
  return children ? /*#__PURE__*/React.createElement("div", {
31
31
  "data-name": "accordion",
32
32
  className: themeStyle[theme]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/organism/accordion/coorp-manager/index.js"],"names":["React","useMemo","useEffect","useState","PropTypes","Part","style","themeStyle","setup","setupWrapper","default","wrapper","Tab","children","index","title","selected","iconType","onClick","href","type","theme","isOpen","onUpdateOpenedTab","handleOnClick","evt","wrapperHidden","propTypes","content","number","Accordion","props","tabProps","selectedIndex","item","openedTab","updateOpenedTab","tabs","convert","cap","tab","child","undefined","accordion","defaultProps","arrayOf","shape","oneOf"],"mappings":"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","sourcesContent":["import React, {useMemo, useEffect, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {map, noop, findIndex} from 'lodash/fp';\nimport Part from './part';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setupWrapper,\n default: style.wrapper\n};\n\nconst Tab = ({\n children,\n index,\n title,\n selected,\n iconType,\n onClick,\n href,\n type,\n theme,\n isOpen,\n onUpdateOpenedTab\n}) => {\n const handleOnClick = useMemo(() => evt => onClick(index, evt), [onClick]);\n return children ? (\n <div data-name=\"accordion\" className={themeStyle[theme]}>\n <Part\n iconType={iconType}\n title={title}\n content={children}\n selected={selected}\n theme={theme}\n href={href}\n type={type}\n onClick={handleOnClick}\n onUpdateOpenedTab={onUpdateOpenedTab}\n isOpen={isOpen}\n />\n </div>\n ) : (\n <div data-name=\"accordion\" className={style.wrapperHidden} />\n );\n};\n\nTab.propTypes = {\n children: Part.propTypes.content,\n index: PropTypes.number,\n title: Part.propTypes.title,\n iconType: Part.propTypes.iconType,\n theme: Part.propTypes.theme,\n onClick: Part.propTypes.onClick,\n selected: Part.propTypes.selected,\n type: Part.propTypes.type,\n href: Part.propTypes.href,\n isOpen: Part.propTypes.isOpen,\n onUpdateOpenedTab: Part.propTypes.onUpdateOpenedTab\n};\n\nconst Accordion = props => {\n const {tabProps, children, theme = 'default', onClick = noop} = props;\n const selectedIndex = findIndex(item => item.selected, tabProps);\n\n const [openedTab, updateOpenedTab] = useState(selectedIndex);\n useEffect(() => {\n updateOpenedTab(selectedIndex);\n }, [selectedIndex]);\n\n const tabs = map.convert({cap: false})((tab, index) => ({\n ...tab,\n child: children[index],\n children: undefined\n }))(tabProps);\n\n const accordion = map.convert({cap: false})((tab, index) => {\n const isOpen = openedTab === index;\n function onUpdateOpenedTab() {\n updateOpenedTab(isOpen ? -1 : index);\n }\n return (\n <Tab\n {...tab}\n key={index}\n index={index}\n theme={theme}\n onClick={onClick}\n onUpdateOpenedTab={onUpdateOpenedTab}\n isOpen={isOpen}\n >\n {tab.child}\n </Tab>\n );\n }, tabs);\n\n return <div>{accordion}</div>;\n};\n\nAccordion.defaultProps = {\n children: []\n};\n\nAccordion.propTypes = {\n children: PropTypes.arrayOf(Tab.propTypes.children),\n tabProps: PropTypes.arrayOf(\n PropTypes.shape({\n title: Tab.propTypes.title,\n iconType: Tab.propTypes.iconType,\n selected: Tab.propTypes.selected,\n type: Tab.propTypes.type,\n href: Tab.propTypes.href,\n index: Tab.propTypes.index,\n children: Tab.propTypes.children\n })\n ),\n onClick: Tab.propTypes.onClick,\n theme: PropTypes.oneOf(['setup', 'default'])\n};\n\nexport default Accordion;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/organism/accordion/coorp-manager/index.js"],"names":["React","useMemo","useEffect","useState","PropTypes","Part","style","themeStyle","setup","setupWrapper","default","wrapper","Tab","children","index","title","selected","iconType","onClick","href","type","theme","isOpen","onUpdateOpenedTab","handleOnClick","evt","wrapperHidden","propTypes","content","number","Accordion","props","tabProps","selectedIndex","item","openedTab","updateOpenedTab","tabs","convert","cap","tab","child","undefined","accordion","defaultProps","arrayOf","shape","oneOf"],"mappings":"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","sourcesContent":["import React, {useMemo, useEffect, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {map, noop, findIndex} from 'lodash/fp';\nimport Part from './part';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setupWrapper,\n default: style.wrapper\n};\n\nconst Tab = ({\n children,\n index,\n title,\n selected,\n iconType,\n onClick,\n href,\n type,\n theme,\n isOpen,\n onUpdateOpenedTab\n}) => {\n const handleOnClick = useMemo(() => evt => onClick(index, evt), [index, onClick]);\n return children ? (\n <div data-name=\"accordion\" className={themeStyle[theme]}>\n <Part\n iconType={iconType}\n title={title}\n content={children}\n selected={selected}\n theme={theme}\n href={href}\n type={type}\n onClick={handleOnClick}\n onUpdateOpenedTab={onUpdateOpenedTab}\n isOpen={isOpen}\n />\n </div>\n ) : (\n <div data-name=\"accordion\" className={style.wrapperHidden} />\n );\n};\n\nTab.propTypes = {\n children: Part.propTypes.content,\n index: PropTypes.number,\n title: Part.propTypes.title,\n iconType: Part.propTypes.iconType,\n theme: Part.propTypes.theme,\n onClick: Part.propTypes.onClick,\n selected: Part.propTypes.selected,\n type: Part.propTypes.type,\n href: Part.propTypes.href,\n isOpen: Part.propTypes.isOpen,\n onUpdateOpenedTab: Part.propTypes.onUpdateOpenedTab\n};\n\nconst Accordion = props => {\n const {tabProps, children, theme = 'default', onClick = noop} = props;\n const selectedIndex = findIndex(item => item.selected, tabProps);\n\n const [openedTab, updateOpenedTab] = useState(selectedIndex);\n useEffect(() => {\n updateOpenedTab(selectedIndex);\n }, [selectedIndex]);\n\n const tabs = map.convert({cap: false})((tab, index) => ({\n ...tab,\n child: children[index],\n children: undefined\n }))(tabProps);\n\n const accordion = map.convert({cap: false})((tab, index) => {\n const isOpen = openedTab === index;\n function onUpdateOpenedTab() {\n updateOpenedTab(isOpen ? -1 : index);\n }\n return (\n <Tab\n {...tab}\n key={index}\n index={index}\n theme={theme}\n onClick={onClick}\n onUpdateOpenedTab={onUpdateOpenedTab}\n isOpen={isOpen}\n >\n {tab.child}\n </Tab>\n );\n }, tabs);\n\n return <div>{accordion}</div>;\n};\n\nAccordion.defaultProps = {\n children: []\n};\n\nAccordion.propTypes = {\n children: PropTypes.arrayOf(Tab.propTypes.children),\n tabProps: PropTypes.arrayOf(\n PropTypes.shape({\n title: Tab.propTypes.title,\n iconType: Tab.propTypes.iconType,\n selected: Tab.propTypes.selected,\n type: Tab.propTypes.type,\n href: Tab.propTypes.href,\n index: Tab.propTypes.index,\n children: Tab.propTypes.children\n })\n ),\n onClick: Tab.propTypes.onClick,\n theme: PropTypes.oneOf(['setup', 'default'])\n};\n\nexport default Accordion;\n"],"file":"index.js"}
@@ -0,0 +1,19 @@
1
+ import test from 'ava';
2
+ import forEach from 'lodash/forEach';
3
+ import renderComponentMacro from '../../../test/helpers/render-component';
4
+ import OrganismListItem from '..';
5
+ import fixtureArchived from './fixtures/archived';
6
+ import fixtureDraft from './fixtures/draft';
7
+ import fixturePublished from './fixtures/published';
8
+ import fixtureRevised from './fixtures/revised';
9
+ test('Organism › OrganismListItem > should have valid propTypes', t => {
10
+ t.pass();
11
+ forEach(OrganismListItem.propTypes, (value, key) => {
12
+ t.not(value, undefined, `PropType for "Organism.OrganismListItem.propTypes.${key}" may not be undefined. Did you mistype the propTypes definition?`);
13
+ });
14
+ });
15
+ test('Organism › OrganismListItem › Archived › should be rendered', renderComponentMacro, OrganismListItem, fixtureArchived);
16
+ test('Organism › OrganismListItem › Draft › should be rendered', renderComponentMacro, OrganismListItem, fixtureDraft);
17
+ test('Organism › OrganismListItem › Published › should be rendered', renderComponentMacro, OrganismListItem, fixturePublished);
18
+ test('Organism › OrganismListItem › Revised › should be rendered', renderComponentMacro, OrganismListItem, fixtureRevised);
19
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/organism/list-item/test/fixtures.js"],"names":["test","forEach","renderComponentMacro","OrganismListItem","fixtureArchived","fixtureDraft","fixturePublished","fixtureRevised","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,gBAAP,MAA6B,IAA7B;AACA,OAAOC,eAAP,MAA4B,qBAA5B;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AAEAP,IAAI,CAAC,2DAAD,EAA8DQ,CAAC,IAAI;AACrEA,EAAAA,CAAC,CAACC,IAAF;AACAR,EAAAA,OAAO,CAACE,gBAAgB,CAACO,SAAlB,EAA6B,CAACC,KAAD,EAAQC,GAAR,KAAgB;AAClDJ,IAAAA,CAAC,CAACK,GAAF,CAAMF,KAAN,EAAaG,SAAb,EAAyB,qDAAoDF,GAAI,mEAAjF;AACD,GAFM,CAAP;AAGD,CALG,CAAJ;AAOAZ,IAAI,CAAC,6DAAD,EAAgEE,oBAAhE,EAAsFC,gBAAtF,EAAwGC,eAAxG,CAAJ;AACAJ,IAAI,CAAC,0DAAD,EAA6DE,oBAA7D,EAAmFC,gBAAnF,EAAqGE,YAArG,CAAJ;AACAL,IAAI,CAAC,8DAAD,EAAiEE,oBAAjE,EAAuFC,gBAAvF,EAAyGG,gBAAzG,CAAJ;AACAN,IAAI,CAAC,4DAAD,EAA+DE,oBAA/D,EAAqFC,gBAArF,EAAuGI,cAAvG,CAAJ","sourcesContent":["import test from 'ava';\nimport forEach from 'lodash/forEach';\nimport renderComponentMacro from '../../../test/helpers/render-component';\nimport OrganismListItem from '..';\nimport fixtureArchived from './fixtures/archived';\nimport fixtureDraft from './fixtures/draft';\nimport fixturePublished from './fixtures/published';\nimport fixtureRevised from './fixtures/revised';\n\ntest('Organism › OrganismListItem > should have valid propTypes', t => {\n t.pass();\n forEach(OrganismListItem.propTypes, (value, key) => {\n t.not(value, undefined, `PropType for \"Organism.OrganismListItem.propTypes.${key}\" may not be undefined. Did you mistype the propTypes definition?`);\n });\n});\n\ntest('Organism › OrganismListItem › Archived › should be rendered', renderComponentMacro, OrganismListItem, fixtureArchived);\ntest('Organism › OrganismListItem › Draft › should be rendered', renderComponentMacro, OrganismListItem, fixtureDraft);\ntest('Organism › OrganismListItem › Published › should be rendered', renderComponentMacro, OrganismListItem, fixturePublished);\ntest('Organism › OrganismListItem › Revised › should be rendered', renderComponentMacro, OrganismListItem, fixtureRevised);\n"],"file":"fixtures.js"}
@@ -0,0 +1,40 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import ListItem from '../list-item';
4
+ import Title from '../../atom/title';
5
+ import ButtonLink from '../../atom/button-link';
6
+ import style from './style.css';
7
+
8
+ const ListItems = ({
9
+ title,
10
+ buttonLink,
11
+ items,
12
+ 'aria-label': ariaLabel
13
+ }) => {
14
+ const itemsView = items.map(item => /*#__PURE__*/React.createElement("li", {
15
+ key: item.id,
16
+ className: style.item
17
+ }, /*#__PURE__*/React.createElement(ListItem, item)));
18
+ return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
19
+ className: style.header
20
+ }, /*#__PURE__*/React.createElement("div", {
21
+ className: style.title
22
+ }, /*#__PURE__*/React.createElement(Title, {
23
+ title: title,
24
+ type: 'form-group'
25
+ })), /*#__PURE__*/React.createElement("div", {
26
+ className: style.buttonCreate
27
+ }, /*#__PURE__*/React.createElement(ButtonLink, buttonLink))), /*#__PURE__*/React.createElement("ul", {
28
+ className: style.list,
29
+ "aria-label": ariaLabel
30
+ }, itemsView));
31
+ };
32
+
33
+ ListItems.propTypes = process.env.NODE_ENV !== "production" ? {
34
+ 'aria-label': PropTypes.string,
35
+ buttonLink: PropTypes.shape(ButtonLink.propTypes),
36
+ items: PropTypes.arrayOf(PropTypes.shape(ListItem.propTypes)),
37
+ title: PropTypes.string
38
+ } : {};
39
+ export default ListItems;
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/organism/list-items/index.js"],"names":["React","PropTypes","ListItem","Title","ButtonLink","style","ListItems","title","buttonLink","items","ariaLabel","itemsView","map","item","id","header","buttonCreate","list","propTypes","string","shape","arrayOf"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,QAAP,MAAqB,cAArB;AACA,OAAOC,KAAP,MAAkB,kBAAlB;AAEA,OAAOC,UAAP,MAAuB,wBAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,SAAS,GAAG,CAAC;AAACC,EAAAA,KAAD;AAAQC,EAAAA,UAAR;AAAoBC,EAAAA,KAApB;AAA2B,gBAAcC;AAAzC,CAAD,KAAyD;AACzE,QAAMC,SAAS,GAAGF,KAAK,CAACG,GAAN,CAAUC,IAAI,iBAC9B;AAAI,IAAA,GAAG,EAAEA,IAAI,CAACC,EAAd;AAAkB,IAAA,SAAS,EAAET,KAAK,CAACQ;AAAnC,kBACE,oBAAC,QAAD,EAAcA,IAAd,CADF,CADgB,CAAlB;AAMA,sBACE,8CACE;AAAK,IAAA,SAAS,EAAER,KAAK,CAACU;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEV,KAAK,CAACE;AAAtB,kBACE,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAEA,KAAd;AAAqB,IAAA,IAAI,EAAE;AAA3B,IADF,CADF,eAIE;AAAK,IAAA,SAAS,EAAEF,KAAK,CAACW;AAAtB,kBACE,oBAAC,UAAD,EAAgBR,UAAhB,CADF,CAJF,CADF,eASE;AAAI,IAAA,SAAS,EAAEH,KAAK,CAACY,IAArB;AAA2B,kBAAYP;AAAvC,KACGC,SADH,CATF,CADF;AAeD,CAtBD;;AAwBAL,SAAS,CAACY,SAAV,2CAAsB;AACpB,gBAAcjB,SAAS,CAACkB,MADJ;AAEpBX,EAAAA,UAAU,EAAEP,SAAS,CAACmB,KAAV,CAAgBhB,UAAU,CAACc,SAA3B,CAFQ;AAGpBT,EAAAA,KAAK,EAAER,SAAS,CAACoB,OAAV,CAAkBpB,SAAS,CAACmB,KAAV,CAAgBlB,QAAQ,CAACgB,SAAzB,CAAlB,CAHa;AAIpBX,EAAAA,KAAK,EAAEN,SAAS,CAACkB;AAJG,CAAtB;AAOA,eAAeb,SAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ListItem from '../list-item';\nimport Title from '../../atom/title';\n\nimport ButtonLink from '../../atom/button-link';\nimport style from './style.css';\n\nconst ListItems = ({title, buttonLink, items, 'aria-label': ariaLabel}) => {\n const itemsView = items.map(item => (\n <li key={item.id} className={style.item}>\n <ListItem {...item} />\n </li>\n ));\n\n return (\n <div>\n <div className={style.header}>\n <div className={style.title}>\n <Title title={title} type={'form-group'} />\n </div>\n <div className={style.buttonCreate}>\n <ButtonLink {...buttonLink} />\n </div>\n </div>\n <ul className={style.list} aria-label={ariaLabel}>\n {itemsView}\n </ul>\n </div>\n );\n};\n\nListItems.propTypes = {\n 'aria-label': PropTypes.string,\n buttonLink: PropTypes.shape(ButtonLink.propTypes),\n items: PropTypes.arrayOf(PropTypes.shape(ListItem.propTypes)),\n title: PropTypes.string\n};\n\nexport default ListItems;\n"],"file":"index.js"}
@@ -0,0 +1,39 @@
1
+ @value breakpoints: "../../variables/breakpoints.css";
2
+ @value mobile from breakpoints;
3
+ @value colors: "../../variables/colors.css";
4
+ @value medium from colors;
5
+ @value xtraLightGrey from colors;
6
+ @value dark from colors;
7
+
8
+ .header {
9
+ display: flex;
10
+ align-items: center;
11
+ justify-content: space-between;
12
+ padding: 0 24px;
13
+ margin-bottom: 24px;
14
+ }
15
+
16
+ .title {
17
+ font-family: Gilroy;
18
+ font-size: 20px;
19
+ font-weight: bold;
20
+ font-stretch: normal;
21
+ font-style: normal;
22
+ line-height: 1.4;
23
+ letter-spacing: normal;
24
+ text-align: left;
25
+ }
26
+
27
+ .buttonCreate {
28
+ width: 194px;
29
+ }
30
+
31
+ .item {
32
+ margin-bottom: 8px;
33
+ }
34
+
35
+ .list {
36
+ list-style-type: none;
37
+ margin: 0;
38
+ padding: 0;
39
+ }
@@ -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 archivedItem from '../../../list-item/test/fixtures/archived';
4
+ const ids = ['1', '2', '3'];
5
+ const listeItems = ids.map(id => {
6
+ return _extends(_extends({}, archivedItem.props), {}, {
7
+ id
8
+ });
9
+ });
10
+ export default {
11
+ props: {
12
+ title: `${listeItems.length} custom playlists`,
13
+ 'aria-label': 'aria list',
14
+ buttonLink: {
15
+ type: 'primary',
16
+ label: 'Create custom playlist',
17
+ 'aria-label': 'aria button',
18
+ 'data-name': 'default-button',
19
+ onClick: () => console.log('click')
20
+ },
21
+ items: listeItems
22
+ }
23
+ };
24
+ //# sourceMappingURL=archived.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/list-items/test/fixtures/archived.js"],"names":["archivedItem","ids","listeItems","map","id","props","title","length","buttonLink","type","label","onClick","console","log","items"],"mappings":";;AAAA,OAAOA,YAAP,MAAyB,2CAAzB;AAEA,MAAMC,GAAG,GAAG,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAAZ;AACA,MAAMC,UAAU,GAAGD,GAAG,CAACE,GAAJ,CAAQC,EAAE,IAAI;AAC/B,+BACKJ,YAAY,CAACK,KADlB;AAEED,IAAAA;AAFF;AAID,CALkB,CAAnB;AAOA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAG,GAAEJ,UAAU,CAACK,MAAO,mBADvB;AAEL,kBAAc,WAFT;AAGLC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,KAAK,EAAE,wBAFG;AAGV,oBAAc,aAHJ;AAIV,mBAAa,gBAJH;AAKVC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ;AALL,KAHP;AAULC,IAAAA,KAAK,EAAEZ;AAVF;AADM,CAAf","sourcesContent":["import archivedItem from '../../../list-item/test/fixtures/archived';\n\nconst ids = ['1', '2', '3'];\nconst listeItems = ids.map(id => {\n return {\n ...archivedItem.props,\n id\n };\n});\n\nexport default {\n props: {\n title: `${listeItems.length} custom playlists`,\n 'aria-label': 'aria list',\n buttonLink: {\n type: 'primary',\n label: 'Create custom playlist',\n 'aria-label': 'aria button',\n 'data-name': 'default-button',\n onClick: () => console.log('click')\n },\n items: listeItems\n }\n};\n"],"file":"archived.js"}
@@ -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 draftItem from '../../../list-item/test/fixtures/draft';
4
+ const ids = ['1', '2', '3'];
5
+ const listeItems = ids.map(id => {
6
+ return _extends(_extends({}, draftItem.props), {}, {
7
+ id
8
+ });
9
+ });
10
+ export default {
11
+ props: {
12
+ title: `${listeItems.length} custom playlists`,
13
+ 'aria-label': 'aria list',
14
+ buttonLink: {
15
+ type: 'primary',
16
+ label: 'Create custom playlist',
17
+ 'aria-label': 'aria button',
18
+ 'data-name': 'default-button',
19
+ onClick: () => console.log('click')
20
+ },
21
+ items: listeItems
22
+ }
23
+ };
24
+ //# sourceMappingURL=draft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/list-items/test/fixtures/draft.js"],"names":["draftItem","ids","listeItems","map","id","props","title","length","buttonLink","type","label","onClick","console","log","items"],"mappings":";;AAAA,OAAOA,SAAP,MAAsB,wCAAtB;AAEA,MAAMC,GAAG,GAAG,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAAZ;AACA,MAAMC,UAAU,GAAGD,GAAG,CAACE,GAAJ,CAAQC,EAAE,IAAI;AAC/B,+BACKJ,SAAS,CAACK,KADf;AAEED,IAAAA;AAFF;AAID,CALkB,CAAnB;AAOA,eAAe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAG,GAAEJ,UAAU,CAACK,MAAO,mBADvB;AAEL,kBAAc,WAFT;AAGLC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,KAAK,EAAE,wBAFG;AAGV,oBAAc,aAHJ;AAIV,mBAAa,gBAJH;AAKVC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ;AALL,KAHP;AAULC,IAAAA,KAAK,EAAEZ;AAVF;AADM,CAAf","sourcesContent":["import draftItem from '../../../list-item/test/fixtures/draft';\n\nconst ids = ['1', '2', '3'];\nconst listeItems = ids.map(id => {\n return {\n ...draftItem.props,\n id\n };\n});\n\nexport default {\n props: {\n title: `${listeItems.length} custom playlists`,\n 'aria-label': 'aria list',\n buttonLink: {\n type: 'primary',\n label: 'Create custom playlist',\n 'aria-label': 'aria button',\n 'data-name': 'default-button',\n onClick: () => console.log('click')\n },\n items: listeItems\n }\n};\n"],"file":"draft.js"}
@@ -0,0 +1,26 @@
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 publishedItem from '../../../list-item/test/fixtures/published';
4
+ import revisedItem from '../../../list-item/test/fixtures/revised';
5
+ const propsRevised = revisedItem.props;
6
+ const ids = ['1', '2', '3'];
7
+ const listePublishedItems = ids.map(id => {
8
+ return _extends(_extends({}, publishedItem.props), {}, {
9
+ id
10
+ });
11
+ });
12
+ export default {
13
+ props: {
14
+ title: `${listePublishedItems.length + 1} custom playlists`,
15
+ 'aria-label': 'aria list',
16
+ buttonLink: {
17
+ type: 'primary',
18
+ label: 'Create custom playlist',
19
+ 'aria-label': 'aria button',
20
+ 'data-name': 'default-button',
21
+ onClick: () => console.log('click')
22
+ },
23
+ items: [...listePublishedItems, propsRevised]
24
+ }
25
+ };
26
+ //# sourceMappingURL=published.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/organism/list-items/test/fixtures/published.js"],"names":["publishedItem","revisedItem","propsRevised","props","ids","listePublishedItems","map","id","title","length","buttonLink","type","label","onClick","console","log","items"],"mappings":";;AAAA,OAAOA,aAAP,MAA0B,4CAA1B;AACA,OAAOC,WAAP,MAAwB,0CAAxB;AAEA,MAAMC,YAAY,GAAGD,WAAW,CAACE,KAAjC;AAEA,MAAMC,GAAG,GAAG,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAAZ;AACA,MAAMC,mBAAmB,GAAGD,GAAG,CAACE,GAAJ,CAAQC,EAAE,IAAI;AACxC,+BACKP,aAAa,CAACG,KADnB;AAEEI,IAAAA;AAFF;AAID,CAL2B,CAA5B;AAOA,eAAe;AACbJ,EAAAA,KAAK,EAAE;AACLK,IAAAA,KAAK,EAAG,GAAEH,mBAAmB,CAACI,MAApB,GAA6B,CAAE,mBADpC;AAEL,kBAAc,WAFT;AAGLC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE,SADI;AAEVC,MAAAA,KAAK,EAAE,wBAFG;AAGV,oBAAc,aAHJ;AAIV,mBAAa,gBAJH;AAKVC,MAAAA,OAAO,EAAE,MAAMC,OAAO,CAACC,GAAR,CAAY,OAAZ;AALL,KAHP;AAULC,IAAAA,KAAK,EAAE,CAAC,GAAGX,mBAAJ,EAAyBH,YAAzB;AAVF;AADM,CAAf","sourcesContent":["import publishedItem from '../../../list-item/test/fixtures/published';\nimport revisedItem from '../../../list-item/test/fixtures/revised';\n\nconst propsRevised = revisedItem.props;\n\nconst ids = ['1', '2', '3'];\nconst listePublishedItems = ids.map(id => {\n return {\n ...publishedItem.props,\n id\n };\n});\n\nexport default {\n props: {\n title: `${listePublishedItems.length + 1} custom playlists`,\n 'aria-label': 'aria list',\n buttonLink: {\n type: 'primary',\n label: 'Create custom playlist',\n 'aria-label': 'aria button',\n 'data-name': 'default-button',\n onClick: () => console.log('click')\n },\n items: [...listePublishedItems, propsRevised]\n }\n};\n"],"file":"published.js"}
@@ -7,6 +7,7 @@ import pipe from 'lodash/fp/pipe';
7
7
  import get from 'lodash/fp/get';
8
8
  import isEmpty from 'lodash/fp/isEmpty';
9
9
  import find from 'lodash/fp/find';
10
+ import classNames from 'classnames';
10
11
  import BrandTabs from '../../../molecule/brand-tabs';
11
12
  import { IconLinkItem, LinkItem } from '../../../organism/sidebar';
12
13
  import BrandForm from '../../../organism/brand-form';
@@ -57,7 +58,7 @@ const buildLeftNavigation = (logo, items, onItemClick) => {
57
58
  className: style.subTabsView
58
59
  }, subTabsView(tab.tabs)))(items);
59
60
  return /*#__PURE__*/React.createElement("div", {
60
- className: style.leftMenu
61
+ className: style.navigation
61
62
  }, /*#__PURE__*/React.createElement("div", {
62
63
  className: style.logo
63
64
  }, /*#__PURE__*/React.createElement("a", {
@@ -87,10 +88,9 @@ const buildNotifications = notifications => {
87
88
  }, notificationsList);
88
89
  };
89
90
 
90
- const buildHeader = (header, notifications) => {
91
- const headerStyle = isEmpty(notifications) ? style.header : style.headerForNotifications;
91
+ const buildHeader = header => {
92
92
  return /*#__PURE__*/React.createElement("div", {
93
- className: headerStyle
93
+ className: style.header
94
94
  }, /*#__PURE__*/React.createElement(Header, header));
95
95
  };
96
96
 
@@ -154,11 +154,18 @@ const BrandUpdate = props => {
154
154
  const tabsView = buildTabs(items);
155
155
  const contentView = buildContentView(content);
156
156
  const detailsView = buildDetailsView(details);
157
+ const contentStyle = classNames([style.content, !isEmpty(notifications) && style.contentWithNotifications]);
157
158
  return /*#__PURE__*/React.createElement("div", {
158
159
  className: style.container
159
- }, leftNavigation, /*#__PURE__*/React.createElement("div", {
160
+ }, /*#__PURE__*/React.createElement("div", {
161
+ className: style.left
162
+ }, leftNavigation), /*#__PURE__*/React.createElement("div", {
160
163
  className: style.contentWrapper
161
- }, headerView, notificationsView, tabsView, contentView, detailsView));
164
+ }, /*#__PURE__*/React.createElement("div", {
165
+ className: style.headerSticky
166
+ }, headerView), /*#__PURE__*/React.createElement("div", {
167
+ className: contentStyle
168
+ }, notificationsView, tabsView, contentView, detailsView)));
162
169
  };
163
170
 
164
171
  BrandUpdate.defaultProps = {