UNPKG

ll-package

Version:

2 lines (1 loc) 6.12 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("../../../@babel/runtime/helpers/esm/objectSpread2.js"),I=require("../../../@babel/runtime/helpers/esm/extends.js"),s=require("vue"),Le=require("../_util/vue-types/index.js"),qe=require("../_util/props-util/index.js"),Fe=require("../_util/classNames.js"),B=require("./list.js"),Re=require("./operation.js"),Me=require("../locale/LocaleReceiver.js"),Oe=require("../locale/en_US.js"),l=require("../_util/type.js"),_e=require("../config-provider/hooks/useConfigInject.js"),G=require("../form/FormItemContext.js"),H=require("../_util/statusUtils.js"),w=require("../_util/transKeys.js"),je=require("./style/index.js"),J=()=>({id:String,prefixCls:String,dataSource:l.arrayType([]),disabled:l.booleanType(),targetKeys:l.arrayType(),selectedKeys:l.arrayType(),render:l.functionType(),listStyle:l.someType([Function,Object],()=>({})),operationStyle:l.objectType(void 0),titles:l.arrayType(),operations:l.arrayType(),showSearch:l.booleanType(!1),filterOption:l.functionType(),searchPlaceholder:String,notFoundContent:Le.default.any,locale:l.objectType(),rowKey:l.functionType(),showSelectAll:l.booleanType(),selectAllLabels:l.arrayType(),children:l.functionType(),oneWay:l.booleanType(),pagination:l.someType([Object,Boolean]),status:l.stringType(),onChange:l.functionType(),onSelectChange:l.functionType(),onSearch:l.functionType(),onScroll:l.functionType(),"onUpdate:targetKeys":l.functionType(),"onUpdate:selectedKeys":l.functionType()}),Pe=s.defineComponent({compatConfig:{MODE:3},name:"ATransfer",inheritAttrs:!1,props:J(),slots:Object,setup(o,Q){let{emit:c,attrs:A,slots:u,expose:X}=Q;const{configProvider:Y,prefixCls:f,direction:S}=_e.default("transfer",o),[Z,ee]=je.default(f),h=s.ref([]),y=s.ref([]),x=G.useInjectFormItemContext(),L=G.FormItemInputContext.useInject(),te=s.computed(()=>H.getMergedStatus(L.status,o.status));s.watch(()=>o.selectedKeys,()=>{var e,t;h.value=((e=o.selectedKeys)===null||e===void 0?void 0:e.filter(n=>o.targetKeys.indexOf(n)===-1))||[],y.value=((t=o.selectedKeys)===null||t===void 0?void 0:t.filter(n=>o.targetKeys.indexOf(n)>-1))||[]},{immediate:!0});const le=(e,t)=>{const n={notFoundContent:t("Transfer")},a=qe.getPropsSlot(u,o,"notFoundContent");return a&&(n.notFoundContent=a),o.searchPlaceholder!==void 0&&(n.searchPlaceholder=o.searchPlaceholder),I.default(I.default(I.default({},e),n),o.locale)},q=e=>{const{targetKeys:t=[],dataSource:n=[]}=o,a=e==="right"?h.value:y.value,i=w.groupDisabledKeysMap(n),d=a.filter(v=>!i.has(v)),r=w.groupKeysMap(d),g=e==="right"?d.concat(t):t.filter(v=>!r.has(v)),p=e==="right"?"left":"right";e==="right"?h.value=[]:y.value=[],c("update:targetKeys",g),m(p,[]),c("change",g,e,d),x.onFieldChange()},ne=()=>{q("left")},oe=()=>{q("right")},F=(e,t)=>{m(e,t)},ae=e=>F("left",e),se=e=>F("right",e),m=(e,t)=>{e==="left"?(o.selectedKeys||(h.value=t),c("update:selectedKeys",[...t,...y.value]),c("selectChange",t,s.toRaw(y.value))):(o.selectedKeys||(y.value=t),c("update:selectedKeys",[...t,...h.value]),c("selectChange",s.toRaw(h.value),t))},R=(e,t)=>{const n=t.target.value;c("search",e,n)},re=e=>{R("left",e)},ce=e=>{R("right",e)},M=e=>{c("search",e,"")},ie=()=>{M("left")},ue=()=>{M("right")},O=(e,t,n)=>{const a=e==="left"?[...h.value]:[...y.value],i=a.indexOf(t);i>-1&&a.splice(i,1),n&&a.push(t),m(e,a)},de=(e,t)=>O("left",e,t),fe=(e,t)=>O("right",e,t),he=e=>{const{targetKeys:t=[]}=o,n=t.filter(a=>!e.includes(a));c("update:targetKeys",n),c("change",n,"left",[...e])},_=(e,t)=>{c("scroll",e,t)},ye=e=>{_("left",e)},ge=e=>{_("right",e)},j=(e,t)=>typeof e=="function"?e({direction:t}):e,P=s.ref([]),k=s.ref([]);s.watchEffect(()=>{const{dataSource:e,rowKey:t,targetKeys:n=[]}=o,a=[],i=new Array(n.length),d=w.groupKeysMap(n);e.forEach(r=>{t&&(r.key=t(r)),d.has(r.key)?i[d.get(r.key)]=r:a.push(r)}),P.value=a,k.value=i}),X({handleSelectChange:m});const ve=e=>{var t,n,a,i,d,r;const{disabled:g,operations:p=[],showSearch:v,listStyle:N,operationStyle:Se,filterOption:$,showSelectAll:D,selectAllLabels:E=[],oneWay:V,pagination:me,id:pe=x.id.value}=o,{class:Te,style:Ke}=A,T=u.children,U=!T&&me,be=Y.renderEmpty,K=le(e,be),{footer:W}=u,z=o.render||u.render,Ce=y.value.length>0,Ie=h.value.length>0,we=Fe.default(f.value,Te,{[`${f.value}-disabled`]:g,[`${f.value}-customize-list`]:!!T,[`${f.value}-rtl`]:S.value==="rtl"},H.getStatusClassNames(f.value,te.value,L.hasFeedback),ee.value),b=o.titles,Ae=(a=(t=b&&b[0])!==null&&t!==void 0?t:(n=u.leftTitle)===null||n===void 0?void 0:n.call(u))!==null&&a!==void 0?a:(K.titles||["",""])[0],xe=(r=(i=b&&b[1])!==null&&i!==void 0?i:(d=u.rightTitle)===null||d===void 0?void 0:d.call(u))!==null&&r!==void 0?r:(K.titles||["",""])[1];return s.createVNode("div",C.default(C.default({},A),{},{class:we,style:Ke,id:pe}),[s.createVNode(B.default,C.default({key:"leftList",prefixCls:`${f.value}-list`,dataSource:P.value,filterOption:$,style:j(N,"left"),checkedKeys:h.value,handleFilter:re,handleClear:ie,onItemSelect:de,onItemSelectAll:ae,renderItem:z,showSearch:v,renderList:T,onScroll:ye,disabled:g,direction:S.value==="rtl"?"right":"left",showSelectAll:D,selectAllLabel:E[0]||u.leftSelectAllLabel,pagination:U},K),{titleText:()=>Ae,footer:W}),s.createVNode(Re.default,{key:"operation",class:`${f.value}-operation`,rightActive:Ie,rightArrowText:p[0],moveToRight:oe,leftActive:Ce,leftArrowText:p[1],moveToLeft:ne,style:Se,disabled:g,direction:S.value,oneWay:V},null),s.createVNode(B.default,C.default({key:"rightList",prefixCls:`${f.value}-list`,dataSource:k.value,filterOption:$,style:j(N,"right"),checkedKeys:y.value,handleFilter:ce,handleClear:ue,onItemSelect:fe,onItemSelectAll:se,onItemRemove:he,renderItem:z,showSearch:v,renderList:T,onScroll:ge,disabled:g,direction:S.value==="rtl"?"left":"right",showSelectAll:D,selectAllLabel:E[1]||u.rightSelectAllLabel,showRemove:V,pagination:U},K),{titleText:()=>xe,footer:W})])};return()=>Z(s.createVNode(Me.default,{componentName:"Transfer",defaultLocale:Oe.default.Transfer,children:ve},null))}}),ke=l.withInstall(Pe);exports.default=ke;exports.transferProps=J;