UNPKG

dareway-rui

Version:

999 lines (957 loc) 47 kB
'use strict'; var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault'); Object.defineProperty(exports, '__esModule', { value: true }); exports.default = _default; var _objectDestructuringEmpty2 = _interopRequireDefault(require('@babel/runtime/helpers/objectDestructuringEmpty')); var _defineProperty2 = _interopRequireDefault(require('@babel/runtime/helpers/defineProperty')); var _objectSpread26 = _interopRequireDefault(require('@babel/runtime/helpers/objectSpread')); var _FormConstants = require('./FormConstants'); var _TaglibConstants = require('../TaglibConstants'); var _CodeUtil = _interopRequireDefault(require('../../code/CodeUtil')); var _dataNormalizeHelper = require('./dataNormalizeHelper'); function _default() { return { /************************************************************************************************************** * Dropdown、Cascade、Code相关 相关 API **************************************************************************************************************/ FormItemAPI_setCodeMapSuccess: function FormItemAPI_setCodeMapSuccess(state, _ref) { var payload = _ref.payload; var formItemName = payload.meta.formItemName, _payload$params = payload.params, codeMap = _payload$params.codeMap, value = _payload$params.value; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { codeMap: codeMap, value: value, invalidCode: null }) ) ) }); }, FormItemAPI_setDropdownCascadeCodeDataSuccess: function FormItemAPI_setDropdownCascadeCodeDataSuccess( state, _ref2 ) { var payload = _ref2.payload; var formItemName = payload.meta.formItemName, _payload$params2 = payload.params, cascadeData = _payload$params2.cascadeData, codeMap = _payload$params2.codeMap, value = _payload$params2.value; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { cascadeData: cascadeData, codeMap: codeMap, value: value, invalidCode: null }) ) ) }); }, FormItemAPI_setCascadeDataSuccess: function FormItemAPI_setCascadeDataSuccess(state, _ref3) { var payload = _ref3.payload; var formItemName = payload.meta.formItemName, _payload$params3 = payload.params, cascadeData = _payload$params3.cascadeData, value = _payload$params3.value; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { cascadeData: cascadeData, value: value }) ) ) }); }, FormItemAPI_initSingleCodeMapSuccess: function FormItemAPI_initSingleCodeMapSuccess(state, _ref4) { var payload = _ref4.payload; var formItemName = payload.meta.formItemName, codeMap = payload.params.codeMap; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { codeMap: codeMap }) ) ) }); }, FormItemAPI_initCodeMapListSuccess: function FormItemAPI_initCodeMapListSuccess(state, _ref5) { var payload = _ref5.payload; var formItems = state.formItems; var codeMapResult = payload; var keys = Object.keys(formItems); var newFormItems = {}; for (var i = 0; i < keys.length; i++) { var name = keys[i]; var curItem = formItems[name]; var tagType = formItems[name][_TaglibConstants.TAG_TYPE_KEY_IN_STATE]; if ( tagType === _FormConstants.TAG_TYPE_DROPDOWN || tagType === _FormConstants.TAG_TYPE_MULTISELECT || tagType === _FormConstants.TAG_TYPE_RADIO_LIST || tagType === _FormConstants.TAG_TYPE_CHECKBOX_LIST ) { var code = curItem.code, codeMap = curItem.codeMap, prefix = curItem.prefix, excludeCodes = curItem.excludeCodes; if (code && codeMapResult[code.toUpperCase()]) { codeMap = _CodeUtil.default.fiterCodeMapByPrefix(codeMapResult[code.toUpperCase()], prefix); codeMap = _CodeUtil.default.filterCodeMapByExcludeCodes(codeMap, excludeCodes); newFormItems[name] = (0, _objectSpread26.default)({}, formItems[name], { codeMap: codeMap }); } else { newFormItems[name] = (0, _objectSpread26.default)({}, formItems[name], { codeMap: codeMap == null ? [] : codeMap }); } } else { newFormItems[name] = (0, _objectSpread26.default)({}, formItems[name]); } } return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)({}, newFormItems) }); }, /************************************************************************************************************** * CollapsibleBlock 相关 API **************************************************************************************************************/ FormItemAPI_expandSuccess: function FormItemAPI_expandSuccess(state, _ref6) { var payload = _ref6.payload; var formItemName = payload.meta.formItemName; (0, _objectDestructuringEmpty2.default)(payload.params); return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { collapsed: false }) ) ) }); }, FormItemAPI_collapseSuccess: function FormItemAPI_collapseSuccess(state, _ref7) { var payload = _ref7.payload; var formItemName = payload.meta.formItemName; (0, _objectDestructuringEmpty2.default)(payload.params); return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { collapsed: true }) ) ) }); }, FormItemAPI_setCollapsedSuccess: function FormItemAPI_setCollapsedSuccess(state, _ref8) { var payload = _ref8.payload; var formItemName = payload.meta.formItemName, collapsed = payload.params.collapsed; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { collapsed: collapsed }) ) ) }); }, /************************************************************************************************************** * FormItem 组件 API * - label * - 只读 * - 必填 * - 隐藏 * - 加粗 * - 下划线 * - 斜体 * - 背景色 * - 字体色 **************************************************************************************************************/ FormItemAPI_setLabelValueSuccess: function FormItemAPI_setLabelValueSuccess(state, _ref9) { var payload = _ref9.payload; var formItemName = payload.meta.formItemName, labelValue = payload.params.labelValue; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { labelValue: labelValue }) ) ) }); }, FormItemAPI_setReadOnlySuccess: function FormItemAPI_setReadOnlySuccess(state, _ref10) { var payload = _ref10.payload; var formItemName = payload.meta.formItemName, readonly = payload.params.readonly; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { readonly: readonly }) ) ) }); }, FormItemAPI_setRequiredSuccess: function FormItemAPI_setRequiredSuccess(state, _ref11) { var payload = _ref11.payload; var formItemName = payload.meta.formItemName, required = payload.params.required; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { required: required }) ) ) }); }, FormItemAPI_setHiddenSuccess: function FormItemAPI_setHiddenSuccess(state, _ref12) { var payload = _ref12.payload; var formItemName = payload.meta.formItemName, hidden = payload.params.hidden; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { hidden: hidden }) ) ) }); }, FormItemAPI_setBoldSuccess: function FormItemAPI_setBoldSuccess(state, _ref13) { var payload = _ref13.payload; var formItemName = payload.meta.formItemName, bold = payload.params.bold; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { bold: bold }) ) ) }); }, FormItemAPI_setUnderlineSuccess: function FormItemAPI_setUnderlineSuccess(state, _ref14) { var payload = _ref14.payload; var formItemName = payload.meta.formItemName, underline = payload.params.underline; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { underline: underline }) ) ) }); }, FormItemAPI_setObliqueSuccess: function FormItemAPI_setObliqueSuccess(state, _ref15) { var payload = _ref15.payload; var formItemName = payload.meta.formItemName, oblique = payload.params.oblique; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { oblique: oblique }) ) ) }); }, FormItemAPI_setBackgroundColorSuccess: function FormItemAPI_setBackgroundColorSuccess(state, _ref16) { var payload = _ref16.payload; var formItemName = payload.meta.formItemName, backgroundColor = payload.params.backgroundColor; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { backgroundColor: backgroundColor }) ) ) }); }, FormItemAPI_setFontColorSuccess: function FormItemAPI_setFontColorSuccess(state, _ref17) { var payload = _ref17.payload; var formItemName = payload.meta.formItemName, fontColor = payload.params.fontColor; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { fontColor: fontColor }) ) ) }); }, /************************************************************************************************************** * FormItem 组件 API * - LOV **************************************************************************************************************/ FormItemAPI_setLovClearMappingValuesArraySuccess: function FormItemAPI_setLovClearMappingValuesArraySuccess( state, _ref18 ) { var payload = _ref18.payload; var lovMappingValuesArray = payload; var newItems = lovMappingValuesArray.reduce(function(total, curItems) { var formItemName = curItems.meta.formItemName, _curItems$params = curItems.params, value = _curItems$params.value, invalidCode = _curItems$params.invalidCode; var tagType = state.formItems[formItemName][_TaglibConstants.TAG_TYPE_KEY_IN_STATE]; if (tagType === _FormConstants.TAG_TYPE_RADIO_LIST) { total[formItemName] = (0, _objectSpread26.default)({}, state.formItems[formItemName], { value: value, invalidCode: invalidCode, error: null // js设置时,不提示异常 }); return total; } else if (tagType === _FormConstants.TAG_TYPE_DROPDOWN) { var _formItemName = curItems.meta.formItemName, _curItems$params2 = curItems.params, _value = _curItems$params2.value, _invalidCode = _curItems$params2.invalidCode, cascadeSubComponentResultArray = _curItems$params2.cascadeSubComponentResultArray; var newDropdownItems = cascadeSubComponentResultArray.reduce(function(total, curItems) { var tagName = curItems.tagName, codeMap = curItems.codeMap, value = curItems.value; var oldItems = state.formItems[tagName]; total[tagName] = (0, _objectSpread26.default)({}, oldItems, { codeMap: codeMap, value: value, invalidCode: null, error: null }); return total; }, {}); //添加本dropdown的内容 newDropdownItems[_formItemName] = (0, _objectSpread26.default)({}, state.formItems[_formItemName], { value: _value, invalidCode: _invalidCode, error: null // fillData 不提示异常 }); total = (0, _objectSpread26.default)({}, total, newDropdownItems); return total; } else if ( tagType === _FormConstants.TAG_TYPE_LOV_INPUT || tagType === _FormConstants.TAG_TYPE_STRING_INPUT ) { total[formItemName] = (0, _objectSpread26.default)({}, state.formItems[formItemName], { value: value, oldValueForOnChange: value, error: null // 通过JS设置value时不提示异常 }); return total; } else { total[formItemName] = (0, _objectSpread26.default)({}, state.formItems[formItemName], { value: value, error: null // 通过JS设置value时不提示异常 }); return total; } }, {}); return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)({}, state.formItems, newItems) }); }, /************************************************************************************************************** * FormItem 组件 API * - getValue * - setValue * - clear * - checkValue **************************************************************************************************************/ FormItemAPI_setValueSuccess: function FormItemAPI_setValueSuccess(state, _ref19) { var payload = _ref19.payload; var formItemName = payload.meta.formItemName, _payload$params4 = payload.params, tagType = _payload$params4.tagType, value = _payload$params4.value, invalidCode = _payload$params4.invalidCode; if (tagType === _FormConstants.TAG_TYPE_STRING_INPUT) { return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { value: value, oldValueForOnChange: value, error: null // 通过JS设置value时不提示异常 }) ) ) }); } else if ( tagType === _FormConstants.TAG_TYPE_LOV_INPUT || tagType === _FormConstants.TAG_TYPE_STRING_INPUT ) { return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { value: value, oldValueForOnChange: value, error: null // 通过JS设置value时不提示异常 }) ) ) }); } else if (tagType === _FormConstants.TAG_TYPE_DROPDOWN) { var _formItemName2 = payload.meta.formItemName, _payload$params5 = payload.params, _value2 = _payload$params5.value, _invalidCode2 = _payload$params5.invalidCode, cascadeSubComponentResultArray = _payload$params5.cascadeSubComponentResultArray; var oldFormItems = state.formItems; var newItems = cascadeSubComponentResultArray.reduce(function(total, curItems) { var tagName = curItems.tagName, codeMap = curItems.codeMap, value = curItems.value; var oldItems = oldFormItems[tagName]; total[tagName] = (0, _objectSpread26.default)({}, oldItems, { codeMap: codeMap, value: value, invalidCode: null, error: null }); return total; }, {}); //添加本dropdown的内容 newItems[_formItemName2] = (0, _objectSpread26.default)({}, state.formItems[_formItemName2], { value: _value2, invalidCode: _invalidCode2, error: null // fillData 不提示异常 }); return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)({}, state.formItems, newItems) }); } else { /** * StringInput、MultiLineText、Label、password * MultiSelect、checkboxList * Checkbox * CascadeDropdown * LovInput * fileSelector(clear接口) * * */ return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { value: value, error: null // 通过JS设置value时不提示异常 }) ) ) }); } }, FormItemAPI_checkValueSuccess: function FormItemAPI_checkValueSuccess(state, _ref20) { var payload = _ref20.payload; var formItemName = payload.meta.formItemName, error = payload.params.error; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { error: error }) ) ) }); }, /************************************************************************************************************** * FormItem数据同步API * - saveValueOnChangeSuccess * - savaOldValue4OnChangeSuccess **************************************************************************************************************/ FormItemDataSyncAPI_saveValueOnChangeSuccess: function FormItemDataSyncAPI_saveValueOnChangeSuccess( state, _ref21 ) { var payload = _ref21.payload; var name = payload.name, value = payload.value; var tagType = state.formItems[name][_TaglibConstants.TAG_TYPE_KEY_IN_STATE]; var oldItems = state.formItems; var resultItems = {}; if (tagType == _FormConstants.TAG_TYPE_NUMBER_INPUT) { var _state$formItems$name = state.formItems[name], nullable = _state$formItems$name.nullable, zeroDisplayAs0 = _state$formItems$name.zeroDisplayAs0, mask = _state$formItems$name.mask, maxLength = _state$formItems$name.maxLength; var _state$formItems$name2 = state.formItems[name], required = _state$formItems$name2.required, invalidMessage = _state$formItems$name2.invalidMessage; resultItems = (0, _defineProperty2.default)( {}, name, (0, _objectSpread26.default)({}, state.formItems[name], { value: (0, _dataNormalizeHelper.normalizeNumberData)( value, nullable, zeroDisplayAs0, mask, maxLength, 'FormItemDataSync -> NumberInput.setValue(data)' ) }) ); } else if (tagType == _FormConstants.TAG_TYPE_DROPDOWN) { //1、处理级联本dropdown的其他dropdown元素,重置其codeMap和value值 var itemNames = Object.keys(oldItems); for (var i = 0; i < itemNames.length; i++) { var itemName = itemNames[i]; var itemObj = oldItems[itemName]; var _tagType = itemObj[_TaglibConstants.TAG_TYPE_KEY_IN_STATE]; if (_tagType == _FormConstants.TAG_TYPE_DROPDOWN && itemObj['cascadeDependOnTagName'] == name) { var cascadeData = itemObj['cascadeData']; var codeMap = cascadeData[value] ? cascadeData[value] : []; resultItems = (0, _objectSpread26.default)( {}, resultItems, (0, _defineProperty2.default)( {}, itemName, (0, _objectSpread26.default)({}, itemObj, { codeMap: codeMap, value: '' }) ) ); } } //2、添加本dropdown改变后的结果 resultItems = (0, _objectSpread26.default)( {}, resultItems, (0, _defineProperty2.default)( {}, name, (0, _objectSpread26.default)({}, state.formItems[name], { value: value, invalidCode: null }) ) ); } else if ( tagType == _FormConstants.TAG_TYPE_STRING_INPUT || tagType == _FormConstants.TAG_TYPE_PASSWORD || tagType == _FormConstants.TAG_TYPE_DATE_INPUT || tagType == _FormConstants.TAG_TYPE_LOV_INPUT || tagType == _FormConstants.TAG_TYPE_MULTILINETEXT || tagType == _FormConstants.TAG_TYPE_CHECKBOX || tagType == _FormConstants.TAG_TYPE_CHECKBOX_LIST || tagType == _FormConstants.TAG_TYPE_RADIO_LIST || tagType == _FormConstants.TAG_TYPE_MULTISELECT || tagType == _FormConstants.TAG_TYPE_CASCADEDROPDOWN || tagType == _FormConstants.TAG_TYPE_FILESELECTOR ) { resultItems = (0, _defineProperty2.default)( {}, name, (0, _objectSpread26.default)({}, state.formItems[name], { value: value }) ); } else { throw new Error( 'FormItemDataSyncAPI_saveValueOnChangeSuccess\uFF0C\u6807\u7B7E\u7C7B\u578B'.concat( tagType, '\uFF0C\u6846\u67B6\u6682\u65F6\u4E0D\u80FD\u8BC6\u522B...' ) ); } return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)({}, state.formItems, resultItems) }); }, FormItemDataSyncAPI_savaOldValue4SimulateOnHTMLChangeSuccess: function FormItemDataSyncAPI_savaOldValue4SimulateOnHTMLChangeSuccess( state, _ref22 ) { var payload = _ref22.payload; /** * 注意,此处暂时不涉及到NumberInput组件,所以不需要再通过 normalizeNumberData 统一格式化数据 */ var formItemName = payload.meta.formItemName, value = payload.params.value; return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)( {}, formItemName, (0, _objectSpread26.default)({}, state.formItems[formItemName], { oldValueForOnChange: value }) ) ) }); }, /************************************************************************************************************** * Form相关API接口 **************************************************************************************************************/ FormAPI_fillDataSuccess: function FormAPI_fillDataSuccess(state, _ref23) { var payload = _ref23.payload; var finalFormFieldData = payload.finalFormFieldData; var oldFormItems = state.formItems; var newFormItems = Object.keys(oldFormItems).reduce(function(total, curItemName) { var oldItem = oldFormItems[curItemName]; var field = finalFormFieldData[curItemName]; //数据填充的时候,formTitle。collapsibleBlock、label列没有数据填充 if (!field) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem); return total; } var tagType = field.tagType, value = field.value; if ( tagType === _FormConstants.TAG_TYPE_PASSWORD || tagType === _FormConstants.TAG_TYPE_LABEL || tagType === _FormConstants.TAG_TYPE_MULTILINETEXT || tagType === _FormConstants.TAG_TYPE_DATE_INPUT || tagType === _FormConstants.TAG_TYPE_FILESELECTOR || tagType === _FormConstants.TAG_TYPE_CHECKBOX ) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: value, error: null // fillData 不提示异常 }); return total; } else if (tagType === _FormConstants.TAG_TYPE_NUMBER_INPUT) { var nullable = oldItem.nullable, zeroDisplayAs0 = oldItem.zeroDisplayAs0, mask = oldItem.mask, maxLength = oldItem.maxLength; total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: (0, _dataNormalizeHelper.normalizeNumberData)( value, nullable, zeroDisplayAs0, mask, maxLength, 'Form.fillData()->NumberInput.setValue()' ), error: null // fillData 不提示异常 }); return total; } else if ( tagType === _FormConstants.TAG_TYPE_LOV_INPUT || tagType === _FormConstants.TAG_TYPE_STRING_INPUT ) { /** * LovInput组件,用于模拟onHTMLChange事件的中间值 * oldValue4OnChange 存储于 redux 中, * 主要为了解决 lovJS 业务调用 getValue 能取到正确的值问题 */ total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: value, oldValueForOnChange: value, error: null // fillData 不提示异常 }); return total; } else if (tagType === _FormConstants.TAG_TYPE_COLLAPSIBLE_BLOCK) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem); return total; } else if (tagType === _FormConstants.TAG_TYPE_DROPDOWN) { var invalidCode = field.invalidCode, codeMap = field.codeMap, cascadeData = field.cascadeData; total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: value, invalidCode: invalidCode, codeMap: codeMap, cascadeData: cascadeData, error: null // fillData 不提示异常 }); return total; } else if (tagType === _FormConstants.TAG_TYPE_RADIO_LIST) { var _invalidCode3 = field.invalidCode, _codeMap = field.codeMap; total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: value, invalidCode: _invalidCode3, codeMap: _codeMap, error: null // fillData 不提示异常 }); return total; } else if ( tagType === _FormConstants.TAG_TYPE_MULTISELECT || tagType === _FormConstants.TAG_TYPE_CHECKBOX_LIST ) { var _codeMap2 = field.codeMap; total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: value, codeMap: _codeMap2, error: null // fillData 不提示异常 }); return total; } else if (tagType === _FormConstants.TAG_TYPE_CASCADEDROPDOWN) { var _cascadeData = field.cascadeData; total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: value, cascadeData: _cascadeData, error: null }); return total; } else { throw new Error(''.concat(tagType, '\u6682\u65F6\u8FD8\u8BC6\u522B\u4E0D\u4E86...')); } }, {}); return (0, _objectSpread26.default)({}, state, { formItems: newFormItems }); }, FormAPI_clearSuccess: function FormAPI_clearSuccess(state, _ref24) { var payload = _ref24.payload; var oldFormItems = state.formItems; var newFormItems = Object.keys(oldFormItems).reduce(function(total, curItemName) { var oldItem = oldFormItems[curItemName]; var tagType = oldItem[_TaglibConstants.TAG_TYPE_KEY_IN_STATE]; if ( tagType === _FormConstants.TAG_TYPE_STRING_INPUT || tagType === _FormConstants.TAG_TYPE_PASSWORD || tagType === _FormConstants.TAG_TYPE_MULTILINETEXT || tagType === _FormConstants.TAG_TYPE_MULTISELECT || tagType === _FormConstants.TAG_TYPE_CHECKBOX_LIST || tagType === _FormConstants.TAG_TYPE_RADIO_LIST || tagType === _FormConstants.TAG_TYPE_CASCADEDROPDOWN || tagType === _FormConstants.TAG_TYPE_LOV_INPUT ) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: '', error: null }); return total; } else if (tagType === _FormConstants.TAG_TYPE_DROPDOWN) { var cascadeDependOnTagName = oldItem.cascadeDependOnTagName; if (cascadeDependOnTagName) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { codeMap: [], value: '', error: null, invalidCode: null }); } else { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: '', error: null, invalidCode: null }); } return total; } else if (tagType === _FormConstants.TAG_TYPE_CHECKBOX) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: '0', error: null }); return total; } else if (tagType === _FormConstants.TAG_TYPE_NUMBER_INPUT) { var nullable = oldItem.nullable, zeroDisplayAs0 = oldItem.zeroDisplayAs0, mask = oldItem.mask, maxLength = oldItem.maxLength; total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: (0, _dataNormalizeHelper.normalizeNumberData)( null, nullable, zeroDisplayAs0, mask, maxLength, 'Form.clear()->NumberInput.clear()' ), error: null }); return total; } else if (tagType === _FormConstants.TAG_TYPE_DATE_INPUT) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: null, error: null }); return total; } else if ( tagType === _FormConstants.TAG_TYPE_LABEL || tagType === _FormConstants.TAG_TYPE_COLLAPSIBLE_BLOCK ) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem); return total; } else if (tagType === _FormConstants.TAG_TYPE_FILESELECTOR) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem, { value: { file: null }, error: null }); return total; } else { throw new Error(''.concat(tagType, '\u6682\u65F6\u8FD8\u8BC6\u522B\u4E0D\u4E86...')); } }, {}); return (0, _objectSpread26.default)({}, state, { formItems: newFormItems }); }, FormAPI_setHiddenSuccess: function FormAPI_setHiddenSuccess(state, _ref25) { var payload = _ref25.payload; var hidden = payload; return (0, _objectSpread26.default)({}, state, { hidden: hidden }); }, /** * FormAPI_addFormItemSuccess * FormAPI_removeFormItemSuccess * * Form 动态构建时用到的 reducer 函数 */ FormAPI_addFormItemSuccess: function FormAPI_addFormItemSuccess(state, _ref26) { var payload = _ref26.payload; var name = payload.name; // 重名检测 if (state['formItems'].hasOwnProperty(name)) { throw new Error( 'Form \u4E2D\u5DF2\u7ECF\u5B58\u5728 name \u4E3A '.concat( name, ' \u7684\u7EC4\u4EF6\uFF0C\u8BF7\u68C0\u67E5!' ) ); } return (0, _objectSpread26.default)({}, state, { formItems: (0, _objectSpread26.default)( {}, state.formItems, (0, _defineProperty2.default)({}, name, (0, _objectSpread26.default)({}, payload)) ) }); }, FormAPI_removeFormItemSuccess: function FormAPI_removeFormItemSuccess(state, _ref27) { var payload = _ref27.payload; var name = payload.name; var oldFormItems = state.formItems; var newFormItems = Object.keys(oldFormItems).reduce(function(total, curItemName) { var oldItem = oldFormItems[curItemName]; if (curItemName !== name) { total[curItemName] = (0, _objectSpread26.default)({}, oldItem); } return total; }, {}); return (0, _objectSpread26.default)({}, state, { formItems: newFormItems }); }, FormAPI_setAllItemsReadonlySuccess: function FormAPI_setAllItemsReadonlySuccess(state, _ref28) { var payload = _ref28.payload; var formItems = payload.formItems; return (0, _objectSpread26.default)({}, state, { formItems: formItems }); } }; } //@ sourceMappingURL=reducers.js.map