@sis-cc/dotstatsuite-visions 7.16.0 → 7.17.1
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/ChartsConfig/Axis.js +4 -4
- package/es/ChartsConfig/styles.js +6 -0
- package/es/Contact/Contact.js +327 -0
- package/es/Contact/Input.js +129 -0
- package/es/Contact/Mode.js +132 -0
- package/es/Contact/index.js +36 -0
- package/es/DataHeader/DataHeader.js +0 -3
- package/es/Share/Form.js +3 -2
- package/es/index.js +1 -0
- package/lib/ChartsConfig/Axis.js +4 -4
- package/lib/ChartsConfig/styles.js +6 -0
- package/lib/Contact/Contact.js +357 -0
- package/lib/Contact/Input.js +163 -0
- package/lib/Contact/Mode.js +169 -0
- package/lib/Contact/index.js +16 -0
- package/lib/DataHeader/DataHeader.js +0 -4
- package/lib/Share/Form.js +4 -2
- package/lib/index.js +10 -1
- package/package.json +3 -2
package/es/Share/Form.js
CHANGED
|
@@ -5,6 +5,7 @@ import { makeStyles } from '@material-ui/core/styles';
|
|
|
5
5
|
import Typography from '@material-ui/core/Typography';
|
|
6
6
|
import Grid from '@material-ui/core/Grid';
|
|
7
7
|
import CircularProgress from '@material-ui/core/CircularProgress';
|
|
8
|
+
import { validate as getIsValidEmail } from 'isemail';
|
|
8
9
|
import Input from '../Input';
|
|
9
10
|
import Alert from '../Alert';
|
|
10
11
|
import { Button } from '../';
|
|
@@ -55,14 +56,14 @@ var Form = function Form(_ref) {
|
|
|
55
56
|
var classes = useStyles();
|
|
56
57
|
|
|
57
58
|
var onChange = function onChange(value) {
|
|
58
|
-
if (
|
|
59
|
+
if (getIsValidEmail(mail)) {
|
|
59
60
|
setEmailError(false);
|
|
60
61
|
}
|
|
61
62
|
if (R.is(Function)(changeMail)) return changeMail(value);
|
|
62
63
|
};
|
|
63
64
|
|
|
64
65
|
var onSubmit = function onSubmit() {
|
|
65
|
-
if (
|
|
66
|
+
if (!getIsValidEmail(mail)) {
|
|
66
67
|
setEmailError(true);
|
|
67
68
|
return;
|
|
68
69
|
}
|
package/es/index.js
CHANGED
|
@@ -11,6 +11,7 @@ export { default as ChartsConfig } from './ChartsConfig';
|
|
|
11
11
|
export { default as Chips } from './Chips';
|
|
12
12
|
export { default as CollapseButtons } from './CollapseButtons';
|
|
13
13
|
export { default as CollapsibleTree } from './CollapsibleTree';
|
|
14
|
+
export { default as Contact } from './Contact';
|
|
14
15
|
export { default as DataEdit } from './DataEdit';
|
|
15
16
|
export { default as Dataflow } from './Dataflow';
|
|
16
17
|
export { default as DataHeader } from './DataHeader';
|
package/lib/ChartsConfig/Axis.js
CHANGED
|
@@ -58,7 +58,7 @@ var AxisConfig = function AxisConfig(_ref) {
|
|
|
58
58
|
{ container: true, spacing: 1, className: classes.inputContainer },
|
|
59
59
|
(0, _utils.isActive)(min) && _react2.default.createElement(
|
|
60
60
|
_Grid2.default,
|
|
61
|
-
{ item: true, xs: 12, sm: 12, md: 6, lg:
|
|
61
|
+
{ item: true, xs: 12, sm: 12, md: 6, lg: 4, className: (0, _classnames2.default)(classes.axis, classes.wrapper) },
|
|
62
62
|
_react2.default.createElement(_Input2.default, _extends({}, min, {
|
|
63
63
|
value: R.when(R.isNil, R.always(''))(min.value),
|
|
64
64
|
type: 'number',
|
|
@@ -71,7 +71,7 @@ var AxisConfig = function AxisConfig(_ref) {
|
|
|
71
71
|
),
|
|
72
72
|
(0, _utils.isActive)(max) && _react2.default.createElement(
|
|
73
73
|
_Grid2.default,
|
|
74
|
-
{ item: true, xs: 12, sm: 12, md: 6, lg:
|
|
74
|
+
{ item: true, xs: 12, sm: 12, md: 6, lg: 4, className: (0, _classnames2.default)(classes.axis, classes.wrapper) },
|
|
75
75
|
_react2.default.createElement(_Input2.default, _extends({}, max, {
|
|
76
76
|
value: R.when(R.isNil, R.always(''))(max.value),
|
|
77
77
|
type: 'number',
|
|
@@ -84,7 +84,7 @@ var AxisConfig = function AxisConfig(_ref) {
|
|
|
84
84
|
),
|
|
85
85
|
(0, _utils.isActive)(pivot) && _react2.default.createElement(
|
|
86
86
|
_Grid2.default,
|
|
87
|
-
{ item: true, xs: 12, sm: 12, md: 6, lg:
|
|
87
|
+
{ item: true, xs: 12, sm: 12, md: 6, lg: 4, className: (0, _classnames2.default)(classes.axis, classes.wrapper) },
|
|
88
88
|
_react2.default.createElement(_Input2.default, _extends({}, pivot, {
|
|
89
89
|
value: R.when(R.isNil, R.always(''))(pivot.value),
|
|
90
90
|
type: 'number',
|
|
@@ -97,7 +97,7 @@ var AxisConfig = function AxisConfig(_ref) {
|
|
|
97
97
|
),
|
|
98
98
|
(0, _utils.isActive)(step) && _react2.default.createElement(
|
|
99
99
|
_Grid2.default,
|
|
100
|
-
{ item: true, xs: 12, sm: 12, md: 6, lg:
|
|
100
|
+
{ item: true, xs: 12, sm: 12, md: 6, lg: 4, className: (0, _classnames2.default)(classes.axis, classes.wrapper) },
|
|
101
101
|
_react2.default.createElement(_Input2.default, _extends({}, step, {
|
|
102
102
|
value: R.when(R.isNil, R.always(''))(step.value),
|
|
103
103
|
type: 'number',
|
|
@@ -44,6 +44,12 @@ var useStyles = exports.useStyles = (0, _styles.makeStyles)(function (theme) {
|
|
|
44
44
|
paddingTop: '0px !important', // spacing items
|
|
45
45
|
paddingBottom: '0px !important' // spacing items
|
|
46
46
|
},
|
|
47
|
+
ellipsis: {
|
|
48
|
+
whiteSpace: 'nowrap',
|
|
49
|
+
overflow: 'hidden',
|
|
50
|
+
textOverflow: 'ellipsis',
|
|
51
|
+
flexFlow: 'nowrap'
|
|
52
|
+
},
|
|
47
53
|
marginDense: {
|
|
48
54
|
marginBottom: '0px !important'
|
|
49
55
|
},
|
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
|
|
5
|
+
var _react = require('react');
|
|
6
|
+
|
|
7
|
+
var _react2 = _interopRequireDefault(_react);
|
|
8
|
+
|
|
9
|
+
var _classnames = require('classnames');
|
|
10
|
+
|
|
11
|
+
var _classnames2 = _interopRequireDefault(_classnames);
|
|
12
|
+
|
|
13
|
+
var _propTypes = require('prop-types');
|
|
14
|
+
|
|
15
|
+
var _propTypes2 = _interopRequireDefault(_propTypes);
|
|
16
|
+
|
|
17
|
+
var _ramda = require('ramda');
|
|
18
|
+
|
|
19
|
+
var R = _interopRequireWildcard(_ramda);
|
|
20
|
+
|
|
21
|
+
var _core = require('@material-ui/core');
|
|
22
|
+
|
|
23
|
+
var _isemail = require('isemail');
|
|
24
|
+
|
|
25
|
+
var _styles = require('@material-ui/styles');
|
|
26
|
+
|
|
27
|
+
var _Mode = require('./Mode');
|
|
28
|
+
|
|
29
|
+
var _Mode2 = _interopRequireDefault(_Mode);
|
|
30
|
+
|
|
31
|
+
var _Input = require('./Input');
|
|
32
|
+
|
|
33
|
+
var _Input2 = _interopRequireDefault(_Input);
|
|
34
|
+
|
|
35
|
+
var _ = require('../');
|
|
36
|
+
|
|
37
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
38
|
+
|
|
39
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
40
|
+
|
|
41
|
+
var useStyles = (0, _styles.makeStyles)(function (theme) {
|
|
42
|
+
return {
|
|
43
|
+
paper: {
|
|
44
|
+
backgroundColor: theme.palette.background.paper,
|
|
45
|
+
padding: theme.spacing(2)
|
|
46
|
+
},
|
|
47
|
+
emailReasonMessage: {
|
|
48
|
+
backgroundColor: R.path(['palette', 'tertiary', 'dark'])(theme) || theme.palette.grey[100],
|
|
49
|
+
padding: theme.spacing(2),
|
|
50
|
+
margin: theme.spacing(2, 0)
|
|
51
|
+
},
|
|
52
|
+
label: {
|
|
53
|
+
color: theme.palette.primary.main
|
|
54
|
+
},
|
|
55
|
+
textarea: {
|
|
56
|
+
width: '100%',
|
|
57
|
+
padding: theme.spacing(1)
|
|
58
|
+
},
|
|
59
|
+
textareaError: {
|
|
60
|
+
borderColor: theme.palette.error.main,
|
|
61
|
+
borderWidth: theme.spacing(0.25)
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
var Contact = function Contact(_ref) {
|
|
67
|
+
var _cx;
|
|
68
|
+
|
|
69
|
+
var modes = _ref.modes,
|
|
70
|
+
_ref$defaultMode = _ref.defaultMode,
|
|
71
|
+
defaultMode = _ref$defaultMode === undefined ? 'question' : _ref$defaultMode,
|
|
72
|
+
defaultFullName = _ref.defaultFullName,
|
|
73
|
+
defaultEmail = _ref.defaultEmail,
|
|
74
|
+
labels = _ref.labels,
|
|
75
|
+
send = _ref.send,
|
|
76
|
+
isSubmitDisable = _ref.isSubmitDisable,
|
|
77
|
+
children = _ref.children;
|
|
78
|
+
|
|
79
|
+
var classes = useStyles();
|
|
80
|
+
|
|
81
|
+
var _useState = (0, _react.useState)(defaultMode),
|
|
82
|
+
mode = _useState[0],
|
|
83
|
+
setMode = _useState[1];
|
|
84
|
+
|
|
85
|
+
var _useState2 = (0, _react.useState)(''),
|
|
86
|
+
title = _useState2[0],
|
|
87
|
+
setTitle = _useState2[1];
|
|
88
|
+
|
|
89
|
+
var _useState3 = (0, _react.useState)(defaultFullName || ''),
|
|
90
|
+
name = _useState3[0],
|
|
91
|
+
setName = _useState3[1];
|
|
92
|
+
|
|
93
|
+
var _useState4 = (0, _react.useState)(''),
|
|
94
|
+
organisation = _useState4[0],
|
|
95
|
+
setOrganisation = _useState4[1];
|
|
96
|
+
|
|
97
|
+
var _useState5 = (0, _react.useState)(defaultEmail || ''),
|
|
98
|
+
email = _useState5[0],
|
|
99
|
+
setEmail = _useState5[1];
|
|
100
|
+
|
|
101
|
+
var _useState6 = (0, _react.useState)(false),
|
|
102
|
+
emailHasError = _useState6[0],
|
|
103
|
+
setEmailError = _useState6[1];
|
|
104
|
+
|
|
105
|
+
var _useState7 = (0, _react.useState)(''),
|
|
106
|
+
details = _useState7[0],
|
|
107
|
+
setDetails = _useState7[1];
|
|
108
|
+
|
|
109
|
+
var _useState8 = (0, _react.useState)(true),
|
|
110
|
+
checked = _useState8[0],
|
|
111
|
+
setChecked = _useState8[1];
|
|
112
|
+
|
|
113
|
+
var _useState9 = (0, _react.useState)(true),
|
|
114
|
+
isSendDisable = _useState9[0],
|
|
115
|
+
setSendDisable = _useState9[1];
|
|
116
|
+
|
|
117
|
+
var _useState10 = (0, _react.useState)(false),
|
|
118
|
+
detailsHasError = _useState10[0],
|
|
119
|
+
setDetailsError = _useState10[1];
|
|
120
|
+
|
|
121
|
+
var checkEmail = function checkEmail(email) {
|
|
122
|
+
if ((0, _isemail.validate)(email)) {
|
|
123
|
+
return setEmailError(false);
|
|
124
|
+
}
|
|
125
|
+
return setEmailError(true);
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
var checkDetails = function checkDetails(details) {
|
|
129
|
+
if (R.isEmpty(details)) {
|
|
130
|
+
return setDetailsError(true);
|
|
131
|
+
}
|
|
132
|
+
return setDetailsError(false);
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
var onSubmit = function onSubmit() {
|
|
136
|
+
if (R.is(Function)(send)) return send({
|
|
137
|
+
mode: mode,
|
|
138
|
+
title: title,
|
|
139
|
+
name: name,
|
|
140
|
+
organisation: organisation,
|
|
141
|
+
email: email,
|
|
142
|
+
details: details,
|
|
143
|
+
checkbox: checked
|
|
144
|
+
});
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
(0, _react.useEffect)(function () {
|
|
148
|
+
if (R.isEmpty(email)) return setSendDisable(true);
|
|
149
|
+
if (R.isEmpty(details)) return setSendDisable(true);
|
|
150
|
+
if (emailHasError) return setSendDisable(true);
|
|
151
|
+
if (detailsHasError) return setSendDisable(true);
|
|
152
|
+
return setSendDisable(isSubmitDisable || false);
|
|
153
|
+
}, [emailHasError, detailsHasError, email, details, isSubmitDisable]);
|
|
154
|
+
|
|
155
|
+
return _react2.default.createElement(
|
|
156
|
+
_core.Grid,
|
|
157
|
+
{ container: true, className: classes.paper, 'data-testid': 'contact-test-id' },
|
|
158
|
+
_react2.default.createElement(
|
|
159
|
+
_core.Grid,
|
|
160
|
+
{ item: true, container: true, xs: 12, md: 12, justifyContent: 'space-between' },
|
|
161
|
+
_react2.default.createElement(
|
|
162
|
+
_core.Grid,
|
|
163
|
+
{ item: true, xs: 12, sm: 12, md: 5 },
|
|
164
|
+
_react2.default.createElement(_Mode2.default, {
|
|
165
|
+
changeMode: setMode,
|
|
166
|
+
modes: modes,
|
|
167
|
+
mode: mode,
|
|
168
|
+
title: R.prop('modeTitle')(labels)
|
|
169
|
+
})
|
|
170
|
+
),
|
|
171
|
+
_react2.default.createElement(
|
|
172
|
+
_core.Grid,
|
|
173
|
+
{ item: true, container: true, xs: 12, sm: 12, md: 6, 'flex-direction': 'column' },
|
|
174
|
+
_react2.default.createElement(
|
|
175
|
+
_core.Grid,
|
|
176
|
+
{ item: true, xs: 12 },
|
|
177
|
+
_react2.default.createElement(_Input2.default, {
|
|
178
|
+
variant: 'outlined',
|
|
179
|
+
label: labels.personalTitle,
|
|
180
|
+
name: 'title',
|
|
181
|
+
type: 'text',
|
|
182
|
+
fullWidth: true,
|
|
183
|
+
value: title,
|
|
184
|
+
onChange: function onChange(e) {
|
|
185
|
+
return setTitle(e.target.value);
|
|
186
|
+
},
|
|
187
|
+
isControlled: true
|
|
188
|
+
})
|
|
189
|
+
),
|
|
190
|
+
_react2.default.createElement(
|
|
191
|
+
_core.Grid,
|
|
192
|
+
{ item: true, xs: 12 },
|
|
193
|
+
_react2.default.createElement(_Input2.default, {
|
|
194
|
+
variant: 'outlined',
|
|
195
|
+
isControlled: true,
|
|
196
|
+
label: labels.name,
|
|
197
|
+
name: 'name',
|
|
198
|
+
type: 'text',
|
|
199
|
+
onChange: function onChange(e) {
|
|
200
|
+
return setName(e.target.value);
|
|
201
|
+
},
|
|
202
|
+
value: name,
|
|
203
|
+
fullWidth: true
|
|
204
|
+
})
|
|
205
|
+
),
|
|
206
|
+
_react2.default.createElement(
|
|
207
|
+
_core.Grid,
|
|
208
|
+
{ item: true, xs: 12 },
|
|
209
|
+
_react2.default.createElement(_Input2.default, {
|
|
210
|
+
variant: 'outlined',
|
|
211
|
+
isControlled: true,
|
|
212
|
+
label: labels.organisation,
|
|
213
|
+
type: 'text',
|
|
214
|
+
name: 'organisation',
|
|
215
|
+
onChange: function onChange(e) {
|
|
216
|
+
return setOrganisation(e.target.value);
|
|
217
|
+
},
|
|
218
|
+
value: organisation,
|
|
219
|
+
fullWidth: true
|
|
220
|
+
})
|
|
221
|
+
),
|
|
222
|
+
_react2.default.createElement(
|
|
223
|
+
_core.Grid,
|
|
224
|
+
{ item: true, xs: 12 },
|
|
225
|
+
_react2.default.createElement(_Input2.default, {
|
|
226
|
+
inputProps: {
|
|
227
|
+
'aria-label': R.prop('email')(labels),
|
|
228
|
+
autoComplete: 'email',
|
|
229
|
+
onBlur: function onBlur() {
|
|
230
|
+
return checkEmail(email);
|
|
231
|
+
}
|
|
232
|
+
},
|
|
233
|
+
label: R.prop('email')(labels),
|
|
234
|
+
type: 'email',
|
|
235
|
+
value: email,
|
|
236
|
+
onChange: function onChange(e) {
|
|
237
|
+
return setEmail(e.target.value);
|
|
238
|
+
},
|
|
239
|
+
variant: 'outlined',
|
|
240
|
+
fullWidth: true,
|
|
241
|
+
isControlled: true,
|
|
242
|
+
defaultValue: defaultEmail,
|
|
243
|
+
textFieldProps: { error: emailHasError }
|
|
244
|
+
})
|
|
245
|
+
)
|
|
246
|
+
)
|
|
247
|
+
),
|
|
248
|
+
_react2.default.createElement(
|
|
249
|
+
_core.Grid,
|
|
250
|
+
{ item: true, xs: 12, md: 12 },
|
|
251
|
+
_react2.default.createElement(
|
|
252
|
+
_core.Paper,
|
|
253
|
+
{ className: classes.emailReasonMessage },
|
|
254
|
+
R.prop('message')(R.find(R.propEq('value', mode))(modes))
|
|
255
|
+
)
|
|
256
|
+
),
|
|
257
|
+
_react2.default.createElement(
|
|
258
|
+
_core.Grid,
|
|
259
|
+
{ item: true, xs: 12, md: 12 },
|
|
260
|
+
_react2.default.createElement(_core.TextareaAutosize, {
|
|
261
|
+
name: 'details',
|
|
262
|
+
onChange: function onChange(e) {
|
|
263
|
+
return setDetails(e.target.value);
|
|
264
|
+
},
|
|
265
|
+
className: (0, _classnames2.default)(classes.textarea, (_cx = {}, _cx[classes.textareaError] = detailsHasError, _cx)),
|
|
266
|
+
'aria-label': R.prop('details')(labels),
|
|
267
|
+
minRows: 6,
|
|
268
|
+
placeholder: R.prop('details')(labels),
|
|
269
|
+
value: details,
|
|
270
|
+
onBlur: function onBlur() {
|
|
271
|
+
return checkDetails(details);
|
|
272
|
+
}
|
|
273
|
+
})
|
|
274
|
+
),
|
|
275
|
+
_react2.default.createElement(
|
|
276
|
+
_core.Grid,
|
|
277
|
+
{ item: true, container: true, justifyContent: 'space-between' },
|
|
278
|
+
_react2.default.createElement(
|
|
279
|
+
_core.Grid,
|
|
280
|
+
{ item: true },
|
|
281
|
+
_react2.default.createElement(_core.FormControlLabel, {
|
|
282
|
+
control: _react2.default.createElement(_core.Checkbox, { name: 'checkedB', color: 'primary' }),
|
|
283
|
+
label: _react2.default.createElement(
|
|
284
|
+
_core.Typography,
|
|
285
|
+
{ variant: 'h6', className: classes.label },
|
|
286
|
+
R.prop('checkbox')(labels)
|
|
287
|
+
),
|
|
288
|
+
checked: checked,
|
|
289
|
+
onChange: function onChange(e) {
|
|
290
|
+
return setChecked(e.target.checked);
|
|
291
|
+
}
|
|
292
|
+
})
|
|
293
|
+
),
|
|
294
|
+
_react2.default.createElement(
|
|
295
|
+
_core.Grid,
|
|
296
|
+
{ item: true },
|
|
297
|
+
_react2.default.createElement(
|
|
298
|
+
_core.Typography,
|
|
299
|
+
{ variant: 'h6', className: classes.label, style: { paddingTop: 8 } },
|
|
300
|
+
R.prop('organisationPrivacyPolicy')(labels)
|
|
301
|
+
)
|
|
302
|
+
)
|
|
303
|
+
),
|
|
304
|
+
_react2.default.createElement(
|
|
305
|
+
_core.Grid,
|
|
306
|
+
{ item: true, container: true, justifyContent: 'space-between', alignItems: 'center' },
|
|
307
|
+
_react2.default.createElement(
|
|
308
|
+
_core.Grid,
|
|
309
|
+
{ item: true },
|
|
310
|
+
children
|
|
311
|
+
),
|
|
312
|
+
_react2.default.createElement(
|
|
313
|
+
_core.Grid,
|
|
314
|
+
{ item: true },
|
|
315
|
+
_react2.default.createElement(
|
|
316
|
+
_.Button,
|
|
317
|
+
{
|
|
318
|
+
'aria-label': R.prop('submit')(labels),
|
|
319
|
+
type: 'submit',
|
|
320
|
+
disabled: isSendDisable,
|
|
321
|
+
variant: 'contained',
|
|
322
|
+
color: 'primary',
|
|
323
|
+
alternative: 'siscc',
|
|
324
|
+
onClick: onSubmit,
|
|
325
|
+
size: 'large',
|
|
326
|
+
className: classes.submitButton
|
|
327
|
+
},
|
|
328
|
+
R.prop('submit')(labels)
|
|
329
|
+
)
|
|
330
|
+
)
|
|
331
|
+
)
|
|
332
|
+
);
|
|
333
|
+
};
|
|
334
|
+
|
|
335
|
+
Contact.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
336
|
+
defaultMode: _propTypes2.default.string,
|
|
337
|
+
defaultFullName: _propTypes2.default.string,
|
|
338
|
+
defaultEmail: _propTypes2.default.string,
|
|
339
|
+
lang: _propTypes2.default.string,
|
|
340
|
+
theme: _propTypes2.default.string,
|
|
341
|
+
modes: _propTypes2.default.array,
|
|
342
|
+
send: _propTypes2.default.func,
|
|
343
|
+
isSubmitDisable: _propTypes2.default.bool,
|
|
344
|
+
children: _propTypes2.default.node,
|
|
345
|
+
labels: _propTypes2.default.shape({
|
|
346
|
+
name: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
347
|
+
organisation: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
348
|
+
personalTitle: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
349
|
+
title: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
350
|
+
submit: _propTypes2.default.string,
|
|
351
|
+
email: _propTypes2.default.string,
|
|
352
|
+
details: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
353
|
+
contactForHelp: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element])
|
|
354
|
+
})
|
|
355
|
+
} : {};
|
|
356
|
+
exports.default = Contact;
|
|
357
|
+
module.exports = exports['default'];
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.MyInput = undefined;
|
|
5
|
+
|
|
6
|
+
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
|
7
|
+
|
|
8
|
+
var _react = require('react');
|
|
9
|
+
|
|
10
|
+
var _react2 = _interopRequireDefault(_react);
|
|
11
|
+
|
|
12
|
+
var _propTypes = require('prop-types');
|
|
13
|
+
|
|
14
|
+
var _propTypes2 = _interopRequireDefault(_propTypes);
|
|
15
|
+
|
|
16
|
+
var _ramda = require('ramda');
|
|
17
|
+
|
|
18
|
+
var R = _interopRequireWildcard(_ramda);
|
|
19
|
+
|
|
20
|
+
var _classnames = require('classnames');
|
|
21
|
+
|
|
22
|
+
var _classnames2 = _interopRequireDefault(_classnames);
|
|
23
|
+
|
|
24
|
+
var _styles = require('@material-ui/core/styles');
|
|
25
|
+
|
|
26
|
+
var _TextField = require('@material-ui/core/TextField');
|
|
27
|
+
|
|
28
|
+
var _TextField2 = _interopRequireDefault(_TextField);
|
|
29
|
+
|
|
30
|
+
var _InputAdornment = require('@material-ui/core/InputAdornment');
|
|
31
|
+
|
|
32
|
+
var _InputAdornment2 = _interopRequireDefault(_InputAdornment);
|
|
33
|
+
|
|
34
|
+
var _IconButton = require('@material-ui/core/IconButton');
|
|
35
|
+
|
|
36
|
+
var _IconButton2 = _interopRequireDefault(_IconButton);
|
|
37
|
+
|
|
38
|
+
var _Done = require('@material-ui/icons/Done');
|
|
39
|
+
|
|
40
|
+
var _Done2 = _interopRequireDefault(_Done);
|
|
41
|
+
|
|
42
|
+
var _withInput = require('../Input/with-input');
|
|
43
|
+
|
|
44
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
45
|
+
|
|
46
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
47
|
+
|
|
48
|
+
var useStyles = (0, _styles.makeStyles)(function () {
|
|
49
|
+
return {
|
|
50
|
+
visibility: {
|
|
51
|
+
visibility: 'hidden'
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
var LefttIcon = function LefttIcon(_ref) {
|
|
57
|
+
var Icon = _ref.Icon;
|
|
58
|
+
return _react2.default.createElement(Icon, null);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
LefttIcon.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
62
|
+
Icon: _propTypes2.default.object
|
|
63
|
+
} : {};
|
|
64
|
+
|
|
65
|
+
var RightIcon = function RightIcon(_ref2) {
|
|
66
|
+
var onSubmit = _ref2.onSubmit,
|
|
67
|
+
_ref2$Icon = _ref2.Icon,
|
|
68
|
+
Icon = _ref2$Icon === undefined ? _Done2.default : _ref2$Icon;
|
|
69
|
+
return _react2.default.createElement(
|
|
70
|
+
_IconButton2.default,
|
|
71
|
+
{ color: 'primary', onClick: function onClick() {
|
|
72
|
+
return onSubmit();
|
|
73
|
+
} },
|
|
74
|
+
_react2.default.createElement(Icon, null)
|
|
75
|
+
);
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
RightIcon.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
79
|
+
Icon: _propTypes2.default.object,
|
|
80
|
+
onSubmit: _propTypes2.default.func,
|
|
81
|
+
classes: _propTypes2.default.object
|
|
82
|
+
} : {};
|
|
83
|
+
|
|
84
|
+
var MyInput = exports.MyInput = function MyInput(_ref3) {
|
|
85
|
+
var _cx;
|
|
86
|
+
|
|
87
|
+
var id = _ref3.id,
|
|
88
|
+
label = _ref3.label,
|
|
89
|
+
name = _ref3.name,
|
|
90
|
+
placeholder = _ref3.placeholder,
|
|
91
|
+
leftIcon = _ref3.leftIcon,
|
|
92
|
+
rightIcon = _ref3.rightIcon,
|
|
93
|
+
value = _ref3.value,
|
|
94
|
+
type = _ref3.type,
|
|
95
|
+
onChange = _ref3.onChange,
|
|
96
|
+
onSubmit = _ref3.onSubmit,
|
|
97
|
+
fullWidth = _ref3.fullWidth,
|
|
98
|
+
withValidationIcon = _ref3.withValidationIcon,
|
|
99
|
+
textFieldProps = _ref3.textFieldProps,
|
|
100
|
+
inputProps = _ref3.inputProps,
|
|
101
|
+
endAdornment = _ref3.endAdornment;
|
|
102
|
+
|
|
103
|
+
var classes = useStyles();
|
|
104
|
+
var startAdornment = R.isNil(leftIcon) ? null : _react2.default.createElement(
|
|
105
|
+
_InputAdornment2.default,
|
|
106
|
+
{ position: 'start' },
|
|
107
|
+
_react2.default.createElement(LefttIcon, { Icon: leftIcon })
|
|
108
|
+
);
|
|
109
|
+
var endMyadornment = R.or(withValidationIcon, !R.isNil(rightIcon)) ? _react2.default.createElement(
|
|
110
|
+
_InputAdornment2.default,
|
|
111
|
+
{ position: 'end', className: (0, _classnames2.default)((_cx = {}, _cx[classes.visibility] = R.isEmpty(value), _cx)) },
|
|
112
|
+
_react2.default.createElement(RightIcon, { onSubmit: onSubmit, Icon: rightIcon })
|
|
113
|
+
) : null;
|
|
114
|
+
|
|
115
|
+
var onEnterLabel = function onEnterLabel(event) {
|
|
116
|
+
if (event.key === 'Enter') {
|
|
117
|
+
event.preventDefault();
|
|
118
|
+
if (R.is(Function, onSubmit)) {
|
|
119
|
+
onSubmit();
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
return _react2.default.createElement(_TextField2.default, _extends({
|
|
125
|
+
'data-testid': 'input-test-id',
|
|
126
|
+
margin: 'dense',
|
|
127
|
+
fullWidth: fullWidth,
|
|
128
|
+
id: id,
|
|
129
|
+
name: name,
|
|
130
|
+
type: type,
|
|
131
|
+
label: label,
|
|
132
|
+
value: value,
|
|
133
|
+
variant: 'outlined',
|
|
134
|
+
placeholder: placeholder,
|
|
135
|
+
onChange: onChange,
|
|
136
|
+
onKeyPress: onEnterLabel,
|
|
137
|
+
InputProps: {
|
|
138
|
+
startAdornment: startAdornment,
|
|
139
|
+
endAdornment: R.isNil(endAdornment) ? endMyadornment : endAdornment
|
|
140
|
+
},
|
|
141
|
+
inputProps: inputProps
|
|
142
|
+
}, textFieldProps));
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
MyInput.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
146
|
+
id: _propTypes2.default.string,
|
|
147
|
+
name: _propTypes2.default.string,
|
|
148
|
+
label: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
149
|
+
placeholder: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
150
|
+
leftIcon: _propTypes2.default.object,
|
|
151
|
+
rightIcon: _propTypes2.default.object,
|
|
152
|
+
value: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.number]),
|
|
153
|
+
type: _propTypes2.default.string,
|
|
154
|
+
onChange: _propTypes2.default.func,
|
|
155
|
+
onSubmit: _propTypes2.default.func,
|
|
156
|
+
fullWidth: _propTypes2.default.bool,
|
|
157
|
+
withValidationIcon: _propTypes2.default.bool,
|
|
158
|
+
textFieldProps: _propTypes2.default.object,
|
|
159
|
+
inputProps: _propTypes2.default.object,
|
|
160
|
+
endAdornment: _propTypes2.default.node
|
|
161
|
+
} : {};
|
|
162
|
+
|
|
163
|
+
exports.default = (0, _withInput.withInput)(MyInput);
|