agentworkshop 0.7.65 → 0.7.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{DAfWhONg.js → 1NcBJMyL.js} +3 -3
  3. package/.output/public/_nuxt/{CKE_kTL92.js → Bb4REys92.js} +1 -1
  4. package/.output/public/_nuxt/{CVUMEGa1.js → Bnf04goH.js} +1 -1
  5. package/.output/public/_nuxt/{Cuw2--X2.js → CJPIo2E7.js} +1 -1
  6. package/.output/public/_nuxt/{CkYk8bj02.js → Cfy5Jn8v2.js} +1 -1
  7. package/.output/public/_nuxt/{DSWuWYx_2.js → DBERjwK92.js} +1 -1
  8. package/.output/public/_nuxt/DG0esyZR.js +1 -0
  9. package/.output/public/_nuxt/{B5RD2ZST.js → DPP0W5Ni.js} +1 -1
  10. package/.output/public/_nuxt/{DqT2_Jtw2.js → DxJFBokW2.js} +1 -1
  11. package/.output/public/_nuxt/{Cnf1PFhB2.js → GKiBVVYe2.js} +1 -1
  12. package/.output/public/_nuxt/{Dc5NeCDq.js → H13l21fR.js} +1 -1
  13. package/.output/public/_nuxt/{Cdw4juXw.js → XErFZOU9.js} +1 -1
  14. package/.output/public/_nuxt/builds/latest.json +1 -1
  15. package/.output/public/_nuxt/builds/meta/8bf65244-eb00-45c7-be23-9dcd7b917ef3.json +1 -0
  16. package/.output/public/_nuxt/{D-z6N1Cz.js → kYyvM13M.js} +1 -1
  17. package/.output/public/_nuxt/{B0w8DZ4C.js → t54AYjsC.js} +1 -1
  18. package/.output/server/chunks/_/nitro.mjs +1331 -1015
  19. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  20. package/.output/server/chunks/build/useWorkshopWs-CM-Ywk4h.mjs.map +1 -1
  21. package/.output/server/chunks/routes/renderer.mjs +1 -1
  22. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  23. package/.output/server/package.json +1 -1
  24. package/README-zh.md +8 -6
  25. package/README.md +7 -5
  26. package/app/stores/workshop/notifications.ts +22 -1
  27. package/config.yml +1 -1
  28. package/docs/cli.en.md +2 -2
  29. package/docs/cli.md +2 -2
  30. package/docs/plugins.en.md +1 -1
  31. package/docs/plugins.md +1 -1
  32. package/docs/sdk.en.md +1 -1
  33. package/docs/sdk.md +1 -1
  34. package/package.json +1 -1
  35. package/server/plugins-builtin/diag-bridge/client.mjs +230 -132
  36. package/server/plugins-builtin/diag-bridge/i18n.json +45 -15
  37. package/server/plugins-builtin/rag-bridge/client.mjs +182 -108
  38. package/server/plugins-builtin/rag-bridge/i18n.json +84 -60
  39. package/server/services/workshop/agents/host-tool-bridge/dispatch.ts +5 -0
  40. package/server/services/workshop/agents/industrial/aml-dataset-tools.ts +14 -0
  41. package/server/services/workshop/agents/industrial/dcw-judge-tools.ts +7 -2
  42. package/server/services/workshop/agents/industrial/line-tools.ts +16 -3
  43. package/server/services/workshop/agents/industrial/optimization-tools.ts +10 -0
  44. package/server/services/workshop/agents/industrial/tool-verify.ts +373 -0
  45. package/server/services/workshop/agents/industrial/twin-tools.ts +5 -0
  46. package/server/services/workshop/runtime/manager/channel-template-constants.ts +20 -0
  47. package/server/services/workshop/runtime/manager/channel-templates.ts +3 -12
  48. package/.output/public/_nuxt/DIDbAMv5.js +0 -1
  49. package/.output/public/_nuxt/builds/meta/874575e6-2606-4f09-a59b-724158b3aba2.json +0 -1
