352 lines
28 KiB
JavaScript
352 lines
28 KiB
JavaScript
import{H as e,I as t,J as n,Jt as r,K as i,Lt as a,Mt as o,Pt as s,Rt as c,U as l,V as u,Wt as d,Y as f,_n as p,at as m,bn as h,bt as g,ht as _,in as v,it as y,kt as b,nt as x,ot as S,p as C,rn as w,sn as T,st as E,tt as D,yt as O}from"./client-9GVGzxpS.js";import{l as ee,n as k,r as A}from"./Follower-CsNZ6p_F.js";import{c as j}from"./Card-9DMWZiHx.js";import{a as te,s as M}from"./ui-BfbJxMTo.js";import{t as ne}from"./use-merged-state-B9mthwN2.js";import{t as re}from"./use-compitable-BYJnTeCX.js";import{c as N,o as P}from"./_plugin-vue_export-helper-CtmSANVP.js";import{t as F}from"./flatten-Yubwt4k1.js";import{t as I}from"./Add-DXV9b_Zt.js";import{U as ie,Z as ae,dt as L,et as R,l as oe,lt as se,nt as z,tt as B}from"./index-CsGvlisv.js";var V=k(`.v-x-scroll`,{overflow:`auto`,scrollbarWidth:`none`},[k(`&::-webkit-scrollbar`,{width:0,height:0})]),ce=b({name:`XScroll`,props:{disabled:Boolean,onScroll:Function},setup(){let e=p(null);function t(e){!(e.currentTarget.offsetWidth<e.currentTarget.scrollWidth)||e.deltaY===0||(e.currentTarget.scrollLeft+=e.deltaY+e.deltaX,e.preventDefault())}let r=n();return V.mount({id:`vueuc/x-scroll`,head:!0,anchorMetaName:A,ssr:r}),Object.assign({selfRef:e,handleWheel:t},{scrollTo(...t){var n;(n=e.value)==null||n.scrollTo(...t)}})},render(){return o(`div`,{ref:`selfRef`,onScroll:this.onScroll,onWheel:this.disabled?void 0:this.handleWheel,class:`v-x-scroll`},this.$slots)}}),le=/\s/;function ue(e){for(var t=e.length;t--&&le.test(e.charAt(t)););return t}var H=/^\s+/;function U(e){return e&&e.slice(0,ue(e)+1).replace(H,``)}var W=NaN,de=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,G=/^0o[0-7]+$/i,K=parseInt;function q(e){if(typeof e==`number`)return e;if(R(e))return W;if(t(e)){var n=typeof e.valueOf==`function`?e.valueOf():e;e=t(n)?n+``:n}if(typeof e!=`string`)return e===0?e:+e;e=U(e);var r=fe.test(e);return r||G.test(e)?K(e.slice(2),r?2:8):de.test(e)?W:+e}var J=function(){return u.Date.now()},pe=`Expected a function`,me=Math.max,he=Math.min;function Y(e,n,r){var i,a,o,s,c,l,u=0,d=!1,f=!1,p=!0;if(typeof e!=`function`)throw TypeError(pe);n=q(n)||0,t(r)&&(d=!!r.leading,f=`maxWait`in r,o=f?me(q(r.maxWait)||0,n):o,p=`trailing`in r?!!r.trailing:p);function m(t){var n=i,r=a;return i=a=void 0,u=t,s=e.apply(r,n),s}function h(e){return u=e,c=setTimeout(v,n),d?m(e):s}function g(e){var t=e-l,r=e-u,i=n-t;return f?he(i,o-r):i}function _(e){var t=e-l,r=e-u;return l===void 0||t>=n||t<0||f&&r>=o}function v(){var e=J();if(_(e))return y(e);c=setTimeout(v,g(e))}function y(e){return c=void 0,p&&i?m(e):(i=a=void 0,s)}function b(){c!==void 0&&clearTimeout(c),u=0,i=l=a=c=void 0}function x(){return c===void 0?s:y(J())}function S(){var e=J(),t=_(e);if(i=arguments,a=this,l=e,t){if(c===void 0)return h(l);if(f)return clearTimeout(c),c=setTimeout(v,n),m(l)}return c===void 0&&(c=setTimeout(v,n)),s}return S.cancel=b,S.flush=x,S}var ge=`Expected a function`;function _e(e,n,r){var i=!0,a=!0;if(typeof e!=`function`)throw TypeError(ge);return t(r)&&(i=`leading`in r?!!r.leading:i,a=`trailing`in r?!!r.trailing:a),Y(e,n,{leading:i,maxWait:n,trailing:a})}var ve=f(`n-tabs`),ye={tab:[String,Number,Object,Function],name:{type:[String,Number],required:!0},disabled:Boolean,displayDirective:{type:String,default:`if`},closable:{type:Boolean,default:void 0},tabProps:Object,label:[String,Number,Object,Function]},X=b({__TAB_PANE__:!0,name:`TabPane`,alias:[`TabPanel`],props:ye,slots:Object,setup(e){let t=s(ve,null);return t||i(`tab-pane`,"`n-tab-pane` must be placed inside `n-tabs`."),{style:t.paneStyleRef,class:t.paneClassRef,mergedClsPrefix:t.mergedClsPrefixRef}},render(){return o(`div`,{class:[`${this.mergedClsPrefix}-tab-pane`,this.class],style:this.style},this.$slots)}}),Z=b({__TAB__:!0,inheritAttrs:!1,name:`Tab`,props:Object.assign({internalLeftPadded:Boolean,internalAddable:Boolean,internalCreatedByPane:Boolean},z(ye,[`displayDirective`])),setup(e){let{mergedClsPrefixRef:t,valueRef:n,typeRef:r,closableRef:i,tabStyleRef:a,addTabStyleRef:o,tabClassRef:c,addTabClassRef:l,tabChangeIdRef:u,onBeforeLeaveRef:d,triggerRef:f,handleAdd:p,activateTab:m,handleClose:h}=s(ve);return{trigger:f,mergedClosable:g(()=>{if(e.internalAddable)return!1;let{closable:t}=e;return t===void 0?i.value:t}),style:a,addStyle:o,tabClass:c,addTabClass:l,clsPrefix:t,value:n,type:r,handleClose(t){t.stopPropagation(),!e.disabled&&h(e.name)},activateTab(){if(e.disabled)return;if(e.internalAddable){p();return}let{name:t}=e,r=++u.id;if(t!==n.value){let{value:i}=d;i?Promise.resolve(i(e.name,n.value)).then(e=>{e&&u.id===r&&m(t)}):m(t)}}}},render(){let{internalAddable:e,clsPrefix:t,name:n,disabled:r,label:i,tab:s,value:c,mergedClosable:l,trigger:u,$slots:{default:d}}=this,f=i??s;return o(`div`,{class:`${t}-tabs-tab-wrapper`},this.internalLeftPadded?o(`div`,{class:`${t}-tabs-tab-pad`}):null,o(`div`,Object.assign({key:n,"data-name":n,"data-disabled":r?!0:void 0},a({class:[`${t}-tabs-tab`,c===n&&`${t}-tabs-tab--active`,r&&`${t}-tabs-tab--disabled`,l&&`${t}-tabs-tab--closable`,e&&`${t}-tabs-tab--addable`,e?this.addTabClass:this.tabClass],onClick:u===`click`?this.activateTab:void 0,onMouseenter:u===`hover`?this.activateTab:void 0,style:e?this.addStyle:this.style},this.internalCreatedByPane?this.tabProps||{}:this.$attrs)),o(`span`,{class:`${t}-tabs-tab__label`},e?o(_,null,o(`div`,{class:`${t}-tabs-tab__height-placeholder`},`\xA0`),o(ae,{clsPrefix:t},{default:()=>o(I,null)})):d?d():typeof f==`object`?f:B(f??n)),l&&this.type===`card`?o(ie,{clsPrefix:t,class:`${t}-tabs-tab__close`,onClick:this.handleClose,disabled:r}):null))}}),be=x(`tabs`,`
|
|
box-sizing: border-box;
|
|
width: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
transition:
|
|
background-color .3s var(--n-bezier),
|
|
border-color .3s var(--n-bezier);
|
|
`,[m(`segment-type`,[x(`tabs-rail`,[D(`&.transition-disabled`,[x(`tabs-capsule`,`
|
|
transition: none;
|
|
`)])])]),m(`top`,[x(`tab-pane`,`
|
|
padding: var(--n-pane-padding-top) var(--n-pane-padding-right) var(--n-pane-padding-bottom) var(--n-pane-padding-left);
|
|
`)]),m(`left`,[x(`tab-pane`,`
|
|
padding: var(--n-pane-padding-right) var(--n-pane-padding-bottom) var(--n-pane-padding-left) var(--n-pane-padding-top);
|
|
`)]),m(`left, right`,`
|
|
flex-direction: row;
|
|
`,[x(`tabs-bar`,`
|
|
width: 2px;
|
|
right: 0;
|
|
transition:
|
|
top .2s var(--n-bezier),
|
|
max-height .2s var(--n-bezier),
|
|
background-color .3s var(--n-bezier);
|
|
`),x(`tabs-tab`,`
|
|
padding: var(--n-tab-padding-vertical);
|
|
`)]),m(`right`,`
|
|
flex-direction: row-reverse;
|
|
`,[x(`tab-pane`,`
|
|
padding: var(--n-pane-padding-left) var(--n-pane-padding-top) var(--n-pane-padding-right) var(--n-pane-padding-bottom);
|
|
`),x(`tabs-bar`,`
|
|
left: 0;
|
|
`)]),m(`bottom`,`
|
|
flex-direction: column-reverse;
|
|
justify-content: flex-end;
|
|
`,[x(`tab-pane`,`
|
|
padding: var(--n-pane-padding-bottom) var(--n-pane-padding-right) var(--n-pane-padding-top) var(--n-pane-padding-left);
|
|
`),x(`tabs-bar`,`
|
|
top: 0;
|
|
`)]),x(`tabs-rail`,`
|
|
position: relative;
|
|
padding: 3px;
|
|
border-radius: var(--n-tab-border-radius);
|
|
width: 100%;
|
|
background-color: var(--n-color-segment);
|
|
transition: background-color .3s var(--n-bezier);
|
|
display: flex;
|
|
align-items: center;
|
|
`,[x(`tabs-capsule`,`
|
|
border-radius: var(--n-tab-border-radius);
|
|
position: absolute;
|
|
pointer-events: none;
|
|
background-color: var(--n-tab-color-segment);
|
|
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .08);
|
|
transition: transform 0.3s var(--n-bezier);
|
|
`),x(`tabs-tab-wrapper`,`
|
|
flex-basis: 0;
|
|
flex-grow: 1;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
`,[x(`tabs-tab`,`
|
|
overflow: hidden;
|
|
border-radius: var(--n-tab-border-radius);
|
|
width: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
`,[m(`active`,`
|
|
font-weight: var(--n-font-weight-strong);
|
|
color: var(--n-tab-text-color-active);
|
|
`),D(`&:hover`,`
|
|
color: var(--n-tab-text-color-hover);
|
|
`)])])]),m(`flex`,[x(`tabs-nav`,`
|
|
width: 100%;
|
|
position: relative;
|
|
`,[x(`tabs-wrapper`,`
|
|
width: 100%;
|
|
`,[x(`tabs-tab`,`
|
|
margin-right: 0;
|
|
`)])])]),x(`tabs-nav`,`
|
|
box-sizing: border-box;
|
|
line-height: 1.5;
|
|
display: flex;
|
|
transition: border-color .3s var(--n-bezier);
|
|
`,[y(`prefix, suffix`,`
|
|
display: flex;
|
|
align-items: center;
|
|
`),y(`prefix`,`padding-right: 16px;`),y(`suffix`,`padding-left: 16px;`)]),m(`top, bottom`,[D(`>`,[x(`tabs-nav`,[x(`tabs-nav-scroll-wrapper`,[D(`&::before`,`
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
width: 20px;
|
|
`),D(`&::after`,`
|
|
top: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
width: 20px;
|
|
`),m(`shadow-start`,[D(`&::before`,`
|
|
box-shadow: inset 10px 0 8px -8px rgba(0, 0, 0, .12);
|
|
`)]),m(`shadow-end`,[D(`&::after`,`
|
|
box-shadow: inset -10px 0 8px -8px rgba(0, 0, 0, .12);
|
|
`)])])])])]),m(`left, right`,[x(`tabs-nav-scroll-content`,`
|
|
flex-direction: column;
|
|
`),D(`>`,[x(`tabs-nav`,[x(`tabs-nav-scroll-wrapper`,[D(`&::before`,`
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
height: 20px;
|
|
`),D(`&::after`,`
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
height: 20px;
|
|
`),m(`shadow-start`,[D(`&::before`,`
|
|
box-shadow: inset 0 10px 8px -8px rgba(0, 0, 0, .12);
|
|
`)]),m(`shadow-end`,[D(`&::after`,`
|
|
box-shadow: inset 0 -10px 8px -8px rgba(0, 0, 0, .12);
|
|
`)])])])])]),x(`tabs-nav-scroll-wrapper`,`
|
|
flex: 1;
|
|
position: relative;
|
|
overflow: hidden;
|
|
`,[x(`tabs-nav-y-scroll`,`
|
|
height: 100%;
|
|
width: 100%;
|
|
overflow-y: auto;
|
|
scrollbar-width: none;
|
|
`,[D(`&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb`,`
|
|
width: 0;
|
|
height: 0;
|
|
display: none;
|
|
`)]),D(`&::before, &::after`,`
|
|
transition: box-shadow .3s var(--n-bezier);
|
|
pointer-events: none;
|
|
content: "";
|
|
position: absolute;
|
|
z-index: 1;
|
|
`)]),x(`tabs-nav-scroll-content`,`
|
|
display: flex;
|
|
position: relative;
|
|
min-width: 100%;
|
|
min-height: 100%;
|
|
width: fit-content;
|
|
box-sizing: border-box;
|
|
`),x(`tabs-wrapper`,`
|
|
display: inline-flex;
|
|
flex-wrap: nowrap;
|
|
position: relative;
|
|
`),x(`tabs-tab-wrapper`,`
|
|
display: flex;
|
|
flex-wrap: nowrap;
|
|
flex-shrink: 0;
|
|
flex-grow: 0;
|
|
`),x(`tabs-tab`,`
|
|
cursor: pointer;
|
|
white-space: nowrap;
|
|
flex-wrap: nowrap;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
color: var(--n-tab-text-color);
|
|
font-size: var(--n-tab-font-size);
|
|
background-clip: padding-box;
|
|
padding: var(--n-tab-padding);
|
|
transition:
|
|
box-shadow .3s var(--n-bezier),
|
|
color .3s var(--n-bezier),
|
|
background-color .3s var(--n-bezier),
|
|
border-color .3s var(--n-bezier);
|
|
`,[m(`disabled`,{cursor:`not-allowed`}),y(`close`,`
|
|
margin-left: 6px;
|
|
transition:
|
|
background-color .3s var(--n-bezier),
|
|
color .3s var(--n-bezier);
|
|
`),y(`label`,`
|
|
display: flex;
|
|
align-items: center;
|
|
z-index: 1;
|
|
`)]),x(`tabs-bar`,`
|
|
position: absolute;
|
|
bottom: 0;
|
|
height: 2px;
|
|
border-radius: 1px;
|
|
background-color: var(--n-bar-color);
|
|
transition:
|
|
left .2s var(--n-bezier),
|
|
max-width .2s var(--n-bezier),
|
|
opacity .3s var(--n-bezier),
|
|
background-color .3s var(--n-bezier);
|
|
`,[D(`&.transition-disabled`,`
|
|
transition: none;
|
|
`),m(`disabled`,`
|
|
background-color: var(--n-tab-text-color-disabled)
|
|
`)]),x(`tabs-pane-wrapper`,`
|
|
position: relative;
|
|
overflow: hidden;
|
|
transition: max-height .2s var(--n-bezier);
|
|
`),x(`tab-pane`,`
|
|
color: var(--n-pane-text-color);
|
|
width: 100%;
|
|
transition:
|
|
color .3s var(--n-bezier),
|
|
background-color .3s var(--n-bezier),
|
|
opacity .2s var(--n-bezier);
|
|
left: 0;
|
|
right: 0;
|
|
top: 0;
|
|
`,[D(`&.next-transition-leave-active, &.prev-transition-leave-active, &.next-transition-enter-active, &.prev-transition-enter-active`,`
|
|
transition:
|
|
color .3s var(--n-bezier),
|
|
background-color .3s var(--n-bezier),
|
|
transform .2s var(--n-bezier),
|
|
opacity .2s var(--n-bezier);
|
|
`),D(`&.next-transition-leave-active, &.prev-transition-leave-active`,`
|
|
position: absolute;
|
|
`),D(`&.next-transition-enter-from, &.prev-transition-leave-to`,`
|
|
transform: translateX(32px);
|
|
opacity: 0;
|
|
`),D(`&.next-transition-leave-to, &.prev-transition-enter-from`,`
|
|
transform: translateX(-32px);
|
|
opacity: 0;
|
|
`),D(`&.next-transition-leave-from, &.next-transition-enter-to, &.prev-transition-leave-from, &.prev-transition-enter-to`,`
|
|
transform: translateX(0);
|
|
opacity: 1;
|
|
`)]),x(`tabs-tab-pad`,`
|
|
box-sizing: border-box;
|
|
width: var(--n-tab-gap);
|
|
flex-grow: 0;
|
|
flex-shrink: 0;
|
|
`),m(`line-type, bar-type`,[x(`tabs-tab`,`
|
|
font-weight: var(--n-tab-font-weight);
|
|
box-sizing: border-box;
|
|
vertical-align: bottom;
|
|
`,[D(`&:hover`,{color:`var(--n-tab-text-color-hover)`}),m(`active`,`
|
|
color: var(--n-tab-text-color-active);
|
|
font-weight: var(--n-tab-font-weight-active);
|
|
`),m(`disabled`,{color:`var(--n-tab-text-color-disabled)`})])]),x(`tabs-nav`,[m(`line-type`,[m(`top`,[y(`prefix, suffix`,`
|
|
border-bottom: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-nav-scroll-content`,`
|
|
border-bottom: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-bar`,`
|
|
bottom: -1px;
|
|
`)]),m(`left`,[y(`prefix, suffix`,`
|
|
border-right: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-nav-scroll-content`,`
|
|
border-right: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-bar`,`
|
|
right: -1px;
|
|
`)]),m(`right`,[y(`prefix, suffix`,`
|
|
border-left: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-nav-scroll-content`,`
|
|
border-left: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-bar`,`
|
|
left: -1px;
|
|
`)]),m(`bottom`,[y(`prefix, suffix`,`
|
|
border-top: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-nav-scroll-content`,`
|
|
border-top: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-bar`,`
|
|
top: -1px;
|
|
`)]),y(`prefix, suffix`,`
|
|
transition: border-color .3s var(--n-bezier);
|
|
`),x(`tabs-nav-scroll-content`,`
|
|
transition: border-color .3s var(--n-bezier);
|
|
`),x(`tabs-bar`,`
|
|
border-radius: 0;
|
|
`)]),m(`card-type`,[y(`prefix, suffix`,`
|
|
transition: border-color .3s var(--n-bezier);
|
|
`),x(`tabs-pad`,`
|
|
flex-grow: 1;
|
|
transition: border-color .3s var(--n-bezier);
|
|
`),x(`tabs-tab-pad`,`
|
|
transition: border-color .3s var(--n-bezier);
|
|
`),x(`tabs-tab`,`
|
|
font-weight: var(--n-tab-font-weight);
|
|
border: 1px solid var(--n-tab-border-color);
|
|
background-color: var(--n-tab-color);
|
|
box-sizing: border-box;
|
|
position: relative;
|
|
vertical-align: bottom;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
font-size: var(--n-tab-font-size);
|
|
color: var(--n-tab-text-color);
|
|
`,[m(`addable`,`
|
|
padding-left: 8px;
|
|
padding-right: 8px;
|
|
font-size: 16px;
|
|
justify-content: center;
|
|
`,[y(`height-placeholder`,`
|
|
width: 0;
|
|
font-size: var(--n-tab-font-size);
|
|
`),S(`disabled`,[D(`&:hover`,`
|
|
color: var(--n-tab-text-color-hover);
|
|
`)])]),m(`closable`,`padding-right: 8px;`),m(`active`,`
|
|
background-color: #0000;
|
|
font-weight: var(--n-tab-font-weight-active);
|
|
color: var(--n-tab-text-color-active);
|
|
`),m(`disabled`,`color: var(--n-tab-text-color-disabled);`)])]),m(`left, right`,`
|
|
flex-direction: column;
|
|
`,[y(`prefix, suffix`,`
|
|
padding: var(--n-tab-padding-vertical);
|
|
`),x(`tabs-wrapper`,`
|
|
flex-direction: column;
|
|
`),x(`tabs-tab-wrapper`,`
|
|
flex-direction: column;
|
|
`,[x(`tabs-tab-pad`,`
|
|
height: var(--n-tab-gap-vertical);
|
|
width: 100%;
|
|
`)])]),m(`top`,[m(`card-type`,[x(`tabs-scroll-padding`,`border-bottom: 1px solid var(--n-tab-border-color);`),y(`prefix, suffix`,`
|
|
border-bottom: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-tab`,`
|
|
border-top-left-radius: var(--n-tab-border-radius);
|
|
border-top-right-radius: var(--n-tab-border-radius);
|
|
`,[m(`active`,`
|
|
border-bottom: 1px solid #0000;
|
|
`)]),x(`tabs-tab-pad`,`
|
|
border-bottom: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-pad`,`
|
|
border-bottom: 1px solid var(--n-tab-border-color);
|
|
`)])]),m(`left`,[m(`card-type`,[x(`tabs-scroll-padding`,`border-right: 1px solid var(--n-tab-border-color);`),y(`prefix, suffix`,`
|
|
border-right: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-tab`,`
|
|
border-top-left-radius: var(--n-tab-border-radius);
|
|
border-bottom-left-radius: var(--n-tab-border-radius);
|
|
`,[m(`active`,`
|
|
border-right: 1px solid #0000;
|
|
`)]),x(`tabs-tab-pad`,`
|
|
border-right: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-pad`,`
|
|
border-right: 1px solid var(--n-tab-border-color);
|
|
`)])]),m(`right`,[m(`card-type`,[x(`tabs-scroll-padding`,`border-left: 1px solid var(--n-tab-border-color);`),y(`prefix, suffix`,`
|
|
border-left: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-tab`,`
|
|
border-top-right-radius: var(--n-tab-border-radius);
|
|
border-bottom-right-radius: var(--n-tab-border-radius);
|
|
`,[m(`active`,`
|
|
border-left: 1px solid #0000;
|
|
`)]),x(`tabs-tab-pad`,`
|
|
border-left: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-pad`,`
|
|
border-left: 1px solid var(--n-tab-border-color);
|
|
`)])]),m(`bottom`,[m(`card-type`,[x(`tabs-scroll-padding`,`border-top: 1px solid var(--n-tab-border-color);`),y(`prefix, suffix`,`
|
|
border-top: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-tab`,`
|
|
border-bottom-left-radius: var(--n-tab-border-radius);
|
|
border-bottom-right-radius: var(--n-tab-border-radius);
|
|
`,[m(`active`,`
|
|
border-top: 1px solid #0000;
|
|
`)]),x(`tabs-tab-pad`,`
|
|
border-top: 1px solid var(--n-tab-border-color);
|
|
`),x(`tabs-pad`,`
|
|
border-top: 1px solid var(--n-tab-border-color);
|
|
`)])])])]),xe=_e,Se=b({name:`Tabs`,props:Object.assign(Object.assign({},C.props),{value:[String,Number],defaultValue:[String,Number],trigger:{type:String,default:`click`},type:{type:String,default:`bar`},closable:Boolean,justifyContent:String,size:String,placement:{type:String,default:`top`},tabStyle:[String,Object],tabClass:String,addTabStyle:[String,Object],addTabClass:String,barWidth:Number,paneClass:String,paneStyle:[String,Object],paneWrapperClass:String,paneWrapperStyle:[String,Object],addable:[Boolean,Object],tabsPadding:{type:Number,default:0},animated:Boolean,onBeforeLeave:Function,onAdd:Function,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onClose:[Function,Array],labelSize:String,activeName:[String,Number],onActiveNameChange:[Function,Array]}),slots:Object,setup(t,{slots:n}){let{mergedClsPrefixRef:i,inlineThemeDisabled:a,mergedComponentPropsRef:o}=l(t),s=C(`Tabs`,`-tabs`,be,oe,t,i),u=p(null),f=p(null),m=p(null),_=p(null),y=p(null),b=p(null),x=p(!0),S=p(!0),T=re(t,[`labelSize`,`size`]),D=g(()=>T.value?T.value:o?.value?.Tabs?.size||`medium`),O=re(t,[`activeName`,`value`]),k=p(O.value??t.defaultValue??(n.default?F(n.default())[0]?.props?.name:null)),A=ne(O,k),j={id:0},P=g(()=>{if(!(!t.justifyContent||t.type===`card`))return{display:`flex`,justifyContent:t.justifyContent}});w(A,()=>{j.id=0,R(),se()});function I(){let{value:e}=A;return e===null?null:u.value?.querySelector(`[data-name="${e}"]`)}function ie(e){if(t.type===`card`)return;let{value:n}=f;if(!n)return;let r=n.style.opacity===`0`;if(e){let a=`${i.value}-tabs-bar--disabled`,{barWidth:o,placement:s}=t;if(e.dataset.disabled===`true`?n.classList.add(a):n.classList.remove(a),[`top`,`bottom`].includes(s)){if(L([`top`,`maxHeight`,`height`]),typeof o==`number`&&e.offsetWidth>=o){let t=Math.floor((e.offsetWidth-o)/2)+e.offsetLeft;n.style.left=`${t}px`,n.style.maxWidth=`${o}px`}else n.style.left=`${e.offsetLeft}px`,n.style.maxWidth=`${e.offsetWidth}px`;n.style.width=`8192px`,r&&(n.style.transition=`none`),n.offsetWidth,r&&(n.style.transition=``,n.style.opacity=`1`)}else{if(L([`left`,`maxWidth`,`width`]),typeof o==`number`&&e.offsetHeight>=o){let t=Math.floor((e.offsetHeight-o)/2)+e.offsetTop;n.style.top=`${t}px`,n.style.maxHeight=`${o}px`}else n.style.top=`${e.offsetTop}px`,n.style.maxHeight=`${e.offsetHeight}px`;n.style.height=`8192px`,r&&(n.style.transition=`none`),n.offsetHeight,r&&(n.style.transition=``,n.style.opacity=`1`)}}}function ae(){if(t.type===`card`)return;let{value:e}=f;e&&(e.style.opacity=`0`)}function L(e){let{value:t}=f;if(t)for(let n of e)t.style[n]=``}function R(){if(t.type===`card`)return;let e=I();e?ie(e):ae()}function se(){let e=y.value?.$el;if(!e)return;let t=I();if(!t)return;let{scrollLeft:n,offsetWidth:r}=e,{offsetLeft:i,offsetWidth:a}=t;n>i?e.scrollTo({top:0,left:i,behavior:`smooth`}):i+a>n+r&&e.scrollTo({top:0,left:i+a-r,behavior:`smooth`})}let z=p(null),B=0,V=null;function ce(e){let t=z.value;if(t){B=e.getBoundingClientRect().height;let n=`${B}px`,r=()=>{t.style.height=n,t.style.maxHeight=n};V?(r(),V(),V=null):V=r}}function le(e){let t=z.value;if(t){let n=e.getBoundingClientRect().height,r=()=>{document.body.offsetHeight,t.style.maxHeight=`${n}px`,t.style.height=`${Math.max(B,n)}px`};V?(V(),V=null,r()):V=r}}function ue(){let e=z.value;if(e){e.style.maxHeight=``,e.style.height=``;let{paneWrapperStyle:n}=t;if(typeof n==`string`)e.style.cssText=n;else if(n){let{maxHeight:t,height:r}=n;t!==void 0&&(e.style.maxHeight=t),r!==void 0&&(e.style.height=r)}}}let H={value:[]},U=p(`next`);function W(e){let t=A.value,n=`next`;for(let r of H.value){if(r===t)break;if(r===e){n=`prev`;break}}U.value=n,de(e)}function de(e){let{onActiveNameChange:n,onUpdateValue:r,"onUpdate:value":i}=t;n&&N(n,e),r&&N(r,e),i&&N(i,e),k.value=e}function fe(e){let{onClose:n}=t;n&&N(n,e)}let G=!0;function K(){let{value:e}=f;if(!e)return;G||=!1;let t=`transition-disabled`;e.classList.add(t),R(),e.classList.remove(t)}let q=p(null);function J({transitionDisabled:e}){let t=u.value;if(!t)return;e&&t.classList.add(`transition-disabled`);let n=I();n&&q.value&&(q.value.style.width=`${n.offsetWidth}px`,q.value.style.height=`${n.offsetHeight}px`,q.value.style.transform=`translateX(${n.offsetLeft-te(getComputedStyle(t).paddingLeft)}px)`,e&&q.value.offsetWidth),e&&t.classList.remove(`transition-disabled`)}w([A],()=>{t.type===`segment`&&c(()=>{J({transitionDisabled:!1})})}),d(()=>{t.type===`segment`&&J({transitionDisabled:!0})});let pe=0;function me(e){if(e.contentRect.width===0&&e.contentRect.height===0||pe===e.contentRect.width)return;pe=e.contentRect.width;let{type:n}=t;if((n===`line`||n===`bar`)&&(G||t.justifyContent?.startsWith(`space`))&&K(),n!==`segment`){let{placement:e}=t;X((e===`top`||e===`bottom`?y.value?.$el:b.value)||null)}}let he=xe(me,64);w([()=>t.justifyContent,()=>t.size],()=>{c(()=>{let{type:e}=t;(e===`line`||e===`bar`)&&K()})});let Y=p(!1);function ge(e){let{target:n,contentRect:{width:r,height:i}}=e,a=n.parentElement.parentElement.offsetWidth,o=n.parentElement.parentElement.offsetHeight,{placement:s}=t;if(!Y.value)s===`top`||s===`bottom`?a<r&&(Y.value=!0):o<i&&(Y.value=!0);else{let{value:e}=_;if(!e)return;s===`top`||s===`bottom`?a-r>e.$el.offsetWidth&&(Y.value=!1):o-i>e.$el.offsetHeight&&(Y.value=!1)}X(y.value?.$el||null)}let _e=xe(ge,64);function ye(){let{onAdd:e}=t;e&&e(),c(()=>{let e=I(),{value:t}=y;!e||!t||t.scrollTo({left:e.offsetLeft,top:0,behavior:`smooth`})})}function X(e){if(!e)return;let{placement:n}=t;if(n===`top`||n===`bottom`){let{scrollLeft:t,scrollWidth:n,offsetWidth:r}=e;x.value=t<=0,S.value=t+r>=n}else{let{scrollTop:t,scrollHeight:n,offsetHeight:r}=e;x.value=t<=0,S.value=t+r>=n}}let Z=xe(e=>{X(e.target)},64);r(ve,{triggerRef:h(t,`trigger`),tabStyleRef:h(t,`tabStyle`),tabClassRef:h(t,`tabClass`),addTabStyleRef:h(t,`addTabStyle`),addTabClassRef:h(t,`addTabClass`),paneClassRef:h(t,`paneClass`),paneStyleRef:h(t,`paneStyle`),mergedClsPrefixRef:i,typeRef:h(t,`type`),closableRef:h(t,`closable`),valueRef:A,tabChangeIdRef:j,onBeforeLeaveRef:h(t,`onBeforeLeave`),activateTab:W,handleClose:fe,handleAdd:ye}),ee(()=>{R(),se()}),v(()=>{let{value:e}=m;if(!e)return;let{value:t}=i,n=`${t}-tabs-nav-scroll-wrapper--shadow-start`,r=`${t}-tabs-nav-scroll-wrapper--shadow-end`;x.value?e.classList.remove(n):e.classList.add(n),S.value?e.classList.remove(r):e.classList.add(r)});let Se={syncBarPosition:()=>{R()}},Ce=()=>{J({transitionDisabled:!0})},Q=g(()=>{let{value:e}=D,{type:n}=t,r=`${e}${{card:`Card`,bar:`Bar`,line:`Line`,segment:`Segment`}[n]}`,{self:{barColor:i,closeIconColor:a,closeIconColorHover:o,closeIconColorPressed:c,tabColor:l,tabBorderColor:u,paneTextColor:d,tabFontWeight:f,tabBorderRadius:p,tabFontWeightActive:m,colorSegment:h,fontWeightStrong:g,tabColorSegment:_,closeSize:v,closeIconSize:y,closeColorHover:b,closeColorPressed:x,closeBorderRadius:S,[E(`panePadding`,e)]:C,[E(`tabPadding`,r)]:w,[E(`tabPaddingVertical`,r)]:T,[E(`tabGap`,r)]:O,[E(`tabGap`,`${r}Vertical`)]:ee,[E(`tabTextColor`,n)]:k,[E(`tabTextColorActive`,n)]:A,[E(`tabTextColorHover`,n)]:j,[E(`tabTextColorDisabled`,n)]:te,[E(`tabFontSize`,e)]:ne},common:{cubicBezierEaseInOut:re}}=s.value;return{"--n-bezier":re,"--n-color-segment":h,"--n-bar-color":i,"--n-tab-font-size":ne,"--n-tab-text-color":k,"--n-tab-text-color-active":A,"--n-tab-text-color-disabled":te,"--n-tab-text-color-hover":j,"--n-pane-text-color":d,"--n-tab-border-color":u,"--n-tab-border-radius":p,"--n-close-size":v,"--n-close-icon-size":y,"--n-close-color-hover":b,"--n-close-color-pressed":x,"--n-close-border-radius":S,"--n-close-icon-color":a,"--n-close-icon-color-hover":o,"--n-close-icon-color-pressed":c,"--n-tab-color":l,"--n-tab-font-weight":f,"--n-tab-font-weight-active":m,"--n-tab-padding":w,"--n-tab-padding-vertical":T,"--n-tab-gap":O,"--n-tab-gap-vertical":ee,"--n-pane-padding-left":M(C,`left`),"--n-pane-padding-right":M(C,`right`),"--n-pane-padding-top":M(C,`top`),"--n-pane-padding-bottom":M(C,`bottom`),"--n-font-weight-strong":g,"--n-tab-color-segment":_}}),$=a?e(`tabs`,g(()=>`${D.value[0]}${t.type[0]}`),Q,t):void 0;return Object.assign({mergedClsPrefix:i,mergedValue:A,renderedNames:new Set,segmentCapsuleElRef:q,tabsPaneWrapperRef:z,tabsElRef:u,barElRef:f,addTabInstRef:_,xScrollInstRef:y,scrollWrapperElRef:m,addTabFixed:Y,tabWrapperStyle:P,handleNavResize:he,mergedSize:D,handleScroll:Z,handleTabsResize:_e,cssVars:a?void 0:Q,themeClass:$?.themeClass,animationDirection:U,renderNameListRef:H,yScrollElRef:b,handleSegmentResize:Ce,onAnimationBeforeLeave:ce,onAnimationEnter:le,onAnimationAfterEnter:ue,onRender:$?.onRender},Se)},render(){let{mergedClsPrefix:e,type:t,placement:n,addTabFixed:r,addable:i,mergedSize:a,renderNameListRef:s,onRender:c,paneWrapperClass:l,paneWrapperStyle:u,$slots:{default:d,prefix:f,suffix:p}}=this;c?.();let m=d?F(d()).filter(e=>e.type.__TAB_PANE__===!0):[],h=d?F(d()).filter(e=>e.type.__TAB__===!0):[],g=!h.length,_=t===`card`,v=t===`segment`,y=!_&&!v&&this.justifyContent;s.value=[];let b=()=>{let t=o(`div`,{style:this.tabWrapperStyle,class:`${e}-tabs-wrapper`},y?null:o(`div`,{class:`${e}-tabs-scroll-padding`,style:n===`top`||n===`bottom`?{width:`${this.tabsPadding}px`}:{height:`${this.tabsPadding}px`}}),g?m.map((e,t)=>(s.value.push(e.props.name),we(o(Z,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:t!==0&&(!y||y===`center`||y===`start`||y===`end`)}),e.children?{default:e.children.tab}:void 0)))):h.map((e,t)=>(s.value.push(e.props.name),we(t!==0&&!y?$(e):e))),!r&&i&&_?Q(i,(g?m.length:h.length)!==0):null,y?null:o(`div`,{class:`${e}-tabs-scroll-padding`,style:{width:`${this.tabsPadding}px`}}));return o(`div`,{ref:`tabsElRef`,class:`${e}-tabs-nav-scroll-content`},_&&i?o(j,{onResize:this.handleTabsResize},{default:()=>t}):t,_?o(`div`,{class:`${e}-tabs-pad`}):null,_?null:o(`div`,{ref:`barElRef`,class:`${e}-tabs-bar`}))},x=v?`top`:n;return o(`div`,{class:[`${e}-tabs`,this.themeClass,`${e}-tabs--${t}-type`,`${e}-tabs--${a}-size`,y&&`${e}-tabs--flex`,`${e}-tabs--${x}`],style:this.cssVars},o(`div`,{class:[`${e}-tabs-nav--${t}-type`,`${e}-tabs-nav--${x}`,`${e}-tabs-nav`]},P(f,t=>t&&o(`div`,{class:`${e}-tabs-nav__prefix`},t)),v?o(j,{onResize:this.handleSegmentResize},{default:()=>o(`div`,{class:`${e}-tabs-rail`,ref:`tabsElRef`},o(`div`,{class:`${e}-tabs-capsule`,ref:`segmentCapsuleElRef`},o(`div`,{class:`${e}-tabs-wrapper`},o(`div`,{class:`${e}-tabs-tab`}))),g?m.map((e,t)=>(s.value.push(e.props.name),o(Z,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:t!==0}),e.children?{default:e.children.tab}:void 0))):h.map((e,t)=>(s.value.push(e.props.name),t===0?e:$(e))))}):o(j,{onResize:this.handleNavResize},{default:()=>o(`div`,{class:`${e}-tabs-nav-scroll-wrapper`,ref:`scrollWrapperElRef`},[`top`,`bottom`].includes(x)?o(ce,{ref:`xScrollInstRef`,onScroll:this.handleScroll},{default:b}):o(`div`,{class:`${e}-tabs-nav-y-scroll`,onScroll:this.handleScroll,ref:`yScrollElRef`},b()))}),r&&i&&_?Q(i,!0):null,P(p,t=>t&&o(`div`,{class:`${e}-tabs-nav__suffix`},t))),g&&(this.animated&&(x===`top`||x===`bottom`)?o(`div`,{ref:`tabsPaneWrapperRef`,style:u,class:[`${e}-tabs-pane-wrapper`,l]},Ce(m,this.mergedValue,this.renderedNames,this.onAnimationBeforeLeave,this.onAnimationEnter,this.onAnimationAfterEnter,this.animationDirection)):Ce(m,this.mergedValue,this.renderedNames)))}});function Ce(e,t,n,r,i,a,s){let c=[];return e.forEach(e=>{let{name:r,displayDirective:i,"display-directive":a}=e.props,o=e=>i===e||a===e,s=t===r;if(e.key!==void 0&&(e.key=r),s||o(`show`)||o(`show:lazy`)&&n.has(r)){n.has(r)||n.add(r);let t=!o(`if`);c.push(t?T(e,[[L,s]]):e)}}),s?o(se,{name:`${s}-transition`,onBeforeLeave:r,onEnter:i,onAfterEnter:a},{default:()=>c}):c}function Q(e,t){return o(Z,{ref:`addTabInstRef`,key:`__addable`,name:`__addable`,internalCreatedByPane:!0,internalAddable:!0,internalLeftPadded:t,disabled:typeof e==`object`&&e.disabled})}function $(e){let t=O(e);return t.props?t.props.internalLeftPadded=!0:t.props={internalLeftPadded:!0},t}function we(e){return Array.isArray(e.dynamicProps)?e.dynamicProps.includes(`internalLeftPadded`)||e.dynamicProps.push(`internalLeftPadded`):e.dynamicProps=[`internalLeftPadded`],e}export{X as n,Se as t}; |