2 lines
24 KiB
JavaScript
2 lines
24 KiB
JavaScript
import{g as k,O as Je,d as de,h as Z,b as f,a4 as ye,ak as W,a6 as Le,an as R,aN as B,v as De,E as me,ag as Ke,a2 as Kt,a3 as Wt,aB as dt,bs as Ee,aC as Ft,am as $t,aG as jt,bn as zt,aa as Xe,ab as Ht,aj as Gt,aA as Vt}from"./index-3136f82f.js";import{w as _e,i as Pt}from"./_plugin-vue_export-helper-d984416f.js";import{K as ie,m as ft,J as qt}from"./shallowequal-18cd9d2d.js";import{E as Ut,M as Yt,_ as Xt,D as Zt}from"./styleChecker-0439e77f.js";import{a as V,i as Jt,u as bt}from"./useState-cbfc3923.js";import{R as mt,c as Qt,o as ea}from"./vnode-76a3da37.js";import{u as ta}from"./useRefs-bc01ea09.js";import{f as It,t as aa,a as na,c as ia,h as ra,g as la}from"./_flatRest-9b18ad3b.js";function oa(n){var e=k(),t=k(!1);function r(){for(var a=arguments.length,i=new Array(a),u=0;u<a;u++)i[u]=arguments[u];t.value||(_e.cancel(e.value),e.value=_e(function(){n.apply(void 0,i)}))}return Je(function(){t.value=!0,_e.cancel(e.value)}),r}function ua(n){var e=k([]),t=k(typeof n=="function"?n():n),r=oa(function(){var i=t.value;e.value.forEach(function(u){i=u(i)}),e.value=[],t.value=i});function a(i){e.value.push(i),r()}return[t,a]}const ca=de({compatConfig:{MODE:3},name:"TabNode",props:{id:{type:String},prefixCls:{type:String},tab:{type:Object},active:{type:Boolean},closable:{type:Boolean},editable:{type:Object},onClick:{type:Function},onResize:{type:Function},renderWrapper:{type:Function},removeAriaLabel:{type:String},onFocus:{type:Function}},emits:["click","resize","remove","focus"],setup:function(e,t){var r=t.expose,a=t.attrs,i=k();function u(v){var s;(s=e.tab)!==null&&s!==void 0&&s.disabled||e.onClick(v)}r({domRef:i});function c(v){var s;v.preventDefault(),v.stopPropagation(),e.editable.onEdit("remove",{key:(s=e.tab)===null||s===void 0?void 0:s.key,event:v})}var l=Z(function(){var v;return e.editable&&e.closable!==!1&&!((v=e.tab)!==null&&v!==void 0&&v.disabled)});return function(){var v,s,b=e.prefixCls,g=e.id,M=e.active,I=e.tab,F=I.key,E=I.tab,z=I.disabled,x=I.closeIcon,d=e.renderWrapper,A=e.removeAriaLabel,H=e.editable,N=e.onFocus,_="".concat(b,"-tab"),L=f("div",{key:F,ref:i,class:ye(_,(v={},W(v,"".concat(_,"-with-remove"),l.value),W(v,"".concat(_,"-active"),M),W(v,"".concat(_,"-disabled"),z),v)),style:a.style,onClick:u},[f("div",{role:"tab","aria-selected":M,id:g&&"".concat(g,"-tab-").concat(F),class:"".concat(_,"-btn"),"aria-controls":g&&"".concat(g,"-panel-").concat(F),"aria-disabled":z,tabindex:z?null:0,onClick:function(D){D.stopPropagation(),u(D)},onKeydown:function(D){[ie.SPACE,ie.ENTER].includes(D.which)&&(D.preventDefault(),u(D))},onFocus:N},[typeof E=="function"?E():E]),l.value&&f("button",{type:"button","aria-label":A||"remove",tabindex:0,class:"".concat(_,"-remove"),onClick:function(D){D.stopPropagation(),c(D)}},[(x==null?void 0:x())||((s=H.removeIcon)===null||s===void 0?void 0:s.call(H))||"×"])]);return d?d(L):L}}});var yt={width:0,height:0,left:0,top:0};function va(n,e){var t=k(new Map);return Le(function(){for(var r,a=new Map,i=n.value,u=e.value.get((r=i[0])===null||r===void 0?void 0:r.key)||yt,c=u.left+u.width,l=0;l<i.length;l+=1){var v=i[l].key,s=e.value.get(v);if(!s){var b;s=e.value.get((b=i[l-1])===null||b===void 0?void 0:b.key)||yt}var g=a.get(v)||R({},s);g.right=c-g.left-g.width,a.set(v,g)}t.value=new Map(a)}),t}const kt=de({compatConfig:{MODE:3},name:"AddButton",inheritAttrs:!1,props:{prefixCls:String,editable:{type:Object},locale:{type:Object,default:void 0}},setup:function(e,t){var r=t.expose,a=t.attrs,i=k();return r({domRef:i}),function(){var u=e.prefixCls,c=e.editable,l=e.locale;return!c||c.showAdd===!1?null:f("button",{ref:i,type:"button",class:"".concat(u,"-nav-add"),style:a.style,"aria-label":(l==null?void 0:l.addAriaLabel)||"Add tab",onClick:function(s){c.onEdit("add",{event:s})}},[c.addIcon?c.addIcon():"+"])}}});var sa={prefixCls:{type:String},id:{type:String},tabs:{type:Object},rtl:{type:Boolean},tabBarGutter:{type:Number},activeKey:{type:[String,Number]},mobile:{type:Boolean},moreIcon:Ke.any,moreTransitionName:{type:String},editable:{type:Object},locale:{type:Object,default:void 0},removeAriaLabel
|