fj-form 0.0.0 → 0.0.2

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/fj-form.css CHANGED
@@ -1 +1 @@
1
- .item-content[data-v-46dc3a6b],.item-content[data-v-c1a28b76],.item-content[data-v-55332813],.item-content[data-v-5661da0c],.item-content[data-v-9243ad8a],.item-content[data-v-eacf7d61]{width:100%}.fj-form-container .fj-block[data-v-0cd9e5cf]{padding:10px;border:1px solid lime;margin-bottom:10px}.fj-form-container .fj-block .block-title[data-v-0cd9e5cf]{padding:10px;border:1px solid red}.fj-form-container .fj-block .fj-form-item[data-v-0cd9e5cf]{padding:10px;border:1px solid orange}
1
+ .item-content[data-v-46dc3a6b],.item-content[data-v-c1a28b76],.item-content[data-v-55332813],.item-content[data-v-5661da0c],.item-content[data-v-9243ad8a],.item-content[data-v-eacf7d61]{width:100%}.fj-form-container .fj-block[data-v-54785ce6]{padding:10px;border:1px solid lime;margin-bottom:10px}.fj-form-container .fj-block .block-title[data-v-54785ce6]{padding:10px;border:1px solid red}.fj-form-container .fj-block .fj-form-item[data-v-54785ce6]{padding:10px;border:1px solid orange}
package/dist/fj-form.js CHANGED
@@ -2506,15 +2506,12 @@ const jr = Rt(Yu), Ju = { class: "item-content" }, ku = /* @__PURE__ */ L({
2506
2506
  (q(), we(Ye(i())))
2507
2507
  ]));
2508
2508
  }
2509
- }), vl = /* @__PURE__ */ pe(ml, [["__scopeId", "data-v-0cd9e5cf"]]);
2510
- function gl(e) {
2509
+ }), vl = /* @__PURE__ */ pe(ml, [["__scopeId", "data-v-54785ce6"]]);
2510
+ function yl(e) {
2511
2511
  e.component("FjForm", vl);
2512
2512
  }
2513
- const hl = {
2514
- install: gl
2515
- };
2516
2513
  export {
2517
2514
  vl as FjForm,
2518
- hl as default,
2519
- gl as install
2515
+ yl as default,
2516
+ yl as install
2520
2517
  };
