UNPKG

@form-create/vant

Version:

VantUI版本低代码表单|FormCreate 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的低代码表单生成组件。支持6个UI框架,适配移动端,并且支持生成任何 Vue 组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定。

7 lines 132 kB
/*! * @form-create/vant v3.2.28 * (c) 2018-2025 xaboy * Github https://github.com/xaboy/form-create * Released under the MIT License. */ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("vant")):"function"==typeof define&&define.amd?define(["exports","vue","vant"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).formCreateMobile={},e.Vue,e.vant)}(this,(function(e,t,n){"use strict";var r=t.defineComponent({name:"fcSubForm",props:{rule:Array,options:{type:Object,default:function(){return t.reactive({submitBtn:!1,resetBtn:!1})}},modelValue:{type:Object,default:function(){return{}}},disabled:{type:Boolean,default:!1},syncDisabled:{type:Boolean,default:!0},formCreateInject:Object},data:function(){return{cacheValue:{},subApi:{},form:t.markRaw(this.formCreateInject.form.$form())}},emits:["fc:subform","update:modelValue","change","itemMounted"],watch:{modelValue:function(e){this.setValue(e)}},methods:{formData:function(e){this.cacheValue=JSON.stringify(e),this.$emit("update:modelValue",e),this.$emit("change",e)},setValue:function(e){var t=JSON.stringify(e);this.cacheValue!==t&&(this.cacheValue=t,this.subApi.coverValue(e||{}))},add$f:function(e){var n=this;this.subApi=e,t.nextTick((function(){n.$emit("itemMounted",e)}))}},render:function(){var e=this.form;return t.createVNode(e,{disabled:this.disabled,"onUpdate:modelValue":this.formData,modelValue:this.modelValue,"onEmit-event":this.$emit,"onUpdate:api":this.add$f,rule:this.rule,option:this.options,extendOption:!0},null)}});function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){c(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e){return l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},l(e)}function s(e,t){return s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},s(e,t)}function f(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=l(e);if(t){var i=l(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return f(this,n)}}function p(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,i,o=[],a=!0,u=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){u=!0,i=e}finally{try{a||null==n.return||n.return()}finally{if(u)throw i}}return o}(e,t)||v(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||v(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 v(e,t){if(e){if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(e,t):void 0}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var g={type:function(e,t){return Object.prototype.toString.call(e)==="[object "+t+"]"},Undef:function(e){return null==e},Element:function(e){return"object"===a(e)&&null!==e&&1===e.nodeType&&!g.Object(e)},trueArray:function(e){return Array.isArray(e)&&e.length>0},Function:function(e){var t=this.getType(e);return"Function"===t||"AsyncFunction"===t},getType:function(e){var t=Object.prototype.toString.call(e);return/^\[object (.*)\]$/.exec(t)[1]},empty:function(e){return null==e||(!(!Array.isArray(e)||!Array.isArray(e)||e.length)||"string"==typeof e&&!e)}};function y(e,t){return{}.hasOwnProperty.call(e,t)}["Date","Object","String","Boolean","Array","Number"].forEach((function(e){g[e]=function(t){return g.type(t,e)}}));"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var b={exports:{}};!function(e,t){e.exports=function(){var e=1e3,t=6e4,n=36e5,r="millisecond",i="second",o="minute",u="hour",c="day",l="week",s="month",f="quarter",d="year",p="date",h="Invalid Date",v=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],n=e%100;return"["+e+(t[(n-20)%10]||t[n]||t[0])+"]"}},y=function(e,t,n){var r=String(e);return!r||r.length>=t?e:""+Array(t+1-r.length).join(n)+e},b={s:y,z:function(e){var t=-e.utcOffset(),n=Math.abs(t),r=Math.floor(n/60),i=n%60;return(t<=0?"+":"-")+y(r,2,"0")+":"+y(i,2,"0")},m:function e(t,n){if(t.date()<n.date())return-e(n,t);var r=12*(n.year()-t.year())+(n.month()-t.month()),i=t.clone().add(r,s),o=n-i<0,a=t.clone().add(r+(o?-1:1),s);return+(-(r+(n-i)/(o?i-a:a-i))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:s,y:d,w:l,d:c,D:p,h:u,m:o,s:i,ms:r,Q:f}[e]||String(e||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}},$="en",_={};_[$]=g;var w="$isDayjsObject",x=function(e){return e instanceof V||!(!e||!e[w])},C=function e(t,n,r){var i;if(!t)return $;if("string"==typeof t){var o=t.toLowerCase();_[o]&&(i=o),n&&(_[o]=n,i=o);var a=t.split("-");if(!i&&a.length>1)return e(a[0])}else{var u=t.name;_[u]=t,i=u}return!r&&i&&($=i),i||!r&&$},S=function(e,t){if(x(e))return e.clone();var n="object"==a(t)?t:{};return n.date=e,n.args=arguments,new V(n)},k=b;k.l=C,k.i=x,k.w=function(e,t){return S(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var V=function(){function a(e){this.$L=C(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[w]=!0}var g=a.prototype;return g.parse=function(e){this.$d=function(e){var t=e.date,n=e.utc;if(null===t)return new Date(NaN);if(k.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var r=t.match(v);if(r){var i=r[2]-1||0,o=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)}}return new Date(t)}(e),this.init()},g.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},g.$utils=function(){return k},g.isValid=function(){return!(this.$d.toString()===h)},g.isSame=function(e,t){var n=S(e);return this.startOf(t)<=n&&n<=this.endOf(t)},g.isAfter=function(e,t){return S(e)<this.startOf(t)},g.isBefore=function(e,t){return this.endOf(t)<S(e)},g.$g=function(e,t,n){return k.u(e)?this[t]:this.set(n,e)},g.unix=function(){return Math.floor(this.valueOf()/1e3)},g.valueOf=function(){return this.$d.getTime()},g.startOf=function(e,t){var n=this,r=!!k.u(t)||t,a=k.p(e),f=function(e,t){var i=k.w(n.$u?Date.UTC(n.$y,t,e):new Date(n.$y,t,e),n);return r?i:i.endOf(c)},h=function(e,t){return k.w(n.toDate()[e].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(t)),n)},v=this.$W,m=this.$M,g=this.$D,y="set"+(this.$u?"UTC":"");switch(a){case d:return r?f(1,0):f(31,11);case s:return r?f(1,m):f(0,m+1);case l:var b=this.$locale().weekStart||0,$=(v<b?v+7:v)-b;return f(r?g-$:g+(6-$),m);case c:case p:return h(y+"Hours",0);case u:return h(y+"Minutes",1);case o:return h(y+"Seconds",2);case i:return h(y+"Milliseconds",3);default:return this.clone()}},g.endOf=function(e){return this.startOf(e,!1)},g.$set=function(e,t){var n,a=k.p(e),l="set"+(this.$u?"UTC":""),f=(n={},n[c]=l+"Date",n[p]=l+"Date",n[s]=l+"Month",n[d]=l+"FullYear",n[u]=l+"Hours",n[o]=l+"Minutes",n[i]=l+"Seconds",n[r]=l+"Milliseconds",n)[a],h=a===c?this.$D+(t-this.$W):t;if(a===s||a===d){var v=this.clone().set(p,1);v.$d[f](h),v.init(),this.$d=v.set(p,Math.min(this.$D,v.daysInMonth())).$d}else f&&this.$d[f](h);return this.init(),this},g.set=function(e,t){return this.clone().$set(e,t)},g.get=function(e){return this[k.p(e)]()},g.add=function(r,a){var f,p=this;r=Number(r);var h=k.p(a),v=function(e){var t=S(p);return k.w(t.date(t.date()+Math.round(e*r)),p)};if(h===s)return this.set(s,this.$M+r);if(h===d)return this.set(d,this.$y+r);if(h===c)return v(1);if(h===l)return v(7);var m=(f={},f[o]=t,f[u]=n,f[i]=e,f)[h]||1,g=this.$d.getTime()+r*m;return k.w(g,this)},g.subtract=function(e,t){return this.add(-1*e,t)},g.format=function(e){var t=this,n=this.$locale();if(!this.isValid())return n.invalidDate||h;var r=e||"YYYY-MM-DDTHH:mm:ssZ",i=k.z(this),o=this.$H,a=this.$m,u=this.$M,c=n.weekdays,l=n.months,s=n.meridiem,f=function(e,n,i,o){return e&&(e[n]||e(t,r))||i[n].slice(0,o)},d=function(e){return k.s(o%12||12,e,"0")},p=s||function(e,t,n){var r=e<12?"AM":"PM";return n?r.toLowerCase():r};return r.replace(m,(function(e,r){return r||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return k.s(t.$y,4,"0");case"M":return u+1;case"MM":return k.s(u+1,2,"0");case"MMM":return f(n.monthsShort,u,l,3);case"MMMM":return f(l,u);case"D":return t.$D;case"DD":return k.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return f(n.weekdaysMin,t.$W,c,2);case"ddd":return f(n.weekdaysShort,t.$W,c,3);case"dddd":return c[t.$W];case"H":return String(o);case"HH":return k.s(o,2,"0");case"h":return d(1);case"hh":return d(2);case"a":return p(o,a,!0);case"A":return p(o,a,!1);case"m":return String(a);case"mm":return k.s(a,2,"0");case"s":return String(t.$s);case"ss":return k.s(t.$s,2,"0");case"SSS":return k.s(t.$ms,3,"0");case"Z":return i}return null}(e)||i.replace(":","")}))},g.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},g.diff=function(r,a,p){var h,v=this,m=k.p(a),g=S(r),y=(g.utcOffset()-this.utcOffset())*t,b=this-g,$=function(){return k.m(v,g)};switch(m){case d:h=$()/12;break;case s:h=$();break;case f:h=$()/3;break;case l:h=(b-y)/6048e5;break;case c:h=(b-y)/864e5;break;case u:h=b/n;break;case o:h=b/t;break;case i:h=b/e;break;default:h=b}return p?h:k.a(h)},g.daysInMonth=function(){return this.endOf(s).$D},g.$locale=function(){return _[this.$L]},g.locale=function(e,t){if(!e)return this.$L;var n=this.clone(),r=C(e,t,!0);return r&&(n.$L=r),n},g.clone=function(){return k.w(this.$d,this)},g.toDate=function(){return new Date(this.valueOf())},g.toJSON=function(){return this.isValid()?this.toISOString():null},g.toISOString=function(){return this.$d.toISOString()},g.toString=function(){return this.$d.toUTCString()},a}(),O=V.prototype;return S.prototype=O,[["$ms",r],["$s",i],["$m",o],["$H",u],["$W",c],["$M",s],["$y",d],["$D",p]].forEach((function(e){O[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),S.extend=function(e,t){return e.$i||(e(t,V,S),e.$i=!0),S},S.locale=C,S.isDayjs=x,S.unix=function(e){return S(1e3*e)},S.en=_[$],S.Ls=_,S.p={},S}()}(b);var $=b.exports,_=t.defineComponent({name:"fcCalendar",inheritAttrs:!1,props:{placeholder:String,formCreateInject:Object,disabled:Boolean,clearable:Boolean,type:String,modelValue:[String,Array],minDate:[String,Date],maxDate:[String,Date]},emits:["update:modelValue","change","fc.el"],setup:function(e,n){var r=t.ref(!1),i=t.toRef(e,"modelValue"),o=t.toRef(e,"formCreateInject"),a=t.ref(i.value);t.watch((function(){return i.value}),(function(e){a.value=e}));var u=function(e){return $(e).format("YYYY-MM-DD")},c=function(e){return $(e).toDate()},l=t.computed((function(){var e=i.value;return Array.isArray(e)?e.map(c):e?c(e):null})),s=t.computed((function(){return{minDate:e.minDate?$(e.minDate).toDate():void 0,maxDate:e.maxDate?$(e.maxDate).toDate():void 0}})),f=function(e){Array.isArray(e)?a.value=e.map(u):a.value=e?u(e):e},d=function(){n.emit("update:modelValue",a.value),n.emit("change",a.value)},p={range:function(){return a.value.length?a.value.join(" - "):""},multiple:function(){return a.value.length?o.value.t("selectedData",{length:a.value.length})||"选择了 ".concat(a.value.length," 个日期"):""}};return{show:r,inputValue:a,defaultDate:l,dateRange:s,open:function(){e.disabled||(r.value=!0)},confirm:function(e){f(e),r.value=!1,d()},getStrValue:function(){return a.value?y(p,e.type)?p[e.type]():a.value||"":""},clear:function(e){e.stopPropagation();var t=Array.isArray(a.value)?[]:"";f(t),d()}}},render:function(){var e=this;return t.createVNode("div",{class:"_fc-calendar"},[t.createVNode(t.resolveComponent("van-field"),{ref:"el",placeholder:this.placeholder,readonly:!0,disabled:this.$props.disabled,onClick:this.open,"model-value":this.getStrValue(),isLink:!0,border:!1},{"right-icon":function(){return e.$props.clearable&&!g.empty(e.inputValue)?t.createVNode("i",{class:"van-badge__wrapper van-icon van-icon-clear van-field__clear",onClick:e.clear},null):void 0}}),t.createVNode(t.resolveComponent("van-calendar"),t.mergeProps(o(o({},this.$attrs),this.dateRange),{show:this.show,"onUpdate:show":function(t){return e.show=t},type:this.type,onConfirm:this.confirm,defaultDate:this.defaultDate}),null)])},mounted:function(){this.$emit("fc.el",this.$refs.el)}}),w=t.defineComponent({name:"fcCascader",inheritAttrs:!1,props:{placeholder:String,disabled:Boolean,clearable:Boolean,fieldNames:Object,modelValue:[String,Number],options:Array,minDate:[String,Date],maxDate:[String,Date]},emits:["update:modelValue","fc.el","change"],setup:function(e,n){var r=t.ref(!1),i=t.toRef(e,"modelValue"),o=t.toRef(e,"options"),a=t.toRef(e,"fieldNames",{}),u=function e(t,n,r){for(var i=0;i<t.length;i++){if(t[i][a.value.value||"value"]===n)return[].concat(h(r),[t[i]]);if(t[i][a.value.children||"children"]){var o=e(t[i][a.value.children||"children"],n,[].concat(h(r),[t[i]]));if(o)return o}}},c=function(e){if(null==e||""===e)return"";var t=u(o.value,e,[]);return t?t.map((function(e){return e[a.value.text||"text"]})).join(" / "):e},l=t.ref(c(i.value));t.watch((function(){return i.value}),(function(e){l.value=c(e)})),t.watch((function(){return o.value}),(function(){null!=i.value&&""!==i.value&&(l.value=c(i.value))}),{deep:!0});var s=function(e){n.emit("update:modelValue",e),n.emit("change",e)};return{show:r,inputValue:l,options:o,open:function(){e.disabled||(r.value=!0)},confirm:function(e){var t=e.selectedOptions,n=e.value;l.value=t.map((function(e){return e[a.value.text||"text"]})).join(" / "),r.value=!1,s(n)},clear:function(e){e.stopPropagation(),l.value="",s("")}}},render:function(){var e=this;return t.createVNode("div",{class:"_fc-cascader"},[t.createVNode(t.resolveComponent("van-field"),{ref:"el",placeholder:this.placeholder,readonly:!0,disabled:this.$props.disabled,onClick:this.open,"model-value":this.inputValue,border:!1,isLink:!0},{"right-icon":function(){return e.$props.clearable&&e.inputValue?t.createVNode("i",{class:"van-badge__wrapper van-icon van-icon-clear van-field__clear",onClick:e.clear},null):void 0}}),t.createVNode(t.resolveComponent("van-popup"),{show:this.show,"onUpdate:show":function(t){return e.show=t},round:!0,position:"bottom"},{default:function(){return[t.createVNode(t.resolveComponent("van-cascader"),t.mergeProps(e.$attrs,{modelValue:e.modelValue,fieldNames:e.fieldNames,options:e.options,onClose:function(){return e.show=!1},onFinish:e.confirm}),null)]}})])},mounted:function(){this.$emit("fc.el",this.$refs.el)}});var x=t.defineComponent({name:"fcCheckbox",inheritAttrs:!1,props:{modelValue:Array,options:Array},emits:["update:modelValue","change"],setup:function(e,n){var r=t.toRef(e,"modelValue",[]);return{options:t.toRef(e,"options"),modelValue:r,onInput:function(e){n.emit("update:modelValue",e),n.emit("change",e)}}},render:function(){var e,n;return t.createVNode(t.resolveComponent("van-checkbox-group"),t.mergeProps({direction:"horizontal"},this.$attrs,{modelValue:Array.isArray(this.modelValue)?this.modelValue:[],"onUpdate:modelValue":this.onInput}),"function"==typeof(n=e=(this.options||[]).map((function(e){var n=o({},e),r=e.text,i=e.value;return delete n.text,delete n.value,t.createVNode(t.resolveComponent("van-checkbox"),t.mergeProps({name:i,shape:"square"},n),{default:function(){return[r||e.label||i]}})})))||"[object Object]"===Object.prototype.toString.call(n)&&!t.isVNode(n)?e:{default:function(){return[e]}})}}),C=t.defineComponent({name:"fcSelect",inheritAttrs:!1,props:{disabled:Boolean,placeholder:String,columnsFieldNames:Object,modelValue:[String,Number],options:Array},emits:["update:modelValue","fc.el","change"],setup:function(e,n){var r=t.ref(!1),i=t.toRef(e,"modelValue"),o=t.toRef(e,"options"),a=t.toRef(e,"columnsFieldNames",{}),u=t.computed((function(){if(null==i.value||""===i.value)return"";for(var e=0;e<(o.value||[]).length;e++)if(o.value[e][a.value.value||"value"]===i.value)return o.value[e][a.value.text||"text"];return i.value}));return{show:r,inputValue:u,options:o,open:function(){e.disabled||(r.value=!0)},confirm:function(e){var t,i=e.selectedValues;t=i[0],n.emit("update:modelValue",t),n.emit("change",t),r.value=!1}}},render:function(){var e=this;return t.createVNode("div",{class:"_fc-select"},[t.createVNode(t.resolveComponent("van-field"),{ref:"el",placeholder:this.placeholder,readonly:!0,disabled:this.$props.disabled,onClick:this.open,"model-value":this.inputValue,isLink:!0},null),t.createVNode(t.resolveComponent("van-popup"),{show:this.show,"onUpdate:show":function(t){return e.show=t},round:!0,position:"bottom"},{default:function(){return[t.createVNode(t.resolveComponent("van-picker"),t.mergeProps(e.$attrs,{modelValue:[e.modelValue],columnsFieldNames:e.columnsFieldNames,columns:e.options,onCancel:function(){return e.show=!1},onConfirm:e.confirm}),null)]}})])},mounted:function(){this.$emit("fc.el",this.$refs.el)}});function S(e){return Array.isArray(e)?e:[null,void 0,""].indexOf(e)>-1?[]:[e]}function k(e,t){return"object"===a(e)?e:{url:e,is_string:!0,name:O(e),uid:t}}function V(e){return o(o({},e),{},{file:e,value:e})}function O(e){return(""+e).split("/").pop()}var D=t.defineComponent({name:"fcUploader",inheritAttrs:!1,props:{formCreateInject:Object,modelValue:[Array,String,Object],afterRead:Function,action:String,headers:Object,method:String,data:Object,uploadName:String,onSuccess:Function,onError:Function,maxCount:Number},emits:["update:modelValue","delete"],setup:function(e,n){var r=t.toRef(e,"afterRead"),i=t.toRef(e,"modelValue",[]),o=t.ref(S(i.value).map(k).map(V));t.watch((function(){return i.value}),(function(e){o.value=S(e).map(k).map(V)}));var a=function(){var t=o.value.map((function(e){return e.is_string?e.url:e.value||e.url})).filter((function(e){return void 0!==e}));n.emit("update:modelValue",1===e.maxCount?t[0]||"":t)};return{fileList:o,modelValue:i,onDelete:function(e){a(),n.emit("delete",e)},uploadFile:function(t){var n=this;if(t.status="uploading",r.value)return r.value(t);var i=e.data||{};i[e.uploadName||"file"]=t.file,e.formCreateInject.api.fetch({action:e.action,dataType:"formData",source:"upload",headers:e.headers||{},method:e.method||"post",data:i}).then((function(n){t.status="success",e.onSuccess&&e.onSuccess(n,t),a()})).catch((function(r){t.status="failed",t.message=n.formCreateInject.t("uploadFail")||"上传失败",e.onError&&e.onError(r,t)}))}}},render:function(){var e=this;return t.createVNode(t.resolveComponent("van-uploader"),t.mergeProps(this.$attrs,{"model-value":this.fileList,maxCount:this.maxCount,"onUpdate:model-value":function(t){return e.fileList=t},afterRead:this.uploadFile,onDelete:this.onDelete}),this.$slots)}});var j=t.defineComponent({name:"fcRadio",inheritAttrs:!1,props:{modelValue:[String,Number],options:Array},emits:["update:modelValue","change"],setup:function(e,n){var r=t.toRef(e,"modelValue",[]);return{options:t.toRef(e,"options"),modelValue:r,onInput:function(e){n.emit("update:modelValue",e),n.emit("change",e)}}},render:function(){var e,n;return t.createVNode(t.resolveComponent("van-radio-group"),t.mergeProps({direction:"horizontal"},this.$attrs,{modelValue:this.modelValue,"onUpdate:modelValue":this.onInput}),"function"==typeof(n=e=(this.options||[]).map((function(e){var n=o({},e),r=e.text,i=e.value;return delete n.text,delete n.value,t.createVNode(t.resolveComponent("van-radio"),t.mergeProps({name:i},n),{default:function(){return[r||e.label||i]}})})))||"[object Object]"===Object.prototype.toString.call(n)&&!t.isVNode(n)?e:{default:function(){return[e]}})}}),R=t.defineComponent({name:"fcDatePicker",inheritAttrs:!1,props:{disabled:Boolean,clearable:Boolean,placeholder:String,modelValue:[String,Number],minDate:[String,Date],maxDate:[String,Date]},emits:["update:modelValue","fc.el","change"],setup:function(e,n){var r=t.ref(!1),i=t.toRef(e,"modelValue"),o=t.computed((function(){return null==i.value||""===i.value?[]:i.value.split("-")})),a=t.computed((function(){return{minDate:e.minDate?$(e.minDate).toDate():void 0,maxDate:e.maxDate?$(e.maxDate).toDate():void 0}})),u=function(e){n.emit("update:modelValue",e),n.emit("change",e)};return{show:r,formValue:o,dateRange:a,open:function(){e.disabled||(r.value=!0)},confirm:function(e){var t=e.selectedValues;u(t.join("-")),r.value=!1},clear:function(e){e.stopPropagation(),u("")}}},render:function(){var e=this;return t.createVNode("div",{class:"_fc-date-picker"},[t.createVNode(t.resolveComponent("van-field"),{ref:"el",placeholder:this.placeholder,readonly:!0,disabled:this.$props.disabled,onClick:this.open,"model-value":this.modelValue,border:!1,isLink:!0},{"right-icon":function(){return e.$props.clearable&&e.modelValue?t.createVNode("i",{class:"van-badge__wrapper van-icon van-icon-clear van-field__clear",onClick:e.clear},null):void 0}}),t.createVNode(t.resolveComponent("van-popup"),{show:this.show,"onUpdate:show":function(t){return e.show=t},round:!0,position:"bottom"},{default:function(){return[t.createVNode(t.resolveComponent("van-date-picker"),t.mergeProps({columnsType:["year","month","day"]},o(o({},e.$attrs),e.dateRange),{modelValue:e.formValue,onConfirm:e.confirm,onCancel:function(){return e.show=!1}}),null)]}})])},mounted:function(){this.$emit("fc.el",this.$refs.el)}}),F=t.defineComponent({name:"fcTimePicker",inheritAttrs:!1,props:{disabled:Boolean,clearable:Boolean,placeholder:String,modelValue:[String,Number]},emits:["update:modelValue","fc.el","change"],setup:function(e,n){var r=t.ref(!1),i=t.toRef(e,"modelValue"),o=t.computed((function(){return null==i.value||""===i.value?[]:i.value.split(":")})),a=function(e){n.emit("update:modelValue",e),n.emit("change",e)};return{show:r,formValue:o,open:function(){e.disabled||(r.value=!0)},confirm:function(e){var t=e.selectedValues;a(t.join(":")),r.value=!1},clear:function(e){e.stopPropagation(),a("")}}},render:function(){var e=this;return t.createVNode("div",{class:"_fc-time-picker"},[t.createVNode(t.resolveComponent("van-field"),{ref:"el",placeholder:this.placeholder,readonly:!0,disabled:this.$props.disabled,onClick:this.open,"model-value":this.modelValue,border:!1,isLink:!0},{"right-icon":function(){return e.$props.clearable&&e.modelValue?t.createVNode("i",{class:"van-badge__wrapper van-icon van-icon-clear van-field__clear",onClick:e.clear},null):void 0}}),t.createVNode(t.resolveComponent("van-popup"),{show:this.show,"onUpdate:show":function(t){return e.show=t},round:!0,position:"bottom"},{default:function(){return[t.createVNode(t.resolveComponent("van-time-picker"),t.mergeProps({columnsType:["hour","minute"]},e.$attrs,{modelValue:e.formValue,onConfirm:e.confirm,onCancel:function(){return e.show=!1}}),null)]}})])},mounted:function(){this.$emit("fc.el",this.$refs.el)}});function E(e,t,n){e[t]=n}function A(e,t){delete e[t]}function P(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,r=!1;for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)){var o=t[i];if((r=Array.isArray(o))||g.Object(o)){var a=void 0===e[i];if(r)r=!1,a&&E(e,i,[]);else if(o._clone&&void 0!==n){if(!n){E(e,i,o._clone());continue}o=o.getRule(),a&&E(e,i,{})}else a&&E(e,i,{});e[i]=P(e[i],o,n)}else E(e,i,o),g.Undef(o)||(g.Undef(o.__json)||(e[i].__json=o.__json),g.Undef(o.__origin)||(e[i].__origin=o.__origin))}return void 0!==n&&Array.isArray(e)?e.filter((function(e){return!e||!e.__ctrl})):e}function N(e){return P({},{value:e}).value}var T=Object.assign||function(e){for(var t,n=1;n<arguments.length;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&E(e,r,t[r]);return e};function I(){return T.apply(this,arguments)}function B(e){return"object"!==a(e)||null===e?e:e instanceof Array?h(e):o({},e)}var M=t.defineComponent({name:"fcGroup",props:{field:String,rule:Array,expand:Number,options:Object,button:{type:Boolean,default:!0},max:{type:Number,default:0},min:{type:Number,default:0},modelValue:{type:Array,default:function(){return[]}},defaultValue:Object,sortBtn:{type:Boolean,default:!1},disabled:{type:Boolean,default:void 0},onBeforeRemove:{type:Function,default:function(){}},onBeforeAdd:{type:Function,default:function(){}},formCreateInject:Object,parse:Function},data:function(){return{len:0,cacheRule:{},cacheValue:{},sort:[],form:t.markRaw(this.formCreateInject.form.$form())}},emits:["update:modelValue","change","itemMounted","remove","add"],watch:{rule:{handler:function(e,t){var n=this;Object.keys(this.cacheRule).forEach((function(r){var i=n.cacheRule[r];if(i.$f){var o=i.$f.formData();if(e===t)i.$f.deferSyncValue((function(){P(i.rule,e),i.$f.setValue(o)}),!0);else{var a=i.$f.formData();i.$f.once("reloading",(function(){i.$f.setValue(a)})),i.rule=N(e)}}}))},deep:!0},expand:function(e){var t=e-this.modelValue.length;t>0&&this.expandRule(t)},modelValue:{handler:function(e){var t=this;e=e||[];var n=this.sort,r=n.length,i=r-e.length;if(i<0){for(var o=i;o<0;o++)this.addRule(e.length+o,!0);for(var a=0;a<r;a++)this.setValue(n[a],e[a])}else{if(i>0)for(var u=0;u<i;u++)this.removeRule(n[r-u-1]);e.forEach((function(r,i){t.setValue(n[i],e[i])}))}},deep:!0}},methods:{_value:function(e){return e&&y(e,this.field)?e[this.field]:e},cache:function(e,t){this.cacheValue[e]=JSON.stringify(t)},input:function(e){this.$emit("update:modelValue",e),this.$emit("change",e)},formData:function(e,t){var n=this,r=this.cacheRule,i=this.sort;if(i.filter((function(e){return r[e]&&r[e].$f})).length===i.length){var a=i.map((function(r){var i=e===r?t:o({},n.cacheRule[r].$f.form),a=n.field?i[n.field]||null:i;return n.cache(r,a),a}));this.input(a)}},setValue:function(e,t){var n=this.field;n&&(t=c({},n,this._value(t))),this.cacheValue[e]!==JSON.stringify(n?t[n]:t)&&(this.cacheRule[e].$f&&this.cacheRule[e].$f.coverValue(t),this.cache(e,t))},addRule:function(e,n){var r=this,i=this.formCreateInject.form.copyRules(this.rule||[]),a=this.options?o({},this.options):{submitBtn:!1,resetBtn:!1};if(this.defaultValue){a.formData||(a.formData={});var u=N(this.defaultValue);I(a.formData,this.field?c({},this.field,u):u)}this.parse&&this.parse({rule:i,options:a,index:this.sort.length}),this.cacheRule[++this.len]={rule:i,options:a},this.sort=Object.keys(this.cacheRule),n&&t.nextTick((function(){return r.$emit("add",i,Object.keys(r.cacheRule).length-1)}))},add$f:function(e,n,r){var i=this;this.cacheRule[n].$f=r,t.nextTick((function(){i.$emit("itemMounted",r,Object.keys(i.cacheRule).indexOf(n))}))},removeRule:function(e,n){var r=this,i=Object.keys(this.cacheRule).indexOf(e);delete this.cacheRule[e],delete this.cacheValue[e],this.sort=Object.keys(this.cacheRule),n&&t.nextTick((function(){return r.$emit("remove",i)}))},add:function(e){if(!this.disabled&&!1!==this.onBeforeAdd(this.modelValue)){var t=h(this.modelValue);t.push(this.defaultValue?N(this.defaultValue):this.field?null:{}),this.input(t)}},del:function(e,t){if(!this.disabled&&!1!==this.onBeforeRemove(this.modelValue,e)){this.removeRule(t,!0);var n=h(this.modelValue);n.splice(e,1),this.input(n)}},addIcon:function(e){return t.createVNode("div",{class:"_fc-m-group-btn _fc-m-group-plus-minus",onClick:this.add},null)},delIcon:function(e,n){var r=this;return t.createVNode("div",{class:"_fc-m-group-btn _fc-m-group-plus-minus _fc-m-group-minus",onClick:function(){return r.del(e,n)}},null)},sortUpIcon:function(e){var n=this;return t.createVNode("div",{class:"_fc-m-group-btn _fc-m-group-arrow _fc-m-group-up",onClick:function(){return n.changeSort(e,-1)}},null)},sortDownIcon:function(e){var n=this;return t.createVNode("div",{class:"_fc-m-group-btn _fc-m-group-arrow _fc-m-group-down",onClick:function(){return n.changeSort(e,1)}},null)},changeSort:function(e,t){var n=this,r=this.sort[e];this.sort[e]=this.sort[e+t],this.sort[e+t]=r,this.formCreateInject.subForm(this.sort.map((function(e){return n.cacheRule[e].$f}))),this.formData(0)},makeIcon:function(e,t,n){var r=this;if(this.$slots.button)return this.$slots.button({total:e,index:t,vm:this,key:n,del:function(){return r.del(t,n)},add:this.add});var i=[];return(!this.max||e<this.max)&&e===t+1&&i.push(this.addIcon(n)),e>this.min&&i.push(this.delIcon(t,n)),this.sortBtn&&t&&i.push(this.sortUpIcon(t)),this.sortBtn&&t!==e-1&&i.push(this.sortDownIcon(t)),i},emitEvent:function(e,t,n,r){this.$emit.apply(this,[e].concat(h(t),[this.cacheRule[r].$f,n]))},expandRule:function(e){for(var t=0;t<e;t++)this.addRule(t)}},created:function(){for(var e=(this.expand||0)-this.modelValue.length,t=0;t<this.modelValue.length;t++)this.addRule(t);e>0&&this.expandRule(e)},render:function(){var e=this,n=this.sort,r=this.button,i=this.form,o=this.disabled,a=0===n.length?this.$slots.default?this.$slots.default({vm:this,add:this.add}):t.createVNode("div",{key:"a_def",class:"_fc-m-group-plus-minus _fc-m-group-add fc-clock",onClick:this.add},null):n.map((function(a,u){var l=e.cacheRule[a],s=l.rule,f=l.options,d=r&&!o?e.makeIcon(n.length,u,a):[];return t.createVNode("div",{class:"_fc-m-group-container",key:a},[t.createVNode(i,t.mergeProps({key:a},{disabled:o,"onUpdate:modelValue":function(t){return e.formData(a,t)},"onEmit-event":function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return e.emitEvent(t,r,u,a)},"onUpdate:api":function(t){return e.add$f(u,a,t)},inFor:!0,modelValue:e.field?c({},e.field,e._value(e.modelValue[u])):e.modelValue[u],rule:s,option:f,extendOption:!0}),null),t.createVNode("div",{class:"_fc-m-group-idx"},[u+1]),d.length?t.createVNode("div",{class:"_fc-m-group-handle fc-clock"},[d]):null])}));return t.createVNode("div",{key:"con",class:"_fc-m-group "+(o?"_fc-m-group-disabled":"")},[a])}}),L={name:"IconWarning"},U={class:"icon",viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},q=[t.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 110 896 448 448 0 010-896zm0 832a384 384 0 000-768 384 384 0 000 768zm48-176a48 48 0 11-96 0 48 48 0 0196 0zm-48-464a32 32 0 0132 32v288a32 32 0 01-64 0V288a32 32 0 0132-32z"},null,-1)];L.render=function(e,n,r,i,o,a){return t.openBlock(),t.createElementBlock("svg",U,q)};var H=[r,L,_,w,x,j,C,R,F,M,D];function J(e,t){var n=null;return function(){for(var r=this,i=arguments.length,o=new Array(i),a=0;a<i;a++)o[a]=arguments[a];null!==n&&clearTimeout(n),n=setTimeout((function(){return e.call.apply(e,[r].concat(o))}),t)}}function W(e){var t=e.replace(/([A-Z])/g,"-$1").toLocaleLowerCase();return 0===t.indexOf("-")&&(t=t.substr(1)),t}function z(e){return e.replace(e[0],e[0].toLocaleUpperCase())}var G=["props"],Y=["class","style","directives"],K=["on","hook"],Z=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=[].concat(G,h(r.normal||[])),u=[].concat(Y,h(r.array||[])),c=[].concat(K,h(r.functional||[])),l=r.props||[];return t.reduce((function(t,n){for(var r in n)if(t[r])if(l.indexOf(r)>-1)t[r]=e([n[r]],t[r]);else if(i.indexOf(r)>-1)t[r]=o(o({},t[r]),n[r]);else if(u.indexOf(r)>-1){var s=t[r]instanceof Array?t[r]:[t[r]],f=n[r]instanceof Array?n[r]:[n[r]];t[r]=[].concat(h(s),h(f))}else if(c.indexOf(r)>-1)for(var d in n[r])if(t[r][d]){var p=t[r][d]instanceof Array?t[r][d]:[t[r][d]],v=n[r][d]instanceof Array?n[r][d]:[n[r][d]];t[r][d]=[].concat(h(p),h(v))}else t[r][d]=n[r][d];else if("hook"===r)for(var m in n[r])t[r][m]?t[r][m]=X(t[r][m],n[r][m]):t[r][m]=n[r][m];else t[r]=n[r];else i.indexOf(r)>-1||c.indexOf(r)>-1||l.indexOf(r)>-1?t[r]=o({},n[r]):u.indexOf(r)>-1?t[r]=n[r]instanceof Array?h(n[r]):"object"===a(n[r])?o({},n[r]):n[r]:t[r]=n[r];return t}),n)},X=function(e,t){return function(){e&&e.apply(this,arguments),t&&t.apply(this,arguments)}},Q=["type","slot","ignore","emitPrefix","value","name","native","hidden","display","inject","options","emit","link","prefix","suffix","update","sync","optionsTo","key","slotUpdate","computed","preview","component","cache","modelEmit"],ee=["validate","children","control"],te=["effect","deep","renderSlots"];function ne(){return[].concat(Q,h(G),h(Y),h(K),ee,te)}function re(e,t,n){return"[form-create ".concat(e,"]: ").concat(t)+(n?"\n\nrule: "+JSON.stringify(n.getRule?n.getRule():n):"")}function ie(e,t){console.error(re("err",e,t))}function oe(e){return ae(e.replace(/(-[a-z])/g,(function(e){return e.replace("-","").toLocaleUpperCase()})))}function ae(e){return e.replace(e[0],e[0].toLowerCase())}var ue="[[FORM-CREATE-PREFIX-",ce="-FORM-CREATE-SUFFIX]]";function le(e,t){return JSON.stringify(P(Array.isArray(e)?[]:{},e,!0),(function(e,t){if(!t||!0!==t._isVue){if("function"!=typeof t)return t;if(t.__json)return t.__json;if(t.__origin&&(t=t.__origin),!t.__emit)return ue+t+ce}}),t)}function se(e){return new Function("return "+e)()}function fe(e,t){if(e&&g.String(e)&&e.length>4){var n=e.trim(),r=!1;try{if(n.indexOf(ce)>0&&0===n.indexOf(ue))n=n.replace(ce,"").replace(ue,""),r=!0;else if(0===n.indexOf("$FN:"))n=n.substring(4),r=!0;else if(0===n.indexOf("$EXEC:"))n=n.substring(6),r=!0;else{if(0===n.indexOf("$GLOBAL:")){var i=n.substring(8);return n=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=t[0].api.getGlobalEvent(i);if(r)return r.call.apply(r,[this].concat(t))},n.__json=e,n.__inject=!0,n}if(0===n.indexOf("$FNX:"))return(n=se("function($inject){\n"+n.substring(5)+"\n}")).__json=e,n.__inject=!0,n;(t||0!==n.indexOf("function ")||"function "===n)&&(t||0!==n.indexOf("function(")||"function("===n)||(r=!0)}if(!r)return e;var o;try{o=se(n)}catch(e){o=se("function "+n)}return o.__json=e,o}catch(e){return void ie("解析失败:".concat(n,"\n\nerr: ").concat(e))}}return e}function de(e,t){return JSON.parse(e,(function(e,n){return g.Undef(n)||!n.indexOf?n:fe(n,t)}))}function pe(e,t){return{value:e,enumerable:!1,configurable:!1,writable:!!t}}function he(e,t){return ve([e],t||!1)[0]}function ve(e,t){return P([],h(e),t||!1)}function me(e,t){return Z(Array.isArray(t)?t:[t],e,{array:ee,normal:te}),e}function ge(e){var t=g.Function(e.getRule)?e.getRule():e;return t.type||(t.type="input"),t}function ye(e,t){Object.defineProperties(e,Object.keys(t).reduce((function(e,n){return e[n]={get:function(){return t[n]()}},e}),{}))}function be(e){return e.__fc__||(e.__origin__?e.__origin__.__fc__:null)}function $e(e,t){try{t=e()}catch(e){!function(e){ie(e.toString()),console.error(e)}(e)}return t}function _e(){var e={},n=function(e){return e||"default"};return{setSlot:function(t,r){t=n(t),!r||Array.isArray(r)&&r.length||(e[t]||(e[t]=[]),e[t].push(r))},getSlot:function(t,r){t=n(t);var i=[];return(e[t]||[]).forEach((function(e){if(Array.isArray(e))i.push.apply(i,h(e));else if(g.Function(e)){var t=e.apply(void 0,h(r||[]));Array.isArray(t)?i.push.apply(i,h(t)):i.push(t)}else g.Undef(e)||i.push(e)})),i},getSlots:function(){var t=this,n={};return Object.keys(e).forEach((function(e){n[e]=function(){for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return t.getSlot(e,r)}})),n},slotLen:function(t){return t=n(t),e[t]?e[t].length:0},mergeBag:function(e){var n=this;if(!e)return this;var r=g.Function(e.getSlots)?e.getSlots():e;return Array.isArray(e)||t.isVNode(e)?this.setSlot(void 0,(function(){return e})):Object.keys(r).forEach((function(e){n.setSlot(e,r[e])})),this}}}function we(e){var t=o({},e.props||{});return Object.keys(e.on||{}).forEach((function(n){n.indexOf("-")>0&&(n=oe(n));var r="on".concat(z(n));Array.isArray(t[r])?t[r]=[].concat(h(t[r]),[e.on[n]]):t[r]?t[r]=[t[r],e.on[n]]:t[r]=e.on[n]})),t.key=e.key,t.ref=e.ref,t.class=e.class,t.id=e.id,t.style=e.style,t.slot&&delete t.slot,t}function xe(e,t){return Object.setPrototypeOf(e,t),e}var Ce=function(e,t){return"string"==typeof e?String(t):"number"==typeof e?Number(t):t},Se={"==":function(e,t){return JSON.stringify(e)===JSON.stringify(Ce(e,t))},"!=":function(e,t){return!Se["=="](e,t)},">":function(e,t){return e>t},">=":function(e,t){return e>=t},"<":function(e,t){return e<t},"<=":function(e,t){return e<=t},on:function(e,t){return e&&e.indexOf&&e.indexOf(Ce(e[0],t))>-1},notOn:function(e,t){return!Se.on(e,t)},in:function(e,t){return t&&t.indexOf&&t.indexOf(e)>-1},notIn:function(e,t){return!Se.in(e,t)},between:function(e,t){return e>t[0]&&e<t[1]},notBetween:function(e,t){return e<t[0]||e>t[1]},empty:function(e){return g.empty(e)},notEmpty:function(e){return!g.empty(e)},pattern:function(e,t){return new RegExp(t,"g").test(e)}};function ke(e,t){return(Array.isArray(t)?t:(t||"").split(".")).forEach((function(t){null!=e&&(e=e[t])})),e}function Ve(e){var t=e.split("."),n=[],r="";return t.forEach((function(e,t){0===t?r=e:r+="."+e,n.push(r)})),n.join(" && ")}function Oe(e){for(var t=[],n="",r=0,i=0;i<e.length;i++){var o=e[i];"["===o?(0===r&&n&&(t.push({type:"key",value:n}),n=""),r++,n+=o):"]"===o?(n+=o,0===--r&&(t.push({type:"bracket",value:Oe(n.slice(1,-1))}),n="")):"."===o&&0===r?n&&(t.push({type:"key",value:n}),n=""):n+=o}return n&&t.push({type:"key",value:n}),t.map((function(e){return"key"===e.type?{key:e.value}:{children:e.value}}))}var De=function(e,t){if(e&&e!==t)return e.props.formCreateInject?e.props.formCreateInject:e.parent?De(e.parent,t):void 0};function je(e,n,r){return t.defineComponent({name:"FormCreate"+(e.isMobile?"Mobile":""),components:n,directives:r,props:{rule:{type:Array,required:!0,default:function(){return[]}},option:{type:Object,default:function(){return{}}},extendOption:Boolean,driver:[String,Object],modelValue:Object,disabled:{type:Boolean,default:void 0},preview:{type:Boolean,default:void 0},index:[String,Number],api:Object,locale:[String,Object],t:Function,name:String,subForm:{type:Boolean,default:!0},inFor:Boolean},emits:["update:api","update:modelValue","mounted","submit","reset","change","emit-event","control","remove-rule","remove-field","sync","reload","repeat-field","update","validate-field-fail","validate-fail","created"],render:function(){return this.fc.render()},setup:function(n){var r=t.getCurrentInstance();t.provide("parentFC",r);var i=t.inject("parentFC",null),a=i;if(i)for(;a.setupState.parent;)a=a.setupState.parent;else a=r;var u=t.toRefs(n),c=u.rule,l=u.modelValue,s=u.subForm,f=u.inFor,d=t.reactive({ctxInject:{},destroyed:!1,isShow:!0,unique:1,renderRule:h(c.value||[]),updateValue:JSON.stringify(l.value||{})}),p=new e(r),v=p.api(),m=f.value,g=null;t.onBeforeMount((function(){t.watchEffect((function(){var e="",t=n.option&&n.option.globalClass||{};Object.keys(t).forEach((function(n){var r="";t[n].style&&Object.keys(t[n].style).forEach((function(e){r+=W(e)+":"+t[n].style[e]+";"})),t[n].content&&(r+=t[n].content+";"),r&&(e+=".".concat(n,"{").concat(r,"}"))})),n.option&&n.option.style&&(e+=n.option.style),g||((g=document.createElement("style")).type="text/css",document.head.appendChild(g)),g.innerHTML=e||""}))}));var y=J((function(){p.bus.$emit("$loadData.$topForm")}),100),b=J((function(){p.bus.$emit("$loadData.$scopeForm")}),100),$=J((function(){p.bus.$emit("$loadData.$form")}),100),_=function(e){p.bus.$emit("change-$form."+e)};return t.onMounted((function(){i&&(v.top.bus.$on("$loadData.$form",y),v.top.bus.$on("change",_)),v!==v.scope&&v.scope.bus.$on("$loadData.$scopeForm",b),p.mounted()})),t.onBeforeUnmount((function(){i&&(v.top.bus.$off("$loadData.$form",y),v.top.bus.$off("change",_)),v!==v.scope&&v.scope.bus.$off("$loadData.$scopeForm",b),function(){var e=De(r,i);if(e)if(m){var t=S(e.getSubForm()),n=t.indexOf(v);n>-1&&t.splice(n,1)}else e.subForm()}(),d.destroyed=!0,p.unmount(),g&&(g.parentNode||g.parentElement)&&document.head.removeChild(g)})),t.onUpdated((function(){p.updated()})),function(){if(i){var e,t=De(r,i);if(t)m?(e=S(t.getSubForm())).push(v):e=v,t.subForm(e)}}(),t.watch((function(){return n.option}),(function(){p.initOptions(),v.refresh()}),{deep:!0,flush:"sync"}),t.watch((function(){return h(c.value)}),(function(e){p.$handle.isBreakWatch()||e.length===d.renderRule.length&&e.every((function(e){return d.renderRule.indexOf(e)>-1}))||(p.$handle.updateAppendData(),p.$handle.reloadRule(c.value),r.setupState.renderRule())})),t.watch((function(){return[n.disabled,n.preview]}),(function(){v.refresh()})),t.watch(l,(function(e){le(e||{})!==d.updateValue&&(v.config.forceCoverValue?v.coverValue(e||{}):v.setValue(e||{}))}),{deep:!0,flush:"post"}),t.watch((function(){return n.index}),(function(){v.coverValue({}),p.$handle.updateAppendData(),t.nextTick((function(){t.nextTick((function(){v.clearValidateState()}))}))}),{flush:"sync"}),o(o({fc:t.markRaw(p),parent:i?t.markRaw(i):i,top:t.markRaw(a),fapi:t.markRaw(v)},t.toRefs(d)),{},{getGroupInject:function(){return De(r,i)},refresh:function(){++d.unique},renderRule:function(){d.renderRule=h(c.value||[])},updateValue:function(e){if(!d.destroyed){var n=le(e);d.updateValue!==n&&(d.updateValue=n,r.emit("update:modelValue",e),t.nextTick((function(){$(),i?s.value||b():(y(),b())})))}}})},created:function(){var e=t.getCurrentInstance();e.emit("update:api",e.setupState.fapi),e.setupState.fc.init()}})}function Re(e,t){return function(n,r,i){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=new Fe(e,n,r,i,o);return t&&(g.Function(t)?t(a):a.props(t)),a}}function Fe(e,t,n,r,i){this._data=I({props:{},on:{},options:[],children:[],hidden:!1,display:!0,value:void 0},{type:e,title:t,field:n,value:r,props:i||{}}),this.event=this.on}function Ee(e){e.forEach((function(e){Fe.prototype[e]=function(t){return me(this._data,c({},e,arguments.length<2?t:c({},t,arguments[1]))),this}}))}I(Fe.prototype,{getRule:function(){return this._data},setProp:function(e,t){return E(this._data,e,t),this},modelField:function(e){return this._data.modelField=e,this},_clone:function(){var e=new this.constructor;return e._data=he(this._data),e}}),Ee(ne());var Ae=Re("");function Pe(e,t,n){var r=Ae("",t);return r._data.type=e,r._data.title=n,r}function Ne(){return{create:Pe,factory:Re}}function Te(e){var t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch(e){return t}}function Ie(e){if("undefined"!=typeof XMLHttpRequest){var t,n=new XMLHttpRequest,r=e.action||"";if(n.upload&&e.onProgress&&n.upload.addEventListener("progress",(function(t){t.percent=t.total>0?t.loaded/t.total*100:0,e.onProgress(t)})),e.query){var i=new URLSearchParams(e.query).toString();i&&(r.includes("?")?r+="&".concat(i):r+="?".concat(i))}n.onerror=function(t){e.onError(t)},n.onload=function(){if(n.status<200||n.status>=300)return e.onError(function(e,t,n){var r="fail to ".concat(e," ").concat(n.status,"'"),i=new Error(r);return i.status=n.status,i.url=e,i}(r,0,n),Te(n));e.onSuccess(Te(n))},n.open(e.method||"get",r,!0),(e.data||e.file)&&(e.file||"json"!==(e.dataType||"").toLowerCase()?(t=new FormData,Object.keys(e.data||{}).map((function(n){t.append(n,e.data[n])}))):(t=JSON.stringify(e.data||{}),n.setRequestHeader("content-type","application/json"))),e.file&&t.append(e.filename,e.file,e.file.name),e.withCredentials&&"withCredentials"in n&&(n.withCredentials=!0);var o=e.headers||{};Object.keys(o).forEach((function(e){null!=o[e]&&n.setRequestHeader(e,o[e])})),n.send(t)}}function Be(e,t,n){return new Promise((function(r,i){(t||Ie)(o(o({},e),{},{onSuccess:function(t){var i=function(e){return e},o=fe(e.parse);g.Function(o)?i=o:o&&g.String(o)&&(i=function(e){return ke(e,o)}),r(i(t,void 0,n))},onError:function(e){i(e)}}))}))}function Me(e){return N(e)}var Le=0;function Ue(){var e=370+ ++Le;return"F"+Math.random().toString(36).substr(3,3)+Number("".concat(Date.now())).toString(36)+e.toString(36)+"c"}function qe(e,t,n){var r,i=e;return(t||"").split(".").forEach((function(e){r&&(i[r]&&"object"==a(i[r])||(i[r]={}),i=i[r]),r=e})),i[r]=n,i}var He=1;function Je(e){I(this,{$handle:e,fc:e.fc,vm:e.vm,$manager:e.$manager,vNode:new e.fc.CreateNode(e.vm),force:!1,tmpInput:null,id:He++}),ye(this,{options:function(){return e.options},sort:function(){return e.sort}}),this.initCache(),this.initRender()}!function(e){I(e.prototype,{initCache:function(){this.clearCacheAll()},clearCache:function(e){e.rule.cache||(this.cache[e.id]?((!0===this.cache[e.id].use||this.cache[e.id].parent)&&this.$handle.refresh(),this.cache[e.id].parent&&this.clearCache(this.cache[e.id].parent),this.cache[e.id]=null):e.parent&&this.clearCache(e.parent))},clearCacheAll:function(){this.cache={}},setCache:function(e,t,n){this.cache[e.id]={vnode:t,use:!1,parent:n,slot:e.rule.slot}},getCache:function(e){var t=this.cache[e.id];if(t)return t.use=!0,t.vnode}})}(Je),function(e){I(e.prototype,{initRender:function(){this.cacheConfig={}},getTypeSlot:function(e){return function t(n){if(n){var r=void 0;return e.rule.field&&(r=n.slots["field-"+W(e.rule.field)]||n.slots["field-"+e.rule.field]),r||(r=n.slots["type-"+W(e.type)]||n.slots["type-"+e.type]),r||t(n.setupState.parent)}}(this.vm)},render:function(){var e=this;if(this.vm.setupState.isShow){this.$manager.beforeRender();var t=_e();return this.sort.forEach((function(n){e.renderSlot(t,e.$handle.ctxs[n])})),this.$manager.render(t)}},renderSlot:function(e,t,n){if(this.isFragment(t)){t.initProp(),this.mergeGlobal(t),t.initNone();var r=this.renderChildren(t.loadChildrenPending(),t),i=r.default;i&&e.setSlot(t.rule.slot,(function(){return i()})),delete r.default,e.mergeBag(r)}else e.setSlot(t.rule.slot,this.renderCtx(t,n))},mergeGlobal:function(e){var n=this;this.$handle.options.global&&(this.cacheConfig[e.trueType]||(this.cacheConfig[e.trueType]=t.computed((function(){var t=n.$handle.options.global;return me({},[t["*"]||t.default||{},t[e.originType]||t[e.type]||t[e.type]||{}])}))),e.prop=me({},[this.cacheConfig[e.trueType].value,e.prop]))},setOptions:function(e){var t=e.loadPending({key:"options",origin:e.prop.options,def:[]});e.prop.options=t,e.prop.optionsTo&&t&&qe(e.prop,e.prop.optionsTo,t)},deepSet:function(e){var t=e.rule.deep;t&&Object.keys(t).sort((function(e,t){return e.length<t.length?-1:1})).forEach((function(n){qe(e.prop,n,t[n])}))},parseSide:function(e,t){return g.Object(e)?me({props:{formCreateInject:t.prop.props.formCreateInject}},e):e},renderSides:function(e,t,n){var r=t[n?"rule":"prop"];return[this.renderRule(this.parseSide(r.prefix,t)),e,this.renderRule(this.parseSide(r.suffix,t))]},renderId:function(e,t){var n=this,r=this.$handle["field"===t?"fieldCtx":"nameCtx"][e];return r?r.map((function(e){return n.renderCtx(e,e.parent)})):void 0},renderCtx:function(e,t){var n=this;try{if("hidden"===e.type)return;var r=e.rule;if(this.force||!this.cache[e.id]||this.cache[e.id].slot!==r.slot){var i;e.initProp(),this.mergeGlobal(e),e.initNone(),this.$manager.tidyRule(e),this.deepSet(e),this.setOptions(e),this.ctxProp(e);var o=e.prop;o.preview=!!(null!=o.preview?o.preview:this.$handle.preview),o.props.formCreateInject=this.injectProp(e);var a=!1!==o.cache,u=o.preview;if(o.hidden)return void this.setCache(e,void 0,t);i=function(){for(var i=arguments.length,c=new Array(i),l=0;l<i;l++)c[l]=arguments[l];var s={rule:r,prop:o,preview:u,api:n.$handle.api,model:o.model||{},slotValue:c};c.length&&r.slotUpdate&&$e((function(){return r.slotUpdate(s)}));var f={},d=e.loadChildrenPending();e.parser.renderChildren?f=e.parser.renderChildren(d,e):!1!==e.parser.loadChildren&&(f=n.renderChildren(d,e)),Object.keys(o.renderSlots||{}).forEach((function(t){f[t]=function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];if(g.Function(o.renderSlots[t]))return $e((function(){var e;return(e=o.renderSlots)[t].apply(e,i)}));var u=n.parseSide(o.renderSlots[t],e);return n.renderRule(u)}}));var p,h=n.getTypeSlot(e);return h?(s.children=f,p=h(s)):p=u?e.parser.preview(B(f),e):e.parser.render(B(f),e),p=n.renderSides(p,e),!e.input&&g.Undef(o.native)||!0===o.native||(n.fc.targetFormDriver("updateWrap",e),p=n.$manager.makeWrap(e,p)),e.none&&(p=A