/**
 * Skipped minification because the original files appears to be already minified.
 * Original file: /npm/bios-form@1.2.1/dist/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var React=require("react"),omit=_interopDefault(require("lodash.omit")),pick=_interopDefault(require("lodash.pick")),get=_interopDefault(require("lodash.get")),set=_interopDefault(require("lodash.set")),clone=_interopDefault(require("lodash.clonedeep")),nanoid=_interopDefault(require("nanoid")),axios=_interopDefault(require("axios")),mitt=_interopDefault(require("mitt")),extendStatics=function(e,t){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function __extends(e,t){function n(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function __rest(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&(n[r[o]]=e[r[o]])}return n}function parseAction(value){var contextAPI=this.props.contextAPI,getWidget=contextAPI.getWidget,getConstant=contextAPI.getConstant,getFunction=contextAPI.getFunction;return value.reduce(function(prev,obj){var type=obj.type,from=obj.from,to=obj.to;switch(type){case"widget":prev[to]=getWidget(from);break;case"constant":prev[to]=getConstant(from);break;case"function":prev[to]=getFunction(from);break;case"eval":prev[to]=eval(from)}return prev},{})}function toAction(){var r=this,o=this.props.action,e=Object.keys(o).reduce(function(e,t){var n=o[t];return e[t]=parseAction.bind(r,n),e},{});Object.assign(this,e)}var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function createCommonjsModule(e,t){return e(t={exports:{}},t.exports),t.exports}var lodash_isequal=createCommonjsModule(function(e,t){var r="__lodash_hash_undefined__",b=1,_=2,n=9007199254740991,y="[object Arguments]",g="[object Array]",o="[object AsyncFunction]",F="[object Boolean]",j="[object Date]",E="[object Error]",i="[object Function]",s="[object GeneratorFunction]",R="[object Map]",x="[object Number]",a="[object Null]",O="[object Object]",u="[object Promise]",c="[object Proxy]",S="[object RegExp]",P="[object Set]",w="[object String]",A="[object Symbol]",l="[object Undefined]",f="[object WeakMap]",I="[object ArrayBuffer]",C="[object DataView]",d=/^\[object .+?Constructor\]$/,h=/^(?:0|[1-9]\d*)$/,p={};p["[object Float32Array]"]=p["[object Float64Array]"]=p["[object Int8Array]"]=p["[object Int16Array]"]=p["[object Int32Array]"]=p["[object Uint8Array]"]=p["[object Uint8ClampedArray]"]=p["[object Uint16Array]"]=p["[object Uint32Array]"]=!0,p[y]=p[g]=p[I]=p[F]=p[C]=p[j]=p[E]=p[i]=p[R]=p[x]=p[O]=p[S]=p[P]=p[w]=p[f]=!1;var v="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,m="object"==typeof self&&self&&self.Object===Object&&self,M=v||m||Function("return this")(),V=t&&!t.nodeType&&t,D=V&&e&&!e.nodeType&&e,k=D&&D.exports===V,z=k&&v.process,q=function(){try{return z&&z.binding&&z.binding("util")}catch(e){}}(),U=q&&q.isTypedArray;function B(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function N(e){var n=-1,r=Array(e.size);return e.forEach(function(e,t){r[++n]=[t,e]}),r}function T(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}var $,L,W,Y=Array.prototype,G=Function.prototype,K=Object.prototype,H=M["__core-js_shared__"],J=G.toString,Q=K.hasOwnProperty,X=($=/[^.]+$/.exec(H&&H.keys&&H.keys.IE_PROTO||""))?"Symbol(src)_1."+$:"",Z=K.toString,ee=RegExp("^"+J.call(Q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),te=k?M.Buffer:void 0,ne=M.Symbol,re=M.Uint8Array,oe=K.propertyIsEnumerable,ie=Y.splice,se=ne?ne.toStringTag:void 0,ae=Object.getOwnPropertySymbols,ue=te?te.isBuffer:void 0,ce=(L=Object.keys,W=Object,function(e){return L(W(e))}),le=qe(M,"DataView"),fe=qe(M,"Map"),de=qe(M,"Promise"),he=qe(M,"Set"),pe=qe(M,"WeakMap"),ve=qe(Object,"create"),me=Te(le),_e=Te(fe),ye=Te(de),ge=Te(he),be=Te(pe),Fe=ne?ne.prototype:void 0,je=Fe?Fe.valueOf:void 0;function Ee(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Re(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function xe(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Oe(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new xe;++t<n;)this.add(e[t])}function Se(e){var t=this.__data__=new Re(e);this.size=t.size}function Pe(e,t){var n=We(e),r=!n&&Le(e),o=!n&&!r&&Ye(e),i=!n&&!r&&!o&&Xe(e),s=n||r||o||i,a=s?function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}(e.length,String):[],u=a.length;for(var c in e)!t&&!Q.call(e,c)||s&&("length"==c||o&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Ne(c,u))||a.push(c);return a}function we(e,t){for(var n=e.length;n--;)if($e(e[n][0],t))return n;return-1}function Ae(e){return null==e?void 0===e?l:a:se&&se in Object(e)?function(e){var t=Q.call(e,se),n=e[se];try{var r=!(e[se]=void 0)}catch(e){}var o=Z.call(e);r&&(t?e[se]=n:delete e[se]);return o}(e):function(e){return Z.call(e)}(e)}function Ie(e){return Je(e)&&Ae(e)==y}function Ce(e,t,n,r,o){return e===t||(null==e||null==t||!Je(e)&&!Je(t)?e!=e&&t!=t:function(e,t,n,r,o,i){var s=We(e),a=We(t),u=s?g:Be(e),c=a?g:Be(t),l=(u=u==y?O:u)==O,f=(c=c==y?O:c)==O,d=u==c;if(d&&Ye(e)){if(!Ye(t))return!1;l=!(s=!0)}if(d&&!l)return i||(i=new Se),s||Xe(e)?De(e,t,n,r,o,i):function(e,t,n,r,o,i,s){switch(n){case C:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case I:return!(e.byteLength!=t.byteLength||!i(new re(e),new re(t)));case F:case j:case x:return $e(+e,+t);case E:return e.name==t.name&&e.message==t.message;case S:case w:return e==t+"";case R:var a=N;case P:var u=r&b;if(a||(a=T),e.size!=t.size&&!u)return!1;var c=s.get(e);if(c)return c==t;r|=_,s.set(e,t);var l=De(a(e),a(t),r,o,i,s);return s.delete(e),l;case A:if(je)return je.call(e)==je.call(t)}return!1}(e,t,u,n,r,o,i);if(!(n&b)){var h=l&&Q.call(e,"__wrapped__"),p=f&&Q.call(t,"__wrapped__");if(h||p){var v=h?e.value():e,m=p?t.value():t;return i||(i=new Se),o(v,m,n,r,i)}}return d&&(i||(i=new Se),function(e,t,n,r,o,i){var s=n&b,a=ke(e),u=a.length,c=ke(t).length;if(u!=c&&!s)return!1;var l=u;for(;l--;){var f=a[l];if(!(s?f in t:Q.call(t,f)))return!1}var d=i.get(e);if(d&&i.get(t))return d==t;var h=!0;i.set(e,t),i.set(t,e);var p=s;for(;++l<u;){f=a[l];var v=e[f],m=t[f];if(r)var _=s?r(m,v,f,t,e,i):r(v,m,f,e,t,i);if(!(void 0===_?v===m||o(v,m,n,r,i):_)){h=!1;break}p||(p="constructor"==f)}if(h&&!p){var y=e.constructor,g=t.constructor;y!=g&&"constructor"in e&&"constructor"in t&&!("function"==typeof y&&y instanceof y&&"function"==typeof g&&g instanceof g)&&(h=!1)}return i.delete(e),i.delete(t),h}(e,t,n,r,o,i))}(e,t,n,r,Ce,o))}function Me(e){return!(!He(e)||function(e){return!!X&&X in e}(e))&&(Ge(e)?ee:d).test(Te(e))}function Ve(e){if(!function(e){var t=e&&e.constructor,n="function"==typeof t&&t.prototype||K;return e===n}(e))return ce(e);var t=[];for(var n in Object(e))Q.call(e,n)&&"constructor"!=n&&t.push(n);return t}function De(e,t,r,o,i,s){var n=r&b,a=e.length,u=t.length;if(a!=u&&!(n&&a<u))return!1;var c=s.get(e);if(c&&s.get(t))return c==t;var l=-1,f=!0,d=r&_?new Oe:void 0;for(s.set(e,t),s.set(t,e);++l<a;){var h=e[l],p=t[l];if(o)var v=n?o(p,h,l,t,e,s):o(h,p,l,e,t,s);if(void 0!==v){if(v)continue;f=!1;break}if(d){if(!B(t,function(e,t){if(n=t,!d.has(n)&&(h===e||i(h,e,r,o,s)))return d.push(t);var n})){f=!1;break}}else if(h!==p&&!i(h,p,r,o,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function ke(e){return function(e,t,n){var r=t(e);return We(e)?r:function(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}(r,n(e))}(e,Ze,Ue)}function ze(e,t){var n=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?n["string"==typeof t?"string":"hash"]:n.map}function qe(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return Me(n)?n:void 0}Ee.prototype.clear=function(){this.__data__=ve?ve(null):{},this.size=0},Ee.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Ee.prototype.get=function(e){var t=this.__data__;if(ve){var n=t[e];return n===r?void 0:n}return Q.call(t,e)?t[e]:void 0},Ee.prototype.has=function(e){var t=this.__data__;return ve?void 0!==t[e]:Q.call(t,e)},Ee.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=ve&&void 0===t?r:t,this},Re.prototype.clear=function(){this.__data__=[],this.size=0},Re.prototype.delete=function(e){var t=this.__data__,n=we(t,e);return!(n<0)&&(n==t.length-1?t.pop():ie.call(t,n,1),--this.size,!0)},Re.prototype.get=function(e){var t=this.__data__,n=we(t,e);return n<0?void 0:t[n][1]},Re.prototype.has=function(e){return-1<we(this.__data__,e)},Re.prototype.set=function(e,t){var n=this.__data__,r=we(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},xe.prototype.clear=function(){this.size=0,this.__data__={hash:new Ee,map:new(fe||Re),string:new Ee}},xe.prototype.delete=function(e){var t=ze(this,e).delete(e);return this.size-=t?1:0,t},xe.prototype.get=function(e){return ze(this,e).get(e)},xe.prototype.has=function(e){return ze(this,e).has(e)},xe.prototype.set=function(e,t){var n=ze(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Oe.prototype.add=Oe.prototype.push=function(e){return this.__data__.set(e,r),this},Oe.prototype.has=function(e){return this.__data__.has(e)},Se.prototype.clear=function(){this.__data__=new Re,this.size=0},Se.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Se.prototype.get=function(e){return this.__data__.get(e)},Se.prototype.has=function(e){return this.__data__.has(e)},Se.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Re){var r=n.__data__;if(!fe||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new xe(r)}return n.set(e,t),this.size=n.size,this};var Ue=ae?function(t){return null==t?[]:(t=Object(t),function(e,t){for(var n=-1,r=null==e?0:e.length,o=0,i=[];++n<r;){var s=e[n];t(s,n,e)&&(i[o++]=s)}return i}(ae(t),function(e){return oe.call(t,e)}))}:function(){return[]},Be=Ae;function Ne(e,t){return!!(t=null==t?n:t)&&("number"==typeof e||h.test(e))&&-1<e&&e%1==0&&e<t}function Te(e){if(null!=e){try{return J.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function $e(e,t){return e===t||e!=e&&t!=t}(le&&Be(new le(new ArrayBuffer(1)))!=C||fe&&Be(new fe)!=R||de&&Be(de.resolve())!=u||he&&Be(new he)!=P||pe&&Be(new pe)!=f)&&(Be=function(e){var t=Ae(e),n=t==O?e.constructor:void 0,r=n?Te(n):"";if(r)switch(r){case me:return C;case _e:return R;case ye:return u;case ge:return P;case be:return f}return t});var Le=Ie(function(){return arguments}())?Ie:function(e){return Je(e)&&Q.call(e,"callee")&&!oe.call(e,"callee")},We=Array.isArray;var Ye=ue||function(){return!1};function Ge(e){if(!He(e))return!1;var t=Ae(e);return t==i||t==s||t==o||t==c}function Ke(e){return"number"==typeof e&&-1<e&&e%1==0&&e<=n}function He(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Je(e){return null!=e&&"object"==typeof e}var Qe,Xe=U?(Qe=U,function(e){return Qe(e)}):function(e){return Je(e)&&Ke(e.length)&&!!p[Ae(e)]};function Ze(e){return function(e){return null!=e&&Ke(e.length)&&!Ge(e)}(e)?Pe(e):Ve(e)}e.exports=function(e,t){return Ce(e,t)}}),hasSymbol="function"==typeof Symbol&&Symbol.for,BIOS_NIL=hasSymbol?Symbol("undefined"):-16777215;function toDepend(){var n=this,e=this.props,t=e.name,r=e.common,o=e.contextAPI.getFieldsValue,i=r.names,s=void 0===i?[]:i,a=r.constants,u=void 0===a?[]:a,c=r.functions,l=void 0===c?[]:c;t&&s.push(t);var f=o(),d=s.reduce(function(e,t){var n=get(f,t);return set(e,t,n),e},{});this.onDependNames=function(o){var i=!1;s.forEach(function(e){var t=get(d,e),n=get(o,e,BIOS_NIL),r=n!==BIOS_NIL&&!lodash_isequal(n,t);r&&(set(d,e,n),i||(i=r))}),i&&n.forceUpdate()},this.onDependConstants=function(e){var t=Object.keys(e);u.some(function(e){return-1!==t.indexOf(e)})&&n.forceUpdate()},this.onDependFunctions=function(e){var t=Object.keys(e);l.some(function(e){return-1!==t.indexOf(e)})&&n.forceUpdate()}}var PICK_FORM_PROPS_KEYS=["initialData","widgets","constants","functions","actions","addons"],DEFAULT_VERIFY_MESSAGE="数据校验未通过",VERIFY_RULE_KEYS=["required","enum","regex","range","custom"],ENTER_RULE_KEYS=["valid","invalid","length","enum","regex","range","custom"],PureComponent=React.PureComponent,BaseField=function(h){function e(e){var t,l=h.call(this,e)||this;l.state={isError:!1},l.handleRerender=function(e){var t=l.props.id;e.includes(t)&&l.forceUpdate()},l.handleExtraProps=function(e){var t=l.plusProps,n=t&&t(),r=l.props,o=r.common,i=r.contextAPI,s=(o||{}).isCustom;return void 0!==s&&s&&(e.contextAPI=i),Object.assign({},n,e)},l.onChange=function(e){var t,n=l.props,r=n.name,o=n.common,i=n.contextAPI,s=(o||{}).valueName,a=void 0===s?null:s,u=i.dispatch,c=a?get(e,a):e;u("setFieldsValue",((t={})[r||""]=c,t))};var n=l.props,r=n.name,o=n.widget,i=n.common,s=n.contextAPI,a=i.defaultValue,u=s.getWidget,c=s.getFieldsValue,f=s.dispatch;l.Widget=u(o),toDepend.call(l),toAction.call(l);var d=r?get(c([r]),r):c();return void 0===d&&void 0!==a&&f("setFieldsValue",((t={})[d||""]=a,t)),l}return __extends(e,h),e.getDerivedStateFromError=function(e){return{hasError:!0,msgError:e.message}},e.prototype.componentWillMount=function(){var e,t,n=this.handleRerender,r=this.onDependNames,o=this.onDependConstants,i=this.onDependFunctions,s=this.props,a=s.id,u=s.rules,c=s.contextAPI,l=u.enter,f=u.verify,d=c.subscribe,h=c.dispatch;a&&l&&h("setFieldEnterRule",((e={})[a]=l,e)),a&&f&&h("setFieldVerifyRule",((t={})[a]=f,t)),d("onRerender",n),d("setFieldsValue",r),d("setConstant",o),d("setFunction",i)},e.prototype.componentWillUnmount=function(){var e,t,n=this.handleRerender,r=this.onDependNames,o=this.onDependConstants,i=this.onDependFunctions,s=this.props,a=s.id,u=s.rules,c=s.contextAPI,l=u.enter,f=u.verify,d=c.unsubscribe,h=c.dispatch;a&&l&&h("setFieldEnterRule",((e={})[a]=void 0,e)),a&&f&&h("setFieldVerifyRule",((t={})[a]=void 0,t)),d("onRerender",n),d("setFieldsValue",r),d("setConstant",o),d("setFunction",i)},e.prototype.render=function(){if(this.state.hasError)return React.createElement("span",null,"Went wrong: "+this.state.msgError);var e=this.Widget,t=this.onChange,n=this.props,r=n.id,o=n.name,i=n.title,s=n.common,a=n.rules,u=n.props,c=n.contextAPI,l=s.message,f=void 0===l?DEFAULT_VERIFY_MESSAGE:l,d=get(a,"verify.required",!1),h=c.getFieldsError,p=c.getFieldsValue,v=h([r])[r],m=o?get(p([o]),o):p(),_=this.handleExtraProps({value:m,onChange:t});return e&&React.createElement("div",null,null!=i&&React.createElement("div",null,d&&React.createElement("span",{style:{color:"red"}},"*"),!!i&&React.createElement("span",null," "+i+"：")),React.createElement("div",null,React.createElement(e,__assign({},_,u))),null!=v&&React.createElement("div",null,"string"==typeof v?v:f))||null},e.defaultProps={id:nanoid(),common:{},rules:{},action:{}},e}(PureComponent),PureComponent$1=React.PureComponent,SchemaField=function(e){function t(){var r=null!==e&&e.apply(this,arguments)||this;return r.onDependSchema=function(e){var t=r.props.id,n=Object.keys(e);!!t&&n.some(function(e){return e===t})&&r.forceUpdate()},r}return __extends(t,e),t.prototype.componentDidMount=function(){(0,this.props.contextAPI.subscribe)("setFieldSchema",this.onDependSchema)},t.prototype.componentWillUnmount=function(){(0,this.props.contextAPI.unsubscribe)("setFieldSchema",this.onDependSchema)},t.prototype.render=function(){var e=this.props,t=e.id,n=e.formSchema,r=e.contextAPI,o=__rest(e,["id","formSchema","contextAPI"]),i=clone(o),s=(0,r.getFieldSchema)(t);s&&Object.keys(s).forEach(function(e){var t=s[e];set(i,e,t)});var a=n.index,u=i.indexes;return(!!(u&&a&&u.includes(a))||null)&&React.createElement(BaseField,__assign({id:t},i,{contextAPI:r}))},t}(PureComponent$1),Context=React.createContext({}),Provider=Context.Provider,Consumer=Context.Consumer,memo=React.memo,BaseForm=memo(function(e){var i=e.formSchema,t=e.fieldsSchema;return React.createElement(Consumer,null,function(o){return t.map(function(e,t){var n=e.id,r=__rest(e,["id"]);return React.createElement(SchemaField,__assign({key:n||t},r,{formSchema:i,contextAPI:o}))})})});BaseForm.displayName="BaseForm";var memo$1=React.memo,FormMap={Base:BaseForm},TypeForm=memo$1(function(e){var t=(e.formSchema||{}).type,n=FormMap[void 0===t?"Base":t]||null;return n&&React.createElement(n,__assign({},e))},function(e,t){return get(e,"formSchema.type")===get(t,"formSchema.type")});TypeForm.displayName="TypeForm";var StoreModel=function(){function e(e){var o=this;this.data={},this.errors={},this.fieldsVerifyRule={},this.fieldsEnterRule={},this.getFieldsVerifyRule=function(e){var t=o.fieldsVerifyRule;return e?pick(t,e):t},this.getFieldsEnterRule=function(e){var t=o.fieldsEnterRule;return e?pick(t,e):t},this.getFieldsError=function(e){var t=o.errors;return e?pick(t,e):t},this.getFieldsValue=function(e){var r=o.data;return e?e.reduce(function(e,t){var n=get(r,t);return void 0===n||set(e,t,n),e},{}):r},this.setFieldVerifyRule=function(e,t){var n=o.fieldsVerifyRule;t?n[e]=t:delete n[e]},this.setFieldEnterRule=function(e,t){var n=o.fieldsEnterRule;t?n[e]=t:delete n[e]},this.setFieldError=function(e,t){t?o.errors[e]=t:delete o.errors[e]},this.setFieldValue=function(e,t){var n=o.data;e?set(n,e,t):Object.assign(n,t)};var t=e.initialData;this.data=clone(t)}return Object.defineProperty(e.prototype,"formData",{get:function(){return this.data},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formErrors",{get:function(){return this.errors},enumerable:!0,configurable:!0}),e}(),_widgets=Object.freeze({}),buildRequest=function(r){return[function(n){var e=Object.values(r);Object.keys(r).forEach(function(e){var t=r[e];set(n,e,get(n,t))}),e.forEach(function(e){set(n,e,void 0)})}]},buildResponse=function(r){return[function(n){var e=Object.values(r);Object.keys(r).forEach(function(e){var t=r[e];set(n,e,get(n,t))}),e.forEach(function(e){set(n,e,void 0)})}]},toOption=function(e){var t=e.transform,n=void 0===t?{}:t,r=__rest(e,["transform"]),o=n.request,i=n.response;return o&&(r.transformRequest=buildRequest(o)),i&&(r.transformRequest=buildResponse(i)),r},ContextModel=function(e){var o=this;this.widgets={},this.constants={},this.functions={},this.fieldSchemas={},this.handleFetchInit=function(r){var e=Object.keys(r).reduce(function(e,t){var n=toOption(r[t]);return e[t]=function(){return axios(n)},e},[]);Object.assign(o.functions,e)},this.getWidget=function(e){return o.widgets[e]||null},this.getConstant=function(e){return o.constants[e]||null},this.getFunction=function(e){return o.functions[e]||null},this.getFieldSchema=function(e){return o.fieldSchemas[e]||null},this.setConstant=function(e,t){o.constants[e]=t},this.setFunction=function(e,t){o.functions[e]=t},this.setFieldSchema=function(e,n){var r=o.fieldSchemas[e]||{};n&&Object.keys(n).forEach(function(e){var t=n[e];r[e]=t}),o.fieldSchemas[e]=r};var t=e.widgets,n=e.constants,r=e.functions,i=e.fetches;this.widgets=Object.assign({},_widgets,t),this.constants=n||{},this.functions=r||{},this.handleFetchInit(i)},ActionModel=function(e){var r=this;this.dispatch=function(e,t){r.emitter.emit(e,t)},this.subscribe=function(e,t){r.emitter.on(e,t)},this.unsubscribe=function(e,t){r.emitter.off(e,t)},this.emitter=new mitt,e.actions.forEach(function(e){var t=e.name,n=e.handler;r.subscribe(t,n)})},toPairsFunc=function(r){return function(n){if(!n)throw new Error("the params must be an object type.");Object.keys(n).map(function(e){var t=n[e];r(e,t)})}},execute=function(l,f,d){var h=null,p=f.name;return VERIFY_RULE_KEYS.some(function(e){var t=f[e];if(null==t)return!1;switch(e){case"required":var n=!!t&&void 0===l||""===l;return n&&(h="["+p+"]: the value cannot be 'undefined' or empty string "),n;case"enum":var r=void 0!==l&&t.includes(l);return r&&(h="["+p+"]: the value must be one of enum("+t.toString()+") "),r;case"regex":var o=new RegExp(t),i=void 0!==l&&!o.test(l);return i&&(h="["+p+"]: the value must conform to the regexp("+t+")"),i;case"range":var s=t.min,a=t.max,u=void 0!==s&&l<s&&void 0!==a&&a<l;return u&&(h="["+p+"]: the value cannot less than min("+(s||"")+") and greater than max("+(a||"")+")"),u;case"custom":var c=d(t);return!!(h=c&&c(l));default:return!1}}),h};function onVerifyRule(s){var e=this.storeModel,a=e.formData,t=e.getFieldsVerifyRule,n=e.setFieldError,u=this.contextModel.getFunction,r=[],c=t();return{errors:Object.keys(c).reduce(function(o,e){var i=null;return c[e].some(function(e){var t=e.name,n=get(a,t),r=(null==s||s.includes(t))&&execute(n,e,u);return r&&(i||(i=r),o[t]||(o[t]=[]),o[t].push(r)),!!r}),n(e,i),r.push(e),o},{}),errorIds:r}}var execute$1=function(i,s,a){var u=!1;return ENTER_RULE_KEYS.some(function(e){var t=s[e];if(null==t)return!1;switch(e){case"valid":return t.every(function(e){return null==i||i.includes(e)});case"invalid":return t.every(function(e){return null==i||!i.includes(e)});case"length":return!!(i&&i.length>t);case"enum":return!t.includes(i);case"regex":return!new RegExp(t).test(i);case"range":var n=t.min,r=t.max;return void 0!==n&&i<n&&void 0!==r&&r<i;case"custom":var o=a(t);return!!(u=o&&o(i));default:return!1}}),!!u};function onEnterRule(i){var e=this.storeModel.getFieldsEnterRule,s=this.contextModel.getFunction,a=Object.keys(i),u=e(),t=Object.keys(u).reduce(function(e,t){var n=u[t],r=n.name,o=i[r];return a.includes(r)&&execute$1(o,n,s)&&e.push(r),e},[]);return a.filter(function(e){return!t.includes(e)})}var PureComponent$2=React.PureComponent,SchemaForm=function(d){function e(e){var f=d.call(this,e)||this;f.isVerify=!1,f.getFieldsError=function(e){return f.storeModel.getFieldsError(e)},f.getFieldsValue=function(e){return f.storeModel.getFieldsValue(e)},f.setFieldsError=function(e){return f.actionModel.dispatch("setFieldsError",e)},f.setFieldsValue=function(n){var r=f.storeModel.setFieldValue;onEnterRule.call(f,n).forEach(function(e){var t=n[e];r(e,t)})},f.onValidate=function(e,t){var n=(t||{}).force,r=void 0!==n&&n,o=f.storeModel.formErrors,i=f.actionModel.dispatch,s=onVerifyRule.call(f,e),a=s.errors,u=s.errorIds,c=new Set(Object.keys(o).concat(u)),l=[];return c.forEach(function(e){l.push(e)}),r&&i("onRerender",l),a},f.onSubmit=function(){var e=f.props.form,t=f.storeModel,n=t.formData,r=t.formErrors;if(e.verify){f.isVerify=!0;var o=f.onValidate(void 0,{force:!0});throw Object.keys(r).forEach(function(e){o[e]||(o[e]=null)}),f.setFieldsError(o),console.error(o),o}return n};var t=e.initialData,n=e.widgets,r=e.constants,o=e.functions,i=e.fetches,s=e.actions;f.storeModel=new StoreModel({initialData:t}),f.contextModel=new ContextModel({widgets:n,constants:r,functions:o,fetches:i}),f.actionModel=new ActionModel({actions:s});var a=f,u=a.storeModel,c=a.contextModel,l=a.actionModel.subscribe;return l("setFieldSchema",toPairsFunc(c.setFieldSchema)),l("setConstant",toPairsFunc(c.setConstant)),l("setFunction",toPairsFunc(c.setFunction)),l("setFieldEnterRule",toPairsFunc(u.setFieldEnterRule)),l("setFieldVerifyRule",toPairsFunc(u.setFieldVerifyRule)),l("setFieldsError",toPairsFunc(u.setFieldError)),l("setFieldsValue",f.setFieldsValue),l("onSubmit",f.onSubmit),f}return __extends(e,d),Object.defineProperty(e.prototype,"contextAPI",{get:function(){var e=pick(this,["getFieldsValue","getFieldsError"]),t=pick(this.actionModel,["dispatch","subscribe","unsubscribe"]),n=pick(this.contextModel,["getWidget","getFunction","getConstant","getFieldSchema"]);return __assign({},e,t,n)},enumerable:!0,configurable:!0}),e.prototype.render=function(){var e=this.contextAPI,t=this.props,n=t.className,r=t.style,o=t.form,i=t.fields,s=t.children,a=__rest(t,["className","style","form","fields","children"]),u=omit(a,PICK_FORM_PROPS_KEYS);return React.createElement("div",{className:n,style:r},React.createElement("form",__assign({},u),React.createElement(Provider,{value:e},React.createElement(TypeForm,{formSchema:o,fieldsSchema:i})),s))},e.defaultProps={initialData:{},form:{},fields:[],widgets:{},constants:{},functions:{},fetches:{},actions:[]},e}(PureComponent$2);module.exports=SchemaForm;
