@coorpacademy/components 11.11.16-alpha.9 → 11.12.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 (81) hide show
  1. package/es/atom/drag-and-drop/index.d.ts.map +1 -1
  2. package/es/atom/drag-and-drop/index.js +0 -20
  3. package/es/atom/drag-and-drop/index.js.map +1 -1
  4. package/es/atom/drag-and-drop/style.css +5 -21
  5. package/es/atom/image-upload/index.d.ts.map +1 -1
  6. package/es/atom/image-upload/index.js +8 -2
  7. package/es/atom/image-upload/index.js.map +1 -1
  8. package/es/atom/input-html/index.d.ts +34 -23
  9. package/es/atom/input-html/index.d.ts.map +1 -1
  10. package/es/atom/input-html/index.js +63 -94
  11. package/es/atom/input-html/index.js.map +1 -1
  12. package/es/atom/input-html/input-preview.d.ts.map +1 -1
  13. package/es/atom/input-html/input-preview.js +2 -0
  14. package/es/atom/input-html/input-preview.js.map +1 -1
  15. package/es/atom/input-textarea/index.d.ts.map +1 -1
  16. package/es/atom/input-textarea/index.js +2 -1
  17. package/es/atom/input-textarea/index.js.map +1 -1
  18. package/es/hoc/transition/child-prop-types.d.ts +16 -0
  19. package/es/hoc/transition/child-prop-types.d.ts.map +1 -0
  20. package/es/hoc/transition/child-prop-types.js +9 -0
  21. package/es/hoc/transition/child-prop-types.js.map +1 -0
  22. package/es/hoc/transition/index.d.ts +14 -9
  23. package/es/hoc/transition/index.d.ts.map +1 -1
  24. package/es/hoc/transition/index.js +34 -30
  25. package/es/hoc/transition/index.js.map +1 -1
  26. package/es/hoc/transition/transition-prop-types.d.ts +20 -0
  27. package/es/hoc/transition/transition-prop-types.d.ts.map +1 -0
  28. package/es/hoc/transition/transition-prop-types.js +12 -0
  29. package/es/hoc/transition/transition-prop-types.js.map +1 -0
  30. package/es/molecule/drag-and-drop-wrapper/style.css +1 -1
  31. package/es/organism/review-slide/index.native.d.ts.map +1 -1
  32. package/es/organism/review-slide/index.native.js +27 -8
  33. package/es/organism/review-slide/index.native.js.map +1 -1
  34. package/es/util/button-icons.d.ts +0 -1
  35. package/es/util/button-icons.d.ts.map +1 -1
  36. package/es/util/button-icons.js +2 -3
  37. package/es/util/button-icons.js.map +1 -1
  38. package/es/util/proptypes.d.ts.map +1 -1
  39. package/es/util/proptypes.js +2 -2
  40. package/es/util/proptypes.js.map +1 -1
  41. package/lib/atom/drag-and-drop/index.d.ts.map +1 -1
  42. package/lib/atom/drag-and-drop/index.js +0 -20
  43. package/lib/atom/drag-and-drop/index.js.map +1 -1
  44. package/lib/atom/drag-and-drop/style.css +5 -21
  45. package/lib/atom/image-upload/index.d.ts.map +1 -1
  46. package/lib/atom/image-upload/index.js +9 -2
  47. package/lib/atom/image-upload/index.js.map +1 -1
  48. package/lib/atom/input-html/index.d.ts +34 -23
  49. package/lib/atom/input-html/index.d.ts.map +1 -1
  50. package/lib/atom/input-html/index.js +67 -94
  51. package/lib/atom/input-html/index.js.map +1 -1
  52. package/lib/atom/input-html/input-preview.d.ts.map +1 -1
  53. package/lib/atom/input-html/input-preview.js +2 -0
  54. package/lib/atom/input-html/input-preview.js.map +1 -1
  55. package/lib/atom/input-textarea/index.d.ts.map +1 -1
  56. package/lib/atom/input-textarea/index.js +2 -1
  57. package/lib/atom/input-textarea/index.js.map +1 -1
  58. package/lib/hoc/transition/child-prop-types.d.ts +16 -0
  59. package/lib/hoc/transition/child-prop-types.d.ts.map +1 -0
  60. package/lib/hoc/transition/child-prop-types.js +18 -0
  61. package/lib/hoc/transition/child-prop-types.js.map +1 -0
  62. package/lib/hoc/transition/index.d.ts +14 -9
  63. package/lib/hoc/transition/index.d.ts.map +1 -1
  64. package/lib/hoc/transition/index.js +35 -30
  65. package/lib/hoc/transition/index.js.map +1 -1
  66. package/lib/hoc/transition/transition-prop-types.d.ts +20 -0
  67. package/lib/hoc/transition/transition-prop-types.d.ts.map +1 -0
  68. package/lib/hoc/transition/transition-prop-types.js +21 -0
  69. package/lib/hoc/transition/transition-prop-types.js.map +1 -0
  70. package/lib/molecule/drag-and-drop-wrapper/style.css +1 -1
  71. package/lib/organism/review-slide/index.native.d.ts.map +1 -1
  72. package/lib/organism/review-slide/index.native.js +28 -7
  73. package/lib/organism/review-slide/index.native.js.map +1 -1
  74. package/lib/util/button-icons.d.ts +0 -1
  75. package/lib/util/button-icons.d.ts.map +1 -1
  76. package/lib/util/button-icons.js +1 -2
  77. package/lib/util/button-icons.js.map +1 -1
  78. package/lib/util/proptypes.d.ts.map +1 -1
  79. package/lib/util/proptypes.js +2 -2
  80. package/lib/util/proptypes.js.map +1 -1
  81. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/drag-and-drop/index.js"],"names":[],"mappings":";AAgBA;IACE;;;;;;;;;;;;;;;;;;MAkBE;IAEF,wBASC;IANC;;MAEC;IAMH,wBAIC;IAED,uBAIC;IAED,sBAoKC;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/drag-and-drop/index.js"],"names":[],"mappings":";AAgBA;IACE;;;;;;;;;;;;;;;;;;MAkBE;IAEF,wBASC;IANC;;MAEC;IAMH,wBAIC;IAED,uBAIC;IAED,sBAmJC;CACF"}
@@ -74,26 +74,6 @@ class DragAndDrop extends React.Component {
74
74
  src: previewContent.src,
75
75
  type: "video/*"
76
76
  }));
