@coorpacademy/components 11.11.16-alpha.11 → 11.11.16-alpha.12
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.
- package/es/atom/drag-and-drop/index.d.ts +0 -2
- package/es/atom/drag-and-drop/index.d.ts.map +1 -1
- package/es/atom/drag-and-drop/index.js +2 -26
- package/es/atom/drag-and-drop/index.js.map +1 -1
- package/es/atom/drag-and-drop/style.css +5 -21
- package/es/atom/image-upload/index.d.ts +1 -5
- package/es/atom/image-upload/index.d.ts.map +1 -1
- package/es/atom/image-upload/index.js +10 -8
- package/es/atom/image-upload/index.js.map +1 -1
- package/es/atom/input-html/index.d.ts +34 -23
- package/es/atom/input-html/index.d.ts.map +1 -1
- package/es/atom/input-html/index.js +63 -94
- package/es/atom/input-html/index.js.map +1 -1
- package/es/atom/input-html/input-preview.d.ts.map +1 -1
- package/es/atom/input-html/input-preview.js +2 -0
- package/es/atom/input-html/input-preview.js.map +1 -1
- package/es/atom/input-textarea/index.d.ts.map +1 -1
- package/es/atom/input-textarea/index.js +2 -1
- package/es/atom/input-textarea/index.js.map +1 -1
- package/es/atom/video-upload/index.d.ts +0 -2
- package/es/molecule/brand-form-group/index.d.ts +0 -4
- package/es/molecule/drag-and-drop-wrapper/index.d.ts +0 -2
- package/es/molecule/drag-and-drop-wrapper/style.css +1 -1
- package/es/molecule/expandable-item/index.d.ts +26 -0
- package/es/molecule/expandable-item/index.d.ts.map +1 -0
- package/es/molecule/expandable-item/index.js +51 -0
- package/es/molecule/expandable-item/index.js.map +1 -0
- package/es/molecule/expandable-item/style.css +129 -0
- package/es/molecule/expandable-list/index.d.ts +16 -0
- package/es/molecule/expandable-list/index.d.ts.map +1 -0
- package/es/molecule/expandable-list/index.js +34 -0
- package/es/molecule/expandable-list/index.js.map +1 -0
- package/es/molecule/expandable-list/style.css +25 -0
- package/es/molecule/hero/index.d.ts +2 -0
- package/es/molecule/hero/index.d.ts.map +1 -1
- package/es/molecule/hero/index.js +14 -4
- package/es/molecule/hero/index.js.map +1 -1
- package/es/molecule/hero/style.css +42 -0
- package/es/molecule/menu-links/index.d.ts +18 -0
- package/es/molecule/menu-links/index.d.ts.map +1 -0
- package/es/molecule/menu-links/index.js +43 -0
- package/es/molecule/menu-links/index.js.map +1 -0
- package/es/molecule/menu-links/style.css +87 -0
- package/es/molecule/privacy-policy-contact/index.d.ts +18 -0
- package/es/molecule/privacy-policy-contact/index.d.ts.map +1 -0
- package/es/molecule/privacy-policy-contact/index.js +31 -0
- package/es/molecule/privacy-policy-contact/index.js.map +1 -0
- package/es/molecule/privacy-policy-contact/style.css +37 -0
- package/es/molecule/privacy-policy-download/index.d.ts +30 -0
- package/es/molecule/privacy-policy-download/index.d.ts.map +1 -0
- package/es/molecule/privacy-policy-download/index.js +30 -0
- package/es/molecule/privacy-policy-download/index.js.map +1 -0
- package/es/molecule/privacy-policy-download/style.css +42 -0
- package/es/molecule/setup-slide/index.d.ts +0 -2
- package/es/molecule/setup-slider/index.d.ts +0 -2
- package/es/molecule/title-and-checkbox-wrapper/index.d.ts +0 -2
- package/es/organism/brand-form/index.d.ts +0 -4
- package/es/organism/rewards-form/index.d.ts +0 -2
- package/es/organism/wizard-contents/index.d.ts +0 -6
- package/es/template/back-office/brand-update/index.d.ts +0 -10
- package/es/template/cockpit/jw-uploader/index.d.ts +0 -2
- package/es/template/common/privacy-policy-page/index.d.ts +59 -0
- package/es/template/common/privacy-policy-page/index.d.ts.map +1 -0
- package/es/template/common/privacy-policy-page/index.js +47 -0
- package/es/template/common/privacy-policy-page/index.js.map +1 -0
- package/es/template/common/privacy-policy-page/style.css +78 -0
- package/es/util/button-icons.d.ts +0 -1
- package/es/util/button-icons.d.ts.map +1 -1
- package/es/util/button-icons.js +2 -3
- package/es/util/button-icons.js.map +1 -1
- package/es/util/proptypes.d.ts.map +1 -1
- package/es/util/proptypes.js +2 -2
- package/es/util/proptypes.js.map +1 -1
- package/lib/atom/drag-and-drop/index.d.ts +0 -2
- package/lib/atom/drag-and-drop/index.d.ts.map +1 -1
- package/lib/atom/drag-and-drop/index.js +2 -26
- package/lib/atom/drag-and-drop/index.js.map +1 -1
- package/lib/atom/drag-and-drop/style.css +5 -21
- package/lib/atom/image-upload/index.d.ts +1 -5
- package/lib/atom/image-upload/index.d.ts.map +1 -1
- package/lib/atom/image-upload/index.js +11 -8
- package/lib/atom/image-upload/index.js.map +1 -1
- package/lib/atom/input-html/index.d.ts +34 -23
- package/lib/atom/input-html/index.d.ts.map +1 -1
- package/lib/atom/input-html/index.js +67 -94
- package/lib/atom/input-html/index.js.map +1 -1
- package/lib/atom/input-html/input-preview.d.ts.map +1 -1
- package/lib/atom/input-html/input-preview.js +2 -0
- package/lib/atom/input-html/input-preview.js.map +1 -1
- package/lib/atom/input-textarea/index.d.ts.map +1 -1
- package/lib/atom/input-textarea/index.js +2 -1
- package/lib/atom/input-textarea/index.js.map +1 -1
- package/lib/atom/video-upload/index.d.ts +0 -2
- package/lib/molecule/brand-form-group/index.d.ts +0 -4
- package/lib/molecule/drag-and-drop-wrapper/index.d.ts +0 -2
- package/lib/molecule/drag-and-drop-wrapper/style.css +1 -1
- package/lib/molecule/expandable-item/index.d.ts +26 -0
- package/lib/molecule/expandable-item/index.d.ts.map +1 -0
- package/lib/molecule/expandable-item/index.js +66 -0
- package/lib/molecule/expandable-item/index.js.map +1 -0
- package/lib/molecule/expandable-item/style.css +129 -0
- package/lib/molecule/expandable-list/index.d.ts +16 -0
- package/lib/molecule/expandable-list/index.d.ts.map +1 -0
- package/lib/molecule/expandable-list/index.js +48 -0
- package/lib/molecule/expandable-list/index.js.map +1 -0
- package/lib/molecule/expandable-list/style.css +25 -0
- package/lib/molecule/hero/index.d.ts +2 -0
- package/lib/molecule/hero/index.d.ts.map +1 -1
- package/lib/molecule/hero/index.js +14 -4
- package/lib/molecule/hero/index.js.map +1 -1
- package/lib/molecule/hero/style.css +42 -0
- package/lib/molecule/menu-links/index.d.ts +18 -0
- package/lib/molecule/menu-links/index.d.ts.map +1 -0
- package/lib/molecule/menu-links/index.js +54 -0
- package/lib/molecule/menu-links/index.js.map +1 -0
- package/lib/molecule/menu-links/style.css +87 -0
- package/lib/molecule/privacy-policy-contact/index.d.ts +18 -0
- package/lib/molecule/privacy-policy-contact/index.d.ts.map +1 -0
- package/lib/molecule/privacy-policy-contact/index.js +44 -0
- package/lib/molecule/privacy-policy-contact/index.js.map +1 -0
- package/lib/molecule/privacy-policy-contact/style.css +37 -0
- package/lib/molecule/privacy-policy-download/index.d.ts +30 -0
- package/lib/molecule/privacy-policy-download/index.d.ts.map +1 -0
- package/lib/molecule/privacy-policy-download/index.js +41 -0
- package/lib/molecule/privacy-policy-download/index.js.map +1 -0
- package/lib/molecule/privacy-policy-download/style.css +42 -0
- package/lib/molecule/setup-slide/index.d.ts +0 -2
- package/lib/molecule/setup-slider/index.d.ts +0 -2
- package/lib/molecule/title-and-checkbox-wrapper/index.d.ts +0 -2
- package/lib/organism/brand-form/index.d.ts +0 -4
- package/lib/organism/rewards-form/index.d.ts +0 -2
- package/lib/organism/wizard-contents/index.d.ts +0 -6
- package/lib/template/back-office/brand-update/index.d.ts +0 -10
- package/lib/template/cockpit/jw-uploader/index.d.ts +0 -2
- package/lib/template/common/privacy-policy-page/index.d.ts +59 -0
- package/lib/template/common/privacy-policy-page/index.d.ts.map +1 -0
- package/lib/template/common/privacy-policy-page/index.js +61 -0
- package/lib/template/common/privacy-policy-page/index.js.map +1 -0
- package/lib/template/common/privacy-policy-page/style.css +78 -0
- package/lib/util/button-icons.d.ts +0 -1
- package/lib/util/button-icons.d.ts.map +1 -1
- package/lib/util/button-icons.js +1 -2
- package/lib/util/button-icons.js.map +1 -1
- package/lib/util/proptypes.d.ts.map +1 -1
- package/lib/util/proptypes.js +2 -2
- package/lib/util/proptypes.js.map +1 -1
- package/package.json +3 -2
|
@@ -18,8 +18,6 @@ declare class DragAndDrop extends React.Component<any, any, any> {
|
|
|
18
18
|
error: PropTypes.Requireable<string>;
|
|
19
19
|
buttonAriaLabel: PropTypes.Requireable<string>;
|
|
20
20
|
errorButtonLabel: PropTypes.Requireable<string>;
|
|
21
|
-
pdfButtonLabel: PropTypes.Requireable<string>;
|
|
22
|
-
pdfButtonAriaLabel: PropTypes.Requireable<string>;
|
|
23
21
|
};
|
|
24
22
|
constructor(props: any);
|
|
25
23
|
state: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/drag-and-drop/index.js"],"names":[],"mappings":";AAgBA;IACE
|
|
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"}
|
|
@@ -53,9 +53,7 @@ class DragAndDrop extends React.Component {
|
|
|
53
53
|
error = '',
|
|
54
54
|
buttonAriaLabel = '',
|
|
55
55
|
errorButtonLabel = '',
|
|
56
|
-
disabled = false
|
|
57
|
-
pdfButtonLabel,
|
|
58
|
-
pdfButtonAriaLabel
|
|
56
|
+
disabled = false
|
|
59
57
|
} = this.props;
|
|
60
58
|
const {
|
|
61
59
|
dragging
|
|
@@ -76,26 +74,6 @@ class DragAndDrop extends React.Component {
|
|
|
76
74
|
src: previewContent.src,
|
|
77
75
|
type: "video/*"
|
|
78
76
|
}));
|
|
79
|
-
} else if (previewContent && previewContent.type === 'pdf') {
|
|
80
|
-
previewView = /*#__PURE__*/React.createElement("div", {
|
|
81
|
-
className: style.previewPdf
|
|
82
|
-
}, /*#__PURE__*/React.createElement("p", {
|
|
83
|
-
className: style.previewLabelPdf
|
|
84
|
-
}, previewLabel), /*#__PURE__*/React.createElement(Button, {
|
|
85
|
-
type: "secondary",
|
|
86
|
-
link: {
|
|
87
|
-
href: previewContent.src,
|
|
88
|
-
target: '_blank',
|
|
89
|
-
download: false
|
|
90
|
-
},
|
|
91
|
-
label: pdfButtonLabel,
|
|
92
|
-
"aria-label": pdfButtonAriaLabel,
|
|
93
|
-
"data-name": "default-button-pdf",
|
|
94
|
-
icon: {
|
|
95
|
-
position: 'left',
|
|
96
|
-
type: 'pdf'
|
|
97
|
-
}
|
|
98
|
-
}));
|
|
99
77
|
} else if (loading) {
|
|
100
78
|
previewView = /*#__PURE__*/React.createElement("div", {
|
|
101
79
|
className: style.loaderWrapper
|
|
@@ -201,9 +179,7 @@ DragAndDrop.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
201
179
|
onReset: PropTypes.func,
|
|
202
180
|
error: PropTypes.string,
|
|
203
181
|
buttonAriaLabel: PropTypes.string,
|
|
204
|
-
errorButtonLabel: PropTypes.string
|
|
205
|
-
pdfButtonLabel: PropTypes.string,
|
|
206
|
-
pdfButtonAriaLabel: PropTypes.string
|
|
182
|
+
errorButtonLabel: PropTypes.string
|
|
207
183
|
} : {};
|
|
208
184
|
export default DragAndDrop;
|
|
209
185
|
//# sourceMappingURL=index.js.map
|
|
@@ -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","pdfButtonLabel","pdfButtonAriaLabel","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 pdfButtonLabel: PropTypes.string,\n pdfButtonAriaLabel: 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 pdfButtonLabel,\n pdfButtonAriaLabel\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={pdfButtonLabel}\n aria-label={pdfButtonAriaLabel}\n data-name=\"default-button-pdf\"\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":"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"}
|
|
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:
|
|
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,5 +1,5 @@
|
|
|
1
1
|
export default ImageUpload;
|
|
2
|
-
declare function ImageUpload({ title, description, previewLabel, previewContent, uploadLabel, loading, modified, disabled, onChange, onReset, name, labelLink, labelButtonLink, hrefLink, imageTypes, error, buttonAriaLabel, errorButtonLabel
|
|
2
|
+
declare function ImageUpload({ title, description, previewLabel, previewContent, uploadLabel, loading, modified, disabled, onChange, onReset, name, labelLink, labelButtonLink, hrefLink, imageTypes, error, buttonAriaLabel, errorButtonLabel }: {
|
|
3
3
|
title: any;
|
|
4
4
|
description: any;
|
|
5
5
|
previewLabel: any;
|
|
@@ -18,8 +18,6 @@ declare function ImageUpload({ title, description, previewLabel, previewContent,
|
|
|
18
18
|
error?: string | undefined;
|
|
19
19
|
buttonAriaLabel: any;
|
|
20
20
|
errorButtonLabel: any;
|
|
21
|
-
pdfButtonLabel: any;
|
|
22
|
-
pdfButtonAriaLabel: any;
|
|
23
21
|
}): JSX.Element;
|
|
24
22
|
declare namespace ImageUpload {
|
|
25
23
|
const propTypes: {
|
|
@@ -45,8 +43,6 @@ declare namespace ImageUpload {
|
|
|
45
43
|
modified: PropTypes.Requireable<boolean>;
|
|
46
44
|
disabled: PropTypes.Requireable<boolean>;
|
|
47
45
|
children: PropTypes.Requireable<(...args: any[]) => any>;
|
|
48
|
-
pdfButtonLabel: PropTypes.Requireable<string>;
|
|
49
|
-
pdfButtonAriaLabel: PropTypes.Requireable<string>;
|
|
50
46
|
};
|
|
51
47
|
}
|
|
52
48
|
import PropTypes from "prop-types";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/image-upload/index.js"],"names":[],"mappings":";AAQA
|
|
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,22 +24,23 @@ 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,
|
|
31
|
-
errorButtonLabel
|
|
32
|
-
pdfButtonLabel,
|
|
33
|
-
pdfButtonAriaLabel
|
|
34
|
+
errorButtonLabel
|
|
34
35
|
}) => {
|
|
35
36
|
const handleReset = useCallback(e => {
|
|
36
37
|
if (_isNil(onReset)) return;
|
|
37
38
|
e.preventDefault();
|
|
38
39
|
return onReset(e);
|
|
39
40
|
}, [onReset]);
|
|
41
|
+
|
|
42
|
+
const acceptedImages = _pipe(_map(t => `image/${t}`), _join(','))(imageTypes);
|
|
43
|
+
|
|
40
44
|
const linkCustomStyle = {
|
|
41
45
|
width: '40px',
|
|
42
46
|
color: 'red'
|
|
@@ -53,13 +57,11 @@ const ImageUpload = ({
|
|
|
53
57
|
error: error,
|
|
54
58
|
disabled: disabled,
|
|
55
59
|
buttonAriaLabel: buttonAriaLabel,
|
|
56
|
-
errorButtonLabel: errorButtonLabel
|
|
57
|
-
pdfButtonLabel: pdfButtonLabel,
|
|
58
|
-
pdfButtonAriaLabel: pdfButtonAriaLabel
|
|
60
|
+
errorButtonLabel: errorButtonLabel
|
|
59
61
|
}, (onDragStart, onDragStop) => /*#__PURE__*/React.createElement("input", {
|
|
60
62
|
type: "file",
|
|
61
63
|
name: name,
|
|
62
|
-
accept:
|
|
64
|
+
accept: acceptedImages,
|
|
63
65
|
disabled: loading || disabled,
|
|
64
66
|
className: style.input,
|
|
65
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","
|
|
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
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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":";
|
|
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
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
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
|
-
|
|
47
|
-
|
|
48
|
-
|
|
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
|
-
|
|
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","
|
|
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,
|
|
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;
|
|
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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/input-textarea/index.js"],"names":[],"mappings":";AAkBA,wDAgEC"}
|