@@ -13,4 +13,4 @@ usage: app.provide(ID_INJECTION_KEY, {
13
13
  (?:`+n+":){1}(?:(?::"+n+"){0,4}:"+r+"|(?::"+n+`){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
14
14
  (?::(?:(?::`+n+"){0,5}:"+r+"|(?::"+n+`){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
15
15
  )(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
16
- `).replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp("(?:^"+r+"$)|(?:^"+o+"$)"),i=new RegExp("^"+r+"$"),l=new RegExp("^"+o+"$"),c=function(j){return j&&j.exact?s:new RegExp("(?:"+t(j)+r+t(j)+")|(?:"+t(j)+o+t(j)+")","g")};c.v4=function(v){return v&&v.exact?i:new RegExp(""+t(v)+r+t(v),"g")},c.v6=function(v){return v&&v.exact?l:new RegExp(""+t(v)+o+t(v),"g")};var d="(?:(?:[a-z]+:)?//)",p="(?:\\S+(?::\\S*)?@)?",f=c.v4().source,g=c.v6().source,S="(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)",$="(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*",u="(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))",b="(?::\\d{2,5})?",m='(?:[/?#][^\\s"]*)?',V="(?:"+d+"|www\\.)"+p+"(?:localhost|"+f+"|"+g+"|"+S+$+u+")"+b+m;return Ve=new RegExp("(?:^"+V+"$)","i"),Ve}),Sr={email:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},_e={integer:function(t){return _e.number(t)&&parseInt(t,10)===t},float:function(t){return _e.number(t)&&!_e.integer(t)},array:function(t){return Array.isArray(t)},regexp:function(t){if(t instanceof RegExp)return!0;try{return!!new RegExp(t)}catch{return!1}},date:function(t){return typeof t.getTime=="function"&&typeof t.getMonth=="function"&&typeof t.getYear=="function"&&!isNaN(t.getTime())},number:function(t){return isNaN(t)?!1:typeof t=="number"},object:function(t){return typeof t=="object"&&!_e.array(t)},method:function(t){return typeof t=="function"},email:function(t){return typeof t=="string"&&t.length<=320&&!!t.match(Sr.email)},url:function(t){return typeof t=="string"&&t.length<=2048&&!!t.match(js())},hex:function(t){return typeof t=="string"&&!!t.match(Sr.hex)}},Ts=function(t,r,n,o,s){if(t.required&&r===void 0){Tr(t,r,n,o,s);return}var i=["integer","float","array","regexp","object","method","email","number","date","url","hex"],l=t.type;i.indexOf(l)>-1?_e[l](r)||o.push(B(s.messages.types[l],t.fullField,t.type)):l&&typeof r!==t.type&&o.push(B(s.messages.types[l],t.fullField,t.type))},Ss=function(t,r,n,o,s){var i=typeof t.len=="number",l=typeof t.min=="number",c=typeof t.max=="number",d=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,p=r,f=null,g=typeof r=="number",S=typeof r=="string",$=Array.isArray(r);if(g?f="number":S?f="string":$&&(f="array"),!f)return!1;$&&(p=r.length),S&&(p=r.replace(d,"_").length),i?p!==t.len&&o.push(B(s.messages[f].len,t.fullField,t.len)):l&&!c&&p<t.min?o.push(B(s.messages[f].min,t.fullField,t.min)):c&&!l&&p>t.max?o.push(B(s.messages[f].max,t.fullField,t.max)):l&&c&&(p<t.min||p>t.max)&&o.push(B(s.messages[f].range,t.fullField,t.min,t.max))},le="enum",xs=function(t,r,n,o,s){t[le]=Array.isArray(t[le])?t[le]:[],t[le].indexOf(r)===-1&&o.push(B(s.messages[le],t.fullField,t[le].join(", ")))},Es=function(t,r,n,o,s){if(t.pattern){if(t.pattern instanceof RegExp)t.pattern.lastIndex=0,t.pattern.test(r)||o.push(B(s.messages.pattern.mismatch,t.fullField,r,t.pattern));else if(typeof t.pattern=="string"){var i=new RegExp(t.pattern);i.test(r)||o.push(B(s.messages.pattern.mismatch,t.fullField,r,t.pattern))}}},w={required:Tr,whitespace:Os,type:Ts,range:Ss,enum:xs,pattern:Es},Fs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r,"string")&&!t.required)return n();w.required(t,r,o,i,s,"string"),P(r,"string")||(w.type(t,r,o,i,s),w.range(t,r,o,i,s),w.pattern(t,r,o,i,s),t.whitespace===!0&&w.whitespace(t,r,o,i,s))}n(i)},Ps=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w.type(t,r,o,i,s)}n(i)},As=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(r===""&&(r=void 0),P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},Is=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w.type(t,r,o,i,s)}n(i)},Cs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),P(r)||w.type(t,r,o,i,s)}n(i)},Vs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},Ns=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},qs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(r==null&&!t.required)return n();w.required(t,r,o,i,s,"array"),r!=null&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},Bs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w.type(t,r,o,i,s)}n(i)},Rs="enum",Ms=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w[Rs](t,r,o,i,s)}n(i)},Ds=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r,"string")&&!t.required)return n();w.required(t,r,o,i,s),P(r,"string")||w.pattern(t,r,o,i,s)}n(i)},zs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r,"date")&&!t.required)return n();if(w.required(t,r,o,i,s),!P(r,"date")){var c;r instanceof Date?c=r:c=new Date(r),w.type(t,c,o,i,s),c&&w.range(t,c.getTime(),o,i,s)}}n(i)},Ls=function(t,r,n,o,s){var i=[],l=Array.isArray(r)?"array":typeof r;w.required(t,r,o,i,s,l),n(i)},lt=function(t,r,n,o,s){var i=t.type,l=[],c=t.required||!t.required&&o.hasOwnProperty(t.field);if(c){if(P(r,i)&&!t.required)return n();w.required(t,r,o,l,s,i),P(r,i)||w.type(t,r,o,l,s)}n(l)},Ws=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s)}n(i)},we={string:Fs,method:Ps,number:As,boolean:Is,regexp:Cs,integer:Vs,float:Ns,array:qs,object:Bs,enum:Ms,pattern:Ds,date:zs,url:lt,hex:lt,email:lt,required:Ls,any:Ws};function ct(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var t=JSON.parse(JSON.stringify(this));return t.clone=this.clone,t}}}var ut=ct(),$e=(function(){function e(r){this.rules=null,this._messages=ut,this.define(r)}var t=e.prototype;return t.define=function(n){var o=this;if(!n)throw new Error("Cannot configure a schema with no rules");if(typeof n!="object"||Array.isArray(n))throw new Error("Rules must be an object");this.rules={},Object.keys(n).forEach(function(s){var i=n[s];o.rules[s]=Array.isArray(i)?i:[i]})},t.messages=function(n){return n&&(this._messages=jr(ct(),n)),this._messages},t.validate=function(n,o,s){var i=this;o===void 0&&(o={}),s===void 0&&(s=function(){});var l=n,c=o,d=s;if(typeof c=="function"&&(d=c,c={}),!this.rules||Object.keys(this.rules).length===0)return d&&d(null,l),Promise.resolve(l);function p(u){var b=[],m={};function V(j){if(Array.isArray(j)){var A;b=(A=b).concat.apply(A,j)}else b.push(j)}for(var v=0;v<u.length;v++)V(u[v]);b.length?(m=st(b),d(b,m)):d(null,l)}if(c.messages){var f=this.messages();f===ut&&(f=ct()),jr(f,c.messages),c.messages=f}else c.messages=this.messages();var g={},S=c.keys||Object.keys(this.rules);S.forEach(function(u){var b=i.rules[u],m=l[u];b.forEach(function(V){var v=V;typeof v.transform=="function"&&(l===n&&(l=te({},l)),m=l[u]=v.transform(m)),typeof v=="function"?v={validator:v}:v=te({},v),v.validator=i.getValidationMethod(v),v.validator&&(v.field=u,v.fullField=v.fullField||u,v.type=i.getType(v),g[u]=g[u]||[],g[u].push({rule:v,value:m,source:l,field:u}))})});var $={};return _s(g,c,function(u,b){var m=u.rule,V=(m.type==="object"||m.type==="array")&&(typeof m.fields=="object"||typeof m.defaultField=="object");V=V&&(m.required||!m.required&&u.value),m.field=u.field;function v(y,_){return te({},_,{fullField:m.fullField+"."+y,fullFields:m.fullFields?[].concat(m.fullFields,[y]):[y]})}function j(y){y===void 0&&(y=[]);var _=Array.isArray(y)?y:[y];!c.suppressWarning&&_.length&&e.warning("async-validator:",_),_.length&&m.message!==void 0&&(_=[].concat(m.message));var T=_.map(Or(m,l));if(c.first&&T.length)return $[m.field]=1,b(T);if(!V)b(T);else{if(m.required&&!u.value)return m.message!==void 0?T=[].concat(m.message).map(Or(m,l)):c.error&&(T=[c.error(m,B(c.messages.required,m.field))]),b(T);var N={};m.defaultField&&Object.keys(u.value).map(function(q){N[q]=m.defaultField}),N=te({},N,u.rule.fields);var D={};Object.keys(N).forEach(function(q){var R=N[q],ft=Array.isArray(R)?R:[R];D[q]=ft.map(v.bind(null,q))});var K=new e(D);K.messages(c.messages),u.rule.options&&(u.rule.options.messages=c.messages,u.rule.options.error=c.error),K.validate(u.value,u.rule.options||c,function(q){var R=[];T&&T.length&&R.push.apply(R,T),q&&q.length&&R.push.apply(R,q),b(R.length?R:null)})}}var A;if(m.asyncValidator)A=m.asyncValidator(m,u.value,j,u.source,c);else if(m.validator){try{A=m.validator(m,u.value,j,u.source,c)}catch(y){console.error?.(y),c.suppressValidatorError||setTimeout(function(){throw y},0),j(y.message)}A===!0?j():A===!1?j(typeof m.message=="function"?m.message(m.fullField||m.field):m.message||(m.fullField||m.field)+" fails"):A instanceof Array?j(A):A instanceof Error&&j(A.message)}A&&A.then&&A.then(function(){return j()},function(y){return j(y)})},function(u){p(u)},l)},t.getType=function(n){if(n.type===void 0&&n.pattern instanceof RegExp&&(n.type="pattern"),typeof n.validator!="function"&&n.type&&!we.hasOwnProperty(n.type))throw new Error(B("Unknown rule type %s",n.type));return n.type||"string"},t.getValidationMethod=function(n){if(typeof n.validator=="function")return n.validator;var o=Object.keys(n),s=o.indexOf("message");return s!==-1&&o.splice(s,1),o.length===1&&o[0]==="required"?we.required:we[this.getType(n)]||void 0},e})();$e.register=function(t,r){if(typeof r!="function")throw new Error("Cannot register a validator by type, validator is not a function");we[t]=r},$e.warning=_r,$e.messages=ut,$e.validators=we;const Us=["","error","validating","success"],ks=ye({label:String,labelWidth:{type:[String,Number]},labelPosition:{type:String,values:["left","right","top",""],default:""},prop:{type:k([String,Array])},required:{type:Boolean,default:void 0},rules:{type:k([Object,Array])},error:String,validateStatus:{type:String,values:Us},for:String,inlineMessage:{type:Boolean,default:void 0},showMessage:{type:Boolean,default:!0},size:{type:String,values:rt}}),xr="ElLabelWrap";var Ks=a.defineComponent({name:xr,props:{isAutoWidth:Boolean,updateAll:Boolean},setup(e,{slots:t}){const r=a.inject(Pe,void 0),n=a.inject(Ae);n||Gi(xr,"usage: <el-form-item><label-wrap /></el-form-item>");const o=fe("form"),s=a.ref(),i=a.ref(0),l=()=>{var p;if((p=s.value)!=null&&p.firstElementChild){const f=window.getComputedStyle(s.value.firstElementChild).width;return Math.ceil(Number.parseFloat(f))}else return 0},c=(p="update")=>{a.nextTick(()=>{t.default&&e.isAutoWidth&&(p==="update"?i.value=l():p==="remove"&&r?.deregisterLabelWidth(i.value))})},d=()=>c("update");return a.onMounted(()=>{d()}),a.onBeforeUnmount(()=>{c("remove")}),a.onUpdated(()=>d()),a.watch(i,(p,f)=>{e.updateAll&&r?.registerLabelWidth(p,f)}),Ki(a.computed(()=>{var p,f;return(f=(p=s.value)==null?void 0:p.firstElementChild)!=null?f:null}),d),()=>{var p,f;if(!t)return null;const{isAutoWidth:g}=e;if(g){const S=r?.autoLabelWidth,$=n?.hasLabel,u={};if($&&S&&S!=="auto"){const b=Math.max(0,Number.parseInt(S,10)-i.value),V=(n.labelPosition||r.labelPosition)==="left"?"marginRight":"marginLeft";b&&(u[V]=`${b}px`)}return a.createVNode("div",{ref:s,class:[o.be("item","label-wrap")],style:u},[(p=t.default)==null?void 0:p.call(t)])}else return a.createVNode(a.Fragment,{ref:s},[(f=t.default)==null?void 0:f.call(t)])}}});const Gs=["role","aria-labelledby"],Hs=a.defineComponent({name:"ElFormItem",__name:"form-item",props:ks,setup(e,{expose:t}){const r=e,n=a.useSlots(),o=a.inject(Pe,void 0),s=a.inject(Ae,void 0),i=yr(void 0,{formItem:!1}),l=fe("form-item"),c=ts().value,d=a.ref([]),p=a.ref(""),f=Li(p,100),g=a.ref(""),S=a.ref();let $,u=!1;const b=a.computed(()=>r.labelPosition||o?.labelPosition),m=a.computed(()=>{var h;return b.value==="top"?{}:{width:hr((h=r.labelWidth)!=null?h:o?.labelWidth)}}),V=a.computed(()=>{var h;if(b.value==="top"||o?.inline)return{};if(!r.label&&!r.labelWidth&&D)return{};const O=hr((h=r.labelWidth)!=null?h:o?.labelWidth);return!r.label&&!n.label?{marginLeft:O}:{}}),v=a.computed(()=>[l.b(),l.m(i.value),l.is("error",p.value==="error"),l.is("validating",p.value==="validating"),l.is("success",p.value==="success"),l.is("required",gl.value||r.required),l.is("no-asterisk",o?.hideRequiredAsterisk),o?.requireAsteriskPosition==="right"?"asterisk-right":"asterisk-left",{[l.m("feedback")]:o?.statusIcon,[l.m(`label-${b.value}`)]:b.value}]),j=a.computed(()=>cr(r.inlineMessage)?r.inlineMessage:o?.inlineMessage||!1),A=a.computed(()=>[l.e("error"),{[l.em("error","inline")]:j.value}]),y=a.computed(()=>r.prop?Oe(r.prop)?r.prop.join("."):r.prop:""),_=a.computed(()=>!!(r.label||n.label)),T=a.computed(()=>{var h;return(h=r.for)!=null?h:d.value.length===1?d.value[0]:void 0}),N=a.computed(()=>!T.value&&_.value),D=!!s,K=a.computed(()=>{const h=o?.model;if(!(!h||!r.prop))return Ee(h,r.prop).value}),q=a.computed(()=>{const{required:h}=r,O=[];r.rules&&O.push(...He(r.rules));const C=o?.rules;if(C&&r.prop){const I=Ee(C,r.prop).value;I&&O.push(...He(I))}if(h!==void 0){const I=O.map((z,ue)=>[z,ue]).filter(([z])=>"required"in z);if(I.length>0)for(const[z,ue]of I)z.required!==h&&(O[ue]={...z,required:h});else O.push({required:h})}return O}),R=a.computed(()=>q.value.length>0),ft=h=>q.value.filter(C=>!C.trigger||!h?!0:Oe(C.trigger)?C.trigger.includes(h):C.trigger===h).map(({trigger:C,...I})=>I),gl=a.computed(()=>q.value.some(h=>h.required)),hl=a.computed(()=>{var h;return f.value==="error"&&r.showMessage&&((h=o?.showMessage)!=null?h:!0)}),Ir=a.computed(()=>`${r.label||""}${o?.labelSuffix||""}`),ce=h=>{p.value=h},yl=h=>{var O,C;const{errors:I,fields:z}=h;(!I||!z)&&console.error(h),ce("error"),g.value=I?(C=(O=I?.[0])==null?void 0:O.message)!=null?C:`${r.prop} is required`:"",o?.emit("validate",r.prop,!1,g.value)},bl=()=>{ce("success"),o?.emit("validate",r.prop,!0,"")},vl=async h=>{const O=y.value;return new $e({[O]:h}).validate({[O]:K.value},{firstFields:!0}).then(()=>(bl(),!0)).catch(I=>(yl(I),Promise.reject(I)))},Cr=async(h,O)=>{if(u||!r.prop)return!1;const C=ht(O);if(!R.value)return O?.(!1),!1;const I=ft(h);return I.length===0?(O?.(!0),!0):(ce("validating"),vl(I).then(()=>(O?.(!0),!0)).catch(z=>{const{fields:ue}=z;return O?.(!1,ue),C?!1:Promise.reject(ue)}))},dt=()=>{ce(""),g.value="",u=!1},Vr=async()=>{const h=o?.model;if(!h||!r.prop)return;const O=Ee(h,r.prop);u=!0,O.value=Qe($),await a.nextTick(),dt(),u=!1},_l=h=>{d.value.includes(h)||d.value.push(h)},wl=h=>{d.value=d.value.filter(O=>O!==h)},Nr=h=>{$=Qe(h)};a.watch(()=>r.error,h=>{g.value=h||"",ce(h?"error":"")},{immediate:!0}),a.watch(()=>r.validateStatus,h=>ce(h||""));const pt=a.reactive({...a.toRefs(r),$el:S,size:i,validateMessage:g,validateState:p,labelId:c,inputIds:d,isGroup:N,hasLabel:_,fieldValue:K,addInputId:_l,removeInputId:wl,resetField:Vr,clearValidate:dt,validate:Cr,propString:y,setInitialValue:Nr});return a.provide(Ae,pt),a.onMounted(()=>{r.prop&&(o?.addField(pt),$=Qe(K.value))}),a.onBeforeUnmount(()=>{o?.removeField(pt)}),t({size:i,validateMessage:g,validateState:p,validate:Cr,clearValidate:dt,resetField:Vr,setInitialValue:Nr}),(h,O)=>{var C;return a.openBlock(),a.createElementBlock("div",{ref_key:"formItemRef",ref:S,class:a.normalizeClass(v.value),role:N.value?"group":void 0,"aria-labelledby":N.value?a.unref(c):void 0},[a.createVNode(a.unref(Ks),{"is-auto-width":m.value.width==="auto","update-all":((C=a.unref(o))==null?void 0:C.labelWidth)==="auto"},{default:a.withCtx(()=>[h.label||h.$slots.label?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(T.value?"label":"div"),{key:0,id:a.unref(c),for:T.value,class:a.normalizeClass(a.unref(l).e("label")),style:a.normalizeStyle(m.value)},{default:a.withCtx(()=>[a.renderSlot(h.$slots,"label",{label:Ir.value},()=>[a.createTextVNode(a.toDisplayString(Ir.value),1)])]),_:3},8,["id","for","class","style"])):a.createCommentVNode("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),a.createElementVNode("div",{class:a.normalizeClass(a.unref(l).e("content")),style:a.normalizeStyle(V.value)},[a.renderSlot(h.$slots,"default"),a.createVNode(a.TransitionGroup,{name:`${a.unref(l).namespace.value}-zoom-in-top`},{default:a.withCtx(()=>[hl.value?a.renderSlot(h.$slots,"error",{key:0,error:g.value},()=>[a.createElementVNode("div",{class:a.normalizeClass(A.value)},a.toDisplayString(g.value),3)]):a.createCommentVNode("v-if",!0)]),_:3},8,["name"])],6)],10,Gs)}}});var Er=Fe(Hs,[["__file","/home/runner/work/element-plus/element-plus/packages/components/form/src/form-item.vue"]]);const Js=nt(ds,{FormItem:Er}),Ys=Zi(Er),Zs=ye({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:["start","center","end","space-around","space-between","space-evenly"],default:"start"},align:{type:String,values:["top","middle","bottom"]}}),Xs=a.defineComponent({name:"ElRow",__name:"row",props:Zs,setup(e){const t=e,r=fe("row"),n=a.computed(()=>t.gutter);a.provide(br,{gutter:n});const o=a.computed(()=>{const i={};return t.gutter&&(i.marginRight=i.marginLeft=`-${t.gutter/2}px`),i}),s=a.computed(()=>[r.b(),r.is(`justify-${t.justify}`,t.justify!=="start"),r.is(`align-${t.align}`,!!t.align)]);return(i,l)=>(a.openBlock(),a.createBlock(a.resolveDynamicComponent(i.tag),{class:a.normalizeClass(s.value),style:a.normalizeStyle(o.value)},{default:a.withCtx(()=>[a.renderSlot(i.$slots,"default")]),_:3},8,["class","style"]))}});var Qs=Fe(Xs,[["__file","/home/runner/work/element-plus/element-plus/packages/components/row/src/row.vue"]]);const Fr=nt(Qs),el={class:"item-content"},tl=a.defineComponent({name:"InputItem",__name:"input",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{maxlength:o,minlength:s,showWordLimit:i,placeholder:l,type:c}=t.data;return{maxlength:o,minlength:s,showWordLimit:i,placeholder:l,type:c}});return(o,s)=>{const i=a.resolveComponent("el-input");return a.openBlock(),a.createElementBlock("div",el,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value),null,16,["modelValue"])])}}}),re=(e,t)=>{const r=e.__vccOpts||e;for(const[n,o]of t)r[n]=o;return r},rl=re(tl,[["__scopeId","data-v-46dc3a6b"]]),nl={class:"item-content"},ol=re(a.defineComponent({name:"SelectItem",__name:"select",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{options:o=[],multiple:s,multipleLimit:i}=t.data;return{options:o,multiple:s,multipleLimit:i}});return(o,s)=>{const i=a.resolveComponent("el-option"),l=a.resolveComponent("el-select");return a.openBlock(),a.createElementBlock("div",nl,[a.createVNode(l,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=c=>a.isRef(r)?r.value=c:null)},n.value),{default:a.withCtx(()=>[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.value.options,c=>(a.openBlock(),a.createBlock(i,{key:c.value,label:c.label,value:c.value,disabled:c.disabled},null,8,["label","value","disabled"]))),128))]),_:1},16,["modelValue"])])}}}),[["__scopeId","data-v-c1a28b76"]]),al={class:"item-content"},il=re(a.defineComponent({name:"NumberItem",__name:"number",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{min:o,max:s,step:i,precision:l,controls:c}=t.data;return{min:o,max:s,step:i,precision:l,controls:c}});return(o,s)=>{const i=a.resolveComponent("el-input-number");return a.openBlock(),a.createElementBlock("div",al,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value,{style:{width:"100%"}}),null,16,["modelValue"])])}}}),[["__scopeId","data-v-55332813"]]),sl={class:"item-content"},ll=re(a.defineComponent({name:"SwitchItem",__name:"switch",props:{modelValue:{type:[Number,String,Boolean]},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{loading:o,width:s,activeText:i,inactiveText:l,activeValue:c,inactiveValue:d}=t.data;return{loading:o,width:s,activeText:i,inactiveText:l,activeValue:c,inactiveValue:d}});return(o,s)=>{const i=a.resolveComponent("el-switch");return a.openBlock(),a.createElementBlock("div",sl,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value),null,16,["modelValue"])])}}}),[["__scopeId","data-v-5661da0c"]]),cl={class:"item-content"},ul=re(a.defineComponent({name:"DateItem",__name:"date",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{type:o,defaultValue:s,defaultTime:i,dateFormat:l,timeFormat:c,valueFormat:d="YYYY-MM-DDTHH:mm:ss[Z]"}=t.data;return{type:o,defaultValue:s,defaultTime:i,dateFormat:l,timeFormat:c,valueFormat:d}});return(o,s)=>{const i=a.resolveComponent("el-date-picker");return a.openBlock(),a.createElementBlock("div",cl,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value,{style:{width:"100%"}}),null,16,["modelValue"])])}}}),[["__scopeId","data-v-9243ad8a"]]),fl={class:"item-content"},dl=re(a.defineComponent({name:"RadioItem",__name:"radio",props:{modelValue:{type:[Number,String,Boolean]},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{options:o,border:s,textColor:i,fill:l,type:c}=t.data;return{options:o,border:s,textColor:i,fill:l,type:c}});return(o,s)=>{const i=a.resolveComponent("el-radio"),l=a.resolveComponent("el-radio-group");return a.openBlock(),a.createElementBlock("div",fl,[a.createVNode(l,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=c=>a.isRef(r)?r.value=c:null)},n.value),{default:a.withCtx(()=>[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.value.options,c=>(a.openBlock(),a.createBlock(i,{key:c.value,value:c.value,label:c.label,disabled:c.disabled,border:n.value.border},null,8,["value","label","disabled","border"]))),128))]),_:1},16,["modelValue"])])}}}),[["__scopeId","data-v-eacf7d61"]]),pl={class:"fj-form-container"},Pr=re(a.defineComponent({name:"FjForm",__name:"index",props:{data:{},config:{}},setup(e,{expose:t}){const r=e,n=a.ref(),o=a.useModel(r,"data");function s(){return a.h(Js,{model:o,ref:n},{default:()=>a.h(Fr,{},{default:()=>r.config.map(f=>i(f))})})}function i(f){return f.formType==="block"?l(f):c(f)}function l(f){return a.h(vr,{span:24},{default:()=>a.h("div",{class:"fj-block"},{default:()=>[a.h("div",{class:"block-title"},f.label),a.h(Fr,{},{default:()=>f?.children?.length?f.children.map(g=>i(g)):null})]})})}function c(f){return a.h(vr,{span:f.span||6},{default:()=>a.h("div",{class:"fj-form-item"},{default:()=>[a.h(Ys,{prop:f.key,rules:f.rules,label:f.label},{default:()=>d(f)})]})})}function d(f){switch(f.formType){case"input":return a.h(rl,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"select":return a.h(ol,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"number":return a.h(il,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"switch":return a.h(ll,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"date":return a.h(ul,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"radio":return a.h(dl,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});default:return a.h("div",{},{default:()=>"invalid node"})}}function p(){return new Promise((f,g)=>{n.value?n.value.validate((S,$)=>{S?f(o.value):g($)}):g("表单ref不存在")})}return t({submit:p}),(f,g)=>(a.openBlock(),a.createElementBlock("div",pl,[(a.openBlock(),a.createBlock(a.resolveDynamicComponent(s())))]))}}),[["__scopeId","data-v-0cd9e5cf"]]);function Ar(e){e.component("FjForm",Pr)}const ml={install:Ar};F.FjForm=Pr,F.default=ml,F.install=Ar,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
16
+ `).replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp("(?:^"+r+"$)|(?:^"+o+"$)"),i=new RegExp("^"+r+"$"),l=new RegExp("^"+o+"$"),c=function(j){return j&&j.exact?s:new RegExp("(?:"+t(j)+r+t(j)+")|(?:"+t(j)+o+t(j)+")","g")};c.v4=function(v){return v&&v.exact?i:new RegExp(""+t(v)+r+t(v),"g")},c.v6=function(v){return v&&v.exact?l:new RegExp(""+t(v)+o+t(v),"g")};var d="(?:(?:[a-z]+:)?//)",p="(?:\\S+(?::\\S*)?@)?",f=c.v4().source,g=c.v6().source,S="(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)",$="(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*",u="(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))",b="(?::\\d{2,5})?",m='(?:[/?#][^\\s"]*)?',V="(?:"+d+"|www\\.)"+p+"(?:localhost|"+f+"|"+g+"|"+S+$+u+")"+b+m;return Ve=new RegExp("(?:^"+V+"$)","i"),Ve}),Sr={email:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},_e={integer:function(t){return _e.number(t)&&parseInt(t,10)===t},float:function(t){return _e.number(t)&&!_e.integer(t)},array:function(t){return Array.isArray(t)},regexp:function(t){if(t instanceof RegExp)return!0;try{return!!new RegExp(t)}catch{return!1}},date:function(t){return typeof t.getTime=="function"&&typeof t.getMonth=="function"&&typeof t.getYear=="function"&&!isNaN(t.getTime())},number:function(t){return isNaN(t)?!1:typeof t=="number"},object:function(t){return typeof t=="object"&&!_e.array(t)},method:function(t){return typeof t=="function"},email:function(t){return typeof t=="string"&&t.length<=320&&!!t.match(Sr.email)},url:function(t){return typeof t=="string"&&t.length<=2048&&!!t.match(js())},hex:function(t){return typeof t=="string"&&!!t.match(Sr.hex)}},Ts=function(t,r,n,o,s){if(t.required&&r===void 0){Tr(t,r,n,o,s);return}var i=["integer","float","array","regexp","object","method","email","number","date","url","hex"],l=t.type;i.indexOf(l)>-1?_e[l](r)||o.push(B(s.messages.types[l],t.fullField,t.type)):l&&typeof r!==t.type&&o.push(B(s.messages.types[l],t.fullField,t.type))},Ss=function(t,r,n,o,s){var i=typeof t.len=="number",l=typeof t.min=="number",c=typeof t.max=="number",d=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,p=r,f=null,g=typeof r=="number",S=typeof r=="string",$=Array.isArray(r);if(g?f="number":S?f="string":$&&(f="array"),!f)return!1;$&&(p=r.length),S&&(p=r.replace(d,"_").length),i?p!==t.len&&o.push(B(s.messages[f].len,t.fullField,t.len)):l&&!c&&p<t.min?o.push(B(s.messages[f].min,t.fullField,t.min)):c&&!l&&p>t.max?o.push(B(s.messages[f].max,t.fullField,t.max)):l&&c&&(p<t.min||p>t.max)&&o.push(B(s.messages[f].range,t.fullField,t.min,t.max))},le="enum",xs=function(t,r,n,o,s){t[le]=Array.isArray(t[le])?t[le]:[],t[le].indexOf(r)===-1&&o.push(B(s.messages[le],t.fullField,t[le].join(", ")))},Es=function(t,r,n,o,s){if(t.pattern){if(t.pattern instanceof RegExp)t.pattern.lastIndex=0,t.pattern.test(r)||o.push(B(s.messages.pattern.mismatch,t.fullField,r,t.pattern));else if(typeof t.pattern=="string"){var i=new RegExp(t.pattern);i.test(r)||o.push(B(s.messages.pattern.mismatch,t.fullField,r,t.pattern))}}},w={required:Tr,whitespace:Os,type:Ts,range:Ss,enum:xs,pattern:Es},Fs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r,"string")&&!t.required)return n();w.required(t,r,o,i,s,"string"),P(r,"string")||(w.type(t,r,o,i,s),w.range(t,r,o,i,s),w.pattern(t,r,o,i,s),t.whitespace===!0&&w.whitespace(t,r,o,i,s))}n(i)},Ps=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w.type(t,r,o,i,s)}n(i)},As=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(r===""&&(r=void 0),P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},Is=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w.type(t,r,o,i,s)}n(i)},Cs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),P(r)||w.type(t,r,o,i,s)}n(i)},Vs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},Ns=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},qs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(r==null&&!t.required)return n();w.required(t,r,o,i,s,"array"),r!=null&&(w.type(t,r,o,i,s),w.range(t,r,o,i,s))}n(i)},Bs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w.type(t,r,o,i,s)}n(i)},Rs="enum",Ms=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s),r!==void 0&&w[Rs](t,r,o,i,s)}n(i)},Ds=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r,"string")&&!t.required)return n();w.required(t,r,o,i,s),P(r,"string")||w.pattern(t,r,o,i,s)}n(i)},zs=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r,"date")&&!t.required)return n();if(w.required(t,r,o,i,s),!P(r,"date")){var c;r instanceof Date?c=r:c=new Date(r),w.type(t,c,o,i,s),c&&w.range(t,c.getTime(),o,i,s)}}n(i)},Ls=function(t,r,n,o,s){var i=[],l=Array.isArray(r)?"array":typeof r;w.required(t,r,o,i,s,l),n(i)},lt=function(t,r,n,o,s){var i=t.type,l=[],c=t.required||!t.required&&o.hasOwnProperty(t.field);if(c){if(P(r,i)&&!t.required)return n();w.required(t,r,o,l,s,i),P(r,i)||w.type(t,r,o,l,s)}n(l)},Ws=function(t,r,n,o,s){var i=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(P(r)&&!t.required)return n();w.required(t,r,o,i,s)}n(i)},we={string:Fs,method:Ps,number:As,boolean:Is,regexp:Cs,integer:Vs,float:Ns,array:qs,object:Bs,enum:Ms,pattern:Ds,date:zs,url:lt,hex:lt,email:lt,required:Ls,any:Ws};function ct(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var t=JSON.parse(JSON.stringify(this));return t.clone=this.clone,t}}}var ut=ct(),$e=(function(){function e(r){this.rules=null,this._messages=ut,this.define(r)}var t=e.prototype;return t.define=function(n){var o=this;if(!n)throw new Error("Cannot configure a schema with no rules");if(typeof n!="object"||Array.isArray(n))throw new Error("Rules must be an object");this.rules={},Object.keys(n).forEach(function(s){var i=n[s];o.rules[s]=Array.isArray(i)?i:[i]})},t.messages=function(n){return n&&(this._messages=jr(ct(),n)),this._messages},t.validate=function(n,o,s){var i=this;o===void 0&&(o={}),s===void 0&&(s=function(){});var l=n,c=o,d=s;if(typeof c=="function"&&(d=c,c={}),!this.rules||Object.keys(this.rules).length===0)return d&&d(null,l),Promise.resolve(l);function p(u){var b=[],m={};function V(j){if(Array.isArray(j)){var A;b=(A=b).concat.apply(A,j)}else b.push(j)}for(var v=0;v<u.length;v++)V(u[v]);b.length?(m=st(b),d(b,m)):d(null,l)}if(c.messages){var f=this.messages();f===ut&&(f=ct()),jr(f,c.messages),c.messages=f}else c.messages=this.messages();var g={},S=c.keys||Object.keys(this.rules);S.forEach(function(u){var b=i.rules[u],m=l[u];b.forEach(function(V){var v=V;typeof v.transform=="function"&&(l===n&&(l=te({},l)),m=l[u]=v.transform(m)),typeof v=="function"?v={validator:v}:v=te({},v),v.validator=i.getValidationMethod(v),v.validator&&(v.field=u,v.fullField=v.fullField||u,v.type=i.getType(v),g[u]=g[u]||[],g[u].push({rule:v,value:m,source:l,field:u}))})});var $={};return _s(g,c,function(u,b){var m=u.rule,V=(m.type==="object"||m.type==="array")&&(typeof m.fields=="object"||typeof m.defaultField=="object");V=V&&(m.required||!m.required&&u.value),m.field=u.field;function v(y,_){return te({},_,{fullField:m.fullField+"."+y,fullFields:m.fullFields?[].concat(m.fullFields,[y]):[y]})}function j(y){y===void 0&&(y=[]);var _=Array.isArray(y)?y:[y];!c.suppressWarning&&_.length&&e.warning("async-validator:",_),_.length&&m.message!==void 0&&(_=[].concat(m.message));var T=_.map(Or(m,l));if(c.first&&T.length)return $[m.field]=1,b(T);if(!V)b(T);else{if(m.required&&!u.value)return m.message!==void 0?T=[].concat(m.message).map(Or(m,l)):c.error&&(T=[c.error(m,B(c.messages.required,m.field))]),b(T);var N={};m.defaultField&&Object.keys(u.value).map(function(q){N[q]=m.defaultField}),N=te({},N,u.rule.fields);var D={};Object.keys(N).forEach(function(q){var R=N[q],ft=Array.isArray(R)?R:[R];D[q]=ft.map(v.bind(null,q))});var K=new e(D);K.messages(c.messages),u.rule.options&&(u.rule.options.messages=c.messages,u.rule.options.error=c.error),K.validate(u.value,u.rule.options||c,function(q){var R=[];T&&T.length&&R.push.apply(R,T),q&&q.length&&R.push.apply(R,q),b(R.length?R:null)})}}var A;if(m.asyncValidator)A=m.asyncValidator(m,u.value,j,u.source,c);else if(m.validator){try{A=m.validator(m,u.value,j,u.source,c)}catch(y){console.error?.(y),c.suppressValidatorError||setTimeout(function(){throw y},0),j(y.message)}A===!0?j():A===!1?j(typeof m.message=="function"?m.message(m.fullField||m.field):m.message||(m.fullField||m.field)+" fails"):A instanceof Array?j(A):A instanceof Error&&j(A.message)}A&&A.then&&A.then(function(){return j()},function(y){return j(y)})},function(u){p(u)},l)},t.getType=function(n){if(n.type===void 0&&n.pattern instanceof RegExp&&(n.type="pattern"),typeof n.validator!="function"&&n.type&&!we.hasOwnProperty(n.type))throw new Error(B("Unknown rule type %s",n.type));return n.type||"string"},t.getValidationMethod=function(n){if(typeof n.validator=="function")return n.validator;var o=Object.keys(n),s=o.indexOf("message");return s!==-1&&o.splice(s,1),o.length===1&&o[0]==="required"?we.required:we[this.getType(n)]||void 0},e})();$e.register=function(t,r){if(typeof r!="function")throw new Error("Cannot register a validator by type, validator is not a function");we[t]=r},$e.warning=_r,$e.messages=ut,$e.validators=we;const Us=["","error","validating","success"],ks=ye({label:String,labelWidth:{type:[String,Number]},labelPosition:{type:String,values:["left","right","top",""],default:""},prop:{type:k([String,Array])},required:{type:Boolean,default:void 0},rules:{type:k([Object,Array])},error:String,validateStatus:{type:String,values:Us},for:String,inlineMessage:{type:Boolean,default:void 0},showMessage:{type:Boolean,default:!0},size:{type:String,values:rt}}),xr="ElLabelWrap";var Ks=a.defineComponent({name:xr,props:{isAutoWidth:Boolean,updateAll:Boolean},setup(e,{slots:t}){const r=a.inject(Pe,void 0),n=a.inject(Ae);n||Gi(xr,"usage: <el-form-item><label-wrap /></el-form-item>");const o=fe("form"),s=a.ref(),i=a.ref(0),l=()=>{var p;if((p=s.value)!=null&&p.firstElementChild){const f=window.getComputedStyle(s.value.firstElementChild).width;return Math.ceil(Number.parseFloat(f))}else return 0},c=(p="update")=>{a.nextTick(()=>{t.default&&e.isAutoWidth&&(p==="update"?i.value=l():p==="remove"&&r?.deregisterLabelWidth(i.value))})},d=()=>c("update");return a.onMounted(()=>{d()}),a.onBeforeUnmount(()=>{c("remove")}),a.onUpdated(()=>d()),a.watch(i,(p,f)=>{e.updateAll&&r?.registerLabelWidth(p,f)}),Ki(a.computed(()=>{var p,f;return(f=(p=s.value)==null?void 0:p.firstElementChild)!=null?f:null}),d),()=>{var p,f;if(!t)return null;const{isAutoWidth:g}=e;if(g){const S=r?.autoLabelWidth,$=n?.hasLabel,u={};if($&&S&&S!=="auto"){const b=Math.max(0,Number.parseInt(S,10)-i.value),V=(n.labelPosition||r.labelPosition)==="left"?"marginRight":"marginLeft";b&&(u[V]=`${b}px`)}return a.createVNode("div",{ref:s,class:[o.be("item","label-wrap")],style:u},[(p=t.default)==null?void 0:p.call(t)])}else return a.createVNode(a.Fragment,{ref:s},[(f=t.default)==null?void 0:f.call(t)])}}});const Gs=["role","aria-labelledby"],Hs=a.defineComponent({name:"ElFormItem",__name:"form-item",props:ks,setup(e,{expose:t}){const r=e,n=a.useSlots(),o=a.inject(Pe,void 0),s=a.inject(Ae,void 0),i=yr(void 0,{formItem:!1}),l=fe("form-item"),c=ts().value,d=a.ref([]),p=a.ref(""),f=Li(p,100),g=a.ref(""),S=a.ref();let $,u=!1;const b=a.computed(()=>r.labelPosition||o?.labelPosition),m=a.computed(()=>{var h;return b.value==="top"?{}:{width:hr((h=r.labelWidth)!=null?h:o?.labelWidth)}}),V=a.computed(()=>{var h;if(b.value==="top"||o?.inline)return{};if(!r.label&&!r.labelWidth&&D)return{};const O=hr((h=r.labelWidth)!=null?h:o?.labelWidth);return!r.label&&!n.label?{marginLeft:O}:{}}),v=a.computed(()=>[l.b(),l.m(i.value),l.is("error",p.value==="error"),l.is("validating",p.value==="validating"),l.is("success",p.value==="success"),l.is("required",ml.value||r.required),l.is("no-asterisk",o?.hideRequiredAsterisk),o?.requireAsteriskPosition==="right"?"asterisk-right":"asterisk-left",{[l.m("feedback")]:o?.statusIcon,[l.m(`label-${b.value}`)]:b.value}]),j=a.computed(()=>cr(r.inlineMessage)?r.inlineMessage:o?.inlineMessage||!1),A=a.computed(()=>[l.e("error"),{[l.em("error","inline")]:j.value}]),y=a.computed(()=>r.prop?Oe(r.prop)?r.prop.join("."):r.prop:""),_=a.computed(()=>!!(r.label||n.label)),T=a.computed(()=>{var h;return(h=r.for)!=null?h:d.value.length===1?d.value[0]:void 0}),N=a.computed(()=>!T.value&&_.value),D=!!s,K=a.computed(()=>{const h=o?.model;if(!(!h||!r.prop))return Ee(h,r.prop).value}),q=a.computed(()=>{const{required:h}=r,O=[];r.rules&&O.push(...He(r.rules));const C=o?.rules;if(C&&r.prop){const I=Ee(C,r.prop).value;I&&O.push(...He(I))}if(h!==void 0){const I=O.map((z,ue)=>[z,ue]).filter(([z])=>"required"in z);if(I.length>0)for(const[z,ue]of I)z.required!==h&&(O[ue]={...z,required:h});else O.push({required:h})}return O}),R=a.computed(()=>q.value.length>0),ft=h=>q.value.filter(C=>!C.trigger||!h?!0:Oe(C.trigger)?C.trigger.includes(h):C.trigger===h).map(({trigger:C,...I})=>I),ml=a.computed(()=>q.value.some(h=>h.required)),gl=a.computed(()=>{var h;return f.value==="error"&&r.showMessage&&((h=o?.showMessage)!=null?h:!0)}),Ir=a.computed(()=>`${r.label||""}${o?.labelSuffix||""}`),ce=h=>{p.value=h},hl=h=>{var O,C;const{errors:I,fields:z}=h;(!I||!z)&&console.error(h),ce("error"),g.value=I?(C=(O=I?.[0])==null?void 0:O.message)!=null?C:`${r.prop} is required`:"",o?.emit("validate",r.prop,!1,g.value)},yl=()=>{ce("success"),o?.emit("validate",r.prop,!0,"")},bl=async h=>{const O=y.value;return new $e({[O]:h}).validate({[O]:K.value},{firstFields:!0}).then(()=>(yl(),!0)).catch(I=>(hl(I),Promise.reject(I)))},Cr=async(h,O)=>{if(u||!r.prop)return!1;const C=ht(O);if(!R.value)return O?.(!1),!1;const I=ft(h);return I.length===0?(O?.(!0),!0):(ce("validating"),bl(I).then(()=>(O?.(!0),!0)).catch(z=>{const{fields:ue}=z;return O?.(!1,ue),C?!1:Promise.reject(ue)}))},dt=()=>{ce(""),g.value="",u=!1},Vr=async()=>{const h=o?.model;if(!h||!r.prop)return;const O=Ee(h,r.prop);u=!0,O.value=Qe($),await a.nextTick(),dt(),u=!1},vl=h=>{d.value.includes(h)||d.value.push(h)},_l=h=>{d.value=d.value.filter(O=>O!==h)},Nr=h=>{$=Qe(h)};a.watch(()=>r.error,h=>{g.value=h||"",ce(h?"error":"")},{immediate:!0}),a.watch(()=>r.validateStatus,h=>ce(h||""));const pt=a.reactive({...a.toRefs(r),$el:S,size:i,validateMessage:g,validateState:p,labelId:c,inputIds:d,isGroup:N,hasLabel:_,fieldValue:K,addInputId:vl,removeInputId:_l,resetField:Vr,clearValidate:dt,validate:Cr,propString:y,setInitialValue:Nr});return a.provide(Ae,pt),a.onMounted(()=>{r.prop&&(o?.addField(pt),$=Qe(K.value))}),a.onBeforeUnmount(()=>{o?.removeField(pt)}),t({size:i,validateMessage:g,validateState:p,validate:Cr,clearValidate:dt,resetField:Vr,setInitialValue:Nr}),(h,O)=>{var C;return a.openBlock(),a.createElementBlock("div",{ref_key:"formItemRef",ref:S,class:a.normalizeClass(v.value),role:N.value?"group":void 0,"aria-labelledby":N.value?a.unref(c):void 0},[a.createVNode(a.unref(Ks),{"is-auto-width":m.value.width==="auto","update-all":((C=a.unref(o))==null?void 0:C.labelWidth)==="auto"},{default:a.withCtx(()=>[h.label||h.$slots.label?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(T.value?"label":"div"),{key:0,id:a.unref(c),for:T.value,class:a.normalizeClass(a.unref(l).e("label")),style:a.normalizeStyle(m.value)},{default:a.withCtx(()=>[a.renderSlot(h.$slots,"label",{label:Ir.value},()=>[a.createTextVNode(a.toDisplayString(Ir.value),1)])]),_:3},8,["id","for","class","style"])):a.createCommentVNode("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),a.createElementVNode("div",{class:a.normalizeClass(a.unref(l).e("content")),style:a.normalizeStyle(V.value)},[a.renderSlot(h.$slots,"default"),a.createVNode(a.TransitionGroup,{name:`${a.unref(l).namespace.value}-zoom-in-top`},{default:a.withCtx(()=>[gl.value?a.renderSlot(h.$slots,"error",{key:0,error:g.value},()=>[a.createElementVNode("div",{class:a.normalizeClass(A.value)},a.toDisplayString(g.value),3)]):a.createCommentVNode("v-if",!0)]),_:3},8,["name"])],6)],10,Gs)}}});var Er=Fe(Hs,[["__file","/home/runner/work/element-plus/element-plus/packages/components/form/src/form-item.vue"]]);const Js=nt(ds,{FormItem:Er}),Ys=Zi(Er),Zs=ye({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:["start","center","end","space-around","space-between","space-evenly"],default:"start"},align:{type:String,values:["top","middle","bottom"]}}),Xs=a.defineComponent({name:"ElRow",__name:"row",props:Zs,setup(e){const t=e,r=fe("row"),n=a.computed(()=>t.gutter);a.provide(br,{gutter:n});const o=a.computed(()=>{const i={};return t.gutter&&(i.marginRight=i.marginLeft=`-${t.gutter/2}px`),i}),s=a.computed(()=>[r.b(),r.is(`justify-${t.justify}`,t.justify!=="start"),r.is(`align-${t.align}`,!!t.align)]);return(i,l)=>(a.openBlock(),a.createBlock(a.resolveDynamicComponent(i.tag),{class:a.normalizeClass(s.value),style:a.normalizeStyle(o.value)},{default:a.withCtx(()=>[a.renderSlot(i.$slots,"default")]),_:3},8,["class","style"]))}});var Qs=Fe(Xs,[["__file","/home/runner/work/element-plus/element-plus/packages/components/row/src/row.vue"]]);const Fr=nt(Qs),el={class:"item-content"},tl=a.defineComponent({name:"InputItem",__name:"input",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{maxlength:o,minlength:s,showWordLimit:i,placeholder:l,type:c}=t.data;return{maxlength:o,minlength:s,showWordLimit:i,placeholder:l,type:c}});return(o,s)=>{const i=a.resolveComponent("el-input");return a.openBlock(),a.createElementBlock("div",el,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value),null,16,["modelValue"])])}}}),re=(e,t)=>{const r=e.__vccOpts||e;for(const[n,o]of t)r[n]=o;return r},rl=re(tl,[["__scopeId","data-v-46dc3a6b"]]),nl={class:"item-content"},ol=re(a.defineComponent({name:"SelectItem",__name:"select",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{options:o=[],multiple:s,multipleLimit:i}=t.data;return{options:o,multiple:s,multipleLimit:i}});return(o,s)=>{const i=a.resolveComponent("el-option"),l=a.resolveComponent("el-select");return a.openBlock(),a.createElementBlock("div",nl,[a.createVNode(l,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=c=>a.isRef(r)?r.value=c:null)},n.value),{default:a.withCtx(()=>[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.value.options,c=>(a.openBlock(),a.createBlock(i,{key:c.value,label:c.label,value:c.value,disabled:c.disabled},null,8,["label","value","disabled"]))),128))]),_:1},16,["modelValue"])])}}}),[["__scopeId","data-v-c1a28b76"]]),al={class:"item-content"},il=re(a.defineComponent({name:"NumberItem",__name:"number",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{min:o,max:s,step:i,precision:l,controls:c}=t.data;return{min:o,max:s,step:i,precision:l,controls:c}});return(o,s)=>{const i=a.resolveComponent("el-input-number");return a.openBlock(),a.createElementBlock("div",al,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value,{style:{width:"100%"}}),null,16,["modelValue"])])}}}),[["__scopeId","data-v-55332813"]]),sl={class:"item-content"},ll=re(a.defineComponent({name:"SwitchItem",__name:"switch",props:{modelValue:{type:[Number,String,Boolean]},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{loading:o,width:s,activeText:i,inactiveText:l,activeValue:c,inactiveValue:d}=t.data;return{loading:o,width:s,activeText:i,inactiveText:l,activeValue:c,inactiveValue:d}});return(o,s)=>{const i=a.resolveComponent("el-switch");return a.openBlock(),a.createElementBlock("div",sl,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value),null,16,["modelValue"])])}}}),[["__scopeId","data-v-5661da0c"]]),cl={class:"item-content"},ul=re(a.defineComponent({name:"DateItem",__name:"date",props:{modelValue:{},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{type:o,defaultValue:s,defaultTime:i,dateFormat:l,timeFormat:c,valueFormat:d="YYYY-MM-DDTHH:mm:ss[Z]"}=t.data;return{type:o,defaultValue:s,defaultTime:i,dateFormat:l,timeFormat:c,valueFormat:d}});return(o,s)=>{const i=a.resolveComponent("el-date-picker");return a.openBlock(),a.createElementBlock("div",cl,[a.createVNode(i,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=l=>a.isRef(r)?r.value=l:null)},n.value,{style:{width:"100%"}}),null,16,["modelValue"])])}}}),[["__scopeId","data-v-9243ad8a"]]),fl={class:"item-content"},dl=re(a.defineComponent({name:"RadioItem",__name:"radio",props:{modelValue:{type:[Number,String,Boolean]},data:{}},setup(e){const t=e,r=a.useModel(t,"modelValue"),n=a.computed(()=>{const{options:o,border:s,textColor:i,fill:l,type:c}=t.data;return{options:o,border:s,textColor:i,fill:l,type:c}});return(o,s)=>{const i=a.resolveComponent("el-radio"),l=a.resolveComponent("el-radio-group");return a.openBlock(),a.createElementBlock("div",fl,[a.createVNode(l,a.mergeProps({modelValue:a.unref(r),"onUpdate:modelValue":s[0]||(s[0]=c=>a.isRef(r)?r.value=c:null)},n.value),{default:a.withCtx(()=>[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.value.options,c=>(a.openBlock(),a.createBlock(i,{key:c.value,value:c.value,label:c.label,disabled:c.disabled,border:n.value.border},null,8,["value","label","disabled","border"]))),128))]),_:1},16,["modelValue"])])}}}),[["__scopeId","data-v-eacf7d61"]]),pl={class:"fj-form-container"},Pr=re(a.defineComponent({name:"FjForm",__name:"index",props:{data:{},config:{}},setup(e,{expose:t}){const r=e,n=a.ref(),o=a.useModel(r,"data");function s(){return a.h(Js,{model:o,ref:n},{default:()=>a.h(Fr,{},{default:()=>r.config.map(f=>i(f))})})}function i(f){return f.formType==="block"?l(f):c(f)}function l(f){return a.h(vr,{span:24},{default:()=>a.h("div",{class:"fj-block"},{default:()=>[a.h("div",{class:"block-title"},f.label),a.h(Fr,{},{default:()=>f?.children?.length?f.children.map(g=>i(g)):null})]})})}function c(f){return a.h(vr,{span:f.span||6},{default:()=>a.h("div",{class:"fj-form-item"},{default:()=>[a.h(Ys,{prop:f.key,rules:f.rules,label:f.label},{default:()=>d(f)})]})})}function d(f){switch(f.formType){case"input":return a.h(rl,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"select":return a.h(ol,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"number":return a.h(il,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"switch":return a.h(ll,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"date":return a.h(ul,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});case"radio":return a.h(dl,{modelValue:o.value[f.key],"onUpdate:modelValue":g=>{o.value={...o.value,[f.key]:g}},data:f},{});default:return a.h("div",{},{default:()=>"invalid node"})}}function p(){return new Promise((f,g)=>{n.value?n.value.validate((S,$)=>{S?f(o.value):g($)}):g("表单ref不存在")})}return t({submit:p}),(f,g)=>(a.openBlock(),a.createElementBlock("div",pl,[(a.openBlock(),a.createBlock(a.resolveDynamicComponent(s())))]))}}),[["__scopeId","data-v-54785ce6"]]);function Ar(e){e.component("FjForm",Pr)}F.FjForm=Pr,F.default=Ar,F.install=Ar,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
package/dist/index.d.ts CHANGED
@@ -22,15 +22,14 @@ export declare class Block extends Base {
22
22
  constructor();
23
23
  }
24
24
 
25
- declare const _default: {
26
- install: typeof install;
27
- };
28
- export default _default;
29
-
30
25
  export declare const FjForm: DefineComponent<Props, {
31
- submit: typeof submit;
26
+ submit: () => Promise<FormModel>;
32
27
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
33
28
 
29
+ export declare interface FjFormInstance {
30
+ submit: () => Promise<FormModel>;
31
+ }
32
+
34
33
  export declare class Form extends Base {
35
34
  config: Array<FormItem>;
36
35
  constructor();
@@ -117,13 +116,20 @@ export declare class FormSwitch extends Base {
117
116
  constructor();
118
117
  }
119
118
 
120
- export declare function install(app: App): void;
119
+ declare function install(app: App): void;
120
+ export default install;
121
+ export { install }
121
122
 
122
123
  declare interface Props {
123
124
  data: FormModel;
124
125
  config: Array<FormItem>;
125
126
  }
126
127
 
127
- declare function submit(): Promise<FormModel>;
128
-
129
128
  export { }
129
+
130
+
131
+ declare module 'vue' {
132
+ interface GlobalComponents {
133
+ FjForm: typeof FjForm;
134
+ }
135
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fj-form",
3
- "version": "0.0.0",
3
+ "version": "0.0.2",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"
@@ -10,6 +10,7 @@
10
10
  "types": "./dist/index.d.ts",
11
11
  "exports": {
12
12
  ".": {
13
+ "types": "./dist/index.d.ts",
13
14
  "import": "./dist/fj-form.js",
14
15
  "require": "./dist/fj-form.umd.cjs"
15
16
  }