UNPKG

redux-form

Version:

A higher order component decorator for forms using Redux and React

1,522 lines (1,197 loc) 218 kB
(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