7 lines
41 KiB
JavaScript
7 lines
41 KiB
JavaScript
import{E as Tt}from"./el-alert-oogOlvLD.js";import{O as Rt,E as Fe}from"./el-popper-DAm2mVaB.js";import{f as He,E as ie,e as Ot}from"./index-Cp3It01C.js";import{E as he}from"./el-tag-BhOuL4lf.js";import{v as Ft}from"./directive-BVaYA311.js";import{d as J,h as j,B as W,G as We,f as Y,H as qe,y as _,F as le,b as Nt,R as Se,V as Ee,ba as q,D as Xe,aT as Dt,a9 as ve,j as h,bb as Bt,P as Lt,ai as z,o as c,e as N,w as p,s as C,bc as Pt,bd as At,W as fe,S as Mt,E as Ze,a as Ne,aW as Kt,am as Jt,N as Qe,c as R,aX as xe,Y as _e,n as se,g as A,q as o,r as zt,aL as Oe,M as Z,be as ze,al as jt,l as Gt,ab as et,ad as pe,x as L,aa as T,aR as Ut,K as je,ac as Yt,A as ae,aY as Ht,aZ as Wt}from"./index-DMfSG-9l.js";import{E as Te}from"./index-CtE6E8j5.js";import"./el-tooltip-l0sNRNKZ.js";import{A as qt}from"./AppConfirmDialog-io-Joa8G.js";import{P as Xt}from"./PageCard-BOBBu5NI.js";import{b as Zt,f as Qt,h as Re,i as xt,j as en,k as tn,l as nn}from"./dataset-DlN43bkd.js";import{E as on,a as an}from"./el-select-C8XVvVg6.js";import{_ as Q}from"./index-CJA4tZk1.js";import{E as ln}from"./el-scrollbar-B3-sB_hq.js";import{d as sn,a as tt,b as rn}from"./dropdown-BAEkU2tA.js";import{c as un}from"./castArray-qEIBurnE.js";import{c as nt,E as dn}from"./el-dialog-CGSDUoRt.js";import{_ as re}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{E as ot}from"./index-DYpWD2QI.js";import{E as cn}from"./el-pagination-Dl141Xco.js";import{E as vn,a as fn}from"./el-table-Cp5xAgqT.js";import"./el-checkbox-U4Gmy-zV.js";import{E as pn,a as mn}from"./el-form-item-rY4vNiXx.js";import"./vnode-DQ45xHFU.js";import"./index-BqlQpMip.js";import"./validator-WVQr2HNG.js";import"./index-DHvxCawT.js";import"./clamp-B9tkuT1F.js";import"./toNumber-COrtsVXo.js";import"./index-h-ZEyEHT.js";import"./scroll-D2ojO4wB.js";import"./raf-Cz9mkNBb.js";import"./el-card-CMZq6FhB.js";import"./index-YDvJ5KV2.js";import"./index-D3hDDBfW.js";import"./_baseIteratee-bMWfS5oT.js";import"./use-dialog-CRHE-RMe.js";import"./_baseClone-DE0sfIfI.js";import"./debounce-CVrTo2Ot.js";import"./omit-teeY8va1.js";const Ce=Symbol("elDropdown"),at="elDropdown";var gn=J({inheritAttrs:!1});function wn(e,l,s,a,m,i){return j(e.$slots,"default")}var yn=Q(gn,[["render",wn]]),bn=J({name:"ElCollectionItem",inheritAttrs:!1});function _n(e,l,s,a,m,i){return j(e.$slots,"default")}var hn=Q(bn,[["render",_n]]);const lt="data-el-collection-item",En=e=>{const l=`El${e}Collection`,s=`${l}Item`,a=Symbol(l),m=Symbol(s);return{COLLECTION_INJECTION_KEY:a,COLLECTION_ITEM_INJECTION_KEY:m,ElCollection:Object.assign({},yn,{name:l,setup(){const i=_(),t=new Map;le(a,{itemMap:t,getItems:(()=>{const w=Y(i);if(!w)return[];const d=Array.from(w.querySelectorAll(`[${lt}]`));return[...t.values()].sort((y,b)=>d.indexOf(y.ref)-d.indexOf(b.ref))}),collectionRef:i})}}),ElCollectionItem:Object.assign({},hn,{name:s,setup(i,{attrs:t}){const u=_(),w=W(a,void 0);le(m,{collectionItemRef:u}),We(()=>{const d=Y(u);d&&w.itemMap.set(d,{ref:d,...t})}),qe(()=>{const d=Y(u);w.itemMap.delete(d)})}})}},Cn=Nt({style:{type:Se([String,Array,Object,Boolean]),default:void 0},currentTabId:{type:Se(String)},defaultCurrentTabId:String,loop:Boolean,dir:{type:String,values:["ltr","rtl"],default:"ltr"},orientation:{type:Se(String)},onBlur:Function,onFocus:Function,onMousedown:Function}),{ElCollection:In,ElCollectionItem:kn,COLLECTION_INJECTION_KEY:st,COLLECTION_ITEM_INJECTION_KEY:$n}=En("RovingFocusGroup"),De=Symbol("elRovingFocusGroup"),it=Symbol("elRovingFocusGroupItem"),Vn={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"},Sn=(e,l)=>e,Tn=(e,l,s)=>{const a=Sn(Ee(e));return Vn[a]},Rn=(e,l)=>e.map((s,a)=>e[(a+l)%e.length]),Ge=e=>{const{activeElement:l}=document;for(const s of e)if(s===l||(s.focus(),l!==document.activeElement))return},Ue="currentTabIdChange",Ye="rovingFocusGroup.entryFocus",On={bubbles:!1,cancelable:!0};var Fn=J({name:"ElRovingFocusGroupImpl",inheritAttrs:!1,props:Cn,emits:[Ue,"entryFocus"],setup(e,{emit:l}){const s=_((e.currentTabId||e.defaultCurrentTabId)??null),a=_(!1),m=_(!1),i=_(),{getItems:t}=W(st,void 0),u=h(()=>[{outline:"none"},e.style]),w=S=>{l(Ue,S)},d=()=>{a.value=!0},y=q(S=>{var F;(F=e.onMousedown)==null||F.call(e,S)},()=>{m.value=!0}),b=q(S=>{var F;(F=e.onFocus)==null||F.call(e,S)},S=>{const F=!Y(m),{target:g,currentTarget:f}=S;if(g===f&&F&&!Y(a)){const $=new Event(Ye,On);if(f==null||f.dispatchEvent($),!$.defaultPrevented){const I=t().filter(k=>k.focusable);Ge([I.find(k=>k.active),I.find(k=>k.id===Y(s)),...I].filter(Boolean).map(k=>k.ref))}}m.value=!1}),v=q(S=>{var F;(F=e.onBlur)==null||F.call(e,S)},()=>{a.value=!1}),O=(...S)=>{l("entryFocus",...S)},D=S=>{const F=Tn(S);if(F){S.preventDefault();let g=t().filter(f=>f.focusable).map(f=>f.ref);switch(F){case"last":g.reverse();break;case"prev":case"next":{F==="prev"&&g.reverse();const f=g.indexOf(S.currentTarget);g=e.loop?Rn(g,f+1):g.slice(f+1);break}}Lt(()=>{Ge(g)})}};le(De,{currentTabbedId:Bt(s),loop:ve(e,"loop"),tabIndex:h(()=>Y(a)?-1:0),rovingFocusGroupRef:i,rovingFocusGroupRootStyle:u,orientation:ve(e,"orientation"),dir:ve(e,"dir"),onItemFocus:w,onItemShiftTab:d,onBlur:v,onFocus:b,onMousedown:y,onKeydown:D}),Xe(()=>e.currentTabId,S=>{s.value=S??null}),Dt(i,Ye,O)}});function Nn(e,l,s,a,m,i){return j(e.$slots,"default")}var Dn=Q(Fn,[["render",Nn]]),Bn=J({name:"ElRovingFocusGroup",components:{ElFocusGroupCollection:In,ElRovingFocusGroupImpl:Dn}});function Ln(e,l,s,a,m,i){const t=z("el-roving-focus-group-impl"),u=z("el-focus-group-collection");return c(),N(u,null,{default:p(()=>[C(t,Pt(At(e.$attrs)),{default:p(()=>[j(e.$slots,"default")]),_:3},16)]),_:3})}var Pn=Q(Bn,[["render",Ln]]),An=J({components:{ElRovingFocusCollectionItem:kn},props:{focusable:{type:Boolean,default:!0},active:Boolean},emits:["mousedown","focus","keydown"],setup(e,{emit:l}){const{currentTabbedId:s,onItemFocus:a,onItemShiftTab:m,onKeydown:i}=W(De,void 0),t=He(),u=_(),w=q(v=>{l("mousedown",v)},v=>{e.focusable?a(Y(t)):v.preventDefault()}),d=q(v=>{l("focus",v)},()=>{a(Y(t))}),y=q(v=>{l("keydown",v)},v=>{const{shiftKey:O,target:D,currentTarget:S}=v;if(Ee(v)===fe.tab&&O){m();return}D===S&&i(v)}),b=h(()=>s.value===Y(t));return le(it,{rovingFocusGroupItemRef:u,tabIndex:h(()=>Y(b)?0:-1),handleMousedown:w,handleFocus:d,handleKeydown:y}),{id:t,handleKeydown:y,handleFocus:d,handleMousedown:w}}});function Mn(e,l,s,a,m,i){const t=z("el-roving-focus-collection-item");return c(),N(t,{id:e.id,focusable:e.focusable,active:e.active},{default:p(()=>[j(e.$slots,"default")]),_:3},8,["id","focusable","active"])}var Kn=Q(An,[["render",Mn]]),Jn=Pn;const{ButtonGroup:zn}=ie;var jn=J({name:"ElDropdown",components:{ElButton:ie,ElButtonGroup:zn,ElScrollbar:ln,ElTooltip:Fe,ElRovingFocusGroup:Jn,ElOnlyChild:Rt,ElIcon:Ze,ArrowDown:Mt},props:sn,emits:["visible-change","click","command"],setup(e,{emit:l}){const s=Qe(),a=Ne("dropdown"),{t:m}=Kt(),i=_(),t=_(),u=_(),w=_(),d=_(null),y=_(null),b=_(!1),v=h(()=>({maxHeight:Jt(e.maxHeight)})),O=h(()=>[a.m(I.value)]),D=h(()=>un(e.trigger)),S=He().value,F=h(()=>e.id||S);function g(){var B;(B=u.value)==null||B.onClose(void 0,0)}function f(){var B;(B=u.value)==null||B.onClose()}function $(){var B;(B=u.value)==null||B.onOpen()}const I=Ot();function k(...B){l("command",...B)}function M(){}function G(){const B=Y(w);D.value.includes("hover")&&(B==null||B.focus({preventScroll:!0})),y.value=null}function x(B){y.value=B}function ee(){l("visible-change",!0)}function V(B){var me;b.value=(B==null?void 0:B.type)==="keydown",(me=w.value)==null||me.focus()}function X(){l("visible-change",!1)}return le(Ce,{contentRef:w,role:h(()=>e.role),triggerId:F,isUsingKeyboard:b,onItemEnter:M,onItemLeave:G,handleClose:f}),le(at,{instance:s,dropdownSize:I,handleClick:g,commandHandler:k,trigger:ve(e,"trigger"),hideOnClick:ve(e,"hideOnClick")}),{t:m,ns:a,scrollbar:d,wrapStyle:v,dropdownTriggerKls:O,dropdownSize:I,triggerId:F,currentTabId:y,handleCurrentTabIdChange:x,handlerMainButtonClick:B=>{l("click",B)},handleClose:f,handleOpen:$,handleBeforeShowTooltip:ee,handleShowTooltip:V,handleBeforeHideTooltip:X,popperRef:u,contentRef:w,triggeringElementRef:i,referenceElementRef:t}}});function Gn(e,l,s,a,m,i){const t=z("el-roving-focus-group"),u=z("el-scrollbar"),w=z("el-only-child"),d=z("el-tooltip"),y=z("el-button"),b=z("arrow-down"),v=z("el-icon"),O=z("el-button-group");return c(),R("div",{class:se([e.ns.b(),e.ns.is("disabled",e.disabled)])},[C(d,{ref:"popperRef",role:e.role,effect:e.effect,"fallback-placements":["bottom","top"],"popper-options":e.popperOptions,"gpu-acceleration":!1,placement:e.placement,"popper-class":[e.ns.e("popper"),e.popperClass],"popper-style":e.popperStyle,trigger:e.trigger,"trigger-keys":e.triggerKeys,"trigger-target-el":e.contentRef,"show-arrow":e.showArrow,"show-after":e.trigger==="hover"?e.showTimeout:0,"hide-after":e.trigger==="hover"?e.hideTimeout:0,"virtual-ref":e.virtualRef??e.triggeringElementRef,"virtual-triggering":e.virtualTriggering||e.splitButton,disabled:e.disabled,transition:`${e.ns.namespace.value}-zoom-in-top`,teleported:e.teleported,"append-to":e.appendTo,pure:"","focus-on-target":"",persistent:e.persistent,onBeforeShow:e.handleBeforeShowTooltip,onShow:e.handleShowTooltip,onBeforeHide:e.handleBeforeHideTooltip},xe({content:p(()=>[C(u,{ref:"scrollbar","wrap-style":e.wrapStyle,tag:"div","view-class":e.ns.e("list")},{default:p(()=>[C(t,{loop:e.loop,"current-tab-id":e.currentTabId,orientation:"horizontal",onCurrentTabIdChange:e.handleCurrentTabIdChange},{default:p(()=>[j(e.$slots,"dropdown")]),_:3},8,["loop","current-tab-id","onCurrentTabIdChange"])]),_:3},8,["wrap-style","view-class"])]),_:2},[e.splitButton?void 0:{name:"default",fn:p(()=>[C(w,{id:e.triggerId,ref:"triggeringElementRef",role:"button",tabindex:e.tabindex},{default:p(()=>[j(e.$slots,"default")]),_:3},8,["id","tabindex"])]),key:"0"}]),1032,["role","effect","popper-options","placement","popper-class","popper-style","trigger","trigger-keys","trigger-target-el","show-arrow","show-after","hide-after","virtual-ref","virtual-triggering","disabled","transition","teleported","append-to","persistent","onBeforeShow","onShow","onBeforeHide"]),e.splitButton?(c(),N(O,{key:0},{default:p(()=>[C(y,_e({ref:"referenceElementRef"},e.buttonProps,{size:e.dropdownSize,type:e.type,disabled:e.disabled,tabindex:e.tabindex,onClick:e.handlerMainButtonClick}),{default:p(()=>[j(e.$slots,"default")]),_:3},16,["size","type","disabled","tabindex","onClick"]),C(y,_e({id:e.triggerId,ref:"triggeringElementRef"},e.buttonProps,{role:"button",size:e.dropdownSize,type:e.type,class:e.ns.e("caret-button"),disabled:e.disabled,tabindex:e.tabindex,"aria-label":e.t("el.dropdown.toggleDropdown")}),{default:p(()=>[C(v,{class:se(e.ns.e("icon"))},{default:p(()=>[C(b)]),_:1},8,["class"])]),_:1},16,["id","size","type","class","disabled","tabindex","aria-label"])]),_:3})):A("v-if",!0)],2)}var Un=Q(jn,[["render",Gn]]),Yn=J({name:"DropdownItemImpl",components:{ElIcon:Ze},props:tt,emits:["pointermove","pointerleave","click","clickimpl"],setup(e,{emit:l}){const s=Ne("dropdown"),{role:a}=W(Ce,void 0),{collectionItemRef:m}=W($n,void 0),{rovingFocusGroupItemRef:i,tabIndex:t,handleFocus:u,handleKeydown:w,handleMousedown:d}=W(it,void 0),y=nt(m,i),b=h(()=>a.value==="menu"?"menuitem":a.value==="navigation"?"link":"button"),v=q(O=>{const D=Ee(O);if([fe.enter,fe.numpadEnter,fe.space].includes(D))return O.preventDefault(),O.stopImmediatePropagation(),l("clickimpl",O),!0},w);return{ns:s,itemRef:y,dataset:{[lt]:""},role:b,tabIndex:t,handleFocus:u,handleKeydown:v,handleMousedown:d}}});const Hn=["aria-disabled","tabindex","role"];function Wn(e,l,s,a,m,i){const t=z("el-icon");return c(),R(Z,null,[e.divided?(c(),R("li",{key:0,role:"separator",class:se(e.ns.bem("menu","item","divided"))},null,2)):A("v-if",!0),o("li",_e({ref:e.itemRef},{...e.dataset,...e.$attrs},{"aria-disabled":e.disabled,class:[e.ns.be("menu","item"),e.ns.is("disabled",e.disabled)],tabindex:e.tabIndex,role:e.role,onClick:l[0]||(l[0]=u=>e.$emit("clickimpl",u)),onFocus:l[1]||(l[1]=(...u)=>e.handleFocus&&e.handleFocus(...u)),onKeydown:l[2]||(l[2]=Oe((...u)=>e.handleKeydown&&e.handleKeydown(...u),["self"])),onMousedown:l[3]||(l[3]=(...u)=>e.handleMousedown&&e.handleMousedown(...u)),onPointermove:l[4]||(l[4]=u=>e.$emit("pointermove",u)),onPointerleave:l[5]||(l[5]=u=>e.$emit("pointerleave",u))}),[e.icon||e.$slots.icon?(c(),N(t,{key:0},{default:p(()=>[j(e.$slots,"icon",{},()=>[(c(),N(zt(e.icon)))])]),_:3})):A("v-if",!0),j(e.$slots,"default")],16,Hn)],64)}var qn=Q(Yn,[["render",Wn]]);const rt=()=>{const e=W(at,{});return{elDropdown:e,_elDropdownSize:h(()=>e==null?void 0:e.dropdownSize)}};var Xn=J({name:"ElDropdownItem",components:{ElRovingFocusItem:Kn,ElDropdownItemImpl:qn},inheritAttrs:!1,props:tt,emits:["pointermove","pointerleave","click"],setup(e,{emit:l,attrs:s}){const{elDropdown:a}=rt(),m=Qe(),{onItemEnter:i,onItemLeave:t}=W(Ce,void 0),u=q(d=>(l("pointermove",d),d.defaultPrevented),ze(d=>{if(e.disabled){t(d);return}const y=d.currentTarget;y===document.activeElement||y.contains(document.activeElement)||(i(d),d.defaultPrevented||y==null||y.focus({preventScroll:!0}))})),w=q(d=>(l("pointerleave",d),d.defaultPrevented),ze(t));return{handleClick:q(d=>{if(!e.disabled)return l("click",d),d.type!=="keydown"&&d.defaultPrevented},d=>{var y,b,v;if(e.disabled){d.stopImmediatePropagation();return}(y=a==null?void 0:a.hideOnClick)!=null&&y.value&&((b=a.handleClick)==null||b.call(a)),(v=a.commandHandler)==null||v.call(a,e.command,m,d)}),handlePointerMove:u,handlePointerLeave:w,propsAndAttrs:h(()=>({...e,...s}))}}});function Zn(e,l,s,a,m,i){const t=z("el-dropdown-item-impl"),u=z("el-roving-focus-item");return c(),N(u,{focusable:!e.disabled},{default:p(()=>[C(t,_e(e.propsAndAttrs,{onPointerleave:e.handlePointerLeave,onPointermove:e.handlePointerMove,onClickimpl:e.handleClick}),xe({default:p(()=>[j(e.$slots,"default")]),_:2},[e.$slots.icon?{name:"icon",fn:p(()=>[j(e.$slots,"icon")]),key:"0"}:void 0]),1040,["onPointerleave","onPointermove","onClickimpl"])]),_:3},8,["focusable"])}var ut=Q(Xn,[["render",Zn]]),Qn=J({name:"ElDropdownMenu",props:rn,setup(e){const l=Ne("dropdown"),{_elDropdownSize:s}=rt(),a=s.value,{contentRef:m,role:i,triggerId:t,isUsingKeyboard:u,handleClose:w}=W(Ce,void 0),{rovingFocusGroupRef:d,rovingFocusGroupRootStyle:y,onBlur:b,onFocus:v,onKeydown:O,onMousedown:D}=W(De,void 0),{collectionRef:S}=W(st,void 0),F=h(()=>[l.b("menu"),l.bm("menu",a==null?void 0:a.value)]),g=nt(m,d,S),f=q(I=>{var k;(k=e.onKeydown)==null||k.call(e,I)},I=>{const{currentTarget:k,target:M}=I,G=Ee(I);if(k.contains(M),fe.tab===G)return w();O(I)});function $(I){u.value&&v(I)}return{size:a,rovingFocusGroupRootStyle:y,dropdownKls:F,role:i,triggerId:t,dropdownListWrapperRef:g,handleKeydown:f,onBlur:b,handleFocus:$,onMousedown:D}}});const xn=["role","aria-labelledby"];function eo(e,l,s,a,m,i){return c(),R("ul",{ref:e.dropdownListWrapperRef,class:se(e.dropdownKls),style:jt(e.rovingFocusGroupRootStyle),tabindex:-1,role:e.role,"aria-labelledby":e.triggerId,onFocusin:l[0]||(l[0]=(...t)=>e.handleFocus&&e.handleFocus(...t)),onFocusout:l[1]||(l[1]=(...t)=>e.onBlur&&e.onBlur(...t)),onKeydown:l[2]||(l[2]=Oe((...t)=>e.handleKeydown&&e.handleKeydown(...t),["self"])),onMousedown:l[3]||(l[3]=Oe((...t)=>e.onMousedown&&e.onMousedown(...t),["self"]))},[j(e.$slots,"default")],46,xn)}var dt=Q(Qn,[["render",eo]]);const to=Gt(Un,{DropdownItem:ut,DropdownMenu:dt}),no=et(ut),oo=et(dt);function ct(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ao(e,l,s){try{const a=JSON.parse(e);return{sourceIndex:l,displayIndex:s,raw:e,kind:ct(a)?"object":"primitive",value:a}}catch(a){return{sourceIndex:l,displayIndex:s,raw:e,kind:"invalid",value:e,error:a instanceof Error?a.message:"JSON 格式不正确"}}}function lo(e,l){const s=l.toLowerCase();if(s.endsWith(".jsonl")){const a=[];return e.split(`
|
||
`).forEach((m,i)=>{m.trim()&&a.push(ao(m,i,a.length+1))}),{supported:!0,records:a}}if(s.endsWith(".json"))try{const a=JSON.parse(e);return{supported:!0,records:(Array.isArray(a)?a:[a]).map((i,t)=>({sourceIndex:t,displayIndex:t+1,raw:JSON.stringify(i),kind:ct(i)?"object":"primitive",value:i}))}}catch(a){return{supported:!0,records:[{sourceIndex:0,displayIndex:1,raw:e,kind:"invalid",value:e,error:a instanceof Error?a.message:"JSON 格式不正确"}]}}return{supported:!1,records:[]}}function so(e,l,s,a){const m=l.toLowerCase();if(m.endsWith(".jsonl")){const i=e.split(`
|
||
`);if(s<0||s>=i.length)throw new Error("目标样本不存在");return i[s]=JSON.stringify(a),i.join(`
|
||
`)}if(m.endsWith(".json")){let i;try{i=JSON.parse(e)}catch{if(s!==0)throw new Error("目标样本不存在");return JSON.stringify(a,null,2)}if(Array.isArray(i)){if(s<0||s>=i.length)throw new Error("目标样本不存在");return i[s]=a,JSON.stringify(i,null,2)}if(s!==0)throw new Error("目标样本不存在");return JSON.stringify(a,null,2)}throw new Error("当前文件不支持逐条编辑")}const io={class:"version-control-bar","aria-label":"数据集版本控制"},ro={class:"version-selector-group"},uo={class:"version-status",role:"status","aria-live":"polite"},co={key:0,class:"fa fa-ellipsis-h","aria-hidden":"true"},vo=J({__name:"DatasetVersionBar",props:{modelValue:{},versions:{},viewedVersion:{},activeVersionId:{},isViewingActiveVersion:{type:Boolean},hasPendingVersionChanges:{type:Boolean},versionLoading:{type:Boolean},savingRecord:{type:Boolean},activatingVersion:{type:Boolean},deletingVersion:{type:Boolean}},emits:["update:modelValue","change","activate","delete"],setup(e,{emit:l}){const s=e,a=l,m=h(()=>s.versionLoading||s.savingRecord||s.activatingVersion||s.deletingVersion),i=h(()=>{var b;return((b=s.viewedVersion)==null?void 0:b.version)===1?"初始版本不可删除":s.versions.length<=1?"至少需要保留一个版本":""}),t=h(()=>m.value||!!i.value);function u(b){return new Date(b).toLocaleString("zh-CN",{hour12:!1})}function w(b){const v=b.id===s.activeVersionId?"当前版本":"历史版本";return`V${b.version} · ${v} · ${u(b.create_time)}`}function d(b){a("update:modelValue",b),a("change",b)}function y(b){if(!m.value){if(b==="activate"){a("activate");return}t.value||a("delete")}}return(b,v)=>{const O=an,D=on,S=he,F=ie,g=no,f=oo,$=to;return c(),R("section",io,[o("div",ro,[v[0]||(v[0]=o("label",{for:"dataset-version-select"},"数据版本",-1)),C(D,{id:"dataset-version-select","model-value":e.modelValue,class:"version-select",loading:e.versionLoading,disabled:e.versionLoading||e.savingRecord,"aria-label":"选择要查看的数据集版本",onChange:d},{default:p(()=>[(c(!0),R(Z,null,pe(e.versions,I=>(c(),N(O,{key:I.id,label:w(I),value:I.id},null,8,["label","value"]))),128))]),_:1},8,["model-value","loading","disabled"])]),o("div",uo,[e.viewedVersion?(c(),R(Z,{key:0},[e.isViewingActiveVersion?(c(),N(S,{key:0,type:"success"},{default:p(()=>[L(" V"+T(e.viewedVersion.version)+" · 当前版本 ",1)]),_:1})):(c(),N(S,{key:1,type:"info"},{default:p(()=>[L("V"+T(e.viewedVersion.version)+" · 历史版本(只读)",1)]),_:1})),e.hasPendingVersionChanges?(c(),N(S,{key:2,type:"warning"},{default:p(()=>[...v[1]||(v[1]=[L("有待保存修改",-1)])]),_:1})):A("",!0),o("span",null,T(e.viewedVersion.description||"无版本说明")+" · "+T(u(e.viewedVersion.create_time)),1)],64)):A("",!0)]),e.viewedVersion&&!e.isViewingActiveVersion?(c(),N($,{key:0,class:"version-actions",trigger:"click",placement:"bottom-end","popper-class":"version-actions-popper",disabled:m.value,onCommand:y},{dropdown:p(()=>[C(f,null,{default:p(()=>[C(g,{command:"activate",class:"version-action-primary",disabled:m.value},{default:p(()=>[...v[2]||(v[2]=[o("i",{class:"fa fa-check-circle","aria-hidden":"true"},null,-1),L(" 设为当前版本 ",-1)])]),_:1},8,["disabled"]),C(g,{command:"delete",class:"version-action-danger",disabled:t.value,title:i.value||void 0,divided:""},{default:p(()=>[...v[3]||(v[3]=[o("i",{class:"fa fa-trash-o","aria-hidden":"true"},null,-1),L(" 删除版本 ",-1)])]),_:1},8,["disabled","title"])]),_:1})]),default:p(()=>[C(F,{class:"version-actions-button",loading:e.activatingVersion||e.deletingVersion,disabled:m.value,"aria-label":"打开历史版本操作菜单"},{default:p(()=>[!e.activatingVersion&&!e.deletingVersion?(c(),R("i",co)):A("",!0)]),_:1},8,["loading","disabled"])]),_:1},8,["disabled"])):A("",!0)])}}}),fo=re(vo,[["__scopeId","data-v-e7e4bc14"]]),po={class:"records-viewer"},mo={class:"records-toolbar"},go={key:0,class:"viewer-state record-empty-state"},wo={key:1,class:"record-table-shell","aria-label":"数据样本表格"},yo={class:"table-index"},bo={class:"table-cell-text"},_o={class:"table-cell-text"},ho={key:2,class:"records-pagination"},be=10,Eo=J({__name:"DatasetRecordTable",props:{records:{},isViewingActiveVersion:{type:Boolean},versionId:{}},emits:["edit"],setup(e,{emit:l}){const s=e,a=l,m=_(""),i=_(1),t=h(()=>{const g=new Set;s.records.forEach($=>{$.kind==="object"&&Object.keys($.value).forEach(I=>g.add(I))});const f=["instruction","question","prompt","input","context","output","answer","response"];return[...g].sort(($,I)=>{const k=M=>{const G=f.indexOf(M);return G===-1?f.length:G};return k($)-k(I)})}),u=h(()=>t.value.slice(0,6)),w=h(()=>s.records.filter(g=>g.kind==="invalid").length),d=h(()=>t.value.length>u.value.length),y=h(()=>{const g=m.value.trim().toLowerCase();return g?s.records.filter(f=>JSON.stringify(f.value).toLowerCase().includes(g)):s.records}),b=h(()=>{const g=(i.value-1)*be;return y.value.slice(g,g+be)});Xe(()=>s.versionId,()=>{m.value="",i.value=1});function v(g){return g}function O(g){return typeof g=="string"?g||"(空)":JSON.stringify(g)}function D(g,f){if(g.kind!=="object")return g.kind==="invalid"?g.raw:O(g.value);const $=g.value;return Object.prototype.hasOwnProperty.call($,f)?O($[f]):"-"}function S(g){if(g.kind!=="object")return"-";const f=g.value;return t.value.filter($=>!u.value.includes($)&&Object.prototype.hasOwnProperty.call(f,$)).map($=>`${$}: ${O(f[$])}`).join(";")||"-"}function F({row:g}){return g.kind==="invalid"?"record-table-row-invalid":""}return(g,f)=>{const $=he,I=ot,k=vn,M=Fe,G=ie,x=fn,ee=cn;return c(),R("div",po,[o("div",mo,[o("div",null,[f[3]||(f[3]=o("strong",null,"样本数据",-1)),o("span",null,"共 "+T(e.records.length.toLocaleString())+" 条",1),w.value?(c(),N($,{key:0,size:"small",type:"danger"},{default:p(()=>[L(T(w.value)+" 条格式错误 ",1)]),_:1})):A("",!0)]),C(I,{modelValue:m.value,"onUpdate:modelValue":f[0]||(f[0]=V=>m.value=V),class:"record-search",clearable:"",placeholder:"搜索样本内容","aria-label":"搜索样本内容",onInput:f[1]||(f[1]=V=>i.value=1)},{prefix:p(()=>[...f[4]||(f[4]=[o("i",{class:"fa fa-search"},null,-1)])]),_:1},8,["modelValue"])]),y.value.length?(c(),R("div",wo,[C(x,{data:b.value,"row-key":"sourceIndex",stripe:"",border:"",class:"record-table","row-class-name":F},{default:p(()=>[C(k,{label:"序号",width:"76",align:"center"},{default:p(({row:V})=>[o("div",yo,[o("strong",null,T(V.displayIndex),1),o("small",null,"第 "+T(V.sourceIndex+1)+" 行",1)])]),_:1}),(c(!0),R(Z,null,pe(u.value,V=>(c(),N(k,{key:V,label:V,"min-width":"220"},{default:p(({row:X})=>[C(M,{content:D(X,V),placement:"top","show-after":400},{default:p(()=>[o("div",bo,T(D(X,V)),1)]),_:2},1032,["content"])]),_:2},1032,["label"]))),128)),d.value?(c(),N(k,{key:0,label:"其他字段","min-width":"240"},{default:p(({row:V})=>[C(M,{content:S(V),placement:"top","show-after":400},{default:p(()=>[o("div",_o,T(S(V)),1)]),_:2},1032,["content"])]),_:1})):A("",!0),C(k,{label:"状态",width:"96",align:"center"},{default:p(({row:V})=>[V.kind==="invalid"?(c(),N($,{key:0,size:"small",type:"danger"},{default:p(()=>[...f[6]||(f[6]=[L(" 格式错误 ",-1)])]),_:1})):V.kind==="primitive"?(c(),N($,{key:1,size:"small",type:"warning"},{default:p(()=>[...f[7]||(f[7]=[L(" 非对象 ",-1)])]),_:1})):(c(),N($,{key:2,size:"small",type:"success"},{default:p(()=>[...f[8]||(f[8]=[L("正常",-1)])]),_:1}))]),_:1}),C(k,{label:"操作",width:"96",align:"center",fixed:"right"},{default:p(({row:V})=>[C(G,{type:"primary",link:"",disabled:!e.isViewingActiveVersion,title:e.isViewingActiveVersion?"":"历史版本为只读,请先设为当前版本","aria-label":`${V.kind==="invalid"?"修复":"编辑"}第 ${V.displayIndex} 条数据`,onClick:X=>a("edit",V)},{default:p(()=>[o("i",{class:se(V.kind==="invalid"?"fa fa-wrench":"fa fa-pencil")},null,2),L(" "+T(V.kind==="invalid"?"修复":"编辑"),1)]),_:2},1032,["disabled","title","aria-label","onClick"])]),_:1})]),_:1},8,["data"])])):(c(),R("div",go,[...f[5]||(f[5]=[o("i",{class:"fa fa-search","aria-hidden":"true"},null,-1),o("span",null,"没有找到匹配的样本",-1)])])),y.value.length>be?(c(),R("div",ho,[C(ee,{"current-page":i.value,"onUpdate:currentPage":f[2]||(f[2]=V=>i.value=V),"page-size":be,total:y.value.length,layout:"prev, pager, next",background:""},null,8,["current-page","total"])])):A("",!0)])}}}),Co=re(Eo,[["__scopeId","data-v-7e2fd767"]]),Io={class:"editor-hint"},ko={key:0,class:"field-helper"},$o={key:1,class:"raw-record-editor"},Vo={for:"raw-record-draft"},So={class:"record-editor-actions"},To=J({__name:"DatasetRecordEditorDialog",props:{modelValue:{type:Boolean},record:{},editFields:{},rawDraft:{},savingRecord:{type:Boolean},hasDraftChanges:{type:Boolean},nextVersionNumber:{}},emits:["close","save","update:field","update:rawDraft"],setup(e,{emit:l}){const s=l;function a(i){s("close",i)}function m(i){(i.ctrlKey||i.metaKey)&&i.key.toLowerCase()==="s"&&(i.preventDefault(),s("save"))}return(i,t)=>{const u=ot,w=mn,d=pn,y=ie,b=dn;return c(),N(b,{"model-value":e.modelValue,class:"record-editor-dialog",width:"min(720px, 92vw)",title:e.record?`编辑第 ${e.record.displayIndex} 条数据`:"编辑数据","close-on-click-modal":!1,"close-on-press-escape":!e.savingRecord,"show-close":!e.savingRecord,"before-close":a,"destroy-on-close":""},{footer:p(()=>[o("div",So,[o("span",null,T(e.hasDraftChanges?"有未暂存修改":"尚未修改")+" · Ctrl/⌘ + S 暂存",1),o("div",null,[C(y,{disabled:e.savingRecord,onClick:t[1]||(t[1]=v=>s("close"))},{default:p(()=>[...t[4]||(t[4]=[L("取消",-1)])]),_:1},8,["disabled"]),C(y,{type:"primary",loading:e.savingRecord,disabled:!e.hasDraftChanges,onClick:t[2]||(t[2]=v=>s("save"))},{default:p(()=>[...t[5]||(t[5]=[L(" 暂存修改 ",-1)])]),_:1},8,["loading","disabled"])])])]),default:p(()=>[e.record?(c(),R("div",{key:0,class:"record-editor",onKeydown:m},[o("div",Io,[t[3]||(t[3]=o("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),L(" 当前修改会先暂存;完成多条修改后,点击文件工具栏中的“保存版本”创建 V"+T(e.nextVersionNumber)+"。 ",1)]),e.record.kind==="object"?(c(),N(d,{key:0,"label-position":"top"},{default:p(()=>[(c(!0),R(Z,null,pe(e.editFields,(v,O)=>(c(),N(w,{key:v.key,label:v.key},{default:p(()=>[C(u,{"model-value":v.value,type:"textarea",rows:v.isJson?5:3,"aria-label":`编辑字段 ${v.key}`,placeholder:v.isJson?"请输入合法 JSON":`请输入 ${v.key}`,"onUpdate:modelValue":D=>s("update:field",O,D)},null,8,["model-value","rows","aria-label","placeholder","onUpdate:modelValue"]),v.isJson?(c(),R("small",ko," 该字段为对象、数组或数值,请保持合法 JSON 格式。 ")):A("",!0)]),_:2},1032,["label"]))),128))]),_:1})):(c(),R("div",$o,[o("label",Vo,T(e.record.kind==="invalid"?"修复 JSON 内容":"JSON 内容"),1),C(u,{id:"raw-record-draft","model-value":e.rawDraft,type:"textarea",rows:10,"aria-label":"编辑当前条 JSON 内容",placeholder:"请输入合法 JSON","onUpdate:modelValue":t[0]||(t[0]=v=>s("update:rawDraft",v))},null,8,["model-value"])]))],32)):A("",!0)]),_:1},8,["model-value","title","close-on-press-escape","show-close"])}}}),Ro=re(To,[["__scopeId","data-v-3901358e"]]),Oo=["aria-label"],Fo={class:"line-number","aria-hidden":"true"},No=J({__name:"DatasetRawPreview",props:{content:{},fileName:{}},setup(e){const l=e,s=h(()=>l.content.split(`
|
||
`).slice(0,100));return(a,m)=>(c(),R("div",{class:"code-viewer",tabindex:"0","aria-label":`${e.fileName||""} 文件内容`},[(c(!0),R(Z,null,pe(s.value,(i,t)=>(c(),R("div",{key:t,class:"code-line"},[o("span",Fo,T(t+1),1),o("code",null,T(i||" "),1)]))),128))],8,Oo))}}),Do=re(No,[["__scopeId","data-v-66746ea9"]]),Bo={class:"split-summary","aria-label":"数据切分统计"},Lo={class:"split-stat train"},Po={class:"split-stat validation"},Ao={class:"split-stat test"},Mo={key:0,class:"split-file-tabs","aria-label":"数据切分文件"},Ko=["onClick"],Jo=J({__name:"DatasetSplitNavigator",props:{files:{},selectedFileId:{},splitCounts:{}},emits:["select"],setup(e,{emit:l}){const s=l;function a(t){return String(t.id||t.name)}function m(t){return t?{train:"训练集",validation:"验证集",test:"测试集"}[t]:"数据文件"}function i(t){return t?{train:"primary",validation:"warning",test:"success"}[t]:"info"}return(t,u)=>{const w=he;return c(),R(Z,null,[o("section",Bo,[o("div",Lo,[u[0]||(u[0]=o("span",null,"训练集",-1)),o("strong",null,T(e.splitCounts.train.toLocaleString()),1)]),o("div",Po,[u[1]||(u[1]=o("span",null,"验证集",-1)),o("strong",null,T(e.splitCounts.validation.toLocaleString()),1)]),o("div",Ao,[u[2]||(u[2]=o("span",null,"测试集",-1)),o("strong",null,T(e.splitCounts.test.toLocaleString()),1)])]),e.files.length>1?(c(),R("nav",Mo,[(c(!0),R(Z,null,pe(e.files,d=>(c(),R("button",{key:a(d),type:"button",class:se(["split-file-tab",{active:a(d)===e.selectedFileId}]),onClick:y=>s("select",d)},[C(w,{type:i(d.split),size:"small"},{default:p(()=>[L(T(m(d.split)),1)]),_:2},1032,["type"]),o("strong",null,T((d.record_count||0).toLocaleString())+" 条",1),o("span",null,T(d.name),1)],10,Ko))),128))])):A("",!0)],64)}}}),zo=re(Jo,[["__scopeId","data-v-b8d078a0"]]),jo={class:"page-header"},Go={class:"page-heading"},Uo={class:"heading-row"},Yo={class:"dataset-overview","aria-label":"数据集概览"},Ho={class:"overview-item"},Wo={class:"overview-item"},qo={class:"overview-item overview-item-wide"},Xo={key:2,class:"preview-workspace","aria-label":"数据集文件详情"},Zo={class:"content-pane"},Qo={class:"content-toolbar"},xo={class:"content-title"},ea={class:"toolbar-actions"},ta=["aria-busy"],na={key:0,class:"viewer-state"},oa={key:1,class:"viewer-state viewer-state-error",role:"alert"},aa={key:2,class:"viewer-state"},la={class:"viewer-footer"},sa={key:0},ia={key:1},ra={key:3,class:"empty-files","aria-label":"空文件列表"},ua=J({__name:"DatasetPreviewView",setup(e){const s=Yt().params.id,a=_(),m=_(!1),i=_(!1),t=_(null),u=_(""),w=_(""),d=_(""),y=_(""),b=_(!1),v=_(null),O=_([]),D=_(""),S=_(""),F=_(!1),g=_(!1),f=_([]),$=_(""),I=_(""),k=_(""),M=_(!1),G=_(!1),x=_(!1),ee=_(1);let V=0;const X=h(()=>{var n;return((n=t.value)==null?void 0:n.files)||[]}),P=h(()=>X.value.find(n=>U(n)===u.value)),B=h(()=>{var n;return((n=t.value)==null?void 0:n.split_counts)||{train:0,validation:0,test:0}}),me=h(()=>w.value?w.value.split(`
|
||
`).length:0),Be=h(()=>{var n;return lo(w.value,((n=P.value)==null?void 0:n.name)||"")}),Ie=h(()=>Be.value.supported),Le=h(()=>Be.value.records),ne=h(()=>f.value.find(n=>n.id===k.value)),te=h(()=>!!k.value&&k.value===I.value),vt=h(()=>{var n;return((n=v.value)==null?void 0:n.kind)==="object"?JSON.stringify(O.value):D.value}),ke=h(()=>b.value&&vt.value!==S.value),ge=h(()=>w.value!==d.value),Pe=h(()=>ke.value||ge.value),ft=h(()=>{var r,E;const n=String(((r=t.value)==null?void 0:r.type)||"").toLowerCase();return Ht[n]||((E=t.value)==null?void 0:E.type)||"-"}),pt=h(()=>{var r;const n=((r=t.value)==null?void 0:r.storage_type)||"";return Wt[n]||n||"-"}),mt=h(()=>{var n;return(n=t.value)!=null&&n.create_time?new Date(t.value.create_time).toLocaleString("zh-CN"):"-"});function U(n){return String(n.id||n.name)}async function gt(n){U(n)!==u.value&&await Ve("切换数据切分后,当前样本的未保存修改将丢失。")&&(u.value=U(n),await $e(n))}async function wt(){m.value=!0;try{t.value=await Zt(s);const n=X.value[0];n&&(u.value=U(n),await $e(n))}finally{m.value=!1}}async function $e(n){i.value=!0,y.value="";const r=++V;try{const E=await Qt(U(n)),H=await Re(U(n),E.active_version_id);if(r!==V)return;f.value=E.versions,ee.value=E.next_version_number??Math.max(0,...E.versions.map(K=>K.version))+1,I.value=E.active_version_id,$.value=E.active_version_id,k.value=E.active_version_id,w.value=H.content,d.value=H.content,ue()}catch{r===V&&(y.value="版本内容加载失败,请稍后重试")}finally{r===V&&(i.value=!1)}}async function yt(n){if(!P.value||n===k.value)return;const r=k.value;if(!await Ve("切换版本后,当前样本的未保存修改将丢失。")){$.value=r;return}M.value=!0;const E=++V;try{const H=await Re(U(P.value),n);if(E!==V)return;w.value=H.content,d.value=H.content,k.value=H.version.id,ue()}catch{E===V&&($.value=r)}finally{E===V&&(M.value=!1)}}async function bt(){if(!(!P.value||!ne.value||te.value)){try{await Te.confirm(`确定将 V${ne.value.version} 设为当前版本吗?后续任务将使用该版本。`,"切换当前版本",{type:"warning",confirmButtonText:"设为当前版本",cancelButtonText:"取消"})}catch{return}G.value=!0;try{const n=await tn(U(P.value),ne.value.id,I.value);I.value=n.version.id,w.value=n.content,d.value=n.content,ae.success(`已将 V${n.version.version} 设为当前版本`)}finally{G.value=!1}}}async function _t(){var E,H;if(!P.value||!ne.value||te.value||x.value)return;const n=ne.value;if(await((H=a.value)==null?void 0:H.open({title:`删除 V${n.version} 版本?`,message:`删除后无法恢复。当前版本 V${((E=f.value.find(K=>K.id===I.value))==null?void 0:E.version)||"-"} 不受影响。`,confirmText:"删除版本",cancelText:"取消",tone:"danger"}))){x.value=!0,M.value=!0;try{const K=await nn(U(P.value),n.id,I.value),we=await Re(U(P.value),K.active_version_id);f.value=K.versions,ee.value=K.next_version_number??Math.max(0,...K.versions.map(ye=>ye.version))+1,I.value=K.active_version_id,$.value=K.active_version_id,k.value=K.active_version_id,w.value=we.content,d.value=we.content,ue(),ae.success(`V${n.version} 版本已删除`)}finally{M.value=!1,x.value=!1}}}function ht(n){if(!te.value){ae.warning("历史版本为只读,请先设为当前版本");return}v.value=n,n.kind==="object"?(O.value=Object.entries(n.value).map(([r,E])=>({key:r,value:typeof E=="string"?E:JSON.stringify(E,null,2),isJson:typeof E!="string"})),D.value=""):(O.value=[],D.value=n.raw),b.value=!0,S.value=n.kind==="object"?JSON.stringify(O.value):D.value}function ue(){b.value=!1,v.value=null,O.value=[],D.value="",S.value=""}function Et(n,r){const E=O.value[n];E&&(E.value=r)}async function Ve(n="当前存在尚未保存为版本的修改,放弃后将无法恢复。"){if(!Pe.value)return!0;try{return await Te.confirm(n,"确认放弃修改?",{type:"warning",confirmButtonText:"放弃修改",cancelButtonText:"继续编辑"}),!0}catch{return!1}}async function Ct(){if(!ke.value)return!0;try{return await Te.confirm("当前样本存在未暂存修改,放弃后将无法恢复。","确认放弃修改?",{type:"warning",confirmButtonText:"放弃修改",cancelButtonText:"继续编辑"}),!0}catch{return!1}}async function It(n){F.value||await Ct()&&(ue(),n==null||n())}function kt(){var r;if(((r=v.value)==null?void 0:r.kind)!=="object")return JSON.parse(D.value);const n={};for(const E of O.value)n[E.key]=E.isJson?JSON.parse(E.value):E.value;return n}async function $t(){if(!P.value||!v.value||F.value)return;const n=v.value;let r;try{r=kt()}catch(E){ae.error(`JSON 格式校验失败:${E instanceof Error?E.message:"内容格式不正确"}`);return}F.value=!0;try{const E=so(w.value,P.value.name,n.sourceIndex,r);w.value=E,ue(),ae.success(`第 ${n.displayIndex} 条修改已暂存`)}finally{F.value=!1}}async function Vt(){if(!(!P.value||!ge.value||!te.value||g.value)){g.value=!0;try{const n=await xt(U(P.value),w.value,{description:"在线编辑数据样本",baseVersionId:k.value,expectedCurrentVersionId:I.value});w.value=n.content,d.value=n.content,f.value=[n.version,...f.value],ee.value=n.version.version+1,I.value=n.version.id,$.value=n.version.id,k.value=n.version.id,ae.success(`V${n.version.version} 创建成功,已设为当前版本`)}finally{g.value=!1}}}function Ae(n){Pe.value&&(n.preventDefault(),n.returnValue="")}function St(n){window.open(en(s,U(n),k.value),"_blank")}return Ut(()=>Ve()),We(()=>{window.addEventListener("beforeunload",Ae),wt()}),qe(()=>window.removeEventListener("beforeunload",Ae)),(n,r)=>{const E=he,H=Tt,K=ie,we=Fe,ye=Ft;return je((c(),N(Xt,{class:"dataset-preview-page"},{header:p(()=>{var de,ce;return[o("div",jo,[o("div",Go,[r[4]||(r[4]=o("div",{class:"heading-icon","aria-hidden":"true"},[o("i",{class:"fa fa-database"})],-1)),o("div",null,[o("div",Uo,[o("h1",null,T(((de=t.value)==null?void 0:de.name)||"数据集详情"),1),C(E,{size:"small",type:"primary"},{default:p(()=>[L(T(ft.value),1)]),_:1}),C(E,{size:"small",type:"success"},{default:p(()=>[L(T(pt.value),1)]),_:1})]),o("p",null,T(((ce=t.value)==null?void 0:ce.description)||"逐条查看和修改数据样本"),1)])])])]}),default:p(()=>{var de,ce,Me,Ke,Je;return[o("section",Yo,[o("div",Ho,[r[5]||(r[5]=o("span",null,"数据条数",-1)),o("strong",null,T((((de=t.value)==null?void 0:de.count)||0).toLocaleString()),1)]),o("div",Wo,[r[6]||(r[6]=o("span",null,"数据大小",-1)),o("strong",null,T(((ce=t.value)==null?void 0:ce.size)||"-"),1)]),o("div",qo,[r[7]||(r[7]=o("span",null,"创建时间",-1)),o("strong",null,T(mt.value),1)])]),Object.values(B.value).some(oe=>oe>0)?(c(),N(zo,{key:0,files:X.value,"selected-file-id":u.value,"split-counts":B.value,onSelect:gt},null,8,["files","selected-file-id","split-counts"])):A("",!0),C(fo,{modelValue:$.value,"onUpdate:modelValue":r[0]||(r[0]=oe=>$.value=oe),versions:f.value,"viewed-version":ne.value,"active-version-id":I.value,"is-viewing-active-version":te.value,"has-pending-version-changes":ge.value,"version-loading":M.value,"saving-record":F.value,"activating-version":G.value,"deleting-version":x.value,onChange:yt,onActivate:bt,onDelete:_t},null,8,["modelValue","versions","viewed-version","active-version-id","is-viewing-active-version","has-pending-version-changes","version-loading","saving-record","activating-version","deleting-version"]),ne.value&&!te.value?(c(),N(H,{key:1,class:"historical-version-alert",type:"info",closable:!1,"show-icon":"",title:"你正在查看历史版本,数据默认只读;设为当前版本后才可编辑。"})):A("",!0),X.value.length?(c(),R("section",Xo,[o("div",Zo,[o("div",Qo,[o("div",xo,[r[9]||(r[9]=o("span",{class:"file-icon","aria-hidden":"true"},[o("i",{class:"fa fa-file-text-o"})],-1)),o("div",null,[o("h2",null,T((Me=P.value)==null?void 0:Me.name),1),o("p",null,[L(T(((Ke=P.value)==null?void 0:Ke.size)||"未知大小")+" ",1),r[8]||(r[8]=o("span",{"aria-hidden":"true"},"·",-1)),Ie.value?(c(),R(Z,{key:0},[L(T(Le.value.length.toLocaleString())+" 条记录",1)],64)):(c(),R(Z,{key:1},[L(T(me.value.toLocaleString())+" 行",1)],64))])])]),o("div",ea,[ge.value&&te.value?(c(),N(K,{key:0,type:"primary",loading:g.value,onClick:Vt},{default:p(()=>[...r[10]||(r[10]=[o("i",{class:"fa fa-save"},null,-1),L("保存版本 ",-1)])]),_:1},8,["loading"])):A("",!0),C(we,{content:"下载当前文件",placement:"top"},{default:p(()=>[C(K,{class:"download-button","aria-label":"下载当前文件",disabled:!P.value,onClick:r[1]||(r[1]=oe=>P.value&&St(P.value))},{default:p(()=>[...r[11]||(r[11]=[o("i",{class:"fa fa-download"},null,-1),L("下载文件 ",-1)])]),_:1},8,["disabled"])]),_:1})])]),je((c(),R("div",{class:"viewer-shell","aria-busy":i.value||M.value},[i.value?(c(),R("div",na,[...r[12]||(r[12]=[o("i",{class:"fa fa-circle-o-notch fa-spin","aria-hidden":"true"},null,-1),o("span",null,"正在加载文件内容…",-1)])])):y.value?(c(),R("div",oa,[r[14]||(r[14]=o("i",{class:"fa fa-exclamation-circle","aria-hidden":"true"},null,-1)),o("strong",null,T(y.value),1),C(K,{size:"small",onClick:r[2]||(r[2]=oe=>P.value&&$e(P.value))},{default:p(()=>[...r[13]||(r[13]=[L("重新加载",-1)])]),_:1})])):w.value?Ie.value?(c(),N(Co,{key:3,records:Le.value,"is-viewing-active-version":te.value,"version-id":k.value,onEdit:ht},null,8,["records","is-viewing-active-version","version-id"])):(c(),N(Do,{key:4,content:w.value,"file-name":(Je=P.value)==null?void 0:Je.name},null,8,["content","file-name"])):(c(),R("div",aa,[...r[15]||(r[15]=[o("i",{class:"fa fa-file-o","aria-hidden":"true"},null,-1),o("span",null,"当前文件暂无可预览内容",-1)])]))],8,ta)),[[ye,M.value]]),o("div",la,[Ie.value?(c(),R("span",sa,[...r[16]||(r[16]=[o("i",{class:"fa fa-list-alt","aria-hidden":"true"},null,-1),L(" 逐条查看与编辑",-1)])])):(c(),R("span",ia,[...r[17]||(r[17]=[o("i",{class:"fa fa-eye","aria-hidden":"true"},null,-1),L(" 文本预览",-1)])])),r[18]||(r[18]=o("span",null,"UTF-8",-1))])])])):m.value?A("",!0):(c(),R("section",ra,[...r[19]||(r[19]=[o("span",{class:"empty-icon","aria-hidden":"true"},[o("i",{class:"fa fa-folder-open-o"})],-1),o("h2",null,"暂无数据文件",-1),o("p",null,"该数据集还没有可供预览的文件。",-1)])])),C(Ro,{"model-value":b.value,record:v.value,"edit-fields":O.value,"raw-draft":D.value,"saving-record":F.value,"has-draft-changes":ke.value,"next-version-number":ee.value,onClose:It,onSave:$t,"onUpdate:field":Et,"onUpdate:rawDraft":r[3]||(r[3]=oe=>D.value=oe)},null,8,["model-value","record","edit-fields","raw-draft","saving-record","has-draft-changes","next-version-number"]),C(qt,{ref_key:"confirmDialogRef",ref:a},null,512)]}),_:1})),[[ye,m.value]])}}}),Xa=re(ua,[["__scopeId","data-v-2623f756"]]);export{Xa as default};
|