@@ -1,4 +1,4 @@
1
- import{a as e}from"./BMMoqi94.js";import{E as t,N as n,O as r,S as i,dt as a,ft as o,g as s,mt as c,p as l,u,v as d}from"./CavpkQb0.js";import{B as f,D as p,J as m,K as h,P as g,Q as _,R as v,S as y,V as b,W as x,b as S,d as C,et as w,f as T,h as E,i as D,j as O,k,m as A,nt as j,p as M,rt as N,s as P,u as F,v as I,y as L,z as R}from"./ByMj6e7s.js";import{d as z,f as B,l as V,t as H,u as U}from"./goF_oZHF.js";import{d as W}from"./Br3AySNQ.js";import{n as G}from"./DkpmSnHX.js";import{n as K}from"./Cnrmlixo.js";import{t as ee}from"./D5hI4Fhu.js";import{t as te}from"./RAqsw632.js";import{$ as ne,Ct as re,E as ie,Mt as q,O as ae,Q as oe,Tt as se,Y as ce,Z as le,at as ue,d as de,et as fe,h as pe,j as me,jt as J,lt as he,m as ge,mt as _e,n as ve,nt as ye,ot as be,t as xe,tt as Se,u as Ce}from"./C2YYOgMe.js";import{A as we,a as Te,t as Ee}from"./D-jg-SoR.js";import{a as De,i as Oe,n as ke,r as Ae,t as je}from"./CoTm7jd3.js";import{D as Me,O as Ne,V as Pe,i as Y,lt as Fe,p as Ie,pt as Le,s as Re,t as ze}from"./CiyTTgqr.js";import{n as Be,t as Ve}from"./zWg-9WN6.js";import{a as He,i as Ue,t as We}from"./DP_e7Vwv.js";import{i as Ge,n as Ke,r as qe,t as Je}from"./Dok0B4Ol.js";import{t as Ye}from"./jmKfTQMN.js";import{n as Xe,r as Ze,t as Qe}from"./DXlAfhEi.js";import{t as $e}from"./D3gfSKKi2.js";import{t as et}from"./lO5tpDZ52.js";import{t as tt}from"./Qa9rS9oK2.js";import{t as nt}from"./CI8awYVQ2.js";import{t as rt}from"./CcLFZjCI2.js";import{n as it,t as at}from"./QSY9fE482.js";import{t as ot}from"./DnunMTRD2.js";import{t as st}from"./DVS06wUy2.js";import{t as ct}from"./DzBbYWrw2.js";import{t as lt}from"./DP6tsk912.js";import{t as ut}from"./DtMlAxCm2.js";import{t as dt}from"./Do0dCE8C2.js";import{t as X}from"./BDNMzG2s2.js";import{t as ft}from"./DlUQa0wn.js";import{t as pt}from"./ClEbKcuS.js";import{a as Z,c as mt,i as ht,l as gt,n as _t,o as vt,r as yt,s as bt,t as xt}from"./DIDbAMv5.js";import{t as St}from"./pncSmP5n.js";import{t as Q}from"./JgheoP3e.js";import{t as Ct}from"./CNs_Ozdc.js";import{t as $}from"./8oRmGaAV.js";import{t as wt}from"./_mD4IkJj.js";import{t as Tt}from"./Cuw2--X2.js";import{t as Et}from"./CT-vTjcG.js";import{t as Dt}from"./DgldLfCZ2.js";import{t as Ot}from"./CKE_kTL92.js";import{t as kt}from"./KS3KQF222.js";import{t as At}from"./DNno23Jf2.js";function jt(e){let{prefixCls:t,value:n,current:r,offset:i=0}=e,a;return i&&(a={position:`absolute`,top:`${i}00%`,left:0}),S(`p`,{style:a,class:se(`${t}-only-unit`,{current:r})},[n])}function Mt(e,t,n){let r=e,i=0;for(;(r+10)%10!==t;)r+=n,i+=n;return i}var Nt=y({compatConfig:{MODE:3},name:`SingleNumber`,props:{prefixCls:String,value:String,count:Number},setup(e){let t=C(()=>Number(e.value)),n=C(()=>Math.abs(e.count)),r=s({prevValue:t.value,prevCount:n.value}),i=()=>{r.prevValue=t.value,r.prevCount=n.value},a=d();return w(t,()=>{clearTimeout(a.value),a.value=setTimeout(()=>{i()},1e3)},{flush:`post`}),R(()=>{clearTimeout(a.value)}),()=>{let a,o={},s=t.value;if(r.prevValue===s||Number.isNaN(s)||Number.isNaN(r.prevValue))a=[jt(J(J({},e),{current:!0}))],o={transition:`none`};else{a=[];let t=s+10,i=[];for(let e=s;e<=t;e+=1)i.push(e);let c=i.findIndex(e=>e%10===r.prevValue);a=i.map((t,n)=>{let r=t%10;return jt(J(J({},e),{value:r,offset:n-c,current:n===c}))});let l=r.prevCount<n.value?1:-1;o={transform:`translateY(${-Mt(r.prevValue,s,l)}00%)`}}return S(`span`,{class:`${e.prefixCls}-only`,style:o,onTransitionend:()=>i()},[a])}}}),Pt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Ft={prefixCls:String,count:xe.any,component:String,title:xe.any,show:Boolean},It=y({compatConfig:{MODE:3},name:`ScrollNumber`,inheritAttrs:!1,props:Ft,setup(e,t){let{attrs:n,slots:r}=t,{prefixCls:i}=ve(`scroll-number`,e);return()=>{let t=J(J({},e),n),{prefixCls:a,count:o,title:s,show:c,component:l=`sup`,class:u,style:d}=t,f=Pt(t,[`prefixCls`,`count`,`title`,`show`,`component`,`class`,`style`]),p=J(J({},f),{style:d,"data-show":e.show,class:se(i.value,u),title:s}),m=o;if(o&&Number(o)%1==0){let e=String(o).split(``);m=e.map((t,n)=>S(Nt,{prefixCls:i.value,count:Number(o),value:t,key:e.length-n},null))}d&&d.borderColor&&(p.style=J(J({},d),{boxShadow:`0 0 0 1px ${d.borderColor} inset`}));let h=be(r.default?.call(r));return h&&h.length?Fe(h,{class:se(`${i.value}-custom-component`)},!1):S(l,p,{default:()=>[m]})}}}),Lt=new ae(`antStatusProcessing`,{"0%":{transform:`scale(0.8)`,opacity:.5},"100%":{transform:`scale(2.4)`,opacity:0}}),Rt=new ae(`antZoomBadgeIn`,{"0%":{transform:`scale(0) translate(50%, -50%)`,opacity:0},"100%":{transform:`scale(1) translate(50%, -50%)`}}),zt=new ae(`antZoomBadgeOut`,{"0%":{transform:`scale(1) translate(50%, -50%)`},"100%":{transform:`scale(0) translate(50%, -50%)`,opacity:0}}),Bt=new ae(`antNoWrapperZoomBadgeIn`,{"0%":{transform:`scale(0)`,opacity:0},"100%":{transform:`scale(1)`}}),Vt=new ae(`antNoWrapperZoomBadgeOut`,{"0%":{transform:`scale(1)`},"100%":{transform:`scale(0)`,opacity:0}}),Ht=new ae(`antBadgeLoadingCircle`,{"0%":{transformOrigin:`50%`},"100%":{transform:`translate(50%, -50%) rotate(360deg)`,transformOrigin:`50%`}}),Ut=e=>{let{componentCls:t,iconCls:n,antCls:r,badgeFontHeight:i,badgeShadowSize:a,badgeHeightSm:o,motionDurationSlow:s,badgeStatusSize:c,marginXS:l,badgeRibbonOffset:u}=e,d=`${r}-scroll-number`,f=`${r}-ribbon`,p=`${r}-ribbon-wrapper`,m=we(e,(e,n)=>{let{darkColor:r}=n;return{[`&${t} ${t}-color-${e}`]:{background:r,[`&:not(${t}-count)`]:{color:r}}}}),h=we(e,(e,t)=>{let{darkColor:n}=t;return{[`&${f}-color-${e}`]:{background:n,color:n}}});return{[t]:J(J(J(J({},pe(e)),{position:`relative`,display:`inline-block`,width:`fit-content`,lineHeight:1,[`${t}-count`]:{zIndex:e.badgeZIndex,minWidth:e.badgeHeight,height:e.badgeHeight,color:e.badgeTextColor,fontWeight:e.badgeFontWeight,fontSize:e.badgeFontSize,lineHeight:`${e.badgeHeight}px`,whiteSpace:`nowrap`,textAlign:`center`,background:e.badgeColor,borderRadius:e.badgeHeight/2,boxShadow:`0 0 0 ${a}px ${e.badgeShadowColor}`,transition:`background ${e.motionDurationMid}`,a:{color:e.badgeTextColor},"a:hover":{color:e.badgeTextColor},"a:hover &":{background:e.badgeColorHover}},[`${t}-count-sm`]:{minWidth:o,height:o,fontSize:e.badgeFontSizeSm,lineHeight:`${o}px`,borderRadius:o/2},[`${t}-multiple-words`]:{padding:`0 ${e.paddingXS}px`},[`${t}-dot`]:{zIndex:e.badgeZIndex,width:e.badgeDotSize,minWidth:e.badgeDotSize,height:e.badgeDotSize,background:e.badgeColor,borderRadius:`100%`,boxShadow:`0 0 0 ${a}px ${e.badgeShadowColor}`},[`${t}-dot${d}`]:{transition:`background ${s}`},[`${t}-count, ${t}-dot, ${d}-custom-component`]:{position:`absolute`,top:0,insetInlineEnd:0,transform:`translate(50%, -50%)`,transformOrigin:`100% 0%`,[`&${n}-spin`]:{animationName:Ht,animationDuration:`1s`,animationIterationCount:`infinite`,animationTimingFunction:`linear`}},[`&${t}-status`]:{lineHeight:`inherit`,verticalAlign:`baseline`,[`${t}-status-dot`]:{position:`relative`,top:-1,display:`inline-block`,width:c,height:c,verticalAlign:`middle`,borderRadius:`50%`},[`${t}-status-success`]:{backgroundColor:e.colorSuccess},[`${t}-status-processing`]:{overflow:`visible`,color:e.colorPrimary,backgroundColor:e.colorPrimary,"&::after":{position:`absolute`,top:0,insetInlineStart:0,width:`100%`,height:`100%`,borderWidth:a,borderStyle:`solid`,borderColor:`inherit`,borderRadius:`50%`,animationName:Lt,animationDuration:e.badgeProcessingDuration,animationIterationCount:`infinite`,animationTimingFunction:`ease-in-out`,content:`""`}},[`${t}-status-default`]:{backgroundColor:e.colorTextPlaceholder},[`${t}-status-error`]:{backgroundColor:e.colorError},[`${t}-status-warning`]:{backgroundColor:e.colorWarning},[`${t}-status-text`]:{marginInlineStart:l,color:e.colorText,fontSize:e.fontSize}}}),m),{[`${t}-zoom-appear, ${t}-zoom-enter`]:{animationName:Rt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack,animationFillMode:`both`},[`${t}-zoom-leave`]:{animationName:zt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack,animationFillMode:`both`},[`&${t}-not-a-wrapper`]:{[`${t}-zoom-appear, ${t}-zoom-enter`]:{animationName:Bt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack},[`${t}-zoom-leave`]:{animationName:Vt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack},[`&:not(${t}-status)`]:{verticalAlign:`middle`},[`${d}-custom-component, ${t}-count`]:{transform:`none`},[`${d}-custom-component, ${d}`]:{position:`relative`,top:`auto`,display:`block`,transformOrigin:`50% 50%`}},[`${d}`]:{overflow:`hidden`,[`${d}-only`]:{position:`relative`,display:`inline-block`,height:e.badgeHeight,transition:`all ${e.motionDurationSlow} ${e.motionEaseOutBack}`,WebkitTransformStyle:`preserve-3d`,WebkitBackfaceVisibility:`hidden`,[`> p${d}-only-unit`]:{height:e.badgeHeight,margin:0,WebkitTransformStyle:`preserve-3d`,WebkitBackfaceVisibility:`hidden`}},[`${d}-symbol`]:{verticalAlign:`top`}},"&-rtl":{direction:`rtl`,[`${t}-count, ${t}-dot, ${d}-custom-component`]:{transform:`translate(-50%, -50%)`}}}),[`${p}`]:{position:`relative`},[`${f}`]:J(J(J(J({},pe(e)),{position:`absolute`,top:l,padding:`0 ${e.paddingXS}px`,color:e.colorPrimary,lineHeight:`${i}px`,whiteSpace:`nowrap`,backgroundColor:e.colorPrimary,borderRadius:e.borderRadiusSM,[`${f}-text`]:{color:e.colorTextLightSolid},[`${f}-corner`]:{position:`absolute`,top:`100%`,width:u,height:u,color:`currentcolor`,border:`${u/2}px solid`,transform:e.badgeRibbonCornerTransform,transformOrigin:`top`,filter:e.badgeRibbonCornerFilter}}),h),{[`&${f}-placement-end`]:{insetInlineEnd:-u,borderEndEndRadius:0,[`${f}-corner`]:{insetInlineEnd:0,borderInlineEndColor:`transparent`,borderBlockEndColor:`transparent`}},[`&${f}-placement-start`]:{insetInlineStart:-u,borderEndStartRadius:0,[`${f}-corner`]:{insetInlineStart:0,borderBlockEndColor:`transparent`,borderInlineStartColor:`transparent`}},"&-rtl":{direction:`rtl`}})}},Wt=de(`Badge`,e=>{let{fontSize:t,lineHeight:n,fontSizeSM:r,lineWidth:i,marginXS:a,colorBorderBg:o}=e,s=Math.round(t*n),c=i,l=s-2*c,u=e.colorBgContainer,d=r,f=e.colorError,p=e.colorErrorHover,m=t,h=r/2,g=r,_=r/2;return[Ut(Ce(e,{badgeFontHeight:s,badgeShadowSize:c,badgeZIndex:`auto`,badgeHeight:l,badgeTextColor:u,badgeFontWeight:`normal`,badgeFontSize:d,badgeColor:f,badgeColorHover:p,badgeShadowColor:o,badgeHeightSm:m,badgeDotSize:h,badgeFontSizeSm:g,badgeStatusSize:_,badgeProcessingDuration:`1.2s`,badgeRibbonOffset:a,badgeRibbonCornerTransform:`scaleY(0.75)`,badgeRibbonCornerFilter:`brightness(75%)`}))]}),Gt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Kt=y({compatConfig:{MODE:3},name:`ABadgeRibbon`,inheritAttrs:!1,props:{prefix:String,color:{type:String},text:xe.any,placement:{type:String,default:`end`}},slots:Object,setup(e,t){let{attrs:n,slots:r}=t,{prefixCls:i,direction:a}=ve(`ribbon`,e),[o,s]=Wt(i),c=C(()=>Te(e.color,!1)),l=C(()=>[i.value,`${i.value}-placement-${e.placement}`,{[`${i.value}-rtl`]:a.value===`rtl`,[`${i.value}-color-${e.color}`]:c.value}]);return()=>{let{class:t,style:a}=n,u=Gt(n,[`class`,`style`]),d={},f={};return e.color&&!c.value&&(d.background=e.color,f.color=e.color),o(S(`div`,q({class:`${i.value}-wrapper ${s.value}`},u),[r.default?.call(r),S(`div`,{class:[l.value,t,s.value],style:J(J({},d),a)},[S(`span`,{class:`${i.value}-text`},[e.text||r.text?.call(r)]),S(`div`,{class:`${i.value}-corner`,style:f},null)])]))}}}),qt=y({compatConfig:{MODE:3},name:`ABadge`,Ribbon:Kt,inheritAttrs:!1,props:{count:xe.any.def(null),showZero:{type:Boolean,default:void 0},overflowCount:{type:Number,default:99},dot:{type:Boolean,default:void 0},prefixCls:String,scrollNumberPrefixCls:String,status:{type:String},size:{type:String,default:`default`},color:String,text:xe.any,offset:Array,numberStyle:{type:Object,default:void 0},title:String},slots:Object,setup(e,t){let{slots:n,attrs:r}=t,{prefixCls:i,direction:a}=ve(`badge`,e),[o,s]=Wt(i),c=C(()=>e.count>e.overflowCount?`${e.overflowCount}+`:e.count),l=C(()=>c.value===`0`||c.value===0),u=C(()=>e.count===null||l.value&&!e.showZero),f=C(()=>(e.status!==null&&e.status!==void 0||e.color!==null&&e.color!==void 0)&&u.value),p=C(()=>e.dot&&!l.value),m=C(()=>p.value?``:c.value),h=C(()=>(m.value===null||m.value===void 0||m.value===``||l.value&&!e.showZero)&&!p.value),g=d(e.count),_=d(m.value),v=d(p.value);w([()=>e.count,m,p],()=>{h.value||(g.value=e.count,_.value=m.value,v.value=p.value)},{immediate:!0});let y=C(()=>Te(e.color,!1)),b=C(()=>({[`${i.value}-status-dot`]:f.value,[`${i.value}-status-${e.status}`]:!!e.status,[`${i.value}-color-${e.color}`]:y.value})),x=C(()=>e.color&&!y.value?{background:e.color,color:e.color}:{}),T=C(()=>({[`${i.value}-dot`]:v.value,[`${i.value}-count`]:!v.value,[`${i.value}-count-sm`]:e.size===`small`,[`${i.value}-multiple-words`]:!v.value&&_.value&&_.value.toString().length>1,[`${i.value}-status-${e.status}`]:!!e.status,[`${i.value}-color-${e.color}`]:y.value}));return()=>{let{offset:t,title:c,color:l}=e,u=r.style,d=_e(n,e,`text`),p=i.value,m=g.value,v=he(n.default?.call(n));v=v.length?v:null;let C=!!(!h.value||n.count),w=(()=>{if(!t)return J({},u);let e={marginTop:et(t[1])?`${t[1]}px`:t[1]};return a.value===`rtl`?e.left=`${parseInt(t[0],10)}px`:e.right=`${-parseInt(t[0],10)}px`,J(J({},e),u)})(),E=c??(typeof m==`string`||typeof m==`number`?m:void 0),D=C||!d?null:S(`span`,{class:`${p}-status-text`},[d]),O=typeof m==`object`||m===void 0&&n.count?Fe(m??n.count?.call(n),{style:w},!1):null,k=se(p,{[`${p}-status`]:f.value,[`${p}-not-a-wrapper`]:!v,[`${p}-rtl`]:a.value===`rtl`},r.class,s.value);if(!v&&f.value){let e=w.color;return o(S(`span`,q(q({},r),{},{class:k,style:w}),[S(`span`,{class:b.value,style:x.value},null),S(`span`,{style:{color:e},class:`${p}-status-text`},[d])]))}let A=Pe(v?`${p}-zoom`:``,{appear:!1}),j=J(J({},w),e.numberStyle);return l&&!y.value&&(j||={},j.background=l),o(S(`span`,q(q({},r),{},{class:k}),[v,S(H,A,{default:()=>[N(S(It,{prefixCls:e.scrollNumberPrefixCls,show:C,class:T.value,count:_.value,title:E,style:j,key:`scrollNumber`},{default:()=>[O]}),[[U,C]])]}),D]))}}});qt.install=function(e){return e.component(qt.name,qt),e.component(Kt.name,Kt),e};var Jt=qt,Yt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Xt=y({compatConfig:{MODE:3},name:`ABreadcrumbItem`,inheritAttrs:!1,__ANT_BREADCRUMB_ITEM:!0,props:{prefixCls:String,href:String,separator:xe.any,dropdownProps:fe(),overlay:xe.any,onClick:oe()},slots:Object,setup(e,t){let{slots:n,attrs:r,emit:i}=t,{prefixCls:a}=ve(`breadcrumb`,e),o=(t,r)=>{let i=_e(n,e,`overlay`);return i?S(tt,q(q({},e.dropdownProps),{},{overlay:i,placement:`bottom`}),{default:()=>[S(`span`,{class:`${r}-overlay-link`},[t,S(He,null,null)])]}):t},s=e=>{i(`click`,e)};return()=>{let t=_e(n,e,`separator`)??`/`,i=_e(n,e),{class:c,style:l}=r,u=Yt(r,[`class`,`style`]),d;return d=e.href===void 0?S(`span`,q({class:`${a.value}-link`,onClick:s},u),[i]):S(`a`,q({class:`${a.value}-link`,onClick:s},u),[i]),d=o(d,a.value),i==null?null:S(`li`,{class:c,style:l},[d,t&&S(`span`,{class:`${a.value}-separator`},[t])])}}}),Zt=e=>{let{componentCls:t,iconCls:n}=e;return{[t]:J(J({},pe(e)),{color:e.breadcrumbBaseColor,fontSize:e.breadcrumbFontSize,[n]:{fontSize:e.breadcrumbIconFontSize},ol:{display:`flex`,flexWrap:`wrap`,margin:0,padding:0,listStyle:`none`},a:J({color:e.breadcrumbLinkColor,transition:`color ${e.motionDurationMid}`,padding:`0 ${e.paddingXXS}px`,borderRadius:e.borderRadiusSM,height:e.lineHeight*e.fontSize,display:`inline-block`,marginInline:-e.marginXXS,"&:hover":{color:e.breadcrumbLinkColorHover,backgroundColor:e.colorBgTextHover}},ge(e)),"li:last-child":{color:e.breadcrumbLastItemColor,[`& > ${t}-separator`]:{display:`none`}},[`${t}-separator`]:{marginInline:e.breadcrumbSeparatorMargin,color:e.breadcrumbSeparatorColor},[`${t}-link`]:{[`
1
+ import{a as e}from"./BMMoqi94.js";import{E as t,N as n,O as r,S as i,dt as a,ft as o,g as s,mt as c,p as l,u,v as d}from"./CavpkQb0.js";import{B as f,D as p,J as m,K as h,P as g,Q as _,R as v,S as y,V as b,W as x,b as S,d as C,et as w,f as T,h as E,i as D,j as O,k,m as A,nt as j,p as M,rt as N,s as P,u as F,v as I,y as L,z as R}from"./ByMj6e7s.js";import{d as z,f as B,l as V,t as H,u as U}from"./goF_oZHF.js";import{d as W}from"./Br3AySNQ.js";import{n as G}from"./DkpmSnHX.js";import{n as K}from"./Cnrmlixo.js";import{t as ee}from"./D5hI4Fhu.js";import{t as te}from"./RAqsw632.js";import{$ as ne,Ct as re,E as ie,Mt as q,O as ae,Q as oe,Tt as se,Y as ce,Z as le,at as ue,d as de,et as fe,h as pe,j as me,jt as J,lt as he,m as ge,mt as _e,n as ve,nt as ye,ot as be,t as xe,tt as Se,u as Ce}from"./C2YYOgMe.js";import{A as we,a as Te,t as Ee}from"./D-jg-SoR.js";import{a as De,i as Oe,n as ke,r as Ae,t as je}from"./CoTm7jd3.js";import{D as Me,O as Ne,V as Pe,i as Y,lt as Fe,p as Ie,pt as Le,s as Re,t as ze}from"./CiyTTgqr.js";import{n as Be,t as Ve}from"./zWg-9WN6.js";import{a as He,i as Ue,t as We}from"./DP_e7Vwv.js";import{i as Ge,n as Ke,r as qe,t as Je}from"./Dok0B4Ol.js";import{t as Ye}from"./jmKfTQMN.js";import{n as Xe,r as Ze,t as Qe}from"./DXlAfhEi.js";import{t as $e}from"./D3gfSKKi2.js";import{t as et}from"./lO5tpDZ52.js";import{t as tt}from"./Qa9rS9oK2.js";import{t as nt}from"./CI8awYVQ2.js";import{t as rt}from"./CcLFZjCI2.js";import{n as it,t as at}from"./QSY9fE482.js";import{t as ot}from"./DnunMTRD2.js";import{t as st}from"./DVS06wUy2.js";import{t as ct}from"./DzBbYWrw2.js";import{t as lt}from"./DP6tsk912.js";import{t as ut}from"./DtMlAxCm2.js";import{t as dt}from"./Do0dCE8C2.js";import{t as X}from"./BDNMzG2s2.js";import{t as ft}from"./DlUQa0wn.js";import{t as pt}from"./ClEbKcuS.js";import{a as Z,c as mt,i as ht,l as gt,n as _t,o as vt,r as yt,s as bt,t as xt}from"./DG0esyZR.js";import{t as St}from"./pncSmP5n.js";import{t as Q}from"./JgheoP3e.js";import{t as Ct}from"./CNs_Ozdc.js";import{t as $}from"./8oRmGaAV.js";import{t as wt}from"./_mD4IkJj.js";import{t as Tt}from"./CJPIo2E7.js";import{t as Et}from"./CT-vTjcG.js";import{t as Dt}from"./DgldLfCZ2.js";import{t as Ot}from"./Bb4REys92.js";import{t as kt}from"./KS3KQF222.js";import{t as At}from"./DNno23Jf2.js";function jt(e){let{prefixCls:t,value:n,current:r,offset:i=0}=e,a;return i&&(a={position:`absolute`,top:`${i}00%`,left:0}),S(`p`,{style:a,class:se(`${t}-only-unit`,{current:r})},[n])}function Mt(e,t,n){let r=e,i=0;for(;(r+10)%10!==t;)r+=n,i+=n;return i}var Nt=y({compatConfig:{MODE:3},name:`SingleNumber`,props:{prefixCls:String,value:String,count:Number},setup(e){let t=C(()=>Number(e.value)),n=C(()=>Math.abs(e.count)),r=s({prevValue:t.value,prevCount:n.value}),i=()=>{r.prevValue=t.value,r.prevCount=n.value},a=d();return w(t,()=>{clearTimeout(a.value),a.value=setTimeout(()=>{i()},1e3)},{flush:`post`}),R(()=>{clearTimeout(a.value)}),()=>{let a,o={},s=t.value;if(r.prevValue===s||Number.isNaN(s)||Number.isNaN(r.prevValue))a=[jt(J(J({},e),{current:!0}))],o={transition:`none`};else{a=[];let t=s+10,i=[];for(let e=s;e<=t;e+=1)i.push(e);let c=i.findIndex(e=>e%10===r.prevValue);a=i.map((t,n)=>{let r=t%10;return jt(J(J({},e),{value:r,offset:n-c,current:n===c}))});let l=r.prevCount<n.value?1:-1;o={transform:`translateY(${-Mt(r.prevValue,s,l)}00%)`}}return S(`span`,{class:`${e.prefixCls}-only`,style:o,onTransitionend:()=>i()},[a])}}}),Pt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Ft={prefixCls:String,count:xe.any,component:String,title:xe.any,show:Boolean},It=y({compatConfig:{MODE:3},name:`ScrollNumber`,inheritAttrs:!1,props:Ft,setup(e,t){let{attrs:n,slots:r}=t,{prefixCls:i}=ve(`scroll-number`,e);return()=>{let t=J(J({},e),n),{prefixCls:a,count:o,title:s,show:c,component:l=`sup`,class:u,style:d}=t,f=Pt(t,[`prefixCls`,`count`,`title`,`show`,`component`,`class`,`style`]),p=J(J({},f),{style:d,"data-show":e.show,class:se(i.value,u),title:s}),m=o;if(o&&Number(o)%1==0){let e=String(o).split(``);m=e.map((t,n)=>S(Nt,{prefixCls:i.value,count:Number(o),value:t,key:e.length-n},null))}d&&d.borderColor&&(p.style=J(J({},d),{boxShadow:`0 0 0 1px ${d.borderColor} inset`}));let h=be(r.default?.call(r));return h&&h.length?Fe(h,{class:se(`${i.value}-custom-component`)},!1):S(l,p,{default:()=>[m]})}}}),Lt=new ae(`antStatusProcessing`,{"0%":{transform:`scale(0.8)`,opacity:.5},"100%":{transform:`scale(2.4)`,opacity:0}}),Rt=new ae(`antZoomBadgeIn`,{"0%":{transform:`scale(0) translate(50%, -50%)`,opacity:0},"100%":{transform:`scale(1) translate(50%, -50%)`}}),zt=new ae(`antZoomBadgeOut`,{"0%":{transform:`scale(1) translate(50%, -50%)`},"100%":{transform:`scale(0) translate(50%, -50%)`,opacity:0}}),Bt=new ae(`antNoWrapperZoomBadgeIn`,{"0%":{transform:`scale(0)`,opacity:0},"100%":{transform:`scale(1)`}}),Vt=new ae(`antNoWrapperZoomBadgeOut`,{"0%":{transform:`scale(1)`},"100%":{transform:`scale(0)`,opacity:0}}),Ht=new ae(`antBadgeLoadingCircle`,{"0%":{transformOrigin:`50%`},"100%":{transform:`translate(50%, -50%) rotate(360deg)`,transformOrigin:`50%`}}),Ut=e=>{let{componentCls:t,iconCls:n,antCls:r,badgeFontHeight:i,badgeShadowSize:a,badgeHeightSm:o,motionDurationSlow:s,badgeStatusSize:c,marginXS:l,badgeRibbonOffset:u}=e,d=`${r}-scroll-number`,f=`${r}-ribbon`,p=`${r}-ribbon-wrapper`,m=we(e,(e,n)=>{let{darkColor:r}=n;return{[`&${t} ${t}-color-${e}`]:{background:r,[`&:not(${t}-count)`]:{color:r}}}}),h=we(e,(e,t)=>{let{darkColor:n}=t;return{[`&${f}-color-${e}`]:{background:n,color:n}}});return{[t]:J(J(J(J({},pe(e)),{position:`relative`,display:`inline-block`,width:`fit-content`,lineHeight:1,[`${t}-count`]:{zIndex:e.badgeZIndex,minWidth:e.badgeHeight,height:e.badgeHeight,color:e.badgeTextColor,fontWeight:e.badgeFontWeight,fontSize:e.badgeFontSize,lineHeight:`${e.badgeHeight}px`,whiteSpace:`nowrap`,textAlign:`center`,background:e.badgeColor,borderRadius:e.badgeHeight/2,boxShadow:`0 0 0 ${a}px ${e.badgeShadowColor}`,transition:`background ${e.motionDurationMid}`,a:{color:e.badgeTextColor},"a:hover":{color:e.badgeTextColor},"a:hover &":{background:e.badgeColorHover}},[`${t}-count-sm`]:{minWidth:o,height:o,fontSize:e.badgeFontSizeSm,lineHeight:`${o}px`,borderRadius:o/2},[`${t}-multiple-words`]:{padding:`0 ${e.paddingXS}px`},[`${t}-dot`]:{zIndex:e.badgeZIndex,width:e.badgeDotSize,minWidth:e.badgeDotSize,height:e.badgeDotSize,background:e.badgeColor,borderRadius:`100%`,boxShadow:`0 0 0 ${a}px ${e.badgeShadowColor}`},[`${t}-dot${d}`]:{transition:`background ${s}`},[`${t}-count, ${t}-dot, ${d}-custom-component`]:{position:`absolute`,top:0,insetInlineEnd:0,transform:`translate(50%, -50%)`,transformOrigin:`100% 0%`,[`&${n}-spin`]:{animationName:Ht,animationDuration:`1s`,animationIterationCount:`infinite`,animationTimingFunction:`linear`}},[`&${t}-status`]:{lineHeight:`inherit`,verticalAlign:`baseline`,[`${t}-status-dot`]:{position:`relative`,top:-1,display:`inline-block`,width:c,height:c,verticalAlign:`middle`,borderRadius:`50%`},[`${t}-status-success`]:{backgroundColor:e.colorSuccess},[`${t}-status-processing`]:{overflow:`visible`,color:e.colorPrimary,backgroundColor:e.colorPrimary,"&::after":{position:`absolute`,top:0,insetInlineStart:0,width:`100%`,height:`100%`,borderWidth:a,borderStyle:`solid`,borderColor:`inherit`,borderRadius:`50%`,animationName:Lt,animationDuration:e.badgeProcessingDuration,animationIterationCount:`infinite`,animationTimingFunction:`ease-in-out`,content:`""`}},[`${t}-status-default`]:{backgroundColor:e.colorTextPlaceholder},[`${t}-status-error`]:{backgroundColor:e.colorError},[`${t}-status-warning`]:{backgroundColor:e.colorWarning},[`${t}-status-text`]:{marginInlineStart:l,color:e.colorText,fontSize:e.fontSize}}}),m),{[`${t}-zoom-appear, ${t}-zoom-enter`]:{animationName:Rt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack,animationFillMode:`both`},[`${t}-zoom-leave`]:{animationName:zt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack,animationFillMode:`both`},[`&${t}-not-a-wrapper`]:{[`${t}-zoom-appear, ${t}-zoom-enter`]:{animationName:Bt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack},[`${t}-zoom-leave`]:{animationName:Vt,animationDuration:e.motionDurationSlow,animationTimingFunction:e.motionEaseOutBack},[`&:not(${t}-status)`]:{verticalAlign:`middle`},[`${d}-custom-component, ${t}-count`]:{transform:`none`},[`${d}-custom-component, ${d}`]:{position:`relative`,top:`auto`,display:`block`,transformOrigin:`50% 50%`}},[`${d}`]:{overflow:`hidden`,[`${d}-only`]:{position:`relative`,display:`inline-block`,height:e.badgeHeight,transition:`all ${e.motionDurationSlow} ${e.motionEaseOutBack}`,WebkitTransformStyle:`preserve-3d`,WebkitBackfaceVisibility:`hidden`,[`> p${d}-only-unit`]:{height:e.badgeHeight,margin:0,WebkitTransformStyle:`preserve-3d`,WebkitBackfaceVisibility:`hidden`}},[`${d}-symbol`]:{verticalAlign:`top`}},"&-rtl":{direction:`rtl`,[`${t}-count, ${t}-dot, ${d}-custom-component`]:{transform:`translate(-50%, -50%)`}}}),[`${p}`]:{position:`relative`},[`${f}`]:J(J(J(J({},pe(e)),{position:`absolute`,top:l,padding:`0 ${e.paddingXS}px`,color:e.colorPrimary,lineHeight:`${i}px`,whiteSpace:`nowrap`,backgroundColor:e.colorPrimary,borderRadius:e.borderRadiusSM,[`${f}-text`]:{color:e.colorTextLightSolid},[`${f}-corner`]:{position:`absolute`,top:`100%`,width:u,height:u,color:`currentcolor`,border:`${u/2}px solid`,transform:e.badgeRibbonCornerTransform,transformOrigin:`top`,filter:e.badgeRibbonCornerFilter}}),h),{[`&${f}-placement-end`]:{insetInlineEnd:-u,borderEndEndRadius:0,[`${f}-corner`]:{insetInlineEnd:0,borderInlineEndColor:`transparent`,borderBlockEndColor:`transparent`}},[`&${f}-placement-start`]:{insetInlineStart:-u,borderEndStartRadius:0,[`${f}-corner`]:{insetInlineStart:0,borderBlockEndColor:`transparent`,borderInlineStartColor:`transparent`}},"&-rtl":{direction:`rtl`}})}},Wt=de(`Badge`,e=>{let{fontSize:t,lineHeight:n,fontSizeSM:r,lineWidth:i,marginXS:a,colorBorderBg:o}=e,s=Math.round(t*n),c=i,l=s-2*c,u=e.colorBgContainer,d=r,f=e.colorError,p=e.colorErrorHover,m=t,h=r/2,g=r,_=r/2;return[Ut(Ce(e,{badgeFontHeight:s,badgeShadowSize:c,badgeZIndex:`auto`,badgeHeight:l,badgeTextColor:u,badgeFontWeight:`normal`,badgeFontSize:d,badgeColor:f,badgeColorHover:p,badgeShadowColor:o,badgeHeightSm:m,badgeDotSize:h,badgeFontSizeSm:g,badgeStatusSize:_,badgeProcessingDuration:`1.2s`,badgeRibbonOffset:a,badgeRibbonCornerTransform:`scaleY(0.75)`,badgeRibbonCornerFilter:`brightness(75%)`}))]}),Gt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Kt=y({compatConfig:{MODE:3},name:`ABadgeRibbon`,inheritAttrs:!1,props:{prefix:String,color:{type:String},text:xe.any,placement:{type:String,default:`end`}},slots:Object,setup(e,t){let{attrs:n,slots:r}=t,{prefixCls:i,direction:a}=ve(`ribbon`,e),[o,s]=Wt(i),c=C(()=>Te(e.color,!1)),l=C(()=>[i.value,`${i.value}-placement-${e.placement}`,{[`${i.value}-rtl`]:a.value===`rtl`,[`${i.value}-color-${e.color}`]:c.value}]);return()=>{let{class:t,style:a}=n,u=Gt(n,[`class`,`style`]),d={},f={};return e.color&&!c.value&&(d.background=e.color,f.color=e.color),o(S(`div`,q({class:`${i.value}-wrapper ${s.value}`},u),[r.default?.call(r),S(`div`,{class:[l.value,t,s.value],style:J(J({},d),a)},[S(`span`,{class:`${i.value}-text`},[e.text||r.text?.call(r)]),S(`div`,{class:`${i.value}-corner`,style:f},null)])]))}}}),qt=y({compatConfig:{MODE:3},name:`ABadge`,Ribbon:Kt,inheritAttrs:!1,props:{count:xe.any.def(null),showZero:{type:Boolean,default:void 0},overflowCount:{type:Number,default:99},dot:{type:Boolean,default:void 0},prefixCls:String,scrollNumberPrefixCls:String,status:{type:String},size:{type:String,default:`default`},color:String,text:xe.any,offset:Array,numberStyle:{type:Object,default:void 0},title:String},slots:Object,setup(e,t){let{slots:n,attrs:r}=t,{prefixCls:i,direction:a}=ve(`badge`,e),[o,s]=Wt(i),c=C(()=>e.count>e.overflowCount?`${e.overflowCount}+`:e.count),l=C(()=>c.value===`0`||c.value===0),u=C(()=>e.count===null||l.value&&!e.showZero),f=C(()=>(e.status!==null&&e.status!==void 0||e.color!==null&&e.color!==void 0)&&u.value),p=C(()=>e.dot&&!l.value),m=C(()=>p.value?``:c.value),h=C(()=>(m.value===null||m.value===void 0||m.value===``||l.value&&!e.showZero)&&!p.value),g=d(e.count),_=d(m.value),v=d(p.value);w([()=>e.count,m,p],()=>{h.value||(g.value=e.count,_.value=m.value,v.value=p.value)},{immediate:!0});let y=C(()=>Te(e.color,!1)),b=C(()=>({[`${i.value}-status-dot`]:f.value,[`${i.value}-status-${e.status}`]:!!e.status,[`${i.value}-color-${e.color}`]:y.value})),x=C(()=>e.color&&!y.value?{background:e.color,color:e.color}:{}),T=C(()=>({[`${i.value}-dot`]:v.value,[`${i.value}-count`]:!v.value,[`${i.value}-count-sm`]:e.size===`small`,[`${i.value}-multiple-words`]:!v.value&&_.value&&_.value.toString().length>1,[`${i.value}-status-${e.status}`]:!!e.status,[`${i.value}-color-${e.color}`]:y.value}));return()=>{let{offset:t,title:c,color:l}=e,u=r.style,d=_e(n,e,`text`),p=i.value,m=g.value,v=he(n.default?.call(n));v=v.length?v:null;let C=!!(!h.value||n.count),w=(()=>{if(!t)return J({},u);let e={marginTop:et(t[1])?`${t[1]}px`:t[1]};return a.value===`rtl`?e.left=`${parseInt(t[0],10)}px`:e.right=`${-parseInt(t[0],10)}px`,J(J({},e),u)})(),E=c??(typeof m==`string`||typeof m==`number`?m:void 0),D=C||!d?null:S(`span`,{class:`${p}-status-text`},[d]),O=typeof m==`object`||m===void 0&&n.count?Fe(m??n.count?.call(n),{style:w},!1):null,k=se(p,{[`${p}-status`]:f.value,[`${p}-not-a-wrapper`]:!v,[`${p}-rtl`]:a.value===`rtl`},r.class,s.value);if(!v&&f.value){let e=w.color;return o(S(`span`,q(q({},r),{},{class:k,style:w}),[S(`span`,{class:b.value,style:x.value},null),S(`span`,{style:{color:e},class:`${p}-status-text`},[d])]))}let A=Pe(v?`${p}-zoom`:``,{appear:!1}),j=J(J({},w),e.numberStyle);return l&&!y.value&&(j||={},j.background=l),o(S(`span`,q(q({},r),{},{class:k}),[v,S(H,A,{default:()=>[N(S(It,{prefixCls:e.scrollNumberPrefixCls,show:C,class:T.value,count:_.value,title:E,style:j,key:`scrollNumber`},{default:()=>[O]}),[[U,C]])]}),D]))}}});qt.install=function(e){return e.component(qt.name,qt),e.component(Kt.name,Kt),e};var Jt=qt,Yt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Xt=y({compatConfig:{MODE:3},name:`ABreadcrumbItem`,inheritAttrs:!1,__ANT_BREADCRUMB_ITEM:!0,props:{prefixCls:String,href:String,separator:xe.any,dropdownProps:fe(),overlay:xe.any,onClick:oe()},slots:Object,setup(e,t){let{slots:n,attrs:r,emit:i}=t,{prefixCls:a}=ve(`breadcrumb`,e),o=(t,r)=>{let i=_e(n,e,`overlay`);return i?S(tt,q(q({},e.dropdownProps),{},{overlay:i,placement:`bottom`}),{default:()=>[S(`span`,{class:`${r}-overlay-link`},[t,S(He,null,null)])]}):t},s=e=>{i(`click`,e)};return()=>{let t=_e(n,e,`separator`)??`/`,i=_e(n,e),{class:c,style:l}=r,u=Yt(r,[`class`,`style`]),d;return d=e.href===void 0?S(`span`,q({class:`${a.value}-link`,onClick:s},u),[i]):S(`a`,q({class:`${a.value}-link`,onClick:s},u),[i]),d=o(d,a.value),i==null?null:S(`li`,{class:c,style:l},[d,t&&S(`span`,{class:`${a.value}-separator`},[t])])}}}),Zt=e=>{let{componentCls:t,iconCls:n}=e;return{[t]:J(J({},pe(e)),{color:e.breadcrumbBaseColor,fontSize:e.breadcrumbFontSize,[n]:{fontSize:e.breadcrumbIconFontSize},ol:{display:`flex`,flexWrap:`wrap`,margin:0,padding:0,listStyle:`none`},a:J({color:e.breadcrumbLinkColor,transition:`color ${e.motionDurationMid}`,padding:`0 ${e.paddingXXS}px`,borderRadius:e.borderRadiusSM,height:e.lineHeight*e.fontSize,display:`inline-block`,marginInline:-e.marginXXS,"&:hover":{color:e.breadcrumbLinkColorHover,backgroundColor:e.colorBgTextHover}},ge(e)),"li:last-child":{color:e.breadcrumbLastItemColor,[`& > ${t}-separator`]:{display:`none`}},[`${t}-separator`]:{marginInline:e.breadcrumbSeparatorMargin,color:e.breadcrumbSeparatorColor},[`${t}-link`]:{[`
2
2
  > ${n} + span,
3
3
  > ${n} + a
4
4
  `]:{marginInlineStart:e.marginXXS}},[`${t}-overlay-link`]:{borderRadius:e.borderRadiusSM,height:e.lineHeight*e.fontSize,display:`inline-block`,padding:`0 ${e.paddingXXS}px`,marginInline:-e.marginXXS,[`> ${n}`]:{marginInlineStart:e.marginXXS,fontSize:e.fontSizeIcon},"&:hover":{color:e.breadcrumbLinkColorHover,backgroundColor:e.colorBgTextHover,a:{color:e.breadcrumbLinkColorHover}},a:{"&:hover":{backgroundColor:`transparent`}}},[`&${e.componentCls}-rtl`]:{direction:`rtl`}})}},Qt=de(`Breadcrumb`,e=>[Zt(Ce(e,{breadcrumbBaseColor:e.colorTextDescription,breadcrumbFontSize:e.fontSize,breadcrumbIconFontSize:e.fontSize,breadcrumbLinkColor:e.colorTextDescription,breadcrumbLinkColorHover:e.colorText,breadcrumbLastItemColor:e.colorText,breadcrumbSeparatorMargin:e.marginXS,breadcrumbSeparatorColor:e.colorTextDescription}))]),$t=()=>({prefixCls:String,routes:{type:Array},params:xe.any,separator:xe.any,itemRender:{type:Function}});function en(e,t){if(!e.breadcrumbName)return null;let n=Object.keys(t).join(`|`);return e.breadcrumbName.replace(RegExp(`:(${n})`,`g`),(e,n)=>t[n]||e)}function tn(e){let{route:t,params:n,routes:r,paths:i}=e,a=r.indexOf(t)===r.length-1,o=en(t,n);return a?S(`span`,null,[o]):S(`a`,{href:`#/${i.join(`/`)}`},[o])}var nn=y({compatConfig:{MODE:3},name:`ABreadcrumb`,inheritAttrs:!1,props:$t(),slots:Object,setup(e,t){let{slots:n,attrs:r}=t,{prefixCls:i,direction:a}=ve(`breadcrumb`,e),[o,s]=Qt(i),c=(e,t)=>(e=(e||``).replace(/^\//,``),Object.keys(t).forEach(n=>{e=e.replace(`:${n}`,t[n])}),e),l=(e,t,n)=>{let r=[...e],i=c(t||``,n);return i&&r.push(i),r},u=e=>{let{routes:t=[],params:n={},separator:r,itemRender:i=tn}=e,a=[];return t.map(e=>{let o=c(e.path,n);o&&a.push(o);let s=[...a],u=null;e.children&&e.children.length&&(u=S(Ye,{items:e.children.map(e=>({key:e.path||e.breadcrumbName,label:i({route:e,params:n,routes:t,paths:l(s,e.path,n)})}))},null));let d={separator:r};return u&&(d.overlay=u),S(Xt,q(q({},d),{},{key:o||e.breadcrumbName}),{default:()=>[i({route:e,params:n,routes:t,paths:s})]})})};return()=>{let t,{routes:c,params:l={}}=e,d=he(_e(n,e)),f=_e(n,e,`separator`)??`/`,p=e.itemRender||n.itemRender||tn;c&&c.length>0?t=u({routes:c,params:l,separator:f,itemRender:p}):d.length&&(t=d.map((e,t)=>(me(typeof e.type==`object`&&(e.type.__ANT_BREADCRUMB_ITEM||e.type.__ANT_BREADCRUMB_SEPARATOR),`Breadcrumb`,`Only accepts Breadcrumb.Item and Breadcrumb.Separator as it's children`),F(e,{separator:f,key:t}))));let m={[i.value]:!0,[`${i.value}-rtl`]:a.value===`rtl`,[`${r.class}`]:!!r.class,[s.value]:!0};return o(S(`nav`,q(q({},r),{},{class:m}),[S(`ol`,null,[t])]))}}}),rn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},an=y({compatConfig:{MODE:3},name:`ABreadcrumbSeparator`,__ANT_BREADCRUMB_SEPARATOR:!0,inheritAttrs:!1,props:{prefixCls:String},setup(e,t){let{slots:n,attrs:r}=t,{prefixCls:i}=ve(`breadcrumb`,e);return()=>{let{separator:e,class:t}=r,a=rn(r,[`separator`,`class`]),o=he(n.default?.call(n));return S(`span`,q({class:[`${i.value}-separator`,t]},a),[o.length>0?o:`/`])}}});nn.Item=Xt,nn.Separator=an,nn.install=function(e){return e.component(nn.name,nn),e.component(Xt.name,Xt),e.component(an.name,an),e};var on=nn,sn=[`normal`,`exception`,`active`,`success`],cn=()=>({prefixCls:String,type:ye(),percent:Number,format:ne(),status:ye(),showInfo:le(),strokeWidth:Number,strokeLinecap:ye(),strokeColor:ce(),trailColor:String,width:Number,success:fe(),gapDegree:Number,gapPosition:ye(),size:Se([String,Number,Array]),steps:Number,successPercent:Number,title:String,progressStatus:ye()});function ln(e){return!e||e<0?0:e>100?100:e}function un(e){let{success:t,successPercent:n}=e,r=n;return t&&`progress`in t&&(Le(!1,`Progress`,"`success.progress` is deprecated. Please use `success.percent` instead."),r=t.progress),t&&`percent`in t&&(r=t.percent),r}function dn(e){let{percent:t,success:n,successPercent:r}=e,i=ln(un({success:n,successPercent:r}));return[i,ln(ln(t)-i)]}function fn(e){let{success:t={},strokeColor:n}=e,{strokeColor:r}=t;return[r||ie.green,n||null]}var pn=(e,t,n)=>{let r=-1,i=-1;if(t===`step`){let t=n.steps,a=n.strokeWidth;typeof e==`string`||e===void 0?(r=e===`small`?2:14,i=a??8):typeof e==`number`?[r,i]=[e,e]:[r=14,i=8]=e,r*=t}else if(t===`line`){let t=n?.strokeWidth;typeof e==`string`||e===void 0?i=t||(e===`small`?6:8):typeof e==`number`?[r,i]=[e,e]:[r=-1,i=8]=e}else(t===`circle`||t===`dashboard`)&&(typeof e==`string`||e===void 0?[r,i]=e===`small`?[60,60]:[120,120]:typeof e==`number`?[r,i]=[e,e]:(r=e[0]??e[1]??120,i=e[0]??e[1]??120));return{width:r,height:i}},mn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},hn=()=>J(J({},cn()),{strokeColor:ce(),direction:ye()}),gn=e=>{let t=[];return Object.keys(e).forEach(n=>{let r=parseFloat(n.replace(/%/g,``));isNaN(r)||t.push({key:r,value:e[n]})}),t=t.sort((e,t)=>e.key-t.key),t.map(e=>{let{key:t,value:n}=e;return`${n} ${t}%`}).join(`, `)},_n=(e,t)=>{let{from:n=ie.blue,to:r=ie.blue,direction:i=t===`rtl`?`to left`:`to right`}=e,a=mn(e,[`from`,`to`,`direction`]);return Object.keys(a).length===0?{backgroundImage:`linear-gradient(${i}, ${n}, ${r})`}:{backgroundImage:`linear-gradient(${i}, ${gn(a)})`}},vn=y({compatConfig:{MODE:3},name:`ProgressLine`,inheritAttrs:!1,props:hn(),setup(e,t){let{slots:n,attrs:r}=t,i=C(()=>{let{strokeColor:t,direction:n}=e;return t&&typeof t!=`string`?_n(t,n):{backgroundColor:t}}),a=C(()=>e.strokeLinecap===`square`||e.strokeLinecap===`butt`?0:void 0),o=C(()=>e.trailColor?{backgroundColor:e.trailColor}:void 0),s=C(()=>e.size??[-1,e.strokeWidth||(e.size===`small`?6:8)]),c=C(()=>pn(s.value,`line`,{strokeWidth:e.strokeWidth})),l=C(()=>{let{percent:t}=e;return J({width:`${ln(t)}%`,height:`${c.value.height}px`,borderRadius:a.value},i.value)}),u=C(()=>un(e)),d=C(()=>{let{success:t}=e;return{width:`${ln(u.value)}%`,height:`${c.value.height}px`,borderRadius:a.value,backgroundColor:t?.strokeColor}}),f={width:c.value.width<0?`100%`:c.value.width,height:`${c.value.height}px`};return()=>S(D,null,[S(`div`,q(q({},r),{},{class:[`${e.prefixCls}-outer`,r.class],style:[r.style,f]}),[S(`div`,{class:`${e.prefixCls}-inner`,style:o.value},[S(`div`,{class:`${e.prefixCls}-bg`,style:l.value},null),u.value===void 0?null:S(`div`,{class:`${e.prefixCls}-success-bg`,style:d.value},null)])]),n.default?.call(n)])}}),yn={percent:0,prefixCls:`vc-progress`,strokeColor:`#2db7f5`,strokeLinecap:`round`,strokeWidth:1,trailColor:`#D9D9D9`,trailWidth:1},bn=e=>{let t=d(null);return f(()=>{let n=Date.now(),r=!1;e.value.forEach(e=>{let i=e?.$el||e;if(!i)return;r=!0;let a=i.style;a.transitionDuration=`.3s, .3s, .3s, .06s`,t.value&&n-t.value<100&&(a.transitionDuration=`0s, 0s`)}),r&&(t.value=Date.now())}),e},xn={gapDegree:Number,gapPosition:{type:String},percent:{type:[Array,Number]},prefixCls:String,strokeColor:{type:[Object,String,Array]},strokeLinecap:{type:String},strokeWidth:Number,trailColor:String,trailWidth:Number,transition:String},Sn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Cn=0;function wn(e){return+e.replace(`%`,``)}function Tn(e){return Array.isArray(e)?e:[e]}function En(e,t,n,r){let i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=50-r/2,s=0,c=-o,l=0,u=-2*o;switch(a){case`left`:s=-o,c=0,l=2*o,u=0;break;case`right`:s=o,c=0,l=-2*o,u=0;break;case`bottom`:c=o,u=2*o}let d=`M 50,50 m ${s},${c}
@@ -1 +1 @@
1
- import{t as e}from"./DK3Fl9T5.js";import{v as t}from"./CavpkQb0.js";import{et as n}from"./ByMj6e7s.js";import{d as r}from"./Br3AySNQ.js";import{n as i}from"./Cnrmlixo.js";import{i as a}from"./CiyTTgqr.js";import{t as o}from"./Do0dCE8C2.js";import{a as s,t as c}from"./DIDbAMv5.js";import{t as l}from"./pncSmP5n.js";import{t as u}from"./JgheoP3e.js";var d=e({useWorkbenchWorkspaces:()=>f});function f(){let{t:e}=i(),d=o(),f=l(),p=s(),{subscribe:m}=c(),h=t(!1);n(()=>d.isLoggedIn,async t=>{if(!t){h.value=!1;return}if(await d.refresh(),d.isLoggedIn)try{await f.load(),h.value=!0}catch(t){a.error(t instanceof Error?t.message:e(`wsHome.k1br33vc023`))}},{immediate:!0}),n(()=>h.value&&f.workspaces.map(e=>e.channelIds.join(`,`)).join(`|`),()=>{if(h.value)for(let e of f.workspaces)for(let t of e.channelIds)m(t)},{immediate:!0});let g=t(!1),_=t(``),v=t(!1);return{wsStore:f,ready:h,createOpen:g,createName:_,createLoading:v,create:async()=>{let t=_.value.trim();if(!t){a.warning(e(`wsHome.nameRequired`));return}v.value=!0;try{let e=await f.create(t);g.value=!1,_.value=``,f.setActiveWorkspaceId(e.id),r(`/workshop/w/${e.id}`)}catch(e){a.error(u(e))}finally{v.value=!1}},remove:async t=>{await f.remove(t),a.success(e(`wsHome.k3n5sd7024`))},channelSummary:e=>e.map(e=>{let t=p.channels[e],n=p.agents[e]??[];return{id:e,name:t?.name??e.slice(0,8),synced:t!==void 0,agents:n.length,busy:n.filter(e=>e.state===`busy`).length,activeTasks:(p.tasks[e]??[]).filter(e=>![`COMPLETED`,`CANCELED`,`FAILED`].includes(e.state)).length}})}}export{d as n,f as t};
1
+ import{t as e}from"./DK3Fl9T5.js";import{v as t}from"./CavpkQb0.js";import{et as n}from"./ByMj6e7s.js";import{d as r}from"./Br3AySNQ.js";import{n as i}from"./Cnrmlixo.js";import{i as a}from"./CiyTTgqr.js";import{t as o}from"./Do0dCE8C2.js";import{a as s,t as c}from"./DG0esyZR.js";import{t as l}from"./pncSmP5n.js";import{t as u}from"./JgheoP3e.js";var d=e({useWorkbenchWorkspaces:()=>f});function f(){let{t:e}=i(),d=o(),f=l(),p=s(),{subscribe:m}=c(),h=t(!1);n(()=>d.isLoggedIn,async t=>{if(!t){h.value=!1;return}if(await d.refresh(),d.isLoggedIn)try{await f.load(),h.value=!0}catch(t){a.error(t instanceof Error?t.message:e(`wsHome.k1br33vc023`))}},{immediate:!0}),n(()=>h.value&&f.workspaces.map(e=>e.channelIds.join(`,`)).join(`|`),()=>{if(h.value)for(let e of f.workspaces)for(let t of e.channelIds)m(t)},{immediate:!0});let g=t(!1),_=t(``),v=t(!1);return{wsStore:f,ready:h,createOpen:g,createName:_,createLoading:v,create:async()=>{let t=_.value.trim();if(!t){a.warning(e(`wsHome.nameRequired`));return}v.value=!0;try{let e=await f.create(t);g.value=!1,_.value=``,f.setActiveWorkspaceId(e.id),r(`/workshop/w/${e.id}`)}catch(e){a.error(u(e))}finally{v.value=!1}},remove:async t=>{await f.remove(t),a.success(e(`wsHome.k3n5sd7024`))},channelSummary:e=>e.map(e=>{let t=p.channels[e],n=p.agents[e]??[];return{id:e,name:t?.name??e.slice(0,8),synced:t!==void 0,agents:n.length,busy:n.filter(e=>e.state===`busy`).length,activeTasks:(p.tasks[e]??[]).filter(e=>![`COMPLETED`,`CANCELED`,`FAILED`].includes(e.state)).length}})}}export{d as n,f as t};
@@ -0,0 +1 @@
1
+ import{v as e}from"./CavpkQb0.js";import{P as t,R as n,et as r}from"./ByMj6e7s.js";import{i}from"./S799kNo8.js";import{t as a}from"./RAqsw632.js";import{t as o}from"./36oeS8_R.js";import{t as s}from"./Do0dCE8C2.js";import{r as c}from"./ClEbKcuS.js";import{t as l}from"./Ch1P2mIf.js";import{t as u}from"./JgheoP3e.js";import{t as d}from"./P0EcfD3j.js";var f=50,p=10,m=2e3,h=i(`workshop.notifications`,()=>{let t=e([]),n=e(0),r=e(null),i=e(new Set),a=e(!1),o=e(null),u=e(0),d=e(!1),h=null;function g(e=5e3){d.value=!0,h&&clearTimeout(h),h=setTimeout(()=>{d.value=!1,h=null},e)}function _(){d.value=!1,h&&=(clearTimeout(h),null)}function v(e){if(!e)return;let t=i.value;if(t.has(e)||t.add(e),t.size>m){let e=[...t].slice(-Math.floor(m/2));i.value=new Set(e)}}function y(e){let n=t.value,r=0;for(;r<n.length&&n[r].createdAt>=e.createdAt;)r++;n.splice(r,0,e)}function b(e,r={}){if(!e?.id)return!1;let a=t.value.findIndex(t=>t.id===e.id);return a>=0?(t.value[a]={...t.value[a],...e},!1):e.eventId&&i.value.has(e.eventId)?!1:(v(e.eventId),y(e),e.readAt||(n.value+=1),x(e),r.live&&(o.value=e,u.value+=1),!0)}function x(e){let t=r.value;(!t||e.createdAt>t.createdAt||e.createdAt===t.createdAt&&e.id>t.id)&&(r.value={createdAt:e.createdAt,id:e.id})}function S(e){if(e.type===`notification.created`){b(e.payload,{live:!d.value});return}e.type===`notification.read`&&C(e.payload)}function C(e){let r=e.readAt||c();for(let n of t.value)n.readAt||e.id&&n.id!==e.id||!e.id&&e.channelId&&n.channelId!==e.channelId||(n.readAt=r);n.value=t.value.filter(e=>!e.readAt).length}async function w(e){let t=s().token,n={limit:String(f)};e&&(n.cursor=`${e.createdAt}|${e.id}`);let r=Object.entries(n).map(([e,t])=>`${e}=${encodeURIComponent(t)}`).join(`&`),i=await l(`/api/workshop/notifications?${r}`,{headers:t?{authorization:`Bearer ${t}`}:{}});if(i.code!==0||!i.data)throw Error(i.message??`通知拉取失败`);return i.data}let T=null,E=0,D=0,O=0,k=0;async function A(e){if(T)return T;let t=Date.now();if(t<D)return;let n=2e3-(t-E);return n>0&&await new Promise(e=>setTimeout(e,n)),T||(E=Date.now(),E-O>1e4&&(O=E,k=0),k+=1,k>10&&(D=E+3e4,k=0),T=(async()=>{try{await e()}finally{T=null}})(),T)}async function j(){typeof window>`u`||!s().token||await A(async()=>{let e=await w(null);t.value=[...e.notifications??[]];for(let e of t.value)v(e.eventId);n.value=e.unreadCount??t.value.filter(e=>!e.readAt).length;let i=t.value[0];r.value=i?{createdAt:i.createdAt,id:i.id}:null,a.value=!0}).catch(()=>{})}async function M(){if(typeof window>`u`||!s().token)return 0;if(!a.value)return await j(),0;let e=0;try{return await A(async()=>{for(let t=0;t<p;t+=1){let t=await w(r.value),i=t.notifications??[];for(let t of i)b(t)&&(e+=1);if(t.nextCursor&&(r.value=t.nextCursor),n.value=t.unreadCount??n.value,i.length<f||!t.nextCursor)return}}),e}catch{return e}}function N(e){e&&(!r.value||e.createdAt>r.value.createdAt||e.createdAt===r.value.createdAt&&e.id>r.value.id)&&(r.value=e)}async function P(e){let r=s().token,i=await l(`/api/workshop/notifications/read`,{method:`POST`,body:{...e},headers:r?{authorization:`Bearer ${r}`}:{}});if(i.code!==0||!i.data)throw Error(i.message??`标记已读失败`);let a=c();for(let n of t.value)n.readAt||e.id&&n.id!==e.id||!e.id&&!e.all&&e.channelId&&n.channelId!==e.channelId||(n.readAt=a);return n.value=i.data.unreadCount??t.value.filter(e=>!e.readAt).length,i.data.count??0}function F(){t.value=[],n.value=0,r.value=null,i.value=new Set,a.value=!1,o.value=null,_()}return{items:t,unreadCount:n,cursor:r,seenEventIds:i,loaded:a,liveItem:o,liveSeq:u,replaying:d,beginReplay:g,endReplay:_,applyEnvelope:S,applyRead:C,upsertNotification:b,loadSnapshot:j,backfill:M,applyReplayCursor:N,markRead:P,clear:F}}),g=45e3,_=9e4,v=i(`workshop.connection`,{state:()=>({state:`closed`,cursors:{},lastDataAt:0,pendingReplay:!1,lastError:``,retryCount:0})}),y=class{onEvent;onStateChange;onPendingReplay;onDataRecovered;ws=null;retry=0;closedByUser=!1;subscribed=new Set;refCounts=new Map;lastSeqByChannel=new Map;lastFrameAt=0;lastDataAt=0;userToken=``;constructor(e,t,n=()=>{},r=()=>{}){this.onEvent=e,this.onStateChange=t,this.onPendingReplay=n,this.onDataRecovered=r}updateCursor(e,t){Number.isFinite(t)&&this.lastSeqByChannel.set(e,t)}url(){return typeof location>`u`?`ws://localhost/api/workshop/ws`:`${location.protocol===`https:`?`wss`:`ws`}://${location.host}/api/workshop/ws${this.userToken?`?token=${encodeURIComponent(this.userToken)}`:``}`}connect(){if(typeof window>`u`)return;this.onStateChange(`connecting`,this.retry);let e=new WebSocket(this.url());this.ws=e,this.lastFrameAt=Date.now(),this.lastDataAt=Date.now(),e.onopen=()=>{this.retry=0,this.onStateChange(`open`,0);for(let e of this.subscribed)this.sendSub(e,this.lastSeqByChannel.get(e))},e.onmessage=e=>{this.lastFrameAt=Date.now();try{let t=JSON.parse(e.data);t.type!==`pong`&&(this.lastDataAt=Date.now(),this.onDataRecovered()),this.onEvent(t)}catch{}},e.onclose=()=>{if(this.ws=null,this.closedByUser){this.onStateChange(`closed`,0);return}this.onStateChange(`closed`,this.retry),this.subscribed.size>0&&this.onPendingReplay();let e=Math.min(1e3*2**this.retry,1e4);this.retry+=1,setTimeout(()=>{this.closedByUser||this.connect()},e)},e.onerror=()=>{}}checkStale(){let e=this.ws;!e||e.readyState!==WebSocket.OPEN||(Date.now()-this.lastFrameAt>g||Date.now()-this.lastDataAt>_)&&e.close()}sendSub(e,t){let n={type:`sub`,channelId:e,token:this.userToken};typeof t==`number`&&(n.lastSeq=t),this.ws?.send(JSON.stringify(n))}subscribe(e,t){let n=this.refCounts.get(e)??0;this.refCounts.set(e,n+1),!(n>0)&&(this.subscribed.add(e),typeof t==`number`&&this.lastSeqByChannel.set(e,t),this.ws?.readyState===WebSocket.OPEN?this.sendSub(e,this.lastSeqByChannel.get(e)):this.ws||this.connect())}ensureConnected(){typeof window>`u`||this.ws||this.connect()}unsubscribe(e){let t=this.refCounts.get(e)??0;t<=1?(this.refCounts.delete(e),this.subscribed.delete(e),this.ws?.readyState===WebSocket.OPEN&&this.ws?.send(JSON.stringify({type:`unsub`,channelId:e}))):this.refCounts.set(e,t-1)}refCount(e){return this.refCounts.get(e)??0}ping(){try{this.ws?.send(JSON.stringify({type:`ping`}))}catch{try{this.ws?.close()}catch{}}}close(){this.closedByUser=!0,this.ws?.close()}},b={silent:0,status:1,attention:2,terminal:3};function x(e){switch(e.type){case`error`:return`attention`;case`a2a.artifact`:case`agent.message`:return`terminal`;case`task.status`:{let t=String(e.payload.state??``);return t===`COMPLETED`||t===`FAILED`||t===`CANCELED`?`terminal`:t===`WAITING`?`attention`:`status`}case`a2a.message`:return(e.payload.metadata??{})[`x-aw-require-reply`]===`true`?`attention`:`status`;case`agent.delta`:case`agent.status.message`:case`task.progress`:case`memory.saved`:return`silent`;default:return`status`}}function S(e){let t=`silent`;for(let n of e){let e=x(n);b[e]>b[t]&&(t=e)}return t}var C=5e3,w=[`agent.delta`],T={all:null,messages:[`agent.message`,`agent.delta`,`agent.status.message`,`a2a.message`],tasks:[`task.status`,`task.progress`,`a2a.artifact`],team:[`agent.member`,`task.status`],errors:[`error`],key:null};function E(e,t,n,r){if(e.type===`channel.snapshot`)return!1;if(t===`key`){let t=x(e);return t===`attention`||t===`terminal`}return n&&!n.includes(e.type)?!1:r&&e.type!==`task.status`&&e.type!==`task.progress`?e.agentId===r||e.type===`a2a.message`&&e.payload.metadata?.[`x-aw-target-agent`]===r:!0}function D(e,t,n,r){return e.filter(e=>E(e,t,n,r))}var O=Object.freeze([]),k=new Map;function A(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>>1;(e[i]?.seq??0)>t?r=i:n=i+1}return n}var j=()=>({lastSeq:0,items:[],consumed:new Set,byAgent:new Map});function M(e,t){let n=t.agentId;if(!n)return;let r=e.byAgent.get(n);r?r.push(t):e.byAgent.set(n,[t])}function N(e,t){for(let n of t){let t=e.byAgent.get(n.agentId??``);if(!t)continue;let r=t.indexOf(n);r>=0&&t.splice(r,1),t.length===0&&e.byAgent.delete(n.agentId??``)}}function P(e){e.byAgent.clear();for(let t of e.items)M(e,t)}function F(e,t,n){let r=0;for(let i of t)typeof i.seq!=`number`||i.seq>n||e.consumed.has(i.seq)||(e.items.push(i),e.consumed.add(i.seq),r+=1);if(r>0){e.items.sort((e,t)=>e.seq-t.seq);let t=e.items.length-C;t>0&&e.items.splice(0,t),P(e)}return r}var I=i(`workshop.events`,{state:()=>({rings:{},filters:{},focusAgents:{},laneLoaded:{}}),getters:{ring(e){return t=>e.rings[t]??j()},timeline(e){return t=>{let n=e.rings[t];if(!n)return O;let r=e.filters[t]??`all`,i=e.focusAgents[t]??null,a=n.items,o=T[r],s=a.length>0?a[a.length-1]?.seq??0:-1,c=k.get(t);if(!c||c.filter!==r||c.focus!==i||a.length===0&&c.result.length>0||c.lastSeq>s){let e=D(a,r,o,i);return k.set(t,{filter:r,focus:i,lastSeq:s,result:e}),e}let l=a[0]?.seq??0,u=c.result;if(u.length>0&&(u[0]?.seq??0)<l){let e=0;for(;e<u.length&&(u[e]?.seq??0)<l;)e++;u.splice(0,e)}if(s>c.lastSeq){let e=A(a,c.lastSeq);for(let t=e;t<a.length;t++){let e=a[t];E(e,r,o,i)&&u.push(e)}c.lastSeq=s}return u}},agentEvents(e){return(t,n)=>n?e.rings[t]?.byAgent.get(n)??O:O},lastSeq(e){return t=>e.rings[t]?.lastSeq??0}},actions:{ingest(e){if(!e.channelId)return;let t=this.rings[e.channelId]??j();if(e.type===`channel.snapshot`){this.rings[e.channelId]={lastSeq:e.seq,items:[],consumed:new Set([e.seq]),byAgent:new Map};return}if(typeof e.seq==`number`&&e.seq>t.lastSeq){if(t.consumed.add(e.seq),e.type===`agent.delta`){let n=t.items[t.items.length-1];if(n&&n.type===`agent.delta`&&n.agentId===e.agentId&&(n.taskId??null)===(e.taskId??null)&&n){let r=n.payload.delta;n.payload.delta=r+e.payload.delta,t.lastSeq=e.seq,this.rings[e.channelId]=t;return}}t.items.push(e),M(t,e),t.items.length>C&&N(t,t.items.splice(0,t.items.length-C)),t.lastSeq=e.seq,t.consumed.size>2e4&&(t.consumed=new Set(t.items.map(e=>e.seq))),this.rings[e.channelId]=t}},setFilter(e,t){this.filters[e]=t},async loadHistory(e,t=200){if(typeof window>`u`)return;let n=this.rings[e]??j();try{let r=await l(`/api/workshop/channels/${e}/events`,{params:{limit:t,excludeTypes:w.join(`,`)},headers:{authorization:`Bearer ${s().token}`}});if(r.code!==0||!r.data?.items?.length)return;F(n,r.data.items,n.lastSeq),this.rings[e]=n}catch{}},async loadEarlier(e,t=200){if(typeof window>`u`)return!1;let n=this.rings[e];if(!n)return!1;let r=n.items.length>0?n.items[0]?.seq??0:n.lastSeq;if(r<=1)return!1;try{let i=await l(`/api/workshop/channels/${e}/events`,{params:{limit:t,beforeSeq:Math.max(1,r-1),excludeTypes:w.join(`,`)},headers:{authorization:`Bearer ${s().token}`}});if(i.code!==0||!i.data?.items?.length)return!1;let a=F(n,i.data.items,n.lastSeq);return a>0&&(this.rings[e]=n),a>0&&i.data.items.length>=t}catch{return!1}},async loadLaneHistory(e,t,n=200){if(typeof window>`u`||this.laneLoaded[e]?.has(t))return;(this.laneLoaded[e]??=new Set).add(t);for(let t=0;t<20&&this.lastSeq(e)===0;t++)await new Promise(e=>setTimeout(e,150));if(this.lastSeq(e)===0){this.laneLoaded[e]?.delete(t);return}let r=this.rings[e];try{let i=await l(`/api/workshop/channels/${e}/events`,{params:{limit:n,agentId:t,excludeTypes:w.join(`,`)},headers:{authorization:`Bearer ${s().token}`}});i.code===0&&i.data?.items?.length&&(F(r,i.data.items,r.lastSeq),this.rings[e]=r)}catch{this.laneLoaded[e]?.delete(t)}},async loadLaneEarlier(e,t,n=200){if(typeof window>`u`)return!1;let r=this.rings[e];if(!r)return!1;let i=0;for(let e of r.items)if(e.agentId===t){i=e.seq;break}if(i<=1)return!1;try{let a=await l(`/api/workshop/channels/${e}/events`,{params:{limit:n,agentId:t,beforeSeq:i-1,excludeTypes:w.join(`,`)},headers:{authorization:`Bearer ${s().token}`}});if(a.code!==0||!a.data?.items?.length)return!1;let o=F(r,a.data.items,r.lastSeq);return o>0&&(this.rings[e]=r),o>0&&a.data.items.length>=n}catch{return!1}},setFocusAgent(e,t){this.focusAgents[e]=t},clear(e){Reflect.deleteProperty(this.rings,e),Reflect.deleteProperty(this.laneLoaded,e)}}});function L(e){return e===`COMPLETED`||e===`FAILED`||e===`CANCELED`}function R(){return{activeRootId:null,queuedRoots:[],completedRoots:0,activeRootCount:0,queuedRootCount:0}}function z(e){let t=e.filter(e=>!e.parentId&&e.rootQueueSeq!=null).sort((e,t)=>(e.rootQueueSeq??0)-(t.rootQueueSeq??0)||String(e.createdAt).localeCompare(String(t.createdAt))),n=t.filter(e=>!L(e.state));return{activeRootId:n[0]?.id??null,queuedRoots:n.slice(1).map((e,t)=>({taskId:e.id,title:e.title,position:t+2,state:e.state,createdAt:e.createdAt})),completedRoots:t.length-n.length,activeRootCount:+(n.length>0),queuedRootCount:Math.max(0,n.length-1)}}var B=i(`workshop.entities`,{state:()=>({channels:{},agents:{},tasks:{},rootQueues:{},refreshing:{},refreshingAgents:{}}),getters:{agentById(e){return(t,n)=>e.agents[t]?.find(e=>e.agentId===n)},agentName(e){return(t,n)=>n?e.agents[t]?.find(e=>e.agentId===n)?.name??n.slice(0,8):`system`},taskTitle(e){return(t,n)=>n?e.tasks[t]?.find(e=>e.id===n)?.title??n.slice(0,8):``},rootTasks(e){return t=>(e.tasks[t]??[]).filter(e=>!e.parentId)},taskById(e){return(t,n)=>e.tasks[t]?.find(e=>e.id===n)},busyCount(e){return t=>(e.agents[t]??[]).filter(e=>e.state===`busy`).length},rootQueue(e){return t=>e.rootQueues[t]??R()},activeRootId(e){return t=>e.rootQueues[t]?.activeRootId??(e.tasks[t]??[]).filter(e=>!e.parentId&&!L(e.state))[0]?.id??null}},actions:{applySnapshot(e){let{channelId:t}=e;this.channels[t]={...e.channel,loadedAt:Date.now()},this.agents[t]=e.agents.map(e=>({...e,modelRef:e.config?.modelRef??e.modelRef??null})),this.tasks[t]=e.tasks.map(e=>this.toTaskView(e)),this.rootQueues[t]=e.rootQueue??z(e.tasks)},applyEvent(e){let t=e.channelId;switch(e.type){case`agent.status`:{let n=this.agents[t]??[],r=e.payload,i={agentId:r.agentId,state:r.state,currentTaskId:r.currentTaskId??null,currentTaskTitle:r.currentTaskTitle??null,currentTaskProgress:r.currentTaskProgress??null,queued:r.queued??r.queuedCount??0,completed:r.completed??r.completedCount??0,...r.context===void 0?{}:{context:r.context},...r.supervision?{supervision:r.supervision}:{},...r.continuity?{continuity:r.continuity}:{}},a=n.findIndex(e=>e.agentId===i.agentId);if(a>=0)n[a]={...n[a],...i};else{let e={agentId:i.agentId,state:i.state,currentTaskId:i.currentTaskId??null,queued:i.queued,completed:i.completed,name:i.agentId.slice(0,8),role:`worker`,harness:`-`,...r.supervision?{supervision:r.supervision}:{},...r.continuity?{continuity:r.continuity}:{}};n.push(e),this.refreshAgents(t)}this.agents[t]=[...n];break}case`agent.member`:{let n=e.payload,r=this.agents[t]??[],i=r.findIndex(e=>e.agentId===n.agentId);if(n.op===`added`)i<0&&r.push({agentId:n.agentId,name:n.name,role:n.role,harness:n.harness,enabled:n.enabled,config:n.config,modelRef:n.config?.modelRef??null,state:`idle`,currentTaskId:null,queued:0,completed:0});else if(n.op===`updated`){if(i>=0){let e=r[i],t=n.config??e.config;r[i]={...e,name:n.name??e.name,role:n.role??e.role,harness:n.harness??e.harness,enabled:n.enabled??e.enabled,config:t,modelRef:t?.modelRef??e.modelRef??null}}}else n.op===`removed`&&i>=0&&r.splice(i,1);this.agents[t]=[...r];break}case`task.status`:{let n=e.payload,r=this.tasks[t]??[],i=r.findIndex(e=>e.id===n.taskId);if(i>=0){let e=r[i];r[i]={...e,state:n.state,assigneeId:n.assigneeId??e.assigneeId,title:n.title??e.title,parentId:n.parentId??e.parentId,rootQueueSeq:n.rootQueueSeq??e.rootQueueSeq,progress:Math.max(e.progress,n.progress??0),routeReason:n.routeReason??e.routeReason,closeReason:n.closeReason??e.closeReason,deadlineAt:n.deadlineAt??e.deadlineAt,retryCount:n.retryCount??e.retryCount,createdAt:n.createdAt??e.createdAt,artifacts:Math.max(e.artifacts,n.artifacts??0)}}else{let e={id:n.taskId,title:n.title??n.taskId.slice(0,8),state:n.state,progress:n.progress??0,assigneeId:n.assigneeId??``,artifacts:n.artifacts??0};n.parentId&&(e.parentId=n.parentId),n.rootQueueSeq!=null&&(e.rootQueueSeq=n.rootQueueSeq),n.routeReason&&(e.routeReason=n.routeReason),n.closeReason&&(e.closeReason=n.closeReason),n.deadlineAt&&(e.deadlineAt=n.deadlineAt),n.retryCount!=null&&(e.retryCount=n.retryCount),n.createdAt&&(e.createdAt=n.createdAt),r.push(e),n.title===void 0&&this.refreshTasks(t)}this.tasks[t]=[...r];break}case`task.progress`:{let n=e.payload,r=this.tasks[t]??[],i=r.findIndex(e=>e.id===n.taskId),a=i>=0?r[i]:void 0;a&&(r[i]={...a,progress:n.progress}),this.tasks[t]=[...r];break}case`root.queue`:this.rootQueues[t]=e.payload;break;case`a2a.artifact`:{let n=e.payload;if(!n.taskId)break;let r=this.tasks[t]??[],i=r.findIndex(e=>e.id===n.taskId),a=i>=0?r[i]:void 0;a&&(r[i]={...a,artifacts:a.artifacts+1}),this.tasks[t]=[...r];break}}},toTaskView(e){return{id:e.id,parentId:e.parentId,rootQueueSeq:e.rootQueueSeq,title:e.title,state:e.state,progress:e.progress,assigneeId:e.assigneeId,artifacts:e.artifacts.length,routeReason:e.routeReason,sourceChatMessageId:e.sourceChatMessageId,sourceChatDeliveryId:e.sourceChatDeliveryId,retryCount:e.retryCount,closeReason:e.closeReason,deadlineAt:e.deadlineAt,createdAt:e.createdAt,updatedAt:e.updatedAt}},refreshChannel(e,t){this.applySnapshot(t)},refreshAgents(e){this.refreshingAgents[e]||(this.refreshingAgents[e]=!0,l(`/api/workshop/channels/${e}/agents`,{headers:{authorization:`Bearer ${s().token}`}}).then(t=>{let n=t.data??[],r=[...this.agents[e]??[]];for(let e of n){let t=r.findIndex(t=>t.agentId===e.id);t>=0?r[t]={...r[t],name:e.name,role:e.role,harness:e.harness,config:e.config}:r.push({agentId:e.id,name:e.name,role:e.role,harness:e.harness,config:e.config,state:`idle`,currentTaskId:null,queued:0,completed:0})}this.agents[e]=r}).catch(()=>{}).finally(()=>{this.refreshingAgents[e]=!1}))},refreshTasks(e){this.refreshing[e]||(this.refreshing[e]=!0,l(`/api/workshop/channels/${e}/tasks`,{headers:{authorization:`Bearer ${s().token}`}}).then(t=>{let n=t.data??[],r=this.tasks[e]??[],i=new Map(r.map(e=>[e.id,e])),a=new Set(n.map(e=>e.id)),o=n.map(e=>{let t=i.get(e.id),n=this.toTaskView(e);return t&&t.progress>n.progress?{...n,progress:t.progress}:n});for(let e of r)a.has(e.id)||o.push(e);this.tasks[e]=o}).catch(()=>{}).finally(()=>{this.refreshing[e]=!1}))}}});function V(e){let t=e??{},n=t.response?.data?.code??t.data?.code;return n==null?``:String(n)}function H(e){let t=e??{},n=t.response?.data?.message??t.data?.message;return typeof n==`string`&&n.trim()?n.trim():u(e)}function U(e,t){let n=e.length;for(let r=e.length-1;r>=0;r--){if(e[r].createdAt<=t.createdAt){n=r+1;break}n=r}e.splice(n,0,t)}var W=i(`workshop.chat`,()=>{let t=e({}),n=e({}),r=e({}),i=e({}),a=e({}),o=e(new Set),u=e({}),d=e({}),f=e(null);function p(e){return t.value[e]??=[]}function m(e,t){let n=t||e.channelId;if(!n||!e?.id)return!1;let r=p(n),i=r.findIndex(t=>t.id===e.id);return i>=0?(r[i]={...r[i],...e},!1):(U(r,e),!0)}function h(e){let t=e.channelId;if(!t||!e.deliveryId)return;let n=i.value[t]??={};n[e.deliveryId]={...n[e.deliveryId],...e}}function g(e){switch(e.type){case`chat.message`:m(e.payload,e.channelId||void 0);break;case`chat.delivery.status`:h(e.payload);break;case`chat.member`:{let t=e.payload,r=e.channelId;if(!r||!t?.userId)break;let i=n.value[r]??=[],a=i.findIndex(e=>e.userId===t.userId),o={userId:t.userId,displayName:t.displayName??null,role:t.role,status:t.status,joinedAt:t.joinedAt,leftAt:t.leftAt??null};a>=0?i[a]=o:i.push(o);break}case`chat.settings`:{let t=e.payload,n=t?.id||e.channelId;n&&(r.value[n]=t);break}}}function _(e,t,i){if(e){t?.channel&&(r.value[e]=t.channel),Array.isArray(t?.members)&&(n.value[e]=t.members.map(e=>({...e})));for(let n of t?.chatMessages??[])m(n,e);t?.permissions?a.value[e]=t.permissions:i!==void 0&&(a.value[e]=i??null),o.value.add(e)}}async function v(e,t={}){let n=s().token,r=t.query?`?${Object.entries(t.query).filter(([,e])=>e!==void 0&&e!==``).map(([e,t])=>`${e}=${encodeURIComponent(String(t))}`).join(`&`)}`:``,i=await l(`${e}${r}`,{method:t.method??`GET`,body:t.body,headers:n?{authorization:`Bearer ${n}`}:{}});if(i.code!==0||i.data==null)throw Error(i.message??`群聊请求失败`);return i.data}async function y(e,t={}){if(typeof window>`u`||!e)return!1;let n=t.limit??50;d.value[e]=!0;try{let r=await v(`/api/workshop/channels/${e}/chat/messages`,{query:{before:t.before,limit:n}});for(let t of r.messages??[])m(t,e);r.permissions&&(a.value[e]=r.permissions),o.value.add(e);let i=(r.messages?.length??0)>=n;return u.value[e]=i,i}finally{d.value[e]=!1}}async function b(e){if(!(typeof window>`u`||!e))try{let t=await v(`/api/workshop/channels/${e}/members`);n.value[e]=t.members??[],t.permissions&&(a.value[e]=t.permissions)}catch{}}async function x(e){if(typeof window>`u`||!e)return null;try{let t=await v(`/api/workshop/channels/${e}/chat/permissions`);return t.channel&&(r.value[e]=t.channel),a.value[e]=t.permissions,t.permissions}catch{return a.value[e]=null,null}}async function S(e){let t=await v(`/api/workshop/channels/${e.channelId}/chat/messages`,{method:`POST`,body:{text:e.text,mentions:e.mentions??[],replyToId:e.replyToId??null,clientMessageId:e.clientMessageId}});t.message&&m(t.message,e.channelId);for(let n of t.deliveries??[])h({deliveryId:n.deliveryId,chatMessageId:t.message?.id??``,channelId:e.channelId,targetAgentId:n.agentId,mailboxMessageId:null,status:n.status,updatedAt:c()});return t}async function C(e){let t=await v(`/api/workshop/channels/${e}/members/join`,{method:`POST`,body:{}});return t.permissions&&(a.value[e]=t.permissions),await Promise.all([b(e).catch(()=>{}),y(e).catch(()=>{})]),t.status}async function w(e){await v(`/api/workshop/channels/${e}/members/leave`,{method:`POST`,body:{}}),await x(e)}async function T(e,t){await v(`/api/workshop/channels/${e}/members/${encodeURIComponent(t)}`,{method:`DELETE`}),await b(e)}async function E(e,t){await v(`/api/workshop/channels/${e}/members/${encodeURIComponent(t)}/approve`,{method:`POST`,body:{}}),await b(e)}async function D(e,t){let n=r.value[e]?.version,i=await v(`/api/workshop/channels/${e}`,{method:`PATCH`,body:{...t,version:n}}),a=r.value[e];r.value[e]={id:i.id??e,name:i.name??a?.name??``,description:i.description??a?.description??``,visibility:i.visibility??a?.visibility??`private`,joinPolicy:i.joinPolicy??a?.joinPolicy??`owner_approve`,approvalPolicy:i.approvalPolicy??a?.approvalPolicy??`owner_only`,chatEnabled:i.chatEnabled??a?.chatEnabled??0,version:i.version??a?.version??0,legacy:i.ownerUserId===void 0?a?.legacy??!1:i.ownerUserId===null},await x(e)}function O(e){f.value=e}function k(){f.value=null}function A(e){let t=i.value[e];return t?Object.values(t):[]}function j(e,t){return A(e).filter(e=>e.chatMessageId===t)}function M(e){Reflect.deleteProperty(t.value,e),Reflect.deleteProperty(n.value,e),Reflect.deleteProperty(i.value,e),o.value.delete(e)}return{messages:t,members:n,settings:r,deliveries:i,permissions:a,loadedChannels:o,hasMoreHistory:u,loadingHistory:d,replyTarget:f,applyEnvelope:g,applySnapshot:_,loadHistory:y,loadMembers:b,loadPermissions:x,send:S,join:C,leave:w,removeMember:T,approveMember:E,updateSettings:D,setReplyTarget:O,clearReplyTarget:k,deliveriesOf:j,deliveriesOfChannel:A,clear:M}}),G=globalThis;G.__workshopWsHeartbeat??=null,G.__workshopWsHeartbeatUsers??=0,G.__workshopWsNotifHosts??=0,G.__workshopWsNotifSubscribed??=!1;function K(e,t){if(!e.channelId||typeof e.seq!=`number`||e.seq<=0||e.type===`channel.snapshot`)return!1;let n=t.get(e.channelId)??0;return e.seq<=n||(t.set(e.channelId,e.seq),!1)}function q(){let e=v(),i=s(),c=o(),l=G.__workshopWs??null,u=new Map;if(!l){let t=new y(n=>{let r=I(),i=B(),a=W(),o=d(),s=h();if(!K(n,u)){if(n.channelId&&typeof n.seq==`number`&&n.seq>0&&(e.pendingReplay&&=!1),n.type===`channel.snapshot`&&n.channelId){u.set(n.channelId,typeof n.seq==`number`?n.seq:0),e.pendingReplay=!1,r.ingest(n),i.applyEvent(n),i.applySnapshot(n.payload);let t=n.payload;a.applySnapshot(n.channelId,t.chat??null,t.permissions),r.loadHistory(n.channelId)}else r.ingest(n),i.applyEvent(n),typeof n.type==`string`&&n.type.startsWith(`chat.`)&&a.applyEnvelope(n);(n.type===`hitl.request`||n.type===`hitl.resolved`)&&o.applyEnvelope(n),(n.type===`notification.created`||n.type===`notification.read`)&&s.applyEnvelope(n),n.type===`notification.snapshot`&&(s.applyReplayCursor(n.payload?.nextCursor??null),s.endReplay()),typeof n.seq==`number`&&n.seq>0&&n.channelId&&(e.cursors[n.channelId]=n.seq,t.updateCursor(n.channelId,n.seq)),c.emit(n)}},(t,n)=>{e.state=t,e.retryCount=n,t===`open`&&h().backfill()},()=>{e.pendingReplay=!0},()=>{e.lastDataAt=Date.now();let t=h();G.__workshopWsNotifSubscribed&&p(),t.backfill()});l=t,G.__workshopWs=l}let f=e=>{let t=l?.ws;if(!(!t||t.readyState!==WebSocket.OPEN))try{t.send(JSON.stringify(e))}catch{}},p=()=>{let e=h(),t=e.cursor;e.beginReplay(),f(t?{type:`subNotifications`,cursor:t}:{type:`subNotifications`})};return r(()=>i.token,e=>{let t=h();l instanceof y&&(l.userToken=e),e?((G.__workshopWsNotifHosts??0)>0&&(G.__workshopWsNotifSubscribed=!0,p()),t.loadSnapshot()):(G.__workshopWsNotifSubscribed&&(G.__workshopWsNotifSubscribed=!1,f({type:`unsubNotifications`})),t.clear())},{immediate:!0}),n(()=>{G.__workshopWsHeartbeatUsers=(G.__workshopWsHeartbeatUsers??0)+1,!G.__workshopWsHeartbeat&&(G.__workshopWsHeartbeat=a(()=>{l?.ping(),l?.checkStale()},15e3))}),t(()=>{let e=(G.__workshopWsHeartbeatUsers??1)-1;G.__workshopWsHeartbeatUsers=e>0?e:0,e<=0&&G.__workshopWsHeartbeat&&(clearInterval(G.__workshopWsHeartbeat),G.__workshopWsHeartbeat=null)}),{subscribe:e=>{let t=I().lastSeq(e);l?.subscribe(e,t>0?t:void 0)},unsubscribe:e=>{l&&(l.unsubscribe(e),l.refCount(e)===0&&I().clear(e))},ensureConnected:()=>{l?.ensureConnected()},hostNotifications:()=>{let e=h();G.__workshopWsNotifHosts=(G.__workshopWsNotifHosts??0)+1,!G.__workshopWsNotifSubscribed&&i.token&&(G.__workshopWsNotifSubscribed=!0,p(),e.loadSnapshot());let t=!1;return()=>{if(t)return;t=!0;let e=(G.__workshopWsNotifHosts??1)-1;G.__workshopWsNotifHosts=e>0?e:0,e<=0&&(G.__workshopWsNotifSubscribed=!1,i.token&&f({type:`unsubNotifications`}))}},conn:e}}export{B as a,v as c,W as i,h as l,V as n,I as o,H as r,S as s,q as t};
@@ -1,2 +1,2 @@
1
- import{N as e,dt as t,g as n,mt as r,v as i}from"./CavpkQb0.js";import{Q as a,R as o,S as s,V as c,W as l,b as u,et as d,f,h as p,i as m,k as h,m as g,nt as _,p as v,rt as y,y as b}from"./ByMj6e7s.js";import{c as x,d as S,l as C}from"./goF_oZHF.js";import{n as w}from"./Cnrmlixo.js";import{t as T}from"./CiyTTgqr.js";import{t as ee}from"./D3gfSKKi2.js";import{t as te}from"./Do0dCE8C2.js";import{t as E}from"./BDNMzG2s2.js";import{t as D}from"./ClEbKcuS.js";import{t as O}from"./DIDbAMv5.js";import{t as k}from"./JgheoP3e.js";import{n as A}from"./BQOn0q6Y.js";import{n as j,t as M}from"./9j2J4k4w.js";import{t as N}from"./DD4J2Otc.js";import{t as P}from"./M58CVYnv.js";var F={class:`aw-page-head`},I={class:`sub`},L={class:`head-actions`},R=[`title`],z={class:`live-txt mono`},B=Object.assign(E(s({__name:`AnalysisPageHead`,props:{liveCount:{}},setup(e){return(t,n)=>(c(),p(`header`,F,[f(`div`,null,[n[0]||=f(`p`,{class:`aw-kicker`},` agentworkshop / data analysis `,-1),f(`h1`,null,r(t.$t(`analysis.title`)),1),f(`p`,I,r(t.$t(`analysis.sub`)),1)]),f(`div`,L,[f(`span`,{class:`live-dot`,title:t.$t(`analysis.liveHint`)},null,8,R),f(`span`,z,r(t.$t(`analysis.live`))+` `+r(e.liveCount),1)])]))}}),[[`__scopeId`,`data-v-a2134d8a`]]),{__name:`AnalysisPageHead`}),V={class:`filter-card`},H={class:`flt`},U={value:``},W=[`value`],G={class:`flt`},K={value:``},q=[`value`],J={class:`flt`},Y=[`value`],X={class:`flt flt-grow`},Z=[`placeholder`],Q=[`disabled`],ne=Object.assign(E(s({__name:`AnalysisFilterCard`,props:h({hasFilter:{type:Boolean},loading:{type:Boolean}},{lineId:{required:!0},lineIdModifiers:{},category:{required:!0},categoryModifiers:{},preset:{required:!0},presetModifiers:{},text:{required:!0},textModifiers:{}}),emits:h([`query`,`reset`],[`update:lineId`,`update:category`,`update:preset`,`update:text`]),setup(t){let n=a(t,`lineId`),i=a(t,`category`),o=a(t,`preset`),s=a(t,`text`),{lines:u}=P();return(a,d)=>(c(),p(`section`,V,[f(`label`,H,[f(`span`,null,r(a.$t(`analysis.fLine`)),1),y(f(`select`,{"onUpdate:modelValue":d[0]||=e=>n.value=e,class:`inp-sel`},[f(`option`,U,r(a.$t(`analysis.all`)),1),(c(!0),p(m,null,l(e(u),e=>(c(),p(`option`,{key:e.id,value:e.id},r(e.name),9,W))),128))],512),[[x,n.value]])]),f(`label`,G,[f(`span`,null,r(a.$t(`analysis.fCat`)),1),y(f(`select`,{"onUpdate:modelValue":d[1]||=e=>i.value=e,class:`inp-sel`},[f(`option`,K,r(a.$t(`analysis.all`)),1),(c(!0),p(m,null,l(e(M),e=>(c(),p(`option`,{key:e,value:e},r(a.$t(`analysis.cat.${e}`)),9,q))),128))],512),[[x,i.value]])]),f(`label`,J,[f(`span`,null,r(a.$t(`analysis.fWindow`)),1),y(f(`select`,{"onUpdate:modelValue":d[2]||=e=>o.value=e,class:`inp-sel`},[(c(!0),p(m,null,l(e(j),e=>(c(),p(`option`,{key:e.key,value:e.key},r(a.$t(`analysis.win.${e.key}`)),9,Y))),128))],512),[[x,o.value]])]),f(`label`,X,[f(`span`,null,r(a.$t(`analysis.fKeyword`)),1),y(f(`input`,{"onUpdate:modelValue":d[3]||=e=>s.value=e,class:`inp-sel`,type:`search`,placeholder:a.$t(`analysis.fKeywordPh`),onKeydown:d[4]||=S(e=>a.$emit(`query`),[`enter`])},null,40,Z),[[C,s.value]])]),f(`button`,{class:`pill-btn`,disabled:t.loading,onClick:d[5]||=e=>a.$emit(`query`)},[d[7]||=f(`span`,{class:`i-tabler-search`},null,-1),b(` `+r(a.$t(`analysis.query`)),1)],8,Q),t.hasFilter?(c(),p(`button`,{key:0,class:`mini-btn`,onClick:d[6]||=e=>a.$emit(`reset`)},r(a.$t(`analysis.reset`)),1)):g(``,!0)]))}}),[[`__scopeId`,`data-v-295d5291`]]),{__name:`AnalysisFilterCard`}),re={class:`table-card`},ie={class:`card-meta`},ae={class:`count`},oe={class:`hint`},se={key:0,class:`err`},ce={class:`ar-table`},le={class:`th-time`},ue={class:`th-line`},de={class:`th-recipe`},fe={class:`th-src`},pe={class:`th-detail`},me={key:0},he={colspan:`7`,class:`empty`},ge={key:1},_e={colspan:`7`,class:`empty`},ve={class:`mono dim`},ye={class:`scope-chip`},be={class:`title-cell`},xe={class:`mono dim`},Se={class:`summary`},Ce={class:`src`},we={key:0,class:`dim`},Te={class:`detail-cell`},Ee=[`onClick`],De={key:1,class:`dim`},Oe=[`title`,`onClick`],ke=[`title`],Ae={key:0,class:`ar-detail-row`},je={colspan:`7`},Me={class:`detail-grid`},Ne={key:0,class:`kv kv-full revised`},Pe={class:`k`},Fe={class:`kv`},Ie={class:`k`},Le={class:`mono`},Re={class:`kv`},ze={class:`k`},Be={class:`mono`},Ve={key:1,class:`kv kv-full`},He={class:`k`},Ue={class:`sec-title`},We={class:`conclusions`},Ge={class:`sec-title`},Ke={class:`report-body`},qe={class:`sec-title`},Je={class:`json-body`},Ye={class:`sec-title`},Xe={class:`json-body`},Ze=Object.assign(E(s({__name:`AnalysisTable`,props:h({rows:{},loading:{type:Boolean},error:{},admin:{type:Boolean}},{expandedId:{default:``},expandedIdModifiers:{}}),emits:h([`toggle`,`remove`,`edit`],[`update:expandedId`]),setup(n,{emit:i}){let o=i,s=a(n,`expandedId`),{lineName:u}=P(),{t:d}=w(),h=e=>D(e),y=e=>[`quality`,`oee`,`alarm`,`trend`,`optimization`,`general`].includes(e)?d(`analysis.cat.${e}`):e,x=e=>e.recipeId?`${e.recipeId}${e.recipeVersion?` v${e.recipeVersion}`:``}`:`—`,S=e=>!!(e.conclusions.length||e.report||Object.keys(e.metrics??{}).length||e.dataSources),C=e=>{try{return JSON.stringify(e.metrics??{},null,1)}catch{return``}},T=e=>{try{return JSON.stringify(e.context??{},null,1)}catch{return``}};return(i,a)=>{let d=ee;return c(),p(`section`,re,[f(`div`,ie,[f(`span`,ae,r(i.$t(`analysis.count`,{p0:n.rows.length})),1),f(`span`,oe,r(i.$t(`analysis.ledgerHint`)),1)]),n.error?(c(),p(`p`,se,r(n.error),1)):g(``,!0),f(`table`,ce,[f(`thead`,null,[f(`tr`,null,[f(`th`,le,r(i.$t(`analysis.thTime`)),1),f(`th`,ue,r(i.$t(`analysis.thLine`)),1),f(`th`,null,r(i.$t(`analysis.thTitle`)),1),f(`th`,de,r(i.$t(`analysis.thRecipe`)),1),f(`th`,null,r(i.$t(`analysis.thSummary`)),1),f(`th`,fe,r(i.$t(`analysis.thSource`)),1),f(`th`,pe,r(i.$t(`analysis.thDetail`)),1)])]),f(`tbody`,null,[n.loading&&n.rows.length===0?(c(),p(`tr`,me,[f(`td`,he,r(i.$t(`analysis.loading`)),1)])):n.rows.length===0?(c(),p(`tr`,ge,[f(`td`,_e,r(i.$t(`analysis.empty`)),1)])):g(``,!0),(c(!0),p(m,null,l(n.rows,w=>(c(),p(m,{key:w.id},[f(`tr`,null,[f(`td`,ve,r(h(w.createdAt)),1),f(`td`,null,[f(`span`,ye,r(w.lineName||e(u)(w.lineId)||w.lineId||`—`),1)]),f(`td`,be,[b(r(w.title)+` `,1),f(`small`,{class:t([`cat-chip`,w.category])},r(y(w.category)),3)]),f(`td`,xe,r(x(w)),1),f(`td`,Se,r(w.summary||`—`),1),f(`td`,Ce,[b(r(w.actorName||w.actor||`—`)+` `,1),w.channelName?(c(),p(`small`,we,`@`+r(w.channelName),1)):g(``,!0)]),f(`td`,Te,[S(w)?(c(),p(`button`,{key:0,class:`mini-btn`,onClick:e=>o(`toggle`,w)},r(s.value===w.id?i.$t(`analysis.fold`):i.$t(`analysis.expand`)),9,Ee)):(c(),p(`span`,De,r(i.$t(`analysis.noDetail`)),1)),w.canEdit?(c(),p(`button`,{key:2,class:`mini-btn`,title:i.$t(`analysis.editTitle`),onClick:e=>o(`edit`,w)},[...a[0]||=[f(`span`,{class:`i-tabler-pencil`},null,-1)]],8,Oe)):g(``,!0),n.admin?(c(),v(d,{key:3,title:i.$t(`analysis.removeConfirm`,{p0:w.title}),"ok-text":i.$t(`analysis.remove`),"cancel-text":i.$t(`analysis.cancel`),placement:`left`,onConfirm:e=>o(`remove`,w)},{default:_(()=>[f(`button`,{class:`mini-btn danger`,title:i.$t(`analysis.remove`)},[...a[1]||=[f(`span`,{class:`i-tabler-trash`},null,-1)]],8,ke)]),_:1},8,[`title`,`ok-text`,`cancel-text`,`onConfirm`])):g(``,!0)])]),s.value===w.id?(c(),p(`tr`,Ae,[f(`td`,je,[f(`div`,Me,[w.updatedAt?(c(),p(`div`,Ne,[f(`span`,Pe,r(i.$t(`analysis.kRevised`)),1),f(`span`,null,r(h(w.updatedAt))+` · `+r(w.updatedByName||w.updatedBy),1)])):g(``,!0),f(`div`,Fe,[f(`span`,Ie,r(i.$t(`analysis.kId`)),1),f(`span`,Le,r(w.id),1)]),f(`div`,Re,[f(`span`,ze,r(i.$t(`analysis.kWindow`)),1),f(`span`,Be,r(w.windowFrom?h(w.windowFrom):`—`)+` ~ `+r(w.windowTo?h(w.windowTo):`—`),1)]),w.dataSources?(c(),p(`div`,Ve,[f(`span`,He,r(i.$t(`analysis.kSources`)),1),f(`span`,null,r(w.dataSources),1)])):g(``,!0),w.conclusions.length?(c(),p(m,{key:2},[f(`div`,Ue,r(i.$t(`analysis.kConclusions`)),1),f(`ol`,We,[(c(!0),p(m,null,l(w.conclusions,(e,t)=>(c(),p(`li`,{key:t},r(e),1))),128))])],64)):g(``,!0),w.report?(c(),p(m,{key:3},[f(`div`,Ge,r(i.$t(`analysis.kReport`)),1),f(`pre`,Ke,r(w.report),1)],64)):g(``,!0),Object.keys(w.metrics??{}).length?(c(),p(m,{key:4},[f(`div`,qe,r(i.$t(`analysis.kMetrics`)),1),f(`pre`,Je,r(C(w)),1)],64)):g(``,!0),Object.keys(w.context??{}).length?(c(),p(m,{key:5},[f(`div`,Ye,r(i.$t(`analysis.kContext`)),1),f(`pre`,Xe,r(T(w)),1)],64)):g(``,!0)])])])):g(``,!0)],64))),128))])])])}}}),[[`__scopeId`,`data-v-fb94fb03`]]),{__name:`AnalysisTable`}),Qe={class:`edit-form`},$e={class:`fld`},et={class:`fld`},tt={class:`fld-row`},$={class:`fld`},nt=[`value`],rt={class:`fld`},it={class:`fld`},at={class:`fld-row`},ot={class:`fld`},st={class:`fld`},ct={class:`fld`},lt={class:`fld`},ut={class:`fld`},dt={class:`fld`},ft=Object.assign(E(s({__name:`AnalysisEditModal`,props:{report:{},saving:{type:Boolean}},emits:[`close`,`save`],setup(t,{emit:i}){let a=t,o=i,s=n({title:``,summary:``,category:``,recipeId:``,recipeVersion:``,windowFrom:``,windowTo:``,dataSources:``,conclusions:``,report:``,metrics:``});d(()=>a.report,e=>{e&&(s.title=e.title,s.summary=e.summary,s.category=e.category,s.recipeId=e.recipeId,s.recipeVersion=e.recipeVersion,s.windowFrom=e.windowFrom??``,s.windowTo=e.windowTo??``,s.dataSources=e.dataSources,s.conclusions=(e.conclusions??[]).join(`
1
+ import{N as e,dt as t,g as n,mt as r,v as i}from"./CavpkQb0.js";import{Q as a,R as o,S as s,V as c,W as l,b as u,et as d,f,h as p,i as m,k as h,m as g,nt as _,p as v,rt as y,y as b}from"./ByMj6e7s.js";import{c as x,d as S,l as C}from"./goF_oZHF.js";import{n as w}from"./Cnrmlixo.js";import{t as T}from"./CiyTTgqr.js";import{t as ee}from"./D3gfSKKi2.js";import{t as te}from"./Do0dCE8C2.js";import{t as E}from"./BDNMzG2s2.js";import{t as D}from"./ClEbKcuS.js";import{t as O}from"./DG0esyZR.js";import{t as k}from"./JgheoP3e.js";import{n as A}from"./BQOn0q6Y.js";import{n as j,t as M}from"./9j2J4k4w.js";import{t as N}from"./DD4J2Otc.js";import{t as P}from"./M58CVYnv.js";var F={class:`aw-page-head`},I={class:`sub`},L={class:`head-actions`},R=[`title`],z={class:`live-txt mono`},B=Object.assign(E(s({__name:`AnalysisPageHead`,props:{liveCount:{}},setup(e){return(t,n)=>(c(),p(`header`,F,[f(`div`,null,[n[0]||=f(`p`,{class:`aw-kicker`},` agentworkshop / data analysis `,-1),f(`h1`,null,r(t.$t(`analysis.title`)),1),f(`p`,I,r(t.$t(`analysis.sub`)),1)]),f(`div`,L,[f(`span`,{class:`live-dot`,title:t.$t(`analysis.liveHint`)},null,8,R),f(`span`,z,r(t.$t(`analysis.live`))+` `+r(e.liveCount),1)])]))}}),[[`__scopeId`,`data-v-a2134d8a`]]),{__name:`AnalysisPageHead`}),V={class:`filter-card`},H={class:`flt`},U={value:``},W=[`value`],G={class:`flt`},K={value:``},q=[`value`],J={class:`flt`},Y=[`value`],X={class:`flt flt-grow`},Z=[`placeholder`],Q=[`disabled`],ne=Object.assign(E(s({__name:`AnalysisFilterCard`,props:h({hasFilter:{type:Boolean},loading:{type:Boolean}},{lineId:{required:!0},lineIdModifiers:{},category:{required:!0},categoryModifiers:{},preset:{required:!0},presetModifiers:{},text:{required:!0},textModifiers:{}}),emits:h([`query`,`reset`],[`update:lineId`,`update:category`,`update:preset`,`update:text`]),setup(t){let n=a(t,`lineId`),i=a(t,`category`),o=a(t,`preset`),s=a(t,`text`),{lines:u}=P();return(a,d)=>(c(),p(`section`,V,[f(`label`,H,[f(`span`,null,r(a.$t(`analysis.fLine`)),1),y(f(`select`,{"onUpdate:modelValue":d[0]||=e=>n.value=e,class:`inp-sel`},[f(`option`,U,r(a.$t(`analysis.all`)),1),(c(!0),p(m,null,l(e(u),e=>(c(),p(`option`,{key:e.id,value:e.id},r(e.name),9,W))),128))],512),[[x,n.value]])]),f(`label`,G,[f(`span`,null,r(a.$t(`analysis.fCat`)),1),y(f(`select`,{"onUpdate:modelValue":d[1]||=e=>i.value=e,class:`inp-sel`},[f(`option`,K,r(a.$t(`analysis.all`)),1),(c(!0),p(m,null,l(e(M),e=>(c(),p(`option`,{key:e,value:e},r(a.$t(`analysis.cat.${e}`)),9,q))),128))],512),[[x,i.value]])]),f(`label`,J,[f(`span`,null,r(a.$t(`analysis.fWindow`)),1),y(f(`select`,{"onUpdate:modelValue":d[2]||=e=>o.value=e,class:`inp-sel`},[(c(!0),p(m,null,l(e(j),e=>(c(),p(`option`,{key:e.key,value:e.key},r(a.$t(`analysis.win.${e.key}`)),9,Y))),128))],512),[[x,o.value]])]),f(`label`,X,[f(`span`,null,r(a.$t(`analysis.fKeyword`)),1),y(f(`input`,{"onUpdate:modelValue":d[3]||=e=>s.value=e,class:`inp-sel`,type:`search`,placeholder:a.$t(`analysis.fKeywordPh`),onKeydown:d[4]||=S(e=>a.$emit(`query`),[`enter`])},null,40,Z),[[C,s.value]])]),f(`button`,{class:`pill-btn`,disabled:t.loading,onClick:d[5]||=e=>a.$emit(`query`)},[d[7]||=f(`span`,{class:`i-tabler-search`},null,-1),b(` `+r(a.$t(`analysis.query`)),1)],8,Q),t.hasFilter?(c(),p(`button`,{key:0,class:`mini-btn`,onClick:d[6]||=e=>a.$emit(`reset`)},r(a.$t(`analysis.reset`)),1)):g(``,!0)]))}}),[[`__scopeId`,`data-v-295d5291`]]),{__name:`AnalysisFilterCard`}),re={class:`table-card`},ie={class:`card-meta`},ae={class:`count`},oe={class:`hint`},se={key:0,class:`err`},ce={class:`ar-table`},le={class:`th-time`},ue={class:`th-line`},de={class:`th-recipe`},fe={class:`th-src`},pe={class:`th-detail`},me={key:0},he={colspan:`7`,class:`empty`},ge={key:1},_e={colspan:`7`,class:`empty`},ve={class:`mono dim`},ye={class:`scope-chip`},be={class:`title-cell`},xe={class:`mono dim`},Se={class:`summary`},Ce={class:`src`},we={key:0,class:`dim`},Te={class:`detail-cell`},Ee=[`onClick`],De={key:1,class:`dim`},Oe=[`title`,`onClick`],ke=[`title`],Ae={key:0,class:`ar-detail-row`},je={colspan:`7`},Me={class:`detail-grid`},Ne={key:0,class:`kv kv-full revised`},Pe={class:`k`},Fe={class:`kv`},Ie={class:`k`},Le={class:`mono`},Re={class:`kv`},ze={class:`k`},Be={class:`mono`},Ve={key:1,class:`kv kv-full`},He={class:`k`},Ue={class:`sec-title`},We={class:`conclusions`},Ge={class:`sec-title`},Ke={class:`report-body`},qe={class:`sec-title`},Je={class:`json-body`},Ye={class:`sec-title`},Xe={class:`json-body`},Ze=Object.assign(E(s({__name:`AnalysisTable`,props:h({rows:{},loading:{type:Boolean},error:{},admin:{type:Boolean}},{expandedId:{default:``},expandedIdModifiers:{}}),emits:h([`toggle`,`remove`,`edit`],[`update:expandedId`]),setup(n,{emit:i}){let o=i,s=a(n,`expandedId`),{lineName:u}=P(),{t:d}=w(),h=e=>D(e),y=e=>[`quality`,`oee`,`alarm`,`trend`,`optimization`,`general`].includes(e)?d(`analysis.cat.${e}`):e,x=e=>e.recipeId?`${e.recipeId}${e.recipeVersion?` v${e.recipeVersion}`:``}`:`—`,S=e=>!!(e.conclusions.length||e.report||Object.keys(e.metrics??{}).length||e.dataSources),C=e=>{try{return JSON.stringify(e.metrics??{},null,1)}catch{return``}},T=e=>{try{return JSON.stringify(e.context??{},null,1)}catch{return``}};return(i,a)=>{let d=ee;return c(),p(`section`,re,[f(`div`,ie,[f(`span`,ae,r(i.$t(`analysis.count`,{p0:n.rows.length})),1),f(`span`,oe,r(i.$t(`analysis.ledgerHint`)),1)]),n.error?(c(),p(`p`,se,r(n.error),1)):g(``,!0),f(`table`,ce,[f(`thead`,null,[f(`tr`,null,[f(`th`,le,r(i.$t(`analysis.thTime`)),1),f(`th`,ue,r(i.$t(`analysis.thLine`)),1),f(`th`,null,r(i.$t(`analysis.thTitle`)),1),f(`th`,de,r(i.$t(`analysis.thRecipe`)),1),f(`th`,null,r(i.$t(`analysis.thSummary`)),1),f(`th`,fe,r(i.$t(`analysis.thSource`)),1),f(`th`,pe,r(i.$t(`analysis.thDetail`)),1)])]),f(`tbody`,null,[n.loading&&n.rows.length===0?(c(),p(`tr`,me,[f(`td`,he,r(i.$t(`analysis.loading`)),1)])):n.rows.length===0?(c(),p(`tr`,ge,[f(`td`,_e,r(i.$t(`analysis.empty`)),1)])):g(``,!0),(c(!0),p(m,null,l(n.rows,w=>(c(),p(m,{key:w.id},[f(`tr`,null,[f(`td`,ve,r(h(w.createdAt)),1),f(`td`,null,[f(`span`,ye,r(w.lineName||e(u)(w.lineId)||w.lineId||`—`),1)]),f(`td`,be,[b(r(w.title)+` `,1),f(`small`,{class:t([`cat-chip`,w.category])},r(y(w.category)),3)]),f(`td`,xe,r(x(w)),1),f(`td`,Se,r(w.summary||`—`),1),f(`td`,Ce,[b(r(w.actorName||w.actor||`—`)+` `,1),w.channelName?(c(),p(`small`,we,`@`+r(w.channelName),1)):g(``,!0)]),f(`td`,Te,[S(w)?(c(),p(`button`,{key:0,class:`mini-btn`,onClick:e=>o(`toggle`,w)},r(s.value===w.id?i.$t(`analysis.fold`):i.$t(`analysis.expand`)),9,Ee)):(c(),p(`span`,De,r(i.$t(`analysis.noDetail`)),1)),w.canEdit?(c(),p(`button`,{key:2,class:`mini-btn`,title:i.$t(`analysis.editTitle`),onClick:e=>o(`edit`,w)},[...a[0]||=[f(`span`,{class:`i-tabler-pencil`},null,-1)]],8,Oe)):g(``,!0),n.admin?(c(),v(d,{key:3,title:i.$t(`analysis.removeConfirm`,{p0:w.title}),"ok-text":i.$t(`analysis.remove`),"cancel-text":i.$t(`analysis.cancel`),placement:`left`,onConfirm:e=>o(`remove`,w)},{default:_(()=>[f(`button`,{class:`mini-btn danger`,title:i.$t(`analysis.remove`)},[...a[1]||=[f(`span`,{class:`i-tabler-trash`},null,-1)]],8,ke)]),_:1},8,[`title`,`ok-text`,`cancel-text`,`onConfirm`])):g(``,!0)])]),s.value===w.id?(c(),p(`tr`,Ae,[f(`td`,je,[f(`div`,Me,[w.updatedAt?(c(),p(`div`,Ne,[f(`span`,Pe,r(i.$t(`analysis.kRevised`)),1),f(`span`,null,r(h(w.updatedAt))+` · `+r(w.updatedByName||w.updatedBy),1)])):g(``,!0),f(`div`,Fe,[f(`span`,Ie,r(i.$t(`analysis.kId`)),1),f(`span`,Le,r(w.id),1)]),f(`div`,Re,[f(`span`,ze,r(i.$t(`analysis.kWindow`)),1),f(`span`,Be,r(w.windowFrom?h(w.windowFrom):`—`)+` ~ `+r(w.windowTo?h(w.windowTo):`—`),1)]),w.dataSources?(c(),p(`div`,Ve,[f(`span`,He,r(i.$t(`analysis.kSources`)),1),f(`span`,null,r(w.dataSources),1)])):g(``,!0),w.conclusions.length?(c(),p(m,{key:2},[f(`div`,Ue,r(i.$t(`analysis.kConclusions`)),1),f(`ol`,We,[(c(!0),p(m,null,l(w.conclusions,(e,t)=>(c(),p(`li`,{key:t},r(e),1))),128))])],64)):g(``,!0),w.report?(c(),p(m,{key:3},[f(`div`,Ge,r(i.$t(`analysis.kReport`)),1),f(`pre`,Ke,r(w.report),1)],64)):g(``,!0),Object.keys(w.metrics??{}).length?(c(),p(m,{key:4},[f(`div`,qe,r(i.$t(`analysis.kMetrics`)),1),f(`pre`,Je,r(C(w)),1)],64)):g(``,!0),Object.keys(w.context??{}).length?(c(),p(m,{key:5},[f(`div`,Ye,r(i.$t(`analysis.kContext`)),1),f(`pre`,Xe,r(T(w)),1)],64)):g(``,!0)])])])):g(``,!0)],64))),128))])])])}}}),[[`__scopeId`,`data-v-fb94fb03`]]),{__name:`AnalysisTable`}),Qe={class:`edit-form`},$e={class:`fld`},et={class:`fld`},tt={class:`fld-row`},$={class:`fld`},nt=[`value`],rt={class:`fld`},it={class:`fld`},at={class:`fld-row`},ot={class:`fld`},st={class:`fld`},ct={class:`fld`},lt={class:`fld`},ut={class:`fld`},dt={class:`fld`},ft=Object.assign(E(s({__name:`AnalysisEditModal`,props:{report:{},saving:{type:Boolean}},emits:[`close`,`save`],setup(t,{emit:i}){let a=t,o=i,s=n({title:``,summary:``,category:``,recipeId:``,recipeVersion:``,windowFrom:``,windowTo:``,dataSources:``,conclusions:``,report:``,metrics:``});d(()=>a.report,e=>{e&&(s.title=e.title,s.summary=e.summary,s.category=e.category,s.recipeId=e.recipeId,s.recipeVersion=e.recipeVersion,s.windowFrom=e.windowFrom??``,s.windowTo=e.windowTo??``,s.dataSources=e.dataSources,s.conclusions=(e.conclusions??[]).join(`
2
2
  `),s.report=e.report??``,s.metrics=Object.keys(e.metrics??{}).length?JSON.stringify(e.metrics,null,1):``)},{immediate:!0});function u(){let e;if(s.metrics.trim())try{e=JSON.parse(s.metrics)}catch{e=s.metrics}o(`save`,{title:s.title,summary:s.summary,category:s.category||`general`,recipe_id:s.recipeId.trim(),recipe_version:s.recipeVersion.trim(),window_from:s.windowFrom.trim(),window_to:s.windowTo.trim(),data_sources:s.dataSources,conclusions:s.conclusions,report:s.report,...e===void 0?{}:{metrics:e}})}return(n,i)=>{let a=T;return c(),v(a,{open:!!t.report,title:n.$t(`analysis.editTitle`),"confirm-loading":t.saving,"ok-text":n.$t(`analysis.save`),"cancel-text":n.$t(`analysis.cancel`),width:`720px`,onOk:u,onCancel:i[11]||=e=>o(`close`)},{default:_(()=>[f(`div`,Qe,[f(`label`,$e,[f(`span`,null,r(n.$t(`analysis.thTitle`)),1),y(f(`input`,{"onUpdate:modelValue":i[0]||=e=>s.title=e,class:`inp-sel`},null,512),[[C,s.title]])]),f(`label`,et,[f(`span`,null,r(n.$t(`analysis.thSummary`)),1),y(f(`input`,{"onUpdate:modelValue":i[1]||=e=>s.summary=e,class:`inp-sel`},null,512),[[C,s.summary]])]),f(`div`,tt,[f(`label`,$,[f(`span`,null,r(n.$t(`analysis.fCat`)),1),y(f(`select`,{"onUpdate:modelValue":i[2]||=e=>s.category=e,class:`inp-sel`},[(c(!0),p(m,null,l(e(M),e=>(c(),p(`option`,{key:e,value:e},r(n.$t(`analysis.cat.${e}`)),9,nt))),128))],512),[[x,s.category]])]),f(`label`,rt,[f(`span`,null,r(n.$t(`analysis.kRecipe`)),1),y(f(`input`,{"onUpdate:modelValue":i[3]||=e=>s.recipeId=e,class:`inp-sel`,placeholder:`rcp-…`},null,512),[[C,s.recipeId]])]),f(`label`,it,[f(`span`,null,r(n.$t(`analysis.kVersion`)),1),y(f(`input`,{"onUpdate:modelValue":i[4]||=e=>s.recipeVersion=e,class:`inp-sel`},null,512),[[C,s.recipeVersion]])])]),f(`div`,at,[f(`label`,ot,[f(`span`,null,r(n.$t(`analysis.kWindowFrom`)),1),y(f(`input`,{"onUpdate:modelValue":i[5]||=e=>s.windowFrom=e,class:`inp-sel`,placeholder:`ISO 8601`},null,512),[[C,s.windowFrom]])]),f(`label`,st,[f(`span`,null,r(n.$t(`analysis.kWindowTo`)),1),y(f(`input`,{"onUpdate:modelValue":i[6]||=e=>s.windowTo=e,class:`inp-sel`,placeholder:`ISO 8601`},null,512),[[C,s.windowTo]])])]),f(`label`,ct,[f(`span`,null,r(n.$t(`analysis.kSources`)),1),y(f(`input`,{"onUpdate:modelValue":i[7]||=e=>s.dataSources=e,class:`inp-sel`},null,512),[[C,s.dataSources]])]),f(`label`,lt,[f(`span`,null,r(n.$t(`analysis.kConclusions`))+`(`+r(n.$t(`analysis.conclusionsHint`))+`)`,1),y(f(`textarea`,{"onUpdate:modelValue":i[8]||=e=>s.conclusions=e,class:`inp-sel`,rows:`4`},null,512),[[C,s.conclusions]])]),f(`label`,ut,[f(`span`,null,r(n.$t(`analysis.kReport`)),1),y(f(`textarea`,{"onUpdate:modelValue":i[9]||=e=>s.report=e,class:`inp-sel mono`,rows:`6`},null,512),[[C,s.report]])]),f(`label`,dt,[f(`span`,null,r(n.$t(`analysis.kMetrics`))+`(JSON)`,1),y(f(`textarea`,{"onUpdate:modelValue":i[10]||=e=>s.metrics=e,class:`inp-sel mono`,rows:`4`},null,512),[[C,s.metrics]])])])]),_:1},8,[`open`,`title`,`confirm-loading`,`ok-text`,`cancel-text`])}}}),[[`__scopeId`,`data-v-518db9b8`]]),{__name:`AnalysisEditModal`}),pt={class:`page`},mt=E(s({name:`AnalysisPage`,setup(t){let n=O(),r=N(),a=te(),s=i(``);function l(e){s.value=s.value===e.id?``:e.id}let d=i(!1);async function f(e){if(!d.value){d.value=!0;try{await A({base:`/api/workshop/analysis`,path:`/${e.id}`,init:{method:`DELETE`}}),s.value===e.id&&(s.value=``),await r.doQuery()}catch(e){r.error.value=k(e)}finally{d.value=!1}}}let m=i(null),h=i(!1);function g(e){m.value=e}async function _(e){if(!(!m.value||h.value)){h.value=!0;try{await A({base:`/api/workshop/analysis`,path:`/${m.value.id}`,init:{method:`PATCH`,body:JSON.stringify(e)}}),m.value=null,await r.doQuery()}catch(e){r.error.value=k(e)}finally{h.value=!1}}}return o(()=>{n.ensureConnected(),r.doQuery()}),(t,n)=>(c(),p(`div`,pt,[u(B,{"live-count":e(r).liveCount.value},null,8,[`live-count`]),u(ne,{"line-id":e(r).q.lineId,"onUpdate:lineId":n[0]||=t=>e(r).q.lineId=t,category:e(r).q.category,"onUpdate:category":n[1]||=t=>e(r).q.category=t,preset:e(r).q.preset,"onUpdate:preset":n[2]||=t=>e(r).q.preset=t,text:e(r).q.text,"onUpdate:text":n[3]||=t=>e(r).q.text=t,"has-filter":e(r).hasFilter.value,loading:e(r).loading.value,onQuery:e(r).doQuery,onReset:e(r).resetFilters},null,8,[`line-id`,`category`,`preset`,`text`,`has-filter`,`loading`,`onQuery`,`onReset`]),u(Ze,{"expanded-id":s.value,"onUpdate:expandedId":n[4]||=e=>s.value=e,rows:e(r).rows.value,loading:e(r).loading.value,error:e(r).error.value,admin:e(a).isAdmin,onToggle:l,onRemove:f,onEdit:g},null,8,[`expanded-id`,`rows`,`loading`,`error`,`admin`]),u(ft,{report:m.value,saving:h.value,onClose:n[5]||=e=>m.value=null,onSave:_},null,8,[`report`,`saving`])]))}}),[[`__scopeId`,`data-v-5c9a507c`]]);export{mt as default};
@@ -1 +1 @@
1
- import{N as e,dt as t,ft as n,mt as r,u as i}from"./CavpkQb0.js";import{P as a,Q as o,R as s,S as c,V as l,W as u,b as d,d as f,et as p,f as m,h,i as g,k as _,m as v,nt as y,p as b,rt as x,y as S}from"./ByMj6e7s.js";import{c as C,f as w,l as T,s as E}from"./goF_oZHF.js";import{n as D}from"./DkpmSnHX.js";import{t as O}from"./CxLxiOGV.js";import{n as k}from"./Cnrmlixo.js";import{i as A}from"./CiyTTgqr.js";import{t as j}from"./DzBbYWrw2.js";import{t as M}from"./BDNMzG2s2.js";import{t as ee}from"./DIDbAMv5.js";import{t as N}from"./JgheoP3e.js";import{t as te}from"./CNs_Ozdc.js";import{t as P}from"./B8cnjDtt.js";import{a as F,t as ne}from"./lyJsJl_G.js";import{t as I}from"./Dmgqz2np.js";import{t as re}from"./DzwIZ81f2.js";import{t as L}from"./CnF6dXcZ2.js";import{n as ie,r as R,t as ae}from"./BhllzW3K2.js";import{t as z}from"./csitHKnE2.js";import{t as oe}from"./BSG-4Ecg2.js";import{n as se,t as B}from"./Bd85nb9X2.js";import{t as V}from"./ChN5v-i22.js";var H={class:`txt`},U={class:`mono`},W={key:1,class:`infra-banner`},G={class:`txt`},ce=Object.assign(c({__name:`DaqLineBanner`,props:{loaded:{type:Boolean},filteredLine:{},filteredLineState:{},anyLineActive:{type:Boolean}},setup(e){return(n,i)=>{let a=O;return e.loaded&&e.filteredLine&&e.filteredLineState?(l(),h(`div`,{key:0,class:t([`infra-banner`,{good:e.filteredLineState.active}])},[m(`span`,{class:t(e.filteredLineState.active?`i-tabler-circle-check`:`i-tabler-info-circle`)},null,2),m(`span`,H,[e.filteredLineState.active?(l(),h(g,{key:0},[S(r(n.$t(`daq.k3ktxbr085`))+r(e.filteredLine.name)+`」`+r(n.$t(`daq.k15lvw0o105`)),1),m(`b`,null,r(e.filteredLineState.productName),1),i[0]||=S(` · Recipe:`,-1),m(`b`,null,r(e.filteredLineState.recipeName),1),m(`small`,U,r(n.$t(`daq.k400lb086`))+` `+r(e.filteredLineState.runId?.slice(0,8))+` · `+r(n.$t(`daq.k3zkt2106`))+` `+r(e.filteredLineState.startedAt?.slice(11,19))+` `+r(n.$t(`daq.k69vag8108`))+` `+r(e.filteredLineState.taggedSamples)+` `+r(n.$t(`daq.k4118o092`)),1)],64)):(l(),h(g,{key:1},[S(r(n.$t(`daq.k3ktxbr085`))+r(e.filteredLine.name)+`」`+r(n.$t(`daq.k12uge2o107`)),1)],64))]),d(a,{class:`pill-btn`,to:`/dcw/${e.filteredLine.id}`},{default:y(()=>[S(r(e.filteredLineState.active?n.$t(`daq.k1ukoy0v093`):n.$t(`daq.k1cg78i8109`)),1)]),_:1},8,[`to`])],2)):e.loaded&&!e.anyLineActive?(l(),h(`div`,W,[i[1]||=m(`span`,{class:`i-tabler-info-circle`},null,-1),m(`span`,G,[S(r(n.$t(`daq.k19onw5w013`)),1),d(a,{to:`/dcw`},{default:y(()=>[S(r(n.$t(`daq.k1b2tk5c014`)),1)]),_:1}),S(r(n.$t(`daq.k1u9wnlg015`)),1)])])):v(``,!0)}}}),{__name:`DaqLineBanner`}),K={key:0,class:`infra-banner`},q={class:`txt`},le=[`disabled`],ue=Object.assign(c({__name:`DaqInfraBanner`,props:{infra:{},reconnecting:{type:Boolean}},emits:[`reconnect`],setup(e,{emit:t}){let n=t;return(t,i)=>e.infra?.degraded?(l(),h(`div`,K,[i[1]||=m(`span`,{class:`i-tabler-alert-triangle`},null,-1),m(`span`,q,r(e.infra.warning),1),m(`button`,{class:`pill-btn`,disabled:e.reconnecting,onClick:i[0]||=e=>n(`reconnect`)},r(e.reconnecting?t.$t(`daq.k1ld43ur094`):t.$t(`daq.kzg9805110`)),9,le)])):v(``,!0)}}),{__name:`DaqInfraBanner`}),de={key:0,class:`alarm-bar`},fe={class:`bar-label`},pe={class:`mono`},J={class:`alarm-scroll`},Y=[`title`],me={class:`mono dim`},he={class:`mono`},ge={key:0,class:`esc mono`},X=[`onClick`],_e=Object.assign(c({__name:`DaqAlarmBar`,props:{alarms:{}},emits:[`ack`],setup(e,{emit:t}){let n=t;return(t,i)=>e.alarms.length?(l(),h(`div`,de,[m(`span`,fe,[i[0]||=m(`span`,{class:`i-tabler-bell-ringing bell`},null,-1),S(` `+r(t.$t(`daq.k1alarm141`))+` `,1),m(`b`,pe,r(e.alarms.length),1)]),m(`div`,J,[(l(!0),h(g,null,u(e.alarms,e=>(l(),h(`span`,{key:e.id,class:`alarm-item`,title:t.$t(`daq.k1esc143`,{p0:e.escalation})},[m(`b`,null,r(e.nodeName),1),m(`span`,me,r(e.metric),1),m(`span`,he,r(e.value)+` `+r(e.rule===`lt-min`?`<`:`>`)+` `+r(e.threshold),1),e.escalation>0?(l(),h(`small`,ge,`+`+r(e.escalation),1)):v(``,!0),m(`button`,{class:`mini-btn ack`,onClick:t=>n(`ack`,e.id)},r(t.$t(`daq.k1ack142`)),9,X)],8,Y))),128))])])):v(``,!0)}}),{__name:`DaqAlarmBar`}),Z={class:`aw-tile ctrl-card`},ve={class:`ctrl-row`},Q={class:`ctrl-left`},ye=[`title`],be={class:`cycle mono`},xe=[`title`],Se={class:`ctrl-right`},Ce={class:`ctrl-metrics mono`},we=[`title`],Te=[`title`],Ee=[`title`],De=[`title`],Oe={class:`line-strip`},ke={class:`strip-label`},Ae={class:`mono`},je={class:`strip-scroll`},Me={key:0,class:`lp-run`},Ne={key:1,class:`lp-idle`},Pe={class:`lp-idle`},Fe=Object.assign(c({__name:`DaqControlCard`,props:_({meta:{},lines:{},lineStateOf:{type:Function}},{controller:{required:!0},controllerModifiers:{}}),emits:_([`action`,`config`,`open-add`,`open-templates`],[`update:controller`]),setup(e,{emit:i}){let a=i,s=o(e,`controller`);return(i,o)=>{let c=O;return l(),h(`section`,Z,[m(`div`,ve,[m(`div`,Q,[m(`button`,{class:t([`aw-pill`,{running:s.value.running}]),title:i.$t(`daq.k1snap145`),onClick:o[0]||=e=>a(`action`,s.value.running?`pause`:`resume`)},[m(`span`,{class:t(s.value.running?`i-tabler-player-pause`:`i-tabler-player-play`)},null,2),S(` `+r(s.value.running?i.$t(`daq.kpui00095`):i.$t(`daq.knxpdpt111`)),1)],10,ye),m(`label`,be,[S(r(i.$t(`daq.k1ifahxj016`))+` `,1),x(m(`input`,{"onUpdate:modelValue":o[1]||=e=>s.value.defaultIntervalMs=e,type:`number`,min:`200`,max:`60000`,step:`100`,onChange:o[2]||=e=>a(`config`,s.value.defaultIntervalMs,s.value.defaultPublishIntervalMs)},null,544),[[T,s.value.defaultIntervalMs,void 0,{number:!0}]]),o[7]||=S(`ms `,-1)]),m(`label`,{class:`cycle mono`,title:i.$t(`daq.k1e8lcoo001`)},[S(r(i.$t(`daq.k1if98n0017`))+` `,1),x(m(`input`,{"onUpdate:modelValue":o[3]||=e=>s.value.defaultPublishIntervalMs=e,type:`number`,min:`0`,max:`60000`,step:`100`,onChange:o[4]||=e=>a(`config`,s.value.defaultIntervalMs,s.value.defaultPublishIntervalMs)},null,544),[[T,s.value.defaultPublishIntervalMs,void 0,{number:!0}]]),o[8]||=S(`ms `,-1)],8,xe)]),m(`div`,Se,[m(`span`,Ce,[m(`span`,null,r(i.$t(`daq.k45uio067`))+` `+r(s.value.nodesOnline)+`/`+r(s.value.nodesTotal),1),o[9]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{title:i.$t(`daq.k1yztsu4002`)},r(i.$t(`daq.k3xagp087`))+` `+r(e.meta.produced),9,we),o[10]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{title:i.$t(`daq.ko09iha003`)},r(i.$t(`daq.k427eu088`))+` `+r(e.meta.consumed),9,Te),o[11]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{class:t({warn:(e.meta.dropped??0)>0}),title:i.$t(`daq.k1droptip135`)},r(i.$t(`daq.k3w8go089`))+` `+r(e.meta.dropped),11,Ee),o[12]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{title:i.$t(`daq.kj1jbmw004`)},r(i.$t(`daq.k3wusd090`))+` `+r(e.meta.samplesStored),9,De)]),m(`button`,{class:`aw-pill outline add-btn`,onClick:o[5]||=e=>a(`open-templates`)},[o[13]||=m(`span`,{class:`i-tabler-adjustments-horizontal`},null,-1),S(` `+r(i.$t(`daq.k1f5cv0s018`)),1)]),m(`button`,{class:`aw-pill add-btn`,onClick:o[6]||=e=>a(`open-add`)},[o[14]||=m(`span`,{class:`i-tabler-plus`},null,-1),S(` `+r(i.$t(`daq.k1fn0ukb019`)),1)])])]),m(`div`,Oe,[m(`span`,ke,[o[15]||=m(`span`,{class:`i-tabler-route`},null,-1),S(` `+r(i.$t(`daq.k1b2o3b6020`)),1),m(`small`,Ae,r(e.lines.length),1)]),m(`div`,je,[(l(!0),h(g,null,u(e.lines,a=>(l(),b(c,{key:a.id,class:t([`line-pill`,{on:e.lineStateOf(a.id).active}]),style:n({"--lc":a.color}),to:`/dcw/${a.id}`,title:e.lineStateOf(a.id).active?i.$t(`daq.k3v957u120`,{p0:a.name,p1:e.lineStateOf(a.id).productName,p2:e.lineStateOf(a.id).recipeName}):i.$t(`daq.k1x7jnru121`,{p0:a.name})},{default:y(()=>[o[16]||=m(`span`,{class:`lp-dot`},null,-1),m(`b`,null,r(a.name),1),e.lineStateOf(a.id).active?(l(),h(`small`,Me,r(e.lineStateOf(a.id).recipeName??i.$t(`daq.k3vp67i096`)),1)):(l(),h(`small`,Ne,r(i.$t(`daq.k3zgkk021`)),1))]),_:2},1032,[`class`,`style`,`to`,`title`]))),128)),e.lines.length===0?(l(),b(c,{key:0,class:`line-pill`,to:`/dcw`},{default:y(()=>[o[17]||=m(`span`,{class:`lp-dot`},null,-1),m(`b`,null,r(i.$t(`daq.k1el12b1022`)),1),m(`small`,Pe,r(i.$t(`daq.k8jxxe8023`)),1)]),_:1})):v(``,!0)])])])}}}),{__name:`DaqControlCard`}),Ie={class:`modal`},Le={class:`m-title`},Re={class:`seg-row`},ze={class:`f-grid`},Be={class:`f`},Ve=[`value`],He={class:`f`},Ue=[`placeholder`],We={key:0,class:`f`},Ge=[`placeholder`],Ke={class:`f-grid`},qe={class:`f`},Je=[`value`],Ye={key:0,class:`f-grid driver-form`},Xe={key:0},Ze=[`onUpdate:modelValue`],Qe=[`value`],$e=[`onUpdate:modelValue`,`type`,`placeholder`],et={key:2,class:`hint`},tt={class:`test-row`},nt=[`disabled`],rt={key:1,class:`m-err`},it={class:`m-actions`},at=[`disabled`,`title`],ot=Object.assign(c({__name:`DaqAddNodeModal`,props:_({templates:{},driverCatalog:{},driverReady:{type:Function}},{open:{type:Boolean,required:!0},openModifiers:{},form:{required:!0},formModifiers:{}}),emits:_([`test`,`submit`,`close`],[`update:open`,`update:form`]),setup(e,{emit:n}){let i=n,a=o(e,`open`),s=o(e,`form`);return(n,o)=>a.value?(l(),h(`div`,{key:0,class:`modal-mask`,onClick:o[9]||=w(e=>i(`close`),[`self`])},[m(`div`,Ie,[m(`h3`,Le,r(n.$t(`daq.k19rioqa024`)),1),m(`div`,Re,[m(`button`,{class:t([`seg`,{on:s.value.scenario===`mock`}]),onClick:o[0]||=e=>s.value.scenario=`mock`},r(n.$t(`daq.k1p5c1un025`)),3),m(`button`,{class:t([`seg`,{on:s.value.scenario===`real`}]),onClick:o[1]||=e=>s.value.scenario=`real`},r(n.$t(`daq.k1cbcp3o026`)),3)]),m(`div`,ze,[m(`label`,Be,[m(`span`,null,r(n.$t(`daq.k1fsgerc027`)),1),x(m(`select`,{"onUpdate:modelValue":o[2]||=e=>s.value.template=e,class:`inp`},[(l(!0),h(g,null,u(e.templates,e=>(l(),h(`option`,{key:e.key,value:e.key},r(e.name)+` · `+r(e.ch)+`(`+r(e.min)+`~`+r(e.max)+` `+r(e.unit)+`)`+r(e.builtin?``:n.$t(`daq.kr45rk9097`)),9,Ve))),128))],512),[[C,s.value.template]])]),m(`label`,He,[m(`span`,null,r(n.$t(`daq.k1ce2k1y028`)),1),x(m(`input`,{"onUpdate:modelValue":o[3]||=e=>s.value.name=e,class:`inp`,placeholder:n.$t(`daq.kgpxzy3005`)},null,8,Ue),[[T,s.value.name]])]),s.value.scenario===`real`?(l(),h(`label`,We,[m(`span`,null,r(n.$t(`daq.k13mfsfc029`)),1),x(m(`input`,{"onUpdate:modelValue":o[4]||=e=>s.value.interval=e,type:`number`,min:`1000`,max:`60000`,step:`500`,class:`inp`,placeholder:n.$t(`daq.k1eg1000a136`)},null,8,Ge),[[T,s.value.interval,void 0,{number:!0}]])])):v(``,!0)]),s.value.scenario===`real`?(l(),h(g,{key:0},[m(`div`,Ke,[m(`label`,qe,[m(`span`,null,r(n.$t(`daq.k1kt87rx030`)),1),x(m(`select`,{"onUpdate:modelValue":o[5]||=e=>s.value.driver=e,class:`inp`},[(l(!0),h(g,null,u(e.driverCatalog.filter(e=>e.status!==`planned`),t=>(l(),h(`option`,{key:t.kind,value:t.kind},r(t.label)+r(t.plugin?` ⌁`:``)+r(e.driverReady(t.kind)?``:n.$t(`daq.kjbqphp098`)),9,Je))),128))],512),[[C,s.value.driver]])])]),s.value.fields.length?(l(),h(`div`,Ye,[(l(!0),h(g,null,u(s.value.fields,e=>(l(),h(`label`,{key:e.key,class:`f`},[m(`span`,null,[S(r(e.label),1),e.required?(l(),h(`em`,Xe,`*`)):v(``,!0)]),e.type===`select`?x((l(),h(`select`,{key:0,"onUpdate:modelValue":t=>s.value.cfg[e.key]=t,class:`inp`},[(l(!0),h(g,null,u(e.options,e=>(l(),h(`option`,{key:e.value,value:e.value},r(e.label),9,Qe))),128))],8,Ze)),[[C,s.value.cfg[e.key]]]):x((l(),h(`input`,{key:1,"onUpdate:modelValue":t=>s.value.cfg[e.key]=t,type:e.type===`number`?`number`:`text`,placeholder:e.placeholder,class:`inp`},null,8,$e)),[[E,s.value.cfg[e.key]]]),e.hint?(l(),h(`small`,et,r(e.hint),1)):v(``,!0)]))),128))])):v(``,!0),m(`div`,tt,[m(`button`,{class:`pill-btn`,disabled:s.value.testing,onClick:o[6]||=e=>i(`test`)},r(s.value.testing?n.$t(`daq.k1fsh720099`):n.$t(`daq.k1fstglk112`)),9,nt),s.value.test?(l(),h(`span`,{key:0,class:t([`test-result`,s.value.test.ok?`ok`:`bad`])},[S(r(s.value.test.ok?`✓`:`✗`)+` `+r(s.value.test.message),1),s.value.test.latencyMs==null?v(``,!0):(l(),h(g,{key:0},[S(`(`+r(s.value.test.latencyMs)+`ms)`,1)],64))],2)):v(``,!0)])],64)):v(``,!0),s.value.error?(l(),h(`p`,rt,r(s.value.error),1)):v(``,!0),m(`div`,it,[m(`button`,{class:`aw-pill outline`,onClick:o[7]||=e=>i(`close`)},r(n.$t(`daq.k3xdnn031`)),1),m(`button`,{class:`aw-pill`,disabled:s.value.saving||s.value.scenario===`real`&&s.value.test!=null&&!s.value.test.ok,title:s.value.scenario===`real`&&!(s.value.test&&s.value.test.ok)?n.$t(`daq.k1needtst137`):``,onClick:o[8]||=e=>i(`submit`)},r(s.value.saving?n.$t(`daq.k1bg4759100`):s.value.scenario===`real`?n.$t(`daq.k7pxjxo113`):n.$t(`daq.k1bge46t118`)),9,at)])])])):v(``,!0)}}),{__name:`DaqAddNodeModal`}),st={class:`modal`},ct={class:`m-title`},lt={class:`sec-label`},ut={class:`tpl-table`},dt={class:`mono dim`},ft={class:`mono range`},pt={class:`right actions`},mt=[`onClick`],ht=[`onClick`],gt={key:0},_t={colspan:`3`,class:`empty`},vt={class:`sec-label`},yt={class:`f-grid`},bt={class:`f`},xt=[`placeholder`],St={class:`f`},Ct=[`placeholder`],wt={class:`f`},Tt=[`placeholder`],Et={class:`f`},Dt=[`placeholder`],Ot={class:`f`},kt={class:`f`},At={class:`f`},jt={class:`f`},Mt=[`value`],Nt={class:`f`},Pt={class:`hint`},Ft={class:`f`},It={class:`hint`},Lt={key:0,class:`m-err`},Rt={class:`m-actions`},zt=[`disabled`],Bt={class:`sec-label`},Vt={class:`tpl-table`},Ht={class:`mono dim`},Ut={class:`mono range`},Wt={class:`right actions`},Gt=[`onClick`],Kt=Object.assign(c({__name:`DaqTemplateModal`,props:_({customTpls:{},builtinTpls:{},iconChoices:{},iconLabels:{},editing:{},saving:{type:Boolean},error:{},confirmingDel:{}},{open:{type:Boolean,required:!0},openModifiers:{},form:{required:!0},formModifiers:{}}),emits:_([`edit`,`copy`,`remove`,`reset`,`save`,`close`],[`update:open`,`update:form`]),setup(e,{emit:t}){let n=t,i=o(e,`open`),a=o(e,`form`);return(t,o)=>i.value?(l(),h(`div`,{key:0,class:`modal-mask`,onClick:o[12]||=w(e=>n(`close`),[`self`])},[m(`div`,st,[m(`h3`,ct,r(t.$t(`daq.k11mv96s032`)),1),m(`p`,lt,r(t.$t(`daq.ktji4ky033`)),1),m(`table`,ut,[m(`tbody`,null,[(l(!0),h(g,null,u(e.customTpls,i=>(l(),h(`tr`,{key:i.key},[m(`td`,null,[m(`b`,null,r(i.name),1),m(`small`,dt,r(i.code),1)]),m(`td`,ft,r(i.min)+`~`+r(i.max)+` `+r(i.unit)+` · `+r(i.decimals)+` `+r(t.$t(`daq.k48oi091`)),1),m(`td`,pt,[m(`button`,{class:`mini-btn`,onClick:e=>n(`edit`,i)},r(t.$t(`daq.k45eb0034`)),9,mt),m(`button`,{class:`mini-btn danger`,onClick:e=>n(`remove`,i)},r(e.confirmingDel===i.key?t.$t(`daq.k1hhheu3101`):t.$t(`daq.k3xakp114`)),9,ht)])]))),128)),e.customTpls.length?v(``,!0):(l(),h(`tr`,gt,[m(`td`,_t,r(t.$t(`daq.kztvzbo035`)),1)]))])]),m(`p`,vt,r(e.editing?t.$t(`daq.k1iiph0s102`):t.$t(`daq.k1efixrj115`)),1),m(`div`,yt,[m(`label`,bt,[m(`span`,null,[S(r(t.$t(`daq.k3xhia036`)),1),o[13]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[0]||=e=>a.value.name=e,class:`inp`,placeholder:t.$t(`daq.k5opd2t006`)},null,8,xt),[[T,a.value.name]])]),m(`label`,St,[m(`span`,null,[S(r(t.$t(`daq.k3x4ef037`)),1),o[14]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[1]||=e=>a.value.unit=e,class:`inp`,placeholder:t.$t(`daq.unitPh`)},null,8,Ct),[[T,a.value.unit]])]),m(`label`,wt,[m(`span`,null,r(t.$t(`daq.k1l477m0038`)),1),x(m(`input`,{"onUpdate:modelValue":o[2]||=e=>a.value.ch=e,class:`inp`,placeholder:t.$t(`daq.kk8o4tl007`)},null,8,Tt),[[T,a.value.ch]])]),m(`label`,Et,[m(`span`,null,r(t.$t(`daq.k1ayxrqb039`)),1),x(m(`input`,{"onUpdate:modelValue":o[3]||=e=>a.value.code=e,class:`inp`,placeholder:t.$t(`daq.kzn3l7l008`)},null,8,Dt),[[T,a.value.code]])]),m(`label`,Ot,[m(`span`,null,[S(r(t.$t(`daq.k1l9jv5m040`)),1),o[15]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[4]||=e=>a.value.min=e,type:`number`,class:`inp`},null,512),[[T,a.value.min,void 0,{number:!0}]])]),m(`label`,kt,[m(`span`,null,[S(r(t.$t(`daq.k1l9jv4p041`)),1),o[16]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[5]||=e=>a.value.max=e,type:`number`,class:`inp`},null,512),[[T,a.value.max,void 0,{number:!0}]])]),m(`label`,At,[m(`span`,null,r(t.$t(`daq.k3mxmcx042`)),1),x(m(`input`,{"onUpdate:modelValue":o[6]||=e=>a.value.decimals=e,type:`number`,min:`0`,max:`4`,class:`inp`},null,512),[[T,a.value.decimals,void 0,{number:!0}]])]),m(`label`,jt,[m(`span`,null,r(t.$t(`daq.k3xx56043`)),1),x(m(`select`,{"onUpdate:modelValue":o[7]||=e=>a.value.icon=e,class:`inp`},[(l(!0),h(g,null,u(e.iconChoices,t=>(l(),h(`option`,{key:t,value:t},r(e.iconLabels[t]),9,Mt))),128))],512),[[C,a.value.icon]])]),m(`label`,Nt,[m(`span`,null,r(t.$t(`daq.k1f4eknv044`)),1),x(m(`input`,{"onUpdate:modelValue":o[8]||=e=>a.value.base=e,type:`number`,class:`inp`},null,512),[[T,a.value.base,void 0,{number:!0}]]),m(`small`,Pt,r(t.$t(`daq.kytd15s045`)),1)]),m(`label`,Ft,[m(`span`,null,r(t.$t(`daq.k1f4ifpo046`)),1),x(m(`input`,{"onUpdate:modelValue":o[9]||=e=>a.value.amp=e,type:`number`,class:`inp`},null,512),[[T,a.value.amp,void 0,{number:!0}]]),m(`small`,It,r(t.$t(`daq.ksp2aji047`)),1)])]),e.error?(l(),h(`p`,Lt,r(e.error),1)):v(``,!0),m(`div`,Rt,[m(`button`,{class:`aw-pill outline`,onClick:o[10]||=e=>n(`reset`)},r(t.$t(`daq.k48p40048`)),1),m(`button`,{class:`pill-btn`,disabled:e.saving,onClick:o[11]||=e=>n(`save`)},r(e.saving?t.$t(`daq.k1b38d59103`):e.editing?t.$t(`daq.k1b39281116`):t.$t(`daq.k1b3dtga119`)),9,zt)]),m(`p`,Bt,r(t.$t(`daq.k1w8s84s049`)),1),m(`table`,Vt,[m(`tbody`,null,[(l(!0),h(g,null,u(e.builtinTpls,e=>(l(),h(`tr`,{key:e.key},[m(`td`,null,[m(`b`,null,r(e.name),1),m(`small`,Ht,r(e.code),1)]),m(`td`,Ut,r(e.min)+`~`+r(e.max)+` `+r(e.unit)+` · `+r(e.decimals)+` `+r(t.$t(`daq.k48oi091`)),1),m(`td`,Wt,[m(`button`,{class:`mini-btn`,onClick:t=>n(`copy`,e)},r(t.$t(`daq.k3y694050`)),9,Gt)])]))),128))])])])])):v(``,!0)}}),{__name:`DaqTemplateModal`}),qt={class:`aw-tile opt-card`},Jt={class:`opt-count mono`},Yt={class:`opt-filters`},Xt=[`value`],Zt={value:``},Qt=[`value`],$t=[`value`],en={value:``},tn=[`value`],nn={key:0,class:`opt-empty`},rn={class:`opt-list`},an={class:`opt-line1`},on={class:`opt-node`},sn={class:`mono opt-params`},cn={class:`mono opt-time`},ln=[`disabled`,`onClick`],un=[`onClick`],dn={class:`opt-line2 mono`},fn={key:1,class:`opt-open-hint`},pn={key:2,class:`opt-agg`},mn={key:3,class:`opt-agg`},hn={key:0,class:`opt-series`},gn={class:`opt-spark`,viewBox:`0 0 240 36`,preserveAspectRatio:`none`},_n=[`points`],vn={class:`mono`},yn={key:0,class:`opt-empty`},bn=Object.assign(c({__name:`DaqOptPanel`,props:{optimizations:{},lines:{},open:{type:Boolean},mounted:{type:Boolean},filterLine:{},filterRecipe:{},recipeOptions:{},seriesOf:{},seriesLoading:{},statusKey:{type:Function},seriesPath:{type:Function},fmtPoint:{type:Function}},emits:[`toggle`,`selectLine`,`selectRecipe`,`line-change`,`filter`,`series`,`rollback`],setup(e,{emit:n}){let i=n;function a(e){i(`selectLine`,e.target.value),i(`line-change`)}function o(e){i(`selectRecipe`,e.target.value),i(`filter`)}return(n,s)=>(l(),h(`section`,qt,[m(`button`,{class:`opt-head`,onClick:s[0]||=e=>i(`toggle`)},[s[2]||=m(`span`,{class:`i-tabler-flask`},null,-1),m(`b`,null,r(n.$t(`daq.k1optt001`)),1),m(`span`,Jt,r(e.optimizations.length),1),m(`span`,{class:t([`opt-chevron`,{open:e.open}])},null,2)]),m(`div`,{class:t([`opt-body`,{open:e.open}])},[e.mounted?(l(),h(g,{key:0},[m(`div`,Yt,[m(`select`,{value:e.filterLine,class:`inp-sel`,onChange:a},[m(`option`,Zt,r(n.$t(`daq.k1optf001`)),1),(l(!0),h(g,null,u(e.lines,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,Qt))),128))],40,Xt),m(`select`,{value:e.filterRecipe,class:`inp-sel`,onChange:o},[m(`option`,en,r(n.$t(`daq.k1optf004`)),1),(l(!0),h(g,null,u(e.recipeOptions,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,tn))),128))],40,$t),m(`button`,{class:`mini-act`,onClick:s[1]||=e=>i(`filter`)},r(n.$t(`daq.k1optf002`)),1)]),e.optimizations.length===0?(l(),h(`p`,nn,r(n.$t(`daq.k1opte001`)),1)):v(``,!0),m(`ul`,rn,[(l(!0),h(g,null,u(e.optimizations.slice(0,30),a=>(l(),h(`li`,{key:a.id,class:t([`opt-row`,a.status])},[m(`div`,an,[m(`span`,{class:t([`opt-status`,a.status])},r(n.$t(e.statusKey(a.status))),3),m(`b`,on,r(a.nodeName),1),m(`span`,sn,r(a.params[0]?.from??`?`)+` → `+r(a.params[0]?.to),1),m(`span`,cn,r(a.setAt.slice(5,16).replace(`T`,` `)),1),e.seriesOf[a.id]?v(``,!0):(l(),h(`button`,{key:0,class:`mini-act`,disabled:e.seriesLoading===a.id,onClick:e=>i(`series`,a.id)},r(n.$t(`daq.k1opta001`)),9,ln)),a.status===`open`?(l(),h(`button`,{key:1,class:`mini-act danger`,onClick:e=>i(`rollback`,a.id)},r(n.$t(`daq.k1opta002`)),9,un)):v(``,!0)]),m(`div`,dn,[a.judge?(l(),h(`span`,{key:0,class:t([`opt-judge`,a.judge.verdict])},r(a.judge.verdict)+`(`+r(a.judge.by)+`): `+r(a.judge.reason.slice(0,70)),3)):a.status===`open`?(l(),h(`span`,fn,r(n.$t(`daq.k1opto001`)),1)):v(``,!0),a.aggPending?(l(),h(`span`,pn,r(n.$t(`daq.k1optw001`)),1)):a.windowAgg&&a.windowAgg.channels.length?(l(),h(`span`,mn,[(l(!0),h(g,null,u(a.windowAgg.channels,t=>(l(),h(g,{key:t.daqNodeId},[S(r(t.ch)+` `+r(e.fmtPoint(t.min))+`~`+r(e.fmtPoint(t.max))+`(`+r(n.$t(`daq.k1optw002`))+r(t.breaches<0?`-`:t.breaches)+`) `,1)],64))),128))])):v(``,!0)]),e.seriesOf[a.id]?(l(),h(`div`,hn,[(l(!0),h(g,null,u(e.seriesOf[a.id]?.channels??[],t=>(l(),h(`div`,{key:t.nodeId,class:`opt-ch`},[(l(),h(`svg`,gn,[m(`polyline`,{points:e.seriesPath(t.points)},null,8,_n)])),m(`span`,vn,r(t.ch)+` `+r(e.fmtPoint(t.points.at(-1)?.value??t.points.at(-1)?.avg))+r(t.unit),1)]))),128)),(e.seriesOf[a.id]?.channels.length??0)===0?(l(),h(`p`,yn,r(n.$t(`daq.k1opte002`)),1)):v(``,!0)])):v(``,!0)],2))),128))])],64)):v(``,!0)],2)]))}}),{__name:`DaqOptPanel`}),xn={class:`mono dim`},Sn={class:`mono ch`},Cn=[`title`],wn=[`title`],Tn={class:`trend-cell`},En=[`title`],Dn=[`y1`,`y2`],On=[`y1`,`y2`],kn=[`points`],An=[`y1`,`y2`],jn={class:`mono`},Mn={class:`mono`},Nn=[`title`],Pn=[`title`],Fn=[`value`,`title`],In={value:``},Ln=[`value`],Rn=[`title`],zn={key:1,class:`run-pill na`},Bn={class:`prod-cell`},Vn=[`title`],Hn=[`title`],Un={key:1,class:`dim`},Wn={class:`dev-binds`},Gn=[`title`],Kn=[`onClick`],qn=[`title`],Jn={value:``},Yn=[`value`,`disabled`],Xn={class:`right`},Zn=[`title`],Qn=120,$=26,$n=Object.assign(M(c({__name:`DaqNodeRow`,props:{n:{}},setup(n){let i=n,{t:a}=k(),o=ne(),s=I(),c=re();function p(e){if(!e.lastAt)return!0;let t=e.intervalMs??o.controller.defaultIntervalMs;return Date.now()-Date.parse(e.lastAt)>Math.max(t*4,12e3)}function _(e){return e.enabled?e.lineId?s.lineStateOf(e.lineId).active?!o.controller.running||p(e)?`offline`:e.state:`idle`:`unassigned`:`disabled`}function b(e){let t=_(e);return t===`ok`||t===`warn`||t===`alarm`}function x(e){if(!e.lineId)return null;let t=s.lineStateOf(e.lineId);return!t.active||!t.recipeId?null:s.recipes.find(e=>e.id===t.recipeId)?.daqWindows?.find(t=>t.nodeId===e.id)??null}function C(e){let t=x(e);return!t||e.value==null?!1:t.min!=null&&e.value<t.min||t.max!=null&&e.value>t.max}function w(e){let t=x(e);return t&&(t.min!=null||t.max!=null)?{min:t.min,max:t.max}:e.warnLow!=null||e.warnHigh!=null?{min:e.warnLow,max:e.warnHigh}:{min:null,max:null}}function T(e){let t=e.filter(Number.isFinite);if(t.length<2)return``;let n=Math.min(...t),r=Math.max(...t)-n||1;return t.map((e,i)=>`${(i/(t.length-1)*Qn).toFixed(1)},${($-(e-n)/r*24-1).toFixed(1)}`).join(` `)}function E(e,t){if(t==null||!Number.isFinite(t))return null;let n=e.filter(Number.isFinite);if(n.length<2)return null;let r=Math.min(...n,t),i=Math.max(...n,t)-r||1;return Number(($-(t-r)/i*24-1).toFixed(1))}function D(e){let t=_(e),n=a(`daq.k44c2n065`);if(t===`offline`)return e.lastError?{key:t,label:n,tip:e.lastError}:{key:t,label:n,tip:o.controller.running?a(`daq.k1staled129`,{p0:Math.round(Math.max((e.intervalMs??o.controller.defaultIntervalMs)*4,12e3)/1e3)}):a(`daq.k1gateoff140`)};let r={ok:a(`daq.k41k5c062`),warn:a(`daq.k49z8v063`),alarm:a(`daq.k3xmid064`),offline:n,idle:a(`daq.k3ozyqz117`),disabled:a(`daq.k1disabl130`),unassigned:a(`daq.k3ootr6053`)};if(t===`idle`)return{key:t,label:r.idle,tip:a(`daq.k1idlehin139`)};if((t===`ok`||t===`warn`||t===`alarm`)&&C(e)){let t=x(e);return{key:`alarm`,label:a(`daq.k1l3pt51104`),tip:a(`daq.k1hrrqa1122`,{p0:t?.min??`-∞`,p1:t?.max??`+∞`,p2:``})}}return{key:t,label:r[t],tip:``}}function j(e){let t=o.templates.find(t=>t.key===F(e));return t?`${t.name} · ${t.ch}`:e||`-`}let M=e=>o.templates.find(t=>t.key===F(e))?.signalKind??`scalar`,ee=e=>e===`vector`?`向量`:e===`image`?`图像`:`标量`,te=e=>e==null?a(`daq.k9vnp9h124`,{p0:o.controller.defaultIntervalMs}):`${e}ms`,P=e=>e==null?a(`daq.k9vnp9h124`,{p0:o.controller.defaultPublishIntervalMs}):e===0?a(`daq.k41mvv078`):`${e}ms`,L=e=>o.meta.drivers.find(t=>t.kind===e)?.status===`planned`,ie=e=>e.deviceIds??(e.deviceBindingId?[e.deviceBindingId]:[]),R=e=>c.twins.find(t=>t.id===e)?.name??e,ae=f(()=>c.twins.filter(e=>e.kind!==`daq`&&!(e.modelRef??``).startsWith(`daq-`)&&!(e.modelRef??``).startsWith(`dcw-`))),z=f(()=>{let e=i.n,t=w(e),n=e.lineId?s.lineStateOf(e.lineId):null;return{tpl:j(e.templateRef),pill:D(e),alarm:C(e),live:b(e),trend:T(e.hist),limMin:E(e.hist,t.min),limMax:E(e.hist,t.max),interval:te(e.intervalMs),publish:P(e.publishIntervalMs),lineActive:!!n?.active,lineProduct:n?.productName??``,lineRecipe:n?.recipeName??``}});async function oe(){let e=i.n,t=!e.enabled;try{await o.patchNode(e.id,{enabled:t}),e.enabled=t,t||(e.state=`offline`),A.success(a(t?`daq.k1nodestart147`:`daq.k1nodestop146`))}catch(e){A.error(N(e))}}async function se(e){let t=e.target.value;try{await o.patchNode(i.n.id,{lineId:t});let e=i.n;e.lineId=t}catch(e){A.error(N(e))}}async function B(e){let t=e.target.value;if(!t)return;let n=i.n;if(!n.deviceIds?.includes(t)){try{await o.setNodeBindings(n.id,[...n.deviceIds??[],t])}catch(e){A.error(N(e))}e.target.value=``}}async function V(e){let t=i.n;try{await o.setNodeBindings(t.id,(t.deviceIds??[]).filter(t=>t!==e))}catch(e){A.error(N(e))}}return(i,a)=>{let o=O;return l(),h(`tr`,{class:t({"row-recipe-alarm":z.value.alarm})},[m(`td`,null,[m(`span`,xn,r(n.n.id.slice(0,8)),1),m(`b`,null,r(n.n.name),1),m(`small`,Sn,r(z.value.tpl),1)]),m(`td`,null,[m(`span`,{class:t([`st-pill`,[z.value.pill.key]]),title:z.value.pill.tip},r(z.value.pill.label),11,Cn)]),m(`td`,{class:t([`mono val`,{stale:!z.value.live,"val-alarm":n.n.state===`alarm`||z.value.alarm}]),title:z.value.live?void 0:z.value.pill.tip},[S(r(n.n.value==null?`--`:n.n.value.toFixed(n.n.decimals))+` `,1),m(`small`,null,r(n.n.unit),1)],10,wn),m(`td`,Tn,[(l(),h(`svg`,{class:`trend`,viewBox:`0 0 120 26`,preserveAspectRatio:`none`,title:i.$t(`daq.k1trnd002`)},[z.value.limMin==null?v(``,!0):(l(),h(`line`,{key:0,class:`lim`,x1:`0`,y1:z.value.limMin,x2:`120`,y2:z.value.limMin},null,8,Dn)),z.value.limMax==null?v(``,!0):(l(),h(`line`,{key:1,class:`lim max`,x1:`0`,y1:z.value.limMax,x2:`120`,y2:z.value.limMax},null,8,On)),z.value.trend?(l(),h(`polyline`,{key:2,class:t([`trace`,{alarm:n.n.state===`alarm`||z.value.alarm}]),points:z.value.trend},null,10,kn)):(l(),h(`line`,{key:3,class:`trace-idle`,x1:`0`,y1:$/2,x2:`120`,y2:$/2},null,8,An))],8,En))]),m(`td`,jn,r(z.value.interval),1),m(`td`,Mn,r(z.value.publish),1),m(`td`,null,[m(`span`,{class:t([`drv-tag`,{planned:L(n.n.driver)}]),title:L(n.n.driver)?i.$t(`daq.k1plndrv138`):``},r(n.n.driver),11,Nn),M(n.n.templateRef)===`scalar`?v(``,!0):(l(),h(`span`,{key:0,class:t([`sig-tag`,M(n.n.templateRef)]),title:M(n.n.templateRef)===`image`?`图像帧节点:像素入对象存储,帧列表/画廊可查,daq_export 落原文件`:`向量帧节点:多点轮廓,daq_frames 检索`},r(ee(M(n.n.templateRef))),11,Pn))]),m(`td`,null,[m(`select`,{class:`line-sel`,value:n.n.lineId,title:i.$t(`daq.k3q23v3010`),onChange:se},[m(`option`,In,r(i.$t(`daq.k3ootr6053`)),1),(l(!0),h(g,null,u(e(s).lines,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,Ln))),128))],40,Fn)]),m(`td`,null,[n.n.lineId?(l(),h(`span`,{key:0,class:t([`run-pill`,{on:z.value.lineActive}]),title:i.$t(`daq.k1runtipc131`)},[a[0]||=m(`span`,{class:`rp-dot`},null,-1),S(` `+r(z.value.lineActive?i.$t(`daq.k3vp67i096`):i.$t(`daq.k3ozyqz117`)),1)],10,Rn)):(l(),h(`span`,zn,r(i.$t(`daq.k3ootr6053`)),1))]),m(`td`,Bn,[n.n.lineId&&z.value.lineActive?(l(),h(g,{key:0},[m(`b`,{title:i.$t(`daq.k1prdrtip132`)},r(z.value.lineProduct||`--`),9,Vn),m(`small`,{class:`mono`,title:i.$t(`daq.k1prdrtip132`)},r(z.value.lineRecipe||`--`),9,Hn)],64)):(l(),h(`span`,Un,`--`))]),m(`td`,null,[m(`div`,Wn,[(l(!0),h(g,null,u(ie(n.n),e=>(l(),h(`span`,{key:e,class:`dev-bind-chip`,title:i.$t(`daq.k2bindtip137`)},[S(r(R(e))+` `,1),m(`span`,{class:`dev-unbind`,title:`unbind`,onClick:t=>V(e)},`✕`,8,Kn)],8,Gn))),128)),m(`select`,{class:`line-sel dev-add`,value:``,title:i.$t(`daq.k2bindtip137`),onChange:B},[m(`option`,Jn,r(i.$t(`daq.k3own4q056`)),1),(l(!0),h(g,null,u(ae.value,e=>(l(),h(`option`,{key:e.id,value:e.id,disabled:(n.n.deviceIds??[]).includes(e.id)},r(R(e.id)),9,Yn))),128))],40,qn)])]),m(`td`,Xn,[m(`button`,{class:t([`node-toggle`,{off:!n.n.enabled}]),title:n.n.enabled?i.$t(`daq.k1nodestop146`):i.$t(`daq.k1nodestart147`),onClick:oe},[m(`span`,{class:t(n.n.enabled?`i-tabler-player-pause`:`i-tabler-player-play`)},null,2),S(` `+r(n.n.enabled?i.$t(`daq.k1nodestop146`):i.$t(`daq.k1nodestart147`)),1)],10,Zn),d(o,{class:`console-link`,to:`/daq/${n.n.id}`},{default:y(()=>[a[1]||=m(`span`,{class:`i-tabler-dashboard`},null,-1),S(` `+r(i.$t(`daq.k3o3jg2074`)),1)]),_:1},8,[`to`])])],2)}}}),[[`__scopeId`,`data-v-fdef4416`]]),{__name:`WorkshopDaqNodeRow`}),er={class:`aw-tile table-card`},tr={class:`tbl-toolbar`},nr={class:`filters`},rr={class:`flt`},ir={value:``},ar=[`value`],or={value:`none`},sr={class:`flt`},cr={value:``},lr=[`value`],ur={value:`none`},dr=[`title`],fr={value:``},pr={value:`on`},mr={value:`off`},hr={class:`flt`},gr={value:``},_r={value:`ok`},vr={value:`warn`},yr={value:`alarm`},br={value:`offline`},xr={class:`flt`},Sr={value:``},Cr=[`value`],wr={class:`flt`},Tr={value:``},Er=[`value`],Dr=[`title`],Or={value:``},kr={value:`live`},Ar={value:`hour`},jr={value:`day`},Mr={value:`old`},Nr={value:`never`},Pr={class:`flt`},Fr=[`placeholder`],Ir={class:`count mono`},Lr={class:`ops-panels`},Rr={class:`panel-head`},zr={class:`panel-body`},Br={key:0,class:`panel-empty`},Vr={class:`mono dim`},Hr={class:`mono`},Ur={key:0,class:`esc mono`},Wr=[`onClick`],Gr={class:`ops-panel event-panel`},Kr={class:`panel-head`},qr={class:`panel-body`},Jr={key:0,class:`panel-empty`},Yr={class:`mono dim t`},Xr=[`title`],Zr=[`title`],Qr=[`title`],$r={class:`right`},ei={key:0,class:`vs-pad`,"aria-hidden":`true`},ti={key:1,class:`vs-pad`,"aria-hidden":`true`},ni={key:2},ri={colspan:`11`},ii={class:`pane-empty`,style:{"min-height":`120px`}},ai={class:`pe-sub`},oi={key:3},si={colspan:`11`},ci={class:`pane-empty`,style:{"min-height":`90px`}},li={class:`pe-sub`},ui=Object.assign(c({__name:`DaqNodePanel`,props:_({hasFilters:{type:Boolean},lines:{},boundDevices:{},templateOptions:{},driverOptions:{},filteredCount:{},totalCount:{},opsRecent:{},opsKindLabel:{type:Function},opsTime:{type:Function},alarms:{},visibleNodes:{},padTopPx:{},padBottomPx:{},loading:{type:Boolean},loaded:{type:Boolean},error:{}},{filters:{required:!0},filtersModifiers:{},tableEl:{required:!0},tableElModifiers:{}}),emits:_([`clear-filters`,`ack`],[`update:filters`,`update:tableEl`]),setup(e,{emit:i}){let a=i,s=o(e,`filters`),c=o(e,`tableEl`);return(i,o)=>{let f=O,p=$n,_=j;return l(),b(_,{spinning:e.loading},{default:y(()=>[m(`section`,er,[m(`div`,tr,[m(`div`,nr,[m(`label`,rr,[m(`span`,null,r(i.$t(`daq.k3wj9n051`)),1),x(m(`select`,{"onUpdate:modelValue":o[0]||=e=>s.value.lineId=e,class:`inp-sel`},[m(`option`,ir,r(i.$t(`daq.k1bkl9uj052`)),1),(l(!0),h(g,null,u(e.lines,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,ar))),128)),m(`option`,or,r(i.$t(`daq.k3ootr6053`)),1)],512),[[C,s.value.lineId]])]),m(`label`,sr,[m(`span`,null,r(i.$t(`daq.k1i8rtqt054`)),1),x(m(`select`,{"onUpdate:modelValue":o[1]||=e=>s.value.deviceId=e,class:`inp-sel`},[m(`option`,cr,r(i.$t(`daq.k1bkw4m2055`)),1),(l(!0),h(g,null,u(e.boundDevices,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name)+`(`+r(e.count)+`) `,9,lr))),128)),m(`option`,ur,r(i.$t(`daq.k3own4q056`)),1)],512),[[C,s.value.deviceId]])]),m(`label`,{class:`flt`,title:i.$t(`daq.khb8mru009`)},[m(`span`,null,r(i.$t(`daq.k1b2tkyv057`)),1),x(m(`select`,{"onUpdate:modelValue":o[2]||=e=>s.value.lineRun=e,class:`inp-sel`},[m(`option`,fr,r(i.$t(`daq.k3x4t1058`)),1),m(`option`,pr,r(i.$t(`daq.k1nxm3p7059`)),1),m(`option`,mr,r(i.$t(`daq.k1ulx34e060`)),1)],512),[[C,s.value.lineRun]])],8,dr),m(`label`,hr,[m(`span`,null,r(i.$t(`daq.k1iwdfef061`)),1),x(m(`select`,{"onUpdate:modelValue":o[3]||=e=>s.value.state=e,class:`inp-sel`},[m(`option`,gr,r(i.$t(`daq.k3x4t1058`)),1),m(`option`,_r,r(i.$t(`daq.k41k5c062`)),1),m(`option`,vr,r(i.$t(`daq.k49z8v063`)),1),m(`option`,yr,r(i.$t(`daq.k3xmid064`)),1),m(`option`,br,r(i.$t(`daq.k44c2n065`)),1)],512),[[C,s.value.state]])]),m(`label`,xr,[m(`span`,null,r(i.$t(`daq.k1flttpl010`)),1),x(m(`select`,{"onUpdate:modelValue":o[4]||=e=>s.value.template=e,class:`inp-sel`},[m(`option`,Sr,r(i.$t(`daq.k1flttpl011`)),1),(l(!0),h(g,null,u(e.templateOptions,e=>(l(),h(`option`,{key:e.ref,value:e.ref},r(e.label)+`(`+r(e.count)+`) `,9,Cr))),128))],512),[[C,s.value.template]])]),m(`label`,wr,[m(`span`,null,r(i.$t(`daq.k1fltdrv012`)),1),x(m(`select`,{"onUpdate:modelValue":o[5]||=e=>s.value.driver=e,class:`inp-sel`},[m(`option`,Tr,r(i.$t(`daq.k1fltdrv013`)),1),(l(!0),h(g,null,u(e.driverOptions,e=>(l(),h(`option`,{key:e.kind,value:e.kind},r(e.label)+`(`+r(e.count)+`) `,9,Er))),128))],512),[[C,s.value.driver]])]),m(`label`,{class:`flt`,title:i.$t(`daq.k1flttim014`)},[m(`span`,null,r(i.$t(`daq.k1flttim015`)),1),x(m(`select`,{"onUpdate:modelValue":o[6]||=e=>s.value.time=e,class:`inp-sel`},[m(`option`,Or,r(i.$t(`daq.k1flttim016`)),1),m(`option`,kr,r(i.$t(`daq.k1timlv017`)),1),m(`option`,Ar,r(i.$t(`daq.k1timhr018`)),1),m(`option`,jr,r(i.$t(`daq.k1timdy019`)),1),m(`option`,Mr,r(i.$t(`daq.k1timld020`)),1),m(`option`,Nr,r(i.$t(`daq.k1timnv021`)),1)],512),[[C,s.value.time]])],8,Dr),m(`label`,Pr,[m(`span`,null,r(i.$t(`daq.k1fltsrc022`)),1),x(m(`input`,{"onUpdate:modelValue":o[7]||=e=>s.value.search=e,class:`inp-sel flt-search`,type:`search`,placeholder:i.$t(`daq.k1fltsph023`)},null,8,Fr),[[T,s.value.search]])]),e.hasFilters?(l(),h(`button`,{key:0,class:`mini-btn clear-btn`,onClick:o[8]||=e=>a(`clear-filters`)},r(i.$t(`daq.k1fygck2066`)),1)):v(``,!0)]),m(`span`,Ir,r(e.filteredCount)+` / `+r(e.totalCount)+` `+r(i.$t(`daq.k45uio067`)),1)]),m(`div`,Lr,[m(`div`,{class:t([`ops-panel alarm-panel`,{live:e.alarms.length>0}])},[m(`div`,Rr,[o[9]||=m(`span`,{class:`i-tabler-bell-ringing bell`},null,-1),m(`b`,null,r(i.$t(`daq.k1alarm141`)),1),m(`span`,{class:t([`mono cnt`,{hot:e.alarms.length>0}])},r(e.alarms.length),3)]),m(`div`,zr,[e.alarms.length===0?(l(),h(`p`,Br,r(i.$t(`daq.k1evt001`)),1)):(l(!0),h(g,{key:1},u(e.alarms,e=>(l(),h(`div`,{key:e.id,class:`alarm-row`},[o[10]||=m(`span`,{class:`i-tabler-alert-triangle tri`},null,-1),m(`b`,null,r(e.nodeName),1),m(`span`,Vr,r(e.metric),1),m(`span`,Hr,r(e.value)+` `+r(e.rule===`lt-min`?`<`:`>`)+` `+r(e.threshold),1),e.escalation>0?(l(),h(`small`,Ur,`+`+r(e.escalation),1)):v(``,!0),m(`button`,{class:`mini-btn ack`,onClick:t=>a(`ack`,e.id)},r(i.$t(`daq.k1ack142`)),9,Wr)]))),128))])],2),m(`div`,Gr,[m(`div`,Kr,[o[12]||=m(`span`,{class:`i-tabler-activity`},null,-1),m(`b`,null,r(i.$t(`daq.k1evt002`)),1),d(f,{class:`panel-link`,to:`/logs`},{default:y(()=>[S(r(i.$t(`daq.k1evt003`)),1),o[11]||=m(`span`,{class:`i-tabler-arrow-right`},null,-1)]),_:1})]),m(`div`,qr,[e.opsRecent.length===0?(l(),h(`p`,Jr,r(i.$t(`daq.k1evt004`)),1)):(l(!0),h(g,{key:1},u(e.opsRecent,(n,a)=>(l(),h(`div`,{key:`${n.at}:${n.actor}:${n.action}:${a}`,class:`evt-row`},[m(`span`,Yr,r(e.opsTime(n.at)),1),m(`span`,{class:t([`src-badge`,n.actorKind])},r(n.actorKind===`agent`?`Agent`:n.actorKind===`user`?i.$t(`logs.src.user`):i.$t(`logs.src.system`)),3),m(`span`,{class:t([`kind-chip`,n.kind])},r(e.opsKindLabel(n.kind)),3),m(`span`,{class:`txt`,title:n.summary},r(n.summary),9,Xr)]))),128))])])]),m(`table`,{ref_key:`tableEl`,ref:c,class:`nodes-table`},[m(`thead`,null,[m(`tr`,null,[m(`th`,null,r(i.$t(`daq.k45uio067`)),1),m(`th`,null,r(i.$t(`daq.k42w8s068`)),1),m(`th`,null,r(i.$t(`daq.k3mv305069`)),1),m(`th`,null,r(i.$t(`daq.k1trnd001`)),1),m(`th`,null,r(i.$t(`daq.k1l6g2ga070`)),1),m(`th`,null,r(i.$t(`daq.k3zi0nf071`)),1),m(`th`,null,r(i.$t(`daq.k4a0la072`)),1),m(`th`,null,r(i.$t(`daq.k3wj9n051`)),1),m(`th`,{title:i.$t(`daq.k1runtipc131`)},r(i.$t(`daq.k1b2tkyv057`)),9,Zr),m(`th`,{title:i.$t(`daq.k1prdrtip132`)},r(i.$t(`daq.k1prodrc128`)),9,Qr),m(`th`,null,r(i.$t(`daq.k1i8rtqt054`)),1),m(`th`,$r,r(i.$t(`daq.k40aa6073`)),1)])]),m(`tbody`,null,[e.padTopPx>0?(l(),h(`tr`,ei,[m(`td`,{colspan:11,style:n({height:e.padTopPx+`px`})},null,4)])):v(``,!0),(l(!0),h(g,null,u(e.visibleNodes,e=>(l(),b(p,{key:e.id,n:e},null,8,[`n`]))),128)),e.padBottomPx>0?(l(),h(`tr`,ti,[m(`td`,{colspan:11,style:n({height:e.padBottomPx+`px`})},null,4)])):v(``,!0),e.loaded&&e.totalCount===0?(l(),h(`tr`,ni,[m(`td`,ri,[m(`div`,ii,[m(`p`,ai,r(i.$t(`daq.kvhjyc3075`)),1)])])])):e.loaded&&e.filteredCount===0?(l(),h(`tr`,oi,[m(`td`,si,[m(`div`,ci,[m(`p`,li,r(i.$t(`daq.k1w20qew076`)),1)])])])):v(``,!0)])],512)])]),_:1},8,[`spinning`])}}}),{__name:`DaqNodePanel`}),di={class:`page`},fi={class:`aw-page-head`},pi={class:`sub`},mi={class:`badges mono`},hi=[`title`],gi=[`title`],_i={key:0,class:`err`},vi=c({__name:`index`,setup(t){let{t:n}=k();te({layout:`default`}),D({title:()=>n(`titles.daq`)});let o=ne(),c=I(),u=ee(),g=f(()=>c.lines.some(e=>c.lineStateOf(e.id).active)),_=V();function b(e){return{write:n(`logs.kind.write`),manual:n(`logs.kind.manual`),alarm:n(`logs.kind.alarm`),line:n(`logs.kind.line`),recipe:n(`logs.kind.recipe`),rollback:n(`logs.kind.rollback`),daq:n(`logs.kind.daq`),system:n(`logs.kind.system`)}[e]??(e||n(`logs.kind.system`))}function x(e){let t=new Date(e);return Number.isFinite(t.getTime())?`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}`:``}async function C(e){try{await o.ackAlarm(e),A.success(n(`daq.k1acked144`))}catch(e){A.error(N(e))}}let w=null;s(()=>{u.ensureConnected(),w=o.ensureWsFeed(),_.ensureLive(),o.load(),o.fetchAlarms(),c.load(),K.load(),c.loadOptimizations(),P(()=>{o.load(),o.fetchAlarms()},5e3,{bgMs:3e4}),P(()=>{c.load()},15e3,{bgMs:6e4})}),a(()=>{w?.()});let{filters:T,hasFilters:E,clearFilters:j,templateOptions:M,driverOptions:F,boundDevices:H,filteredNodes:U,filteredLine:W,filteredLineState:G}=R(),K=re(),{driverCatalog:q,driverReady:le}=ie(),{reconnecting:de,doReconnect:fe}=ae();function pe(e,t){o.controllerAction(`config`,e,t)}let{nodesTableRef:J,visibleNodes:Y,padTopPx:me,padBottomPx:he,resetToTop:ge}=z(U);p(()=>U.value.length,()=>{ge()});let X=L(q,n),Z=se(n),ve=B(n),Q=oe();return(t,n)=>{let a=ce,s=ue,u=_e,f=Fe,p=ot,w=Kt,D=bn,k=ui,A=O;return l(),h(`div`,di,[m(`div`,fi,[m(`div`,null,[n[13]||=m(`p`,{class:`aw-kicker`},` AGENTWORKSHOP / DAQ CONSOLE `,-1),m(`h1`,null,r(t.$t(`daq.k1emg364011`)),1),m(`p`,pi,r(t.$t(`daq.k1wmg2bz012`)),1)]),m(`div`,mi,[m(`span`,{class:`badge`,title:t.$t(`daq.k1tsdbtip133`)},`TSDB · `+r(e(o).meta.tsdb),9,hi),m(`span`,{class:`badge`,title:t.$t(`daq.k1queuet134`)},`QUEUE · `+r(e(o).meta.queue),9,gi)])]),d(a,{loaded:e(o).loaded,"filtered-line":e(W),"filtered-line-state":e(G),"any-line-active":g.value},null,8,[`loaded`,`filtered-line`,`filtered-line-state`,`any-line-active`]),d(s,{infra:e(o).meta.infra,reconnecting:e(de),onReconnect:e(fe)},null,8,[`infra`,`reconnecting`,`onReconnect`]),d(u,{alarms:e(o).alarms,onAck:C},null,8,[`alarms`]),d(f,{controller:e(o).controller,"onUpdate:controller":n[0]||=t=>e(o).controller=t,meta:e(o).meta,lines:e(c).lines,"line-state-of":t=>e(c).lineStateOf(t),onAction:n[1]||=t=>e(o).controllerAction(t),onConfig:pe,onOpenAdd:n[2]||=t=>e(X).open.value=!0,onOpenTemplates:n[3]||=t=>{e(Z).tplOpen.value=!0,e(Z).resetTplForm()}},null,8,[`controller`,`meta`,`lines`,`line-state-of`]),d(p,{open:e(X).open.value,"onUpdate:open":n[4]||=t=>e(X).open.value=t,form:e(X).form,"onUpdate:form":n[5]||=t=>e(X).form=t,templates:e(o).templates,"driver-catalog":e(q),"driver-ready":e(le),onTest:e(X).doTestConnection,onSubmit:e(X).doAddNode,onClose:n[6]||=t=>e(X).open.value=!1},null,8,[`open`,`form`,`templates`,`driver-catalog`,`driver-ready`,`onTest`,`onSubmit`]),d(w,{open:e(Z).tplOpen.value,"onUpdate:open":n[7]||=t=>e(Z).tplOpen.value=t,form:e(Z).tplForm.value,"onUpdate:form":n[8]||=t=>e(Z).tplForm.value=t,"custom-tpls":e(Z).customTpls.value,"builtin-tpls":e(Z).builtinTpls.value,"icon-choices":e(Z).iconChoices,"icon-labels":e(ve),editing:e(Z).tplEditing.value,saving:e(Z).tplSaving.value,error:e(Z).tplError.value,"confirming-del":e(Z).confirmingDel.value,onEdit:e(Z).editTpl,onCopy:e(Z).copyTpl,onRemove:e(Z).askDelTpl,onReset:e(Z).resetTplForm,onSave:e(Z).saveTpl},null,8,[`open`,`form`,`custom-tpls`,`builtin-tpls`,`icon-choices`,`icon-labels`,`editing`,`saving`,`error`,`confirming-del`,`onEdit`,`onCopy`,`onRemove`,`onReset`,`onSave`]),d(D,{optimizations:e(c).optimizations,lines:e(c).lines,open:e(Q).optOpen.value,mounted:e(Q).optMounted.value,"filter-line":e(Q).optFilterLine.value,"filter-recipe":e(Q).optFilterRecipe.value,"recipe-options":e(Q).optRecipeOptions.value,"series-of":e(Q).optSeriesOf.value,"series-loading":e(Q).optSeriesLoading.value,"status-key":e(Q).optStatusKey,"series-path":e(Q).seriesPath,"fmt-point":e(Q).fmtPoint,onToggle:e(Q).toggleOptPanel,onSelectLine:n[9]||=t=>e(Q).optFilterLine.value=t,onSelectRecipe:n[10]||=t=>e(Q).optFilterRecipe.value=t,onLineChange:e(Q).onOptLineChange,onFilter:e(Q).filterOpts,onSeries:e(Q).showOptSeries,onRollback:e(Q).rollbackRecord},null,8,[`optimizations`,`lines`,`open`,`mounted`,`filter-line`,`filter-recipe`,`recipe-options`,`series-of`,`series-loading`,`status-key`,`series-path`,`fmt-point`,`onToggle`,`onLineChange`,`onFilter`,`onSeries`,`onRollback`]),d(k,{"table-el":e(J),"onUpdate:tableEl":n[11]||=e=>i(J)?J.value=e:null,filters:e(T),"onUpdate:filters":n[12]||=e=>i(T)?T.value=e:null,"has-filters":e(E),lines:e(c).lines,"bound-devices":e(H),"template-options":e(M),"driver-options":e(F),"filtered-count":e(U).length,"total-count":e(o).nodes.length,"ops-recent":e(_).recent,"ops-kind-label":b,"ops-time":x,alarms:e(o).alarms,"visible-nodes":e(Y),"pad-top-px":e(me),"pad-bottom-px":e(he),loading:!e(o).loaded&&!e(o).error,loaded:e(o).loaded,error:e(o).error,onClearFilters:e(j),onAck:C},null,8,[`table-el`,`filters`,`has-filters`,`lines`,`bound-devices`,`template-options`,`driver-options`,`filtered-count`,`total-count`,`ops-recent`,`alarms`,`visible-nodes`,`pad-top-px`,`pad-bottom-px`,`loading`,`loaded`,`error`,`onClearFilters`]),e(o).error?(l(),h(`p`,_i,[S(r(e(o).error)+`(`,1),d(A,{to:`/workshop`},{default:y(()=>[S(r(t.$t(`daq.k1bhhheq077`)),1)]),_:1}),n[14]||=S(`) `,-1)])):v(``,!0)])}}});export{vi as default};
1
+ import{N as e,dt as t,ft as n,mt as r,u as i}from"./CavpkQb0.js";import{P as a,Q as o,R as s,S as c,V as l,W as u,b as d,d as f,et as p,f as m,h,i as g,k as _,m as v,nt as y,p as b,rt as x,y as S}from"./ByMj6e7s.js";import{c as C,f as w,l as T,s as E}from"./goF_oZHF.js";import{n as D}from"./DkpmSnHX.js";import{t as O}from"./CxLxiOGV.js";import{n as k}from"./Cnrmlixo.js";import{i as A}from"./CiyTTgqr.js";import{t as j}from"./DzBbYWrw2.js";import{t as M}from"./BDNMzG2s2.js";import{t as ee}from"./DG0esyZR.js";import{t as N}from"./JgheoP3e.js";import{t as te}from"./CNs_Ozdc.js";import{t as P}from"./B8cnjDtt.js";import{a as F,t as ne}from"./lyJsJl_G.js";import{t as I}from"./Dmgqz2np.js";import{t as re}from"./DzwIZ81f2.js";import{t as L}from"./CnF6dXcZ2.js";import{n as ie,r as R,t as ae}from"./BhllzW3K2.js";import{t as z}from"./csitHKnE2.js";import{t as oe}from"./BSG-4Ecg2.js";import{n as se,t as B}from"./Bd85nb9X2.js";import{t as V}from"./ChN5v-i22.js";var H={class:`txt`},U={class:`mono`},W={key:1,class:`infra-banner`},G={class:`txt`},ce=Object.assign(c({__name:`DaqLineBanner`,props:{loaded:{type:Boolean},filteredLine:{},filteredLineState:{},anyLineActive:{type:Boolean}},setup(e){return(n,i)=>{let a=O;return e.loaded&&e.filteredLine&&e.filteredLineState?(l(),h(`div`,{key:0,class:t([`infra-banner`,{good:e.filteredLineState.active}])},[m(`span`,{class:t(e.filteredLineState.active?`i-tabler-circle-check`:`i-tabler-info-circle`)},null,2),m(`span`,H,[e.filteredLineState.active?(l(),h(g,{key:0},[S(r(n.$t(`daq.k3ktxbr085`))+r(e.filteredLine.name)+`」`+r(n.$t(`daq.k15lvw0o105`)),1),m(`b`,null,r(e.filteredLineState.productName),1),i[0]||=S(` · Recipe:`,-1),m(`b`,null,r(e.filteredLineState.recipeName),1),m(`small`,U,r(n.$t(`daq.k400lb086`))+` `+r(e.filteredLineState.runId?.slice(0,8))+` · `+r(n.$t(`daq.k3zkt2106`))+` `+r(e.filteredLineState.startedAt?.slice(11,19))+` `+r(n.$t(`daq.k69vag8108`))+` `+r(e.filteredLineState.taggedSamples)+` `+r(n.$t(`daq.k4118o092`)),1)],64)):(l(),h(g,{key:1},[S(r(n.$t(`daq.k3ktxbr085`))+r(e.filteredLine.name)+`」`+r(n.$t(`daq.k12uge2o107`)),1)],64))]),d(a,{class:`pill-btn`,to:`/dcw/${e.filteredLine.id}`},{default:y(()=>[S(r(e.filteredLineState.active?n.$t(`daq.k1ukoy0v093`):n.$t(`daq.k1cg78i8109`)),1)]),_:1},8,[`to`])],2)):e.loaded&&!e.anyLineActive?(l(),h(`div`,W,[i[1]||=m(`span`,{class:`i-tabler-info-circle`},null,-1),m(`span`,G,[S(r(n.$t(`daq.k19onw5w013`)),1),d(a,{to:`/dcw`},{default:y(()=>[S(r(n.$t(`daq.k1b2tk5c014`)),1)]),_:1}),S(r(n.$t(`daq.k1u9wnlg015`)),1)])])):v(``,!0)}}}),{__name:`DaqLineBanner`}),K={key:0,class:`infra-banner`},q={class:`txt`},le=[`disabled`],ue=Object.assign(c({__name:`DaqInfraBanner`,props:{infra:{},reconnecting:{type:Boolean}},emits:[`reconnect`],setup(e,{emit:t}){let n=t;return(t,i)=>e.infra?.degraded?(l(),h(`div`,K,[i[1]||=m(`span`,{class:`i-tabler-alert-triangle`},null,-1),m(`span`,q,r(e.infra.warning),1),m(`button`,{class:`pill-btn`,disabled:e.reconnecting,onClick:i[0]||=e=>n(`reconnect`)},r(e.reconnecting?t.$t(`daq.k1ld43ur094`):t.$t(`daq.kzg9805110`)),9,le)])):v(``,!0)}}),{__name:`DaqInfraBanner`}),de={key:0,class:`alarm-bar`},fe={class:`bar-label`},pe={class:`mono`},J={class:`alarm-scroll`},Y=[`title`],me={class:`mono dim`},he={class:`mono`},ge={key:0,class:`esc mono`},X=[`onClick`],_e=Object.assign(c({__name:`DaqAlarmBar`,props:{alarms:{}},emits:[`ack`],setup(e,{emit:t}){let n=t;return(t,i)=>e.alarms.length?(l(),h(`div`,de,[m(`span`,fe,[i[0]||=m(`span`,{class:`i-tabler-bell-ringing bell`},null,-1),S(` `+r(t.$t(`daq.k1alarm141`))+` `,1),m(`b`,pe,r(e.alarms.length),1)]),m(`div`,J,[(l(!0),h(g,null,u(e.alarms,e=>(l(),h(`span`,{key:e.id,class:`alarm-item`,title:t.$t(`daq.k1esc143`,{p0:e.escalation})},[m(`b`,null,r(e.nodeName),1),m(`span`,me,r(e.metric),1),m(`span`,he,r(e.value)+` `+r(e.rule===`lt-min`?`<`:`>`)+` `+r(e.threshold),1),e.escalation>0?(l(),h(`small`,ge,`+`+r(e.escalation),1)):v(``,!0),m(`button`,{class:`mini-btn ack`,onClick:t=>n(`ack`,e.id)},r(t.$t(`daq.k1ack142`)),9,X)],8,Y))),128))])])):v(``,!0)}}),{__name:`DaqAlarmBar`}),Z={class:`aw-tile ctrl-card`},ve={class:`ctrl-row`},Q={class:`ctrl-left`},ye=[`title`],be={class:`cycle mono`},xe=[`title`],Se={class:`ctrl-right`},Ce={class:`ctrl-metrics mono`},we=[`title`],Te=[`title`],Ee=[`title`],De=[`title`],Oe={class:`line-strip`},ke={class:`strip-label`},Ae={class:`mono`},je={class:`strip-scroll`},Me={key:0,class:`lp-run`},Ne={key:1,class:`lp-idle`},Pe={class:`lp-idle`},Fe=Object.assign(c({__name:`DaqControlCard`,props:_({meta:{},lines:{},lineStateOf:{type:Function}},{controller:{required:!0},controllerModifiers:{}}),emits:_([`action`,`config`,`open-add`,`open-templates`],[`update:controller`]),setup(e,{emit:i}){let a=i,s=o(e,`controller`);return(i,o)=>{let c=O;return l(),h(`section`,Z,[m(`div`,ve,[m(`div`,Q,[m(`button`,{class:t([`aw-pill`,{running:s.value.running}]),title:i.$t(`daq.k1snap145`),onClick:o[0]||=e=>a(`action`,s.value.running?`pause`:`resume`)},[m(`span`,{class:t(s.value.running?`i-tabler-player-pause`:`i-tabler-player-play`)},null,2),S(` `+r(s.value.running?i.$t(`daq.kpui00095`):i.$t(`daq.knxpdpt111`)),1)],10,ye),m(`label`,be,[S(r(i.$t(`daq.k1ifahxj016`))+` `,1),x(m(`input`,{"onUpdate:modelValue":o[1]||=e=>s.value.defaultIntervalMs=e,type:`number`,min:`200`,max:`60000`,step:`100`,onChange:o[2]||=e=>a(`config`,s.value.defaultIntervalMs,s.value.defaultPublishIntervalMs)},null,544),[[T,s.value.defaultIntervalMs,void 0,{number:!0}]]),o[7]||=S(`ms `,-1)]),m(`label`,{class:`cycle mono`,title:i.$t(`daq.k1e8lcoo001`)},[S(r(i.$t(`daq.k1if98n0017`))+` `,1),x(m(`input`,{"onUpdate:modelValue":o[3]||=e=>s.value.defaultPublishIntervalMs=e,type:`number`,min:`0`,max:`60000`,step:`100`,onChange:o[4]||=e=>a(`config`,s.value.defaultIntervalMs,s.value.defaultPublishIntervalMs)},null,544),[[T,s.value.defaultPublishIntervalMs,void 0,{number:!0}]]),o[8]||=S(`ms `,-1)],8,xe)]),m(`div`,Se,[m(`span`,Ce,[m(`span`,null,r(i.$t(`daq.k45uio067`))+` `+r(s.value.nodesOnline)+`/`+r(s.value.nodesTotal),1),o[9]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{title:i.$t(`daq.k1yztsu4002`)},r(i.$t(`daq.k3xagp087`))+` `+r(e.meta.produced),9,we),o[10]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{title:i.$t(`daq.ko09iha003`)},r(i.$t(`daq.k427eu088`))+` `+r(e.meta.consumed),9,Te),o[11]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{class:t({warn:(e.meta.dropped??0)>0}),title:i.$t(`daq.k1droptip135`)},r(i.$t(`daq.k3w8go089`))+` `+r(e.meta.dropped),11,Ee),o[12]||=m(`span`,{class:`sep`},`·`,-1),m(`span`,{title:i.$t(`daq.kj1jbmw004`)},r(i.$t(`daq.k3wusd090`))+` `+r(e.meta.samplesStored),9,De)]),m(`button`,{class:`aw-pill outline add-btn`,onClick:o[5]||=e=>a(`open-templates`)},[o[13]||=m(`span`,{class:`i-tabler-adjustments-horizontal`},null,-1),S(` `+r(i.$t(`daq.k1f5cv0s018`)),1)]),m(`button`,{class:`aw-pill add-btn`,onClick:o[6]||=e=>a(`open-add`)},[o[14]||=m(`span`,{class:`i-tabler-plus`},null,-1),S(` `+r(i.$t(`daq.k1fn0ukb019`)),1)])])]),m(`div`,Oe,[m(`span`,ke,[o[15]||=m(`span`,{class:`i-tabler-route`},null,-1),S(` `+r(i.$t(`daq.k1b2o3b6020`)),1),m(`small`,Ae,r(e.lines.length),1)]),m(`div`,je,[(l(!0),h(g,null,u(e.lines,a=>(l(),b(c,{key:a.id,class:t([`line-pill`,{on:e.lineStateOf(a.id).active}]),style:n({"--lc":a.color}),to:`/dcw/${a.id}`,title:e.lineStateOf(a.id).active?i.$t(`daq.k3v957u120`,{p0:a.name,p1:e.lineStateOf(a.id).productName,p2:e.lineStateOf(a.id).recipeName}):i.$t(`daq.k1x7jnru121`,{p0:a.name})},{default:y(()=>[o[16]||=m(`span`,{class:`lp-dot`},null,-1),m(`b`,null,r(a.name),1),e.lineStateOf(a.id).active?(l(),h(`small`,Me,r(e.lineStateOf(a.id).recipeName??i.$t(`daq.k3vp67i096`)),1)):(l(),h(`small`,Ne,r(i.$t(`daq.k3zgkk021`)),1))]),_:2},1032,[`class`,`style`,`to`,`title`]))),128)),e.lines.length===0?(l(),b(c,{key:0,class:`line-pill`,to:`/dcw`},{default:y(()=>[o[17]||=m(`span`,{class:`lp-dot`},null,-1),m(`b`,null,r(i.$t(`daq.k1el12b1022`)),1),m(`small`,Pe,r(i.$t(`daq.k8jxxe8023`)),1)]),_:1})):v(``,!0)])])])}}}),{__name:`DaqControlCard`}),Ie={class:`modal`},Le={class:`m-title`},Re={class:`seg-row`},ze={class:`f-grid`},Be={class:`f`},Ve=[`value`],He={class:`f`},Ue=[`placeholder`],We={key:0,class:`f`},Ge=[`placeholder`],Ke={class:`f-grid`},qe={class:`f`},Je=[`value`],Ye={key:0,class:`f-grid driver-form`},Xe={key:0},Ze=[`onUpdate:modelValue`],Qe=[`value`],$e=[`onUpdate:modelValue`,`type`,`placeholder`],et={key:2,class:`hint`},tt={class:`test-row`},nt=[`disabled`],rt={key:1,class:`m-err`},it={class:`m-actions`},at=[`disabled`,`title`],ot=Object.assign(c({__name:`DaqAddNodeModal`,props:_({templates:{},driverCatalog:{},driverReady:{type:Function}},{open:{type:Boolean,required:!0},openModifiers:{},form:{required:!0},formModifiers:{}}),emits:_([`test`,`submit`,`close`],[`update:open`,`update:form`]),setup(e,{emit:n}){let i=n,a=o(e,`open`),s=o(e,`form`);return(n,o)=>a.value?(l(),h(`div`,{key:0,class:`modal-mask`,onClick:o[9]||=w(e=>i(`close`),[`self`])},[m(`div`,Ie,[m(`h3`,Le,r(n.$t(`daq.k19rioqa024`)),1),m(`div`,Re,[m(`button`,{class:t([`seg`,{on:s.value.scenario===`mock`}]),onClick:o[0]||=e=>s.value.scenario=`mock`},r(n.$t(`daq.k1p5c1un025`)),3),m(`button`,{class:t([`seg`,{on:s.value.scenario===`real`}]),onClick:o[1]||=e=>s.value.scenario=`real`},r(n.$t(`daq.k1cbcp3o026`)),3)]),m(`div`,ze,[m(`label`,Be,[m(`span`,null,r(n.$t(`daq.k1fsgerc027`)),1),x(m(`select`,{"onUpdate:modelValue":o[2]||=e=>s.value.template=e,class:`inp`},[(l(!0),h(g,null,u(e.templates,e=>(l(),h(`option`,{key:e.key,value:e.key},r(e.name)+` · `+r(e.ch)+`(`+r(e.min)+`~`+r(e.max)+` `+r(e.unit)+`)`+r(e.builtin?``:n.$t(`daq.kr45rk9097`)),9,Ve))),128))],512),[[C,s.value.template]])]),m(`label`,He,[m(`span`,null,r(n.$t(`daq.k1ce2k1y028`)),1),x(m(`input`,{"onUpdate:modelValue":o[3]||=e=>s.value.name=e,class:`inp`,placeholder:n.$t(`daq.kgpxzy3005`)},null,8,Ue),[[T,s.value.name]])]),s.value.scenario===`real`?(l(),h(`label`,We,[m(`span`,null,r(n.$t(`daq.k13mfsfc029`)),1),x(m(`input`,{"onUpdate:modelValue":o[4]||=e=>s.value.interval=e,type:`number`,min:`1000`,max:`60000`,step:`500`,class:`inp`,placeholder:n.$t(`daq.k1eg1000a136`)},null,8,Ge),[[T,s.value.interval,void 0,{number:!0}]])])):v(``,!0)]),s.value.scenario===`real`?(l(),h(g,{key:0},[m(`div`,Ke,[m(`label`,qe,[m(`span`,null,r(n.$t(`daq.k1kt87rx030`)),1),x(m(`select`,{"onUpdate:modelValue":o[5]||=e=>s.value.driver=e,class:`inp`},[(l(!0),h(g,null,u(e.driverCatalog.filter(e=>e.status!==`planned`),t=>(l(),h(`option`,{key:t.kind,value:t.kind},r(t.label)+r(t.plugin?` ⌁`:``)+r(e.driverReady(t.kind)?``:n.$t(`daq.kjbqphp098`)),9,Je))),128))],512),[[C,s.value.driver]])])]),s.value.fields.length?(l(),h(`div`,Ye,[(l(!0),h(g,null,u(s.value.fields,e=>(l(),h(`label`,{key:e.key,class:`f`},[m(`span`,null,[S(r(e.label),1),e.required?(l(),h(`em`,Xe,`*`)):v(``,!0)]),e.type===`select`?x((l(),h(`select`,{key:0,"onUpdate:modelValue":t=>s.value.cfg[e.key]=t,class:`inp`},[(l(!0),h(g,null,u(e.options,e=>(l(),h(`option`,{key:e.value,value:e.value},r(e.label),9,Qe))),128))],8,Ze)),[[C,s.value.cfg[e.key]]]):x((l(),h(`input`,{key:1,"onUpdate:modelValue":t=>s.value.cfg[e.key]=t,type:e.type===`number`?`number`:`text`,placeholder:e.placeholder,class:`inp`},null,8,$e)),[[E,s.value.cfg[e.key]]]),e.hint?(l(),h(`small`,et,r(e.hint),1)):v(``,!0)]))),128))])):v(``,!0),m(`div`,tt,[m(`button`,{class:`pill-btn`,disabled:s.value.testing,onClick:o[6]||=e=>i(`test`)},r(s.value.testing?n.$t(`daq.k1fsh720099`):n.$t(`daq.k1fstglk112`)),9,nt),s.value.test?(l(),h(`span`,{key:0,class:t([`test-result`,s.value.test.ok?`ok`:`bad`])},[S(r(s.value.test.ok?`✓`:`✗`)+` `+r(s.value.test.message),1),s.value.test.latencyMs==null?v(``,!0):(l(),h(g,{key:0},[S(`(`+r(s.value.test.latencyMs)+`ms)`,1)],64))],2)):v(``,!0)])],64)):v(``,!0),s.value.error?(l(),h(`p`,rt,r(s.value.error),1)):v(``,!0),m(`div`,it,[m(`button`,{class:`aw-pill outline`,onClick:o[7]||=e=>i(`close`)},r(n.$t(`daq.k3xdnn031`)),1),m(`button`,{class:`aw-pill`,disabled:s.value.saving||s.value.scenario===`real`&&s.value.test!=null&&!s.value.test.ok,title:s.value.scenario===`real`&&!(s.value.test&&s.value.test.ok)?n.$t(`daq.k1needtst137`):``,onClick:o[8]||=e=>i(`submit`)},r(s.value.saving?n.$t(`daq.k1bg4759100`):s.value.scenario===`real`?n.$t(`daq.k7pxjxo113`):n.$t(`daq.k1bge46t118`)),9,at)])])])):v(``,!0)}}),{__name:`DaqAddNodeModal`}),st={class:`modal`},ct={class:`m-title`},lt={class:`sec-label`},ut={class:`tpl-table`},dt={class:`mono dim`},ft={class:`mono range`},pt={class:`right actions`},mt=[`onClick`],ht=[`onClick`],gt={key:0},_t={colspan:`3`,class:`empty`},vt={class:`sec-label`},yt={class:`f-grid`},bt={class:`f`},xt=[`placeholder`],St={class:`f`},Ct=[`placeholder`],wt={class:`f`},Tt=[`placeholder`],Et={class:`f`},Dt=[`placeholder`],Ot={class:`f`},kt={class:`f`},At={class:`f`},jt={class:`f`},Mt=[`value`],Nt={class:`f`},Pt={class:`hint`},Ft={class:`f`},It={class:`hint`},Lt={key:0,class:`m-err`},Rt={class:`m-actions`},zt=[`disabled`],Bt={class:`sec-label`},Vt={class:`tpl-table`},Ht={class:`mono dim`},Ut={class:`mono range`},Wt={class:`right actions`},Gt=[`onClick`],Kt=Object.assign(c({__name:`DaqTemplateModal`,props:_({customTpls:{},builtinTpls:{},iconChoices:{},iconLabels:{},editing:{},saving:{type:Boolean},error:{},confirmingDel:{}},{open:{type:Boolean,required:!0},openModifiers:{},form:{required:!0},formModifiers:{}}),emits:_([`edit`,`copy`,`remove`,`reset`,`save`,`close`],[`update:open`,`update:form`]),setup(e,{emit:t}){let n=t,i=o(e,`open`),a=o(e,`form`);return(t,o)=>i.value?(l(),h(`div`,{key:0,class:`modal-mask`,onClick:o[12]||=w(e=>n(`close`),[`self`])},[m(`div`,st,[m(`h3`,ct,r(t.$t(`daq.k11mv96s032`)),1),m(`p`,lt,r(t.$t(`daq.ktji4ky033`)),1),m(`table`,ut,[m(`tbody`,null,[(l(!0),h(g,null,u(e.customTpls,i=>(l(),h(`tr`,{key:i.key},[m(`td`,null,[m(`b`,null,r(i.name),1),m(`small`,dt,r(i.code),1)]),m(`td`,ft,r(i.min)+`~`+r(i.max)+` `+r(i.unit)+` · `+r(i.decimals)+` `+r(t.$t(`daq.k48oi091`)),1),m(`td`,pt,[m(`button`,{class:`mini-btn`,onClick:e=>n(`edit`,i)},r(t.$t(`daq.k45eb0034`)),9,mt),m(`button`,{class:`mini-btn danger`,onClick:e=>n(`remove`,i)},r(e.confirmingDel===i.key?t.$t(`daq.k1hhheu3101`):t.$t(`daq.k3xakp114`)),9,ht)])]))),128)),e.customTpls.length?v(``,!0):(l(),h(`tr`,gt,[m(`td`,_t,r(t.$t(`daq.kztvzbo035`)),1)]))])]),m(`p`,vt,r(e.editing?t.$t(`daq.k1iiph0s102`):t.$t(`daq.k1efixrj115`)),1),m(`div`,yt,[m(`label`,bt,[m(`span`,null,[S(r(t.$t(`daq.k3xhia036`)),1),o[13]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[0]||=e=>a.value.name=e,class:`inp`,placeholder:t.$t(`daq.k5opd2t006`)},null,8,xt),[[T,a.value.name]])]),m(`label`,St,[m(`span`,null,[S(r(t.$t(`daq.k3x4ef037`)),1),o[14]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[1]||=e=>a.value.unit=e,class:`inp`,placeholder:t.$t(`daq.unitPh`)},null,8,Ct),[[T,a.value.unit]])]),m(`label`,wt,[m(`span`,null,r(t.$t(`daq.k1l477m0038`)),1),x(m(`input`,{"onUpdate:modelValue":o[2]||=e=>a.value.ch=e,class:`inp`,placeholder:t.$t(`daq.kk8o4tl007`)},null,8,Tt),[[T,a.value.ch]])]),m(`label`,Et,[m(`span`,null,r(t.$t(`daq.k1ayxrqb039`)),1),x(m(`input`,{"onUpdate:modelValue":o[3]||=e=>a.value.code=e,class:`inp`,placeholder:t.$t(`daq.kzn3l7l008`)},null,8,Dt),[[T,a.value.code]])]),m(`label`,Ot,[m(`span`,null,[S(r(t.$t(`daq.k1l9jv5m040`)),1),o[15]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[4]||=e=>a.value.min=e,type:`number`,class:`inp`},null,512),[[T,a.value.min,void 0,{number:!0}]])]),m(`label`,kt,[m(`span`,null,[S(r(t.$t(`daq.k1l9jv4p041`)),1),o[16]||=m(`em`,null,`*`,-1)]),x(m(`input`,{"onUpdate:modelValue":o[5]||=e=>a.value.max=e,type:`number`,class:`inp`},null,512),[[T,a.value.max,void 0,{number:!0}]])]),m(`label`,At,[m(`span`,null,r(t.$t(`daq.k3mxmcx042`)),1),x(m(`input`,{"onUpdate:modelValue":o[6]||=e=>a.value.decimals=e,type:`number`,min:`0`,max:`4`,class:`inp`},null,512),[[T,a.value.decimals,void 0,{number:!0}]])]),m(`label`,jt,[m(`span`,null,r(t.$t(`daq.k3xx56043`)),1),x(m(`select`,{"onUpdate:modelValue":o[7]||=e=>a.value.icon=e,class:`inp`},[(l(!0),h(g,null,u(e.iconChoices,t=>(l(),h(`option`,{key:t,value:t},r(e.iconLabels[t]),9,Mt))),128))],512),[[C,a.value.icon]])]),m(`label`,Nt,[m(`span`,null,r(t.$t(`daq.k1f4eknv044`)),1),x(m(`input`,{"onUpdate:modelValue":o[8]||=e=>a.value.base=e,type:`number`,class:`inp`},null,512),[[T,a.value.base,void 0,{number:!0}]]),m(`small`,Pt,r(t.$t(`daq.kytd15s045`)),1)]),m(`label`,Ft,[m(`span`,null,r(t.$t(`daq.k1f4ifpo046`)),1),x(m(`input`,{"onUpdate:modelValue":o[9]||=e=>a.value.amp=e,type:`number`,class:`inp`},null,512),[[T,a.value.amp,void 0,{number:!0}]]),m(`small`,It,r(t.$t(`daq.ksp2aji047`)),1)])]),e.error?(l(),h(`p`,Lt,r(e.error),1)):v(``,!0),m(`div`,Rt,[m(`button`,{class:`aw-pill outline`,onClick:o[10]||=e=>n(`reset`)},r(t.$t(`daq.k48p40048`)),1),m(`button`,{class:`pill-btn`,disabled:e.saving,onClick:o[11]||=e=>n(`save`)},r(e.saving?t.$t(`daq.k1b38d59103`):e.editing?t.$t(`daq.k1b39281116`):t.$t(`daq.k1b3dtga119`)),9,zt)]),m(`p`,Bt,r(t.$t(`daq.k1w8s84s049`)),1),m(`table`,Vt,[m(`tbody`,null,[(l(!0),h(g,null,u(e.builtinTpls,e=>(l(),h(`tr`,{key:e.key},[m(`td`,null,[m(`b`,null,r(e.name),1),m(`small`,Ht,r(e.code),1)]),m(`td`,Ut,r(e.min)+`~`+r(e.max)+` `+r(e.unit)+` · `+r(e.decimals)+` `+r(t.$t(`daq.k48oi091`)),1),m(`td`,Wt,[m(`button`,{class:`mini-btn`,onClick:t=>n(`copy`,e)},r(t.$t(`daq.k3y694050`)),9,Gt)])]))),128))])])])])):v(``,!0)}}),{__name:`DaqTemplateModal`}),qt={class:`aw-tile opt-card`},Jt={class:`opt-count mono`},Yt={class:`opt-filters`},Xt=[`value`],Zt={value:``},Qt=[`value`],$t=[`value`],en={value:``},tn=[`value`],nn={key:0,class:`opt-empty`},rn={class:`opt-list`},an={class:`opt-line1`},on={class:`opt-node`},sn={class:`mono opt-params`},cn={class:`mono opt-time`},ln=[`disabled`,`onClick`],un=[`onClick`],dn={class:`opt-line2 mono`},fn={key:1,class:`opt-open-hint`},pn={key:2,class:`opt-agg`},mn={key:3,class:`opt-agg`},hn={key:0,class:`opt-series`},gn={class:`opt-spark`,viewBox:`0 0 240 36`,preserveAspectRatio:`none`},_n=[`points`],vn={class:`mono`},yn={key:0,class:`opt-empty`},bn=Object.assign(c({__name:`DaqOptPanel`,props:{optimizations:{},lines:{},open:{type:Boolean},mounted:{type:Boolean},filterLine:{},filterRecipe:{},recipeOptions:{},seriesOf:{},seriesLoading:{},statusKey:{type:Function},seriesPath:{type:Function},fmtPoint:{type:Function}},emits:[`toggle`,`selectLine`,`selectRecipe`,`line-change`,`filter`,`series`,`rollback`],setup(e,{emit:n}){let i=n;function a(e){i(`selectLine`,e.target.value),i(`line-change`)}function o(e){i(`selectRecipe`,e.target.value),i(`filter`)}return(n,s)=>(l(),h(`section`,qt,[m(`button`,{class:`opt-head`,onClick:s[0]||=e=>i(`toggle`)},[s[2]||=m(`span`,{class:`i-tabler-flask`},null,-1),m(`b`,null,r(n.$t(`daq.k1optt001`)),1),m(`span`,Jt,r(e.optimizations.length),1),m(`span`,{class:t([`opt-chevron`,{open:e.open}])},null,2)]),m(`div`,{class:t([`opt-body`,{open:e.open}])},[e.mounted?(l(),h(g,{key:0},[m(`div`,Yt,[m(`select`,{value:e.filterLine,class:`inp-sel`,onChange:a},[m(`option`,Zt,r(n.$t(`daq.k1optf001`)),1),(l(!0),h(g,null,u(e.lines,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,Qt))),128))],40,Xt),m(`select`,{value:e.filterRecipe,class:`inp-sel`,onChange:o},[m(`option`,en,r(n.$t(`daq.k1optf004`)),1),(l(!0),h(g,null,u(e.recipeOptions,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,tn))),128))],40,$t),m(`button`,{class:`mini-act`,onClick:s[1]||=e=>i(`filter`)},r(n.$t(`daq.k1optf002`)),1)]),e.optimizations.length===0?(l(),h(`p`,nn,r(n.$t(`daq.k1opte001`)),1)):v(``,!0),m(`ul`,rn,[(l(!0),h(g,null,u(e.optimizations.slice(0,30),a=>(l(),h(`li`,{key:a.id,class:t([`opt-row`,a.status])},[m(`div`,an,[m(`span`,{class:t([`opt-status`,a.status])},r(n.$t(e.statusKey(a.status))),3),m(`b`,on,r(a.nodeName),1),m(`span`,sn,r(a.params[0]?.from??`?`)+` → `+r(a.params[0]?.to),1),m(`span`,cn,r(a.setAt.slice(5,16).replace(`T`,` `)),1),e.seriesOf[a.id]?v(``,!0):(l(),h(`button`,{key:0,class:`mini-act`,disabled:e.seriesLoading===a.id,onClick:e=>i(`series`,a.id)},r(n.$t(`daq.k1opta001`)),9,ln)),a.status===`open`?(l(),h(`button`,{key:1,class:`mini-act danger`,onClick:e=>i(`rollback`,a.id)},r(n.$t(`daq.k1opta002`)),9,un)):v(``,!0)]),m(`div`,dn,[a.judge?(l(),h(`span`,{key:0,class:t([`opt-judge`,a.judge.verdict])},r(a.judge.verdict)+`(`+r(a.judge.by)+`): `+r(a.judge.reason.slice(0,70)),3)):a.status===`open`?(l(),h(`span`,fn,r(n.$t(`daq.k1opto001`)),1)):v(``,!0),a.aggPending?(l(),h(`span`,pn,r(n.$t(`daq.k1optw001`)),1)):a.windowAgg&&a.windowAgg.channels.length?(l(),h(`span`,mn,[(l(!0),h(g,null,u(a.windowAgg.channels,t=>(l(),h(g,{key:t.daqNodeId},[S(r(t.ch)+` `+r(e.fmtPoint(t.min))+`~`+r(e.fmtPoint(t.max))+`(`+r(n.$t(`daq.k1optw002`))+r(t.breaches<0?`-`:t.breaches)+`) `,1)],64))),128))])):v(``,!0)]),e.seriesOf[a.id]?(l(),h(`div`,hn,[(l(!0),h(g,null,u(e.seriesOf[a.id]?.channels??[],t=>(l(),h(`div`,{key:t.nodeId,class:`opt-ch`},[(l(),h(`svg`,gn,[m(`polyline`,{points:e.seriesPath(t.points)},null,8,_n)])),m(`span`,vn,r(t.ch)+` `+r(e.fmtPoint(t.points.at(-1)?.value??t.points.at(-1)?.avg))+r(t.unit),1)]))),128)),(e.seriesOf[a.id]?.channels.length??0)===0?(l(),h(`p`,yn,r(n.$t(`daq.k1opte002`)),1)):v(``,!0)])):v(``,!0)],2))),128))])],64)):v(``,!0)],2)]))}}),{__name:`DaqOptPanel`}),xn={class:`mono dim`},Sn={class:`mono ch`},Cn=[`title`],wn=[`title`],Tn={class:`trend-cell`},En=[`title`],Dn=[`y1`,`y2`],On=[`y1`,`y2`],kn=[`points`],An=[`y1`,`y2`],jn={class:`mono`},Mn={class:`mono`},Nn=[`title`],Pn=[`title`],Fn=[`value`,`title`],In={value:``},Ln=[`value`],Rn=[`title`],zn={key:1,class:`run-pill na`},Bn={class:`prod-cell`},Vn=[`title`],Hn=[`title`],Un={key:1,class:`dim`},Wn={class:`dev-binds`},Gn=[`title`],Kn=[`onClick`],qn=[`title`],Jn={value:``},Yn=[`value`,`disabled`],Xn={class:`right`},Zn=[`title`],Qn=120,$=26,$n=Object.assign(M(c({__name:`DaqNodeRow`,props:{n:{}},setup(n){let i=n,{t:a}=k(),o=ne(),s=I(),c=re();function p(e){if(!e.lastAt)return!0;let t=e.intervalMs??o.controller.defaultIntervalMs;return Date.now()-Date.parse(e.lastAt)>Math.max(t*4,12e3)}function _(e){return e.enabled?e.lineId?s.lineStateOf(e.lineId).active?!o.controller.running||p(e)?`offline`:e.state:`idle`:`unassigned`:`disabled`}function b(e){let t=_(e);return t===`ok`||t===`warn`||t===`alarm`}function x(e){if(!e.lineId)return null;let t=s.lineStateOf(e.lineId);return!t.active||!t.recipeId?null:s.recipes.find(e=>e.id===t.recipeId)?.daqWindows?.find(t=>t.nodeId===e.id)??null}function C(e){let t=x(e);return!t||e.value==null?!1:t.min!=null&&e.value<t.min||t.max!=null&&e.value>t.max}function w(e){let t=x(e);return t&&(t.min!=null||t.max!=null)?{min:t.min,max:t.max}:e.warnLow!=null||e.warnHigh!=null?{min:e.warnLow,max:e.warnHigh}:{min:null,max:null}}function T(e){let t=e.filter(Number.isFinite);if(t.length<2)return``;let n=Math.min(...t),r=Math.max(...t)-n||1;return t.map((e,i)=>`${(i/(t.length-1)*Qn).toFixed(1)},${($-(e-n)/r*24-1).toFixed(1)}`).join(` `)}function E(e,t){if(t==null||!Number.isFinite(t))return null;let n=e.filter(Number.isFinite);if(n.length<2)return null;let r=Math.min(...n,t),i=Math.max(...n,t)-r||1;return Number(($-(t-r)/i*24-1).toFixed(1))}function D(e){let t=_(e),n=a(`daq.k44c2n065`);if(t===`offline`)return e.lastError?{key:t,label:n,tip:e.lastError}:{key:t,label:n,tip:o.controller.running?a(`daq.k1staled129`,{p0:Math.round(Math.max((e.intervalMs??o.controller.defaultIntervalMs)*4,12e3)/1e3)}):a(`daq.k1gateoff140`)};let r={ok:a(`daq.k41k5c062`),warn:a(`daq.k49z8v063`),alarm:a(`daq.k3xmid064`),offline:n,idle:a(`daq.k3ozyqz117`),disabled:a(`daq.k1disabl130`),unassigned:a(`daq.k3ootr6053`)};if(t===`idle`)return{key:t,label:r.idle,tip:a(`daq.k1idlehin139`)};if((t===`ok`||t===`warn`||t===`alarm`)&&C(e)){let t=x(e);return{key:`alarm`,label:a(`daq.k1l3pt51104`),tip:a(`daq.k1hrrqa1122`,{p0:t?.min??`-∞`,p1:t?.max??`+∞`,p2:``})}}return{key:t,label:r[t],tip:``}}function j(e){let t=o.templates.find(t=>t.key===F(e));return t?`${t.name} · ${t.ch}`:e||`-`}let M=e=>o.templates.find(t=>t.key===F(e))?.signalKind??`scalar`,ee=e=>e===`vector`?`向量`:e===`image`?`图像`:`标量`,te=e=>e==null?a(`daq.k9vnp9h124`,{p0:o.controller.defaultIntervalMs}):`${e}ms`,P=e=>e==null?a(`daq.k9vnp9h124`,{p0:o.controller.defaultPublishIntervalMs}):e===0?a(`daq.k41mvv078`):`${e}ms`,L=e=>o.meta.drivers.find(t=>t.kind===e)?.status===`planned`,ie=e=>e.deviceIds??(e.deviceBindingId?[e.deviceBindingId]:[]),R=e=>c.twins.find(t=>t.id===e)?.name??e,ae=f(()=>c.twins.filter(e=>e.kind!==`daq`&&!(e.modelRef??``).startsWith(`daq-`)&&!(e.modelRef??``).startsWith(`dcw-`))),z=f(()=>{let e=i.n,t=w(e),n=e.lineId?s.lineStateOf(e.lineId):null;return{tpl:j(e.templateRef),pill:D(e),alarm:C(e),live:b(e),trend:T(e.hist),limMin:E(e.hist,t.min),limMax:E(e.hist,t.max),interval:te(e.intervalMs),publish:P(e.publishIntervalMs),lineActive:!!n?.active,lineProduct:n?.productName??``,lineRecipe:n?.recipeName??``}});async function oe(){let e=i.n,t=!e.enabled;try{await o.patchNode(e.id,{enabled:t}),e.enabled=t,t||(e.state=`offline`),A.success(a(t?`daq.k1nodestart147`:`daq.k1nodestop146`))}catch(e){A.error(N(e))}}async function se(e){let t=e.target.value;try{await o.patchNode(i.n.id,{lineId:t});let e=i.n;e.lineId=t}catch(e){A.error(N(e))}}async function B(e){let t=e.target.value;if(!t)return;let n=i.n;if(!n.deviceIds?.includes(t)){try{await o.setNodeBindings(n.id,[...n.deviceIds??[],t])}catch(e){A.error(N(e))}e.target.value=``}}async function V(e){let t=i.n;try{await o.setNodeBindings(t.id,(t.deviceIds??[]).filter(t=>t!==e))}catch(e){A.error(N(e))}}return(i,a)=>{let o=O;return l(),h(`tr`,{class:t({"row-recipe-alarm":z.value.alarm})},[m(`td`,null,[m(`span`,xn,r(n.n.id.slice(0,8)),1),m(`b`,null,r(n.n.name),1),m(`small`,Sn,r(z.value.tpl),1)]),m(`td`,null,[m(`span`,{class:t([`st-pill`,[z.value.pill.key]]),title:z.value.pill.tip},r(z.value.pill.label),11,Cn)]),m(`td`,{class:t([`mono val`,{stale:!z.value.live,"val-alarm":n.n.state===`alarm`||z.value.alarm}]),title:z.value.live?void 0:z.value.pill.tip},[S(r(n.n.value==null?`--`:n.n.value.toFixed(n.n.decimals))+` `,1),m(`small`,null,r(n.n.unit),1)],10,wn),m(`td`,Tn,[(l(),h(`svg`,{class:`trend`,viewBox:`0 0 120 26`,preserveAspectRatio:`none`,title:i.$t(`daq.k1trnd002`)},[z.value.limMin==null?v(``,!0):(l(),h(`line`,{key:0,class:`lim`,x1:`0`,y1:z.value.limMin,x2:`120`,y2:z.value.limMin},null,8,Dn)),z.value.limMax==null?v(``,!0):(l(),h(`line`,{key:1,class:`lim max`,x1:`0`,y1:z.value.limMax,x2:`120`,y2:z.value.limMax},null,8,On)),z.value.trend?(l(),h(`polyline`,{key:2,class:t([`trace`,{alarm:n.n.state===`alarm`||z.value.alarm}]),points:z.value.trend},null,10,kn)):(l(),h(`line`,{key:3,class:`trace-idle`,x1:`0`,y1:$/2,x2:`120`,y2:$/2},null,8,An))],8,En))]),m(`td`,jn,r(z.value.interval),1),m(`td`,Mn,r(z.value.publish),1),m(`td`,null,[m(`span`,{class:t([`drv-tag`,{planned:L(n.n.driver)}]),title:L(n.n.driver)?i.$t(`daq.k1plndrv138`):``},r(n.n.driver),11,Nn),M(n.n.templateRef)===`scalar`?v(``,!0):(l(),h(`span`,{key:0,class:t([`sig-tag`,M(n.n.templateRef)]),title:M(n.n.templateRef)===`image`?`图像帧节点:像素入对象存储,帧列表/画廊可查,daq_export 落原文件`:`向量帧节点:多点轮廓,daq_frames 检索`},r(ee(M(n.n.templateRef))),11,Pn))]),m(`td`,null,[m(`select`,{class:`line-sel`,value:n.n.lineId,title:i.$t(`daq.k3q23v3010`),onChange:se},[m(`option`,In,r(i.$t(`daq.k3ootr6053`)),1),(l(!0),h(g,null,u(e(s).lines,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,Ln))),128))],40,Fn)]),m(`td`,null,[n.n.lineId?(l(),h(`span`,{key:0,class:t([`run-pill`,{on:z.value.lineActive}]),title:i.$t(`daq.k1runtipc131`)},[a[0]||=m(`span`,{class:`rp-dot`},null,-1),S(` `+r(z.value.lineActive?i.$t(`daq.k3vp67i096`):i.$t(`daq.k3ozyqz117`)),1)],10,Rn)):(l(),h(`span`,zn,r(i.$t(`daq.k3ootr6053`)),1))]),m(`td`,Bn,[n.n.lineId&&z.value.lineActive?(l(),h(g,{key:0},[m(`b`,{title:i.$t(`daq.k1prdrtip132`)},r(z.value.lineProduct||`--`),9,Vn),m(`small`,{class:`mono`,title:i.$t(`daq.k1prdrtip132`)},r(z.value.lineRecipe||`--`),9,Hn)],64)):(l(),h(`span`,Un,`--`))]),m(`td`,null,[m(`div`,Wn,[(l(!0),h(g,null,u(ie(n.n),e=>(l(),h(`span`,{key:e,class:`dev-bind-chip`,title:i.$t(`daq.k2bindtip137`)},[S(r(R(e))+` `,1),m(`span`,{class:`dev-unbind`,title:`unbind`,onClick:t=>V(e)},`✕`,8,Kn)],8,Gn))),128)),m(`select`,{class:`line-sel dev-add`,value:``,title:i.$t(`daq.k2bindtip137`),onChange:B},[m(`option`,Jn,r(i.$t(`daq.k3own4q056`)),1),(l(!0),h(g,null,u(ae.value,e=>(l(),h(`option`,{key:e.id,value:e.id,disabled:(n.n.deviceIds??[]).includes(e.id)},r(R(e.id)),9,Yn))),128))],40,qn)])]),m(`td`,Xn,[m(`button`,{class:t([`node-toggle`,{off:!n.n.enabled}]),title:n.n.enabled?i.$t(`daq.k1nodestop146`):i.$t(`daq.k1nodestart147`),onClick:oe},[m(`span`,{class:t(n.n.enabled?`i-tabler-player-pause`:`i-tabler-player-play`)},null,2),S(` `+r(n.n.enabled?i.$t(`daq.k1nodestop146`):i.$t(`daq.k1nodestart147`)),1)],10,Zn),d(o,{class:`console-link`,to:`/daq/${n.n.id}`},{default:y(()=>[a[1]||=m(`span`,{class:`i-tabler-dashboard`},null,-1),S(` `+r(i.$t(`daq.k3o3jg2074`)),1)]),_:1},8,[`to`])])],2)}}}),[[`__scopeId`,`data-v-fdef4416`]]),{__name:`WorkshopDaqNodeRow`}),er={class:`aw-tile table-card`},tr={class:`tbl-toolbar`},nr={class:`filters`},rr={class:`flt`},ir={value:``},ar=[`value`],or={value:`none`},sr={class:`flt`},cr={value:``},lr=[`value`],ur={value:`none`},dr=[`title`],fr={value:``},pr={value:`on`},mr={value:`off`},hr={class:`flt`},gr={value:``},_r={value:`ok`},vr={value:`warn`},yr={value:`alarm`},br={value:`offline`},xr={class:`flt`},Sr={value:``},Cr=[`value`],wr={class:`flt`},Tr={value:``},Er=[`value`],Dr=[`title`],Or={value:``},kr={value:`live`},Ar={value:`hour`},jr={value:`day`},Mr={value:`old`},Nr={value:`never`},Pr={class:`flt`},Fr=[`placeholder`],Ir={class:`count mono`},Lr={class:`ops-panels`},Rr={class:`panel-head`},zr={class:`panel-body`},Br={key:0,class:`panel-empty`},Vr={class:`mono dim`},Hr={class:`mono`},Ur={key:0,class:`esc mono`},Wr=[`onClick`],Gr={class:`ops-panel event-panel`},Kr={class:`panel-head`},qr={class:`panel-body`},Jr={key:0,class:`panel-empty`},Yr={class:`mono dim t`},Xr=[`title`],Zr=[`title`],Qr=[`title`],$r={class:`right`},ei={key:0,class:`vs-pad`,"aria-hidden":`true`},ti={key:1,class:`vs-pad`,"aria-hidden":`true`},ni={key:2},ri={colspan:`11`},ii={class:`pane-empty`,style:{"min-height":`120px`}},ai={class:`pe-sub`},oi={key:3},si={colspan:`11`},ci={class:`pane-empty`,style:{"min-height":`90px`}},li={class:`pe-sub`},ui=Object.assign(c({__name:`DaqNodePanel`,props:_({hasFilters:{type:Boolean},lines:{},boundDevices:{},templateOptions:{},driverOptions:{},filteredCount:{},totalCount:{},opsRecent:{},opsKindLabel:{type:Function},opsTime:{type:Function},alarms:{},visibleNodes:{},padTopPx:{},padBottomPx:{},loading:{type:Boolean},loaded:{type:Boolean},error:{}},{filters:{required:!0},filtersModifiers:{},tableEl:{required:!0},tableElModifiers:{}}),emits:_([`clear-filters`,`ack`],[`update:filters`,`update:tableEl`]),setup(e,{emit:i}){let a=i,s=o(e,`filters`),c=o(e,`tableEl`);return(i,o)=>{let f=O,p=$n,_=j;return l(),b(_,{spinning:e.loading},{default:y(()=>[m(`section`,er,[m(`div`,tr,[m(`div`,nr,[m(`label`,rr,[m(`span`,null,r(i.$t(`daq.k3wj9n051`)),1),x(m(`select`,{"onUpdate:modelValue":o[0]||=e=>s.value.lineId=e,class:`inp-sel`},[m(`option`,ir,r(i.$t(`daq.k1bkl9uj052`)),1),(l(!0),h(g,null,u(e.lines,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name),9,ar))),128)),m(`option`,or,r(i.$t(`daq.k3ootr6053`)),1)],512),[[C,s.value.lineId]])]),m(`label`,sr,[m(`span`,null,r(i.$t(`daq.k1i8rtqt054`)),1),x(m(`select`,{"onUpdate:modelValue":o[1]||=e=>s.value.deviceId=e,class:`inp-sel`},[m(`option`,cr,r(i.$t(`daq.k1bkw4m2055`)),1),(l(!0),h(g,null,u(e.boundDevices,e=>(l(),h(`option`,{key:e.id,value:e.id},r(e.name)+`(`+r(e.count)+`) `,9,lr))),128)),m(`option`,ur,r(i.$t(`daq.k3own4q056`)),1)],512),[[C,s.value.deviceId]])]),m(`label`,{class:`flt`,title:i.$t(`daq.khb8mru009`)},[m(`span`,null,r(i.$t(`daq.k1b2tkyv057`)),1),x(m(`select`,{"onUpdate:modelValue":o[2]||=e=>s.value.lineRun=e,class:`inp-sel`},[m(`option`,fr,r(i.$t(`daq.k3x4t1058`)),1),m(`option`,pr,r(i.$t(`daq.k1nxm3p7059`)),1),m(`option`,mr,r(i.$t(`daq.k1ulx34e060`)),1)],512),[[C,s.value.lineRun]])],8,dr),m(`label`,hr,[m(`span`,null,r(i.$t(`daq.k1iwdfef061`)),1),x(m(`select`,{"onUpdate:modelValue":o[3]||=e=>s.value.state=e,class:`inp-sel`},[m(`option`,gr,r(i.$t(`daq.k3x4t1058`)),1),m(`option`,_r,r(i.$t(`daq.k41k5c062`)),1),m(`option`,vr,r(i.$t(`daq.k49z8v063`)),1),m(`option`,yr,r(i.$t(`daq.k3xmid064`)),1),m(`option`,br,r(i.$t(`daq.k44c2n065`)),1)],512),[[C,s.value.state]])]),m(`label`,xr,[m(`span`,null,r(i.$t(`daq.k1flttpl010`)),1),x(m(`select`,{"onUpdate:modelValue":o[4]||=e=>s.value.template=e,class:`inp-sel`},[m(`option`,Sr,r(i.$t(`daq.k1flttpl011`)),1),(l(!0),h(g,null,u(e.templateOptions,e=>(l(),h(`option`,{key:e.ref,value:e.ref},r(e.label)+`(`+r(e.count)+`) `,9,Cr))),128))],512),[[C,s.value.template]])]),m(`label`,wr,[m(`span`,null,r(i.$t(`daq.k1fltdrv012`)),1),x(m(`select`,{"onUpdate:modelValue":o[5]||=e=>s.value.driver=e,class:`inp-sel`},[m(`option`,Tr,r(i.$t(`daq.k1fltdrv013`)),1),(l(!0),h(g,null,u(e.driverOptions,e=>(l(),h(`option`,{key:e.kind,value:e.kind},r(e.label)+`(`+r(e.count)+`) `,9,Er))),128))],512),[[C,s.value.driver]])]),m(`label`,{class:`flt`,title:i.$t(`daq.k1flttim014`)},[m(`span`,null,r(i.$t(`daq.k1flttim015`)),1),x(m(`select`,{"onUpdate:modelValue":o[6]||=e=>s.value.time=e,class:`inp-sel`},[m(`option`,Or,r(i.$t(`daq.k1flttim016`)),1),m(`option`,kr,r(i.$t(`daq.k1timlv017`)),1),m(`option`,Ar,r(i.$t(`daq.k1timhr018`)),1),m(`option`,jr,r(i.$t(`daq.k1timdy019`)),1),m(`option`,Mr,r(i.$t(`daq.k1timld020`)),1),m(`option`,Nr,r(i.$t(`daq.k1timnv021`)),1)],512),[[C,s.value.time]])],8,Dr),m(`label`,Pr,[m(`span`,null,r(i.$t(`daq.k1fltsrc022`)),1),x(m(`input`,{"onUpdate:modelValue":o[7]||=e=>s.value.search=e,class:`inp-sel flt-search`,type:`search`,placeholder:i.$t(`daq.k1fltsph023`)},null,8,Fr),[[T,s.value.search]])]),e.hasFilters?(l(),h(`button`,{key:0,class:`mini-btn clear-btn`,onClick:o[8]||=e=>a(`clear-filters`)},r(i.$t(`daq.k1fygck2066`)),1)):v(``,!0)]),m(`span`,Ir,r(e.filteredCount)+` / `+r(e.totalCount)+` `+r(i.$t(`daq.k45uio067`)),1)]),m(`div`,Lr,[m(`div`,{class:t([`ops-panel alarm-panel`,{live:e.alarms.length>0}])},[m(`div`,Rr,[o[9]||=m(`span`,{class:`i-tabler-bell-ringing bell`},null,-1),m(`b`,null,r(i.$t(`daq.k1alarm141`)),1),m(`span`,{class:t([`mono cnt`,{hot:e.alarms.length>0}])},r(e.alarms.length),3)]),m(`div`,zr,[e.alarms.length===0?(l(),h(`p`,Br,r(i.$t(`daq.k1evt001`)),1)):(l(!0),h(g,{key:1},u(e.alarms,e=>(l(),h(`div`,{key:e.id,class:`alarm-row`},[o[10]||=m(`span`,{class:`i-tabler-alert-triangle tri`},null,-1),m(`b`,null,r(e.nodeName),1),m(`span`,Vr,r(e.metric),1),m(`span`,Hr,r(e.value)+` `+r(e.rule===`lt-min`?`<`:`>`)+` `+r(e.threshold),1),e.escalation>0?(l(),h(`small`,Ur,`+`+r(e.escalation),1)):v(``,!0),m(`button`,{class:`mini-btn ack`,onClick:t=>a(`ack`,e.id)},r(i.$t(`daq.k1ack142`)),9,Wr)]))),128))])],2),m(`div`,Gr,[m(`div`,Kr,[o[12]||=m(`span`,{class:`i-tabler-activity`},null,-1),m(`b`,null,r(i.$t(`daq.k1evt002`)),1),d(f,{class:`panel-link`,to:`/logs`},{default:y(()=>[S(r(i.$t(`daq.k1evt003`)),1),o[11]||=m(`span`,{class:`i-tabler-arrow-right`},null,-1)]),_:1})]),m(`div`,qr,[e.opsRecent.length===0?(l(),h(`p`,Jr,r(i.$t(`daq.k1evt004`)),1)):(l(!0),h(g,{key:1},u(e.opsRecent,(n,a)=>(l(),h(`div`,{key:`${n.at}:${n.actor}:${n.action}:${a}`,class:`evt-row`},[m(`span`,Yr,r(e.opsTime(n.at)),1),m(`span`,{class:t([`src-badge`,n.actorKind])},r(n.actorKind===`agent`?`Agent`:n.actorKind===`user`?i.$t(`logs.src.user`):i.$t(`logs.src.system`)),3),m(`span`,{class:t([`kind-chip`,n.kind])},r(e.opsKindLabel(n.kind)),3),m(`span`,{class:`txt`,title:n.summary},r(n.summary),9,Xr)]))),128))])])]),m(`table`,{ref_key:`tableEl`,ref:c,class:`nodes-table`},[m(`thead`,null,[m(`tr`,null,[m(`th`,null,r(i.$t(`daq.k45uio067`)),1),m(`th`,null,r(i.$t(`daq.k42w8s068`)),1),m(`th`,null,r(i.$t(`daq.k3mv305069`)),1),m(`th`,null,r(i.$t(`daq.k1trnd001`)),1),m(`th`,null,r(i.$t(`daq.k1l6g2ga070`)),1),m(`th`,null,r(i.$t(`daq.k3zi0nf071`)),1),m(`th`,null,r(i.$t(`daq.k4a0la072`)),1),m(`th`,null,r(i.$t(`daq.k3wj9n051`)),1),m(`th`,{title:i.$t(`daq.k1runtipc131`)},r(i.$t(`daq.k1b2tkyv057`)),9,Zr),m(`th`,{title:i.$t(`daq.k1prdrtip132`)},r(i.$t(`daq.k1prodrc128`)),9,Qr),m(`th`,null,r(i.$t(`daq.k1i8rtqt054`)),1),m(`th`,$r,r(i.$t(`daq.k40aa6073`)),1)])]),m(`tbody`,null,[e.padTopPx>0?(l(),h(`tr`,ei,[m(`td`,{colspan:11,style:n({height:e.padTopPx+`px`})},null,4)])):v(``,!0),(l(!0),h(g,null,u(e.visibleNodes,e=>(l(),b(p,{key:e.id,n:e},null,8,[`n`]))),128)),e.padBottomPx>0?(l(),h(`tr`,ti,[m(`td`,{colspan:11,style:n({height:e.padBottomPx+`px`})},null,4)])):v(``,!0),e.loaded&&e.totalCount===0?(l(),h(`tr`,ni,[m(`td`,ri,[m(`div`,ii,[m(`p`,ai,r(i.$t(`daq.kvhjyc3075`)),1)])])])):e.loaded&&e.filteredCount===0?(l(),h(`tr`,oi,[m(`td`,si,[m(`div`,ci,[m(`p`,li,r(i.$t(`daq.k1w20qew076`)),1)])])])):v(``,!0)])],512)])]),_:1},8,[`spinning`])}}}),{__name:`DaqNodePanel`}),di={class:`page`},fi={class:`aw-page-head`},pi={class:`sub`},mi={class:`badges mono`},hi=[`title`],gi=[`title`],_i={key:0,class:`err`},vi=c({__name:`index`,setup(t){let{t:n}=k();te({layout:`default`}),D({title:()=>n(`titles.daq`)});let o=ne(),c=I(),u=ee(),g=f(()=>c.lines.some(e=>c.lineStateOf(e.id).active)),_=V();function b(e){return{write:n(`logs.kind.write`),manual:n(`logs.kind.manual`),alarm:n(`logs.kind.alarm`),line:n(`logs.kind.line`),recipe:n(`logs.kind.recipe`),rollback:n(`logs.kind.rollback`),daq:n(`logs.kind.daq`),system:n(`logs.kind.system`)}[e]??(e||n(`logs.kind.system`))}function x(e){let t=new Date(e);return Number.isFinite(t.getTime())?`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}`:``}async function C(e){try{await o.ackAlarm(e),A.success(n(`daq.k1acked144`))}catch(e){A.error(N(e))}}let w=null;s(()=>{u.ensureConnected(),w=o.ensureWsFeed(),_.ensureLive(),o.load(),o.fetchAlarms(),c.load(),K.load(),c.loadOptimizations(),P(()=>{o.load(),o.fetchAlarms()},5e3,{bgMs:3e4}),P(()=>{c.load()},15e3,{bgMs:6e4})}),a(()=>{w?.()});let{filters:T,hasFilters:E,clearFilters:j,templateOptions:M,driverOptions:F,boundDevices:H,filteredNodes:U,filteredLine:W,filteredLineState:G}=R(),K=re(),{driverCatalog:q,driverReady:le}=ie(),{reconnecting:de,doReconnect:fe}=ae();function pe(e,t){o.controllerAction(`config`,e,t)}let{nodesTableRef:J,visibleNodes:Y,padTopPx:me,padBottomPx:he,resetToTop:ge}=z(U);p(()=>U.value.length,()=>{ge()});let X=L(q,n),Z=se(n),ve=B(n),Q=oe();return(t,n)=>{let a=ce,s=ue,u=_e,f=Fe,p=ot,w=Kt,D=bn,k=ui,A=O;return l(),h(`div`,di,[m(`div`,fi,[m(`div`,null,[n[13]||=m(`p`,{class:`aw-kicker`},` AGENTWORKSHOP / DAQ CONSOLE `,-1),m(`h1`,null,r(t.$t(`daq.k1emg364011`)),1),m(`p`,pi,r(t.$t(`daq.k1wmg2bz012`)),1)]),m(`div`,mi,[m(`span`,{class:`badge`,title:t.$t(`daq.k1tsdbtip133`)},`TSDB · `+r(e(o).meta.tsdb),9,hi),m(`span`,{class:`badge`,title:t.$t(`daq.k1queuet134`)},`QUEUE · `+r(e(o).meta.queue),9,gi)])]),d(a,{loaded:e(o).loaded,"filtered-line":e(W),"filtered-line-state":e(G),"any-line-active":g.value},null,8,[`loaded`,`filtered-line`,`filtered-line-state`,`any-line-active`]),d(s,{infra:e(o).meta.infra,reconnecting:e(de),onReconnect:e(fe)},null,8,[`infra`,`reconnecting`,`onReconnect`]),d(u,{alarms:e(o).alarms,onAck:C},null,8,[`alarms`]),d(f,{controller:e(o).controller,"onUpdate:controller":n[0]||=t=>e(o).controller=t,meta:e(o).meta,lines:e(c).lines,"line-state-of":t=>e(c).lineStateOf(t),onAction:n[1]||=t=>e(o).controllerAction(t),onConfig:pe,onOpenAdd:n[2]||=t=>e(X).open.value=!0,onOpenTemplates:n[3]||=t=>{e(Z).tplOpen.value=!0,e(Z).resetTplForm()}},null,8,[`controller`,`meta`,`lines`,`line-state-of`]),d(p,{open:e(X).open.value,"onUpdate:open":n[4]||=t=>e(X).open.value=t,form:e(X).form,"onUpdate:form":n[5]||=t=>e(X).form=t,templates:e(o).templates,"driver-catalog":e(q),"driver-ready":e(le),onTest:e(X).doTestConnection,onSubmit:e(X).doAddNode,onClose:n[6]||=t=>e(X).open.value=!1},null,8,[`open`,`form`,`templates`,`driver-catalog`,`driver-ready`,`onTest`,`onSubmit`]),d(w,{open:e(Z).tplOpen.value,"onUpdate:open":n[7]||=t=>e(Z).tplOpen.value=t,form:e(Z).tplForm.value,"onUpdate:form":n[8]||=t=>e(Z).tplForm.value=t,"custom-tpls":e(Z).customTpls.value,"builtin-tpls":e(Z).builtinTpls.value,"icon-choices":e(Z).iconChoices,"icon-labels":e(ve),editing:e(Z).tplEditing.value,saving:e(Z).tplSaving.value,error:e(Z).tplError.value,"confirming-del":e(Z).confirmingDel.value,onEdit:e(Z).editTpl,onCopy:e(Z).copyTpl,onRemove:e(Z).askDelTpl,onReset:e(Z).resetTplForm,onSave:e(Z).saveTpl},null,8,[`open`,`form`,`custom-tpls`,`builtin-tpls`,`icon-choices`,`icon-labels`,`editing`,`saving`,`error`,`confirming-del`,`onEdit`,`onCopy`,`onRemove`,`onReset`,`onSave`]),d(D,{optimizations:e(c).optimizations,lines:e(c).lines,open:e(Q).optOpen.value,mounted:e(Q).optMounted.value,"filter-line":e(Q).optFilterLine.value,"filter-recipe":e(Q).optFilterRecipe.value,"recipe-options":e(Q).optRecipeOptions.value,"series-of":e(Q).optSeriesOf.value,"series-loading":e(Q).optSeriesLoading.value,"status-key":e(Q).optStatusKey,"series-path":e(Q).seriesPath,"fmt-point":e(Q).fmtPoint,onToggle:e(Q).toggleOptPanel,onSelectLine:n[9]||=t=>e(Q).optFilterLine.value=t,onSelectRecipe:n[10]||=t=>e(Q).optFilterRecipe.value=t,onLineChange:e(Q).onOptLineChange,onFilter:e(Q).filterOpts,onSeries:e(Q).showOptSeries,onRollback:e(Q).rollbackRecord},null,8,[`optimizations`,`lines`,`open`,`mounted`,`filter-line`,`filter-recipe`,`recipe-options`,`series-of`,`series-loading`,`status-key`,`series-path`,`fmt-point`,`onToggle`,`onLineChange`,`onFilter`,`onSeries`,`onRollback`]),d(k,{"table-el":e(J),"onUpdate:tableEl":n[11]||=e=>i(J)?J.value=e:null,filters:e(T),"onUpdate:filters":n[12]||=e=>i(T)?T.value=e:null,"has-filters":e(E),lines:e(c).lines,"bound-devices":e(H),"template-options":e(M),"driver-options":e(F),"filtered-count":e(U).length,"total-count":e(o).nodes.length,"ops-recent":e(_).recent,"ops-kind-label":b,"ops-time":x,alarms:e(o).alarms,"visible-nodes":e(Y),"pad-top-px":e(me),"pad-bottom-px":e(he),loading:!e(o).loaded&&!e(o).error,loaded:e(o).loaded,error:e(o).error,onClearFilters:e(j),onAck:C},null,8,[`table-el`,`filters`,`has-filters`,`lines`,`bound-devices`,`template-options`,`driver-options`,`filtered-count`,`total-count`,`ops-recent`,`alarms`,`visible-nodes`,`pad-top-px`,`pad-bottom-px`,`loading`,`loaded`,`error`,`onClearFilters`]),e(o).error?(l(),h(`p`,_i,[S(r(e(o).error)+`(`,1),d(A,{to:`/workshop`},{default:y(()=>[S(r(t.$t(`daq.k1bhhheq077`)),1)]),_:1}),n[14]||=S(`) `,-1)])):v(``,!0)])}}});export{vi as default};
@@ -1 +1 @@
1
- import{N as e,dt as t,mt as n,u as r,v as i}from"./CavpkQb0.js";import{Q as a,S as o,V as s,W as c,b as l,f as u,h as d,i as f,k as p,m,nt as h,p as g,y as _}from"./ByMj6e7s.js";import{d as v,f as y}from"./goF_oZHF.js";import{d as b}from"./Br3AySNQ.js";import{n as x}from"./DkpmSnHX.js";import{n as S}from"./Cnrmlixo.js";import{n as C,t as w}from"./CoTm7jd3.js";import{i as T,s as E,t as D}from"./CiyTTgqr.js";import{t as O}from"./CI8awYVQ2.js";import{t as k}from"./DzBbYWrw2.js";import{t as A}from"./Do0dCE8C2.js";import{t as j}from"./BDNMzG2s2.js";import{t as M}from"./JgheoP3e.js";import{t as N}from"./D4tAdwYm.js";import{t as P}from"./CNs_Ozdc.js";import{t as F}from"./BegV7-FE2.js";import{t as I}from"./DSWuWYx_2.js";var L={class:`mc-sub`},R={class:`mc-hint`},z=Object.assign(j(o({__name:`ChangePasswordModal`,setup(t){let{t:r}=S(),a=A(),o=i(``),c=i(``),d=i(``),f=i(!1),p=async()=>{if(!o.value||!c.value){T.warning(r(`wsHome.mcFillBoth`));return}if(c.value!==d.value){T.warning(r(`wsHome.mcMismatch`));return}if(c.value.length<6||!/[A-Za-z]/.test(c.value)||!/[0-9]/.test(c.value)){T.warning(r(`wsHome.mcPolicy`));return}if(c.value===o.value){T.warning(r(`wsHome.mcSameAsOld`));return}f.value=!0;try{await a.changePassword(o.value,c.value),o.value=``,c.value=``,d.value=``,T.success(r(`wsHome.mcDone`))}catch(e){T.error(M(e))}finally{f.value=!1}};return(t,i)=>{let m=C,y=O,b=E,x=D;return s(),g(x,{open:e(a).user?.mustChangePassword===!0,closable:!1,"mask-closable":!1,keyboard:!1,title:e(r)(`wsHome.mcTitle`),width:440},{footer:h(()=>[l(b,{type:`primary`,block:``,loading:f.value,onClick:p},{default:h(()=>[_(n(e(r)(`wsHome.mcCta`)),1)]),_:1},8,[`loading`])]),default:h(()=>[u(`p`,L,n(e(r)(`wsHome.mcSub`,{p0:e(a).user?.name??``})),1),l(y,{direction:`vertical`,style:{width:`100%`}},{default:h(()=>[l(m,{value:o.value,"onUpdate:value":i[0]||=e=>o.value=e,placeholder:e(r)(`wsHome.mcCurrent`),onKeydown:v(p,[`enter`])},null,8,[`value`,`placeholder`]),l(m,{value:c.value,"onUpdate:value":i[1]||=e=>c.value=e,placeholder:e(r)(`wsHome.mcNew`),onKeydown:v(p,[`enter`])},null,8,[`value`,`placeholder`]),l(m,{value:d.value,"onUpdate:value":i[2]||=e=>d.value=e,placeholder:e(r)(`wsHome.mcConfirm`),onKeydown:v(p,[`enter`])},null,8,[`value`,`placeholder`]),u(`p`,R,n(e(r)(`wsHome.mcPolicyHint`)),1)]),_:1})]),_:1},8,[`open`,`title`])}}}),[[`__scopeId`,`data-v-262d0014`]]),{__name:`WorkshopWorkbenchChangePasswordModal`}),B=Object.assign(o({__name:`CreateWorkspaceModal`,props:p({loading:{type:Boolean}},{open:{type:Boolean,required:!0},openModifiers:{},name:{required:!0},nameModifiers:{}}),emits:p([`ok`],[`update:open`,`update:name`]),setup(e,{emit:t}){let n=t,r=a(e,`open`),i=a(e,`name`);return(t,a)=>{let o=w,c=D;return s(),g(c,{open:r.value,"onUpdate:open":a[2]||=e=>r.value=e,title:t.$t(`wsHome.newWs`),"confirm-loading":e.loading,"ok-text":t.$t(`wsHome.createEnterOk`),"cancel-text":t.$t(`common.cancel`),onOk:a[3]||=e=>n(`ok`)},{default:h(()=>[l(o,{value:i.value,"onUpdate:value":a[0]||=e=>i.value=e,placeholder:t.$t(`wsHome.ksmpk8l007`),onKeydown:a[1]||=v(e=>n(`ok`),[`enter`])},null,8,[`value`,`placeholder`])]),_:1},8,[`open`,`title`,`confirm-loading`,`ok-text`,`cancel-text`])}}}),{__name:`WorkshopWorkbenchCreateWorkspaceModal`}),V={class:`aw-page-head`},H={class:`sub`},U={class:`head-acts`},W={class:`lib-links`},G=Object.assign(j(o({__name:`WorkbenchHead`,props:{userName:{}},emits:[`logout`,`newWorkspace`],setup(t,{emit:r}){let i=r;return(r,a)=>(s(),d(`div`,V,[u(`div`,null,[a[7]||=u(`p`,{class:`aw-kicker`},` workshop / overview `,-1),u(`h1`,null,`Workshop `+n(r.$t(`wsHome.k3n4m5c025`)),1),u(`p`,H,n(t.userName)+` `+n(r.$t(`wsHome.ke16e53026`)),1)]),u(`div`,U,[u(`div`,W,[u(`button`,{type:`button`,class:`lib-link`,onClick:a[0]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/agents`)},n(r.$t(`wsHome.k3pa5h4013`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[1]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/teams`)},n(r.$t(`wsHome.k3svl8y014`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[2]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/channel-templates`)},` Channel `+n(r.$t(`wsHome.k41ds5027`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[3]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/schedules`)},n(r.$t(`titles.schedules`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[4]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/tokens`)},` API Token `),u(`button`,{type:`button`,class:`lib-link`,onClick:a[5]||=e=>i(`logout`)},n(r.$t(`wsHome.k484e7015`)),1)]),u(`button`,{class:`aw-pill im`,onClick:a[6]||=e=>i(`newWorkspace`)},[a[8]||=u(`span`,{class:`i-tabler-plus im-pop`},null,-1),_(` `+n(r.$t(`wsHome.newWs`)),1)])])]))}}),[[`__scopeId`,`data-v-3d87eadd`]]),{__name:`WorkshopWorkbenchHead`}),K={class:`card`},q={class:`card-head`},J={class:`name`},Y={class:`card-body`},X={class:`ch-name`},Z={class:`ch-meta`},Q={key:0,class:`empty`},$={class:`card-foot`},ee=[`title`],te=Object.assign(j(o({__name:`WorkspaceCard`,props:{workspace:{},channels:{}},emits:[`open`,`remove`],setup(e,{emit:r}){let i=r;return(r,a)=>(s(),d(`div`,K,[u(`div`,q,[a[3]||=u(`span`,{class:`card-mark`},[u(`span`,{class:`i-tabler-box`})],-1),u(`span`,J,n(e.workspace.name),1)]),u(`div`,Y,[(s(!0),d(f,null,c(e.channels,o=>(s(),d(`div`,{key:o.id,class:`ch-row`,onClick:a[0]||=t=>i(`open`,e.workspace.id)},[u(`span`,{class:t([`dot`,{live:o.activeTasks>0}])},null,2),u(`span`,X,n(o.name),1),u(`span`,Z,[o.synced?(s(),d(f,{key:0},[_(n(o.agents)+` `+n(r.$t(`wsHome.k1ggoa45028`))+` `+n(o.busy)+` / `+n(r.$t(`wsHome.k3wcox029`))+` `+n(o.activeTasks),1)],64)):(s(),d(f,{key:1},[_(n(r.$t(`wsHome.k1bst7s9016`)),1)],64))])]))),128)),e.workspace.channelIds.length===0?(s(),d(`div`,Q,n(r.$t(`wsHome.k1ylgrbc017`)),1)):m(``,!0)]),u(`div`,$,[u(`button`,{class:`aw-pill outline im`,onClick:a[1]||=t=>i(`open`,e.workspace.id)},[a[4]||=u(`span`,{class:`i-tabler-arrow-right im-pop`},null,-1),_(` `+n(r.$t(`wsHome.kr1uwwi018`)),1)]),u(`button`,{class:`aw-ghost im`,title:r.$t(`wsHome.delWs`),onClick:a[2]||=y(t=>i(`remove`,e.workspace.id),[`stop`])},[...a[5]||=[u(`span`,{class:`i-tabler-trash im-shake`},null,-1)]],8,ee)])]))}}),[[`__scopeId`,`data-v-9ddc0bdd`]]),{__name:`WorkshopWorkbenchWorkspaceCard`}),ne={class:`aw-empty-title`},re={class:`aw-empty-sub`},ie={class:`pill-btn ws-empty-cta`},ae=Object.assign(j(o({__name:`WorkspaceEmpty`,emits:[`create`],setup(e,{emit:t}){let r=t;return(e,t)=>(s(),d(`button`,{class:`ws-empty`,onClick:t[0]||=e=>r(`create`)},[t[2]||=u(`span`,{class:`i-tabler-layout-2 ws-empty-ico`},null,-1),u(`span`,ne,n(e.$t(`wsHome.emptyTitle`)),1),u(`span`,re,n(e.$t(`wsHome.emptySub`)),1),u(`span`,ie,[t[1]||=u(`span`,{class:`i-tabler-plus`},null,-1),_(` `+n(e.$t(`wsHome.emptyCta`)),1)])]))}}),[[`__scopeId`,`data-v-2cf5663d`]]),{__name:`WorkshopWorkbenchWorkspaceEmpty`}),oe={class:`page`},se={class:`grid`},ce=j(o({__name:`index`,setup(t){let{t:n}=S();P({layout:`default`});let{userStore:i,authTab:a,authName:o,authEmail:p,authPassword:_,authTokenInput:v,authLoading:y,needsSetup:C,allowRegister:w,doRegister:T,doLogin:E,doLoginWithToken:D,doLogout:O}=F(),{wsStore:A,ready:j,createOpen:M,createName:L,createLoading:R,create:V,remove:H,channelSummary:U}=I(),W=e=>{b(`/workshop/w/${e}`)};return x({title:()=>n(`titles.workshop`)}),(t,n)=>{let b=k;return s(),d(`div`,oe,[l(z),e(i).isLoggedIn?(s(),d(f,{key:1},[l(G,{"user-name":e(i).user?.name,onLogout:e(O),onNewWorkspace:n[5]||=e=>M.value=!0},null,8,[`user-name`,`onLogout`]),l(b,{spinning:!e(j)},{default:h(()=>[u(`div`,se,[(s(!0),d(f,null,c(e(A).workspaces,t=>(s(),g(te,{key:t.id,workspace:t,channels:e(U)(t.channelIds),onOpen:W,onRemove:e(H)},null,8,[`workspace`,`channels`,`onRemove`]))),128)),e(A).workspaces.length===0&&e(j)?(s(),g(ae,{key:0,onCreate:n[6]||=e=>M.value=!0})):m(``,!0)])]),_:1},8,[`spinning`]),l(B,{open:e(M),"onUpdate:open":n[7]||=e=>r(M)?M.value=e:null,name:e(L),"onUpdate:name":n[8]||=e=>r(L)?L.value=e:null,loading:e(R),onOk:e(V)},null,8,[`open`,`name`,`loading`,`onOk`])],64)):(s(),g(N,{key:0,"active-tab":e(a),"onUpdate:activeTab":n[0]||=e=>r(a)?a.value=e:null,name:e(o),"onUpdate:name":n[1]||=e=>r(o)?o.value=e:null,email:e(p),"onUpdate:email":n[2]||=e=>r(p)?p.value=e:null,password:e(_),"onUpdate:password":n[3]||=e=>r(_)?_.value=e:null,"token-input":e(v),"onUpdate:tokenInput":n[4]||=e=>r(v)?v.value=e:null,loading:e(y),"needs-setup":e(C),"allow-register":e(w),onRegister:e(T),onLogin:e(E),onLoginWithToken:e(D)},null,8,[`active-tab`,`name`,`email`,`password`,`token-input`,`loading`,`needs-setup`,`allow-register`,`onRegister`,`onLogin`,`onLoginWithToken`]))])}}}),[[`__scopeId`,`data-v-d52c4cc9`]]);export{ce as default};
1
+ import{N as e,dt as t,mt as n,u as r,v as i}from"./CavpkQb0.js";import{Q as a,S as o,V as s,W as c,b as l,f as u,h as d,i as f,k as p,m,nt as h,p as g,y as _}from"./ByMj6e7s.js";import{d as v,f as y}from"./goF_oZHF.js";import{d as b}from"./Br3AySNQ.js";import{n as x}from"./DkpmSnHX.js";import{n as S}from"./Cnrmlixo.js";import{n as C,t as w}from"./CoTm7jd3.js";import{i as T,s as E,t as D}from"./CiyTTgqr.js";import{t as O}from"./CI8awYVQ2.js";import{t as k}from"./DzBbYWrw2.js";import{t as A}from"./Do0dCE8C2.js";import{t as j}from"./BDNMzG2s2.js";import{t as M}from"./JgheoP3e.js";import{t as N}from"./D4tAdwYm.js";import{t as P}from"./CNs_Ozdc.js";import{t as F}from"./BegV7-FE2.js";import{t as I}from"./DBERjwK92.js";var L={class:`mc-sub`},R={class:`mc-hint`},z=Object.assign(j(o({__name:`ChangePasswordModal`,setup(t){let{t:r}=S(),a=A(),o=i(``),c=i(``),d=i(``),f=i(!1),p=async()=>{if(!o.value||!c.value){T.warning(r(`wsHome.mcFillBoth`));return}if(c.value!==d.value){T.warning(r(`wsHome.mcMismatch`));return}if(c.value.length<6||!/[A-Za-z]/.test(c.value)||!/[0-9]/.test(c.value)){T.warning(r(`wsHome.mcPolicy`));return}if(c.value===o.value){T.warning(r(`wsHome.mcSameAsOld`));return}f.value=!0;try{await a.changePassword(o.value,c.value),o.value=``,c.value=``,d.value=``,T.success(r(`wsHome.mcDone`))}catch(e){T.error(M(e))}finally{f.value=!1}};return(t,i)=>{let m=C,y=O,b=E,x=D;return s(),g(x,{open:e(a).user?.mustChangePassword===!0,closable:!1,"mask-closable":!1,keyboard:!1,title:e(r)(`wsHome.mcTitle`),width:440},{footer:h(()=>[l(b,{type:`primary`,block:``,loading:f.value,onClick:p},{default:h(()=>[_(n(e(r)(`wsHome.mcCta`)),1)]),_:1},8,[`loading`])]),default:h(()=>[u(`p`,L,n(e(r)(`wsHome.mcSub`,{p0:e(a).user?.name??``})),1),l(y,{direction:`vertical`,style:{width:`100%`}},{default:h(()=>[l(m,{value:o.value,"onUpdate:value":i[0]||=e=>o.value=e,placeholder:e(r)(`wsHome.mcCurrent`),onKeydown:v(p,[`enter`])},null,8,[`value`,`placeholder`]),l(m,{value:c.value,"onUpdate:value":i[1]||=e=>c.value=e,placeholder:e(r)(`wsHome.mcNew`),onKeydown:v(p,[`enter`])},null,8,[`value`,`placeholder`]),l(m,{value:d.value,"onUpdate:value":i[2]||=e=>d.value=e,placeholder:e(r)(`wsHome.mcConfirm`),onKeydown:v(p,[`enter`])},null,8,[`value`,`placeholder`]),u(`p`,R,n(e(r)(`wsHome.mcPolicyHint`)),1)]),_:1})]),_:1},8,[`open`,`title`])}}}),[[`__scopeId`,`data-v-262d0014`]]),{__name:`WorkshopWorkbenchChangePasswordModal`}),B=Object.assign(o({__name:`CreateWorkspaceModal`,props:p({loading:{type:Boolean}},{open:{type:Boolean,required:!0},openModifiers:{},name:{required:!0},nameModifiers:{}}),emits:p([`ok`],[`update:open`,`update:name`]),setup(e,{emit:t}){let n=t,r=a(e,`open`),i=a(e,`name`);return(t,a)=>{let o=w,c=D;return s(),g(c,{open:r.value,"onUpdate:open":a[2]||=e=>r.value=e,title:t.$t(`wsHome.newWs`),"confirm-loading":e.loading,"ok-text":t.$t(`wsHome.createEnterOk`),"cancel-text":t.$t(`common.cancel`),onOk:a[3]||=e=>n(`ok`)},{default:h(()=>[l(o,{value:i.value,"onUpdate:value":a[0]||=e=>i.value=e,placeholder:t.$t(`wsHome.ksmpk8l007`),onKeydown:a[1]||=v(e=>n(`ok`),[`enter`])},null,8,[`value`,`placeholder`])]),_:1},8,[`open`,`title`,`confirm-loading`,`ok-text`,`cancel-text`])}}}),{__name:`WorkshopWorkbenchCreateWorkspaceModal`}),V={class:`aw-page-head`},H={class:`sub`},U={class:`head-acts`},W={class:`lib-links`},G=Object.assign(j(o({__name:`WorkbenchHead`,props:{userName:{}},emits:[`logout`,`newWorkspace`],setup(t,{emit:r}){let i=r;return(r,a)=>(s(),d(`div`,V,[u(`div`,null,[a[7]||=u(`p`,{class:`aw-kicker`},` workshop / overview `,-1),u(`h1`,null,`Workshop `+n(r.$t(`wsHome.k3n4m5c025`)),1),u(`p`,H,n(t.userName)+` `+n(r.$t(`wsHome.ke16e53026`)),1)]),u(`div`,U,[u(`div`,W,[u(`button`,{type:`button`,class:`lib-link`,onClick:a[0]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/agents`)},n(r.$t(`wsHome.k3pa5h4013`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[1]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/teams`)},n(r.$t(`wsHome.k3svl8y014`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[2]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/channel-templates`)},` Channel `+n(r.$t(`wsHome.k41ds5027`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[3]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/workshop/schedules`)},n(r.$t(`titles.schedules`)),1),u(`button`,{type:`button`,class:`lib-link`,onClick:a[4]||=t=>(`navigateTo`in r?r.navigateTo:e(b))(`/tokens`)},` API Token `),u(`button`,{type:`button`,class:`lib-link`,onClick:a[5]||=e=>i(`logout`)},n(r.$t(`wsHome.k484e7015`)),1)]),u(`button`,{class:`aw-pill im`,onClick:a[6]||=e=>i(`newWorkspace`)},[a[8]||=u(`span`,{class:`i-tabler-plus im-pop`},null,-1),_(` `+n(r.$t(`wsHome.newWs`)),1)])])]))}}),[[`__scopeId`,`data-v-3d87eadd`]]),{__name:`WorkshopWorkbenchHead`}),K={class:`card`},q={class:`card-head`},J={class:`name`},Y={class:`card-body`},X={class:`ch-name`},Z={class:`ch-meta`},Q={key:0,class:`empty`},$={class:`card-foot`},ee=[`title`],te=Object.assign(j(o({__name:`WorkspaceCard`,props:{workspace:{},channels:{}},emits:[`open`,`remove`],setup(e,{emit:r}){let i=r;return(r,a)=>(s(),d(`div`,K,[u(`div`,q,[a[3]||=u(`span`,{class:`card-mark`},[u(`span`,{class:`i-tabler-box`})],-1),u(`span`,J,n(e.workspace.name),1)]),u(`div`,Y,[(s(!0),d(f,null,c(e.channels,o=>(s(),d(`div`,{key:o.id,class:`ch-row`,onClick:a[0]||=t=>i(`open`,e.workspace.id)},[u(`span`,{class:t([`dot`,{live:o.activeTasks>0}])},null,2),u(`span`,X,n(o.name),1),u(`span`,Z,[o.synced?(s(),d(f,{key:0},[_(n(o.agents)+` `+n(r.$t(`wsHome.k1ggoa45028`))+` `+n(o.busy)+` / `+n(r.$t(`wsHome.k3wcox029`))+` `+n(o.activeTasks),1)],64)):(s(),d(f,{key:1},[_(n(r.$t(`wsHome.k1bst7s9016`)),1)],64))])]))),128)),e.workspace.channelIds.length===0?(s(),d(`div`,Q,n(r.$t(`wsHome.k1ylgrbc017`)),1)):m(``,!0)]),u(`div`,$,[u(`button`,{class:`aw-pill outline im`,onClick:a[1]||=t=>i(`open`,e.workspace.id)},[a[4]||=u(`span`,{class:`i-tabler-arrow-right im-pop`},null,-1),_(` `+n(r.$t(`wsHome.kr1uwwi018`)),1)]),u(`button`,{class:`aw-ghost im`,title:r.$t(`wsHome.delWs`),onClick:a[2]||=y(t=>i(`remove`,e.workspace.id),[`stop`])},[...a[5]||=[u(`span`,{class:`i-tabler-trash im-shake`},null,-1)]],8,ee)])]))}}),[[`__scopeId`,`data-v-9ddc0bdd`]]),{__name:`WorkshopWorkbenchWorkspaceCard`}),ne={class:`aw-empty-title`},re={class:`aw-empty-sub`},ie={class:`pill-btn ws-empty-cta`},ae=Object.assign(j(o({__name:`WorkspaceEmpty`,emits:[`create`],setup(e,{emit:t}){let r=t;return(e,t)=>(s(),d(`button`,{class:`ws-empty`,onClick:t[0]||=e=>r(`create`)},[t[2]||=u(`span`,{class:`i-tabler-layout-2 ws-empty-ico`},null,-1),u(`span`,ne,n(e.$t(`wsHome.emptyTitle`)),1),u(`span`,re,n(e.$t(`wsHome.emptySub`)),1),u(`span`,ie,[t[1]||=u(`span`,{class:`i-tabler-plus`},null,-1),_(` `+n(e.$t(`wsHome.emptyCta`)),1)])]))}}),[[`__scopeId`,`data-v-2cf5663d`]]),{__name:`WorkshopWorkbenchWorkspaceEmpty`}),oe={class:`page`},se={class:`grid`},ce=j(o({__name:`index`,setup(t){let{t:n}=S();P({layout:`default`});let{userStore:i,authTab:a,authName:o,authEmail:p,authPassword:_,authTokenInput:v,authLoading:y,needsSetup:C,allowRegister:w,doRegister:T,doLogin:E,doLoginWithToken:D,doLogout:O}=F(),{wsStore:A,ready:j,createOpen:M,createName:L,createLoading:R,create:V,remove:H,channelSummary:U}=I(),W=e=>{b(`/workshop/w/${e}`)};return x({title:()=>n(`titles.workshop`)}),(t,n)=>{let b=k;return s(),d(`div`,oe,[l(z),e(i).isLoggedIn?(s(),d(f,{key:1},[l(G,{"user-name":e(i).user?.name,onLogout:e(O),onNewWorkspace:n[5]||=e=>M.value=!0},null,8,[`user-name`,`onLogout`]),l(b,{spinning:!e(j)},{default:h(()=>[u(`div`,se,[(s(!0),d(f,null,c(e(A).workspaces,t=>(s(),g(te,{key:t.id,workspace:t,channels:e(U)(t.channelIds),onOpen:W,onRemove:e(H)},null,8,[`workspace`,`channels`,`onRemove`]))),128)),e(A).workspaces.length===0&&e(j)?(s(),g(ae,{key:0,onCreate:n[6]||=e=>M.value=!0})):m(``,!0)])]),_:1},8,[`spinning`]),l(B,{open:e(M),"onUpdate:open":n[7]||=e=>r(M)?M.value=e:null,name:e(L),"onUpdate:name":n[8]||=e=>r(L)?L.value=e:null,loading:e(R),onOk:e(V)},null,8,[`open`,`name`,`loading`,`onOk`])],64)):(s(),g(N,{key:0,"active-tab":e(a),"onUpdate:activeTab":n[0]||=e=>r(a)?a.value=e:null,name:e(o),"onUpdate:name":n[1]||=e=>r(o)?o.value=e:null,email:e(p),"onUpdate:email":n[2]||=e=>r(p)?p.value=e:null,password:e(_),"onUpdate:password":n[3]||=e=>r(_)?_.value=e:null,"token-input":e(v),"onUpdate:tokenInput":n[4]||=e=>r(v)?v.value=e:null,loading:e(y),"needs-setup":e(C),"allow-register":e(w),onRegister:e(T),onLogin:e(E),onLoginWithToken:e(D)},null,8,[`active-tab`,`name`,`email`,`password`,`token-input`,`loading`,`needs-setup`,`allow-register`,`onRegister`,`onLogin`,`onLoginWithToken`]))])}}}),[[`__scopeId`,`data-v-d52c4cc9`]]);export{ce as default};