UNPKG

1.52 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports.default = void 0;
9
10var _objectSpread2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectSpread"));
11
12var _compose = _interopRequireDefault(require("recompose/compose"));
13
14var _withState = _interopRequireDefault(require("recompose/withState"));
15
16var _withHandlers = _interopRequireDefault(require("recompose/withHandlers"));
17
18var 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
47var _default = withFields;
48exports.default = _default;
\No newline at end of file