2 lines
32 KiB
JavaScript
2 lines
32 KiB
JavaScript
import{$r as e,$t as t,Bi as n,Ca as r,Dr as i,Ea as a,Ei as o,Fi as s,Jr as c,Ki as l,Li as u,Ri as d,Sn as f,Vi as p,Xi as m,Yr as h,_a as g,_i as _,ai as v,bn as ee,di as y,ha as b,hi as x,la as S,mi as C,mr as w,na as T,pa as E,qi as D,ti as O,wr as k,xn as A,yi as j,yn as M}from"./index-DThTpSPU.js";var N=a(r()),P=(0,N.createContext)(null),F=e=>{let{activeTabOffset:t,horizontal:n,rtl:r,indicator:i={}}=e,{size:a,align:o=`center`}=i,[s,c]=(0,N.useState)(),l=(0,N.useRef)(),u=N.useCallback(e=>typeof a==`function`?a(e):typeof a==`number`?a:e,[a]);function d(){D.cancel(l.current)}return(0,N.useEffect)(()=>{let e={};if(t)if(n){e.width=u(t.width);let n=r?`right`:`left`;o===`start`&&(e[n]=t[n]),o===`center`&&(e[n]=t[n]+t.width/2,e.transform=r?`translateX(50%)`:`translateX(-50%)`),o===`end`&&(e[n]=t[n]+t.width,e.transform=`translateX(-100%)`)}else e.height=u(t.height),o===`start`&&(e.top=t.top),o===`center`&&(e.top=t.top+t.height/2,e.transform=`translateY(-50%)`),o===`end`&&(e.top=t.top+t.height,e.transform=`translateY(-100%)`);return d(),l.current=D(()=>{s&&e&&Object.keys(e).every(t=>{let n=e[t],r=s[t];return typeof n==`number`&&typeof r==`number`?Math.round(n)===Math.round(r):n===r})||c(e)}),d},[JSON.stringify(t),n,r,o,u]),{style:s}},I={width:0,height:0,left:0,top:0};function L(e,t,n){return(0,N.useMemo)(()=>{let n=new Map,r=t.get(e[0]?.key)||I,i=r.left+r.width;for(let r=0;r<e.length;r+=1){let{key:a}=e[r],o=t.get(a);o||=t.get(e[r-1]?.key)||I;let s=n.get(a)||{...o};s.right=i-s.left-s.width,n.set(a,s)}return n},[e.map(e=>e.key).join(`_`),t,n])}function R(e,t){let n=N.useRef(e),[,r]=N.useState({});function i(e){let i=typeof e==`function`?e(n.current):e;i!==n.current&&t(i,n.current),n.current=i,r({})}return[n.current,i]}var z=.1,B=.01,V=20,te=.995**V;function ne(e,t){let[n,r]=(0,N.useState)(),[i,a]=(0,N.useState)(0),[o,s]=(0,N.useState)(0),[c,l]=(0,N.useState)(),u=(0,N.useRef)();function d(e){let{screenX:t,screenY:n}=e.touches[0];r({x:t,y:n}),window.clearInterval(u.current)}function f(e){if(!n)return;let{screenX:o,screenY:c}=e.touches[0];r({x:o,y:c});let u=o-n.x,d=c-n.y;t(u,d);let f=Date.now();a(f),s(f-i),l({x:u,y:d})}function p(){if(n&&(r(null),l(null),c)){let e=c.x/o,n=c.y/o;if(Math.max(Math.abs(e),Math.abs(n))<z)return;let r=e,i=n;u.current=window.setInterval(()=>{if(Math.abs(r)<B&&Math.abs(i)<B){window.clearInterval(u.current);return}r*=te,i*=te,t(r*V,i*V)},V)}}let m=(0,N.useRef)();function h(e){let{deltaX:n,deltaY:r}=e,i=0,a=Math.abs(n),o=Math.abs(r);a===o?i=m.current===`x`?n:r:a>o?(i=n,m.current=`x`):(i=r,m.current=`y`),t(-i,-i)&&e.preventDefault()}let g=(0,N.useRef)(null);g.current={onTouchStart:d,onTouchMove:f,onTouchEnd:p,onWheel:h},N.useEffect(()=>{function t(e){g.current.onTouchStart(e)}function n(e){g.current.onTouchMove(e)}function r(e){g.current.onTouchEnd(e)}function i(e){g.current.onWheel(e)}return document.addEventListener(`touchmove`,n,{passive:!1}),document.addEventListener(`touchend`,r,{passive:!0}),e.current.addEventListener(`touchstart`,t,{passive:!0}),e.current.addEventListener(`wheel`,i,{passive:!1}),()=>{document.removeEventListener(`touchmove`,n),document.removeEventListener(`touchend`,r)}},[])}function H(e){let[t,n]=(0,N.useState)(0),r=(0,N.useRef)(0),i=(0,N.useRef)();return i.current=e,b(()=>{i.current?.()},[t]),()=>{r.current===t&&(r.current+=1,n(r.current))}}function U(e){let t=(0,N.useRef)([]),[,n]=(0,N.useState)({}),r=(0,N.useRef)(typeof e==`function`?e():e),i=H(()=>{let e=r.current;t.current.forEach(t=>{e=t(e)}),t.current=[],r.current=e,n({})});function a(e){t.current.push(e),i()}return[r.current,a]}var W={width:0,height:0,left:0,top:0,right:0};function re(e,t,n,r,i,a,{tabs:o,tabPosition:s,rtl:c}){let l,u,d;return[`top`,`bottom`].includes(s)?(l=`width`,u=c?`right`:`left`,d=Math.abs(n)):(l=`height`,u=`top`,d=-n),(0,N.useMemo)(()=>{if(!o.length)return[0,0];let n=o.length,r=n;for(let i=0;i<n;i+=1){let n=e.get(o[i].key)||W;if(Math.floor(n[u]+n[l])>Math.floor(d+t)){r=i-1;break}}let i=0;for(let t=n-1;t>=0;--t)if((e.get(o[t].key)||W)[u]<d){i=t+1;break}return i>r?[0,-1]:[i,r]},[e,t,r,i,a,d,s,o.map(e=>e.key).join(`_`),c])}function ie(e){let t;return e instanceof Map?(t={},e.forEach((e,n)=>{t[n]=e})):t=e,JSON.stringify(t)}var ae=`TABS_DQ`;function oe(e){return String(e).replace(/"/g,ae)}function se(e,t,n,r){return!(!n||r||e===!1||e===void 0&&(t===!1||t===null))}var ce=N.forwardRef((e,t)=>{let{prefixCls:n,editable:r,locale:i,style:a}=e;return!r||r.showAdd===!1?null:N.createElement(`button`,{ref:t,type:`button`,className:`${n}-nav-add`,style:a,"aria-label":i?.addAriaLabel||`Add tab`,onClick:e=>{r.onEdit(`add`,{event:e})}},r.addIcon||`+`)}),le=N.forwardRef((e,t)=>{let{position:n,prefixCls:r,extra:i}=e;if(!i)return null;let a,o={};return typeof i==`object`&&!N.isValidElement(i)?o=i:o.right=i,n===`right`&&(a=o.right),n===`left`&&(a=o.left),a?N.createElement(`div`,{className:`${r}-extra-content`,ref:t},a):null});function ue(){return ue=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ue.apply(this,arguments)}var de=N.forwardRef((e,t)=>{let{prefixCls:r,id:i,tabs:a,locale:o,mobile:s,more:c={},style:l,className:u,editable:d,tabBarGutter:p,rtl:m,removeAriaLabel:h,onTabClick:g,getPopupContainer:_,popupClassName:v,popupStyle:y,classNames:b,styles:x}=e,[S,C]=(0,N.useState)(!1),[w,E]=(0,N.useState)(null),{icon:D=`More`}=c,O=`${i}-more-popup`,k=`${r}-dropdown`,j=w===null?null:`${O}-${w}`,M=o?.dropdownAriaLabel;function P(e,t){e.preventDefault(),e.stopPropagation(),d.onEdit(`remove`,{key:t,event:e})}let F=N.createElement(ee,{onClick:({key:e,domEvent:t})=>{g(e,t),C(!1)},prefixCls:`${k}-menu`,id:O,tabIndex:-1,role:`listbox`,"aria-activedescendant":j,selectedKeys:[w],"aria-label":M===void 0?`expanded dropdown`:M},a.map(e=>{let{closable:t,disabled:r,closeIcon:a,key:o,label:s}=e,c=se(t,a,d,r);return N.createElement(A,{key:o,id:`${O}-${o}`,role:`option`,"aria-controls":i&&`${i}-panel-${o}`,disabled:r},N.createElement(`span`,null,s),c&&N.createElement(`button`,{type:`button`,"aria-label":h||`remove`,tabIndex:0,className:n(`${k}-menu-item-remove`,b?.remove),style:x?.remove,onClick:e=>{e.stopPropagation(),P(e,o)}},a||d.removeIcon||`×`))}));function I(e){let t=a.filter(e=>!e.disabled),n=t.findIndex(e=>e.key===w)||0,r=t.length;for(let i=0;i<r;i+=1){n=(n+e+r)%r;let i=t[n];if(!i.disabled){E(i.key);return}}}function L(e){let{which:t}=e;if(!S){[T.DOWN,T.SPACE,T.ENTER].includes(t)&&(C(!0),e.preventDefault());return}switch(t){case T.UP:I(-1),e.preventDefault();break;case T.DOWN:I(1),e.preventDefault();break;case T.ESC:C(!1);break;case T.SPACE:case T.ENTER:w!==null&&g(w,e);break}}(0,N.useEffect)(()=>{let e=document.getElementById(j);e?.scrollIntoView&&e.scrollIntoView(!1)},[j,w]),(0,N.useEffect)(()=>{S||E(null)},[S]);let R={marginInlineStart:p};a.length||(R.visibility=`hidden`,R.order=1);let z=n(v,{[`${k}-rtl`]:m}),B=s?null:N.createElement(f,ue({prefixCls:k,overlay:F,visible:a.length?S:!1,onVisibleChange:C,overlayClassName:z,overlayStyle:y,mouseEnterDelay:.1,mouseLeaveDelay:.1,getPopupContainer:_},c),N.createElement(`button`,{type:`button`,className:`${r}-nav-more`,style:R,"aria-haspopup":`listbox`,"aria-controls":O,id:`${i}-more`,"aria-expanded":S,onKeyDown:L},D));return N.createElement(`div`,{className:n(`${r}-nav-operations`,u),style:l,ref:t},B,N.createElement(ce,{prefixCls:r,locale:o,editable:d}))}),fe=N.memo(de,(e,t)=>t.tabMoving),pe=e=>{let{prefixCls:t,id:r,active:i,focus:a,tab:{key:o,label:s,disabled:c,closeIcon:l,icon:u},closable:d,renderWrapper:f,removeAriaLabel:p,editable:m,onClick:h,onFocus:g,onBlur:_,onKeyDown:v,onMouseDown:ee,onMouseUp:y,styles:b,classNames:x,tabCount:S,currentPosition:C}=e,w=`${t}-tab`,T=se(d,l,m,c);function E(e){c||h(e)}function D(e){e.preventDefault(),e.stopPropagation(),m.onEdit(`remove`,{key:o,event:e})}let O=N.useMemo(()=>u&&typeof s==`string`?N.createElement(`span`,null,s):s,[s,u]),k=N.useRef(null);N.useEffect(()=>{a&&k.current&&k.current.focus()},[a]);let A=N.createElement(`div`,{key:o,"data-node-key":oe(o),className:n(w,x?.item,{[`${w}-with-remove`]:T,[`${w}-active`]:i,[`${w}-disabled`]:c,[`${w}-focus`]:a}),style:b?.item,onClick:E},N.createElement(`div`,{ref:k,role:`tab`,"aria-selected":i,id:r&&`${r}-tab-${o}`,className:`${w}-btn`,"aria-controls":r&&`${r}-panel-${o}`,"aria-disabled":c,tabIndex:c?null:i?0:-1,onClick:e=>{e.stopPropagation(),E(e)},onKeyDown:v,onMouseDown:ee,onMouseUp:y,onFocus:g,onBlur:_},a&&N.createElement(`div`,{"aria-live":`polite`,style:{width:0,height:0,position:`absolute`,overflow:`hidden`,opacity:0}},`Tab ${C} of ${S}`),u&&N.createElement(`span`,{className:`${w}-icon`},u),s&&O),T&&N.createElement(`button`,{type:`button`,"aria-label":p||`remove`,tabIndex:i?0:-1,className:n(`${w}-remove`,x?.remove),style:b?.remove,onClick:e=>{e.stopPropagation(),D(e)}},l||m.removeIcon||`×`));return f?f(A):A};function G(){return G=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},G.apply(this,arguments)}var me=(e,t)=>{let{offsetWidth:n,offsetHeight:r,offsetTop:i,offsetLeft:a}=e,{width:o,height:s,left:c,top:l}=e.getBoundingClientRect();return Math.abs(o-n)<1?[o,s,c-t.left,l-t.top]:[n,r,a,i]},K=e=>{let{offsetWidth:t=0,offsetHeight:n=0}=e.current||{};if(e.current){let{width:n,height:r}=e.current.getBoundingClientRect();if(Math.abs(n-t)<1)return[n,r]}return[t,n]},he=(e,t)=>e[+!t],ge=N.forwardRef((e,t)=>{let{className:r,style:i,id:a,animated:o,activeKey:s,rtl:c,extra:l,editable:u,locale:d,tabPosition:f,tabBarGutter:m,children:h,onTabClick:_,onTabScroll:v,indicator:ee,classNames:y,styles:b}=e,{prefixCls:x,tabs:C}=N.useContext(P),w=(0,N.useRef)(null),T=(0,N.useRef)(null),E=(0,N.useRef)(null),D=(0,N.useRef)(null),O=(0,N.useRef)(null),k=(0,N.useRef)(null),A=(0,N.useRef)(null),j=f===`top`||f===`bottom`,[M,I]=R(0,(e,t)=>{j&&v&&v({direction:e>t?`left`:`right`})}),[z,B]=R(0,(e,t)=>{!j&&v&&v({direction:e>t?`top`:`bottom`})}),[V,te]=(0,N.useState)([0,0]),[W,ae]=(0,N.useState)([0,0]),[ue,de]=(0,N.useState)([0,0]),[ge,_e]=(0,N.useState)([0,0]),[ve,ye]=U(new Map),be=L(C,ve,W[0]),xe=he(V,j),q=he(W,j),Se=he(ue,j),Ce=he(ge,j),we=Math.floor(xe)<Math.floor(q+Se),J=we?xe-Ce:xe-Se,Te=`${x}-nav-operations-hidden`,Y=0,X=0;j&&c?(Y=0,X=Math.max(0,q-J)):(Y=Math.min(0,J-q),X=0);function Ee(e){return e<Y?Y:e>X?X:e}let De=(0,N.useRef)(null),[Oe,ke]=(0,N.useState)();function Ae(){ke(Date.now())}function je(){De.current&&clearTimeout(De.current)}ne(D,(e,t)=>{function n(e,t){e(e=>Ee(e+t))}return we?(j?n(I,e):n(B,t),je(),Ae(),!0):!1}),(0,N.useEffect)(()=>(je(),Oe&&(De.current=setTimeout(()=>{ke(0)},100)),je),[Oe]);let[Me,Ne]=re(be,J,j?M:z,q,Se,Ce,{...e,tabs:C}),Pe=g((e=s)=>{let t=be.get(e)||{width:0,height:0,left:0,right:0,top:0};if(j){let e=M;c?t.right<M?e=t.right:t.right+t.width>M+J&&(e=t.right+t.width-J):t.left<-M?e=-t.left:t.left+t.width>-M+J&&(e=-(t.left+t.width-J)),B(0),I(Ee(e))}else{let e=z;t.top<-z?e=-t.top:t.top+t.height>-z+J&&(e=-(t.top+t.height-J)),I(0),B(Ee(e))}}),[Z,Fe]=(0,N.useState)(),[Ie,Le]=(0,N.useState)(!1),Q=C.filter(e=>!e.disabled).map(e=>e.key),$=e=>{let t=Q.indexOf(Z||s),n=Q.length,r=Q[(t+e+n)%n];Fe(r)},Re=(e,t)=>{let n=Q.indexOf(e),r=C.find(t=>t.key===e);se(r?.closable,r?.closeIcon,u,r?.disabled)&&(t.preventDefault(),t.stopPropagation(),u.onEdit(`remove`,{key:e,event:t}),n===Q.length-1?$(-1):$(1))},ze=(e,t)=>{Le(!0),t.button===1&&Re(e,t)},Be=e=>{let{code:t}=e,n=c&&j,r=Q[0],i=Q[Q.length-1];switch(t){case`ArrowLeft`:j&&$(n?1:-1);break;case`ArrowRight`:j&&$(n?-1:1);break;case`ArrowUp`:e.preventDefault(),j||$(-1);break;case`ArrowDown`:e.preventDefault(),j||$(1);break;case`Home`:e.preventDefault(),Fe(r);break;case`End`:e.preventDefault(),Fe(i);break;case`Enter`:case`Space`:e.preventDefault(),_(Z??s,e);break;case`Backspace`:case`Delete`:Re(Z,e);break}},Ve={};j?Ve.marginInlineStart=m:Ve.marginTop=m;let He=C.map((e,t)=>{let{key:n}=e;return N.createElement(pe,{id:a,prefixCls:x,key:n,tab:e,classNames:{item:y?.item,remove:y?.remove},styles:{item:t===0?b?.item:{...Ve,...b?.item},remove:b?.remove},closable:e.closable,editable:u,active:n===s,focus:n===Z,renderWrapper:h,removeAriaLabel:d?.removeAriaLabel,tabCount:Q.length,currentPosition:t+1,onClick:e=>{_(n,e)},onKeyDown:Be,onFocus:()=>{Ie||Fe(n),Pe(n),Ae(),D.current&&(c||(D.current.scrollLeft=0),D.current.scrollTop=0)},onBlur:()=>{Fe(void 0)},onMouseDown:e=>ze(n,e),onMouseUp:()=>{Le(!1)}})}),Ue=()=>ye(()=>{let e=new Map,t=O.current?.getBoundingClientRect();return C.forEach(({key:n})=>{let r=O.current?.querySelector(`[data-node-key="${oe(n)}"]`);if(r){let[i,a,o,s]=me(r,t);e.set(n,{width:i,height:a,left:o,top:s})}}),e});(0,N.useEffect)(()=>{Ue()},[C.map(e=>e.key).join(`_`)]);let We=H(()=>{let e=K(w),t=K(T),n=K(E);te([e[0]-t[0]-n[0],e[1]-t[1]-n[1]]);let r=K(A);de(r),_e(K(k));let i=K(O);ae([i[0]-r[0],i[1]-r[1]]),Ue()}),Ge=C.slice(0,Me),Ke=C.slice(Ne+1),qe=[...Ge,...Ke],Je=be.get(s),{style:Ye}=F({activeTabOffset:Je,horizontal:j,indicator:ee,rtl:c});(0,N.useEffect)(()=>{Pe()},[s,Y,X,ie(Je),ie(be),j]),(0,N.useEffect)(()=>{We()},[c]);let Xe=!!qe.length,Ze=`${x}-nav-wrap`,Qe,$e,et,tt;return j?c?($e=M>0,Qe=M!==X):(Qe=M<0,$e=M!==Y):(et=z<0,tt=z!==Y),N.createElement(p,{onResize:We},N.createElement(`div`,{ref:S(t,w),role:`tablist`,"aria-orientation":j?`horizontal`:`vertical`,className:n(`${x}-nav`,r,y?.header),style:{...b?.header,...i},onKeyDown:()=>{Ae()}},N.createElement(le,{ref:T,position:`left`,extra:l,prefixCls:x}),N.createElement(p,{onResize:We},N.createElement(`div`,{className:n(Ze,{[`${Ze}-ping-left`]:Qe,[`${Ze}-ping-right`]:$e,[`${Ze}-ping-top`]:et,[`${Ze}-ping-bottom`]:tt}),ref:D},N.createElement(p,{onResize:We},N.createElement(`div`,{ref:O,className:`${x}-nav-list`,style:{transform:`translate(${M}px, ${z}px)`,transition:Oe?`none`:void 0}},He,N.createElement(ce,{ref:A,prefixCls:x,locale:d,editable:u,style:{...He.length===0?void 0:Ve,visibility:Xe?`hidden`:null}}),N.createElement(`div`,{className:n(`${x}-ink-bar`,y?.indicator,{[`${x}-ink-bar-animated`]:o.inkBar}),style:{...Ye,...b?.indicator}}))))),N.createElement(fe,G({},e,{removeAriaLabel:d?.removeAriaLabel,ref:k,prefixCls:x,tabs:qe,className:!Xe&&Te,popupStyle:b?.popup,tabMoving:!!Oe})),N.createElement(le,{ref:E,position:`right`,extra:l,prefixCls:x})))}),_e=({renderTabBar:e,...t})=>e?e(t,ge):N.createElement(ge,t),ve=N.forwardRef((e,t)=>{let{prefixCls:r,className:i,style:a,id:o,active:s,tabKey:c,children:l}=e,u=N.Children.count(l)>0;return N.createElement(`div`,{id:o&&`${o}-panel-${c}`,role:`tabpanel`,tabIndex:s&&u?0:-1,"aria-labelledby":o&&`${o}-tab-${c}`,"aria-hidden":!s,style:a,className:n(r,s&&`${r}-active`,i),ref:t},l)});function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ye.apply(this,arguments)}var be=e=>{let{id:t,activeKey:r,animated:i,tabPosition:a,destroyOnHidden:o,contentStyle:s,contentClassName:c}=e,{prefixCls:l,tabs:u}=N.useContext(P),d=i.tabPane,f=`${l}-tabpane`;return N.createElement(`div`,{className:n(`${l}-content-holder`)},N.createElement(`div`,{className:n(`${l}-content`,`${l}-content-${a}`,{[`${l}-content-animated`]:d})},u.map(e=>{let{key:a,forceRender:l,style:u,className:p,destroyOnHidden:m,...h}=e,g=a===r;return N.createElement(O,ye({key:a,visible:g,forceRender:l,removeOnLeave:!!(o??m),leavedClassName:`${f}-hidden`},i.tabPaneMotion),({style:e,className:r},i)=>N.createElement(ve,ye({},h,{prefixCls:f,id:t,tabKey:a,animated:d,active:g,style:{...s,...u,...e},className:n(c,p,r),ref:i})))})))};function xe(e={inkBar:!0,tabPane:!1}){let t;return t=e===!1?{inkBar:!1,tabPane:!1}:e===!0?{inkBar:!0,tabPane:!1}:{inkBar:!0,...typeof e==`object`?e:{}},t.tabPaneMotion&&t.tabPane===void 0&&(t.tabPane=!0),!t.tabPaneMotion&&t.tabPane&&(t.tabPane=!1),t}function q(){return q=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},q.apply(this,arguments)}var Se=0,Ce=N.forwardRef((e,t)=>{let{id:r,prefixCls:i=`rc-tabs`,className:a,items:o,direction:s,activeKey:c,defaultActiveKey:l,editable:u,animated:d,tabPosition:f=`top`,tabBarGutter:p,tabBarStyle:h,tabBarExtraContent:g,locale:_,more:v,destroyOnHidden:ee,renderTabBar:y,onChange:b,onTabClick:x,onTabScroll:S,getPopupContainer:C,popupClassName:w,indicator:T,classNames:D,styles:O,...k}=e,A=N.useMemo(()=>(o||[]).filter(e=>e&&typeof e==`object`&&`key`in e),[o]),j=s===`rtl`,M=xe(d),[F,I]=(0,N.useState)(!1);(0,N.useEffect)(()=>{I(m())},[]);let[L,R]=E(l??A[0]?.key,c),[z,B]=(0,N.useState)(()=>A.findIndex(e=>e.key===L));(0,N.useEffect)(()=>{let e=A.findIndex(e=>e.key===L);e===-1&&(e=Math.max(0,Math.min(z,A.length-1)),R(A[e]?.key)),B(e)},[A.map(e=>e.key).join(`_`),L,z]);let[V,te]=E(null,r);(0,N.useEffect)(()=>{r||(te(`rc-tabs-${Se}`),Se+=1)},[]);function ne(e,t){x?.(e,t);let n=e!==L;R(e),n&&b?.(e)}let H={id:V,activeKey:L,animated:M,tabPosition:f,rtl:j,mobile:F},U={...H,editable:u,locale:_,more:v,tabBarGutter:p,onTabClick:ne,onTabScroll:S,extra:g,style:h,getPopupContainer:C,popupClassName:n(w,D?.popup),indicator:T,styles:O,classNames:D},W=N.useMemo(()=>({tabs:A,prefixCls:i}),[A,i]);return N.createElement(P.Provider,{value:W},N.createElement(`div`,q({ref:t,id:r,className:n(i,`${i}-${f}`,{[`${i}-mobile`]:F,[`${i}-editable`]:u,[`${i}-rtl`]:j},a)},k),N.createElement(_e,q({},U,{renderTabBar:y})),N.createElement(be,q({destroyOnHidden:ee},H,{contentStyle:O?.content,contentClassName:D?.content,animated:M}))))}),we={motionAppear:!1,motionEnter:!0,motionLeave:!0};function J(t,n={inkBar:!0,tabPane:!1}){let r;return r=n===!1?{inkBar:!1,tabPane:!1}:n===!0?{inkBar:!0,tabPane:!0}:{inkBar:!0,...e(n)?n:{}},r.tabPane&&(r.tabPaneMotion={...we,motionName:i(t,`switch`)}),r}function Te(e){return e.filter(e=>e)}function Y(e,t){return e?e.map(e=>({...e,destroyOnHidden:e.destroyOnHidden??e.destroyInactiveTabPane})):Te(l(t).map(e=>{if(N.isValidElement(e)){let{key:t,props:n}=e,{tab:r,...i}=n||{};return{key:String(t),...i,label:r}}return null}))}var X=e=>{let{componentCls:t,motionDurationSlow:n}=e;return[{[t]:{[`${t}-switch`]:{"&-appear, &-enter":{transition:`none`,"&-start":{opacity:0},"&-active":{opacity:1,transition:`opacity ${n}`}},"&-leave":{position:`absolute`,transition:`none`,inset:0,"&-start":{opacity:1},"&-active":{opacity:0,transition:`opacity ${n}`}}}}},[w(e,`slide-up`),w(e,`slide-down`)]]},Ee=e=>{let{componentCls:t,tabsCardPadding:n,cardBg:r,cardGutter:i,colorBorderSecondary:a,itemSelectedColor:o}=e;return{[`${t}-card`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab`]:{margin:0,padding:n,background:r,border:`${s(e.lineWidth)} ${e.lineType} ${a}`,transition:`all ${e.motionDurationSlow} ${e.motionEaseInOut}`},[`${t}-tab-active`]:{color:o,background:e.colorBgContainer},[`${t}-tab-focus:has(${t}-tab-btn:focus-visible)`]:C(e,-3),[`& ${t}-tab${t}-tab-focus ${t}-tab-btn:focus-visible`]:{outline:`none`},[`${t}-ink-bar`]:{visibility:`hidden`}},[`&${t}-top, &${t}-bottom`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab + ${t}-tab`]:{marginLeft:{_skip_check_:!0,value:s(i)}}}},[`&${t}-top`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab`]:{borderRadius:`${s(e.borderRadiusLG)} ${s(e.borderRadiusLG)} 0 0`},[`${t}-tab-active`]:{borderBottomColor:e.colorBgContainer}}},[`&${t}-bottom`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab`]:{borderRadius:`0 0 ${s(e.borderRadiusLG)} ${s(e.borderRadiusLG)}`},[`${t}-tab-active`]:{borderTopColor:e.colorBgContainer}}},[`&${t}-left, &${t}-right`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab + ${t}-tab`]:{marginTop:s(i)}}},[`&${t}-left`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab`]:{borderRadius:{_skip_check_:!0,value:`${s(e.borderRadiusLG)} 0 0 ${s(e.borderRadiusLG)}`}},[`${t}-tab-active`]:{borderRightColor:{_skip_check_:!0,value:e.colorBgContainer}}}},[`&${t}-right`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab`]:{borderRadius:{_skip_check_:!0,value:`0 ${s(e.borderRadiusLG)} ${s(e.borderRadiusLG)} 0`}},[`${t}-tab-active`]:{borderLeftColor:{_skip_check_:!0,value:e.colorBgContainer}}}}}}},De=e=>{let{componentCls:t,itemHoverColor:n,dropdownEdgeChildVerticalPadding:r}=e;return{[`${t}-dropdown`]:{..._(e),position:`absolute`,top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:e.zIndexPopup,display:`block`,"&-hidden":{display:`none`},[`${t}-dropdown-menu`]:{maxHeight:e.tabsDropdownHeight,margin:0,padding:`${s(r)} 0`,overflowX:`hidden`,overflowY:`auto`,textAlign:{_skip_check_:!0,value:`left`},listStyleType:`none`,backgroundColor:e.colorBgContainer,backgroundClip:`padding-box`,borderRadius:e.borderRadiusLG,outline:`none`,boxShadow:e.boxShadowSecondary,"&-item":{...j,display:`flex`,alignItems:`center`,minWidth:e.tabsDropdownWidth,margin:0,padding:`${s(e.paddingXXS)} ${s(e.paddingSM)}`,color:e.colorText,fontWeight:`normal`,fontSize:e.fontSize,lineHeight:e.lineHeight,cursor:`pointer`,transition:`all ${e.motionDurationSlow}`,"> span":{flex:1,whiteSpace:`nowrap`},"&-remove":{flex:`none`,marginLeft:{_skip_check_:!0,value:e.marginSM},color:e.colorIcon,fontSize:e.fontSizeSM,background:`transparent`,border:0,cursor:`pointer`,"&:hover":{color:n}},"&:hover":{background:e.controlItemBgHover},"&-disabled":{"&, &:hover":{color:e.colorTextDisabled,background:`transparent`,cursor:`not-allowed`}}}}}}},Oe=e=>{let{componentCls:t,margin:n,colorBorderSecondary:r,horizontalMargin:i,verticalItemPadding:a,verticalItemMargin:o,motionDurationSlow:c,calc:l}=e;return{[`${t}-top, ${t}-bottom`]:{flexDirection:`column`,[`> ${t}-nav, > div > ${t}-nav`]:{margin:i,"&::before":{position:`absolute`,right:{_skip_check_:!0,value:0},left:{_skip_check_:!0,value:0},borderBottom:`${s(e.lineWidth)} ${e.lineType} ${r}`,content:`''`},[`${t}-ink-bar`]:{height:e.lineWidthBold,"&-animated":{transition:[`width`,`left`,`right`].map(e=>`${e} ${c}`).join(`, `)}},[`${t}-nav-wrap`]:{"&::before, &::after":{top:0,bottom:0,width:e.controlHeight},"&::before":{left:{_skip_check_:!0,value:0},boxShadow:e.boxShadowTabsOverflowLeft},"&::after":{right:{_skip_check_:!0,value:0},boxShadow:e.boxShadowTabsOverflowRight},[`&${t}-nav-wrap-ping-left::before`]:{opacity:1},[`&${t}-nav-wrap-ping-right::after`]:{opacity:1}}}},[`${t}-top`]:{[`> ${t}-nav,
|
||
> div > ${t}-nav`]:{"&::before":{bottom:0},[`${t}-ink-bar`]:{bottom:0}}},[`${t}-bottom`]:{[`> ${t}-nav, > div > ${t}-nav`]:{order:1,marginTop:n,marginBottom:0,"&::before":{top:0},[`${t}-ink-bar`]:{top:0}},[`> ${t}-content-holder, > div > ${t}-content-holder`]:{order:0}},[`${t}-left, ${t}-right`]:{[`> ${t}-nav, > div > ${t}-nav`]:{flexDirection:`column`,minWidth:l(e.controlHeight).mul(1.25).equal(),[`${t}-tab`]:{padding:a,textAlign:`center`},[`${t}-tab + ${t}-tab`]:{margin:o},[`${t}-nav-wrap`]:{flexDirection:`column`,"&::before, &::after":{right:{_skip_check_:!0,value:0},left:{_skip_check_:!0,value:0},height:e.controlHeight},"&::before":{top:0,boxShadow:e.boxShadowTabsOverflowTop},"&::after":{bottom:0,boxShadow:e.boxShadowTabsOverflowBottom},[`&${t}-nav-wrap-ping-top::before`]:{opacity:1},[`&${t}-nav-wrap-ping-bottom::after`]:{opacity:1}},[`${t}-ink-bar`]:{width:e.lineWidthBold,"&-animated":{transition:[`height`,`top`].map(e=>`${e} ${c}`).join(`, `)}},[`${t}-nav-list, ${t}-nav-operations`]:{flex:`1 0 auto`,flexDirection:`column`}}},[`${t}-left`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-ink-bar`]:{right:{_skip_check_:!0,value:0}}},[`> ${t}-content-holder, > div > ${t}-content-holder`]:{marginLeft:{_skip_check_:!0,value:s(l(e.lineWidth).mul(-1).equal())},borderLeft:{_skip_check_:!0,value:`${s(e.lineWidth)} ${e.lineType} ${e.colorBorder}`},[`> ${t}-content > ${t}-tabpane`]:{paddingLeft:{_skip_check_:!0,value:e.paddingLG}}}},[`${t}-right`]:{[`> ${t}-nav, > div > ${t}-nav`]:{order:1,[`${t}-ink-bar`]:{left:{_skip_check_:!0,value:0}}},[`> ${t}-content-holder, > div > ${t}-content-holder`]:{order:0,marginRight:{_skip_check_:!0,value:l(e.lineWidth).mul(-1).equal()},borderRight:{_skip_check_:!0,value:`${s(e.lineWidth)} ${e.lineType} ${e.colorBorder}`},[`> ${t}-content > ${t}-tabpane`]:{paddingRight:{_skip_check_:!0,value:e.paddingLG}}}}}},ke=e=>{let{componentCls:t,cardPaddingSM:n,cardPaddingLG:r,cardHeightSM:i,cardHeightLG:a,horizontalItemPaddingSM:o,horizontalItemPaddingLG:c}=e;return{[t]:{"&-small":{[`> ${t}-nav`]:{[`${t}-tab`]:{padding:o,fontSize:e.titleFontSizeSM}}},"&-large":{[`> ${t}-nav`]:{[`${t}-tab`]:{padding:c,fontSize:e.titleFontSizeLG,lineHeight:e.lineHeightLG}}}},[`${t}-card`]:{[`&${t}-small`]:{[`> ${t}-nav`]:{[`${t}-tab`]:{padding:n},[`${t}-nav-add`]:{minWidth:i,minHeight:i}},[`&${t}-bottom`]:{[`> ${t}-nav ${t}-tab`]:{borderRadius:`0 0 ${s(e.borderRadius)} ${s(e.borderRadius)}`}},[`&${t}-top`]:{[`> ${t}-nav ${t}-tab`]:{borderRadius:`${s(e.borderRadius)} ${s(e.borderRadius)} 0 0`}},[`&${t}-right`]:{[`> ${t}-nav ${t}-tab`]:{borderRadius:{_skip_check_:!0,value:`0 ${s(e.borderRadius)} ${s(e.borderRadius)} 0`}}},[`&${t}-left`]:{[`> ${t}-nav ${t}-tab`]:{borderRadius:{_skip_check_:!0,value:`${s(e.borderRadius)} 0 0 ${s(e.borderRadius)}`}}}},[`&${t}-large`]:{[`> ${t}-nav`]:{[`${t}-tab`]:{padding:r},[`${t}-nav-add`]:{minWidth:a,minHeight:a}}}}}},Ae=e=>{let{componentCls:t,itemActiveColor:n,itemHoverColor:r,iconCls:i,tabsHorizontalItemMargin:a,horizontalItemPadding:o,itemSelectedColor:s,itemColor:c}=e,l=`${t}-tab`;return{[l]:{position:`relative`,WebkitTouchCallout:`none`,WebkitTapHighlightColor:`transparent`,display:`inline-flex`,alignItems:`center`,padding:o,fontSize:e.titleFontSize,background:`transparent`,border:0,outline:`none`,cursor:`pointer`,color:c,"&-btn, &-remove":{"&:focus:not(:focus-visible), &:active":{color:n}},"&-btn":{outline:`none`,transition:`all ${e.motionDurationSlow}`,[`${l}-icon:not(:last-child)`]:{marginInlineEnd:e.marginSM}},"&-remove":{flex:`none`,lineHeight:1,marginRight:{_skip_check_:!0,value:e.calc(e.marginXXS).mul(-1).equal()},marginLeft:{_skip_check_:!0,value:e.marginXS},color:e.colorIcon,fontSize:e.fontSizeSM,background:`transparent`,border:`none`,outline:`none`,cursor:`pointer`,transition:`all ${e.motionDurationSlow}`,"&:hover":{color:e.colorTextHeading},...x(e)},"&:hover":{color:r},[`&${l}-active ${l}-btn`]:{color:s},[`&${l}-focus ${l}-btn:focus-visible`]:C(e),[`&${l}-disabled`]:{color:e.colorTextDisabled,cursor:`not-allowed`},[`&${l}-disabled ${l}-btn, &${l}-disabled ${t}-remove`]:{"&:focus, &:active":{color:e.colorTextDisabled}},[`& ${l}-remove ${i}`]:{margin:0,verticalAlign:`middle`},[`${i}:not(:last-child)`]:{marginRight:{_skip_check_:!0,value:e.marginSM}}},[`${l} + ${l}`]:{margin:{_skip_check_:!0,value:a}}}},je=e=>{let{componentCls:t,tabsHorizontalItemMarginRTL:n,iconCls:r,cardGutter:i,calc:a}=e;return{[`${t}-rtl`]:{direction:`rtl`,[`${t}-nav`]:{[`${t}-tab`]:{margin:{_skip_check_:!0,value:n},[`${t}-tab:last-of-type`]:{marginLeft:{_skip_check_:!0,value:0}},[r]:{marginRight:{_skip_check_:!0,value:0},marginLeft:{_skip_check_:!0,value:e.marginSM}},[`${t}-tab-remove`]:{marginRight:{_skip_check_:!0,value:e.marginXS},marginLeft:{_skip_check_:!0,value:a(e.marginXXS).mul(-1).equal()},[r]:{margin:0}}}},[`&${t}-left`]:{[`> ${t}-nav`]:{order:1},[`> ${t}-content-holder`]:{order:0}},[`&${t}-right`]:{[`> ${t}-nav`]:{order:0},[`> ${t}-content-holder`]:{order:1}},[`&${t}-card${t}-top, &${t}-card${t}-bottom`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-tab + ${t}-tab`]:{marginRight:{_skip_check_:!0,value:i},marginLeft:{_skip_check_:!0,value:0}}}}},[`${t}-dropdown-rtl`]:{direction:`rtl`},[`${t}-menu-item`]:{[`${t}-dropdown-rtl`]:{textAlign:{_skip_check_:!0,value:`right`}}}}},Me=e=>{let{componentCls:t,tabsCardPadding:n,cardHeight:r,cardGutter:i,itemHoverColor:a,itemActiveColor:o,colorBorderSecondary:c}=e;return{[t]:{..._(e),display:`flex`,[`> ${t}-nav, > div > ${t}-nav`]:{position:`relative`,display:`flex`,flex:`none`,alignItems:`center`,[`${t}-nav-wrap`]:{position:`relative`,display:`flex`,flex:`auto`,alignSelf:`stretch`,overflow:`hidden`,whiteSpace:`nowrap`,transform:`translate(0)`,"&::before, &::after":{position:`absolute`,zIndex:1,opacity:0,transition:`opacity ${e.motionDurationSlow}`,content:`''`,pointerEvents:`none`}},[`${t}-nav-list`]:{position:`relative`,display:`flex`,transition:`opacity ${e.motionDurationSlow}`},[`${t}-nav-operations`]:{display:`flex`,alignSelf:`stretch`},[`${t}-nav-operations-hidden`]:{position:`absolute`,visibility:`hidden`,pointerEvents:`none`},[`${t}-nav-more`]:{position:`relative`,padding:n,background:`transparent`,border:0,color:e.colorText,"&::after":{position:`absolute`,right:{_skip_check_:!0,value:0},bottom:0,left:{_skip_check_:!0,value:0},height:e.calc(e.controlHeightLG).div(8).equal(),transform:`translateY(100%)`,content:`''`}},[`${t}-nav-add`]:{minWidth:r,minHeight:r,marginLeft:{_skip_check_:!0,value:i},background:`transparent`,border:`${s(e.lineWidth)} ${e.lineType} ${c}`,borderRadius:`${s(e.borderRadiusLG)} ${s(e.borderRadiusLG)} 0 0`,outline:`none`,cursor:`pointer`,color:e.colorText,transition:`all ${e.motionDurationSlow} ${e.motionEaseInOut}`,"&:hover":{color:a},"&:active, &:focus:not(:focus-visible)":{color:o},...x(e,-3)}},[`${t}-extra-content`]:{flex:`none`},[`${t}-ink-bar`]:{position:`absolute`,background:e.inkBarColor,pointerEvents:`none`},...Ae(e),[`${t}-content`]:{position:`relative`,width:`100%`},[`${t}-content-holder`]:{flex:`auto`,minWidth:0,minHeight:0},[`${t}-tabpane`]:{...x(e),"&-hidden":{display:`none`}}},[`${t}-centered`]:{[`> ${t}-nav, > div > ${t}-nav`]:{[`${t}-nav-wrap`]:{[`&:not([class*='${t}-nav-wrap-ping']) > ${t}-nav-list`]:{margin:`auto`}}}}}},Ne=y(`Tabs`,e=>{let t=o(e,{tabsCardPadding:e.cardPadding,dropdownEdgeChildVerticalPadding:e.paddingXXS,tabsDropdownHeight:200,tabsDropdownWidth:120,tabsHorizontalItemMargin:`0 0 0 ${s(e.horizontalItemGutter)}`,tabsHorizontalItemMarginRTL:`0 0 0 ${s(e.horizontalItemGutter)}`});return[ke(t),je(t),Oe(t),De(t),Ee(t),Me(t),X(t)]},e=>{let{cardHeight:t,cardHeightSM:n,cardHeightLG:r,controlHeight:i,controlHeightLG:a}=e,o=t||a,s=n||i,c=r||a+8;return{zIndexPopup:e.zIndexPopupBase+50,cardBg:e.colorFillAlter,cardHeight:o,cardHeightSM:s,cardHeightLG:c,cardPadding:`${(o-e.fontHeight)/2-e.lineWidth}px ${e.padding}px`,cardPaddingSM:`${(s-e.fontHeight)/2-e.lineWidth}px ${e.paddingXS}px`,cardPaddingLG:`${(c-e.fontHeightLG)/2-e.lineWidth}px ${e.padding}px`,titleFontSize:e.fontSize,titleFontSizeLG:e.fontSizeLG,titleFontSizeSM:e.fontSize,inkBarColor:e.colorPrimary,horizontalMargin:`0 0 ${e.margin}px 0`,horizontalItemGutter:32,horizontalItemMargin:``,horizontalItemMarginRTL:``,horizontalItemPadding:`${e.paddingSM}px 0`,horizontalItemPaddingSM:`${e.paddingXS}px 0`,horizontalItemPaddingLG:`${e.padding}px 0`,verticalItemPadding:`${e.paddingXS}px ${e.paddingLG}px`,verticalItemMargin:`${e.margin}px 0 0 0`,itemColor:e.colorText,itemSelectedColor:e.colorPrimary,itemHoverColor:e.colorPrimaryHover,itemActiveColor:e.colorPrimaryActive,cardGutter:e.marginXXS/2}}),Pe=()=>null,Z=N.forwardRef((e,r)=>{let{type:i,className:a,rootClassName:o,size:s,onEdit:l,hideAdd:f,centered:p,addIcon:m,removeIcon:g,moreIcon:_,more:ee,popupClassName:y,children:b,items:x,animated:S,style:C,indicatorSize:w,indicator:T,classNames:E,styles:D,destroyInactiveTabPane:O,destroyOnHidden:A,tabPlacement:j,tabPosition:P,...F}=e,{prefixCls:I}=F,{getPrefixCls:L,direction:R,getPopupContainer:z,className:B,style:V,classNames:te,styles:ne}=d(`tabs`),{tabs:H}=N.useContext(u),U=L(`tabs`,I),W=c(U),[re,ie]=Ne(U,W),ae=N.useRef(null);N.useImperativeHandle(r,()=>({nativeElement:ae.current}));let oe;i===`editable-card`&&(oe={onEdit:(e,{key:t,event:n})=>{l?.(e===`add`?n:t,e)},removeIcon:g??H?.removeIcon??N.createElement(v,null),addIcon:(m??H?.addIcon)||N.createElement(t,null),showAdd:f!==!0});let se=L(),ce=k(s),le=Y(x,b),ue=J(U,S),de={align:T?.align??H?.indicator?.align,size:T?.size??w??H?.indicator?.size??H?.indicatorSize},fe=N.useMemo(()=>{let e=j??P??void 0,t=R===`rtl`;switch(e){case`start`:return t?`right`:`left`;case`end`:return t?`left`:`right`;default:return e}},[j,P,R]),pe={...e,size:ce,tabPlacement:fe,items:le},[G,me]=h([te,E],[ne,D],{props:pe},{popup:{_default:`root`}});return N.createElement(Ce,{ref:ae,direction:R,getPopupContainer:z,...F,items:le,className:n({[`${U}-large`]:ce===`large`,[`${U}-small`]:ce===`small`,[`${U}-card`]:[`card`,`editable-card`].includes(i),[`${U}-editable-card`]:i===`editable-card`,[`${U}-centered`]:p},B,a,o,G.root,re,ie,W),classNames:{...G,popup:n(y,re,ie,W,G.popup?.root)},styles:me,style:{...me.root,...V,...C},editable:oe,more:{icon:H?.more?.icon??H?.moreIcon??_??N.createElement(M,null),transitionName:`${se}-slide-up`,...ee},prefixCls:U,animated:ue,indicator:de,destroyOnHidden:A??O,tabPosition:fe})});Z.TabPane=Pe;export{Z as t}; |