77
- } else if (previewContent && previewContent.type === 'pdf') {
78
- previewView = /*#__PURE__*/React.createElement("div", {
79
- className: style.previewPdf
80
- }, /*#__PURE__*/React.createElement("p", {
81
- className: style.previewLabelPdf
82
- }, previewLabel), /*#__PURE__*/React.createElement(Button, {
83
- type: "secondary",
84
- link: {
85
- href: previewContent.src,
86
- target: '_blank',
87
- download: false
88
- },
89
- label: "Open pdf",
90
- "aria-label": "Open pdf",
91
- "data-name": "default-button",
92
- icon: {
93
- position: 'left',
94
- type: 'pdf'
95
- }
96
- }));
97
77
  } else if (loading) {
98
78
  previewView = /*#__PURE__*/React.createElement("div", {
99
79
  className: style.loaderWrapper
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PropTypes","NovaSolidStatusClose","Close","NovaSolidFilesBasicFileUpload2","FileUploadIcon","NovaSolidFilesBasicFileBlock2","FileUploadBlockedIcon","classnames","Loader","Button","getClassState","style","constantNull","DragAndDrop","Component","constructor","props","state","dragging","handleDragStart","bind","handleDragStop","setState","render","idBox","children","title","description","uploadLabel","previewLabel","previewContent","loading","modified","onReset","error","buttonAriaLabel","errorButtonLabel","disabled","previewView","type","preview","src","previewPdf","previewLabelPdf","href","target","download","position","loaderWrapper","loadingCancel","closeIcon","loader","loaderText","resetContent","resetUploadWrapper","resetSrcLabel","label","buildButton","defaultButtonProps","icon","button","previewContainer","modifiedPreviewContainer","inputWrapper","modifiedInputWrapper","errorInputWrapper","wrapper","infosContainer","iconError","dragAndDropLabel","errorMessage","propTypes","string","shape","bool","func"],"sources":["../../../src/atom/drag-and-drop/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {uniqueId, constant, isEmpty} from 'lodash/fp';\nimport {\n NovaSolidStatusClose as Close,\n NovaSolidFilesBasicFileUpload2 as FileUploadIcon,\n NovaSolidFilesBasicFileBlock2 as FileUploadBlockedIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Loader from '../loader';\nimport Button from '../button-link';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst constantNull = constant(null);\n\nclass DragAndDrop extends React.Component {\n static propTypes = {\n title: PropTypes.string,\n description: PropTypes.string,\n uploadLabel: PropTypes.string,\n previewLabel: PropTypes.string,\n previewContent: PropTypes.shape({\n type: PropTypes.string,\n src: PropTypes.string,\n label: PropTypes.string\n }),\n loading: PropTypes.bool,\n modified: PropTypes.bool,\n disabled: PropTypes.bool,\n children: PropTypes.func,\n onReset: PropTypes.func,\n error: PropTypes.string,\n buttonAriaLabel: PropTypes.string,\n errorButtonLabel: PropTypes.string\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n dragging: false\n };\n\n this.handleDragStart = this.handleDragStart.bind(this);\n this.handleDragStop = this.handleDragStop.bind(this);\n }\n\n handleDragStart() {\n this.setState({\n dragging: true\n });\n }\n\n handleDragStop() {\n this.setState({\n dragging: false\n });\n }\n\n render() {\n const idBox = uniqueId('drop-box-');\n const {\n children = constantNull,\n title,\n description,\n uploadLabel,\n previewLabel = '',\n previewContent,\n loading = false,\n modified = false,\n onReset = null,\n error = '',\n buttonAriaLabel = '',\n errorButtonLabel = '',\n disabled = false\n } = this.props;\n const {dragging} = this.state;\n\n let previewView = null;\n\n if (previewContent && previewContent.type === 'image') {\n previewView = (\n <div className={style.preview}>\n <img src={previewContent.src} />\n </div>\n );\n } else if (previewContent && previewContent.type === 'video') {\n previewView = (\n <div className={style.preview}>\n <video controls src={previewContent.src} type=\"video/*\" />\n </div>\n );\n } else if (previewContent && previewContent.type === 'pdf') {\n previewView = (\n <div className={style.previewPdf}>\n <p className={style.previewLabelPdf}>{previewLabel}</p>\n <Button\n type=\"secondary\"\n link={{href: previewContent.src, target: '_blank', download: false}}\n label=\"Open pdf\"\n aria-label=\"Open pdf\"\n data-name=\"default-button\"\n icon={{\n position: 'left',\n type: 'pdf'\n }}\n />\n </div>\n );\n } else if (loading) {\n previewView = (\n <div className={style.loaderWrapper}>\n <div className={style.loadingCancel}>\n <Close\n data-name=\"reset-content-icon\"\n height={12}\n width={12}\n className={style.closeIcon}\n onClick={onReset}\n />\n </div>\n <div className={style.loader}>\n <Loader theme=\"coorpmanager\" />\n </div>\n <span className={style.loaderText}>Uploading</span>\n </div>\n );\n } else {\n previewView = <span>{previewLabel}</span>;\n }\n\n const resetContent =\n previewContent && previewContent.src ? (\n <div className={classnames(style.resetUploadWrapper, disabled && style.disabled)}>\n <div className={style.resetSrcLabel}>\n {previewContent.label ? previewContent.label : previewContent.src}\n </div>\n {onReset ? (\n <Close\n data-name=\"reset-content-icon\"\n height={12}\n width={12}\n className={style.closeIcon}\n onClick={onReset}\n />\n ) : null}\n </div>\n ) : null;\n\n const buildButton = () => {\n const defaultButtonProps = {\n label: uploadLabel,\n 'aria-label': buttonAriaLabel,\n 'data-name': 'default-button',\n icon: {\n position: 'left',\n type: 'folders'\n }\n };\n if (dragging) {\n return null;\n } else if (error) {\n return <Button {...defaultButtonProps} label={errorButtonLabel} icon={{}} />;\n } else {\n return <Button {...defaultButtonProps} />;\n }\n };\n\n const button = buildButton(dragging, error);\n\n const previewContainer = getClassState(\n style.previewContainer,\n style.modifiedPreviewContainer,\n null,\n modified,\n error\n );\n const inputWrapper = getClassState(\n style.inputWrapper,\n style.modifiedInputWrapper,\n style.errorInputWrapper,\n modified,\n error\n );\n\n return (\n <div className={style.wrapper} data-name=\"drag-and-drop-wrapper\">\n <div className={style.title}>{title}</div>\n {!isEmpty(previewContent) || loading ? (\n <div className={classnames(previewContainer, disabled && style.disabled)}>\n {previewView}\n </div>\n ) : (\n <div\n className={classnames(\n dragging ? style.dragging : inputWrapper,\n disabled && style.disabled\n )}\n id={idBox}\n data-name=\"drag-and-drop-box\"\n >\n <div className={style.infosContainer}>\n {error ? (\n <FileUploadBlockedIcon className={style.iconError} />\n ) : (\n <FileUploadIcon className={style.icon} />\n )}\n {description ? <div className={style.description}>{description}</div> : null}\n {error ? null : <div className={style.dragAndDropLabel}>{'Drag & Drop here'}</div>}\n </div>\n {button}\n <div>{children(this.handleDragStart, this.handleDragStop)}</div>\n </div>\n )}\n {error ? (\n <span className={classnames(style.errorMessage, disabled && style.disabled)}>\n {error}\n </span>\n ) : (\n resetContent\n )}\n </div>\n );\n }\n}\n\nexport default DragAndDrop;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,SACEC,oBAAoB,IAAIC,KAD1B,EAEEC,8BAA8B,IAAIC,cAFpC,EAGEC,6BAA6B,IAAIC,qBAHnC,QAIO,0BAJP;AAKA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,MAAP,MAAmB,gBAAnB;AACA,OAAOC,aAAP,MAA0B,4BAA1B;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,YAAY,GAAG,UAAS,IAAT,CAArB;;AAEA,MAAMC,WAAN,SAA0Bd,KAAK,CAACe,SAAhC,CAA0C;EAqBxCC,WAAW,CAACC,KAAD,EAAQ;IACjB,MAAMA,KAAN;IAEA,KAAKC,KAAL,GAAa;MACXC,QAAQ,EAAE;IADC,CAAb;IAIA,KAAKC,eAAL,GAAuB,KAAKA,eAAL,CAAqBC,IAArB,CAA0B,IAA1B,CAAvB;IACA,KAAKC,cAAL,GAAsB,KAAKA,cAAL,CAAoBD,IAApB,CAAyB,IAAzB,CAAtB;EACD;;EAEDD,eAAe,GAAG;IAChB,KAAKG,QAAL,CAAc;MACZJ,QAAQ,EAAE;IADE,CAAd;EAGD;;EAEDG,cAAc,GAAG;IACf,KAAKC,QAAL,CAAc;MACZJ,QAAQ,EAAE;IADE,CAAd;EAGD;;EAEDK,MAAM,GAAG;IACP,MAAMC,KAAK,GAAG,UAAS,WAAT,CAAd;;IACA,MAAM;MACJC,QAAQ,GAAGb,YADP;MAEJc,KAFI;MAGJC,WAHI;MAIJC,WAJI;MAKJC,YAAY,GAAG,EALX;MAMJC,cANI;MAOJC,OAAO,GAAG,KAPN;MAQJC,QAAQ,GAAG,KARP;MASJC,OAAO,GAAG,IATN;MAUJC,KAAK,GAAG,EAVJ;MAWJC,eAAe,GAAG,EAXd;MAYJC,gBAAgB,GAAG,EAZf;MAaJC,QAAQ,GAAG;IAbP,IAcF,KAAKrB,KAdT;IAeA,MAAM;MAACE;IAAD,IAAa,KAAKD,KAAxB;IAEA,IAAIqB,WAAW,GAAG,IAAlB;;IAEA,IAAIR,cAAc,IAAIA,cAAc,CAACS,IAAf,KAAwB,OAA9C,EAAuD;MACrDD,WAAW,gBACT;QAAK,SAAS,EAAE3B,KAAK,CAAC6B;MAAtB,gBACE;QAAK,GAAG,EAAEV,cAAc,CAACW;MAAzB,EADF,CADF;IAKD,CAND,MAMO,IAAIX,cAAc,IAAIA,cAAc,CAACS,IAAf,KAAwB,OAA9C,EAAuD;MAC5DD,WAAW,gBACT;QAAK,SAAS,EAAE3B,KAAK,CAAC6B;MAAtB,gBACE;QAAO,QAAQ,MAAf;QAAgB,GAAG,EAAEV,cAAc,CAACW,GAApC;QAAyC,IAAI,EAAC;MAA9C,EADF,CADF;IAKD,CANM,MAMA,IAAIX,cAAc,IAAIA,cAAc,CAACS,IAAf,KAAwB,KAA9C,EAAqD;MAC1DD,WAAW,gBACT;QAAK,SAAS,EAAE3B,KAAK,CAAC+B;MAAtB,gBACE;QAAG,SAAS,EAAE/B,KAAK,CAACgC;MAApB,GAAsCd,YAAtC,CADF,eAEE,oBAAC,MAAD;QACE,IAAI,EAAC,WADP;QAEE,IAAI,EAAE;UAACe,IAAI,EAAEd,cAAc,CAACW,GAAtB;UAA2BI,MAAM,EAAE,QAAnC;UAA6CC,QAAQ,EAAE;QAAvD,CAFR;QAGE,KAAK,EAAC,UAHR;QAIE,cAAW,UAJb;QAKE,aAAU,gBALZ;QAME,IAAI,EAAE;UACJC,QAAQ,EAAE,MADN;UAEJR,IAAI,EAAE;QAFF;MANR,EAFF,CADF;IAgBD,CAjBM,MAiBA,IAAIR,OAAJ,EAAa;MAClBO,WAAW,gBACT;QAAK,SAAS,EAAE3B,KAAK,CAACqC;MAAtB,gBACE;QAAK,SAAS,EAAErC,KAAK,CAACsC;MAAtB,gBACE,oBAAC,KAAD;QACE,aAAU,oBADZ;QAEE,MAAM,EAAE,EAFV;QAGE,KAAK,EAAE,EAHT;QAIE,SAAS,EAAEtC,KAAK,CAACuC,SAJnB;QAKE,OAAO,EAAEjB;MALX,EADF,CADF,eAUE;QAAK,SAAS,EAAEtB,KAAK,CAACwC;MAAtB,gBACE,oBAAC,MAAD;QAAQ,KAAK,EAAC;MAAd,EADF,CAVF,eAaE;QAAM,SAAS,EAAExC,KAAK,CAACyC;MAAvB,eAbF,CADF;IAiBD,CAlBM,MAkBA;MACLd,WAAW,gBAAG,kCAAOT,YAAP,CAAd;IACD;;IAED,MAAMwB,YAAY,GAChBvB,cAAc,IAAIA,cAAc,CAACW,GAAjC,gBACE;MAAK,SAAS,EAAElC,UAAU,CAACI,KAAK,CAAC2C,kBAAP,EAA2BjB,QAAQ,IAAI1B,KAAK,CAAC0B,QAA7C;IAA1B,gBACE;MAAK,SAAS,EAAE1B,KAAK,CAAC4C;IAAtB,GACGzB,cAAc,CAAC0B,KAAf,GAAuB1B,cAAc,CAAC0B,KAAtC,GAA8C1B,cAAc,CAACW,GADhE,CADF,EAIGR,OAAO,gBACN,oBAAC,KAAD;MACE,aAAU,oBADZ;MAEE,MAAM,EAAE,EAFV;MAGE,KAAK,EAAE,EAHT;MAIE,SAAS,EAAEtB,KAAK,CAACuC,SAJnB;MAKE,OAAO,EAAEjB;IALX,EADM,GAQJ,IAZN,CADF,GAeI,IAhBN;;IAkBA,MAAMwB,WAAW,GAAG,MAAM;MACxB,MAAMC,kBAAkB,GAAG;QACzBF,KAAK,EAAE5B,WADkB;QAEzB,cAAcO,eAFW;QAGzB,aAAa,gBAHY;QAIzBwB,IAAI,EAAE;UACJZ,QAAQ,EAAE,MADN;UAEJR,IAAI,EAAE;QAFF;MAJmB,CAA3B;;MASA,IAAIrB,QAAJ,EAAc;QACZ,OAAO,IAAP;MACD,CAFD,MAEO,IAAIgB,KAAJ,EAAW;QAChB,oBAAO,oBAAC,MAAD,eAAYwB,kBAAZ;UAAgC,KAAK,EAAEtB,gBAAvC;UAAyD,IAAI,EAAE;QAA/D,GAAP;MACD,CAFM,MAEA;QACL,oBAAO,oBAAC,MAAD,EAAYsB,kBAAZ,CAAP;MACD;IACF,CAjBD;;IAmBA,MAAME,MAAM,GAAGH,WAAW,CAACvC,QAAD,EAAWgB,KAAX,CAA1B;IAEA,MAAM2B,gBAAgB,GAAGnD,aAAa,CACpCC,KAAK,CAACkD,gBAD8B,EAEpClD,KAAK,CAACmD,wBAF8B,EAGpC,IAHoC,EAIpC9B,QAJoC,EAKpCE,KALoC,CAAtC;IAOA,MAAM6B,YAAY,GAAGrD,aAAa,CAChCC,KAAK,CAACoD,YAD0B,EAEhCpD,KAAK,CAACqD,oBAF0B,EAGhCrD,KAAK,CAACsD,iBAH0B,EAIhCjC,QAJgC,EAKhCE,KALgC,CAAlC;IAQA,oBACE;MAAK,SAAS,EAAEvB,KAAK,CAACuD,OAAtB;MAA+B,aAAU;IAAzC,gBACE;MAAK,SAAS,EAAEvD,KAAK,CAACe;IAAtB,GAA8BA,KAA9B,CADF,EAEG,CAAC,SAAQI,cAAR,CAAD,IAA4BC,OAA5B,gBACC;MAAK,SAAS,EAAExB,UAAU,CAACsD,gBAAD,EAAmBxB,QAAQ,IAAI1B,KAAK,CAAC0B,QAArC;IAA1B,GACGC,WADH,CADD,gBAKC;MACE,SAAS,EAAE/B,UAAU,CACnBW,QAAQ,GAAGP,KAAK,CAACO,QAAT,GAAoB6C,YADT,EAEnB1B,QAAQ,IAAI1B,KAAK,CAAC0B,QAFC,CADvB;MAKE,EAAE,EAAEb,KALN;MAME,aAAU;IANZ,gBAQE;MAAK,SAAS,EAAEb,KAAK,CAACwD;IAAtB,GACGjC,KAAK,gBACJ,oBAAC,qBAAD;MAAuB,SAAS,EAAEvB,KAAK,CAACyD;IAAxC,EADI,gBAGJ,oBAAC,cAAD;MAAgB,SAAS,EAAEzD,KAAK,CAACgD;IAAjC,EAJJ,EAMGhC,WAAW,gBAAG;MAAK,SAAS,EAAEhB,KAAK,CAACgB;IAAtB,GAAoCA,WAApC,CAAH,GAA4D,IAN1E,EAOGO,KAAK,GAAG,IAAH,gBAAU;MAAK,SAAS,EAAEvB,KAAK,CAAC0D;IAAtB,GAAyC,kBAAzC,CAPlB,CARF,EAiBGT,MAjBH,eAkBE,iCAAMnC,QAAQ,CAAC,KAAKN,eAAN,EAAuB,KAAKE,cAA5B,CAAd,CAlBF,CAPJ,EA4BGa,KAAK,gBACJ;MAAM,SAAS,EAAE3B,UAAU,CAACI,KAAK,CAAC2D,YAAP,EAAqBjC,QAAQ,IAAI1B,KAAK,CAAC0B,QAAvC;IAA3B,GACGH,KADH,CADI,GAKJmB,YAjCJ,CADF;EAsCD;;AAhNuC;;AAApCxC,W,CACG0D,S,2CAAY;EACjB7C,KAAK,EAAE1B,SAAS,CAACwE,MADA;EAEjB7C,WAAW,EAAE3B,SAAS,CAACwE,MAFN;EAGjB5C,WAAW,EAAE5B,SAAS,CAACwE,MAHN;EAIjB3C,YAAY,EAAE7B,SAAS,CAACwE,MAJP;EAKjB1C,cAAc,EAAE9B,SAAS,CAACyE,KAAV,CAAgB;IAC9BlC,IAAI,EAAEvC,SAAS,CAACwE,MADc;IAE9B/B,GAAG,EAAEzC,SAAS,CAACwE,MAFe;IAG9BhB,KAAK,EAAExD,SAAS,CAACwE;EAHa,CAAhB,CALC;EAUjBzC,OAAO,EAAE/B,SAAS,CAAC0E,IAVF;EAWjB1C,QAAQ,EAAEhC,SAAS,CAAC0E,IAXH;EAYjBrC,QAAQ,EAAErC,SAAS,CAAC0E,IAZH;EAajBjD,QAAQ,EAAEzB,SAAS,CAAC2E,IAbH;EAcjB1C,OAAO,EAAEjC,SAAS,CAAC2E,IAdF;EAejBzC,KAAK,EAAElC,SAAS,CAACwE,MAfA;EAgBjBrC,eAAe,EAAEnC,SAAS,CAACwE,MAhBV;EAiBjBpC,gBAAgB,EAAEpC,SAAS,CAACwE;AAjBX,C;AAkNrB,eAAe3D,WAAf"}
1
+ {"version":3,"file":"index.js","names":["React","PropTypes","NovaSolidStatusClose","Close","NovaSolidFilesBasicFileUpload2","FileUploadIcon","NovaSolidFilesBasicFileBlock2","FileUploadBlockedIcon","classnames","Loader","Button","getClassState","style","constantNull","DragAndDrop","Component","constructor","props","state","dragging","handleDragStart","bind","handleDragStop","setState","render","idBox","children","title","description","uploadLabel","previewLabel","previewContent","loading","modified","onReset","error","buttonAriaLabel","errorButtonLabel","disabled","previewView","type","preview","src","loaderWrapper","loadingCancel","closeIcon","loader","loaderText","resetContent","resetUploadWrapper","resetSrcLabel","label","buildButton","defaultButtonProps","icon","position","button","previewContainer","modifiedPreviewContainer","inputWrapper","modifiedInputWrapper","errorInputWrapper","wrapper","infosContainer","iconError","dragAndDropLabel","errorMessage","propTypes","string","shape","bool","func"],"sources":["../../../src/atom/drag-and-drop/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {uniqueId, constant, isEmpty} from 'lodash/fp';\nimport {\n NovaSolidStatusClose as Close,\n NovaSolidFilesBasicFileUpload2 as FileUploadIcon,\n NovaSolidFilesBasicFileBlock2 as FileUploadBlockedIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Loader from '../loader';\nimport Button from '../button-link';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst constantNull = constant(null);\n\nclass DragAndDrop extends React.Component {\n static propTypes = {\n title: PropTypes.string,\n description: PropTypes.string,\n uploadLabel: PropTypes.string,\n previewLabel: PropTypes.string,\n previewContent: PropTypes.shape({\n type: PropTypes.string,\n src: PropTypes.string,\n label: PropTypes.string\n }),\n loading: PropTypes.bool,\n modified: PropTypes.bool,\n disabled: PropTypes.bool,\n children: PropTypes.func,\n onReset: PropTypes.func,\n error: PropTypes.string,\n buttonAriaLabel: PropTypes.string,\n errorButtonLabel: PropTypes.string\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n dragging: false\n };\n\n this.handleDragStart = this.handleDragStart.bind(this);\n this.handleDragStop = this.handleDragStop.bind(this);\n }\n\n handleDragStart() {\n this.setState({\n dragging: true\n });\n }\n\n handleDragStop() {\n this.setState({\n dragging: false\n });\n }\n\n render() {\n const idBox = uniqueId('drop-box-');\n const {\n children = constantNull,\n title,\n description,\n uploadLabel,\n previewLabel = '',\n previewContent,\n loading = false,\n modified = false,\n onReset = null,\n error = '',\n buttonAriaLabel = '',\n errorButtonLabel = '',\n disabled = false\n } = this.props;\n const {dragging} = this.state;\n\n let previewView = null;\n\n if (previewContent && previewContent.type === 'image') {\n previewView = (\n <div className={style.preview}>\n <img src={previewContent.src} />\n </div>\n );\n } else if (previewContent && previewContent.type === 'video') {\n previewView = (\n <div className={style.preview}>\n <video controls src={previewContent.src} type=\"video/*\" />\n </div>\n );\n } else if (loading) {\n previewView = (\n <div className={style.loaderWrapper}>\n <div className={style.loadingCancel}>\n <Close\n data-name=\"reset-content-icon\"\n height={12}\n width={12}\n className={style.closeIcon}\n onClick={onReset}\n />\n </div>\n <div className={style.loader}>\n <Loader theme=\"coorpmanager\" />\n </div>\n <span className={style.loaderText}>Uploading</span>\n </div>\n );\n } else {\n previewView = <span>{previewLabel}</span>;\n }\n\n const resetContent =\n previewContent && previewContent.src ? (\n <div className={classnames(style.resetUploadWrapper, disabled && style.disabled)}>\n <div className={style.resetSrcLabel}>\n {previewContent.label ? previewContent.label : previewContent.src}\n </div>\n {onReset ? (\n <Close\n data-name=\"reset-content-icon\"\n height={12}\n width={12}\n className={style.closeIcon}\n onClick={onReset}\n />\n ) : null}\n </div>\n ) : null;\n\n const buildButton = () => {\n const defaultButtonProps = {\n label: uploadLabel,\n 'aria-label': buttonAriaLabel,\n 'data-name': 'default-button',\n icon: {\n position: 'left',\n type: 'folders'\n }\n };\n if (dragging) {\n return null;\n } else if (error) {\n return <Button {...defaultButtonProps} label={errorButtonLabel} icon={{}} />;\n } else {\n return <Button {...defaultButtonProps} />;\n }\n };\n\n const button = buildButton(dragging, error);\n\n const previewContainer = getClassState(\n style.previewContainer,\n style.modifiedPreviewContainer,\n null,\n modified,\n error\n );\n const inputWrapper = getClassState(\n style.inputWrapper,\n style.modifiedInputWrapper,\n style.errorInputWrapper,\n modified,\n error\n );\n\n return (\n <div className={style.wrapper} data-name=\"drag-and-drop-wrapper\">\n <div className={style.title}>{title}</div>\n {!isEmpty(previewContent) || loading ? (\n <div className={classnames(previewContainer, disabled && style.disabled)}>\n {previewView}\n </div>\n ) : (\n <div\n className={classnames(\n dragging ? style.dragging : inputWrapper,\n disabled && style.disabled\n )}\n id={idBox}\n data-name=\"drag-and-drop-box\"\n >\n <div className={style.infosContainer}>\n {error ? (\n <FileUploadBlockedIcon className={style.iconError} />\n ) : (\n <FileUploadIcon className={style.icon} />\n )}\n {description ? <div className={style.description}>{description}</div> : null}\n {error ? null : <div className={style.dragAndDropLabel}>{'Drag & Drop here'}</div>}\n </div>\n {button}\n <div>{children(this.handleDragStart, this.handleDragStop)}</div>\n </div>\n )}\n {error ? (\n <span className={classnames(style.errorMessage, disabled && style.disabled)}>\n {error}\n </span>\n ) : (\n resetContent\n )}\n </div>\n );\n }\n}\n\nexport default DragAndDrop;\n"],"mappings":"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"}
@@ -78,31 +78,12 @@
78
78
  background-color: white;
79
79
  }
80
80
 
81
- .preview img,
82
- video {
81
+ .preview img, video {
83
82
  max-width: 100%;
84
83
  max-height: 100%;
85
84
  margin: auto;
86
85
  }
87
86
 
88
- .previewPdf {
89
- composes: preview;
90
- min-height: 150px;
91
- display: flex;
92
- flex-direction: column;
93
- justify-content: space-evenly;
94
- }
95
-
96
- .previewLabelPdf {
97
- text-align: center;
98
- font-family: "Gilroy";
99
- color: cm_grey_300;
100
- padding: 0px 4px;
101
- overflow: hidden;
102
- text-overflow: ellipsis;
103
- max-width: 90%;
104
- white-space: nowrap;
105
- }
106
87
  .infosContainer {
107
88
  width: 100%;
108
89
  height: 100%;
@@ -171,7 +152,7 @@ video {
171
152
  align-items: center;
172
153
  justify-content: space-between;
173
154
  margin-top: 16px;
174
- padding: 8px 14px 8px 1px;
155
+ padding: 4px 8px;
175
156
  font-size: 12px;
176
157
  font-weight: 400;
177
158
  position: relative;
@@ -183,6 +164,9 @@ video {
183
164
  text-overflow: ellipsis;
184
165
  white-space: nowrap;
185
166
  flex-wrap: nowrap;
167
+ position: absolute;
168
+ left: 0;
169
+ right: 15px;
186
170
  }
187
171
 
188
172
  .closeIcon {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/image-upload/index.js"],"names":[],"mappings":";AAQA;;;;;;;;;;;;;;;;;;;gBA8EC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/image-upload/index.js"],"names":[],"mappings":";AAQA;;;;;;;;;;;;;;;;;;;gBAmFC"}
@@ -1,4 +1,7 @@
1
1
  import _isNil from "lodash/fp/isNil";
2
+ import _pipe from "lodash/fp/pipe";
3
+ import _map from "lodash/fp/map";
4
+ import _join from "lodash/fp/join";
2
5
 
3
6
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
7
 
@@ -21,10 +24,10 @@ const ImageUpload = ({
21
24
  onChange,
22
25
  onReset = null,
23
26
  name,
27
+ // See ImagePropType for accepted values
24
28
  labelLink,
25
29
  labelButtonLink,
26
30
  hrefLink,
27
- // See ImagePropType for accepted values
28
31
  imageTypes = ['*'],
29
32
  error = '',
30
33
  buttonAriaLabel,
@@ -35,6 +38,9 @@ const ImageUpload = ({
35
38
  e.preventDefault();
36
39
  return onReset(e);
37
40
  }, [onReset]);
41
+
42
+ const acceptedImages = _pipe(_map(t => `image/${t}`), _join(','))(imageTypes);
43
+
38
44
  const linkCustomStyle = {
39
45
  width: '40px',
40
46
  color: 'red'
@@ -55,7 +61,7 @@ const ImageUpload = ({
55
61
  }, (onDragStart, onDragStop) => /*#__PURE__*/React.createElement("input", {
56
62
  type: "file",
57
63
  name: name,
58
- accept: imageTypes,
64
+ accept: acceptedImages,
59
65
  disabled: loading || disabled,
60
66
  className: style.input,
61
67
  onChange: onChange,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useCallback","PropTypes","DragAndDrop","ImagePropType","Link","style","ImageUpload","title","description","previewLabel","previewContent","uploadLabel","loading","modified","disabled","onChange","onReset","name","labelLink","labelButtonLink","hrefLink","imageTypes","error","buttonAriaLabel","errorButtonLabel","handleReset","e","preventDefault","linkCustomStyle","width","color","onDragStart","onDragStop","input","templateLink","href","download","propTypes","string","func","arrayOf"],"sources":["../../../src/atom/image-upload/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {isNil} from 'lodash/fp';\nimport DragAndDrop from '../drag-and-drop';\nimport {ImagePropType} from '../../util/proptypes';\nimport Link from '../button-link';\nimport style from './style.css';\n\nconst ImageUpload = ({\n title,\n description,\n previewLabel,\n previewContent,\n uploadLabel,\n loading,\n modified,\n disabled = false,\n onChange,\n onReset = null,\n name,\n labelLink,\n labelButtonLink,\n hrefLink,\n // See ImagePropType for accepted values\n imageTypes = ['*'],\n error = '',\n buttonAriaLabel,\n errorButtonLabel\n}) => {\n const handleReset = useCallback(\n e => {\n if (isNil(onReset)) return;\n e.preventDefault();\n return onReset(e);\n },\n [onReset]\n );\n\n const linkCustomStyle = {\n width: '40px',\n color: 'red'\n };\n\n return (\n <div>\n <DragAndDrop\n title={title}\n description={description}\n previewLabel={previewLabel}\n previewContent={previewContent}\n uploadLabel={uploadLabel}\n loading={loading}\n modified={modified}\n onReset={handleReset}\n error={error}\n disabled={disabled}\n buttonAriaLabel={buttonAriaLabel}\n errorButtonLabel={errorButtonLabel}\n >\n {(onDragStart, onDragStop) => (\n <input\n type=\"file\"\n name={name}\n accept={imageTypes}\n disabled={loading || disabled}\n className={style.input}\n onChange={onChange}\n onDragEnter={onDragStart}\n onDrop={onDragStop}\n onDragLeave={onDragStop}\n />\n )}\n </DragAndDrop>\n {labelLink && hrefLink ? (\n <div className={style.templateLink}>\n {labelLink}\n <Link\n type=\"text\"\n customStyle={linkCustomStyle}\n link={{href: hrefLink, download: true}}\n label={labelButtonLink}\n />\n </div>\n ) : null}\n </div>\n );\n};\n\nImageUpload.propTypes = {\n ...DragAndDrop.propTypes,\n name: PropTypes.string,\n onChange: PropTypes.func,\n onReset: PropTypes.func,\n imageTypes: PropTypes.arrayOf(ImagePropType),\n error: PropTypes.string,\n buttonAriaLabel: PropTypes.string,\n errorButtonLabel: PropTypes.string,\n labelLink: PropTypes.string,\n hrefLink: PropTypes.string\n};\n\nexport default ImageUpload;\n"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAeC,WAAf,QAAiC,OAAjC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,WAAP,MAAwB,kBAAxB;AACA,SAAQC,aAAR,QAA4B,sBAA5B;AACA,OAAOC,IAAP,MAAiB,gBAAjB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,WAAW,GAAG,CAAC;EACnBC,KADmB;EAEnBC,WAFmB;EAGnBC,YAHmB;EAInBC,cAJmB;EAKnBC,WALmB;EAMnBC,OANmB;EAOnBC,QAPmB;EAQnBC,QAAQ,GAAG,KARQ;EASnBC,QATmB;EAUnBC,OAAO,GAAG,IAVS;EAWnBC,IAXmB;EAYnBC,SAZmB;EAanBC,eAbmB;EAcnBC,QAdmB;EAenB;EACAC,UAAU,GAAG,CAAC,GAAD,CAhBM;EAiBnBC,KAAK,GAAG,EAjBW;EAkBnBC,eAlBmB;EAmBnBC;AAnBmB,CAAD,KAoBd;EACJ,MAAMC,WAAW,GAAGzB,WAAW,CAC7B0B,CAAC,IAAI;IACH,IAAI,OAAMV,OAAN,CAAJ,EAAoB;IACpBU,CAAC,CAACC,cAAF;IACA,OAAOX,OAAO,CAACU,CAAD,CAAd;EACD,CAL4B,EAM7B,CAACV,OAAD,CAN6B,CAA/B;EASA,MAAMY,eAAe,GAAG;IACtBC,KAAK,EAAE,MADe;IAEtBC,KAAK,EAAE;EAFe,CAAxB;EAKA,oBACE,8CACE,oBAAC,WAAD;IACE,KAAK,EAAEvB,KADT;IAEE,WAAW,EAAEC,WAFf;IAGE,YAAY,EAAEC,YAHhB;IAIE,cAAc,EAAEC,cAJlB;IAKE,WAAW,EAAEC,WALf;IAME,OAAO,EAAEC,OANX;IAOE,QAAQ,EAAEC,QAPZ;IAQE,OAAO,EAAEY,WARX;IASE,KAAK,EAAEH,KATT;IAUE,QAAQ,EAAER,QAVZ;IAWE,eAAe,EAAES,eAXnB;IAYE,gBAAgB,EAAEC;EAZpB,GAcG,CAACO,WAAD,EAAcC,UAAd,kBACC;IACE,IAAI,EAAC,MADP;IAEE,IAAI,EAAEf,IAFR;IAGE,MAAM,EAAEI,UAHV;IAIE,QAAQ,EAAET,OAAO,IAAIE,QAJvB;IAKE,SAAS,EAAET,KAAK,CAAC4B,KALnB;IAME,QAAQ,EAAElB,QANZ;IAOE,WAAW,EAAEgB,WAPf;IAQE,MAAM,EAAEC,UARV;IASE,WAAW,EAAEA;EATf,EAfJ,CADF,EA6BGd,SAAS,IAAIE,QAAb,gBACC;IAAK,SAAS,EAAEf,KAAK,CAAC6B;EAAtB,GACGhB,SADH,eAEE,oBAAC,IAAD;IACE,IAAI,EAAC,MADP;IAEE,WAAW,EAAEU,eAFf;IAGE,IAAI,EAAE;MAACO,IAAI,EAAEf,QAAP;MAAiBgB,QAAQ,EAAE;IAA3B,CAHR;IAIE,KAAK,EAAEjB;EAJT,EAFF,CADD,GAUG,IAvCN,CADF;AA2CD,CA9ED;;AAgFAb,WAAW,CAAC+B,SAAZ,wDACKnC,WAAW,CAACmC,SADjB;EAEEpB,IAAI,EAAEhB,SAAS,CAACqC,MAFlB;EAGEvB,QAAQ,EAAEd,SAAS,CAACsC,IAHtB;EAIEvB,OAAO,EAAEf,SAAS,CAACsC,IAJrB;EAKElB,UAAU,EAAEpB,SAAS,CAACuC,OAAV,CAAkBrC,aAAlB,CALd;EAMEmB,KAAK,EAAErB,SAAS,CAACqC,MANnB;EAOEf,eAAe,EAAEtB,SAAS,CAACqC,MAP7B;EAQEd,gBAAgB,EAAEvB,SAAS,CAACqC,MAR9B;EASEpB,SAAS,EAAEjB,SAAS,CAACqC,MATvB;EAUElB,QAAQ,EAAEnB,SAAS,CAACqC;AAVtB;AAaA,eAAehC,WAAf"}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","PropTypes","DragAndDrop","ImagePropType","Link","style","ImageUpload","title","description","previewLabel","previewContent","uploadLabel","loading","modified","disabled","onChange","onReset","name","labelLink","labelButtonLink","hrefLink","imageTypes","error","buttonAriaLabel","errorButtonLabel","handleReset","e","preventDefault","acceptedImages","t","linkCustomStyle","width","color","onDragStart","onDragStop","input","templateLink","href","download","propTypes","string","func","arrayOf"],"sources":["../../../src/atom/image-upload/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {join, map, pipe, isNil} from 'lodash/fp';\nimport DragAndDrop from '../drag-and-drop';\nimport {ImagePropType} from '../../util/proptypes';\nimport Link from '../button-link';\nimport style from './style.css';\n\nconst ImageUpload = ({\n title,\n description,\n previewLabel,\n previewContent,\n uploadLabel,\n loading,\n modified,\n disabled = false,\n onChange,\n onReset = null,\n name,\n // See ImagePropType for accepted values\n labelLink,\n labelButtonLink,\n hrefLink,\n imageTypes = ['*'],\n error = '',\n buttonAriaLabel,\n errorButtonLabel\n}) => {\n const handleReset = useCallback(\n e => {\n if (isNil(onReset)) return;\n e.preventDefault();\n return onReset(e);\n },\n [onReset]\n );\n\n const acceptedImages = pipe(\n map(t => `image/${t}`),\n join(',')\n )(imageTypes);\n\n const linkCustomStyle = {\n width: '40px',\n color: 'red'\n };\n\n return (\n <div>\n <DragAndDrop\n title={title}\n description={description}\n previewLabel={previewLabel}\n previewContent={previewContent}\n uploadLabel={uploadLabel}\n loading={loading}\n modified={modified}\n onReset={handleReset}\n error={error}\n disabled={disabled}\n buttonAriaLabel={buttonAriaLabel}\n errorButtonLabel={errorButtonLabel}\n >\n {(onDragStart, onDragStop) => (\n <input\n type=\"file\"\n name={name}\n accept={acceptedImages}\n disabled={loading || disabled}\n className={style.input}\n onChange={onChange}\n onDragEnter={onDragStart}\n onDrop={onDragStop}\n onDragLeave={onDragStop}\n />\n )}\n </DragAndDrop>\n {labelLink && hrefLink ? (\n <div className={style.templateLink}>\n {labelLink}\n <Link\n type=\"text\"\n customStyle={linkCustomStyle}\n link={{href: hrefLink, download: true}}\n label={labelButtonLink}\n />\n </div>\n ) : null}\n </div>\n );\n};\n\nImageUpload.propTypes = {\n ...DragAndDrop.propTypes,\n name: PropTypes.string,\n onChange: PropTypes.func,\n onReset: PropTypes.func,\n imageTypes: PropTypes.arrayOf(ImagePropType),\n error: PropTypes.string,\n buttonAriaLabel: PropTypes.string,\n errorButtonLabel: PropTypes.string,\n labelLink: PropTypes.string,\n hrefLink: PropTypes.string\n};\n\nexport default ImageUpload;\n"],"mappings":"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"}
@@ -1,27 +1,38 @@
1
1
  export default InputHtml;
2
- declare class InputHtml extends React.Component<any, any, any> {
3
- static propTypes: {
4
- title: PropTypes.Requireable<string>;
5
- placeholder: PropTypes.Requireable<string>;
6
- disabled: PropTypes.Requireable<boolean>;
7
- value: PropTypes.Requireable<string>;
8
- error: PropTypes.Requireable<string>;
9
- onChange: PropTypes.Requireable<(...args: any[]) => any>;
10
- description: PropTypes.Requireable<string>;
11
- };
12
- static getDerivedStateFromProps(props: any, state: any): {
13
- text: any;
14
- preview: any;
15
- } | null;
16
- constructor(props: any, context: any);
17
- state: {
18
- text: any;
19
- preview: boolean;
20
- };
21
- handleChange(e: any): void;
22
- handlePreview(e: any): void;
23
- render(): JSX.Element;
2
+ declare function InputHtml(props: any, legacyContext: any): JSX.Element;
3
+ declare namespace InputHtml {
4
+ namespace propTypes {
5
+ const title: PropTypes.Requireable<string>;
6
+ const placeholder: PropTypes.Requireable<string>;
7
+ const disabled: PropTypes.Requireable<boolean>;
8
+ const value: PropTypes.Requireable<string>;
9
+ const error: PropTypes.Requireable<string>;
10
+ const onChange: PropTypes.Requireable<(...args: any[]) => any>;
11
+ const description: PropTypes.Requireable<string>;
12
+ }
13
+ namespace contextTypes {
14
+ const skin: PropTypes.Requireable<PropTypes.InferProps<{
15
+ common: PropTypes.Requireable<{
16
+ [x: string]: any;
17
+ }>;
18
+ images: PropTypes.Requireable<PropTypes.InferProps<{
19
+ 'logo-mobile': PropTypes.Requireable<any>;
20
+ logo: PropTypes.Requireable<any>;
21
+ 'logo-email': PropTypes.Requireable<any>;
22
+ login: PropTypes.Requireable<any>;
23
+ }>>;
24
+ icons: PropTypes.Requireable<{
25
+ [x: string]: any;
26
+ }>;
27
+ mod: PropTypes.Requireable<{
28
+ [x: string]: any;
29
+ }>;
30
+ courses: PropTypes.Requireable<any[]>;
31
+ texts: PropTypes.Requireable<{
32
+ [x: string]: any;
33
+ }>;
34
+ }>>;
35
+ }
24
36
  }
25
- import React from "react";
26
37
  import PropTypes from "prop-types";
27
38
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/input-html/index.js"],"names":[],"mappings":";AAUA;IACE;;;;;;;;MAQE;IAEF;;;aASC;IAED,sCAQC;IANC;;;MAGC;IAKH,2BAQC;IAED,4BAMC;IAED,sBAmCC;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/input-html/index.js"],"names":[],"mappings":";AAWA,wEA4DC"}
@@ -1,107 +1,73 @@
1
- import _isUndefined from "lodash/fp/isUndefined";
2
1
  import _getOr from "lodash/fp/getOr";
3
2
  import _noop from "lodash/fp/noop";
4
- import React from 'react';
3
+ import React, { useCallback, useState } from 'react';
5
4
  import PropTypes from 'prop-types';
6
5
  import { NovaLineBusinessCircleView as PreviewIcon, NovaLineContentEditionPencil2 as PencilIcon } from '@coorpacademy/nova-icons';
6
+ import Provider, { GetSkinFromContext } from '../provider';
7
7
  import InputPreview from './input-preview';
8
8
  import style from './style.css';
9
9
 
10
- class InputHtml extends React.Component {
11
- static getDerivedStateFromProps(props, state) {
12
- const {
13
- value
14
- } = props;
15
- if (_isUndefined(value)) return null;
16
- return {
17
- text: value,
18
- preview: state.preview
19
- };
20
- }
21
-
22
- constructor(props, context) {
23
- super(props);
24
- this.state = {
25
- text: _getOr('', 'value', props),
26
- preview: true
27
- };
28
- this.handleChange = this.handleChange.bind(this);
29
- this.handlePreview = this.handlePreview.bind(this);
30
- }
31
-
32
- handleChange(e) {
33
- const {
34
- onChange = _noop
35
- } = this.props;
36
- const value = e.target.value;
37
- this.setState(state => ({
38
- text: value,
39
- preview: state.preview
40
- }));
41
- onChange(value);
42
- }
43
-
44
- handlePreview(e) {
10
+ const InputHtml = (props, legacyContext) => {
11
+ const {
12
+ value = '',
13
+ onChange = _noop
14
+ } = props;
15
+ const [text, setText] = useState(value);
16
+ const [preview, setPreview] = useState(true);
17
+ const handleChange = useCallback(e => {
18
+ const _value = e.target.value;
19
+ setText(_value);
20
+ onChange(_value);
21
+ }, [onChange]);
22
+ const handlePreview = useCallback(e => {
45
23
  e.preventDefault();
46
- this.setState(state => ({
47
- text: state.text,
48
- preview: !state.preview
49
- }));
50
- }
51
-
52
- render() {
53
- const {
54
- skin
55
- } = this.context;
56
-
57
- const mediumColor = _getOr('#999999', 'common.medium', skin);
24
+ setPreview(!preview);
25
+ }, [preview, setPreview]);
26
+ const skin = GetSkinFromContext(legacyContext);
58
27
 
59
- const {
60
- title,
61
- placeholder,
62
- error,
63
- description,
64
- disabled
65
- } = this.props;
66
- const {
67
- text,
68
- preview
69
- } = this.state;
70
- const className = error ? style.error : style.default;
71
- const iconContent = !preview ? /*#__PURE__*/React.createElement(PreviewIcon, {
72
- style: {
73
- color: mediumColor
74
- },
75
- height: 16
76
- }) : /*#__PURE__*/React.createElement(PencilIcon, {
77
- style: {
78
- color: mediumColor
79
- },
80
- height: 16
81
- });
82
- return /*#__PURE__*/React.createElement("div", {
83
- className: className
84
- }, /*#__PURE__*/React.createElement("label", null, /*#__PURE__*/React.createElement("span", {
85
- className: style.title
86
- }, `${title} `), /*#__PURE__*/React.createElement("div", {
87
- className: style.contentWrapper
88
- }, /*#__PURE__*/React.createElement(InputPreview, {
89
- title: title,
90
- text: text,
91
- placeholder: placeholder,
92
- onChange: this.handleChange,
93
- disabled: disabled,
94
- preview: preview,
95
- className: style.input
96
- })), /*#__PURE__*/React.createElement("span", {
97
- className: style.toggle,
98
- onClick: this.handlePreview
99
- }, iconContent)), /*#__PURE__*/React.createElement("div", {
100
- className: style.description
101
- }, description));
102
- }
28
+ const mediumColor = _getOr('#999999', 'common.medium', skin);
103
29
 
104
- }
30
+ const {
31
+ title,
32
+ placeholder,
33
+ error,
34
+ description,
35
+ disabled
36
+ } = props;
37
+ const className = error ? style.error : style.default;
38
+ const iconContent = !preview ? /*#__PURE__*/React.createElement(PreviewIcon, {
39
+ style: {
40
+ color: mediumColor
41
+ },
42
+ height: 16
43
+ }) : /*#__PURE__*/React.createElement(PencilIcon, {
44
+ style: {
45
+ color: mediumColor
46
+ },
47
+ height: 16
48
+ });
49
+ return /*#__PURE__*/React.createElement("div", {
50
+ className: className
51
+ }, /*#__PURE__*/React.createElement("label", null, /*#__PURE__*/React.createElement("span", {
52
+ className: style.title
53
+ }, `${title} `), /*#__PURE__*/React.createElement("div", {
54
+ className: style.contentWrapper
55
+ }, /*#__PURE__*/React.createElement(InputPreview, {
56
+ title: title,
57
+ text: text,
58
+ placeholder: placeholder,
59
+ onChange: handleChange,
60
+ disabled: disabled,
61
+ preview: preview,
62
+ className: style.input
63
+ })), /*#__PURE__*/React.createElement("span", {
64
+ "data-testid": preview ? 'pencil-icon' : 'preview-icon',
65
+ className: style.toggle,
66
+ onClick: handlePreview
67
+ }, iconContent)), /*#__PURE__*/React.createElement("div", {
68
+ className: style.description
69
+ }, description));
70
+ };
105
71
 
106
72
  InputHtml.propTypes = process.env.NODE_ENV !== "production" ? {
107
73
  title: PropTypes.string,
@@ -112,5 +78,8 @@ InputHtml.propTypes = process.env.NODE_ENV !== "production" ? {
112
78
  onChange: PropTypes.func,
113
79
  description: PropTypes.string
114
80
  } : {};
81
+ InputHtml.contextTypes = {
82
+ skin: Provider.childContextTypes.skin
83
+ };
115
84
  export default InputHtml;
116
85
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PropTypes","NovaLineBusinessCircleView","PreviewIcon","NovaLineContentEditionPencil2","PencilIcon","InputPreview","style","InputHtml","Component","getDerivedStateFromProps","props","state","value","text","preview","constructor","context","handleChange","bind","handlePreview","e","onChange","target","setState","preventDefault","render","skin","mediumColor","title","placeholder","error","description","disabled","className","default","iconContent","color","contentWrapper","input","toggle","propTypes","string","bool","func"],"sources":["../../../src/atom/input-html/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, getOr, isUndefined} from 'lodash/fp';\nimport {\n NovaLineBusinessCircleView as PreviewIcon,\n NovaLineContentEditionPencil2 as PencilIcon\n} from '@coorpacademy/nova-icons';\nimport InputPreview from './input-preview';\nimport style from './style.css';\n\nclass InputHtml extends React.Component {\n static propTypes = {\n title: PropTypes.string,\n placeholder: PropTypes.string,\n disabled: PropTypes.bool,\n value: PropTypes.string,\n error: PropTypes.string,\n onChange: PropTypes.func,\n description: PropTypes.string\n };\n\n static getDerivedStateFromProps(props, state) {\n const {value} = props;\n\n if (isUndefined(value)) return null;\n\n return {\n text: value,\n preview: state.preview\n };\n }\n\n constructor(props, context) {\n super(props);\n this.state = {\n text: getOr('', 'value', props),\n preview: true\n };\n this.handleChange = this.handleChange.bind(this);\n this.handlePreview = this.handlePreview.bind(this);\n }\n\n handleChange(e) {\n const {onChange = noop} = this.props;\n const value = e.target.value;\n this.setState(state => ({\n text: value,\n preview: state.preview\n }));\n onChange(value);\n }\n\n handlePreview(e) {\n e.preventDefault();\n this.setState(state => ({\n text: state.text,\n preview: !state.preview\n }));\n }\n\n render() {\n const {skin} = this.context;\n const mediumColor = getOr('#999999', 'common.medium', skin);\n\n const {title, placeholder, error, description, disabled} = this.props;\n const {text, preview} = this.state;\n\n const className = error ? style.error : style.default;\n const iconContent = !preview ? (\n <PreviewIcon style={{color: mediumColor}} height={16} />\n ) : (\n <PencilIcon style={{color: mediumColor}} height={16} />\n );\n return (\n <div className={className}>\n <label>\n <span className={style.title}>{`${title} `}</span>\n <div className={style.contentWrapper}>\n <InputPreview\n title={title}\n text={text}\n placeholder={placeholder}\n onChange={this.handleChange}\n disabled={disabled}\n preview={preview}\n className={style.input}\n />\n </div>\n <span className={style.toggle} onClick={this.handlePreview}>\n {iconContent}\n </span>\n </label>\n <div className={style.description}>{description}</div>\n </div>\n );\n }\n}\nexport default InputHtml;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","useState","PropTypes","NovaLineBusinessCircleView","PreviewIcon","NovaLineContentEditionPencil2","PencilIcon","Provider","GetSkinFromContext","InputPreview","style","InputHtml","props","legacyContext","value","onChange","text","setText","preview","setPreview","handleChange","e","_value","target","handlePreview","preventDefault","skin","mediumColor","title","placeholder","error","description","disabled","className","default","iconContent","color","contentWrapper","input","toggle","propTypes","string","bool","func","contextTypes","childContextTypes"],"sources":["../../../src/atom/input-html/index.js"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, getOr} from 'lodash/fp';\nimport {\n NovaLineBusinessCircleView as PreviewIcon,\n NovaLineContentEditionPencil2 as PencilIcon\n} from '@coorpacademy/nova-icons';\nimport Provider, {GetSkinFromContext} from '../provider';\nimport InputPreview from './input-preview';\nimport style from './style.css';\n\nconst InputHtml = (props, legacyContext) => {\n const {value = '', onChange = noop} = props;\n const [text, setText] = useState(value);\n const [preview, setPreview] = useState(true);\n\n const handleChange = useCallback(\n e => {\n const _value = e.target.value;\n setText(_value);\n onChange(_value);\n },\n [onChange]\n );\n\n const handlePreview = useCallback(\n e => {\n e.preventDefault();\n setPreview(!preview);\n },\n [preview, setPreview]\n );\n\n const skin = GetSkinFromContext(legacyContext);\n const mediumColor = getOr('#999999', 'common.medium', skin);\n\n const {title, placeholder, error, description, disabled} = props;\n\n const className = error ? style.error : style.default;\n const iconContent = !preview ? (\n <PreviewIcon style={{color: mediumColor}} height={16} />\n ) : (\n <PencilIcon style={{color: mediumColor}} height={16} />\n );\n\n return (\n <div className={className}>\n <label>\n <span className={style.title}>{`${title} `}</span>\n <div className={style.contentWrapper}>\n <InputPreview\n title={title}\n text={text}\n placeholder={placeholder}\n onChange={handleChange}\n disabled={disabled}\n preview={preview}\n className={style.input}\n />\n </div>\n <span\n data-testid={preview ? 'pencil-icon' : 'preview-icon'}\n className={style.toggle}\n onClick={handlePreview}\n >\n {iconContent}\n </span>\n </label>\n <div className={style.description}>{description}</div>\n </div>\n );\n};\n\nInputHtml.propTypes = {\n title: PropTypes.string,\n placeholder: PropTypes.string,\n disabled: PropTypes.bool,\n value: PropTypes.string,\n error: PropTypes.string,\n onChange: PropTypes.func,\n description: PropTypes.string\n};\n\nInputHtml.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default InputHtml;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"input-preview.d.ts","sourceRoot":"","sources":["../../../src/atom/input-html/input-preview.js"],"names":[],"mappings":";AAKA,qEAkBC"}
1
+ {"version":3,"file":"input-preview.d.ts","sourceRoot":"","sources":["../../../src/atom/input-html/input-preview.js"],"names":[],"mappings":";AAKA,qEAqBC"}
@@ -14,6 +14,7 @@ const InputPreview = (props, context) => {
14
14
  className
15
15
  } = props;
16
16
  return !preview ? /*#__PURE__*/React.createElement("textarea", {
17
+ "data-testid": "input-preview-textarea",
17
18
  className: className,
18
19
  name: title,
19
20
  value: text,
@@ -21,6 +22,7 @@ const InputPreview = (props, context) => {
21
22
  onChange: onChange,
22
23
  disabled: disabled
23
24
  }) : /*#__PURE__*/React.createElement("div", {
25
+ "data-testid": "input-preview",
24
26
  className: classnames(style.preview, className) // eslint-disable-next-line react/no-danger
25
27
  ,
26
28
  dangerouslySetInnerHTML: {
@@ -1 +1 @@
1
- {"version":3,"file":"input-preview.js","names":["React","PropTypes","classnames","style","InputPreview","props","context","title","text","placeholder","onChange","disabled","preview","className","__html","propTypes","string","isRequired","bool","func"],"sources":["../../../src/atom/input-html/input-preview.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './input-preview.css';\n\nconst InputPreview = (props, context) => {\n const {title, text, placeholder, onChange, disabled, preview, className} = props;\n return !preview ? (\n <textarea\n className={className}\n name={title}\n value={text}\n placeholder={placeholder}\n onChange={onChange}\n disabled={disabled}\n />\n ) : (\n <div\n className={classnames(style.preview, className)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: text}}\n />\n );\n};\n\nInputPreview.propTypes = {\n text: PropTypes.string.isRequired,\n title: PropTypes.string,\n placeholder: PropTypes.string,\n disabled: PropTypes.bool,\n preview: PropTypes.bool.isRequired,\n onChange: PropTypes.func,\n className: PropTypes.string\n};\nexport default InputPreview;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,KAAP,MAAkB,qBAAlB;;AAEA,MAAMC,YAAY,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACvC,MAAM;IAACC,KAAD;IAAQC,IAAR;IAAcC,WAAd;IAA2BC,QAA3B;IAAqCC,QAArC;IAA+CC,OAA/C;IAAwDC;EAAxD,IAAqER,KAA3E;EACA,OAAO,CAACO,OAAD,gBACL;IACE,SAAS,EAAEC,SADb;IAEE,IAAI,EAAEN,KAFR;IAGE,KAAK,EAAEC,IAHT;IAIE,WAAW,EAAEC,WAJf;IAKE,QAAQ,EAAEC,QALZ;IAME,QAAQ,EAAEC;EANZ,EADK,gBAUL;IACE,SAAS,EAAET,UAAU,CAACC,KAAK,CAACS,OAAP,EAAgBC,SAAhB,CADvB,CAEE;IAFF;IAGE,uBAAuB,EAAE;MAACC,MAAM,EAAEN;IAAT;EAH3B,EAVF;AAgBD,CAlBD;;AAoBAJ,YAAY,CAACW,SAAb,2CAAyB;EACvBP,IAAI,EAAEP,SAAS,CAACe,MAAV,CAAiBC,UADA;EAEvBV,KAAK,EAAEN,SAAS,CAACe,MAFM;EAGvBP,WAAW,EAAER,SAAS,CAACe,MAHA;EAIvBL,QAAQ,EAAEV,SAAS,CAACiB,IAJG;EAKvBN,OAAO,EAAEX,SAAS,CAACiB,IAAV,CAAeD,UALD;EAMvBP,QAAQ,EAAET,SAAS,CAACkB,IANG;EAOvBN,SAAS,EAAEZ,SAAS,CAACe;AAPE,CAAzB;AASA,eAAeZ,YAAf"}
1
+ {"version":3,"file":"input-preview.js","names":["React","PropTypes","classnames","style","InputPreview","props","context","title","text","placeholder","onChange","disabled","preview","className","__html","propTypes","string","isRequired","bool","func"],"sources":["../../../src/atom/input-html/input-preview.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './input-preview.css';\n\nconst InputPreview = (props, context) => {\n const {title, text, placeholder, onChange, disabled, preview, className} = props;\n\n return !preview ? (\n <textarea\n data-testid=\"input-preview-textarea\"\n className={className}\n name={title}\n value={text}\n placeholder={placeholder}\n onChange={onChange}\n disabled={disabled}\n />\n ) : (\n <div\n data-testid=\"input-preview\"\n className={classnames(style.preview, className)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: text}}\n />\n );\n};\n\nInputPreview.propTypes = {\n text: PropTypes.string.isRequired,\n title: PropTypes.string,\n placeholder: PropTypes.string,\n disabled: PropTypes.bool,\n preview: PropTypes.bool.isRequired,\n onChange: PropTypes.func,\n className: PropTypes.string\n};\nexport default InputPreview;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,KAAP,MAAkB,qBAAlB;;AAEA,MAAMC,YAAY,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EACvC,MAAM;IAACC,KAAD;IAAQC,IAAR;IAAcC,WAAd;IAA2BC,QAA3B;IAAqCC,QAArC;IAA+CC,OAA/C;IAAwDC;EAAxD,IAAqER,KAA3E;EAEA,OAAO,CAACO,OAAD,gBACL;IACE,eAAY,wBADd;IAEE,SAAS,EAAEC,SAFb;IAGE,IAAI,EAAEN,KAHR;IAIE,KAAK,EAAEC,IAJT;IAKE,WAAW,EAAEC,WALf;IAME,QAAQ,EAAEC,QANZ;IAOE,QAAQ,EAAEC;EAPZ,EADK,gBAWL;IACE,eAAY,eADd;IAEE,SAAS,EAAET,UAAU,CAACC,KAAK,CAACS,OAAP,EAAgBC,SAAhB,CAFvB,CAGE;IAHF;IAIE,uBAAuB,EAAE;MAACC,MAAM,EAAEN;IAAT;EAJ3B,EAXF;AAkBD,CArBD;;AAuBAJ,YAAY,CAACW,SAAb,2CAAyB;EACvBP,IAAI,EAAEP,SAAS,CAACe,MAAV,CAAiBC,UADA;EAEvBV,KAAK,EAAEN,SAAS,CAACe,MAFM;EAGvBP,WAAW,EAAER,SAAS,CAACe,MAHA;EAIvBL,QAAQ,EAAEV,SAAS,CAACiB,IAJG;EAKvBN,OAAO,EAAEX,SAAS,CAACiB,IAAV,CAAeD,UALD;EAMvBP,QAAQ,EAAET,SAAS,CAACkB,IANG;EAOvBN,SAAS,EAAEZ,SAAS,CAACe;AAPE,CAAzB;AASA,eAAeZ,YAAf"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/input-textarea/index.js"],"names":[],"mappings":";AAkBA,wDA+DC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/input-textarea/index.js"],"names":[],"mappings":";AAkBA,wDAgEC"}
@@ -64,7 +64,8 @@ const InputTextarea = props => {
64
64
  value: value,
65
65
  placeholder: placeholder,
66
66
  onChange: handleChange,
67
- disabled: disabled
67
+ disabled: disabled,
68
+ "data-testid": name
68
69
  }), errorIconView, validIconView, hintView), descriptionView);
69
70
  };
70
71
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useMemo","PropTypes","classnames","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidStatusClose","ErrorIcon","NovaCompositionCoorpacademyInformationIcon","InfoIcon","getClassState","style","themeStyle","setup","coorpmanager","cockpit","default","InputTextarea","props","title","propsTitle","name","placeholder","value","hint","theme","onChange","error","valid","description","disabled","modified","mainClass","className","handleChange","e","target","descriptionView","toolTipView","infoIconWrapper","infoIcon","descriptionLabel","hintView","__html","errorIconView","leftIcon","validIconView","noValue","propTypes","string","oneOf","bool","func"],"sources":["../../../src/atom/input-textarea/index.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, keys, isEmpty} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidStatusClose as ErrorIcon,\n NovaCompositionCoorpacademyInformationIcon as InfoIcon\n} from '@coorpacademy/nova-icons';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setup,\n coorpmanager: style.coorpmanager,\n cockpit: style.cockpit,\n default: style.default\n};\nconst InputTextarea = props => {\n const {\n title: propsTitle,\n name,\n placeholder,\n value,\n hint,\n theme = 'default',\n onChange = noop,\n error,\n valid,\n description,\n disabled,\n modified = false\n } = props;\n\n const mainClass = themeStyle[theme];\n const className = getClassState(style.default, style.modified, style.error, modified, error);\n const handleChange = useMemo(() => e => onChange(e.target.value), [onChange]);\n\n const descriptionView =\n description && theme !== 'coorpmanager' ? (\n <div className={style.description}>{description}</div>\n ) : null;\n const toolTipView =\n description && theme === 'coorpmanager' ? (\n <div className={style.infoIconWrapper}>\n <InfoIcon className={style.infoIcon} />\n <div className={style.descriptionLabel}>{description}</div>\n </div>\n ) : null;\n const hintView =\n theme === 'coorpmanager' ? (\n <div\n className={style.hint}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: error || hint}}\n />\n ) : null;\n const errorIconView = error ? <ErrorIcon className={style.leftIcon} /> : null;\n const validIconView = valid ? <CheckIcon className={style.leftIcon} /> : null;\n\n return (\n <div className={classnames(mainClass, className, disabled && style.disabled)}>\n <label>\n <span className={classnames(style.title, isEmpty(value) && style.noValue)}>\n {propsTitle}\n {toolTipView}\n </span>\n <textarea\n name={name}\n value={value}\n placeholder={placeholder}\n onChange={handleChange}\n disabled={disabled}\n />\n {errorIconView}\n {validIconView}\n {hintView}\n </label>\n {descriptionView}\n </div>\n );\n};\n\nInputTextarea.propTypes = {\n placeholder: PropTypes.string,\n title: PropTypes.string,\n name: PropTypes.string,\n theme: PropTypes.oneOf(keys(themeStyle)),\n disabled: PropTypes.bool,\n value: PropTypes.string,\n hint: PropTypes.string,\n error: PropTypes.string,\n onChange: PropTypes.func,\n description: PropTypes.string,\n modified: PropTypes.bool,\n valid: PropTypes.bool\n};\nexport default InputTextarea;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useMemo","PropTypes","classnames","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidStatusClose","ErrorIcon","NovaCompositionCoorpacademyInformationIcon","InfoIcon","getClassState","style","themeStyle","setup","coorpmanager","cockpit","default","InputTextarea","props","title","propsTitle","name","placeholder","value","hint","theme","onChange","error","valid","description","disabled","modified","mainClass","className","handleChange","e","target","descriptionView","toolTipView","infoIconWrapper","infoIcon","descriptionLabel","hintView","__html","errorIconView","leftIcon","validIconView","noValue","propTypes","string","oneOf","bool","func"],"sources":["../../../src/atom/input-textarea/index.js"],"sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport {noop, keys, isEmpty} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidStatusClose as ErrorIcon,\n NovaCompositionCoorpacademyInformationIcon as InfoIcon\n} from '@coorpacademy/nova-icons';\nimport getClassState from '../../util/get-class-state';\nimport style from './style.css';\n\nconst themeStyle = {\n setup: style.setup,\n coorpmanager: style.coorpmanager,\n cockpit: style.cockpit,\n default: style.default\n};\nconst InputTextarea = props => {\n const {\n title: propsTitle,\n name,\n placeholder,\n value,\n hint,\n theme = 'default',\n onChange = noop,\n error,\n valid,\n description,\n disabled,\n modified = false\n } = props;\n\n const mainClass = themeStyle[theme];\n const className = getClassState(style.default, style.modified, style.error, modified, error);\n const handleChange = useMemo(() => e => onChange(e.target.value), [onChange]);\n\n const descriptionView =\n description && theme !== 'coorpmanager' ? (\n <div className={style.description}>{description}</div>\n ) : null;\n const toolTipView =\n description && theme === 'coorpmanager' ? (\n <div className={style.infoIconWrapper}>\n <InfoIcon className={style.infoIcon} />\n <div className={style.descriptionLabel}>{description}</div>\n </div>\n ) : null;\n const hintView =\n theme === 'coorpmanager' ? (\n <div\n className={style.hint}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: error || hint}}\n />\n ) : null;\n const errorIconView = error ? <ErrorIcon className={style.leftIcon} /> : null;\n const validIconView = valid ? <CheckIcon className={style.leftIcon} /> : null;\n\n return (\n <div className={classnames(mainClass, className, disabled && style.disabled)}>\n <label>\n <span className={classnames(style.title, isEmpty(value) && style.noValue)}>\n {propsTitle}\n {toolTipView}\n </span>\n <textarea\n name={name}\n value={value}\n placeholder={placeholder}\n onChange={handleChange}\n disabled={disabled}\n data-testid={name}\n />\n {errorIconView}\n {validIconView}\n {hintView}\n </label>\n {descriptionView}\n </div>\n );\n};\n\nInputTextarea.propTypes = {\n placeholder: PropTypes.string,\n title: PropTypes.string,\n name: PropTypes.string,\n theme: PropTypes.oneOf(keys(themeStyle)),\n disabled: PropTypes.bool,\n value: PropTypes.string,\n hint: PropTypes.string,\n error: PropTypes.string,\n onChange: PropTypes.func,\n description: PropTypes.string,\n modified: PropTypes.bool,\n valid: PropTypes.bool\n};\nexport default InputTextarea;\n"],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ import PropTypes from 'prop-types';
3
+ declare const propTypes: {
4
+ name: PropTypes.Validator<string>;
5
+ onAnimationEnd: PropTypes.Requireable<(...args: any[]) => any>;
6
+ animated: PropTypes.Requireable<boolean>;
7
+ className: PropTypes.Requireable<string>;
8
+ };
9
+ export declare type ChildProps = {
10
+ child: React.ReactElement;
11
+ onAnimationEnd: (name: string) => void;
12
+ className: string;
13
+ name: string;
14
+ };
15
+ export default propTypes;
16
+ //# sourceMappingURL=child-prop-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child-prop-types.d.ts","sourceRoot":"","sources":["../../../src/hoc/transition/child-prop-types.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,QAAA,MAAM,SAAS;;;;;CAKd,CAAC;AAEF,oBAAY,UAAU,GAAG;IACvB,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC;IAC1B,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAe,SAAS,CAAC"}