@next-bricks/form 1.20.8 → 1.21.0

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.
@@ -1,2 +0,0 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_form=globalThis.webpackChunk_next_bricks_form||[]).push([[3778],{269:(t,e,i)=>{i.d(e,{e:()=>g});var r=i(4635),n=i(918),s=i(2559),a=i(829),l=i(6121),o=i(4586),u=i(1030),h=i(6407);let c=0;class d{constructor(t,e){(0,o.A)(this,"field",void 0),(0,o.A)(this,"detail",void 0),this.field=t,this.detail=e}}var f=new WeakMap,v=new WeakMap,p=new WeakMap,A=new WeakMap,m=new WeakSet;class g extends h.G{static getInstance(t){return this.instance.get(c)||(this.uid=c,this.instance.set(this.uid,new g(t)),c+=1),this.instance.get(this.uid)}constructor(t){super(),(0,r.A)(this,m),(0,n.A)(this,f,new Map),(0,n.A)(this,v,void 0),(0,n.A)(this,p,void 0),(0,n.A)(this,A,void 0),(0,l.A)(p,this,{}),(0,l.A)(v,this,t)}setField(t,e){(0,a.A)(f,this).set(t,new d(t,e))}getAllValues(){const t=(0,s.A)(m,this,b).call(this);return Object.fromEntries(Object.entries((0,a.A)(p,this)).map((e=>{let[i,r]=e;return t.includes(i)?[i,r]:[]})).filter((t=>t.length)))}setInitValue(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];(0,l.A)(A,this,t),this.setFieldsValue(t,e)}setFieldsValueByInitData(t){var e;const i=null===(e=(0,a.A)(A,this))||void 0===e?void 0:e[t];(0,u.isNil)(i)||((0,a.A)(p,this)[t]=i,this.publish(`${t}.init.value`,i))}setFieldsValue(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];const i={...(0,a.A)(p,this)};var r,n;Object.entries(t).forEach((t=>{let[e,r]=t;i[e]=r,(0,a.A)(A,this)&&((0,a.A)(A,this)[e]=r),this.publish(`${e}.init.value`,r)})),(0,l.A)(p,this,i),e&&(null===(r=(0,a.A)(v,this))||void 0===r||null===(n=r.onValuesChanged)||void 0===n||n.call(r,{changedValues:t,allValues:this.getAllValues()}))}resetFields(t){t?(delete(0,a.A)(p,this)[t],this.publish(`${t}.reset.fields`,null)):((0,l.A)(p,this,{}),this.publish("reset.fields",null)),this.resetValidateState()}getFieldsValue(t){return t?(0,a.A)(p,this)[t]:this.getAllValues()}removeField(t){(0,a.A)(f,this).delete(t)}validateFields(t){const e=(0,s.A)(m,this,b).call(this),i=[];if(e.forEach((t=>{const e=(0,a.A)(f,this).get(t);e&&i.push(this.validateField(e.detail))})),i.some((t=>"normal"!==(null==t?void 0:t.type))))return t(!0,i.filter((t=>"normal"!==(null==t?void 0:t.type)))),!1;{const e=this.getAllValues();return t(!1,e),e}}validateField(t){var e;const i="string"==typeof t?null===(e=(0,a.A)(f,this).get(t))||void 0===e?void 0:e.detail:t;if(!i)return;const{name:r,label:n,validate:s}=i,l=(0,a.A)(p,this)[r],o=function(t){return{type:arguments.length>1&&void 0!==arguments[1]?arguments[1]:"error",message:t}},h=()=>null!=n?n:r,c={name:r,...((t,e)=>{const{required:i,pattern:r,message:n,type:s,min:a,max:l,validator:c}=t,d=h();if("object"==typeof e?(0,u.isEmpty)(e):void 0===e||""===e)return i?o((null==n?void 0:n.required)||`${d}为必填项`):o("","normal");const f=String(e);if(r&&!new RegExp(r).test(f))return o((null==n?void 0:n.pattern)||`${d}没有匹配正则 ${r}`);const v="number"==typeof a,p="number"==typeof l;if(v||p)if("number"===s){const t="number"==typeof e?e:parseFloat(e);if(v&&t<a)return o((null==n?void 0:n.min)||`${d}不能小于 ${a}`);if(p&&t>l)return o((null==n?void 0:n.max)||`${d}不能大于 ${l}`)}else{if(v&&f.length<a)return o((null==n?void 0:n.min)||`${d}至少包含 ${a} 个字符`);if(p&&f.length>l)return o((null==n?void 0:n.max)||`${d}不能超过 ${l} 个字符`)}if(c){let t="",i=[];Array.isArray(c)?i=c:i.push(c);for(const r of i)if(t=r(e),t)break;return"string"==typeof t?o(t,t?"error":"normal"):t}return o("","normal")})(s,l)};return this.publish(`${r}.validate`,c),c}getValueFromEvent(t){if(!t||!t.target)return t;const e=t.target;return"checkbox"===e.type?e.checked:e.value}resetValidateState(){this.publish("reset.validate",null)}onWatch(t,e,i,r){const n=(0,a.A)(f,this).get(t);if(n){var s;const a=this.getValueFromEvent(e),l=Array.isArray(a)?a[0]:a;this.setFieldsValue({[t]:l}),(null===(s=null==r?void 0:r.needValidate)||void 0===s||s)&&this.validateField(n.detail),null==i||i.apply(this,a)}}onChange(t,e,i,r){const n=(0,a.A)(f,this).get(t);var s;n&&(this.setFieldsValue({[t]:e}),(null===(s=null==r?void 0:r.needValidate)||void 0===s||s)&&this.validateField(n.detail),null==i||i(e))}}function b(){return[...(0,a.A)(f,this).keys()].filter((t=>{var e;return!(null!==(e=(0,a.A)(f,this).get(t).detail)&&void 0!==e&&e.notRender)}))}(0,o.A)(g,"uid",void 0),(0,o.A)(g,"instance",new Map)},829:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(2559);function n(t,e){return t.get((0,r.A)(t,e))}},918:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(2016);function n(t,e,i){(0,r.A)(t,e),e.set(t,i)}},1369:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(7545);function n(t){var e=function(t){if("object"!=(0,r.A)(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,"string");if("object"!=(0,r.A)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==(0,r.A)(e)?e:e+""}},2016:(t,e,i)=>{function r(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}i.d(e,{A:()=>r})},2559:(t,e,i)=>{function r(t,e,i){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:i;throw new TypeError("Private element is not present on this object")}i.d(e,{A:()=>r})},2740:(t,e,i)=>{i.d(e,{A:()=>l});var r=i(7545),n=i(6902);function s(t,e,i){"symbol"==(0,r.A)(e)&&(e=(e=e.description)?"["+e+"]":"");try{Object.defineProperty(t,"name",{configurable:!0,value:i?i+" "+e:e})}catch(t){}return t}var a=i(1369);function l(t,e,i,l,o,u){var h,c,d,f,v,p,A,m=Symbol.metadata||Symbol.for("Symbol.metadata"),g=Object.defineProperty,b=Object.create,y=[b(null),b(null)],w=e.length;function V(e,i,r){return function(n,s){i&&(s=n,n=t);for(var a=0;a<e.length;a++)s=e[a].apply(n,r?[s]:[]);return r?s:n}}function k(t,e,i,r){if("function"!=typeof t&&(r||void 0!==t))throw new TypeError(e+" must "+(i||"be")+" a function"+(r?"":" or undefined"));return t}function S(t,e,i,n,a,l,o,u,d,f,v){function p(t){if(!v(t))throw new TypeError("Attempted to access private element on non-instance")}var A=[].concat(e[0]),m=e[3],b=!o,w=1===a,S=3===a,F=4===a,E=2===a;function C(e,i,r){return function(n,s){return i&&(s=n,n=t),r&&r(n),M[e].call(n,s)}}if(!b){var M={},x=[],W=S?"get":F||w?"set":"value";if(d?(f||w?M={get:s((function(){return m(this)}),n,"get"),set:function(t){e[4](this,t)}}:M[W]=m,f||s(M[W],n,E?"":W)):f||(M=Object.getOwnPropertyDescriptor(t,n)),!f&&!d){if((c=y[+u][n])&&7!=(c^a))throw Error("Decorating two elements with the same name ("+M[W].name+") is not supported yet");y[+u][n]=a<3?1:a}}for(var j=t,$=A.length-1;$>=0;$-=i?2:1){var I=k(A[$],"A decorator","be",!0),z=i?A[$-1]:void 0,O={},T={kind:["field","accessor","method","getter","setter","class"][a],name:n,metadata:h,addInitializer:function(t,e){if(t.v)throw Error("attempted to call addInitializer after decoration was finished");k(e,"An initializer","be",!0),l.push(e)}.bind(null,O)};if(b)c=I.call(z,j,T),O.v=1,k(c,"class decorators","return")&&(j=c);else if(T.static=u,T.private=d,c=T.access={has:d?v.bind():function(t){return n in t}},F||(c.get=d?E?function(t){return p(t),M.value}:C("get",0,p):function(t){return t[n]}),E||S||(c.set=d?C("set",0,p):function(t,e){t[n]=e}),j=I.call(z,w?{get:M.get,set:M.set}:M[W],T),O.v=1,w){if("object"==(0,r.A)(j)&&j)(c=k(j.get,"accessor.get"))&&(M.get=c),(c=k(j.set,"accessor.set"))&&(M.set=c),(c=k(j.init,"accessor.init"))&&x.unshift(c);else if(void 0!==j)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else k(j,(f?"field":"method")+" decorators","return")&&(f?x.unshift(j):M[W]=j)}return a<2&&o.push(V(x,u,1),V(l,u,0)),f||b||(d?w?o.splice(-1,0,C("get",u),C("set",u)):o.push(E?M[W]:k.call.bind(M[W])):g(t,n,M)),j}function F(t){return g(t,m,{configurable:!0,enumerable:!0,value:h})}return void 0!==u&&(h=u[m]),h=b(null==h?null:h),v=[],p=function(t){t&&v.push(V(t))},A=function(e,r){for(var s=0;s<i.length;s++){var l=i[s],u=l[1],h=7&u;if((8&u)==e&&!h==r){var c=l[2],p=!!l[3],A=16&u;S(e?t:t.prototype,l,A,p?"#"+c:(0,a.A)(c),h,h<2?[]:e?f=f||[]:d=d||[],v,!!e,p,r,e&&p?function(e){return(0,n.A)(e)===t}:o)}}},A(8,0),A(0,0),A(8,1),A(0,1),p(d),p(f),c=v,w||F(t),{e:c,get c(){var i=[];return w&&[F(t=S(t,[e],l,t.name,5,i)),V(i,1)]}}}},3472:(t,e,i)=>{i.r(e),i.d(e,{Form:()=>L,FormComponent:()=>ot});var r,n=i(4635),s=i(918),a=i(4586),l=i(6902),o=i(5536),u=i(2559),h=i(6121),c=i(829),d=i(2740),f=i(8769),v=i.n(f),p=i(870),A=i(981),m=i(269);let g,b,y,w,V,k,S,F,E,C,M,x,W,j,$,I,z,O,T,P,_,D,R,q,N,G;const{defineElement:B,property:H,event:J,method:K}=(0,p.createDecorators)();let L;var Q=new WeakMap,U=new WeakSet,X=new WeakMap,Y=new WeakMap,Z=new WeakMap,tt=new WeakMap,et=new WeakMap,it=new WeakMap,rt=new WeakMap,nt=new WeakMap,st=new WeakMap;class at extends A.ReactNextElement{constructor(){super(),(0,n.A)(this,U),(0,a.A)(this,"formStore",void g(this)),(0,s.A)(this,Q,void 0),(0,a.A)(this,"defaultEmitValuesChange",!0),(0,s.A)(this,X,y(this)),(0,s.A)(this,Y,(w(this),V(this,"vertical"))),(0,s.A)(this,Z,(k(this),S(this))),(0,s.A)(this,tt,(F(this),E(this,{sm:{span:24},md:{span:24},lg:{span:7},xl:{span:5},xxl:{span:4}}))),(0,s.A)(this,et,(C(this),M(this,{sm:{span:18},md:{span:18},lg:{span:13},xl:{span:16},xxl:{span:18}}))),(0,s.A)(this,it,(x(this),W(this))),(0,a.A)(this,"handleValuesChange",(I(this),t=>{(0,o.A)(U,this,j).emit(t)})),(0,s.A)(this,rt,z(this)),(0,s.A)(this,nt,(P(this),_(this))),(0,s.A)(this,st,(q(this),N(this))),G(this),this.formStore=m.e.getInstance({onValuesChanged:this.handleValuesChange})}get isFormElement(){return!0}set values(t){(0,h.A)(Q,this,t),(0,u.A)(U,this,lt).call(this,t)}get values(){return(0,c.A)(Q,this)}get staticValues(){return(0,c.A)(X,this)}set staticValues(t){(0,h.A)(X,this,t)}get layout(){return(0,c.A)(Y,this)}set layout(t){(0,h.A)(Y,this,t)}get size(){return(0,c.A)(Z,this)}set size(t){(0,h.A)(Z,this,t)}get labelCol(){return(0,c.A)(tt,this)}set labelCol(t){(0,h.A)(tt,this,t)}get wrapperCol(){return(0,c.A)(et,this)}set wrapperCol(t){(0,h.A)(et,this,t)}validate(){return this.formStore.validateFields(((t,e)=>{var i;t?(0,o.A)(U,this,D).emit(e):(0,o.A)(U,this,O).emit({...null!==(i=this.staticValues)&&void 0!==i?i:{},...e})}))}setInitValue(t,e){e?(e.runInMicrotask&&queueMicrotask((()=>{this.values=t})),e.runInMacrotask&&setTimeout((()=>{this.values=t}))):this.values=t}resetFields(t){this.formStore.resetFields("string"==typeof t?t:void 0)}getFieldsValue(t){return this.formStore.getFieldsValue("string"==typeof t?t:void 0)}get formStyle(){return(0,c.A)(st,this)}set formStyle(t){(0,h.A)(st,this,t)}validateField(t){this.formStore.validateField(t)}resetValidateState(){this.formStore.resetValidateState()}render(){return v().createElement(ot,{layout:this.layout,size:this.size,labelCol:this.labelCol,wrapperCol:this.wrapperCol,formStyle:this.formStyle})}}function lt(t){this.formStore.setInitValue(t,this.defaultEmitValuesChange)}function ot(t){let{layout:e="vertical",formStyle:i}=t;const r=(0,f.useMemo)((()=>{switch(e){case"vertical":case"horizontal":return{display:"flex",flexDirection:"column"};case"inline":return{display:"flex",gap:10};default:return{}}}),[e]);return v().createElement("form",null,v().createElement("slot",{style:{...r,...i||{}}}))}r=at,({e:[y,w,V,k,S,F,E,C,M,x,W,j,$,I,z,O,T,P,_,D,R,q,N,G,g],c:[L,b]}=(0,d.A)(r,[B("eo-form",{alias:["form.general-form"]})],[[H({attribute:!1}),1,"staticValues"],[H(),1,"layout"],[H(),1,"size"],[H({attribute:!1}),1,"labelCol"],[H({attribute:!1}),1,"wrapperCol"],[J({type:"values.change"}),1,"valuesChangeEvent",t=>(0,c.A)(it,t),(t,e)=>(0,h.A)(it,t,e)],[J({type:"validate.success"}),1,"successEvent",t=>(0,c.A)(rt,t),(t,e)=>(0,h.A)(rt,t,e)],[J({type:"validate.error"}),1,"errorEvent",t=>(0,c.A)(nt,t),(t,e)=>(0,h.A)(nt,t,e)],[K(),2,"validate"],[K(),2,"setInitValue"],[K(),2,"resetFields"],[K(),2,"getFieldsValue"],[H({attribute:!1}),1,"formStyle"],[K(),2,"validateField"],[K(),2,"resetValidateState"]],0,(t=>Q.has((0,l.A)(t))),A.ReactNextElement)),b()},4586:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(1369);function n(t,e,i){return(e=(0,r.A)(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}},4635:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(2016);function n(t,e){(0,r.A)(t,e),e.add(t)}},5536:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(2559);function n(t,e,i){return i((0,r.A)(t,e))}},6121:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(2559);function n(t,e,i){return t.set((0,r.A)(t,e),i),i}},6407:(t,e,i)=>{i.d(e,{G:()=>u});var r=i(918),n=i(6121),s=i(829),a=i(1030),l=new WeakMap,o=new WeakMap;class u{constructor(){(0,r.A)(this,l,{}),(0,r.A)(this,o,0)}publish(t,e){if(!(0,s.A)(l,this)[t])return;const i=(0,s.A)(l,this)[t];let r=i?i.length:0;for(;r--;)i[r].func(t,e)}subscribe(t,e){var i;(0,s.A)(l,this)[t]||((0,s.A)(l,this)[t]=[]);const r=(0,n.A)(o,this,(i=(0,s.A)(o,this),++i)).toString();return(0,s.A)(l,this)[t].push({token:r,func:e}),r}unsubscribe(t){for(const e in(0,s.A)(l,this))(0,s.A)(l,this)[e]&&(0,a.remove)((0,s.A)(l,this)[e],(e=>e.token===t))}}},6902:(t,e,i)=>{i.d(e,{A:()=>n});var r=i(7545);function n(t){if(Object(t)!==t)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==t?(0,r.A)(t):"null"));return t}},7545:(t,e,i)=>{function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}i.d(e,{A:()=>r})}}]);
2
- //# sourceMappingURL=eo-form.e63ca787.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/eo-form.e63ca787.js","mappings":"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","sources":["webpack:///../../src/FormStore.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///./src/form/index.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///../../src/PubSub.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js"],"sourcesContent":["import { isEmpty, isNil } from \"lodash\";\nimport { PubSub } from \"./PubSub.js\";\n\ninterface FormStoreOptions {\n onValuesChanged?: (data: any) => void;\n}\n\nexport interface FieldDetail {\n name: string;\n label?: string;\n notRender?: boolean;\n originProps?: Record<string, any>;\n validate: Validate;\n [k: string]: any;\n}\n\nexport interface MessageBody {\n message: string;\n type: string;\n}\n\nexport interface WatchOptions {\n needValidate?: boolean;\n}\n\ninterface Validate {\n required?: boolean;\n pattern?: string;\n type?: string;\n min?: number;\n max?: number;\n message?: {\n required?: string;\n pattern?: string;\n min?: string;\n max?: string;\n };\n validator?: (value: any) => MessageBody | string;\n}\n\nlet uid = 0;\n\nclass Field {\n field: string;\n detail: FieldDetail;\n constructor(name: string, detail: FieldDetail) {\n this.field = name;\n this.detail = detail;\n }\n}\n\nexport class FormStore extends PubSub {\n static uid: number;\n static instance: Map<number, FormStore> = new Map();\n static getInstance(options?: FormStoreOptions): FormStore {\n if (!this.instance.get(uid)) {\n this.uid = uid;\n this.instance.set(this.uid, new FormStore(options));\n uid += 1;\n }\n return this.instance.get(this.uid) as FormStore;\n }\n\n #fields: Map<string, Field> = new Map();\n #options: FormStoreOptions | undefined;\n #formData!: Record<string, unknown>;\n #initData: Record<string, unknown> | undefined;\n\n constructor(options?: FormStoreOptions) {\n super();\n this.#formData = {};\n this.#options = options;\n }\n\n setField(name: string, detail: FieldDetail) {\n this.#fields.set(name, new Field(name, detail));\n }\n #getAllFields() {\n return [...this.#fields.keys()].filter((key) => {\n return !this.#fields.get(key)!.detail?.notRender;\n });\n }\n\n getAllValues() {\n const allFields = this.#getAllFields();\n const formData = Object.fromEntries(\n Object.entries(this.#formData)\n .map(([k, v]) => {\n if (allFields.includes(k)) {\n return [k, v];\n }\n return [];\n })\n .filter((item) => item.length)\n );\n return formData;\n }\n\n setInitValue(values: Record<string, unknown>, isEmitValuseChange = true) {\n this.#initData = values;\n this.setFieldsValue(values, isEmitValuseChange);\n }\n\n setFieldsValueByInitData(name: string) {\n const value = this.#initData?.[name];\n if (!isNil(value)) {\n this.#formData[name] = value;\n this.publish(`${name}.init.value`, value);\n }\n }\n\n setFieldsValue(values: Record<string, unknown>, isEmitValuseChange = true) {\n const newFormData: Record<string, unknown> = {\n ...this.#formData,\n };\n Object.entries(values).forEach(([k, v]) => {\n newFormData[k] = v;\n this.#initData && (this.#initData[k] = v);\n this.publish(`${k}.init.value`, v);\n });\n this.#formData = newFormData;\n\n if (isEmitValuseChange) {\n this.#options?.onValuesChanged?.({\n changedValues: values,\n allValues: this.getAllValues(),\n });\n }\n }\n\n resetFields(name?: string) {\n if (name) {\n delete this.#formData[name];\n this.publish(`${name}.reset.fields`, null);\n } else {\n this.#formData = {};\n this.publish(\"reset.fields\", null);\n }\n this.resetValidateState();\n }\n\n getFieldsValue(name?: string) {\n if (name) {\n return this.#formData[name];\n }\n return this.getAllValues();\n }\n\n removeField(name: string) {\n this.#fields.delete(name);\n }\n\n validateFields(\n callback: (err: boolean, value: any) => void\n ): boolean | Record<string, unknown> {\n const allFields = this.#getAllFields();\n const results: Array<MessageBody | undefined> = [];\n allFields.forEach((name) => {\n const field = this.#fields.get(name);\n if (field) {\n results.push(this.validateField(field.detail));\n }\n });\n\n if (results.some((result) => result?.type !== \"normal\")) {\n callback(\n true,\n results.filter((result) => result?.type !== \"normal\")\n );\n return false;\n } else {\n const formData = this.getAllValues();\n callback(false, formData);\n return formData;\n }\n }\n\n validateField(field: string | FieldDetail) {\n const fieldDetail =\n typeof field === \"string\" ? this.#fields.get(field)?.detail : field;\n if (!fieldDetail) return;\n const { name, label, validate } = fieldDetail;\n const validateValue = this.#formData[name];\n\n const messageBody = (message: string, type = \"error\") => {\n return {\n type,\n message,\n };\n };\n\n const getName = () => label ?? name;\n\n const valid = (\n validate: Validate,\n value: string | number | null | undefined\n ): MessageBody => {\n const { required, pattern, message, type, min, max, validator } =\n validate;\n const label = getName();\n\n if (\n typeof value === \"object\"\n ? isEmpty(value)\n : value === undefined || value === \"\"\n ) {\n if (required) {\n return messageBody(message?.required || `${label}为必填项`);\n }\n return messageBody(\"\", \"normal\");\n }\n\n const stringValue = String(value);\n\n if (pattern) {\n const reg = new RegExp(pattern);\n if (!reg.test(stringValue)) {\n return messageBody(\n message?.pattern || `${label}没有匹配正则 ${pattern}`\n );\n }\n }\n\n const checkMin = typeof min === \"number\";\n const checkMax = typeof max === \"number\";\n if (checkMin || checkMax) {\n if (type === \"number\") {\n const numberValue =\n typeof value === \"number\" ? value : parseFloat(value as string);\n if (checkMin && numberValue < min) {\n return messageBody(message?.min || `${label}不能小于 ${min}`);\n }\n if (checkMax && numberValue > max) {\n return messageBody(message?.max || `${label}不能大于 ${max}`);\n }\n } else {\n if (checkMin && stringValue.length < min) {\n return messageBody(\n message?.min || `${label}至少包含 ${min} 个字符`\n );\n }\n if (checkMax && stringValue.length > max) {\n return messageBody(\n message?.max || `${label}不能超过 ${max} 个字符`\n );\n }\n }\n }\n\n if (validator) {\n let result = \"\";\n let parsedValidator = [];\n if (Array.isArray(validator)) {\n parsedValidator = validator;\n } else {\n parsedValidator.push(validator);\n }\n\n for (const v of parsedValidator) {\n result = v(value);\n\n if (result) {\n break;\n }\n }\n return typeof result === \"string\"\n ? messageBody(result, result ? \"error\" : \"normal\")\n : (result as MessageBody);\n }\n\n return messageBody(\"\", \"normal\");\n };\n\n const result = { name, ...valid(validate, validateValue as string) };\n this.publish(`${name}.validate`, result);\n return result;\n }\n\n getValueFromEvent(e: React.ChangeEvent): any {\n if (!e || !e.target) {\n return e;\n }\n const target = e.target as HTMLInputElement;\n return target.type === \"checkbox\" ? target.checked : target.value;\n }\n\n resetValidateState() {\n this.publish(`reset.validate`, null);\n }\n\n onWatch(\n name: string,\n event: any,\n callback?: (v: string) => void,\n options?: WatchOptions\n ) {\n const field = this.#fields.get(name);\n\n if (field) {\n const value = this.getValueFromEvent(event);\n // default first params is value\n const realValue = Array.isArray(value) ? value[0] : value;\n\n this.setFieldsValue({\n [name]: realValue,\n });\n\n if (options?.needValidate ?? true) {\n this.validateField(field.detail);\n }\n callback?.apply(this, value);\n }\n }\n\n onChange(\n name: string,\n value: any,\n callback?: (v: string) => void,\n options?: WatchOptions\n ) {\n const field = this.#fields.get(name);\n\n if (field) {\n this.setFieldsValue({\n [name]: value,\n });\n\n if (options?.needValidate ?? true) {\n this.validateField(field.detail);\n }\n callback?.(value);\n }\n }\n}\n","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import React, { useMemo } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport {\n AbstractForm,\n FormStore,\n MessageBody,\n ColProps,\n} from \"@next-shared/form\";\nimport { ComponentSize, Layout } from \"../interface.js\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\ninterface FormProps {\n values?: Record<string, any>;\n layout?: Layout;\n size?: ComponentSize;\n}\n\nexport interface FormEvents {\n valuesChange?: Event;\n validateSuccess?: Event;\n validateError?: Event;\n}\n\nexport interface FormMapEvents {\n onValuesChange: \"values.change\";\n onValidateSuccess: \"validate.success\";\n onValidateError: \"validate.error\";\n}\n\n/**\n * 表单构件\n * @author sailor\n * @slot - 表单内容\n * @category form-input-basic\n */\n@defineElement(\"eo-form\", {\n alias: [\"form.general-form\"],\n})\nclass Form extends ReactNextElement implements FormProps, AbstractForm {\n formStore: FormStore;\n #values!: Record<string, unknown>;\n defaultEmitValuesChange = true;\n\n constructor() {\n super();\n this.formStore = FormStore.getInstance({\n onValuesChanged: this.handleValuesChange,\n });\n }\n\n get isFormElement(): true {\n return true;\n }\n\n set values(value: Record<string, unknown>) {\n this.#values = value;\n\n this.#setInitValue(value);\n }\n get values(): Record<string, unknown> {\n return this.#values;\n }\n\n #setInitValue(values: Record<string, unknown>) {\n this.formStore.setInitValue(values, this.defaultEmitValuesChange);\n }\n\n @property({\n attribute: false,\n })\n accessor staticValues: Record<string, unknown> | undefined;\n\n /**\n * 布局方式(默认 vertical 布局)\n * @default vertical\n */\n @property() accessor layout: Layout = \"vertical\";\n\n /**\n * 表单组件尺寸\n */\n @property() accessor size: ComponentSize | undefined;\n\n /**\n * 标签列布局样式(仅当 layout=\"horizontal\" 时有效)\n */\n @property({\n attribute: false,\n })\n accessor labelCol: ColProps = {\n sm: {\n span: 24,\n },\n md: {\n span: 24,\n },\n lg: {\n span: 7,\n },\n xl: {\n span: 5,\n },\n xxl: {\n span: 4,\n },\n };\n\n /**\n * 输入控件列布局样式(仅当 layout=\"horizontal\" 时有效)\n */\n @property({\n attribute: false,\n })\n accessor wrapperCol: ColProps = {\n sm: {\n span: 18,\n },\n md: {\n span: 18,\n },\n lg: {\n span: 13,\n },\n xl: {\n span: 16,\n },\n xxl: {\n span: 18,\n },\n };\n\n /**\n * 表单值变更事件\n * @detail\n */\n @event({ type: \"values.change\" }) accessor #valuesChangeEvent!: EventEmitter<\n Record<string, unknown>\n >;\n handleValuesChange = (values: Record<string, unknown>) => {\n this.#valuesChangeEvent.emit(values);\n };\n\n /**\n * 表单验证成功时触发事件\n */\n @event({ type: \"validate.success\" }) accessor #successEvent!: EventEmitter<\n Record<string, unknown>\n >;\n /**\n * 表单验证报错时触发事件\n */\n @event({ type: \"validate.error\" }) accessor #errorEvent!: EventEmitter<\n (MessageBody & { name: string })[]\n >;\n\n /**\n * 表单校验方法\n */\n @method()\n validate(): boolean | Record<string, unknown> {\n return this.formStore.validateFields((err, values) => {\n if (err) {\n this.#errorEvent.emit(values);\n } else {\n this.#successEvent.emit({\n ...(this.staticValues ?? {}),\n ...values,\n });\n }\n });\n }\n\n /**\n * 表单设置值方法\n */\n @method()\n setInitValue(\n values: Record<string, unknown>,\n options?: { runInMacrotask?: boolean; runInMicrotask?: boolean }\n ) {\n if (options) {\n options.runInMicrotask &&\n queueMicrotask(() => {\n this.values = values;\n });\n options.runInMacrotask &&\n setTimeout(() => {\n this.values = values;\n });\n } else {\n this.values = values;\n }\n }\n\n /**\n * 表单重置值方法\n */\n @method()\n resetFields(name?: string) {\n this.formStore.resetFields(typeof name === \"string\" ? name : undefined);\n }\n\n /**\n * 获取表单值方法\n */\n @method()\n getFieldsValue(name?: string) {\n return this.formStore.getFieldsValue(\n typeof name === \"string\" ? name : undefined\n );\n }\n\n @property({\n attribute: false,\n })\n accessor formStyle: React.CSSProperties | undefined;\n\n /**\n * 校验表单字段方法\n */\n @method()\n validateField(name: string) {\n this.formStore.validateField(name);\n }\n\n /**\n * 重置表单校验状态方法\n */\n @method()\n resetValidateState() {\n this.formStore.resetValidateState();\n }\n\n render() {\n return (\n <FormComponent\n layout={this.layout}\n size={this.size}\n labelCol={this.labelCol}\n wrapperCol={this.wrapperCol}\n formStyle={this.formStyle}\n />\n );\n }\n}\n\ninterface FormComponentProps extends FormProps {\n formStyle?: React.CSSProperties;\n labelCol?: ColProps;\n wrapperCol?: ColProps;\n onValuesChange?: (value: Record<string, any>) => void;\n onValidateSuccess?: () => void;\n onValidateError?: () => void;\n}\n\nexport function FormComponent({\n layout = \"vertical\",\n formStyle,\n}: FormComponentProps) {\n const computedStyle = useMemo((): React.CSSProperties => {\n switch (layout) {\n case \"vertical\":\n case \"horizontal\": {\n return {\n display: \"flex\",\n flexDirection: \"column\",\n };\n }\n case \"inline\": {\n return {\n display: \"flex\",\n gap: 10,\n };\n }\n default:\n return {};\n }\n }, [layout]);\n\n return (\n <form>\n <slot\n style={{\n ...computedStyle,\n ...(formStyle ? formStyle : {}),\n }}\n />\n </form>\n );\n}\n\nexport { Form, FormProps };\n","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import { remove } from \"lodash\";\n\nexport class PubSub {\n #topics: Record<string, { token: string; func: Function }[]> = {};\n #subUid = 0;\n\n publish(topic: string, body: any): void {\n if (!this.#topics[topic]) {\n return;\n }\n const subscribers = this.#topics[topic];\n let len = subscribers ? subscribers.length : 0;\n while (len--) {\n subscribers[len].func(topic, body);\n }\n }\n\n subscribe(topic: string, fn: (topic: string, detail: any) => void): string {\n if (!this.#topics[topic]) {\n this.#topics[topic] = [];\n }\n const token = (++this.#subUid).toString();\n this.#topics[topic].push({\n token: token,\n func: fn,\n });\n return token;\n }\n\n unsubscribe(token: string): void {\n for (const m in this.#topics) {\n if (this.#topics[m]) {\n remove(this.#topics[m], (item) => item.token === token);\n }\n }\n }\n}\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}"],"names":["uid","Field","constructor","name","detail","_defineProperty","this","field","_fields","WeakMap","_options","_formData","_initData","_FormStore_brand","WeakSet","FormStore","PubSub","getInstance","options","instance","get","set","super","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","Map","_classPrivateFieldSet","setField","_classPrivateFieldGet","getAllValues","allFields","_assertClassBrand","_getAllFields","call","Object","fromEntries","entries","map","_ref","k","v","includes","filter","item","length","setInitValue","values","isEmitValuseChange","arguments","undefined","setFieldsValue","setFieldsValueByInitData","_classPrivateFieldGet2","value","isNil","publish","newFormData","_classPrivateFieldGet3","_classPrivateFieldGet4","forEach","_ref2","onValuesChanged","changedValues","allValues","resetFields","resetValidateState","getFieldsValue","removeField","delete","validateFields","callback","results","push","validateField","some","result","type","formData","_classPrivateFieldGet5","fieldDetail","label","validate","validateValue","messageBody","message","getName","valid","required","pattern","min","max","validator","isEmpty","stringValue","String","RegExp","test","checkMin","checkMax","numberValue","parseFloat","parsedValidator","Array","isArray","getValueFromEvent","e","target","checked","onWatch","event","_options$needValidate","realValue","needValidate","apply","onChange","_options$needValidate2","keys","key","_detail","notRender","s","a","obj","privateMap","toPropertyKey","t","i","Symbol","toPrimitive","r","TypeError","_checkPrivateRedeclaration","privateCollection","has","n","setFunctionName","description","defineProperty","configurable","applyDecs2311","o","c","u","f","l","p","d","metadata","m","h","create","y","g","b","applyDec","concat","w","D","S","j","E","I","P","F","getOwnPropertyDescriptor","Error","N","O","z","A","H","K","kind","addInitializer","bind","access","init","unshift","splice","enumerable","prototype","checkInRHS","defineElement","property","method","createDecorators","_Form","_values","_Form_brand","_A","_B","_C","_D","_E","_F","_G","_H","_I","Form","ReactNextElement","_initProto","_init_staticValues","_init_extra_staticValues","_init_layout","_init_extra_layout","_init_size","_init_extra_size","_init_labelCol","sm","span","md","lg","xl","xxl","_init_extra_labelCol","_init_wrapperCol","_init_extra_wrapperCol","_init_valuesChangeEvent","_init_extra_valuesChangeEvent","_classPrivateGetter","_get_valuesChangeEvent","emit","_init_successEvent","_init_extra_successEvent","_init_errorEvent","_init_extra_errorEvent","_init_formStyle","_init_extra_formStyle","formStore","handleValuesChange","isFormElement","_setInitValue","staticValues","layout","size","labelCol","wrapperCol","err","_this$staticValues","_get_errorEvent","_get_successEvent","runInMicrotask","queueMicrotask","runInMacrotask","setTimeout","formStyle","render","React","FormComponent","defaultEmitValuesChange","computedStyle","useMemo","display","flexDirection","gap","style","_Form2","_set_valuesChangeEvent","_set_successEvent","_set_errorEvent","_initClass","_applyDecs","alias","attribute","_","_checkInRHS","writable","privateSet","add","_classPrivateFieldSet2","_topics","_subUid","topic","body","subscribers","len","func","subscribe","fn","_this$subUid","token","toString","unsubscribe","remove","_typeof","iterator"],"sourceRoot":""}