1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
4 |
|
5 | Object.defineProperty(exports, "__esModule", {
|
6 | value: true
|
7 | });
|
8 | exports.default = void 0;
|
9 |
|
10 | var _objectSpread2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectSpread"));
|
11 |
|
12 | var _compose = _interopRequireDefault(require("recompose/compose"));
|
13 |
|
14 | var _withState = _interopRequireDefault(require("recompose/withState"));
|
15 |
|
16 | var _withHandlers = _interopRequireDefault(require("recompose/withHandlers"));
|
17 |
|
18 | var withFields = function withFields(initialStateFn) {
|
19 | return function (Cmp) {
|
20 | return (0, _compose.default)((0, _withState.default)('fields', 'setFields', initialStateFn || {}), (0, _withHandlers.default)({
|
21 | handleFieldChange: function handleFieldChange(_ref) {
|
22 | var fields = _ref.fields,
|
23 | setFields = _ref.setFields;
|
24 | return function (_ref2) {
|
25 | var target = _ref2.target;
|
26 | var newFields = (0, _objectSpread2.default)({}, fields);
|
27 |
|
28 | if (target.type === 'checkbox') {
|
29 | if (target.checked) {
|
30 | newFields[target.name] = target.value;
|
31 | } else {
|
32 | delete newFields[target.name];
|
33 | }
|
34 | } else if (target.value !== '') {
|
35 | newFields[target.name] = target.value;
|
36 | } else {
|
37 | delete newFields[target.name];
|
38 | }
|
39 |
|
40 | setFields(newFields);
|
41 | };
|
42 | }
|
43 | }))(Cmp);
|
44 | };
|
45 | };
|
46 |
|
47 | var _default = withFields;
|
48 | exports.default = _default; |
\ | No newline at end of file |