@vue-start/pro 0.4.12 → 0.5.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.
- package/CHANGELOG.md +77 -77
- package/README.md +149 -149
- package/dist/index.d.ts +912 -417
- package/dist/index.es.js +2006 -1241
- package/dist/index.js +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),t=require("lodash"),R=require("rxjs"),k=require("@vue-start/hooks"),j=require("@vue-start/request"),le=require("vue-router");function Fe(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Re=()=>({row:{type:Object,default:void 0},col:{type:Object},items:{type:Array}}),we=(e,o)=>n.defineComponent({props:{...Re()},setup:s=>()=>{let r;return n.createVNode(e,s.row,Fe(r=t.map(s.items,d=>n.createVNode(o,n.mergeProps({key:d.rowKey},s.col,d.col),{default:()=>[d.vNode]})))?r:{default:()=>[r]})}}),Ee=e=>(o,s)=>{const{requestSubject$:r}=j.useRequestProvide(),d=new Set(t.map(o,a=>t.isString(a)?a:a.name));k.useEffect(()=>{const a=r.pipe(R.filter(e),R.tap(l=>{d.has(l.name)&&s(l)})).subscribe();return()=>{a.unsubscribe()}},[])},je=Ee(j.isDoneRequestActor),ke=Ee(j.isFailedRequestActor),Pe=(e,o,s)=>{const{requestSubject$:r,dispatchRequest:d}=j.useRequestProvide(),a=new Set(t.map(e,y=>t.isString(y)?y:y.name)),l={};k.useEffect(()=>{const y=R.merge(r.pipe(R.filter(j.isDoneRequestActor),R.tap(E=>{var P,f;a.has(E.name)&&((P=o.onSuccess)==null||P.call(o,E),(f=o.onFinish)==null||f.call(o,E),l[E.name]=void 0)})),r.pipe(R.filter(j.isFailedRequestActor),R.tap(E=>{var P,f;a.has(E.name)&&((P=o.onFailed)==null||P.call(o,E),(f=o.onFinish)==null||f.call(o,E),l[E.name]=void 0)}))).subscribe();return()=>{y.unsubscribe(),s&&t.forEach(l,E=>{E&&d({...E,stage:"CANCEL"})})}},[])},re=e=>e.formValueType||e.valueType||"text",x=e=>{var o;return((o=e.formItemProps)==null?void 0:o.name)||e.dataIndex},_=(e,o,s=!0)=>{var y;const r=re(o),d=t.get(e,r);if(!d)return null;const a=x(o),l=s?o.formItemProps:t.omit(o.formItemProps,"rules");return n.h(d,{key:a,name:a,label:o.title,...l,fieldProps:t.omit(o.formFieldProps,"slots"),showProps:o.showProps},(y=o.formFieldProps)==null?void 0:y.slots)},ne=(e,o,s)=>{var a;const r=o.valueType||"text",d=t.get(e,r);return d?n.h(d,{...t.omit(o.formFieldProps,"slots"),showProps:o.showProps,value:s},(a=o.formFieldProps)==null?void 0:a.slots):null},H=(e,o)=>t.map(o,s=>K(e,s)),Se=(e,o)=>{var d;const s=o.elementProps,r={...o.elementProps};return t.forEach((d=o.highConfig$)==null?void 0:d.registerPropsTrans,a=>{const l=t.get(s,a.name);if(!(!l||n.isVNode(l))){if(t.isArray(l)){if(t.some(l,y=>n.isVNode(y)))return;t.set(r,a.name,H(e,l));return}!l.elementType||(a.isFun?t.set(r,a.name,(...y)=>{const E=a.needParams?{...l.elementProps,params$:y}:l.elementProps;return K(e,{...l,elementProps:E})}):t.set(r,a.name,K(e,l)))}}),r},he=(e,o)=>{const s=t.size(o.children)>0?H(e,o.children):void 0,r=o.childrenSlotName||"default",d=t.omit(o.slots,s?r:"");return t.forEach(t.keys(d),a=>{const l=d[a];l&&!t.isFunction(l)&&l.elementType&&(d[a]=(...y)=>{const E=l.needParams?{...l.elementProps,params$:y}:l.elementProps;return K(e,{...l,elementProps:E})})}),{[r]:s?()=>s:void 0,...d}},K=(e,o)=>{const s=t.get(e,o.elementType)||o.elementType;if(o.highConfig$)return n.h(be,{key:o.elementId,elementMap:e,elementConfig:o});const r=he(e,o),d=Se(e,o);return n.h(s,{key:o.elementId,...d},r)},ve=e=>t.isArray(e)?t.head(e):t.isString(e)&&e.indexOf(".")>0?e.substring(0,e.indexOf(".")):e,be=n.defineComponent({props:{elementMap:{type:Object},elementConfig:{type:Object}},setup:e=>{const{state:o,sendEvent:s}=$(),{elementMap:r,elementConfig:d}=e,a=d.highConfig$,l=Se(r,d),y=t.reduce(a.registerEventList,(p,c)=>({...p,[c.name]:(...u)=>{s({type:c.sendEventName||d.elementId,payload:u})}}),{}),E=n.computed(()=>{if(!a.registerStateList||t.size(a.registerStateList)<=0)return;const p={...l},c=t.map(a.registerStateList,u=>{const i=u.mapName||u.name,m=t.get(o,u.name);return t.set(p,i,m),ve(i)});return t.pick(p,c)}),P=t.get(r,d.elementType)||d.elementType,f=he(r,d);return()=>t.get(E.value,"show$")===!1?null:n.h(P,{key:d.elementId,...l,...t.omit(E.value,"show$"),...y},f)}}),Ce=Symbol("pro-module"),$=()=>n.inject(Ce),Te=e=>{n.provide(Ce,e)},U={Success:"request-success$",Fail:"request-fail$"},Ve=()=>({state:{type:Object},elementMap:{type:Object},elementConfigs:{type:Array},requests:{type:Array}}),W=n.defineComponent({props:{...Ve()},setup:(e,{slots:o,expose:s})=>{const r=c=>t.isArray(c)?H(e.elementMap,c):K(e.elementMap,c),d=new R.Subject,a=c=>{d.next(c)},l=e.state||n.reactive({}),y=c=>{const u=l[c.type],i=t.isFunction(c.payload)?c.payload(u):c.payload;if(t.isObject(u)){k.setReactiveValue(l[c.type],i);return}l[c.type]=i},{dispatchRequest:E}=j.useRequestProvide(),P=t.reduce(e.requests,(c,u)=>{var i;return{...c,[(i=u.actor)==null?void 0:i.name]:u}},{}),f=t.reduce(e.requests,(c,u)=>({...c,[u.action]:u}),{}),p=(c,...u)=>{const i=t.get(P,c)||t.get(f,c);if(!i)return;let m;i.convertParams?m=i.convertParams(...u):m=t.get(u,0),i.loadingName&&y({type:i.loadingName,payload:!0}),E(i.actor,m)};return Pe(t.keys(P),{onSuccess:c=>{var i,m;const u=t.get(P,c.name);if(u!=null&&u.stateName){const h=u.convertData?u.convertData(c):(i=c.res)==null?void 0:i.data;y({type:u.stateName,payload:h})}a({type:U.Success,payload:{actor:c,requestOpts:u}}),(m=u.onSuccess)==null||m.call(u,c)},onFailed:c=>{var i;const u=t.get(P,c.name);a({type:U.Fail,payload:{actor:c,requestOpts:u}}),(i=u.onFailed)==null||i.call(u,c)},onFinish:c=>{const u=t.get(P,[c.name,"loadingName"]);u&&y({type:u,payload:!1})}},!0),Te({elementMap:e.elementMap,subject$:d,sendEvent:a,state:l,dispatch:y,requests:e.requests,sendRequest:p}),s({sendEvent:a,sendRequest:p}),()=>{var c;return n.createVNode(n.Fragment,null,[t.size(e.elementConfigs)>0&&r(e.elementConfigs),(c=o.default)==null?void 0:c.call(o)])}}}),J=e=>{const{subject$:o}=$();k.useEffect(()=>{const s=o.subscribe({next:r=>{e(r)}});return()=>s.unsubscribe()},[])},qe=()=>({elementMap:{type:Object},formElementMap:{type:Object},columns:{type:Array},columnState:{type:Object}}),Q=qe(),xe=()=>({config:{type:Object,default:{}}}),oe=Symbol("pro-config"),Y=()=>n.inject(oe)||{},Ke=n.defineComponent({props:{...xe()},setup:(e,{slots:o})=>(n.provide(oe,e.config),()=>{var s;return(s=o.default)==null?void 0:s.call(o)})}),Ue=(e={})=>o=>{o.provide(oe,e)},De=Symbol("pro-curd"),z=()=>n.inject(De),Ne=e=>n.provide(De,e);var C=(e=>(e.LIST="LIST",e.DETAIL="DETAIL",e.ADD="ADD",e.EDIT="EDIT",e.DELETE="DELETE",e))(C||{}),T=(e=>(e.EMIT="EMIT",e.EXECUTE="EXECUTE",e.PAGE="PAGE",e.SUCCESS="SUCCESS",e.FAIL="FAIL",e))(T||{}),F=(e=>(e.ADD="ADD",e.EDIT="EDIT",e.DETAIL="DETAIL",e))(F||{}),B=(e=>(e.NORMAL="NORMAL",e.CONTINUE="CONTINUE",e))(B||{});const Ae=(e,o,s)=>{if(o){const r=t.filter(t.keys(o),d=>!o[d]);return t.omit(e,r)}if(s){const r=t.filter(t.keys(s),d=>!s[d](e));return t.omit(e,r)}return e},ae=e=>{if(!!e)return t.isArray(e)?e:e&&t.isString(e)&&e.indexOf(".")>0?t.split(e,"."):[e]},Z=(e,o,s)=>!o||!s?e:t.map(e,r=>{const d=t.isFunction(s)?s(r):s,a=t.get(o,d);return!a||t.isEmpty(a)||t.isFunction(a)||!t.isObject(a)?r:t.mergeWith(r,a,(l,y)=>{if(t.isArray(l)||t.isArray(y))return y})}),V=(e,o)=>t.reduce(e,(s,r)=>({...s,[r]:(...d)=>{var a,l;return(l=(a=o.value)==null?void 0:a[r])==null?void 0:l.call(a,...d)}}),{}),Ie={page:1,pageSize:10},Be=()=>({rowKey:{type:String,default:"id"},operates:{type:Array},listProps:{type:Object},formProps:{type:Object},descProps:{type:Object},modalProps:{type:Object}}),ce=["sendCurdEvent","refreshList","sendEvent","sendRequest"],me=n.defineComponent({props:{...Q,...Be()},setup:(e,{slots:o,expose:s})=>{const{elementMap:r,state:d,sendEvent:a,sendRequest:l}=$(),y=n.computed(()=>Z(e.columns,e.columnState,b=>x(b))),E=(b,A=!0)=>_(e.formElementMap,b,A),P=(b,A)=>ne(r,b,A),f=(b,A)=>{const q=t.filter(y.value,L=>{const O=t.get(L,["extra",b])||t.get(L,b);return A?O!==!1:O});return t.sortBy(q,L=>t.get(L,["extra",`${b}Sort`])||t.get(L,`${b}Sort`))},p=n.computed(()=>f("form",!0)),c=n.computed(()=>f("detail",!0)),u=n.computed(()=>f("table",!0)),i=n.computed(()=>f("search"));let m;const h=b=>{l(C.LIST,{...m,...b})},g=b=>{a({type:b.action,payload:t.omit(b,"action","source"),source:b.source})};J(({type:b,payload:A,source:q})=>{if(q)return;let L=b,O=A==null?void 0:A.type;L===U.Success&&(L=t.get(A,["requestOpts","action"]),O=T.SUCCESS);const{values:w,record:X}=A;switch(L){case C.LIST:O===T.EMIT&&(m=w,h());return;case C.ADD:O===T.EXECUTE&&l(C.ADD,w,d.detailData);return;case C.EDIT:O===T.EXECUTE&&l(C.EDIT,w,d.detailData);return;case C.DELETE:O===T.EMIT?l(C.DELETE,X,e.rowKey):O===T.SUCCESS&&h();return}L&&b===T.EXECUTE&&l(L,w)});const S=t.reduce(e.operates,(b,A)=>({...b,[A.action]:A}),{}),v=b=>t.get(S,b),I=n.computed(()=>e.listProps),M=n.computed(()=>e.formProps),D=n.computed(()=>e.descProps),N=n.computed(()=>e.modalProps);return Ne({columns:y,getSignColumns:f,getFormItemVNode:E,getItemVNode:P,elementMap:r,formElementMap:e.formElementMap,rowKey:e.rowKey,curdState:d,formColumns:p,descColumns:c,tableColumns:u,searchColumns:i,sendCurdEvent:g,operates:e.operates,getOperate:v,refreshList:h,listProps:I,formProps:M,descProps:D,modalProps:N}),s({sendCurdEvent:g,refreshList:h}),()=>{var b;return(b=o.default)==null?void 0:b.call(o)}}}),G=n.defineComponent({props:{...t.omit(W.props,"state","requests"),...me.props,curdState:{type:Object}},setup:(e,{slots:o,expose:s})=>{const{elementMap:r,formElementMap:d}=Y(),a=n.ref(),l=n.ref(),y=e.curdState||n.reactive({detailData:{}}),E={[C.LIST]:{convertParams:c=>c,convertData:c=>{var u;return(u=c.res)==null?void 0:u.data},loadingName:"listLoading",stateName:"listData"},[C.DETAIL]:{convertParams:(c,u)=>t.pick(c,u),convertData:c=>{var u;return(u=c.res)==null?void 0:u.data},loadingName:"detailLoading",stateName:"detailData",label:"\u8BE6\u60C5"},[C.ADD]:{convertParams:(c,u)=>({body:{...u,...c}}),loadingName:"operateLoading",label:"\u6DFB\u52A0"},[C.EDIT]:{convertParams:(c,u)=>({body:{...u,...c}}),loadingName:"operateLoading",label:"\u7F16\u8F91"},[C.DELETE]:{convertParams:(c,u)=>t.pick(c,u),label:"\u5220\u9664"}},P=t.map(e.operates,c=>({...t.get(E,c.action),...c})),f=t.filter(P,c=>c.actor),p=t.keys(t.omit(W.props,"state","requests"));return s({sendCurdEvent:c=>{var u;(u=l.value)==null||u.sendCurdEvent(c)},refreshList:c=>{var u;(u=l.value)==null||u.refreshList(c)},sendEvent:c=>{var u;(u=a.value)==null||u.sendEvent(c)},sendRequest:(c,...u)=>{var i;(i=a.value)==null||i.sendRequest(c,...u)}}),()=>n.createVNode(W,n.mergeProps({ref:a},t.pick(e,p),{elementMap:e.elementMap||r,state:y,requests:f}),{default:()=>[n.createVNode(me,n.mergeProps({ref:l},t.omit(e,...p,"curdState","operates"),{formElementMap:e.formElementMap||d,operates:P}),o)]})}}),$e=()=>({defaultAddRecord:{type:Object}}),ee=n.defineComponent({props:{...$e()},setup:e=>{var u;const{dispatch:o,sendRequest:s}=$(),{rowKey:r,curdState:d,listProps:a,getOperate:l,refreshList:y}=z(),E=(u=a==null?void 0:a.value)==null?void 0:u.pageState,P=i=>{const m=l(C.DETAIL);m!=null&&m.actor?s(C.DETAIL,i,r):o({type:"detailData",payload:t.cloneDeep(i)})},f=(i,{record:m})=>{i===T.EMIT&&(o({type:"mode",payload:F.DETAIL}),P(m))},p=i=>{i===T.EMIT?(o({type:"mode",payload:F.ADD}),o({type:"detailData",payload:e.defaultAddRecord||{}})):i===T.SUCCESS&&(E&&(E.page=1),y(),d.addAction===B.CONTINUE?o({type:"detailData",payload:e.defaultAddRecord||{}}):o({type:"mode",payload:void 0}))},c=(i,{record:m})=>{i===T.EMIT?(o({type:"mode",payload:F.EDIT}),P(m)):i===T.SUCCESS&&(o({type:"mode",payload:void 0}),y())};return J(({type:i,payload:m,source:h})=>{if(h)return;let g=i,S=m==null?void 0:m.type;const v=m==null?void 0:m.record;switch(g===U.Success&&(g=t.get(m,["requestOpts","action"]),S=T.SUCCESS),g){case C.DETAIL:f(S,{record:v});break;case C.ADD:p(S);break;case C.EDIT:c(S,{record:v});break}}),()=>null}}),ze=n.defineComponent({props:{...G.props,...ee.props},setup:(e,{slots:o,expose:s})=>{const r=n.ref();s(V(ce,r));const d=t.keys(ee.props);return()=>n.createVNode(G,n.mergeProps({ref:r},t.omit(e,d)),{default:()=>{var a;return[n.createVNode(ee,t.pick(e,d),null),(a=o.default)==null?void 0:a.call(o)]}})}}),Ge=()=>({defaultAddRecord:{type:Object},routeBack:{type:Function}}),te=n.defineComponent({props:{...Ge()},setup:e=>{const o=le.useRouter(),s=le.useRoute(),{dispatch:r,sendRequest:d}=$(),{rowKey:a,curdState:l}=z(),y=p=>{p===T.PAGE&&(r({type:"mode",payload:void 0}),r({type:"detailData",payload:{}}),r({type:"detailLoading",payload:!1}),r({type:"addAction",payload:void 0}))},E=(p,{record:c})=>{p===T.EMIT?o.push({path:`${s.path}/detail`,query:t.pick(c,a)}):p===T.PAGE&&(r({type:"mode",payload:F.DETAIL}),d(C.DETAIL,s.query,a))},P=p=>{p===T.EMIT?o.push({path:`${s.path}/add`}):p===T.PAGE?(r({type:"mode",payload:F.ADD}),r({type:"detailData",payload:e.defaultAddRecord||{}})):p===T.SUCCESS&&(l.addAction===B.CONTINUE?r({type:"detailData",payload:e.defaultAddRecord||{}}):e.routeBack?e.routeBack(C.ADD):o.go(-1))},f=(p,{record:c})=>{p===T.EMIT?o.push({path:`${s.path}/edit`,query:t.pick(c,a)}):p===T.PAGE?(r({type:"mode",payload:F.EDIT}),d(C.DETAIL,s.query,a)):p===T.SUCCESS&&(e.routeBack?e.routeBack(C.EDIT):o.go(-1))};return J(({type:p,payload:c,source:u})=>{if(u)return;let i=p,m=c==null?void 0:c.type;const h=c==null?void 0:c.record;switch(i===U.Success&&(i=t.get(c,["requestOpts","action"]),m=T.SUCCESS),i){case C.LIST:y(m);break;case C.DETAIL:E(m,{record:h});break;case C.ADD:P(m);break;case C.EDIT:f(m,{record:h});break}}),()=>null}}),Xe=n.defineComponent({props:{...G.props,...te.props},setup:(e,{slots:o,expose:s})=>{const r=n.ref();s(V(ce,r));const d=t.keys(te.props);return()=>n.createVNode(G,n.mergeProps({ref:r},t.omit(e,d)),{default:()=>{var a;return[n.createVNode(te,t.pick(e,d),null),(a=o.default)==null?void 0:a.call(o)]}})}});function We(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const _e=(e,o)=>n.defineComponent({props:{...e.props,renderItem:{type:Function},signName:{type:String}},setup:(s,{slots:r})=>{const{getItemVNode:d,curdState:a,descColumns:l,getSignColumns:y}=z(),E=n.computed(()=>{const P=s.signName?y(s.signName):l.value;return t.map(P,f=>{var i;let p;const c=(i=s.renderItem)==null?void 0:i.call(s,f);if(c)return c;const u=t.get(a.detailData,f.dataIndex);return n.createVNode(o,n.mergeProps({key:f.dataIndex,label:f.title},t.get(f.extra,"desc")),We(p=d(f,u))?p:{default:()=>[p]})})});return()=>n.createVNode(e,s,{default:()=>{var P,f;return[(P=r.start)==null?void 0:P.call(r),E.value,(f=r.default)==null?void 0:f.call(r)]},...t.omit(r,"default","start")})}}),He=()=>({signName:{type:String},modelName:{type:String,default:"detailData"},operateBar:{type:Boolean,default:!0},showContinueAdd:{type:Boolean,default:!1},okText:{type:String,default:"\u786E\u5B9A"},okButtonProps:{type:Object},continueText:{type:String,default:"\u786E\u5B9A\u5E76\u7EE7\u7EED"},continueButtonProps:{type:Object}}),Je=(e,o,s,r)=>n.defineComponent({inheritAttrs:!1,props:{...e.props,...He()},setup:(d,{slots:a,attrs:l,expose:y})=>{const{elementMap:E,formElementMap:P,curdState:f,formColumns:p,getSignColumns:c,sendCurdEvent:u}=z(),i=n.ref(),m=n.computed(()=>d.signName?c(d.signName):p.value),h=(v,I)=>{if(l.onFinish){l.onFinish(v,I);return}f.mode===F.EDIT?u({action:C.EDIT,type:T.EXECUTE,values:v}):u({action:C.ADD,type:T.EXECUTE,values:v})},g=()=>{var v;f.addAction=B.NORMAL,(v=i.value)==null||v.submit()},S=()=>{var v;f.addAction=B.CONTINUE,(v=i.value)==null||v.submit()};return y(V(r,i)),()=>n.createVNode(e,n.mergeProps({ref:i},t.omit(l,"onFinish"),d,{elementMap:d.elementMap||E,formElementMap:d.formElementMap||P,columns:d.columns||m.value,model:d.model||f[d.modelName],readonly:f.mode===F.DETAIL,onFinish:h},s==null?void 0:s(f)),{default:()=>{var v,I,M,D,N;return[(v=a.divide)==null?void 0:v.call(a),d.operateBar&&n.createVNode("div",{class:"pro-curd-form-operate"},[(I=a.operateStart)==null?void 0:I.call(a),f.mode!==F.DETAIL&&n.createVNode(o,n.mergeProps({onClick:g},d.okButtonProps,{loading:f.operateLoading}),{default:()=>[d.okText]}),(M=a.operateCenter)==null?void 0:M.call(a),d.showContinueAdd&&f.mode===F.ADD&&n.createVNode(o,n.mergeProps({onClick:S},d.continueButtonProps,{loading:f.operateLoading}),{default:()=>[d.continueText]}),(D=a.operateEnd)==null?void 0:D.call(a)]),(N=a.default)==null?void 0:N.call(a)]},...t.omit(a,"default","divide","operateStart","operateCenter","operateEnd")})}}),Qe=()=>({extraInSearch:{type:Boolean,default:void 0},searchProps:{type:Object},tableProps:{type:Object},paginationProps:{type:Object},showPagination:{type:Boolean,default:!0},pageState:{type:Object}}),Ye=(e,o)=>n.defineComponent({props:{...Qe()},setup:(s,{slots:r})=>{const{elementMap:d,formElementMap:a,curdState:l,searchColumns:y,tableColumns:E,sendCurdEvent:P,operates:f}=z(),p=s.pageState||n.reactive({...Ie});let c;const u=()=>{P({action:C.LIST,type:T.EMIT,values:{...c,...p}})},i=g=>{c=g,p.page=1,u()},m=t.map(t.filter(f,g=>{const S=g.action;return S===C.DETAIL||S===C.EDIT||S===C.DELETE||g.tableOperate}),g=>{const S={...t.pick(g,"label","element","disabled","sort","onClick"),show:t.isUndefined(g==null?void 0:g.show)?!1:g==null?void 0:g.show,value:g.action};return S.onClick||(S.onClick=v=>{P({action:g.action,type:T.EMIT,record:v})}),S}),h=g=>t.map(g,S=>S.onClick?S:{...S,onClick:v=>{P({action:"operate",type:S.value,record:v})}});return()=>{var I,M,D,N,b,A,q,L,O,w;const g=s.tableProps,S={elementMap:d,columns:E.value,...t.omit(g,"slots","operate"),operate:t.mergeWith({items:m},g==null?void 0:g.operate,(X,ie)=>{if(t.isArray(X)&&t.isArray(ie))return t.concat(X,h(ie))}),paginationState:{page:p.page,pageSize:p.pageSize},loading:l.listLoading,dataSource:(I=l.listData)==null?void 0:I.dataSource},v=r.extra?n.createVNode("div",{class:"pro-curd-list-extra"},[r.extra()]):null;return n.createVNode(n.Fragment,null,[(M=r.start)==null?void 0:M.call(r),r.search?r.search({executeSearchWithResetPage:i}):n.createVNode(e,n.mergeProps({formElementMap:a,columns:y.value},t.omit(s.searchProps,"slots"),{onFinish:i}),{default:()=>[s.extraInSearch&&v],...(D=s.searchProps)==null?void 0:D.slots}),(N=r.divide)==null?void 0:N.call(r),!s.extraInSearch&&v,r.table?r.table(S):n.createVNode(o,S,g==null?void 0:g.slots),(b=r.divide2)==null?void 0:b.call(r),s.showPagination&&n.createVNode("div",{class:"pro-curd-list-footer"},[(A=r.footerStart)==null?void 0:A.call(r),(L=r.pagination)==null?void 0:L.call(r,p,(q=l.listData)==null?void 0:q.total,u),(O=r.footerEnd)==null?void 0:O.call(r)]),(w=r.end)==null?void 0:w.call(r)])}}}),Le=Symbol("pro-form-list"),se=()=>n.inject(Le),ue=e=>{n.provide(Le,e)},Ze=n.defineComponent({props:{pathList:{type:Array}},setup:(e,{slots:o})=>(ue({pathList:e.pathList}),()=>{var s;return(s=o.default)==null?void 0:s.call(o)})}),et=e=>n.defineComponent({props:{...e.props,rowKey:{type:String,default:"id"}},setup:(o,{slots:s})=>{const{formState:r,readonly:d}=de(),a=se(),l=ae(o.name),y=a!=null&&a.pathList?[...a.pathList,...l]:l,E=()=>{let f=t.get(r,y);t.isArray(f)||(f=[]),f.push({[o.rowKey]:new Date().valueOf()}),t.set(r,y,f)},P=f=>{const p=t.get(r,y);t.size(p)<=0||p.splice(f,1)};return()=>n.createVNode(e,t.omit(o,"rowKey"),{default:()=>{var f;return[t.map(t.get(r,y),(p,c)=>n.createVNode(Ze,{key:p[o.rowKey]||c,pathList:[...y,c]},{default:()=>{var u,i,m;return[n.createVNode("div",{class:"pro-form-list-item"},[(u=s.default)==null?void 0:u.call(s),!d.value&&n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"pro-form-list-item-add",onClick:E},[(i=s.itemAdd)==null?void 0:i.call(s)]),n.createVNode("div",{class:"pro-form-list-item-minus",onClick:()=>P(c)},[(m=s.itemMinus)==null?void 0:m.call(s)])])])]}})),!d.value&&n.createVNode("div",{class:"pro-form-list-add",onClick:E},[(f=s.add)==null?void 0:f.call(s)])]}})}}),Me=Symbol("pro-form"),de=()=>n.inject(Me),tt=e=>{n.provide(Me,e)},fe=()=>({model:{type:Object},readonly:{type:Boolean,default:void 0},showState:{type:Object},showStateRules:{type:Object},readonlyState:{type:Object},readonlyStateRules:{type:Object},disableState:{type:Object},disableStateRules:{type:Object},needRules:{type:Boolean,default:!0},provideExtra:{type:Object}}),rt=(e,o,s)=>n.defineComponent({inheritAttrs:!1,props:{...e.props,...Q,...fe(),...t.omit(o.props,"items")},setup:(r,{slots:d,emit:a,expose:l,attrs:y})=>{const{elementMap:E,formElementMap:P}=Y(),f=r.elementMap||E,p=r.formElementMap||P,c=r.model||n.reactive({}),u=r.showState||n.reactive({}),i=r.readonlyState||n.reactive({}),m=r.disableState||n.reactive({});k.useEffect(()=>{r.showStateRules&&t.forEach(r.showStateRules,(D,N)=>{u[N]=D(c)}),r.readonlyStateRules&&t.forEach(r.readonlyStateRules,(D,N)=>{i[N]=D(c)}),r.disableStateRules&&t.forEach(r.disableStateRules,(D,N)=>{m[N]=D(c)})},c);const h=n.computed(()=>r.readonly),g=n.computed(()=>Z(r.columns,r.columnState,D=>x(D))),S=D=>{const N=Ae(D,u,r.showStateRules);a("finish",N,D)},v=n.ref();l(V(s,v)),tt({formState:c,showState:u,readonlyState:i,disableState:m,elementMap:f,formElementMap:p,readonly:h,columns:g,formRef:v,...r.provideExtra}),ue({});const I=t.keys(fe()),M=t.keys(t.omit(o.props,"items"));return()=>n.createVNode(e,n.mergeProps({ref:v},t.omit(y,"onFinish"),t.omit(r,...I,...M,"onFinish"),{model:c,onFinish:S}),{default:()=>{var D,N;return[(D=d.start)==null?void 0:D.call(d),p&&t.size(g.value)>0&&n.createVNode(n.Fragment,null,[r.row?n.createVNode(o,{row:r.row,col:r.col,items:t.map(g.value,b=>({rowKey:x(b),vNode:_(p,b,r.needRules),col:t.get(b,["extra","col"])}))},null):t.map(g.value,b=>_(p,b,r.needRules))]),(N=d.default)==null?void 0:N.call(d)]},...t.omit(d,"default")})}});exports.SearchMode=void 0;(function(e){e.AUTO="AUTO",e.MANUAL="MANUAL"})(exports.SearchMode||(exports.SearchMode={}));const pe=()=>({initEmit:{type:Boolean,default:!0},searchMode:{type:String,default:exports.SearchMode.AUTO},debounceKeys:{type:Array},debounceTypes:{type:Array,default:["text"]},debounceTime:{type:Number,default:800}}),nt=(e,o,s)=>n.defineComponent({props:{...e.props,...o,...pe()},setup:(r,{slots:d,expose:a})=>{const l=r.model||n.reactive({}),y=new Set(r.debounceTypes),E=t.map(t.filter(r.columns,i=>{const m=re(i);return y.has(m)}),i=>x(i)),P=n.ref();a(V(s,P));const f=()=>{var i;(i=P.value)==null||i.submit()},p=t.debounce(()=>{f()},r.debounceTime);k.useEffect(()=>{r.initEmit&&f()},[]);const c=(i,m,h)=>t.some(h,g=>t.get(i,g)!==t.get(m,g));k.useWatch((i,m)=>{if(r.searchMode!==exports.SearchMode.AUTO)return;const h=t.size(r.debounceKeys)>0?r.debounceKeys:E;if(t.size(h)>0&&c(i,m,h)){p();return}f()},()=>t.clone(l));const u=t.keys(t.omit(pe(),"columns"));return()=>n.createVNode(e,n.mergeProps({ref:P},t.omit(r,u),{model:l}),d)}}),ye=()=>({readonly:{type:Boolean,default:void 0},fieldProps:{type:Object},showProps:{type:Object},slots:{type:Object}}),ot=(e,o)=>({InputComp:s,valueType:r,name:d})=>n.defineComponent({name:d,props:{...e.props,...ye()},setup:(a,{slots:l})=>{const{formState:y,showState:E,readonlyState:P,disableState:f,readonly:p,elementMap:c}=de(),u=se(),i=n.computed(()=>t.isBoolean(a.readonly)?a.readonly:t.isBoolean(P[a.name])?P[a.name]:p.value),m=ae(a.name),h=u!=null&&u.pathList?[...u.pathList,...m]:m,g=v=>{t.set(y,h,v)},S=t.keys(ye());return()=>{const v=t.get(E,h);if(t.isBoolean(v)&&!v)return null;const I=t.get(y,h),M=t.get(c,r);return n.createVNode(e,n.mergeProps(t.omit(a,...S,"name","slots"),{name:h}),{default:()=>[i.value?n.createVNode(n.Fragment,null,[M?n.createVNode(M,n.mergeProps({value:I},a.fieldProps,{showProps:a.showProps}),l):n.createVNode("span",null,[I])]):n.createVNode(s,n.mergeProps(o(I,g,t.get(f,h)),a.fieldProps),l)],...a.slots})}}}),Oe=Symbol("pro-table"),at=()=>n.inject(Oe),ct=e=>{n.provide(Oe,e)},ge=()=>({operate:{type:Object},columnEmptyText:{type:String},column:{type:Object},serialNumber:{type:Boolean},paginationState:{type:Object},provideExtra:{type:Object}}),st=(e,o,s)=>n.defineComponent({props:{...e.props,...Q,...o,...ge()},setup:(r,{slots:d,expose:a})=>{const{elementMap:l}=Y(),y=r.elementMap||l,E=()=>({title:"\u5E8F\u53F7",dataIndex:"serialNumber",width:80,...r.column,customRender:({index:u})=>{var i,m;return((i=r.paginationState)==null?void 0:i.page)&&((m=r.paginationState)==null?void 0:m.pageSize)?r.paginationState.pageSize*(r.paginationState.page-1)+u+1:u+1}}),P=()=>{const u=r.operate,i=t.map(u.items,h=>({...h,...t.get(u.itemState,h.value)})),m=t.sortBy(i,h=>h.sort);return{...r.column,title:"\u64CD\u4F5C",dataIndex:"operate",fixed:"right",...u.column,customRender:({record:h})=>{const g=t.filter(m,S=>S.show&&t.isFunction(S.show)?S.show(h):S.show!==!1);return n.createVNode("div",{class:"pro-table-operate"},[t.map(g,S=>t.isFunction(S.element)?S.element(h,S):n.createVNode("div",{class:"pro-table-operate-item",key:S.value,onClick:()=>{var v;(v=S.onClick)==null||v.call(S,h)}},[S.label]))])}}},f=n.computed(()=>{const u=Z(r.columns,r.columnState,m=>m.dataIndex),i=t.map(u,m=>{const h={...r.column,...m};return m.customRender||(h.customRender=({text:g})=>ne(y,{...m,showProps:{...m.showProps,content:r.columnEmptyText}},g)||g||r.columnEmptyText),h});return r.serialNumber&&i.unshift(E()),r.operate&&r.operate.items&&t.some(r.operate.items,m=>m.show)&&i.push(P()),i}),p=n.ref();ct({columns:f,tableRef:p,...r.provideExtra}),a(V(s||[],p));const c=t.keys(ge());return()=>n.createVNode(e,n.mergeProps({ref:p},t.omit(r,c),{columns:f.value}),d)}});exports.CurdAction=C;exports.CurdAddAction=B;exports.CurdCurrentMode=F;exports.CurdMethods=ce;exports.CurdSubAction=T;exports.ProConfig=Ke;exports.ProCurd=G;exports.ProModalCurd=ze;exports.ProModule=W;exports.ProPageCurd=Xe;exports.RequestAction=U;exports.Wrapper=be;exports.convertPathToList=ae;exports.createCurdDesc=_e;exports.createCurdForm=Je;exports.createCurdList=Ye;exports.createExpose=V;exports.createForm=rt;exports.createFormItemCompFn=ot;exports.createFormList=et;exports.createGrid=we;exports.createProConfig=Ue;exports.createSearchForm=nt;exports.createTable=st;exports.defaultPage=Ie;exports.getColumnFormItemName=x;exports.getColumnValueType=re;exports.getFirstPropName=ve;exports.getFormItemEl=_;exports.getItemEl=ne;exports.getValidValues=Ae;exports.mergeStateToList=Z;exports.proBaseProps=Q;exports.provideProCurd=Ne;exports.provideProFormList=ue;exports.provideProModule=Te;exports.renderElement=K;exports.renderElements=H;exports.useComposeRequestActor=Pe;exports.useDoneRequestActor=je;exports.useFailedRequestActor=ke;exports.useModuleEvent=J;exports.useProConfig=Y;exports.useProCurd=z;exports.useProForm=de;exports.useProFormList=se;exports.useProModule=$;exports.useProTable=at;
|
|
1
|
+
"use strict";var vt=Object.defineProperty;var Ct=(e,t,o)=>t in e?vt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o;var $=(e,t,o)=>(Ct(e,typeof t!="symbol"?t+"":t,o),o);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("vue"),n=require("lodash"),k=require("rxjs"),F=require("@vue-start/hooks"),K=require("@vue-start/request"),Ee=require("rxjs/operators"),Ne=require("vue-router"),Et=()=>({elementMap:{type:Object},formElementMap:{type:Object},columns:{type:Array},columnState:{type:Object}}),z=Et(),Nt=()=>({elementMap:{type:Object},formElementMap:{type:Object},registerStores:{type:Array},registerActors:{type:Array},registerMetas:{type:Array}}),le=Symbol("pro-config"),w=()=>r.inject(le)||{},Tt=r.defineComponent({props:{...Nt()},setup:(e,{slots:t})=>{const o=n.reduce(e.registerStores,(i,g)=>({...i,[g.key]:g}),{}),u=n.reduce(e.registerActors,(i,g)=>({...i,[g.actor.name]:g}),{}),c=n.reduce(e.registerMetas,(i,g)=>({...i,[g.actorName]:g}),{});$e(c,u);const{dispatchRequest:s}=K.useRequestProvide(),a=(i,g,y)=>{const P=n.get(u,i);if(!!P)return s(P.actor,g,y)};return r.provide(le,{elementMap:e.elementMap,formElementMap:e.formElementMap,registerStoreMap:o,registerActorMap:u,registerMetaMap:c,dispatchRequest:a}),()=>{var i;return(i=t.default)==null?void 0:i.call(t)}}}),Mt=(e={})=>t=>{t.provide(le,e)},It=Object.prototype.hasOwnProperty,Te=(e,t)=>e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t,Ft=(e,t)=>{if(Te(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const o=Object.keys(e),u=Object.keys(t);if(o.length!==u.length)return!1;for(let c=0;c<o.length;c++)if(!It.call(t,o[c])||!Te(e[o[c]],t[o[c]]))return!1;return!0},Dt="$store",te=()=>r.inject(Dt),At=(e,t)=>(o={},u)=>{const c=typeof e=="function"?e(u):e;if(c==="")return o;const s=t(o[c],u),a={};for(const i in o)i!==c&&(a[i]=o[i]);return typeof s<"u"&&(a[c]=s),a};class Lt{constructor(t){$(this,"group");$(this,"name");$(this,"stage");$(this,"effect");$(this,"arg");$(this,"opts");this.group=t.group||"UN_GROUPED",this.name=t.name||"UN_NAMED",this.stage=t.stage,this.effect=t.effect,this.arg=t.arg||{},this.opts=t.opts||{}}static of(t){return new this({group:t})}named(t,o){return new this.constructor({...this,name:t,opts:{...this.opts,...o}})}staged(t){return new this.constructor({...this,stage:t})}effectWith(t){return new this.constructor({...this,effect:t})}effectOn(t,o){return this.effectWith(At(t,o))}with(t,o){return new this.constructor({...this,arg:t,opts:{...this.opts,...o}})}invoke(t){t.dispatch(this)}get type(){let t=!1;for(const o in this.opts)o!=="parentActor"&&(this.opts[o],t=!0);return`@@${this.group}/${this.name}${this.stage?`::${this.stage}`:""}${t?`${JSON.stringify(this.opts)}`:""}`}is(t){const o=this.isSameGroup(t)&&t.name===this.name;return this.stage?o&&t.stage===this.stage:o}isSameGroup(t){return t.group===this.group}}class ne extends k.Observable{constructor(o,u,c=Ft){super(s=>this.state$.pipe(Ee.map(a=>{const i=this.mapper(a);return c(i,this._value)||(this._value=i),this._value}),Ee.distinctUntilChanged()).subscribe(s));$(this,"_value");this.state$=o,this.mapper=u}static from(o,u){return new ne(o,u,u.equalFn)}get value(){return typeof this._value>"u"&&(this._value=this.mapper(this.state$.value)),this._value}}const kt=(e,t)=>{const[o,u]=F.useState(t||e.value);return F.useEffect(()=>{const c=e.subscribe(s=>{u(s)});return()=>{c&&c.unsubscribe()}},void 0),o},Ot=(e,t)=>{const o=r.ref(t||e.value);return F.useEffect(()=>{const u=e.subscribe(c=>{o.value=c});return()=>{u&&u.unsubscribe()}},[]),o},Rt=(e,t)=>ne.from(e,t),Vt=e=>Rt(te(),e||(t=>t)),Kt=Lt.of("state"),Oe=Kt.named("update").effectOn(e=>e.opts.key,(e,t)=>t.arg(e)),Re=()=>{const e=te();return(t,o,u,c)=>{const s=`${u?"$":""}${t}`,a=n.isFunction(c)?c():c;Oe.with((i=a)=>n.isFunction(o)?o(i):o,{key:s}).invoke(e)}},wt=(e,t,o)=>{const u=`${o?"$":""}${e}`,c=n.isFunction(t)?t():t,s=te(),a=y=>Oe.with((P=c)=>n.isFunction(y)?y(P):y,{key:u}).invoke(s),i=ne.from(s,y=>n.get(y,[u],c));return[kt(i),a]},$t=(e,t,o=!1)=>()=>{const[u,c]=wt(e,t,o);return[u,c]},Ve=e=>(t,o)=>{const{requestSubject$:u}=K.useRequestProvide(),c=new Set(n.map(t,s=>n.isString(s)?s:s.name));F.useEffect(()=>{const s=u.pipe(k.filter(e),k.tap(a=>{c.has(a.name)&&o(a)})).subscribe();return()=>{s.unsubscribe()}},[])},jt=Ve(K.isDoneRequestActor),xt=Ve(K.isFailedRequestActor),Ke=(e,t,o)=>{const{requestSubject$:u,dispatchRequest:c}=K.useRequestProvide(),s=new Set(n.map(e,i=>n.isString(i)?i:i.name)),a={};F.useEffect(()=>{const i=k.merge(u.pipe(k.filter(K.isDoneRequestActor),k.tap(g=>{var y,P;s.has(g.name)&&((y=t.onSuccess)==null||y.call(t,g),(P=t.onFinish)==null||P.call(t,g),a[g.name]=void 0)})),u.pipe(k.filter(K.isFailedRequestActor),k.tap(g=>{var y,P;s.has(g.name)&&((y=t.onFailed)==null||y.call(t,g),(P=t.onFinish)==null||P.call(t,g),a[g.name]=void 0)}))).subscribe();return()=>{i.unsubscribe(),o&&n.forEach(a,g=>{g&&c({...g,stage:"CANCEL"})})}},[])},we=(e,t,o)=>{var c;const u=(c=e.res)==null?void 0:c.data;return t?t(u,e):o?n.get(u,o):u},qt=()=>{const e=te(),{registerMetaMap:t,dispatchRequest:o}=w();return u=>{const c=n.get(t,u);if(!c)return;const s=c.storeName||u;n.get(e.value,s)||o(u,c.initParams||{})}},$e=(e,t)=>{const{requestSubject$:o}=K.useRequestProvide(),u=Re(),c=s=>{const a=n.get(e,s.name),i=n.get(t,s.name);return!!(a&&i&&i.actor)};F.useEffect(()=>{const s=o.pipe(k.filter(c),k.tap(a=>{const i=n.get(e,a.name);if(!i)return;const g=i.storeName||a.name,y=we(a,i.convertData,i.convertPath);u(g,y,!1,void 0)})).subscribe();return()=>{s.unsubscribe()}},[])},de=e=>e.formValueType||e.valueType||"text",q=e=>{var t;return((t=e.formItemProps)==null?void 0:t.name)||e.dataIndex},me=(e,t,o=!0)=>{var i;const u=de(t),c=n.get(e,u);if(!c)return null;const s=q(t),a=o?t.formItemProps:n.omit(t.formItemProps,"rules");return r.h(c,{key:s,name:s,label:t.title,...a,fieldProps:n.omit(t.formFieldProps,"slots"),showProps:t.showProps},(i=t.formFieldProps)==null?void 0:i.slots)},re=(e,t,o)=>{var s;const u=t.valueType||"text",c=n.get(e,u);return c?r.h(c,{...n.omit(t.formFieldProps,"slots"),showProps:t.showProps,value:o},(s=t.formFieldProps)==null?void 0:s.slots):null},oe=(e,t)=>n.map(t,o=>G(e,o)),je=(e,t)=>{var c;const o=t.elementProps,u={...t.elementProps};return n.forEach((c=t.highConfig$)==null?void 0:c.registerPropsTrans,s=>{const a=n.get(o,s.name);if(!(!a||r.isVNode(a))){if(n.isArray(a)){if(n.some(a,i=>r.isVNode(i)))return;n.set(u,s.name,oe(e,a));return}!a.elementType||(s.isFun?n.set(u,s.name,(...i)=>{const g=s.needParams?{...a.elementProps,params$:i}:a.elementProps;return G(e,{...a,elementProps:g})}):n.set(u,s.name,G(e,a)))}}),u},xe=(e,t)=>{const o=n.size(t.children)>0?oe(e,t.children):void 0,u=t.childrenSlotName||"default",c=n.omit(t.slots,o?u:"");return n.forEach(n.keys(c),s=>{const a=c[s];a&&!n.isFunction(a)&&a.elementType&&(c[s]=(...i)=>{const g=a.needParams?{...a.elementProps,params$:i}:a.elementProps;return G(e,{...a,elementProps:g})})}),{[u]:o?()=>o:void 0,...c}},G=(e,t)=>{const o=n.get(e,t.elementType)||t.elementType;if(t.highConfig$)return r.h(Ue,{key:t.elementId,elementMap:e,elementConfig:t});const u=xe(e,t),c=je(e,t);return r.h(o,{key:t.elementId,...c},u)},qe=e=>n.isArray(e)?n.head(e):n.isString(e)&&e.indexOf(".")>0?e.substring(0,e.indexOf(".")):e,Ue=r.defineComponent({props:{elementMap:{type:Object},elementConfig:{type:Object}},setup:e=>{const{state:t,sendEvent:o}=H(),{elementMap:u,elementConfig:c}=e,s=c.highConfig$,a=je(u,c),i=n.reduce(s.registerEventList,(f,l)=>({...f,[l.name]:(...d)=>{o({type:l.sendEventName||c.elementId,payload:d})}}),{}),g=r.computed(()=>{if(!s.registerStateList||n.size(s.registerStateList)<=0)return;const f={...a},l=n.map(s.registerStateList,d=>{const h=d.mapName||d.name,m=n.get(t,d.name);return n.set(f,h,m),qe(h)});return n.pick(f,l)}),y=n.get(u,c.elementType)||c.elementType,P=xe(u,c);return()=>n.get(g.value,"show$")===!1?null:r.h(y,{key:c.elementId,...a,...n.omit(g.value,"show$"),...i},P)}}),Be=Symbol("pro-module"),H=()=>r.inject(Be),ze=e=>{r.provide(Be,e)},ae=e=>{const{subject$:t}=H();F.useEffect(()=>{const o=t.subscribe({next:u=>{e(u)}});return()=>o.unsubscribe()},[])},_={Success:"request-success$",Fail:"request-fail$"},Ut=()=>({state:{type:Object},elementMap:{type:Object},elementConfigs:{type:Array},requests:{type:Array}}),Y=r.defineComponent({props:{...Ut()},setup:(e,{slots:t,expose:o})=>{const u=l=>n.isArray(l)?oe(e.elementMap,l):G(e.elementMap,l),c=new k.Subject,s=l=>{c.next(l)},a=e.state||r.reactive({}),i=l=>{const d=a[l.type],h=n.isFunction(l.payload)?l.payload(d):l.payload;if(n.isObject(d)){F.setReactiveValue(a[l.type],h);return}a[l.type]=h},{dispatchRequest:g}=K.useRequestProvide(),y=n.reduce(e.requests,(l,d)=>{var h;return{...l,[(h=d.actor)==null?void 0:h.name]:d}},{}),P=n.reduce(e.requests,(l,d)=>({...l,[d.action]:d}),{}),f=(l,...d)=>{const h=n.get(y,l)||n.get(P,l);if(!h)return;let m;h.convertParams?m=h.convertParams(...d):m=n.get(d,0),h.loadingName&&i({type:h.loadingName,payload:!0}),g(h.actor,m)};return Ke(n.keys(y),{onSuccess:l=>{var h,m;const d=n.get(y,l.name);if(d!=null&&d.stateName){const p=d.convertData?d.convertData(l):(h=l.res)==null?void 0:h.data;i({type:d.stateName,payload:p})}s({type:_.Success,payload:{actor:l,requestOpts:d}}),(m=d.onSuccess)==null||m.call(d,l)},onFailed:l=>{var h;const d=n.get(y,l.name);s({type:_.Fail,payload:{actor:l,requestOpts:d}}),(h=d.onFailed)==null||h.call(d,l)},onFinish:l=>{const d=n.get(y,[l.name,"loadingName"]);d&&i({type:d,payload:!1})}},!0),ze({elementMap:e.elementMap,subject$:c,sendEvent:s,state:a,dispatch:i,requests:e.requests,sendRequest:f}),o({sendEvent:s,sendRequest:f}),()=>{var l;return r.createVNode(r.Fragment,null,[n.size(e.elementConfigs)>0&&u(e.elementConfigs),(l=t.default)==null?void 0:l.call(t)])}}}),Bt=()=>{const e=Re(),{registerStoreMap:t}=w();return(o,u)=>{const c=n.get(t,o);!c||e(o,u,!!c.persist,c.initialState)}},zt=e=>{const{registerStoreMap:t}=w(),o=n.get(t,e),u=`${o!=null&&o.persist?"$":""}${o==null?void 0:o.key}`;return Ot(Vt(s=>{const a=n.get(s,u);return a||(n.isFunction(o==null?void 0:o.initialState)?o==null?void 0:o.initialState():o==null?void 0:o.initialState)}))},Ge=$t("access",void 0,!0),_e=()=>{const[e]=Ge();return e},Gt=()=>{const[e,t]=Ge();return[e,t,()=>{t(void 0)}]},_t=r.defineComponent((e,{slots:t,emit:o})=>{const u=_e(),c=r.computed(()=>u&&u.token);return F.useEffect(()=>{c.value||o("toLogin")},c),()=>{var s;return c.value?(s=t.default)==null?void 0:s.call(t):null}}),pe=Symbol("logon-user"),Wt=()=>r.inject(pe),Ht=r.defineComponent((e,{slots:t})=>{const[o,u]=F.useState(),[c,s]=F.useState(),a={};return r.provide(pe,{user:o,setUser:u,per:c,setPer:s,opts:a}),()=>{var i;return(i=t.default)==null?void 0:i.call(t)}}),fe="Loading$",We="Row$",He="Col$",Xe="Button$",Je="ProDescriptions$",Qe="ProDescriptionsItem$",Ye="Pagination$",Ze="Popover$",et="Checkbox$",tt="Modal$",nt="Form$",rt="FormItem$",ot="Table$",at="ProForm$",st="ProSearchForm$",ct="ProTable$",R=()=>{const{elementMap:e}=w();return t=>n.get(e,t)};function Xt(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!r.isVNode(e)}const Jt=()=>({row:{type:Object,default:void 0},col:{type:Object},items:{type:Array}}),Z=r.defineComponent({props:{...Jt()},setup:e=>{const t=R(),o=t(We),u=t(He);return()=>{let c;return!o||!u?null:r.createVNode(o,e.row,Xt(c=n.map(e.items,s=>r.createVNode(u,r.mergeProps({key:s.rowKey},e.col,s.col),{default:()=>[s.vNode]})))?c:{default:()=>[c]})}}}),ut=(e,t,o)=>{if(t){const u=n.filter(n.keys(t),c=>!t[c]);return n.omit(e,u)}if(o){const u=n.filter(n.keys(o),c=>!o[c](e));return n.omit(e,u)}return e},ge=e=>{if(!!e)return n.isArray(e)?e:e&&n.isString(e)&&e.indexOf(".")>0?n.split(e,"."):[e]},J=(e,t,o)=>!t||!o?e:n.map(e,u=>{const c=n.isFunction(o)?o(u):n.get(u,o),s=n.get(t,c);return!s||n.isEmpty(s)||n.isFunction(s)||!n.isObject(s)?u:n.mergeWith(u,s,(a,i)=>{if(n.isArray(a)||n.isArray(i))return i})}),U=(e,t)=>{const o=n.reduce(e,(u,c)=>({...u,[c]:(...s)=>{var a,i;return(i=(a=t.value)==null?void 0:a[c])==null?void 0:i.call(a,...s)}}),{});return o.originRef=t,o},Qt=(e,t,o)=>{const u={originRef:e,...o};return t&&n.size(t)>0&&n.forEach(t,c=>{u[c]=(...s)=>{var a,i;return(i=(a=e.value)==null?void 0:a[c])==null?void 0:i.call(a,...s)}}),u},ye=(e,t)=>n.get(e,["extra",t])||n.get(e,t),B=(e,t)=>{const o=n.keys(e),u=`${t}-`,c=n.filter(o,a=>n.startsWith(a,u)),s=n.pick(e,c);return n.mapKeys(s,a=>a.replace(u,""))},it=Symbol("pro-form-list"),he=()=>r.inject(it),Pe=e=>{r.provide(it,e)},Yt=r.defineComponent({props:{pathList:{type:Array}},setup:(e,{slots:t})=>(Pe({pathList:e.pathList}),()=>{var o;return(o=t.default)==null?void 0:o.call(t)})}),Zt=()=>({rowKey:{type:String,default:"id"},name:{type:[String,Number,Array],required:!0}}),en=r.defineComponent({props:{...Zt()},setup:(e,{slots:t})=>{const u=R()(rt),{formState:c,readonly:s}=be(),a=he(),i=ge(e.name),g=a!=null&&a.pathList?[...a.pathList,...i]:i,y=()=>{let f=n.get(c,g);n.isArray(f)||(f=[]),f.push({[e.rowKey]:new Date().valueOf()}),n.set(c,g,f)},P=f=>{const l=n.get(c,g);n.size(l)<=0||l.splice(f,1)};return()=>u?r.createVNode(u,n.omit(e,"rowKey"),{default:()=>{var f;return[n.map(n.get(c,g),(l,d)=>r.createVNode(Yt,{key:l[e.rowKey]||d,pathList:[...g,d]},{default:()=>{var h,m,p;return[r.createVNode("div",{class:"pro-form-list-item"},[(h=t.default)==null?void 0:h.call(t),!s.value&&r.createVNode(r.Fragment,null,[r.createVNode("div",{class:"pro-form-list-item-add",onClick:y},[(m=t.itemAdd)==null?void 0:m.call(t)]),r.createVNode("div",{class:"pro-form-list-item-minus",onClick:()=>P(d)},[(p=t.itemMinus)==null?void 0:p.call(t)])])])]}})),!s.value&&r.createVNode("div",{class:"pro-form-list-add",onClick:y},[(f=t.add)==null?void 0:f.call(t)])]}}):null}}),lt=Symbol("pro-form"),be=()=>r.inject(lt),tn=e=>{r.provide(lt,e)};exports.FormAction=void 0;(function(e){e.RESET="RESET",e.SUBMIT="SUBMIT",e.CONTINUE="CONTINUE"})(exports.FormAction||(exports.FormAction={}));const Me=()=>({clsName:{type:String,default:"pro-form"},model:{type:Object},readonly:{type:Boolean,default:void 0},showState:{type:Object},showStateRules:{type:Object},readonlyState:{type:Object},readonlyStateRules:{type:Object},disableState:{type:Object},disableStateRules:{type:Object},needRules:{type:Boolean,default:!0},provideExtra:{type:Object},operate:{type:Object},submitLoading:{type:Boolean},formMethods:{type:Array}}),dt=r.defineComponent({inheritAttrs:!1,props:{...z,...Me(),...n.omit(Z.props,"items")},setup:(e,{slots:t,emit:o,expose:u,attrs:c})=>{const{elementMap:s,formElementMap:a}=w(),i=e.elementMap||s,g=e.formElementMap||a,y=e.model||r.reactive({}),P=e.showState||r.reactive({}),f=e.readonlyState||r.reactive({}),l=e.disableState||r.reactive({});F.useEffect(()=>{e.showStateRules&&n.forEach(e.showStateRules,(N,C)=>{P[C]=N(y)}),e.readonlyStateRules&&n.forEach(e.readonlyStateRules,(N,C)=>{f[C]=N(y)}),e.disableStateRules&&n.forEach(e.disableStateRules,(N,C)=>{l[C]=N(y)})},y);const d=r.computed(()=>e.readonly),h=r.computed(()=>J(e.columns,e.columnState,N=>q(N))),m=N=>{const C=ut(N,P,e.showStateRules);o("finish",C,N)},p=r.ref();u(U(e.formMethods||[],p)),tn({formState:y,showState:P,readonlyState:f,disableState:l,elementMap:i,formElementMap:g,readonly:d,columns:h,formRef:p,...e.provideExtra});const S=[{value:exports.FormAction.RESET,label:"\u91CD\u7F6E"},{value:exports.FormAction.SUBMIT,label:"\u63D0\u4EA4",extraProps:{type:"primary"}}],b=r.computed(()=>{const N=e.operate,C=(N==null?void 0:N.items)||S;return n.map(C,M=>(!M.onClick&&!n.get(N==null?void 0:N.itemState,[M.value,"onClick"])&&(M.value===exports.FormAction.RESET?M.onClick=()=>{var A;if(N!=null&&N.onReset){N.onReset();return}(A=p.value)==null||A.resetFields()}:M.value===exports.FormAction.SUBMIT?M.onClick=()=>{var A;if(N!=null&&N.onSubmit){N.onSubmit();return}(A=p.value)==null||A.submit()}:M.value===exports.FormAction.CONTINUE&&(N==null?void 0:N.onContinue)&&(M.onClick=()=>{N.onContinue()})),M.value===exports.FormAction.SUBMIT&&!n.has(M,"loading")&&(M.loading=e.submitLoading),M))}),v=N=>{const C=q(N);return C&&t[C]?t[C](N,y):me(g,N,e.needRules)};Pe({});const D=n.keys(Me()),T=n.keys(n.omit(Z.props,"items")),x=n.get(s,nt);return()=>x?r.createVNode(x,r.mergeProps({ref:p,class:e.clsName},n.omit(c,"onFinish"),n.omit(e,...D,...T,"onFinish","operate"),{model:y,onFinish:m}),{default:()=>{var N,C,M;return[(N=t.start)==null?void 0:N.call(t),g&&n.size(h.value)>0&&r.createVNode(r.Fragment,null,[e.row?r.createVNode(Z,{row:e.row,col:e.col,items:n.map(h.value,A=>({rowKey:q(A),vNode:v(A),col:n.get(A,["extra","col"])}))},null):n.map(h.value,A=>v(A))]),(C=t.default)==null?void 0:C.call(t),e.operate&&r.createVNode(Se,r.mergeProps({clsName:"pro-form-operate",items:b.value},n.omit(e.operate,"items","onReset","onSubmit","onContinue")),null),(M=t.end)==null?void 0:M.call(t)]}}):null}});exports.SearchMode=void 0;(function(e){e.AUTO="AUTO",e.MANUAL="MANUAL"})(exports.SearchMode||(exports.SearchMode={}));const Ie=()=>({initEmit:{type:Boolean,default:!0},searchMode:{type:String,default:exports.SearchMode.AUTO},debounceKeys:{type:Array},debounceTypes:{type:Array,default:["text"]},debounceTime:{type:Number,default:800}}),nn=r.defineComponent({props:{...Ie(),needRules:{type:Boolean,default:!1}},setup:(e,{slots:t,expose:o})=>{const c=R()(at),s=e.model||r.reactive({}),a=new Set(e.debounceTypes),i=n.map(n.filter(e.columns,h=>{const m=de(h);return a.has(m)}),h=>q(h)),g=r.ref(),y=e.formMethods||[];o(U(y,g));const P=()=>{var h;(h=g.value)==null||h.submit()},f=n.debounce(()=>{P()},e.debounceTime);F.useEffect(()=>{e.initEmit&&P()},[]);const l=(h,m,p)=>n.some(p,S=>n.get(h,S)!==n.get(m,S));F.useWatch((h,m)=>{if(e.searchMode!==exports.SearchMode.AUTO)return;const p=n.size(e.debounceKeys)>0?e.debounceKeys:i;if(n.size(p)>0&&l(h,m,p)){f();return}P()},()=>n.clone(s));const d=n.keys(n.omit(Ie(),"columns"));return()=>c?r.createVNode(c,r.mergeProps({ref:g},n.omit(e,d),{model:s}),t):null}}),Fe=()=>({readonly:{type:Boolean,default:void 0},fieldProps:{type:Object},showProps:{type:Object},slots:{type:Object}}),rn=(e,t)=>({InputComp:o,valueType:u,name:c})=>r.defineComponent({name:c,props:{...e.props,...Fe()},setup:(s,{slots:a})=>{const{formState:i,showState:g,readonlyState:y,disableState:P,readonly:f,elementMap:l}=be(),d=he(),h=r.computed(()=>n.isBoolean(s.readonly)?s.readonly:n.isBoolean(y[s.name])?y[s.name]:f.value),m=ge(s.name),p=d!=null&&d.pathList?[...d.pathList,...m]:m,S=v=>{n.set(i,p,v)},b=n.keys(Fe());return()=>{const v=n.get(g,p);if(n.isBoolean(v)&&!v)return null;const D=n.get(i,p),T=n.get(l,u);return r.createVNode(e,r.mergeProps(n.omit(s,...b,"name","slots"),{name:p}),{default:()=>[h.value?r.createVNode(r.Fragment,null,[T?r.createVNode(T,r.mergeProps({value:D},s.fieldProps,{showProps:s.showProps}),a):r.createVNode("span",null,[D])]):r.createVNode(o,r.mergeProps(t(D,S,n.get(P,p)),s.fieldProps),a)],...s.slots})}}});function on(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!r.isVNode(e)}const an=()=>({clsName:{type:String,default:"pro-operate"},items:{type:Array},itemState:{type:Object},elementKey:{type:String,default:Xe}}),Se=r.defineComponent({props:{...an()},setup:(e,{slots:t})=>{const o=R(),u=e.elementKey?o(e.elementKey):void 0,c=r.computed(()=>{const a=n.filter(e.items,i=>n.isFunction(i.show)?i.show():n.isBoolean(i.show)?i.show:!0);return n.map(a,i=>n.has(e.itemState,i.value)?{...i,...n.get(e.itemState,i.value)}:i)}),s=a=>{var i;(i=a.onClick)==null||i.call(a,a.value)};return()=>r.createVNode("div",{class:e.clsName},[n.map(c.value,a=>{const i=n.isFunction(a.disabled)?a.disabled():a.disabled,g=n.isFunction(a.loading)?a.loading():a.loading,y=n.isFunction(a.label)?a.label():a.label,P=n.isFunction(a.extraProps)?a.extraProps():a.extraProps,f={...n.omit(a,"show","disabled","element"),disabled:i};return a.element&&n.isFunction(a.element)?a.element(f):t[a.value]?t[a.value](f):u?r.createVNode(u,r.mergeProps({disabled:i,loading:g,onClick:()=>s(a)},P),on(y)?y:{default:()=>[y]}):r.createVNode("div",{class:`${e.clsName}-item`,onClick:()=>s(a)},[y])})])}}),sn=()=>({clsName:{type:String,default:"pro-table-toolbar-column"},signName:{type:String,default:"columnSetting"},popoverProps:Object}),cn=r.defineComponent({props:{...sn()},setup:(e,{slots:t})=>{const o=R(),u=o(Ze),c=o(et),{originColumns:s,state:a}=pt(),[i,g]=F.useUpdateKey();F.useWatch(()=>{g()},()=>a.selectIds);const y=r.computed(()=>n.reduce(a.selectIds,(m,p)=>({...m,[p]:!0}),{})),P=m=>ye(m,e.signName),f=r.computed(()=>{const m=n.every(s.value,S=>{const b=P(S);return b!=null&&b.disabled?!0:n.get(y.value,S.dataIndex)}),p=n.some(s.value,S=>{const b=P(S);return b!=null&&b.disabled?!0:n.get(y.value,S.dataIndex)});return{checked:m,indeterminate:m?!1:p}}),l=m=>{var S;(n.isObject(m)?(S=m.target)==null?void 0:S.checked:m)?a.selectIds=n.map(s.value,b=>b.dataIndex):a.selectIds=n.map(n.filter(s.value,b=>{var v;return!!((v=P(b))!=null&&v.disabled)}),b=>b.dataIndex)},d=()=>{a.selectIds=n.map(n.filter(s.value,m=>{var p;return((p=P(m))==null?void 0:p.initShow)!==!1}),m=>m.dataIndex)},h=(m,p)=>{var b;(n.isObject(p)?(b=p.target)==null?void 0:b.checked:p)?a.selectIds=[...a.selectIds,m.dataIndex]:a.selectIds=n.filter(a.selectIds,v=>m.dataIndex!==v)};return()=>u?r.createVNode(u,r.mergeProps({trigger:"click"},e.popoverProps),{default:()=>{var m;return[((m=t.default)==null?void 0:m.call(t))||"\u5217\u8BBE\u7F6E"]},content:()=>r.createVNode("div",{class:`${e.clsName}`},[r.createVNode("div",{class:`${e.clsName}-header`},[r.createVNode(c,{checked:f.value.checked,indeterminate:f.value.indeterminate,onChange:l},{default:()=>[r.createTextVNode("\u5217\u5C55\u793A")]}),r.createVNode("a",{onClick:d},[r.createTextVNode("\u91CD\u7F6E")])]),r.createVNode("div",{key:i.value,class:`${e.clsName}-list`},[n.map(s.value,m=>{const p=P(m);return r.createVNode(c,{checked:n.get(y.value,m.dataIndex,!1),disabled:p==null?void 0:p.disabled,onChange:S=>{h(m,S)}},{default:()=>[m.title]})})])]),...n.omit(t,"default")}):null}}),mt=Symbol("pro-table"),pt=()=>r.inject(mt),un=e=>{r.provide(mt,e)},De=()=>({clsName:{type:String,default:"pro-table"},operate:{type:Object},columnEmptyText:{type:String},column:{type:Object},serialNumber:{type:[Boolean,Object]},paginationState:{type:Object},toolbar:{type:Object},provideExtra:{type:Object},tableMethods:{type:Array}}),ln=r.defineComponent({inheritAttrs:!1,props:{...z,...De()},setup:(e,{slots:t,expose:o,attrs:u})=>{const{elementMap:c}=w(),s=e.elementMap||c,a=n.get(c,ot),i=()=>({title:"\u5E8F\u53F7",dataIndex:"serialNumber",width:80,...e.column,...n.isBoolean(e.serialNumber)?void 0:e.serialNumber,customRender:({index:p})=>{var S,b;return((S=e.paginationState)==null?void 0:S.page)&&((b=e.paginationState)==null?void 0:b.pageSize)?e.paginationState.pageSize*(e.paginationState.page-1)+p+1:p+1}}),g=()=>{const p=e.operate,S=n.map(p.items,v=>({...v,...n.get(p.itemState,v.value)})),b=n.sortBy(S,v=>v.sort);return{...e.column,title:"\u64CD\u4F5C",dataIndex:"operate",fixed:"right",...p.column,customRender:({record:v})=>{const D=n.map(b,T=>({value:T.value,label:T.label,show:n.isFunction(T.show)?T.show(v):T.show,disabled:n.isFunction(T.disabled)?T.disabled(v):T.disabled,loading:n.isFunction(T.loading)?T.loading(v):T.loading,extraProps:n.isFunction(T.extraProps)?T.extraProps(v):T.extraProps,onClick:()=>{var x;(x=T.onClick)==null||x.call(T,v)},element:n.isFunction(T.element)?()=>T.element(v,T):T.element}));return r.createVNode(Se,{clsName:p.clsName||`${e.clsName}-operate`,items:D,elementKey:p.elementKey},null)}}},y=()=>{var b,v;const p=((v=(b=e.toolbar)==null?void 0:b.columnSetting)==null?void 0:v.signName)||"columnSetting",S=n.filter(e.columns,D=>{var T;return((T=ye(D,p))==null?void 0:T.initShow)!==!1});return e.serialNumber&&S.unshift(i()),n.map(S,D=>D.dataIndex)},P=r.reactive({selectIds:y()}),f=r.toRef(e,"columns"),l=r.computed(()=>{const p=n.reduce(P.selectIds,(S,b)=>({...S,[b]:!0}),{});return n.filter(e.columns,S=>n.get(p,S.dataIndex))}),d=r.computed(()=>{const p=J(l.value,e.columnState,b=>b.dataIndex),S=n.map(p,b=>{const v={...e.column,...b};return b.customRender||(v.customRender=({text:D})=>re(s,{...b,showProps:{...b.showProps,content:e.columnEmptyText}},D)||D||e.columnEmptyText),v});return e.serialNumber&&S.unshift(i()),e.operate&&e.operate.items&&n.some(e.operate.items,b=>b.show)&&S.push(g()),S}),h=r.ref();un({columns:d,originColumns:f,state:P,tableRef:h,toolbar:e.toolbar,...e.provideExtra}),o(U(e.tableMethods||[],h));const m=n.keys(De());return()=>{var S,b,v;if(!a)return null;const p=t.toolbar?t.toolbar():void 0;return r.createVNode("div",r.mergeProps({class:e.clsName},n.pick(u,"class")),[(p||((S=e.toolbar)==null?void 0:S.columnSetting))&&r.createVNode("div",{class:`${e.clsName}-toolbar`},[p,((b=e.toolbar)==null?void 0:b.columnSetting)&&r.createVNode(cn,(v=e.toolbar)==null?void 0:v.columnSetting,null)]),r.createVNode(a,r.mergeProps({ref:h},n.omit(u,"class"),n.omit(e,m),{columns:d.value}),t)])}}}),dn=()=>({title:{type:String},subTitle:{type:String},showBack:Boolean,hideWhileNoHistory:{type:Boolean,default:!0}}),ee=r.defineComponent({props:{...dn()},setup:(e,{slots:t,emit:o})=>()=>{var c,s,a,i;const u=e.hideWhileNoHistory&&((s=(c=window.history)==null?void 0:c.state)==null?void 0:s.back)||e.hideWhileNoHistory===!1;return r.createVNode("div",{class:"pro-page-header"},[e.showBack&&u&&r.createVNode("div",{class:"pro-page-header-back",onClick:()=>{o("back")}},[t.backIcon?t.backIcon():"\u8FD4\u56DE"]),r.createVNode("div",{class:"pro-page-header-title"},[t.title?t.title():e.title]),r.createVNode("div",{class:"pro-page-header-sub-title"},[t.subTitle?t.subTitle():e.subTitle]),r.createVNode("div",{class:"pro-page-header-space"},[(a=t.space)==null?void 0:a.call(t)]),r.createVNode("div",{class:"pro-page-header-extra"},[(i=t.extra)==null?void 0:i.call(t)])])}}),mn=()=>({loading:{type:Boolean,default:!1},loadingOpts:Object,fillMode:{type:Boolean,default:!0}}),pn=r.defineComponent({props:{...ee.props,...mn()},setup:(e,{slots:t,emit:o})=>{const c=R()(fe),s=r.ref(),a=r.ref(0);F.useResizeObserver(s,g=>{var P;const y=(P=g[0])==null?void 0:P.contentRect;a.value=y==null?void 0:y.height});const i=n.keys(ee.props);return()=>{var P,f,l;const g=e.title||t.title||e.subTitle||t.subTitle||t.extra,y=!!t.footer;return r.createVNode("div",{class:"pro-page"},[g&&r.createVNode(ee,r.mergeProps(n.pick(e,i),{onBack:()=>{o("back")}}),n.pick(t,"backIcon","title","subTitle","space","extra")),e.loading&&c?r.createVNode(c,r.mergeProps({loading:!0},e.loadingOpts),{default:()=>[r.createVNode("div",{class:"pro-loading-dom"},null)]}):r.createVNode("div",{ref:s,style:a.value>0?`height:${a.value>0}`:"",class:"pro-page-content"},[e.fillMode?r.createVNode(r.Fragment,null,[a.value>0&&((P=t.default)==null?void 0:P.call(t))]):(f=t.default)==null?void 0:f.call(t)]),!e.loading&&y&&r.createVNode("div",{class:"pro-page-footer"},[(l=t.footer)==null?void 0:l.call(t)])])}}}),ft=Object.freeze({page:1,pageSize:10}),fn=()=>({clsName:{type:String,default:"pro-list"},searchProps:{type:Object},tableProps:{type:Object},paginationProps:{type:Object},pageState:{type:Object}}),ie=r.defineComponent({props:{...fn()},setup:(e,{slots:t,emit:o})=>{const u=R(),c=u(st),s=u(ct),a=u(Ye),i=e.pageState||r.reactive({...ft});let g;const y=()=>{o("search",{...g,...i})},P=(m,p)=>{g=m,i.page=p||1,y()},f=(m,p)=>{i.page=m,i.pageSize=p,y()},l=B(t,"search"),d=B(t,"table"),h=B(t,"pagination");return()=>{var m,p,S,b;return r.createVNode(r.Fragment,null,[(m=t.start)==null?void 0:m.call(t),t.search?t.search({executeSearchWithResetPage:P,pageState:i}):r.createVNode(r.Fragment,null,[c?r.createVNode(c,r.mergeProps({clsName:`${e.clsName}-search`},n.omit(e.searchProps,"onFinish"),{onFinish:v=>P(v)}),l):null]),(p=t.divide)==null?void 0:p.call(t),t.table?t.table():r.createVNode(r.Fragment,null,[r.createVNode(r.Fragment,null,[s?r.createVNode(s,r.mergeProps({clsName:`${e.clsName}-table`,paginationState:{page:i.page,pageSize:i.pageSize}},e.tableProps),d):null])]),(S=t.divide2)==null?void 0:S.call(t),t.pagination?t.pagination({executePageChange:f,pageState:i}):r.createVNode(r.Fragment,null,[a?r.createVNode(a,r.mergeProps({clsName:`${e.clsName}-pagination`},n.omit(e.paginationProps,"onChange"),{page:i.page,pageSize:i.pageSize,onComposeChange:f}),h):null]),(b=t.end)==null?void 0:b.call(t)])}}}),Ae=()=>({clsName:{type:String,default:"pro-desc"},model:{type:Object}}),gt=r.defineComponent({props:{...z,...Ae()},setup:(e,{slots:t})=>{const{elementMap:o}=w(),u=e.elementMap||o,c=R(),s=c(Je),a=c(Qe),i=r.computed(()=>J(e.columns,e.columnState,"dataIndex")),g=n.map(e.columns,l=>l.dataIndex),y=n.omit(t,...g,...n.map(g,l=>l+"Label")),P=n.keys(z),f=n.keys(Ae());return()=>!s||!a?null:r.createVNode(s,r.mergeProps({class:e.clsName},n.omit(e,...P,...f,"model")),{default:()=>[n.map(i.value,l=>{const d=l.dataIndex,h=n.get(e.model,d);return r.createVNode(a,r.mergeProps({class:`${e.clsName}-item`},n.get(l.extra,"desc"),{label:t[`${d}Label`]?t[`${d}Label`]():l.title}),{default:()=>[t[d]?t[d]():re(u,l,h)]})})],...y})}}),yt=Symbol("pro-curd"),O=()=>r.inject(yt),ht=e=>r.provide(yt,e);var E=(e=>(e.LIST="LIST",e.DETAIL="DETAIL",e.ADD="ADD",e.EDIT="EDIT",e.DELETE="DELETE",e))(E||{}),I=(e=>(e.EMIT="EMIT",e.EXECUTE="EXECUTE",e.PAGE="PAGE",e.SUCCESS="SUCCESS",e.FAIL="FAIL",e))(I||{}),j=(e=>(e.ADD="ADD",e.EDIT="EDIT",e.DETAIL="DETAIL",e))(j||{}),W=(e=>(e.NORMAL="NORMAL",e.CONTINUE="CONTINUE",e))(W||{});const gn=()=>({rowKey:{type:String,default:"id"},operates:{type:Array},listProps:{type:Object},formProps:{type:Object},descProps:{type:Object},modalProps:{type:Object}}),ve=["sendCurdEvent","refreshList","sendEvent","sendRequest"],Le=r.defineComponent({props:{...z,...gn()},setup:(e,{slots:t,expose:o})=>{const{elementMap:u,state:c,sendEvent:s,sendRequest:a}=H(),i=r.computed(()=>J(e.columns,e.columnState,C=>q(C))),g=(C,M=!0)=>me(e.formElementMap,C,M),y=(C,M)=>re(u,C,M),P=(C,M)=>{const A=n.filter(i.value,L=>{const V=n.get(L,["extra",C])||n.get(L,C);return M?V!==!1:V});return n.sortBy(A,L=>n.get(L,["extra",`${C}Sort`])||n.get(L,`${C}Sort`))},f=r.computed(()=>P("form",!0)),l=r.computed(()=>P("detail",!0)),d=r.computed(()=>P("table",!0)),h=r.computed(()=>P("search"));let m;const p=C=>{a(E.LIST,{...m,...C})},S=C=>{s({type:C.action,payload:n.omit(C,"action","source"),source:C.source})};ae(({type:C,payload:M,source:A})=>{if(A)return;let L=C,V=M==null?void 0:M.type;L===_.Success&&(L=n.get(M,["requestOpts","action"]),V=I.SUCCESS);const{values:Q,record:St}=M;switch(L){case E.LIST:V===I.EMIT&&(m=Q,p());return;case E.ADD:V===I.EXECUTE&&a(E.ADD,Q,c.detailData);return;case E.EDIT:V===I.EXECUTE&&a(E.EDIT,Q,c.detailData);return;case E.DELETE:V===I.EMIT?a(E.DELETE,St,e.rowKey):V===I.SUCCESS&&p();return}L&&C===I.EXECUTE&&a(L,Q)});const b=n.reduce(e.operates,(C,M)=>({...C,[M.action]:M}),{}),v=C=>n.get(b,C),D=r.computed(()=>e.listProps),T=r.computed(()=>e.formProps),x=r.computed(()=>e.descProps),N=r.computed(()=>e.modalProps);return ht({columns:i,getSignColumns:P,getFormItemVNode:g,getItemVNode:y,elementMap:u,formElementMap:e.formElementMap,rowKey:e.rowKey,curdState:c,formColumns:f,descColumns:l,tableColumns:d,searchColumns:h,sendCurdEvent:S,operates:e.operates,getOperate:v,refreshList:p,listProps:D,formProps:T,descProps:x,modalProps:N}),o({sendCurdEvent:S,refreshList:p}),()=>{var C;return(C=t.default)==null?void 0:C.call(t)}}}),X=r.defineComponent({props:{...n.omit(Y.props,"state","requests"),...Le.props,curdState:{type:Object}},setup:(e,{slots:t,expose:o})=>{const{elementMap:u,formElementMap:c}=w(),s=r.ref(),a=r.ref(),i=e.curdState||r.reactive({detailData:{}}),g={[E.LIST]:{convertParams:l=>l,convertData:l=>{var d;return(d=l.res)==null?void 0:d.data},loadingName:"listLoading",stateName:"listData"},[E.DETAIL]:{convertParams:(l,d)=>n.pick(l,d),convertData:l=>{var d;return(d=l.res)==null?void 0:d.data},loadingName:"detailLoading",stateName:"detailData",label:"\u8BE6\u60C5"},[E.ADD]:{convertParams:(l,d)=>({body:{...d,...l}}),loadingName:"operateLoading",label:"\u6DFB\u52A0"},[E.EDIT]:{convertParams:(l,d)=>({body:{...d,...l}}),loadingName:"operateLoading",label:"\u7F16\u8F91"},[E.DELETE]:{convertParams:(l,d)=>n.pick(l,d),label:"\u5220\u9664"}},y=n.map(e.operates,l=>({...n.get(g,l.action),...l})),P=n.filter(y,l=>l.actor),f=n.keys(n.omit(Y.props,"state","requests"));return o({sendCurdEvent:l=>{var d;(d=a.value)==null||d.sendCurdEvent(l)},refreshList:l=>{var d;(d=a.value)==null||d.refreshList(l)},sendEvent:l=>{var d;(d=s.value)==null||d.sendEvent(l)},sendRequest:(l,...d)=>{var h;(h=s.value)==null||h.sendRequest(l,...d)}}),()=>r.createVNode(Y,r.mergeProps({ref:s},n.pick(e,f),{elementMap:e.elementMap||u,state:i,requests:P}),{default:()=>[r.createVNode(Le,r.mergeProps({ref:a},n.omit(e,...f,"curdState","operates"),{formElementMap:e.formElementMap||c,operates:y}),t)]})}}),yn=()=>({defaultAddRecord:{type:Object}}),ce=r.defineComponent({props:{...yn()},setup:e=>{var d;const{dispatch:t,sendRequest:o}=H(),{rowKey:u,curdState:c,listProps:s,getOperate:a,refreshList:i}=O(),g=(d=s==null?void 0:s.value)==null?void 0:d.pageState,y=h=>{const m=a(E.DETAIL);m!=null&&m.actor?o(E.DETAIL,h,u):t({type:"detailData",payload:n.cloneDeep(h)})},P=(h,{record:m})=>{h===I.EMIT&&(t({type:"mode",payload:j.DETAIL}),y(m))},f=h=>{h===I.EMIT?(t({type:"mode",payload:j.ADD}),t({type:"detailData",payload:e.defaultAddRecord||{}})):h===I.SUCCESS&&(g&&(g.page=1),i(),c.addAction===W.CONTINUE?t({type:"detailData",payload:e.defaultAddRecord||{}}):t({type:"mode",payload:void 0}))},l=(h,{record:m})=>{h===I.EMIT?(t({type:"mode",payload:j.EDIT}),y(m)):h===I.SUCCESS&&(t({type:"mode",payload:void 0}),i())};return ae(({type:h,payload:m,source:p})=>{if(p)return;let S=h,b=m==null?void 0:m.type;const v=m==null?void 0:m.record;switch(S===_.Success&&(S=n.get(m,["requestOpts","action"]),b=I.SUCCESS),S){case E.DETAIL:P(b,{record:v});break;case E.ADD:f(b);break;case E.EDIT:l(b,{record:v});break}}),()=>null}}),hn=r.defineComponent({props:{...X.props,...ce.props},setup:(e,{slots:t,expose:o})=>{const u=r.ref();o(U(ve,u));const c=n.keys(ce.props);return()=>r.createVNode(X,r.mergeProps({ref:u},n.omit(e,c)),{default:()=>{var s;return[r.createVNode(ce,n.pick(e,c),null),(s=t.default)==null?void 0:s.call(t)]}})}}),Pn=()=>({defaultAddRecord:{type:Object},routeBack:{type:Function}}),ue=r.defineComponent({props:{...Pn()},setup:e=>{const t=Ne.useRouter(),o=Ne.useRoute(),{dispatch:u,sendRequest:c}=H(),{rowKey:s,curdState:a}=O(),i=f=>{f===I.PAGE&&(u({type:"mode",payload:void 0}),u({type:"detailData",payload:{}}),u({type:"detailLoading",payload:!1}),u({type:"addAction",payload:void 0}))},g=(f,{record:l})=>{f===I.EMIT?t.push({path:`${o.path}/detail`,query:n.pick(l,s)}):f===I.PAGE&&(u({type:"mode",payload:j.DETAIL}),c(E.DETAIL,o.query,s))},y=f=>{f===I.EMIT?t.push({path:`${o.path}/add`}):f===I.PAGE?(u({type:"mode",payload:j.ADD}),u({type:"detailData",payload:e.defaultAddRecord||{}})):f===I.SUCCESS&&(a.addAction===W.CONTINUE?u({type:"detailData",payload:e.defaultAddRecord||{}}):e.routeBack?e.routeBack(E.ADD):t.go(-1))},P=(f,{record:l})=>{f===I.EMIT?t.push({path:`${o.path}/edit`,query:n.pick(l,s)}):f===I.PAGE?(u({type:"mode",payload:j.EDIT}),c(E.DETAIL,o.query,s)):f===I.SUCCESS&&(e.routeBack?e.routeBack(E.EDIT):t.go(-1))};return ae(({type:f,payload:l,source:d})=>{if(d)return;let h=f,m=l==null?void 0:l.type;const p=l==null?void 0:l.record;switch(h===_.Success&&(h=n.get(l,["requestOpts","action"]),m=I.SUCCESS),h){case E.LIST:i(m);break;case E.DETAIL:g(m,{record:p});break;case E.ADD:y(m);break;case E.EDIT:P(m,{record:p});break}}),()=>null}}),bn=r.defineComponent({props:{...X.props,...ue.props},setup:(e,{slots:t,expose:o})=>{const u=r.ref();o(U(ve,u));const c=n.keys(ue.props);return()=>r.createVNode(X,r.mergeProps({ref:u},n.omit(e,c)),{default:()=>{var s;return[r.createVNode(ue,n.pick(e,c),null),(s=t.default)==null?void 0:s.call(t)]}})}}),Pt=r.defineComponent({props:{...ie.props,clsName:{type:String,default:"pro-curd-list"}},setup:(e,{slots:t})=>{const{elementMap:o,formElementMap:u,curdState:c,searchColumns:s,tableColumns:a,sendCurdEvent:i,operates:g}=O(),y=n.map(n.filter(g,f=>{const l=f.action;return l===E.DETAIL||l===E.EDIT||l===E.DELETE||f.tableOperate}),f=>{const l={...n.pick(f,"label","show","disabled","loading","extraProps","onClick","element"),value:f.action};return l.onClick||(l.onClick=d=>{i({action:f.action,type:I.EMIT,record:d})}),l}),P=f=>{i({action:E.LIST,type:I.EMIT,values:f})};return()=>{var S,b;const f=e.searchProps,l={formElementMap:u,columns:s.value,...f},d=e.tableProps,h={elementMap:o,columns:a.value,loading:c.listLoading,dataSource:(S=c.listData)==null?void 0:S.dataSource,...n.omit(d,"operate"),operate:{items:y,...d==null?void 0:d.operate}},m=e.paginationProps,p={total:(b=c.listData)==null?void 0:b.total,...m};return r.createVNode(ie,r.mergeProps(n.omit(e,"searchProps","tableProps","paginationProps"),{searchProps:l,tableProps:h,paginationProps:p,onSearch:P}),{...t,search:t.search?v=>t.search(v,l):void 0,pagination:t.pagination?v=>t.pagination(v,p):void 0})}}}),Sn=r.defineComponent(()=>{const{listProps:e}=O();return()=>r.createVNode(Pt,n.omit(e==null?void 0:e.value,"slots"),n.get(e==null?void 0:e.value,"slots"))}),vn=()=>({clsName:{type:String,default:"pro-curd-form"},signName:{type:String}}),se=r.defineComponent({props:{...vn()},setup:(e,{slots:t,expose:o,attrs:u})=>{const{elementMap:c,formElementMap:s,curdState:a,formColumns:i,getSignColumns:g,sendCurdEvent:y}=O(),P=r.ref();o(U(e.formMethods||[],P));const f=r.computed(()=>e.signName?g(e.signName):i.value),l=()=>{var p;a.addAction=W.NORMAL,(p=P.value)==null||p.submit()},d=()=>{var p;a.addAction=W.CONTINUE,(p=P.value)==null||p.submit()},h=[{value:exports.FormAction.RESET,label:"\u91CD\u7F6E"},{value:exports.FormAction.SUBMIT,label:"\u63D0\u4EA4",extraProps:{type:"primary"}},{value:exports.FormAction.CONTINUE,label:"\u786E\u5B9A\u5E76\u7EE7\u7EED",extraProps:{type:"primary"},show:!1}],m=p=>{u.onFinish||(a.mode===E.EDIT?y({action:E.EDIT,type:I.EXECUTE,values:p}):y({action:E.ADD,type:I.EXECUTE,values:p}))};return()=>r.createVNode(dt,r.mergeProps({ref:P},n.omit(e,"operate"),{elementMap:e.elementMap||c,formElementMap:e.formElementMap||s,columns:e.columns||f.value,readonly:a.mode===E.DETAIL,model:e.model||a.detailData,hideRequiredMark:a.mode===E.DETAIL,operate:e.operate?{items:h,onSubmit:l,onContinue:d,...e.operate}:void 0,onFinish:m}),t)}}),Cn=r.defineComponent(()=>{const{formProps:e}=O();return()=>r.createVNode(se,n.omit(e==null?void 0:e.value,"slots"),n.get(e==null?void 0:e.value,"slots"))}),En=()=>({clsName:{type:String,default:"pro-curd-desc"},signName:{type:String}}),bt=r.defineComponent({props:{...En()},setup:(e,{slots:t})=>{const{curdState:o,descColumns:u,getSignColumns:c}=O(),s=r.computed(()=>e.signName?c(e.signName):u.value);return()=>r.createVNode(gt,r.mergeProps(n.omit(e,"signName","model","columns"),{model:e.model||o.detailData,columns:s.value}),t)}}),Nn=r.defineComponent(()=>{const{descProps:e}=O();return()=>r.createVNode(bt,n.omit(e==null?void 0:e.value,"slots"),n.get(e==null?void 0:e.value,"slots"))}),ke=()=>({clsName:{type:String,default:"pro-curd-modal"},validMode:{type:Array,default:[E.ADD,E.DETAIL,E.EDIT]}}),Ce=r.defineComponent({props:{...ke()},setup:(e,{slots:t})=>{const o=R(),u=o(tt),c=o(fe),{curdState:s,getOperate:a}=O(),i=()=>{s.mode=void 0,F.setReactiveValue(s.detailData,{}),s.detailLoading=!1,s.addAction=void 0},g=n.keys(ke());return()=>{var P;const y=s.mode;return!n.some(e.validMode,f=>f===y)||!u?null:r.createVNode(u,r.mergeProps(n.omit(e,g),{visible:n.some(e.validMode,f=>f===y),title:e.title||((P=a(s.mode))==null?void 0:P.label),confirmLoading:s.operateLoading,maskClosable:s.mode===E.DETAIL,onCancel:i}),{default:()=>{var f;return[s.detailLoading&&c?r.createVNode(c,{loading:!0},{default:()=>[r.createVNode("div",{class:`${e.clsName}-loading-dom`},null)]}):(f=t.default)==null?void 0:f.call(t)]},...n.omit(t,"default")})}}}),Tn=r.defineComponent({props:{modalProps:Object,formProps:Object},setup:(e,{slots:t})=>{const o=r.ref(),u=B(t,"modal"),c=B(t,"form");return()=>r.createVNode(Ce,r.mergeProps(e.modalProps,{onOk:()=>{var s;(s=o.value)==null||s.submit()}}),{default:()=>[r.createVNode(se,r.mergeProps({ref:o},e.formProps),c)],...u})}}),Mn=r.defineComponent(()=>{const{modalProps:e,formProps:t}=O(),o=r.ref();return()=>r.createVNode(Ce,r.mergeProps(n.omit(e,"slots"),{onOk:()=>{var u;(u=o.value)==null||u.submit()}}),{default:()=>[r.createVNode(se,r.mergeProps({ref:o},n.omit(t,"slots")),n.get(t,"slots"))],...n.get(e,"slots")})});exports.ButtonKey=Xe;exports.CheckboxKey=et;exports.ColKey=He;exports.CurdAction=E;exports.CurdAddAction=W;exports.CurdCurrentMode=j;exports.CurdMethods=ve;exports.CurdSubAction=I;exports.DescriptionsItemKey=Qe;exports.DescriptionsKey=Je;exports.FormItemKey=rt;exports.FormKey=nt;exports.LoadingKey=fe;exports.LogonUser=Ht;exports.LogonUserKey=pe;exports.ModalKey=tt;exports.MustLogon=_t;exports.PageHeader=ee;exports.PaginationKey=Ye;exports.PopoverKey=Ze;exports.ProConfig=Tt;exports.ProCurd=X;exports.ProCurdDesc=bt;exports.ProCurdDescConnect=Nn;exports.ProCurdForm=se;exports.ProCurdFormConnect=Cn;exports.ProCurdList=Pt;exports.ProCurdListConnect=Sn;exports.ProCurdModal=Ce;exports.ProCurdModalForm=Tn;exports.ProCurdModalFormConnect=Mn;exports.ProDesc=gt;exports.ProForm=dt;exports.ProFormKey=at;exports.ProFormList=en;exports.ProGrid=Z;exports.ProList=ie;exports.ProModalCurd=hn;exports.ProModule=Y;exports.ProOperate=Se;exports.ProPage=pn;exports.ProPageCurd=bn;exports.ProSearchForm=nn;exports.ProSearchFormKey=st;exports.ProTable=ln;exports.ProTableKey=ct;exports.RequestAction=_;exports.RowKey=We;exports.TableKey=ot;exports.Wrapper=Ue;exports.convertPathToList=ge;exports.convertResData=we;exports.createExpose=U;exports.createExposeObj=Qt;exports.createFormItemCompFn=rn;exports.createProConfig=Mt;exports.defaultPage=ft;exports.filterSlotsByPrefix=B;exports.getColumnFormItemName=q;exports.getColumnValueType=de;exports.getFirstPropName=qe;exports.getFormItemEl=me;exports.getItemEl=re;exports.getSignValue=ye;exports.getValidValues=ut;exports.mergeStateToList=J;exports.proBaseProps=z;exports.provideProCurd=ht;exports.provideProFormList=Pe;exports.provideProModule=ze;exports.renderElement=G;exports.renderElements=oe;exports.useAccess=_e;exports.useAccessMgr=Gt;exports.useComposeRequestActor=Ke;exports.useDispatchMeta=qt;exports.useDispatchStore=Bt;exports.useDoneRequestActor=jt;exports.useFailedRequestActor=xt;exports.useGetCompByKey=R;exports.useLogonUser=Wt;exports.useMetaRegister=$e;exports.useModuleEvent=ae;exports.useProConfig=w;exports.useProCurd=O;exports.useProForm=be;exports.useProFormList=he;exports.useProModule=H;exports.useProTable=pt;exports.useReadStore=zt;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vue-start/pro",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "zx <zxpstudy@163.com>",
|
|
6
6
|
"homepage": "https://github.com/zxeryu/vue-start#readme",
|
|
@@ -32,5 +32,5 @@
|
|
|
32
32
|
"vue": ">=3.x",
|
|
33
33
|
"vue-router": ">=4.x"
|
|
34
34
|
},
|
|
35
|
-
"gitHead": "
|
|
35
|
+
"gitHead": "499e04f547165f749e2b6eef6c9695f84a2a6105"
|
|
36
36
|
}
|