@sis-cc/dotstatsuite-visions 7.16.0 → 7.17.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.
@@ -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);
@@ -0,0 +1,169 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+
5
+ 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; };
6
+
7
+ var _react = require('react');
8
+
9
+ var _react2 = _interopRequireDefault(_react);
10
+
11
+ var _propTypes = require('prop-types');
12
+
13
+ var _propTypes2 = _interopRequireDefault(_propTypes);
14
+
15
+ var _ramda = require('ramda');
16
+
17
+ var R = _interopRequireWildcard(_ramda);
18
+
19
+ var _Card = require('@material-ui/core/Card');
20
+
21
+ var _Card2 = _interopRequireDefault(_Card);
22
+
23
+ var _styles = require('@material-ui/core/styles');
24
+
25
+ var _CardContent = require('@material-ui/core/CardContent');
26
+
27
+ var _CardContent2 = _interopRequireDefault(_CardContent);
28
+
29
+ var _Typography = require('@material-ui/core/Typography');
30
+
31
+ var _Typography2 = _interopRequireDefault(_Typography);
32
+
33
+ var _RadioGroup = require('@material-ui/core/RadioGroup');
34
+
35
+ var _RadioGroup2 = _interopRequireDefault(_RadioGroup);
36
+
37
+ var _FormControlLabel = require('@material-ui/core/FormControlLabel');
38
+
39
+ var _FormControlLabel2 = _interopRequireDefault(_FormControlLabel);
40
+
41
+ var _Radio = require('@material-ui/core/Radio');
42
+
43
+ var _Radio2 = _interopRequireDefault(_Radio);
44
+
45
+ var _ = require('../');
46
+
47
+ 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; } }
48
+
49
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
50
+
51
+ var useStyles = (0, _styles.makeStyles)(function (theme) {
52
+ return {
53
+ container: {
54
+ backgroundColor: theme.palette.secondary.dark,
55
+ boxShadow: 'none',
56
+ padding: theme.spacing(2),
57
+ width: '100%',
58
+ height: '100%'
59
+ },
60
+ title: _extends({
61
+ padding: 0
62
+ }, R.pathOr({}, ['mixins', 'share', 'title'], theme)),
63
+ content: {
64
+ padding: theme.spacing(1, 0),
65
+ '&:last-child': {
66
+ padding: theme.spacing(1, 0)
67
+ }
68
+ },
69
+ label: theme.typography.body2,
70
+ warning: _extends({
71
+ marginLeft: theme.spacing(0.5),
72
+ width: 'unset',
73
+ fontSize: 'inherit',
74
+ height: '1.3em'
75
+ }, R.pathOr({}, ['mixins', 'share', 'warning'], theme))
76
+ };
77
+ });
78
+
79
+ var Warning = function Warning(_ref) {
80
+ var title = _ref.title;
81
+
82
+ var classes = useStyles();
83
+ var theme = (0, _styles.useTheme)();
84
+ var warningColor = R.path(['palette', 'highlight', 'hl1'], theme) || theme.palette.primary.dark;
85
+ var warningTextColor = theme.palette.getContrastText(warningColor);
86
+ return _react2.default.createElement(
87
+ _.Tooltip,
88
+ {
89
+ className: classes.warning,
90
+ title: title,
91
+ tabIndex: 0,
92
+ variant: 'warning',
93
+ 'aria-hidden': false,
94
+ placement: 'bottom',
95
+ PopperProps: {
96
+ modifiers: {
97
+ flip: {
98
+ behavior: ['bottom', 'top', 'left', 'right']
99
+ }
100
+ }
101
+ }
102
+ },
103
+ _react2.default.createElement(_.Warning, { pathBackgroundColor: warningColor, pathColor: warningTextColor })
104
+ );
105
+ };
106
+
107
+ Warning.propTypes = process.env.NODE_ENV !== "production" ? {
108
+ title: _propTypes2.default.string
109
+ } : {};
110
+
111
+ var Mode = function Mode(_ref2) {
112
+ var changeMode = _ref2.changeMode,
113
+ mode = _ref2.mode,
114
+ _ref2$modes = _ref2.modes,
115
+ modes = _ref2$modes === undefined ? [] : _ref2$modes,
116
+ title = _ref2.title;
117
+
118
+ var classes = useStyles();
119
+ return _react2.default.createElement(
120
+ _Card2.default,
121
+ { className: classes.container },
122
+ _react2.default.createElement(
123
+ _CardContent2.default,
124
+ { className: classes.content },
125
+ _react2.default.createElement(
126
+ _Typography2.default,
127
+ { variant: 'h6', className: classes.title },
128
+ title
129
+ ),
130
+ _react2.default.createElement(
131
+ _RadioGroup2.default,
132
+ { onChange: function onChange(e) {
133
+ return changeMode(e.target.value);
134
+ }, value: mode },
135
+ R.map(function (_ref3) {
136
+ var label = _ref3.label,
137
+ value = _ref3.value,
138
+ warningMessage = _ref3.warningMessage;
139
+ return _react2.default.createElement(_FormControlLabel2.default, {
140
+ classes: { label: classes.label },
141
+ key: value,
142
+ control: _react2.default.createElement(_Radio2.default, { variant: 'outlined', color: 'primary' }),
143
+ label: _react2.default.createElement(
144
+ 'span',
145
+ null,
146
+ label,
147
+ warningMessage && _react2.default.createElement(Warning, { title: warningMessage })
148
+ ),
149
+ value: value
150
+ });
151
+ })(modes)
152
+ )
153
+ )
154
+ );
155
+ };
156
+
157
+ Mode.propTypes = process.env.NODE_ENV !== "production" ? {
158
+ changeMode: _propTypes2.default.func,
159
+ mode: _propTypes2.default.string,
160
+ modes: _propTypes2.default.arrayOf(_propTypes2.default.shape({
161
+ label: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
162
+ value: _propTypes2.default.string,
163
+ warningMessage: _propTypes2.default.string
164
+ })),
165
+ title: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element])
166
+ } : {};
167
+
168
+ exports.default = Mode;
169
+ module.exports = exports['default'];
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _Contact = require('./Contact');
6
+
7
+ Object.defineProperty(exports, 'default', {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _interopRequireDefault(_Contact).default;
11
+ }
12
+ });
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ module.exports = exports['default'];