redux-form
Version:
A higher order component decorator for forms using Redux and React
1,522 lines (1,197 loc) • 218 kB
JavaScript
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory(require("react"), require("react-redux"), require("redux"));
else if(typeof define === 'function' && define.amd)
define(["react", "react-redux", "redux"], factory);
else if(typeof exports === 'object')
exports["ReduxForm"] = factory(require("react"), require("react-redux"), require("redux"));
else
root["ReduxForm"] = factory(root["React"], root["ReactRedux"], root["Redux"]);
})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_3__, __WEBPACK_EXTERNAL_MODULE_29__) {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ exports: {},
/******/ id: moduleId,
/******/ loaded: false
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.loaded = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.values = exports.untouch = exports.touch = exports.SubmissionError = exports.stopSubmit = exports.stopAsyncValidation = exports.startSubmit = exports.startAsyncValidation = exports.setSubmitSucceeded = exports.setSubmitFailed = exports.reset = exports.reduxForm = exports.reducer = exports.propTypes = exports.isValid = exports.isPristine = exports.isInvalid = exports.isDirty = exports.initialize = exports.getFormValues = exports.formValueSelector = exports.focus = exports.FieldArray = exports.Fields = exports.Field = exports.destroy = exports.change = exports.autofill = exports.blur = exports.arrayUnshift = exports.arraySwap = exports.arraySplice = exports.arrayShift = exports.arrayRemoveAll = exports.arrayRemove = exports.arrayPush = exports.arrayPop = exports.arrayMove = exports.arrayInsert = exports.actionTypes = undefined;
var _createAll2 = __webpack_require__(38);
var _createAll3 = _interopRequireDefault(_createAll2);
var _plain = __webpack_require__(2);
var _plain2 = _interopRequireDefault(_plain);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _createAll = (0, _createAll3.default)(_plain2.default);
var actionTypes = _createAll.actionTypes;
var arrayInsert = _createAll.arrayInsert;
var arrayMove = _createAll.arrayMove;
var arrayPop = _createAll.arrayPop;
var arrayPush = _createAll.arrayPush;
var arrayRemove = _createAll.arrayRemove;
var arrayRemoveAll = _createAll.arrayRemoveAll;
var arrayShift = _createAll.arrayShift;
var arraySplice = _createAll.arraySplice;
var arraySwap = _createAll.arraySwap;
var arrayUnshift = _createAll.arrayUnshift;
var blur = _createAll.blur;
var autofill = _createAll.autofill;
var change = _createAll.change;
var destroy = _createAll.destroy;
var Field = _createAll.Field;
var Fields = _createAll.Fields;
var FieldArray = _createAll.FieldArray;
var focus = _createAll.focus;
var formValueSelector = _createAll.formValueSelector;
var getFormValues = _createAll.getFormValues;
var initialize = _createAll.initialize;
var isDirty = _createAll.isDirty;
var isInvalid = _createAll.isInvalid;
var isPristine = _createAll.isPristine;
var isValid = _createAll.isValid;
var propTypes = _createAll.propTypes;
var reducer = _createAll.reducer;
var reduxForm = _createAll.reduxForm;
var reset = _createAll.reset;
var setSubmitFailed = _createAll.setSubmitFailed;
var setSubmitSucceeded = _createAll.setSubmitSucceeded;
var startAsyncValidation = _createAll.startAsyncValidation;
var startSubmit = _createAll.startSubmit;
var stopAsyncValidation = _createAll.stopAsyncValidation;
var stopSubmit = _createAll.stopSubmit;
var SubmissionError = _createAll.SubmissionError;
var touch = _createAll.touch;
var untouch = _createAll.untouch;
var values = _createAll.values;
exports.actionTypes = actionTypes;
exports.arrayInsert = arrayInsert;
exports.arrayMove = arrayMove;
exports.arrayPop = arrayPop;
exports.arrayPush = arrayPush;
exports.arrayRemove = arrayRemove;
exports.arrayRemoveAll = arrayRemoveAll;
exports.arrayShift = arrayShift;
exports.arraySplice = arraySplice;
exports.arraySwap = arraySwap;
exports.arrayUnshift = arrayUnshift;
exports.blur = blur;
exports.autofill = autofill;
exports.change = change;
exports.destroy = destroy;
exports.Field = Field;
exports.Fields = Fields;
exports.FieldArray = FieldArray;
exports.focus = focus;
exports.formValueSelector = formValueSelector;
exports.getFormValues = getFormValues;
exports.initialize = initialize;
exports.isDirty = isDirty;
exports.isInvalid = isInvalid;
exports.isPristine = isPristine;
exports.isValid = isValid;
exports.propTypes = propTypes;
exports.reducer = reducer;
exports.reduxForm = reduxForm;
exports.reset = reset;
exports.setSubmitFailed = setSubmitFailed;
exports.setSubmitSucceeded = setSubmitSucceeded;
exports.startAsyncValidation = startAsyncValidation;
exports.startSubmit = startSubmit;
exports.stopAsyncValidation = stopAsyncValidation;
exports.stopSubmit = stopSubmit;
exports.SubmissionError = SubmissionError;
exports.touch = touch;
exports.untouch = untouch;
exports.values = values;
/***/ },
/* 1 */
/***/ function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_1__;
/***/ },
/* 2 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _some2 = __webpack_require__(98);
var _some3 = _interopRequireDefault(_some2);
var _splice = __webpack_require__(59);
var _splice2 = _interopRequireDefault(_splice);
var _getIn = __webpack_require__(20);
var _getIn2 = _interopRequireDefault(_getIn);
var _setIn = __webpack_require__(58);
var _setIn2 = _interopRequireDefault(_setIn);
var _deepEqual = __webpack_require__(56);
var _deepEqual2 = _interopRequireDefault(_deepEqual);
var _deleteIn = __webpack_require__(57);
var _deleteIn2 = _interopRequireDefault(_deleteIn);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var structure = {
empty: {},
emptyList: [],
getIn: _getIn2.default,
setIn: _setIn2.default,
deepEqual: _deepEqual2.default,
deleteIn: _deleteIn2.default,
fromJS: function fromJS(value) {
return value;
},
size: function size(array) {
return array ? array.length : 0;
},
some: _some3.default,
splice: _splice2.default
};
exports.default = structure;
/***/ },
/* 3 */
/***/ function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_3__;
/***/ },
/* 4 */
/***/ function(module, exports, __webpack_require__) {
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
'use strict';
/**
* Use invariant() to assert state which your program assumes to be true.
*
* Provide sprintf-style format (only %s is supported) and arguments
* to provide information about what broke and what you were
* expecting.
*
* The invariant message will be stripped in production, but the invariant
* will remain to ensure logic does not differ in production.
*/
var invariant = function(condition, format, a, b, c, d, e, f) {
if (true) {
if (format === undefined) {
throw new Error('invariant requires an error message argument');
}
}
if (!condition) {
var error;
if (format === undefined) {
error = new Error(
'Minified exception occurred; use the non-minified dev environment ' +
'for the full error message and additional helpful warnings.'
);
} else {
var args = [a, b, c, d, e, f];
var argIndex = 0;
error = new Error(
format.replace(/%s/g, function() { return args[argIndex++]; })
);
error.name = 'Invariant Violation';
}
error.framesToPop = 1; // we don't care about invariant's own frame
throw error;
}
};
module.exports = invariant;
/***/ },
/* 5 */
/***/ function(module, exports, __webpack_require__) {
var eq = __webpack_require__(90);
/**
* Gets the index at which the `key` is found in `array` of key-value pairs.
*
* @private
* @param {Array} array The array to inspect.
* @param {*} key The key to search for.
* @returns {number} Returns the index of the matched value, else `-1`.
*/
function assocIndexOf(array, key) {
var length = array.length;
while (length--) {
if (eq(array[length][0], key)) {
return length;
}
}
return -1;
}
module.exports = assocIndexOf;
/***/ },
/* 6 */
/***/ function(module, exports, __webpack_require__) {
var arrayMap = __webpack_require__(71),
copyArray = __webpack_require__(78),
isArray = __webpack_require__(26),
isSymbol = __webpack_require__(94),
stringToPath = __webpack_require__(88),
toKey = __webpack_require__(89);
/**
* Converts `value` to a property path array.
*
* @static
* @memberOf _
* @since 4.0.0
* @category Util
* @param {*} value The value to convert.
* @returns {Array} Returns the new property path array.
* @example
*
* _.toPath('a.b.c');
* // => ['a', 'b', 'c']
*
* _.toPath('a[0].b.c');
* // => ['a', '0', 'b', 'c']
*/
function toPath(value) {
if (isArray(value)) {
return arrayMap(value, toKey);
}
return isSymbol(value) ? [value] : copyArray(stringToPath(value));
}
module.exports = toPath;
/***/ },
/* 7 */
/***/ function(module, exports) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var ARRAY_INSERT = exports.ARRAY_INSERT = 'redux-form/ARRAY_INSERT';
var ARRAY_MOVE = exports.ARRAY_MOVE = 'redux-form/ARRAY_MOVE';
var ARRAY_POP = exports.ARRAY_POP = 'redux-form/ARRAY_POP';
var ARRAY_PUSH = exports.ARRAY_PUSH = 'redux-form/ARRAY_PUSH';
var ARRAY_REMOVE = exports.ARRAY_REMOVE = 'redux-form/ARRAY_REMOVE';
var ARRAY_REMOVE_ALL = exports.ARRAY_REMOVE_ALL = 'redux-form/ARRAY_REMOVE_ALL';
var ARRAY_SHIFT = exports.ARRAY_SHIFT = 'redux-form/ARRAY_SHIFT';
var ARRAY_SPLICE = exports.ARRAY_SPLICE = 'redux-form/ARRAY_SPLICE';
var ARRAY_UNSHIFT = exports.ARRAY_UNSHIFT = 'redux-form/ARRAY_UNSHIFT';
var ARRAY_SWAP = exports.ARRAY_SWAP = 'redux-form/ARRAY_SWAP';
var AUTOFILL = exports.AUTOFILL = 'redux-form/AUTOFILL';
var BLUR = exports.BLUR = 'redux-form/BLUR';
var CHANGE = exports.CHANGE = 'redux-form/CHANGE';
var DESTROY = exports.DESTROY = 'redux-form/DESTROY';
var FOCUS = exports.FOCUS = 'redux-form/FOCUS';
var INITIALIZE = exports.INITIALIZE = 'redux-form/INITIALIZE';
var REGISTER_FIELD = exports.REGISTER_FIELD = 'redux-form/REGISTER_FIELD';
var RESET = exports.RESET = 'redux-form/RESET';
var SET_SUBMIT_FAILED = exports.SET_SUBMIT_FAILED = 'redux-form/SET_SUBMIT_FAILED';
var SET_SUBMIT_SUCCEEDED = exports.SET_SUBMIT_SUCCEEDED = 'redux-form/SET_SUBMIT_SUCCEEDED';
var START_ASYNC_VALIDATION = exports.START_ASYNC_VALIDATION = 'redux-form/START_ASYNC_VALIDATION';
var START_SUBMIT = exports.START_SUBMIT = 'redux-form/START_SUBMIT';
var STOP_ASYNC_VALIDATION = exports.STOP_ASYNC_VALIDATION = 'redux-form/STOP_ASYNC_VALIDATION';
var STOP_SUBMIT = exports.STOP_SUBMIT = 'redux-form/STOP_SUBMIT';
var TOUCH = exports.TOUCH = 'redux-form/TOUCH';
var UNREGISTER_FIELD = exports.UNREGISTER_FIELD = 'redux-form/UNREGISTER_FIELD';
var UNTOUCH = exports.UNTOUCH = 'redux-form/UNTOUCH';
var UPDATE_SYNC_ERRORS = exports.UPDATE_SYNC_ERRORS = 'redux-form/UPDATE_SYNC_ERRORS';
/***/ },
/* 8 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _hasError = __webpack_require__(49);
var _hasError2 = _interopRequireDefault(_hasError);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var createIsValid = function createIsValid(structure) {
var getIn = structure.getIn;
var hasError = (0, _hasError2.default)(structure);
return function (form) {
var getFormState = arguments.length <= 1 || arguments[1] === undefined ? function (state) {
return getIn(state, 'form');
} : arguments[1];
return function (state) {
var formState = getFormState(state);
var error = getIn(formState, form + '.error');
if (error) {
return false;
}
var syncErrors = getIn(formState, form + '.syncErrors');
var asyncErrors = getIn(formState, form + '.asyncErrors');
var submitErrors = getIn(formState, form + '.submitErrors');
if (!syncErrors && !asyncErrors && !submitErrors) {
return true;
}
var registeredFields = getIn(formState, form + '.registeredFields') || [];
return !registeredFields.some(function (field) {
return hasError(field, syncErrors, asyncErrors, submitErrors);
});
};
};
};
exports.default = createIsValid;
/***/ },
/* 9 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _shallowequal = __webpack_require__(100);
var _shallowequal2 = _interopRequireDefault(_shallowequal);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var shallowCompare = function shallowCompare(instance, nextProps, nextState) {
return !(0, _shallowequal2.default)(instance.props, nextProps) || !(0, _shallowequal2.default)(instance.state, nextState);
};
exports.default = shallowCompare;
/***/ },
/* 10 */
/***/ function(module, exports) {
module.exports = isPromise;
function isPromise(obj) {
return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
}
/***/ },
/* 11 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _es6Error = __webpack_require__(62);
var _es6Error2 = _interopRequireDefault(_es6Error);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var SubmissionError = function (_ExtendableError) {
_inherits(SubmissionError, _ExtendableError);
function SubmissionError(errors) {
_classCallCheck(this, SubmissionError);
var _this = _possibleConstructorReturn(this, (SubmissionError.__proto__ || Object.getPrototypeOf(SubmissionError)).call(this, 'Submit Validation Failed'));
_this.errors = errors;
return _this;
}
return SubmissionError;
}(_es6Error2.default);
exports.default = SubmissionError;
/***/ },
/* 12 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.updateSyncErrors = exports.untouch = exports.unregisterField = exports.touch = exports.setSubmitSucceeded = exports.setSubmitFailed = exports.stopSubmit = exports.stopAsyncValidation = exports.startSubmit = exports.startAsyncValidation = exports.reset = exports.registerField = exports.initialize = exports.focus = exports.destroy = exports.change = exports.blur = exports.autofill = exports.arrayUnshift = exports.arraySwap = exports.arraySplice = exports.arrayShift = exports.arrayRemoveAll = exports.arrayRemove = exports.arrayPush = exports.arrayPop = exports.arrayMove = exports.arrayInsert = undefined;
var _actionTypes = __webpack_require__(7);
var arrayInsert = exports.arrayInsert = function arrayInsert(form, field, index, value) {
return { type: _actionTypes.ARRAY_INSERT, meta: { form: form, field: field, index: index }, payload: value };
};
var arrayMove = exports.arrayMove = function arrayMove(form, field, from, to) {
return { type: _actionTypes.ARRAY_MOVE, meta: { form: form, field: field, from: from, to: to } };
};
var arrayPop = exports.arrayPop = function arrayPop(form, field) {
return { type: _actionTypes.ARRAY_POP, meta: { form: form, field: field } };
};
var arrayPush = exports.arrayPush = function arrayPush(form, field, value) {
return { type: _actionTypes.ARRAY_PUSH, meta: { form: form, field: field }, payload: value };
};
var arrayRemove = exports.arrayRemove = function arrayRemove(form, field, index) {
return { type: _actionTypes.ARRAY_REMOVE, meta: { form: form, field: field, index: index } };
};
var arrayRemoveAll = exports.arrayRemoveAll = function arrayRemoveAll(form, field) {
return { type: _actionTypes.ARRAY_REMOVE_ALL, meta: { form: form, field: field } };
};
var arrayShift = exports.arrayShift = function arrayShift(form, field) {
return { type: _actionTypes.ARRAY_SHIFT, meta: { form: form, field: field } };
};
var arraySplice = exports.arraySplice = function arraySplice(form, field, index, removeNum, value) {
var action = {
type: _actionTypes.ARRAY_SPLICE,
meta: { form: form, field: field, index: index, removeNum: removeNum }
};
if (value !== undefined) {
action.payload = value;
}
return action;
};
var arraySwap = exports.arraySwap = function arraySwap(form, field, indexA, indexB) {
if (indexA === indexB) {
throw new Error('Swap indices cannot be equal');
}
if (indexA < 0 || indexB < 0) {
throw new Error('Swap indices cannot be negative');
}
return { type: _actionTypes.ARRAY_SWAP, meta: { form: form, field: field, indexA: indexA, indexB: indexB } };
};
var arrayUnshift = exports.arrayUnshift = function arrayUnshift(form, field, value) {
return { type: _actionTypes.ARRAY_UNSHIFT, meta: { form: form, field: field }, payload: value };
};
var autofill = exports.autofill = function autofill(form, field, value) {
return { type: _actionTypes.AUTOFILL, meta: { form: form, field: field }, payload: value };
};
var blur = exports.blur = function blur(form, field, value, touch) {
return { type: _actionTypes.BLUR, meta: { form: form, field: field, touch: touch }, payload: value };
};
var change = exports.change = function change(form, field, value, touch, persistentSubmitErrors) {
return { type: _actionTypes.CHANGE, meta: { form: form, field: field, touch: touch, persistentSubmitErrors: persistentSubmitErrors }, payload: value };
};
var destroy = exports.destroy = function destroy(form) {
return { type: _actionTypes.DESTROY, meta: { form: form } };
};
var focus = exports.focus = function focus(form, field) {
return { type: _actionTypes.FOCUS, meta: { form: form, field: field } };
};
var initialize = exports.initialize = function initialize(form, values, keepDirty) {
return { type: _actionTypes.INITIALIZE, meta: { form: form, keepDirty: keepDirty }, payload: values };
};
var registerField = exports.registerField = function registerField(form, name, type) {
return { type: _actionTypes.REGISTER_FIELD, meta: { form: form }, payload: { name: name, type: type } };
};
var reset = exports.reset = function reset(form) {
return { type: _actionTypes.RESET, meta: { form: form } };
};
var startAsyncValidation = exports.startAsyncValidation = function startAsyncValidation(form, field) {
return { type: _actionTypes.START_ASYNC_VALIDATION, meta: { form: form, field: field } };
};
var startSubmit = exports.startSubmit = function startSubmit(form) {
return { type: _actionTypes.START_SUBMIT, meta: { form: form } };
};
var stopAsyncValidation = exports.stopAsyncValidation = function stopAsyncValidation(form, errors) {
var action = {
type: _actionTypes.STOP_ASYNC_VALIDATION,
meta: { form: form },
payload: errors
};
if (errors && Object.keys(errors).length) {
action.error = true;
}
return action;
};
var stopSubmit = exports.stopSubmit = function stopSubmit(form, errors) {
var action = {
type: _actionTypes.STOP_SUBMIT,
meta: { form: form },
payload: errors
};
if (errors && Object.keys(errors).length) {
action.error = true;
}
return action;
};
var setSubmitFailed = exports.setSubmitFailed = function setSubmitFailed(form) {
for (var _len = arguments.length, fields = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
fields[_key - 1] = arguments[_key];
}
return { type: _actionTypes.SET_SUBMIT_FAILED, meta: { form: form, fields: fields }, error: true };
};
var setSubmitSucceeded = exports.setSubmitSucceeded = function setSubmitSucceeded(form) {
for (var _len2 = arguments.length, fields = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
fields[_key2 - 1] = arguments[_key2];
}
return { type: _actionTypes.SET_SUBMIT_SUCCEEDED, meta: { form: form, fields: fields }, error: false };
};
var touch = exports.touch = function touch(form) {
for (var _len3 = arguments.length, fields = Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
fields[_key3 - 1] = arguments[_key3];
}
return { type: _actionTypes.TOUCH, meta: { form: form, fields: fields } };
};
var unregisterField = exports.unregisterField = function unregisterField(form, name) {
return { type: _actionTypes.UNREGISTER_FIELD, meta: { form: form }, payload: { name: name } };
};
var untouch = exports.untouch = function untouch(form) {
for (var _len4 = arguments.length, fields = Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
fields[_key4 - 1] = arguments[_key4];
}
return { type: _actionTypes.UNTOUCH, meta: { form: form, fields: fields } };
};
var updateSyncErrors = exports.updateSyncErrors = function updateSyncErrors(form) {
var syncErrors = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
var error = arguments[2];
return { type: _actionTypes.UPDATE_SYNC_ERRORS, meta: { form: form }, payload: { syncErrors: syncErrors, error: error } };
};
/***/ },
/* 13 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _noop2 = __webpack_require__(97);
var _noop3 = _interopRequireDefault(_noop2);
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; };
var _createOnBlur = __webpack_require__(42);
var _createOnBlur2 = _interopRequireDefault(_createOnBlur);
var _createOnChange = __webpack_require__(43);
var _createOnChange2 = _interopRequireDefault(_createOnChange);
var _createOnDragStart = __webpack_require__(14);
var _createOnDragStart2 = _interopRequireDefault(_createOnDragStart);
var _createOnDrop = __webpack_require__(44);
var _createOnDrop2 = _interopRequireDefault(_createOnDrop);
var _createOnFocus = __webpack_require__(45);
var _createOnFocus2 = _interopRequireDefault(_createOnFocus);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
var processProps = function processProps(type, props, _value) {
var value = props.value;
if (type === 'checkbox') {
return _extends({}, props, {
checked: !!value
});
}
if (type === 'radio') {
return _extends({}, props, {
checked: value === _value,
value: _value
});
}
if (type === 'select-multiple') {
return _extends({}, props, {
value: value || []
});
}
if (type === 'file') {
return _extends({}, props, {
value: undefined
});
}
return props;
};
var createFieldProps = function createFieldProps(getIn, name, _ref) {
var asyncError = _ref.asyncError;
var asyncValidating = _ref.asyncValidating;
var blur = _ref.blur;
var change = _ref.change;
var dirty = _ref.dirty;
var dispatch = _ref.dispatch;
var focus = _ref.focus;
var format = _ref.format;
var normalize = _ref.normalize;
var parse = _ref.parse;
var pristine = _ref.pristine;
var props = _ref.props;
var state = _ref.state;
var submitError = _ref.submitError;
var submitting = _ref.submitting;
var value = _ref.value;
var _value = _ref._value;
var syncError = _ref.syncError;
var custom = _objectWithoutProperties(_ref, ['asyncError', 'asyncValidating', 'blur', 'change', 'dirty', 'dispatch', 'focus', 'format', 'normalize', 'parse', 'pristine', 'props', 'state', 'submitError', 'submitting', 'value', '_value', 'syncError']);
var asyncValidate = arguments.length <= 3 || arguments[3] === undefined ? _noop3.default : arguments[3];
var error = syncError || asyncError || submitError;
var boundNormalize = normalize && function (value) {
return normalize(name, value);
};
var boundChange = function boundChange(value) {
return dispatch(change(name, value));
};
var onChange = (0, _createOnChange2.default)(boundChange, {
normalize: boundNormalize,
parse: parse
});
var fieldValue = value == null ? '' : value;
return {
input: processProps(custom.type, {
name: name,
onBlur: (0, _createOnBlur2.default)(function (value) {
return dispatch(blur(name, value));
}, {
normalize: boundNormalize,
parse: parse,
after: asyncValidate.bind(null, name)
}),
onChange: onChange,
onDragStart: (0, _createOnDragStart2.default)(name, fieldValue),
onDrop: (0, _createOnDrop2.default)(name, boundChange),
onFocus: (0, _createOnFocus2.default)(name, function () {
return dispatch(focus(name));
}),
value: format ? format(fieldValue) : fieldValue
}, _value),
meta: _extends({}, state, {
active: !!(state && getIn(state, 'active')),
asyncValidating: asyncValidating,
autofilled: !!(state && getIn(state, 'autofilled')),
dirty: dirty,
dispatch: dispatch,
error: error,
invalid: !!error,
pristine: pristine,
submitting: !!submitting,
touched: !!(state && getIn(state, 'touched')),
valid: !error,
visited: !!(state && getIn(state, 'visited'))
}),
custom: _extends({}, custom, props)
};
};
exports.default = createFieldProps;
/***/ },
/* 14 */
/***/ function(module, exports) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var dataKey = exports.dataKey = 'text';
var createOnDragStart = function createOnDragStart(name, value) {
return function (event) {
event.dataTransfer.setData(dataKey, value);
};
};
exports.default = createOnDragStart;
/***/ },
/* 15 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _isEvent = __webpack_require__(16);
var _isEvent2 = _interopRequireDefault(_isEvent);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var getSelectedValues = function getSelectedValues(options) {
var result = [];
if (options) {
for (var index = 0; index < options.length; index++) {
var option = options[index];
if (option.selected) {
result.push(option.value);
}
}
}
return result;
};
var getValue = function getValue(event, isReactNative) {
if ((0, _isEvent2.default)(event)) {
if (!isReactNative && event.nativeEvent && event.nativeEvent.text !== undefined) {
return event.nativeEvent.text;
}
if (isReactNative && event.nativeEvent !== undefined) {
return event.nativeEvent.text;
}
var _event$target = event.target;
var type = _event$target.type;
var value = _event$target.value;
var checked = _event$target.checked;
var files = _event$target.files;
var dataTransfer = event.dataTransfer;
if (type === 'checkbox') {
return checked;
}
if (type === 'file') {
return files || dataTransfer && dataTransfer.files;
}
if (type === 'select-multiple') {
return getSelectedValues(event.target.options);
}
if (value !== '' && (type === 'number' || type === 'range')) {
return parseFloat(value);
}
return value;
}
return event;
};
exports.default = getValue;
/***/ },
/* 16 */
/***/ function(module, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var isEvent = function isEvent(candidate) {
return !!(candidate && candidate.stopPropagation && candidate.preventDefault);
};
exports.default = isEvent;
/***/ },
/* 17 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _isEvent = __webpack_require__(16);
var _isEvent2 = _interopRequireDefault(_isEvent);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var silenceEvent = function silenceEvent(event) {
var is = (0, _isEvent2.default)(event);
if (is) {
event.preventDefault();
}
return is;
};
exports.default = silenceEvent;
/***/ },
/* 18 */
/***/ function(module, exports) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var isReactNative = typeof window !== 'undefined' && window.navigator && window.navigator.product && window.navigator.product === 'ReactNative';
exports.default = isReactNative;
/***/ },
/* 19 */
/***/ function(module, exports) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var createIsPristine = function createIsPristine(_ref) {
var deepEqual = _ref.deepEqual;
var empty = _ref.empty;
var getIn = _ref.getIn;
return function (form) {
var getFormState = arguments.length <= 1 || arguments[1] === undefined ? function (state) {
return getIn(state, 'form');
} : arguments[1];
return function (state) {
var formState = getFormState(state);
var initial = getIn(formState, form + '.initial') || empty;
var values = getIn(formState, form + '.values') || initial;
return deepEqual(initial, values);
};
};
};
exports.default = createIsPristine;
/***/ },
/* 20 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _toPath2 = __webpack_require__(6);
var _toPath3 = _interopRequireDefault(_toPath2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var getIn = function getIn(state, field) {
if (!state) {
return state;
}
var path = (0, _toPath3.default)(field);
var length = path.length;
if (!length) {
return undefined;
}
var result = state;
for (var i = 0; i < length && !!result; ++i) {
result = result[path[i]];
}
return result;
};
exports.default = getIn;
/***/ },
/* 21 */
/***/ function(module, exports) {
/**
* Removes all key-value entries from the list cache.
*
* @private
* @name clear
* @memberOf ListCache
*/
function listCacheClear() {
this.__data__ = [];
}
module.exports = listCacheClear;
/***/ },
/* 22 */
/***/ function(module, exports, __webpack_require__) {
var assocIndexOf = __webpack_require__(5);
/** Used for built-in method references. */
var arrayProto = Array.prototype;
/** Built-in value references. */
var splice = arrayProto.splice;
/**
* Removes `key` and its value from the list cache.
*
* @private
* @name delete
* @memberOf ListCache
* @param {string} key The key of the value to remove.
* @returns {boolean} Returns `true` if the entry was removed, else `false`.
*/
function listCacheDelete(key) {
var data = this.__data__,
index = assocIndexOf(data, key);
if (index < 0) {
return false;
}
var lastIndex = data.length - 1;
if (index == lastIndex) {
data.pop();
} else {
splice.call(data, index, 1);
}
return true;
}
module.exports = listCacheDelete;
/***/ },
/* 23 */
/***/ function(module, exports, __webpack_require__) {
var assocIndexOf = __webpack_require__(5);
/**
* Gets the list cache value for `key`.
*
* @private
* @name get
* @memberOf ListCache
* @param {string} key The key of the value to get.
* @returns {*} Returns the entry value.
*/
function listCacheGet(key) {
var data = this.__data__,
index = assocIndexOf(data, key);
return index < 0 ? undefined : data[index][1];
}
module.exports = listCacheGet;
/***/ },
/* 24 */
/***/ function(module, exports, __webpack_require__) {
var assocIndexOf = __webpack_require__(5);
/**
* Checks if a list cache value for `key` exists.
*
* @private
* @name has
* @memberOf ListCache
* @param {string} key The key of the entry to check.
* @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
*/
function listCacheHas(key) {
return assocIndexOf(this.__data__, key) > -1;
}
module.exports = listCacheHas;
/***/ },
/* 25 */
/***/ function(module, exports, __webpack_require__) {
var assocIndexOf = __webpack_require__(5);
/**
* Sets the list cache `key` to `value`.
*
* @private
* @name set
* @memberOf ListCache
* @param {string} key The key of the value to set.
* @param {*} value The value to set.
* @returns {Object} Returns the list cache instance.
*/
function listCacheSet(key, value) {
var data = this.__data__,
index = assocIndexOf(data, key);
if (index < 0) {
data.push([key, value]);
} else {
data[index][1] = value;
}
return this;
}
module.exports = listCacheSet;
/***/ },
/* 26 */
/***/ function(module, exports) {
/**
* Checks if `value` is classified as an `Array` object.
*
* @static
* @memberOf _
* @since 0.1.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is an array, else `false`.
* @example
*
* _.isArray([1, 2, 3]);
* // => true
*
* _.isArray(document.body.children);
* // => false
*
* _.isArray('abc');
* // => false
*
* _.isArray(_.noop);
* // => false
*/
var isArray = Array.isArray;
module.exports = isArray;
/***/ },
/* 27 */
/***/ function(module, exports, __webpack_require__) {
var overArg = __webpack_require__(85);
/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeKeys = overArg(Object.keys, Object);
module.exports = nativeKeys;
/***/ },
/* 28 */
/***/ function(module, exports, __webpack_require__) {
var baseForOwn = __webpack_require__(74),
baseIteratee = __webpack_require__(77);
/**
* Creates an object with the same keys as `object` and values generated
* by running each own enumerable string keyed property of `object` thru
* `iteratee`. The iteratee is invoked with three arguments:
* (value, key, object).
*
* @static
* @memberOf _
* @since 2.4.0
* @category Object
* @param {Object} object The object to iterate over.
* @param {Function} [iteratee=_.identity] The function invoked per iteration.
* @returns {Object} Returns the new mapped object.
* @see _.mapKeys
* @example
*
* var users = {
* 'fred': { 'user': 'fred', 'age': 40 },
* 'pebbles': { 'user': 'pebbles', 'age': 1 }
* };
*
* _.mapValues(users, function(o) { return o.age; });
* // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)
*
* // The `_.property` iteratee shorthand.
* _.mapValues(users, 'age');
* // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)
*/
function mapValues(object, iteratee) {
var result = {};
iteratee = baseIteratee(iteratee, 3);
baseForOwn(object, function(value, key, object) {
result[key] = iteratee(value, key, object);
});
return result;
}
module.exports = mapValues;
/***/ },
/* 29 */
/***/ function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_29__;
/***/ },
/* 30 */
/***/ function(module, exports) {
/**
* Array.prototype.findIndex
*
* @ref https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex
*/
module.exports = (function() {
if (!Array.prototype.findIndex) {
Array.prototype.findIndex = function(predicate) {
if (this === null) {
throw new TypeError('Array.prototype.findIndex called on null or undefined');
}
if (typeof predicate !== 'function') {
throw new TypeError('predicate must be a function');
}
var list = Object(this);
var length = list.length >>> 0;
var thisArg = arguments[1];
var value;
for (var i = 0; i < length; i++) {
value = list[i];
if (predicate.call(thisArg, value, i, list)) {
return i;
}
}
return -1;
};
}
})();
/***/ },
/* 31 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
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; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = __webpack_require__(1);
var _reactRedux = __webpack_require__(3);
var _createFieldProps2 = __webpack_require__(13);
var _createFieldProps3 = _interopRequireDefault(_createFieldProps2);
var _plain = __webpack_require__(2);
var _plain2 = _interopRequireDefault(_plain);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var propsToNotUpdateFor = ['_reduxForm'];
var createConnectedField = function createConnectedField(_ref) {
var deepEqual = _ref.deepEqual;
var getIn = _ref.getIn;
var getSyncError = function getSyncError(syncErrors, name) {
var error = _plain2.default.getIn(syncErrors, name);
// Because the error for this field might not be at a level in the error structure where
// it can be set directly, it might need to be unwrapped from the _error property
return error && error._error ? error._error : error;
};
var ConnectedField = function (_Component) {
_inherits(ConnectedField, _Component);
function ConnectedField() {
_classCallCheck(this, ConnectedField);
return _possibleConstructorReturn(this, (ConnectedField.__proto__ || Object.getPrototypeOf(ConnectedField)).apply(this, arguments));
}
_createClass(ConnectedField, [{
key: 'shouldComponentUpdate',
value: function shouldComponentUpdate(nextProps) {
var _this2 = this;
var nextPropsKeys = Object.keys(nextProps);
var thisPropsKeys = Object.keys(this.props);
return nextPropsKeys.length == thisPropsKeys.length && nextPropsKeys.some(function (prop) {
return !~propsToNotUpdateFor.indexOf(prop) && !deepEqual(_this2.props[prop], nextProps[prop]);
});
}
}, {
key: 'isPristine',
value: function isPristine() {
return this.props.pristine;
}
}, {
key: 'getValue',
value: function getValue() {
return this.props.value;
}
}, {
key: 'getRenderedComponent',
value: function getRenderedComponent() {
return this.refs.renderedComponent;
}
}, {
key: 'render',
value: function render() {
var _props = this.props;
var component = _props.component;
var withRef = _props.withRef;
var name = _props.name;
var _reduxForm = _props._reduxForm;
var rest = _objectWithoutProperties(_props, ['component', 'withRef', 'name', '_reduxForm']);
var asyncValidate = _reduxForm.asyncValidate;
var blur = _reduxForm.blur;
var change = _reduxForm.change;
var focus = _reduxForm.focus;
var _createFieldProps = (0, _createFieldProps3.default)(getIn, name, _extends({}, rest, {
name: name,
blur: blur,
change: change,
focus: focus
}), asyncValidate);
var custom = _createFieldProps.custom;
var props = _objectWithoutProperties(_createFieldProps, ['custom']);
if (withRef) {
props.ref = 'renderedComponent';
}
if (typeof component === 'string') {
var input = props.input;
var meta = props.meta; // eslint-disable-line no-unused-vars
// flatten input into other props
return (0, _react.createElement)(component, _extends({}, input, custom));
} else {
return (0, _react.createElement)(component, _extends({}, props, custom));
}
}
}]);
return ConnectedField;
}(_react.Component);
ConnectedField.propTypes = {
component: _react.PropTypes.oneOfType([_react.PropTypes.func, _react.PropTypes.string]).isRequired,
props: _react.PropTypes.object
};
var connector = (0, _reactRedux.connect)(function (state, ownProps) {
var name = ownProps.name;
var _ownProps$_reduxForm = ownProps._reduxForm;
var initialValues = _ownProps$_reduxForm.initialValues;
var getFormState = _ownProps$_reduxForm.getFormState;
var formState = getFormState(state);
var initialState = getIn(formState, 'initial.' + name);
var initial = initialState !== undefined ? initialState : initialValues && getIn(initialValues, name);
var value = getIn(formState, 'values.' + name);
var submitting = getIn(formState, 'submitting');
var syncError = getSyncError(getIn(formState, 'syncErrors'), name);
var pristine = value === initial;
return {
asyncError: getIn(formState, 'asyncErrors.' + name),
asyncValidating: getIn(formState, 'asyncValidating') === name,
dirty: !pristine,
pristine: pristine,
state: getIn(formState, 'fields.' + name),
submitError: getIn(formState, 'submitErrors.' + name),
submitting: submitting,
syncError: syncError,
value: value,
_value: ownProps.value // save value passed in (for checkboxes)
};
}, undefined, undefined, { withRef: true });
return connector(ConnectedField);
};
exports.default = createConnectedField;
/***/ },
/* 32 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mapValues2 = __webpack_require__(28);
var _mapValues3 = _interopRequireDefault(_mapValues2);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = __webpack_require__(1);
var _reactRedux = __webpack_require__(3);
var _redux = __webpack_require__(29);
var _createFieldArrayProps = __webpack_require__(39);
var _createFieldArrayProps2 = _interopRequireDefault(_createFieldArrayProps);
var _plain = __webpack_require__(2);
var _plain2 = _interopRequireDefault(_plain);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var propsToNotUpdateFor = ['_reduxForm', 'value'];
var createConnectedFieldArray = function createConnectedFieldArray(_ref) {
var deepEqual = _ref.deepEqual;
var getIn = _ref.getIn;
var size = _ref.size;
var getSyncError = function getSyncError(syncErrors, name) {
// For an array, the error can _ONLY_ be under _error.
// This is why this getSyncError is not the same as the
// one in Field.
return _plain2.default.getIn(syncErrors, name + '._error');
};
var ConnectedFieldArray = function (_Component) {
_inherits(ConnectedFieldArray, _Component);
function ConnectedFieldArray() {
_classCallCheck(this, ConnectedFieldArray);
return _possibleConstructorReturn(this, (ConnectedFieldArray.__proto__ || Object.getPrototypeOf(ConnectedFieldArray)).apply(this, arguments));
}
_createClass(ConnectedFieldArray, [{
key: 'shouldComponentUpdate',
value: function shouldComponentUpdate(nextProps