@form-create/component-antdv-group 2.5.10 → 2.5.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * @form-create/component-antdv-group v2.5.10
3
- * (c) 2018-2021 xaboy
2
+ * @form-create/component-antdv-group v2.5.17
3
+ * (c) 2018-2022 xaboy
4
4
  * Github https://github.com/xaboy/form-create with @form-create/component-antdv-group
5
5
  * Released under the MIT License.
6
6
  */
7
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).FcGroup=t()}(this,function(){"use strict";function e(){return(e=Object.assign||function(e){for(var t,n=1;n<arguments.length;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)}var t=["attrs","props","domProps"],n=["class","style","directives"],i=["on","nativeOn"],r=function(e,t){return function(){e&&e.apply(this,arguments),t&&t.apply(this,arguments)}},o=function(o){return o.reduce(function(o,a){for(var c in a)if(o[c])if(-1!==t.indexOf(c))o[c]=e({},o[c],a[c]);else if(-1!==n.indexOf(c)){var s=o[c]instanceof Array?o[c]:[o[c]],u=a[c]instanceof Array?a[c]:[a[c]];o[c]=s.concat(u)}else if(-1!==i.indexOf(c))for(var l in a[c])if(o[c][l]){var f=o[c][l]instanceof Array?o[c][l]:[o[c][l]],h=a[c][l]instanceof Array?a[c][l]:[a[c][l]];o[c][l]=f.concat(h)}else o[c][l]=a[c][l];else if("hook"==c)for(var d in a[c])o[c][d]=o[c][d]?r(o[c][d],a[c][d]):a[c][d];else o[c]=a[c];else o[c]=a[c];return o},{})};function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,i)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach(function(t){a(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function u(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}return{name:"fcGroup",props:{field:String,rule:[Array,Object],rules:Array,expand:Number,options:Object,formCreateInject:{type:Object,required:!0},button:{type:Boolean,default:!0},max:{type:Number,default:0},min:{type:Number,default:0},value:{type:Array,default:function(){return[]}},disabled:{type:Boolean,default:!1},syncDisabled:{type:Boolean,default:!0},fontSize:{type:Number,default:28},onBeforeRemove:{type:Function,default:function(){}},onBeforeAdd:{type:Function,default:function(){}}},data:function(){return{len:0,cacheRule:{},cacheValue:{}}},computed:{formRule:function(){return this.rule?Array.isArray(this.rule)?this.rule:[this.rule]:this.rules?this.rules:[]}},watch:{disabled:function(e){if(this.syncDisabled){var t=this.cacheRule;Object.keys(t).forEach(function(n){t[n].$f.disabled(e)})}},expand:function(e){var t=e-this.value.length;t>0&&this.expandRule(t)},value:function(e){var t=this;e=e||[];var n=Object.keys(this.cacheRule),i=n.length,r=i-e.length;if(r<0){for(var o=r;o<0;o++)this.addRule(e.length+o);for(var a=0;a<i;a++)this.setValue(n[a],e[a])}else{if(r>0){for(var c=0;c<r;c++)this.removeRule(n[i-c-1]);this.subForm()}e.forEach(function(i,r){t.setValue(n[r],e[r])})}}},methods:{_value:function(e){return e&&(t=e,n=this.field,{}.hasOwnProperty.call(t,n))?e[this.field]:e;var t,n},cache:function(e,t){this.cacheValue[e]=JSON.stringify(t)},input:function(e){this.$emit("input",e),this.$emit("change",e)},formData:function(e,t){var n=this,i=this.cacheRule,r=Object.keys(i);if(r.filter(function(e){return i[e].$f}).length===r.length){var o=r.map(function(i){var r=e===i?t:s({},n.cacheRule[i].$f.form),o=n.field?r[n.field]||null:r;return n.cache(i,o),o});this.input(o)}},setValue:function(e,t){var n=this.field,i=this.cacheRule[e].$f;n&&(t=a({},n,this._value(t))),this.cacheValue[e]!==JSON.stringify(n?t[n]:t)&&(this.cache(e,t),i.coverValue(t||{}))},addRule:function(e,t){var n=this,i=this.formCreateInject.form.copyRules(this.formRule),r=this.options?s({},this.options):{submitBtn:!1,resetBtn:!1};r.formData=this.field?a({},this.field,this._value(this.value[e])):this.value[e]||{},this.$set(this.cacheRule,++this.len,{rule:i,options:r}),t&&this.$nextTick(function(){return n.$emit("add",i,Object.keys(n.cacheRule).length-1)})},add$f:function(e,t,n){var i=this;this.cacheRule[t].$f=n,this.subForm(),this.$nextTick(function(){i.syncDisabled&&n.disabled(i.disabled),i.$emit("itemMounted",n,Object.keys(i.cacheRule).indexOf(t))})},subForm:function(){var e=this;this.formCreateInject.subForm(Object.keys(this.cacheRule).map(function(t){return e.cacheRule[t].$f}))},removeRule:function(e,t){var n=this,i=Object.keys(this.cacheRule).indexOf(e);this.$delete(this.cacheRule,e),this.$delete(this.cacheValue,e),t&&this.$nextTick(function(){return n.$emit("remove",i)})},add:function(e){this.disabled||!1===this.onBeforeAdd(this.value)||this.addRule(e,!0)},del:function(e,t){this.disabled||!1===this.onBeforeRemove(this.value)||(this.removeRule(t,!0),this.subForm(),this.value.splice(e,1),this.input(this.value))},addIcon:function(e){return(0,this.$createElement)("AIcon",{key:"a".concat(e),attrs:{type:"plus-circle"},style:"font-size:".concat(this.fontSize,"px;cursor:").concat(this.disabled?"not-allowed;color:#c9cdd4":"pointer",";"),on:{click:this.add}})},delIcon:function(e,t){var n=this;return(0,this.$createElement)("AIcon",{key:"d".concat(t),attrs:{type:"minus-circle"},style:"font-size:".concat(this.fontSize,"px;cursor:").concat(this.disabled?"not-allowed;color:#c9cdd4":"pointer;color:#606266",";"),on:{click:function(){return n.del(e,t)}}})},makeIcon:function(e,t,n){var i=this;return this.$scopedSlots.button?this.$scopedSlots.button({total:e,index:t,vm:this,key:n,del:function(){return i.del(t,n)},add:this.add}):0===t?[0!==this.max&&e>=this.max?null:this.addIcon(n),0===this.min||e>this.min?this.delIcon(t,n):null]:t>=this.min?this.delIcon(t,n):void 0},emitEvent:function(e,t,n,i){this.$emit.apply(this,[e].concat(u(t),[this.cacheRule[i].$f,n]))},expandRule:function(e){for(var t=0;t<e;t++)this.value.push(this.field?null:{})}},created:function(){var e=(this.expand||0)-this.value.length;e>0&&this.expandRule(e);for(var t=0;t<this.value.length;t++)this.addRule(t)},render:function(){var e=this,t=arguments[0],n=Object.keys(this.cacheRule),i=this.button;return 0===n.length?this.$scopedSlots.default?this.$scopedSlots.default({vm:this,add:this.add}):t("AIcon",{key:"a_def",attrs:{type:"plus-circle"},style:"font-size:".concat(this.fontSize,"px;vertical-align:middle;color:").concat(this.disabled?"#c9cdd4;cursor: not-allowed":"#606266;cursor:pointer",";"),on:{click:this.add}}):t("div",{key:"con"},[n.map(function(r,a){var c=e.cacheRule[r],s=c.rule,u=c.options;return t("ARow",{attrs:{align:"middle",type:"flex"},key:r,style:"border-bottom:1px dashed #d9d9d9;margin-bottom:10px;"},[t("ACol",{attrs:{span:i?20:24}},[t("FormCreate",o([{key:r},{on:{"update:value":function(t){return e.formData(r,t)},"emit-event":function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];return e.emitEvent(t,i,a,r)},input:function(t){return e.add$f(a,r,t)}}},{attrs:{rule:s,option:u,extendOption:!0}}]))]),i?t("ACol",{attrs:{span:2,pull:1,push:1}},[e.makeIcon(n.length,a,r)]):null])})])},beforeMount:function(){this.$options.components.FormCreate=this.formCreateInject.form.$form()}}});
7
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).FcGroup=t()}(this,function(){"use strict";function e(){return(e=Object.assign||function(e){for(var t,n=1;n<arguments.length;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)}var t=["attrs","props","domProps"],n=["class","style","directives"],i=["on","nativeOn"],r=function(e,t){return function(){e&&e.apply(this,arguments),t&&t.apply(this,arguments)}},o=function(o){return o.reduce(function(o,a){for(var c in a)if(o[c])if(-1!==t.indexOf(c))o[c]=e({},o[c],a[c]);else if(-1!==n.indexOf(c)){var s=o[c]instanceof Array?o[c]:[o[c]],u=a[c]instanceof Array?a[c]:[a[c]];o[c]=s.concat(u)}else if(-1!==i.indexOf(c))for(var l in a[c])if(o[c][l]){var f=o[c][l]instanceof Array?o[c][l]:[o[c][l]],h=a[c][l]instanceof Array?a[c][l]:[a[c][l]];o[c][l]=f.concat(h)}else o[c][l]=a[c][l];else if("hook"==c)for(var d in a[c])o[c][d]=o[c][d]?r(o[c][d],a[c][d]):a[c][d];else o[c]=a[c];else o[c]=a[c];return o},{})};function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,i)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach(function(t){a(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function u(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}return{name:"fcGroup",props:{field:String,rule:[Array,Object],rules:Array,expand:Number,options:Object,formCreateInject:{type:Object,required:!0},button:{type:Boolean,default:!0},max:{type:Number,default:0},min:{type:Number,default:0},value:{type:Array,default:function(){return[]}},disabled:{type:Boolean,default:!1},syncDisabled:{type:Boolean,default:!0},fontSize:{type:Number,default:28},onBeforeRemove:{type:Function,default:function(){}},onBeforeAdd:{type:Function,default:function(){}}},data:function(){return{len:0,cacheRule:{},cacheValue:{},type:void 0}},computed:{formRule:function(){return this.rule?Array.isArray(this.rule)?this.rule:[this.rule]:this.rules?this.rules:[]}},watch:{disabled:function(e){if(this.syncDisabled){var t=this.cacheRule;Object.keys(t).forEach(function(n){t[n].$f.disabled(e)})}},expand:function(e){var t=e-this.value.length;t>0&&this.expandRule(t)},value:function(e){var t=this;e=e||[];var n=Object.keys(this.cacheRule),i=n.length,r=i-e.length;if(r<0){for(var o=r;o<0;o++)this.addRule(e.length+o);for(var a=0;a<i;a++)this.setValue(n[a],e[a])}else{if(r>0){for(var c=0;c<r;c++)this.removeRule(n[i-c-1]);this.subForm()}e.forEach(function(i,r){t.setValue(n[r],e[r])})}}},methods:{_value:function(e){return e&&(t=e,n=this.field,{}.hasOwnProperty.call(t,n))?e[this.field]:e;var t,n},cache:function(e,t){this.cacheValue[e]=JSON.stringify(t)},input:function(e){this.$emit("input",e),this.$emit("change",e)},formData:function(e,t){var n=this,i=this.cacheRule,r=Object.keys(i);if(r.filter(function(e){return i[e].$f}).length===r.length){var o=r.map(function(i){var r=e===i?t:s({},n.cacheRule[i].$f.form),o=n.field?r[n.field]||null:r;return n.cache(i,o),o});this.input(o)}},setValue:function(e,t){var n=this.field,i=this.cacheRule[e].$f;n&&(t=a({},n,this._value(t))),this.cacheValue[e]!==JSON.stringify(n?t[n]:t)&&(this.cache(e,t),i.coverValue(t||{}))},addRule:function(e,t){var n=this,i=this.formCreateInject.form.copyRules(this.formRule),r=this.options?s({},this.options):{submitBtn:!1,resetBtn:!1};r.formData=this.field?a({},this.field,this._value(this.value[e])):this.value[e]||{},this.$set(this.cacheRule,++this.len,{rule:i,options:r}),t&&this.$nextTick(function(){return n.$emit("add",i,Object.keys(n.cacheRule).length-1)})},add$f:function(e,t,n){var i=this;this.cacheRule[t].$f=n,this.subForm(),this.$nextTick(function(){i.syncDisabled&&n.disabled(i.disabled),i.$emit("itemMounted",n,Object.keys(i.cacheRule).indexOf(t))})},subForm:function(){var e=this;this.formCreateInject.subForm(Object.keys(this.cacheRule).map(function(t){return e.cacheRule[t].$f}))},removeRule:function(e,t){var n=this,i=Object.keys(this.cacheRule).indexOf(e);this.$delete(this.cacheRule,e),this.$delete(this.cacheValue,e),t&&this.$nextTick(function(){return n.$emit("remove",i)})},add:function(e){this.disabled||!1===this.onBeforeAdd(this.value)||this.addRule(e,!0)},del:function(e,t){this.disabled||!1===this.onBeforeRemove(this.value,e)||(this.removeRule(t,!0),this.subForm(),this.value.splice(e,1),this.input(this.value))},addIcon:function(e){return(0,this.$createElement)("AIcon",{key:"a".concat(e),attrs:{type:"plus-circle"},style:"font-size:".concat(this.fontSize,"px;cursor:").concat(this.disabled?"not-allowed;color:#c9cdd4":"pointer",";"),on:{click:this.add}})},delIcon:function(e,t){var n=this;return(0,this.$createElement)("AIcon",{key:"d".concat(t),attrs:{type:"minus-circle"},style:"font-size:".concat(this.fontSize,"px;cursor:").concat(this.disabled?"not-allowed;color:#c9cdd4":"pointer;color:#606266",";"),on:{click:function(){return n.del(e,t)}}})},makeIcon:function(e,t,n){var i=this;return this.$scopedSlots.button?this.$scopedSlots.button({total:e,index:t,vm:this,key:n,del:function(){return i.del(t,n)},add:this.add}):0===t?[0!==this.max&&e>=this.max?null:this.addIcon(n),0===this.min||e>this.min?this.delIcon(t,n):null]:t>=this.min?this.delIcon(t,n):void 0},emitEvent:function(e,t,n,i){this.$emit.apply(this,[e].concat(u(t),[this.cacheRule[i].$f,n]))},expandRule:function(e){for(var t=0;t<e;t++)this.value.push(this.field?null:{})}},created:function(){this.type=this.formCreateInject.form.$form();var e=(this.expand||0)-this.value.length;e>0&&this.expandRule(e);for(var t=0;t<this.value.length;t++)this.addRule(t)},render:function(){var e=this,t=arguments[0],n=Object.keys(this.cacheRule),i=this.button,r=this.type;return 0===n.length?this.$scopedSlots.default?this.$scopedSlots.default({vm:this,add:this.add}):t("AIcon",{key:"a_def",attrs:{type:"plus-circle"},style:"font-size:".concat(this.fontSize,"px;vertical-align:middle;color:").concat(this.disabled?"#c9cdd4;cursor: not-allowed":"#606266;cursor:pointer",";"),on:{click:this.add}}):t("div",{key:"con"},[n.map(function(a,c){var s=e.cacheRule[a],u=s.rule,l=s.options;return t("ARow",{attrs:{align:"middle",type:"flex"},key:a,style:"border-bottom:1px dashed #d9d9d9;margin-bottom:10px;"},[t("ACol",{attrs:{span:i?20:24}},[t(r,o([{key:a},{on:{"update:value":function(t){return e.formData(a,t)},"emit-event":function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return e.emitEvent(t,i,c,a)},input:function(t){return e.add$f(c,a,t)}}},{attrs:{rule:u,option:l,extendOption:!0}}]))]),i?t("ACol",{attrs:{span:2,pull:1,push:1}},[e.makeIcon(n.length,c,a)]):null])})])}}});
8
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js","../src/component.jsx","../../../../packages/utils/lib/type.js"],"sourcesContent":["\"use strict\";function _extends(){return _extends=Object.assign||function(a){for(var b,c=1;c<arguments.length;c++)for(var d in b=arguments[c],b)Object.prototype.hasOwnProperty.call(b,d)&&(a[d]=b[d]);return a},_extends.apply(this,arguments)}var normalMerge=[\"attrs\",\"props\",\"domProps\"],toArrayMerge=[\"class\",\"style\",\"directives\"],functionalMerge=[\"on\",\"nativeOn\"],mergeJsxProps=function(a){return a.reduce(function(c,a){for(var b in a)if(!c[b])c[b]=a[b];else if(-1!==normalMerge.indexOf(b))c[b]=_extends({},c[b],a[b]);else if(-1!==toArrayMerge.indexOf(b)){var d=c[b]instanceof Array?c[b]:[c[b]],e=a[b]instanceof Array?a[b]:[a[b]];c[b]=d.concat(e)}else if(-1!==functionalMerge.indexOf(b)){for(var f in a[b])if(c[b][f]){var g=c[b][f]instanceof Array?c[b][f]:[c[b][f]],h=a[b][f]instanceof Array?a[b][f]:[a[b][f]];c[b][f]=g.concat(h)}else c[b][f]=a[b][f];}else if(\"hook\"==b)for(var i in a[b])c[b][i]=c[b][i]?mergeFn(c[b][i],a[b][i]):a[b][i];else c[b]=a[b];return c},{})},mergeFn=function(a,b){return function(){a&&a.apply(this,arguments),b&&b.apply(this,arguments)}};module.exports=mergeJsxProps;\n","import {hasProperty} from '@form-create/utils/lib/type';\n\nconst NAME = 'fcGroup';\n\nexport default {\n name: NAME,\n props: {\n field: String,\n rule: [Array, Object],\n rules: Array,\n expand: Number,\n options: Object,\n formCreateInject: {\n type: Object,\n required: true,\n },\n button: {\n type: Boolean,\n default: true\n },\n max: {\n type: Number,\n default: 0\n },\n min: {\n type: Number,\n default: 0\n },\n value: {\n type: Array,\n default: () => []\n },\n disabled: {\n type: Boolean,\n default: false\n },\n syncDisabled: {\n type: Boolean,\n default: true\n },\n fontSize: {\n type: Number,\n default: 28\n },\n onBeforeRemove: {\n type: Function,\n default: () => {\n }\n },\n onBeforeAdd: {\n type: Function,\n default: () => {\n }\n },\n },\n data() {\n return {\n len: 0,\n cacheRule: {},\n cacheValue: {},\n }\n },\n computed: {\n formRule() {\n if (this.rule) {\n return Array.isArray(this.rule) ? this.rule : [this.rule];\n }\n if (this.rules) {\n return this.rules;\n }\n return [];\n }\n },\n watch: {\n disabled(n) {\n if (this.syncDisabled) {\n const lst = this.cacheRule;\n Object.keys(lst).forEach(k => {\n lst[k].$f.disabled(n);\n })\n }\n },\n expand(n) {\n let d = n - this.value.length;\n if (d > 0) {\n this.expandRule(d);\n }\n },\n value(n) {\n n = n || [];\n let keys = Object.keys(this.cacheRule), total = keys.length, len = total - n.length;\n if (len < 0) {\n for (let i = len; i < 0; i++) {\n this.addRule(n.length + i);\n }\n for (let i = 0; i < total; i++) {\n this.setValue(keys[i], n[i]);\n }\n } else {\n if (len > 0) {\n for (let i = 0; i < len; i++) {\n this.removeRule(keys[total - i - 1]);\n }\n this.subForm();\n }\n n.forEach((val, i) => {\n this.setValue(keys[i], n[i]);\n });\n }\n }\n },\n methods: {\n _value(v) {\n return (v && hasProperty(v, this.field)) ? v[this.field] : v;\n },\n cache(k, val) {\n this.cacheValue[k] = JSON.stringify(val);\n },\n input(value) {\n this.$emit('input', value);\n this.$emit('change', value);\n },\n formData(key, formData) {\n const cacheRule = this.cacheRule;\n const keys = Object.keys(cacheRule);\n if (keys.filter(k => cacheRule[k].$f).length !== keys.length) {\n return;\n }\n const value = keys.map(k => {\n const data = key === k ? formData : {...this.cacheRule[k].$f.form};\n const value = this.field ? data[this.field] || null : data;\n this.cache(k, value);\n return value;\n });\n this.input(value);\n },\n setValue(key, value) {\n const field = this.field, $f = this.cacheRule[key].$f;\n if (field) {\n value = {[field]: this._value(value)};\n }\n if (this.cacheValue[key] === JSON.stringify(field ? value[field] : value)) {\n return;\n }\n this.cache(key, value);\n $f.coverValue(value || {});\n },\n addRule(i, emit) {\n const rule = this.formCreateInject.form.copyRules(this.formRule);\n const options = this.options ? {...this.options} : {\n submitBtn: false,\n resetBtn: false,\n };\n options.formData = this.field ? ({[this.field]: this._value(this.value[i])}) : (this.value[i] || {});\n this.$set(this.cacheRule, ++this.len, {rule, options});\n if (emit) {\n this.$nextTick(() => this.$emit('add', rule, Object.keys(this.cacheRule).length - 1));\n }\n },\n add$f(i, key, $f) {\n this.cacheRule[key].$f = $f;\n this.subForm();\n this.$nextTick(() => {\n if (this.syncDisabled) {\n $f.disabled(this.disabled);\n }\n this.$emit('itemMounted', $f, Object.keys(this.cacheRule).indexOf(key));\n });\n },\n subForm() {\n this.formCreateInject.subForm(Object.keys(this.cacheRule).map(k => this.cacheRule[k].$f));\n },\n removeRule(key, emit) {\n const index = Object.keys(this.cacheRule).indexOf(key);\n this.$delete(this.cacheRule, key);\n this.$delete(this.cacheValue, key);\n if (emit) {\n this.$nextTick(() => this.$emit('remove', index));\n }\n },\n add(i) {\n if (this.disabled || false === this.onBeforeAdd(this.value)) {\n return;\n }\n this.addRule(i, true);\n },\n del(index, key) {\n if (this.disabled || false === this.onBeforeRemove(this.value)) {\n return;\n }\n this.removeRule(key, true);\n this.subForm();\n this.value.splice(index, 1);\n this.input(this.value);\n },\n addIcon(key) {\n return <AIcon key={`a${key}`} type=\"plus-circle\"\n style={`font-size:${this.fontSize}px;cursor:${this.disabled ? 'not-allowed;color:#c9cdd4' : 'pointer'};`}\n on-click={this.add}/>;\n },\n delIcon(index, key) {\n return <AIcon key={`d${key}`} type=\"minus-circle\"\n style={`font-size:${this.fontSize}px;cursor:${this.disabled ? 'not-allowed;color:#c9cdd4' : 'pointer;color:#606266'};`}\n on-click={() => this.del(index, key)}/>;\n },\n makeIcon(total, index, key) {\n if (this.$scopedSlots.button) {\n return this.$scopedSlots.button({\n total,\n index,\n vm: this,\n key,\n del: () => this.del(index, key),\n add: this.add\n });\n }\n if (index === 0) {\n return [(this.max !== 0 && total >= this.max) ? null : this.addIcon(key), (this.min === 0 || total > this.min) ? this.delIcon(index, key) : null];\n }\n if (index >= this.min) {\n return this.delIcon(index, key);\n }\n },\n emitEvent(name, args, index, key) {\n this.$emit(name, ...args, this.cacheRule[key].$f, index);\n },\n expandRule(n) {\n for (let i = 0; i < n; i++) {\n this.value.push(this.field ? null : {});\n }\n }\n },\n created() {\n const d = (this.expand || 0) - this.value.length;\n if (d > 0) {\n this.expandRule(d);\n }\n for (let i = 0; i < this.value.length; i++) {\n this.addRule(i);\n }\n },\n render() {\n const keys = Object.keys(this.cacheRule);\n const button = this.button;\n return keys.length === 0 ?\n (this.$scopedSlots.default ? (this.$scopedSlots.default({\n vm: this,\n add: this.add\n })) : <AIcon key={'a_def'} type=\"plus-circle\"\n style={`font-size:${this.fontSize}px;vertical-align:middle;color:${this.disabled ? '#c9cdd4;cursor: not-allowed' : '#606266;cursor:pointer'};`}\n on-click={this.add}/>) :\n <div key={'con'}>{keys.map((key, index) => {\n const {rule, options} = this.cacheRule[key];\n return <ARow align=\"middle\" type=\"flex\" key={key}\n style=\"border-bottom:1px dashed #d9d9d9;margin-bottom:10px;\">\n <ACol span={button ? 20 : 24}><FormCreate\n key={key}\n on={{\n 'update:value': (formData) => this.formData(key, formData),\n 'emit-event': (name, ...args) => this.emitEvent(name, args, index, key),\n input: ($f) => this.add$f(index, key, $f)\n }}\n rule={rule}\n option={options} extendOption={true}/></ACol>\n {button ? <ACol span={2} pull={1} push={1}>{this.makeIcon(keys.length, index, key)}</ACol> : null}\n </ARow>\n })}</div>\n },\n beforeMount() {\n this.$options.components.FormCreate = this.formCreateInject.form.$form();\n }\n}\n","const is = {\n type(arg, type) {\n return Object.prototype.toString.call(arg) === '[object ' + type + ']'\n },\n Undef(v) {\n return v === undefined || v === null\n },\n Element(arg) {\n return typeof arg === 'object' && arg !== null && arg.nodeType === 1 && !is.Object(arg)\n },\n trueArray(data) {\n return Array.isArray(data) && data.length > 0;\n }\n};\n\n['Date', 'Object', 'Function', 'String', 'Boolean', 'Array', 'Number'].forEach(t => {\n is[t] = function (arg) {\n return is.type(arg, t);\n }\n})\n\nexport function hasProperty(rule, k) {\n return ({}).hasOwnProperty.call(rule, k)\n}\n\nexport default is;\n"],"names":["_extends","Object","assign","a","b","c","arguments","length","d","prototype","hasOwnProperty","call","apply","this","normalMerge","toArrayMerge","functionalMerge","mergeFn","reduce","indexOf","Array","e","concat","f","g","h","i","name","props","field","String","rule","rules","expand","Number","options","formCreateInject","type","required","button","Boolean","max","min","value","disabled","syncDisabled","fontSize","onBeforeRemove","Function","onBeforeAdd","data","len","cacheRule","cacheValue","computed","formRule","isArray","watch","n","lst","keys","forEach","k","$f","expandRule","total","addRule","setValue","removeRule","subForm","val","_this","methods","_value","v","cache","JSON","stringify","input","$emit","formData","key","filter","map","_this2","form","coverValue","emit","copyRules","submitBtn","resetBtn","$set","$nextTick","_this3","add$f","_this4","_this5","index","$delete","_this6","add","del","splice","addIcon","delIcon","_this7","makeIcon","$scopedSlots","vm","_this8","emitEvent","args","push","created","render","_this9","beforeMount","$options","components","FormCreate","$form"],"mappings":";;;;;;6LAAa,SAASA,WAAkBA,EAASC,OAAOC,QAAQ,SAASC,OAAO,IAAIC,EAAEC,EAAE,EAAEA,EAAEC,UAAUC,OAAOF,QAAQ,IAAIG,KAAKJ,EAAEE,UAAUD,GAAKJ,OAAOQ,UAAUC,eAAeC,KAAKP,EAAEI,KAAKL,EAAEK,GAAGJ,EAAEI,WAAWL,IAAYS,MAAMC,KAAKP,WAAW,IAAIQ,EAAY,CAAC,QAAQ,QAAQ,YAAYC,EAAa,CAAC,QAAQ,QAAQ,cAAcC,EAAgB,CAAC,KAAK,YAAumBC,EAAQ,SAASd,EAAEC,UAAU,WAAWD,GAAGA,EAAES,MAAMC,KAAKP,WAAWF,GAAGA,EAAEQ,MAAMC,KAAKP,eAAhqB,SAASH,UAAUA,EAAEe,OAAO,SAASb,EAAEF,OAAO,IAAIC,KAAKD,KAAME,EAAED,GAAkB,IAAI,IAAIU,EAAYK,QAAQf,GAAGC,EAAED,GAAGJ,EAAS,GAAGK,EAAED,GAAGD,EAAEC,SAAS,IAAI,IAAIW,EAAaI,QAAQf,GAAG,KAAKI,EAAEH,EAAED,aAAagB,MAAMf,EAAED,GAAG,CAACC,EAAED,IAAIiB,EAAElB,EAAEC,aAAagB,MAAMjB,EAAEC,GAAG,CAACD,EAAEC,IAAIC,EAAED,GAAGI,EAAEc,OAAOD,QAAQ,IAAI,IAAIL,EAAgBG,QAAQf,OAAQ,IAAImB,KAAKpB,EAAEC,MAAMC,EAAED,GAAGmB,GAAG,KAAKC,EAAEnB,EAAED,GAAGmB,aAAaH,MAAMf,EAAED,GAAGmB,GAAG,CAAClB,EAAED,GAAGmB,IAAIE,EAAEtB,EAAEC,GAAGmB,aAAaH,MAAMjB,EAAEC,GAAGmB,GAAG,CAACpB,EAAEC,GAAGmB,IAAIlB,EAAED,GAAGmB,GAAGC,EAAEF,OAAOG,QAAQpB,EAAED,GAAGmB,GAAGpB,EAAEC,GAAGmB,QAAS,GAAG,QAAQnB,EAAE,IAAI,IAAIsB,KAAKvB,EAAEC,GAAGC,EAAED,GAAGsB,GAAGrB,EAAED,GAAGsB,GAAGT,EAAQZ,EAAED,GAAGsB,GAAGvB,EAAEC,GAAGsB,IAAIvB,EAAEC,GAAGsB,QAAQrB,EAAED,GAAGD,EAAEC,QAAzfC,EAAED,GAAGD,EAAEC,UAA4fC,GAAG,s6CCIj7B,CACXsB,KAHS,UAITC,MAAO,CACHC,MAAOC,OACPC,KAAM,CAACX,MAAOnB,QACd+B,MAAOZ,MACPa,OAAQC,OACRC,QAASlC,OACTmC,iBAAkB,CACdC,KAAMpC,OACNqC,UAAU,GAEdC,OAAQ,CACJF,KAAMG,iBACG,GAEbC,IAAK,CACDJ,KAAMH,eACG,GAEbQ,IAAK,CACDL,KAAMH,eACG,GAEbS,MAAO,CACHN,KAAMjB,cACG,iBAAM,KAEnBwB,SAAU,CACNP,KAAMG,iBACG,GAEbK,aAAc,CACVR,KAAMG,iBACG,GAEbM,SAAU,CACNT,KAAMH,eACG,IAEba,eAAgB,CACZV,KAAMW,iBACG,cAGbC,YAAa,CACTZ,KAAMW,iBACG,eAIjBE,sBACW,CACHC,IAAK,EACLC,UAAW,GACXC,WAAY,KAGpBC,SAAU,CACNC,2BACQ1C,KAAKkB,KACEX,MAAMoC,QAAQ3C,KAAKkB,MAAQlB,KAAKkB,KAAO,CAAClB,KAAKkB,MAEpDlB,KAAKmB,MACEnB,KAAKmB,MAET,KAGfyB,MAAO,CACHb,kBAASc,MACD7C,KAAKgC,aAAc,KACbc,EAAM9C,KAAKuC,UACjBnD,OAAO2D,KAAKD,GAAKE,QAAQ,SAAAC,GACrBH,EAAIG,GAAGC,GAAGnB,SAASc,OAI/BzB,gBAAOyB,OACClD,EAAIkD,EAAI7C,KAAK8B,MAAMpC,OACnBC,EAAI,QACCwD,WAAWxD,IAGxBmC,eAAMe,cACFA,EAAIA,GAAK,OACLE,EAAO3D,OAAO2D,KAAK/C,KAAKuC,WAAYa,EAAQL,EAAKrD,OAAQ4C,EAAMc,EAAQP,EAAEnD,UACzE4C,EAAM,EAAG,KACJ,IAAIzB,EAAIyB,EAAKzB,EAAI,EAAGA,SAChBwC,QAAQR,EAAEnD,OAASmB,OAEvB,IAAIA,EAAI,EAAGA,EAAIuC,EAAOvC,SAClByC,SAASP,EAAKlC,GAAIgC,EAAEhC,QAE1B,IACCyB,EAAM,EAAG,KACJ,IAAIzB,EAAI,EAAGA,EAAIyB,EAAKzB,SAChB0C,WAAWR,EAAKK,EAAQvC,EAAI,SAEhC2C,UAETX,EAAEG,QAAQ,SAACS,EAAK5C,GACZ6C,EAAKJ,SAASP,EAAKlC,GAAIgC,EAAEhC,SAKzC8C,QAAS,CACLC,gBAAOC,UACKA,IC5FQ3C,ED4FS2C,EC5FHZ,ED4FMjD,KAAKgB,MC3FjC,GAAInB,eAAeC,KAAKoB,EAAM+B,ID2FaY,EAAE7D,KAAKgB,OAAS6C,EC5FhE,IAAqB3C,EAAM+B,GD8F1Ba,eAAMb,EAAGQ,QACAjB,WAAWS,GAAKc,KAAKC,UAAUP,IAExCQ,eAAMnC,QACGoC,MAAM,QAASpC,QACfoC,MAAM,SAAUpC,IAEzBqC,kBAASC,EAAKD,cACJ5B,EAAYvC,KAAKuC,UACjBQ,EAAO3D,OAAO2D,KAAKR,MACrBQ,EAAKsB,OAAO,SAAApB,UAAKV,EAAUU,GAAGC,KAAIxD,SAAWqD,EAAKrD,YAGhDoC,EAAQiB,EAAKuB,IAAI,SAAArB,OACbZ,EAAO+B,IAAQnB,EAAIkB,OAAeI,EAAKhC,UAAUU,GAAGC,GAAGsB,MACvD1C,EAAQyC,EAAKvD,MAAQqB,EAAKkC,EAAKvD,QAAU,KAAOqB,SACtDkC,EAAKT,MAAMb,EAAGnB,GACPA,SAENmC,MAAMnC,KAEfwB,kBAASc,EAAKtC,OACJd,EAAQhB,KAAKgB,MAAOkC,EAAKlD,KAAKuC,UAAU6B,GAAKlB,GAC/ClC,IACAc,OAAUd,EAAQhB,KAAK4D,OAAO9B,KAE9B9B,KAAKwC,WAAW4B,KAASL,KAAKC,UAAUhD,EAAQc,EAAMd,GAASc,UAG9DgC,MAAMM,EAAKtC,GAChBoB,EAAGuB,WAAW3C,GAAS,MAE3BuB,iBAAQxC,EAAG6D,cACDxD,EAAOlB,KAAKuB,iBAAiBiD,KAAKG,UAAU3E,KAAK0C,UACjDpB,EAAUtB,KAAKsB,aAActB,KAAKsB,SAAW,CAC/CsD,WAAW,EACXC,UAAU,GAEdvD,EAAQ6C,SAAWnE,KAAKgB,WAAWhB,KAAKgB,MAAQhB,KAAK4D,OAAO5D,KAAK8B,MAAMjB,KAASb,KAAK8B,MAAMjB,IAAM,QAC5FiE,KAAK9E,KAAKuC,YAAavC,KAAKsC,IAAK,CAACpB,KAAAA,EAAMI,QAAAA,IACzCoD,QACKK,UAAU,kBAAMC,EAAKd,MAAM,MAAOhD,EAAM9B,OAAO2D,KAAKiC,EAAKzC,WAAW7C,OAAS,MAG1FuF,eAAMpE,EAAGuD,EAAKlB,mBACLX,UAAU6B,GAAKlB,GAAKA,OACpBM,eACAuB,UAAU,WACPG,EAAKlD,cACLkB,EAAGnB,SAASmD,EAAKnD,UAErBmD,EAAKhB,MAAM,cAAehB,EAAI9D,OAAO2D,KAAKmC,EAAK3C,WAAWjC,QAAQ8D,OAG1EZ,mCACSjC,iBAAiBiC,QAAQpE,OAAO2D,KAAK/C,KAAKuC,WAAW+B,IAAI,SAAArB,UAAKkC,EAAK5C,UAAUU,GAAGC,OAEzFK,oBAAWa,EAAKM,cACNU,EAAQhG,OAAO2D,KAAK/C,KAAKuC,WAAWjC,QAAQ8D,QAC7CiB,QAAQrF,KAAKuC,UAAW6B,QACxBiB,QAAQrF,KAAKwC,WAAY4B,GAC1BM,QACKK,UAAU,kBAAMO,EAAKpB,MAAM,SAAUkB,MAGlDG,aAAI1E,GACIb,KAAK+B,WAAY,IAAU/B,KAAKoC,YAAYpC,KAAK8B,aAGhDuB,QAAQxC,GAAG,IAEpB2E,aAAIJ,EAAOhB,GACHpE,KAAK+B,WAAY,IAAU/B,KAAKkC,eAAelC,KAAK8B,cAGnDyB,WAAWa,GAAK,QAChBZ,eACA1B,MAAM2D,OAAOL,EAAO,QACpBnB,MAAMjE,KAAK8B,SAEpB4D,iBAAQtB,yDACmBA,eAAY,yCACXpE,KAAKiC,8BAAqBjC,KAAK+B,SAAW,4BAA8B,yBAClF/B,KAAKuF,QAEvBI,iBAAQP,EAAOhB,oEACYA,eAAY,0CACXpE,KAAKiC,8BAAqBjC,KAAK+B,SAAW,4BAA8B,uCAClF,kBAAM6D,EAAKJ,IAAIJ,EAAOhB,QAExCyB,kBAASzC,EAAOgC,EAAOhB,qBACfpE,KAAK8F,aAAapE,OACX1B,KAAK8F,aAAapE,OAAO,CAC5B0B,MAAAA,EACAgC,MAAAA,EACAW,GAAI/F,KACJoE,IAAAA,EACAoB,IAAK,kBAAMQ,EAAKR,IAAIJ,EAAOhB,IAC3BmB,IAAKvF,KAAKuF,MAGJ,IAAVH,EACO,CAAe,IAAbpF,KAAK4B,KAAawB,GAASpD,KAAK4B,IAAO,KAAO5B,KAAK0F,QAAQtB,GAAoB,IAAbpE,KAAK6B,KAAauB,EAAQpD,KAAK6B,IAAO7B,KAAK2F,QAAQP,EAAOhB,GAAO,MAE5IgB,GAASpF,KAAK6B,IACP7B,KAAK2F,QAAQP,EAAOhB,WAGnC6B,mBAAUnF,EAAMoF,EAAMd,EAAOhB,QACpBF,kBAAMpD,YAASoF,IAAMlG,KAAKuC,UAAU6B,GAAKlB,GAAIkC,MAEtDjC,oBAAWN,OACF,IAAIhC,EAAI,EAAGA,EAAIgC,EAAGhC,SACdiB,MAAMqE,KAAKnG,KAAKgB,MAAQ,KAAO,MAIhDoF,uBACUzG,GAAKK,KAAKoB,QAAU,GAAKpB,KAAK8B,MAAMpC,OACtCC,EAAI,QACCwD,WAAWxD,OAEf,IAAIkB,EAAI,EAAGA,EAAIb,KAAK8B,MAAMpC,OAAQmB,SAC9BwC,QAAQxC,IAGrBwF,4CACUtD,EAAO3D,OAAO2D,KAAK/C,KAAKuC,WACxBb,EAAS1B,KAAK0B,cACG,IAAhBqB,EAAKrD,OACPM,KAAK8F,qBAAwB9F,KAAK8F,qBAAqB,CACpDC,GAAI/F,KACJuF,IAAKvF,KAAKuF,qBACI,oBAAc,yCACRvF,KAAKiC,mDAA0CjC,KAAK+B,SAAW,8BAAgC,wCACzG/B,KAAKuF,oBACT,QAAQxC,EAAKuB,IAAI,SAACF,EAAKgB,SACLkB,EAAK/D,UAAU6B,GAAhClD,IAAAA,KAAMI,IAAAA,sCACM,cAAc,YAAY8C,QACnC,+EACM1C,EAAS,GAAK,6BACjB0C,OACD,gBACgB,SAACD,UAAamC,EAAKnC,SAASC,EAAKD,iBACnC,SAACrD,8BAASoF,mCAAAA,2BAASI,EAAKL,UAAUnF,EAAMoF,EAAMd,EAAOhB,IACnEH,MAAO,SAACf,UAAOoD,EAAKrB,MAAMG,EAAOhB,EAAKlB,mBAEpChC,SACEI,gBAAuB,SAClCI,wBAAqB,OAAS,OAAS,KAAI4E,EAAKT,SAAS9C,EAAKrD,OAAQ0F,EAAOhB,KAAe,YAI7GmC,4BACSC,SAASC,WAAWC,WAAa1G,KAAKuB,iBAAiBiD,KAAKmC"}
1
+ {"version":3,"file":"index.js","sources":["../../../../node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js","../src/component.jsx","../../../../packages/utils/lib/type.js"],"sourcesContent":["\"use strict\";function _extends(){return _extends=Object.assign||function(a){for(var b,c=1;c<arguments.length;c++)for(var d in b=arguments[c],b)Object.prototype.hasOwnProperty.call(b,d)&&(a[d]=b[d]);return a},_extends.apply(this,arguments)}var normalMerge=[\"attrs\",\"props\",\"domProps\"],toArrayMerge=[\"class\",\"style\",\"directives\"],functionalMerge=[\"on\",\"nativeOn\"],mergeJsxProps=function(a){return a.reduce(function(c,a){for(var b in a)if(!c[b])c[b]=a[b];else if(-1!==normalMerge.indexOf(b))c[b]=_extends({},c[b],a[b]);else if(-1!==toArrayMerge.indexOf(b)){var d=c[b]instanceof Array?c[b]:[c[b]],e=a[b]instanceof Array?a[b]:[a[b]];c[b]=d.concat(e)}else if(-1!==functionalMerge.indexOf(b)){for(var f in a[b])if(c[b][f]){var g=c[b][f]instanceof Array?c[b][f]:[c[b][f]],h=a[b][f]instanceof Array?a[b][f]:[a[b][f]];c[b][f]=g.concat(h)}else c[b][f]=a[b][f];}else if(\"hook\"==b)for(var i in a[b])c[b][i]=c[b][i]?mergeFn(c[b][i],a[b][i]):a[b][i];else c[b]=a[b];return c},{})},mergeFn=function(a,b){return function(){a&&a.apply(this,arguments),b&&b.apply(this,arguments)}};module.exports=mergeJsxProps;\n","import {hasProperty} from '@form-create/utils/lib/type';\n\nconst NAME = 'fcGroup';\n\nexport default {\n name: NAME,\n props: {\n field: String,\n rule: [Array, Object],\n rules: Array,\n expand: Number,\n options: Object,\n formCreateInject: {\n type: Object,\n required: true,\n },\n button: {\n type: Boolean,\n default: true\n },\n max: {\n type: Number,\n default: 0\n },\n min: {\n type: Number,\n default: 0\n },\n value: {\n type: Array,\n default: () => []\n },\n disabled: {\n type: Boolean,\n default: false\n },\n syncDisabled: {\n type: Boolean,\n default: true\n },\n fontSize: {\n type: Number,\n default: 28\n },\n onBeforeRemove: {\n type: Function,\n default: () => {\n }\n },\n onBeforeAdd: {\n type: Function,\n default: () => {\n }\n },\n },\n data() {\n return {\n len: 0,\n cacheRule: {},\n cacheValue: {},\n type: undefined\n }\n },\n computed: {\n formRule() {\n if (this.rule) {\n return Array.isArray(this.rule) ? this.rule : [this.rule];\n }\n if (this.rules) {\n return this.rules;\n }\n return [];\n }\n },\n watch: {\n disabled(n) {\n if (this.syncDisabled) {\n const lst = this.cacheRule;\n Object.keys(lst).forEach(k => {\n lst[k].$f.disabled(n);\n })\n }\n },\n expand(n) {\n let d = n - this.value.length;\n if (d > 0) {\n this.expandRule(d);\n }\n },\n value(n) {\n n = n || [];\n let keys = Object.keys(this.cacheRule), total = keys.length, len = total - n.length;\n if (len < 0) {\n for (let i = len; i < 0; i++) {\n this.addRule(n.length + i);\n }\n for (let i = 0; i < total; i++) {\n this.setValue(keys[i], n[i]);\n }\n } else {\n if (len > 0) {\n for (let i = 0; i < len; i++) {\n this.removeRule(keys[total - i - 1]);\n }\n this.subForm();\n }\n n.forEach((val, i) => {\n this.setValue(keys[i], n[i]);\n });\n }\n }\n },\n methods: {\n _value(v) {\n return (v && hasProperty(v, this.field)) ? v[this.field] : v;\n },\n cache(k, val) {\n this.cacheValue[k] = JSON.stringify(val);\n },\n input(value) {\n this.$emit('input', value);\n this.$emit('change', value);\n },\n formData(key, formData) {\n const cacheRule = this.cacheRule;\n const keys = Object.keys(cacheRule);\n if (keys.filter(k => cacheRule[k].$f).length !== keys.length) {\n return;\n }\n const value = keys.map(k => {\n const data = key === k ? formData : {...this.cacheRule[k].$f.form};\n const value = this.field ? data[this.field] || null : data;\n this.cache(k, value);\n return value;\n });\n this.input(value);\n },\n setValue(key, value) {\n const field = this.field, $f = this.cacheRule[key].$f;\n if (field) {\n value = {[field]: this._value(value)};\n }\n if (this.cacheValue[key] === JSON.stringify(field ? value[field] : value)) {\n return;\n }\n this.cache(key, value);\n $f.coverValue(value || {});\n },\n addRule(i, emit) {\n const rule = this.formCreateInject.form.copyRules(this.formRule);\n const options = this.options ? {...this.options} : {\n submitBtn: false,\n resetBtn: false,\n };\n options.formData = this.field ? ({[this.field]: this._value(this.value[i])}) : (this.value[i] || {});\n this.$set(this.cacheRule, ++this.len, {rule, options});\n if (emit) {\n this.$nextTick(() => this.$emit('add', rule, Object.keys(this.cacheRule).length - 1));\n }\n },\n add$f(i, key, $f) {\n this.cacheRule[key].$f = $f;\n this.subForm();\n this.$nextTick(() => {\n if (this.syncDisabled) {\n $f.disabled(this.disabled);\n }\n this.$emit('itemMounted', $f, Object.keys(this.cacheRule).indexOf(key));\n });\n },\n subForm() {\n this.formCreateInject.subForm(Object.keys(this.cacheRule).map(k => this.cacheRule[k].$f));\n },\n removeRule(key, emit) {\n const index = Object.keys(this.cacheRule).indexOf(key);\n this.$delete(this.cacheRule, key);\n this.$delete(this.cacheValue, key);\n if (emit) {\n this.$nextTick(() => this.$emit('remove', index));\n }\n },\n add(i) {\n if (this.disabled || false === this.onBeforeAdd(this.value)) {\n return;\n }\n this.addRule(i, true);\n },\n del(index, key) {\n if (this.disabled || false === this.onBeforeRemove(this.value, index)) {\n return;\n }\n this.removeRule(key, true);\n this.subForm();\n this.value.splice(index, 1);\n this.input(this.value);\n },\n addIcon(key) {\n return <AIcon key={`a${key}`} type=\"plus-circle\"\n style={`font-size:${this.fontSize}px;cursor:${this.disabled ? 'not-allowed;color:#c9cdd4' : 'pointer'};`}\n on-click={this.add}/>;\n },\n delIcon(index, key) {\n return <AIcon key={`d${key}`} type=\"minus-circle\"\n style={`font-size:${this.fontSize}px;cursor:${this.disabled ? 'not-allowed;color:#c9cdd4' : 'pointer;color:#606266'};`}\n on-click={() => this.del(index, key)}/>;\n },\n makeIcon(total, index, key) {\n if (this.$scopedSlots.button) {\n return this.$scopedSlots.button({\n total,\n index,\n vm: this,\n key,\n del: () => this.del(index, key),\n add: this.add\n });\n }\n if (index === 0) {\n return [(this.max !== 0 && total >= this.max) ? null : this.addIcon(key), (this.min === 0 || total > this.min) ? this.delIcon(index, key) : null];\n }\n if (index >= this.min) {\n return this.delIcon(index, key);\n }\n },\n emitEvent(name, args, index, key) {\n this.$emit(name, ...args, this.cacheRule[key].$f, index);\n },\n expandRule(n) {\n for (let i = 0; i < n; i++) {\n this.value.push(this.field ? null : {});\n }\n }\n },\n created() {\n this.type = this.formCreateInject.form.$form();\n const d = (this.expand || 0) - this.value.length;\n if (d > 0) {\n this.expandRule(d);\n }\n for (let i = 0; i < this.value.length; i++) {\n this.addRule(i);\n }\n },\n render() {\n const keys = Object.keys(this.cacheRule);\n const button = this.button;\n const Type = this.type;\n return keys.length === 0 ?\n (this.$scopedSlots.default ? (this.$scopedSlots.default({\n vm: this,\n add: this.add\n })) : <AIcon key={'a_def'} type=\"plus-circle\"\n style={`font-size:${this.fontSize}px;vertical-align:middle;color:${this.disabled ? '#c9cdd4;cursor: not-allowed' : '#606266;cursor:pointer'};`}\n on-click={this.add}/>) :\n <div key={'con'}>{keys.map((key, index) => {\n const {rule, options} = this.cacheRule[key];\n return <ARow align=\"middle\" type=\"flex\" key={key}\n style=\"border-bottom:1px dashed #d9d9d9;margin-bottom:10px;\">\n <ACol span={button ? 20 : 24}><Type\n key={key}\n on={{\n 'update:value': (formData) => this.formData(key, formData),\n 'emit-event': (name, ...args) => this.emitEvent(name, args, index, key),\n input: ($f) => this.add$f(index, key, $f)\n }}\n rule={rule}\n option={options} extendOption={true}/></ACol>\n {button ? <ACol span={2} pull={1} push={1}>{this.makeIcon(keys.length, index, key)}</ACol> : null}\n </ARow>\n })}</div>\n }\n}\n","const is = {\n type(arg, type) {\n return Object.prototype.toString.call(arg) === '[object ' + type + ']'\n },\n Undef(v) {\n return v === undefined || v === null\n },\n Element(arg) {\n return typeof arg === 'object' && arg !== null && arg.nodeType === 1 && !is.Object(arg)\n },\n trueArray(data) {\n return Array.isArray(data) && data.length > 0;\n }\n};\n\n['Date', 'Object', 'Function', 'String', 'Boolean', 'Array', 'Number'].forEach(t => {\n is[t] = function (arg) {\n return is.type(arg, t);\n }\n})\n\nexport function hasProperty(rule, k) {\n return ({}).hasOwnProperty.call(rule, k)\n}\n\nexport default is;\n"],"names":["_extends","Object","assign","a","b","c","arguments","length","d","prototype","hasOwnProperty","call","apply","this","normalMerge","toArrayMerge","functionalMerge","mergeFn","reduce","indexOf","Array","e","concat","f","g","h","i","name","props","field","String","rule","rules","expand","Number","options","formCreateInject","type","required","button","Boolean","max","min","value","disabled","syncDisabled","fontSize","onBeforeRemove","Function","onBeforeAdd","data","len","cacheRule","cacheValue","undefined","computed","formRule","isArray","watch","n","lst","keys","forEach","k","$f","expandRule","total","addRule","setValue","removeRule","subForm","val","_this","methods","_value","v","cache","JSON","stringify","input","$emit","formData","key","filter","map","_this2","form","coverValue","emit","copyRules","submitBtn","resetBtn","$set","$nextTick","_this3","add$f","_this4","_this5","index","$delete","_this6","add","del","splice","addIcon","delIcon","_this7","makeIcon","$scopedSlots","vm","_this8","emitEvent","args","push","created","$form","render","Type","_this9"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@form-create/component-antdv-group",
3
- "version": "2.5.10",
3
+ "version": "2.5.17",
4
4
  "description": "@form-create/ant-design-vue 内置组件",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -30,7 +30,7 @@
30
30
  "author": "xaboy",
31
31
  "license": "MIT",
32
32
  "dependencies": {
33
- "@form-create/utils": "^2.5.10"
33
+ "@form-create/utils": "^2.5.17"
34
34
  },
35
35
  "bugs": {
36
36
  "url": "https://github.com/xaboy/form-create/issues"
@@ -39,5 +39,5 @@
39
39
  "publishConfig": {
40
40
  "access": "public"
41
41
  },
42
- "gitHead": "7c08cb39580a4d60e2c9ec78823b47e9a0c4f115"
42
+ "gitHead": "b21068f23bf2b13bcf4ebb130d75fdb173f4c80a"
43
43
  }
package/src/component.jsx CHANGED
@@ -58,6 +58,7 @@ export default {
58
58
  len: 0,
59
59
  cacheRule: {},
60
60
  cacheValue: {},
61
+ type: undefined
61
62
  }
62
63
  },
63
64
  computed: {
@@ -185,7 +186,7 @@ export default {
185
186
  this.addRule(i, true);
186
187
  },
187
188
  del(index, key) {
188
- if (this.disabled || false === this.onBeforeRemove(this.value)) {
189
+ if (this.disabled || false === this.onBeforeRemove(this.value, index)) {
189
190
  return;
190
191
  }
191
192
  this.removeRule(key, true);
@@ -231,6 +232,7 @@ export default {
231
232
  }
232
233
  },
233
234
  created() {
235
+ this.type = this.formCreateInject.form.$form();
234
236
  const d = (this.expand || 0) - this.value.length;
235
237
  if (d > 0) {
236
238
  this.expandRule(d);
@@ -242,6 +244,7 @@ export default {
242
244
  render() {
243
245
  const keys = Object.keys(this.cacheRule);
244
246
  const button = this.button;
247
+ const Type = this.type;
245
248
  return keys.length === 0 ?
246
249
  (this.$scopedSlots.default ? (this.$scopedSlots.default({
247
250
  vm: this,
@@ -253,7 +256,7 @@ export default {
253
256
  const {rule, options} = this.cacheRule[key];
254
257
  return <ARow align="middle" type="flex" key={key}
255
258
  style="border-bottom:1px dashed #d9d9d9;margin-bottom:10px;">
256
- <ACol span={button ? 20 : 24}><FormCreate
259
+ <ACol span={button ? 20 : 24}><Type
257
260
  key={key}
258
261
  on={{
259
262
  'update:value': (formData) => this.formData(key, formData),
@@ -265,8 +268,5 @@ export default {
265
268
  {button ? <ACol span={2} pull={1} push={1}>{this.makeIcon(keys.length, index, key)}</ACol> : null}
266
269
  </ARow>
267
270
  })}</div>
268
- },
269
- beforeMount() {
270
- this.$options.components.FormCreate = this.formCreateInject.form.$form();
271
271
  }
272
272
  }