archsight 0.2.0 → 0.2.2
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.
- checksums.yaml +4 -4
- data/chart/archsight/values.yaml +2 -0
- data/docs/kubernetes.md +53 -0
- data/lib/archsight/annotations/annotation.rb +13 -1
- data/lib/archsight/cli.rb +6 -0
- data/lib/archsight/import/license_analyzer.rb +14 -6
- data/lib/archsight/resources/base.rb +2 -2
- data/lib/archsight/resources/technology_artifact.rb +7 -3
- data/lib/archsight/version.rb +1 -1
- data/lib/archsight/web/application.rb +38 -0
- data/lib/archsight/web/public/vue/{ApiDocsPage-B1RqTNqh.js → ApiDocsPage-Cwn04X61.js} +1 -1
- data/lib/archsight/web/public/vue/{DocPage-DzwBgBd4.js → DocPage-Y83PCbYi.js} +1 -1
- data/lib/archsight/web/public/vue/{EditorPage-D_miHSv4.js → EditorPage-DqRMOBE6.js} +1 -1
- data/lib/archsight/web/public/vue/{ErrorPage-CQQtPey3.js → ErrorPage-D0lKMCXA.js} +1 -1
- data/lib/archsight/web/public/vue/{GraphView-T9jFH_qg.js → GraphView-Byq-Nfd9.js} +1 -1
- data/lib/archsight/web/public/vue/{InstanceRouter-1Sm-CRhf.js → InstanceRouter-B3Q2fH0X.js} +1 -1
- data/lib/archsight/web/public/vue/{KindList-JA_L_-Cz.js → KindList-DlDrvJDd.js} +1 -1
- data/lib/archsight/web/public/vue/{ResourceList-8iqavWdg.js → ResourceList-DwsfI85-.js} +1 -1
- data/lib/archsight/web/public/vue/{SearchResults-BdgFeHcm.js → SearchResults-DlWGROho.js} +1 -1
- data/lib/archsight/web/public/vue/{_basePickBy-CVgieyx-.js → _basePickBy-DXGWsL9H.js} +1 -1
- data/lib/archsight/web/public/vue/{_baseUniq-BNfrOSaP.js → _baseUniq-C8pAAASt.js} +1 -1
- data/lib/archsight/web/public/vue/{architectureDiagram-VXUJARFQ-CJXNpTr5.js → architectureDiagram-VXUJARFQ-Dg_wTk4u.js} +1 -1
- data/lib/archsight/web/public/vue/{blockDiagram-VD42YOAC-B5488Hes.js → blockDiagram-VD42YOAC-C8HXvtNT.js} +1 -1
- data/lib/archsight/web/public/vue/{c4Diagram-YG6GDRKO-eYY3hprM.js → c4Diagram-YG6GDRKO-QzXboDJ8.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-4BX2VUAB-ZoXeL4D1.js → chunk-4BX2VUAB-DSPzEX5F.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-55IACEB6-rNtQYnu_.js → chunk-55IACEB6-Dd5Z8Bov.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-B4BG7PRW-DolAeVV9.js → chunk-B4BG7PRW-B_hXD1nI.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-DI55MBZ5-DnN0f_hj.js → chunk-DI55MBZ5-C-2DUMJY.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-FMBD7UC4-BQWOCMuR.js → chunk-FMBD7UC4-BlBtfKnL.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-QN33PNHL-DId301Kb.js → chunk-QN33PNHL-Db3REDIz.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-QZHKN3VN-xbY0NLgv.js → chunk-QZHKN3VN-BqVqGMTy.js} +1 -1
- data/lib/archsight/web/public/vue/{chunk-TZMSLE5B-CgF9_37b.js → chunk-TZMSLE5B-DfX4VDWu.js} +1 -1
- data/lib/archsight/web/public/vue/classDiagram-2ON5EDUG-C9Kk58xl.js +1 -0
- data/lib/archsight/web/public/vue/classDiagram-v2-WZHVMYZB-C9Kk58xl.js +1 -0
- data/lib/archsight/web/public/vue/clone-B6uzD5eH.js +1 -0
- data/lib/archsight/web/public/vue/{cose-bilkent-S5V4N54A-CB9Zfu50.js → cose-bilkent-S5V4N54A-CfkQxn-a.js} +1 -1
- data/lib/archsight/web/public/vue/{dagre-6UL2VRFP-BqkmE-LI.js → dagre-6UL2VRFP-D13da1qu.js} +1 -1
- data/lib/archsight/web/public/vue/{diagram-PSM6KHXK-CKBfqtw3.js → diagram-PSM6KHXK-BwzbeHPK.js} +1 -1
- data/lib/archsight/web/public/vue/{diagram-QEK2KX5R-B78rOlvK.js → diagram-QEK2KX5R-COjSoDC8.js} +1 -1
- data/lib/archsight/web/public/vue/{diagram-S2PKOQOG-BlXC6Cia.js → diagram-S2PKOQOG-FH65FafS.js} +1 -1
- data/lib/archsight/web/public/vue/{erDiagram-Q2GNP2WA-BnliyziJ.js → erDiagram-Q2GNP2WA-D1mxJWSp.js} +1 -1
- data/lib/archsight/web/public/vue/{flowDiagram-NV44I4VS-wuqPowTd.js → flowDiagram-NV44I4VS-DpRd5cPP.js} +1 -1
- data/lib/archsight/web/public/vue/{ganttDiagram-JELNMOA3-GSffAIH3.js → ganttDiagram-JELNMOA3-D04Sdd3Q.js} +1 -1
- data/lib/archsight/web/public/vue/{gitGraphDiagram-V2S2FVAM-OA7VyugW.js → gitGraphDiagram-V2S2FVAM-DgNNP2nj.js} +1 -1
- data/lib/archsight/web/public/vue/{graph-BXHAtA0S.js → graph-Cnoy0p_X.js} +1 -1
- data/lib/archsight/web/public/vue/{index-DsEsN0_K.js → index-Zr9MoxJi.js} +2 -2
- data/lib/archsight/web/public/vue/{infoDiagram-HS3SLOUP-nlVe2qgv.js → infoDiagram-HS3SLOUP-D5asL_9P.js} +1 -1
- data/lib/archsight/web/public/vue/{journeyDiagram-XKPGCS4Q-CtTIcKwf.js → journeyDiagram-XKPGCS4Q-D-SRalYk.js} +1 -1
- data/lib/archsight/web/public/vue/{kanban-definition-3W4ZIXB7-837KX0sW.js → kanban-definition-3W4ZIXB7-CuOjHa3p.js} +1 -1
- data/lib/archsight/web/public/vue/{layout-DtE0QdL6.js → layout-CD8FBujT.js} +1 -1
- data/lib/archsight/web/public/vue/{mermaid-DpPHPFQh.js → mermaid-DUllW9QE.js} +60 -60
- data/lib/archsight/web/public/vue/{mindmap-definition-VGOIOE7T-9gLF2AoY.js → mindmap-definition-VGOIOE7T-BfbYXGBk.js} +1 -1
- data/lib/archsight/web/public/vue/{pieDiagram-ADFJNKIX-CyCNgw3u.js → pieDiagram-ADFJNKIX-mb757Gpq.js} +1 -1
- data/lib/archsight/web/public/vue/{quadrantDiagram-AYHSOK5B-CkPh8g02.js → quadrantDiagram-AYHSOK5B-DMtvHJQW.js} +1 -1
- data/lib/archsight/web/public/vue/{requirementDiagram-UZGBJVZJ-Dkt6OSlY.js → requirementDiagram-UZGBJVZJ-CHguirsB.js} +1 -1
- data/lib/archsight/web/public/vue/{sankeyDiagram-TZEHDZUN-BqprTk8x.js → sankeyDiagram-TZEHDZUN-nblWMNF6.js} +1 -1
- data/lib/archsight/web/public/vue/{sequenceDiagram-WL72ISMW-CTmTe1FQ.js → sequenceDiagram-WL72ISMW-B83ZoXls.js} +1 -1
- data/lib/archsight/web/public/vue/{stateDiagram-FKZM4ZOC-CphqmkEU.js → stateDiagram-FKZM4ZOC-Ct0OgmPh.js} +1 -1
- data/lib/archsight/web/public/vue/stateDiagram-v2-4FDKWEC3-CJZXQ6xd.js +1 -0
- data/lib/archsight/web/public/vue/{timeline-definition-IT6M3QCI-CSQUZkyE.js → timeline-definition-IT6M3QCI-D1Wd-DLb.js} +1 -1
- data/lib/archsight/web/public/vue/{treemap-GDKQZRPO-DTojm7Yr.js → treemap-GDKQZRPO-DFPZrNlp.js} +1 -1
- data/lib/archsight/web/public/vue/{useGraphviz-A5s4h76R.js → useGraphviz-BN4iwLLN.js} +1 -1
- data/lib/archsight/web/public/vue/{useHighlight-C6Kb5G3l.js → useHighlight-DmGaxZxx.js} +1 -1
- data/lib/archsight/web/public/vue/{useMermaid-DqxTrLRB.js → useMermaid-DSo5f1Jc.js} +1 -1
- data/lib/archsight/web/public/vue/{usePanZoom-BybZ_rfh.js → usePanZoom-BEXq_r0S.js} +1 -1
- data/lib/archsight/web/public/vue/{xychartDiagram-PRI3JC2R-B1ZJZtDC.js → xychartDiagram-PRI3JC2R-i_eB4HAQ.js} +1 -1
- data/lib/archsight/web/public/vue.html +2 -2
- metadata +71 -57
- data/lib/archsight/web/public/vue/classDiagram-2ON5EDUG-jGlvI-Za.js +0 -1
- data/lib/archsight/web/public/vue/classDiagram-v2-WZHVMYZB-jGlvI-Za.js +0 -1
- data/lib/archsight/web/public/vue/clone-6iRPe1-W.js +0 -1
- data/lib/archsight/web/public/vue/stateDiagram-v2-4FDKWEC3-CxaDW5sW.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{z as mt,l as V,C as pt,_ as q,o as e,c as n,a as t,d as k,F as b,x as L,b as h,y as r,i as ot,g as D,n as A,t as c,q as R,f as T,w as U,e as I,r as E,D as lt,B as P,E as Z,G as it,k as G,p as rt,s as tt,H as yt}from"./index-DsEsN0_K.js";import{r as ut}from"./useGraphviz-A5s4h76R.js";import{i as ct}from"./usePanZoom-BybZ_rfh.js";import{h as kt,n as et,t as ft,a as Q,i as nt,c as ht,b as gt,R as _t}from"./ResourceList-8iqavWdg.js";import{r as st}from"./useMermaid-DqxTrLRB.js";import{h as bt}from"./useHighlight-C6Kb5G3l.js";import"./mermaid-DpPHPFQh.js";function F(u){const a=mt();function d(i){const f=i.target.closest("a[href]");if(!f)return;const y=f.getAttribute("href");!y||!y.startsWith("/kinds/")||(i.preventDefault(),a.push(y))}V(()=>{u.value?.addEventListener("click",d)}),pt(()=>{u.value?.removeEventListener("click",d)})}const $t={key:0,class:"relations-section"},wt={class:"relations-grid"},xt={class:"relations-column relations-outgoing"},jt={class:"relation-kind"},It={class:"relation-verb"},St={class:"instance-badges"},Ct={key:1,class:"relations-empty"},Tt={class:"relations-column relations-incoming"},At={class:"relation-kind"},Lt={class:"relation-verb"},Ot={class:"instance-badges"},Mt={key:1,class:"relations-empty"},Et={__name:"RelationsGrid",props:{data:Object},setup(u){const a=u,d=ot("kinds"),i=r(()=>a.data.relations||{}),f=r(()=>a.data.references||{}),y=r(()=>Object.keys(i.value).length>0||Object.keys(f.value).length>0);function l(x){return d?.value?.kinds?d.value.kinds.find($=>$.kind===x):null}function o(x){return l(x)?.icon||"cube"}function m(x){return l(x)?.layer||"technology"}const s=r(()=>{const x=[];for(const[$,S]of Object.entries(i.value))for(const[p,v]of Object.entries(S))x.push({verb:$,kind:p,names:[...v].sort()});return x}),g=r(()=>{const x=[];for(const[$,S]of Object.entries(f.value))for(const[p,v]of Object.entries(S))x.push({verb:p||"references",kind:$,names:[...v].sort()});return x});return(x,$)=>{const S=D("router-link");return y.value?(e(),n("article",$t,[$[2]||($[2]=t("header",null,[t("h2",null,"Relations")],-1)),t("div",wt,[t("div",xt,[$[0]||($[0]=t("h3",null,[k("Outgoing "),t("i",{class:"iconoir-arrow-right"})],-1)),s.value.length?(e(!0),n(b,{key:0},L(s.value,(p,v)=>(e(),n("div",{key:"out-"+v,class:"relation-group"},[t("div",jt,[t("i",{class:A(`iconoir-${o(p.kind)} icon-${m(p.kind)}`)},null,2),t("span",null,c(p.kind)+" ("+c(p.names.length)+")",1)]),t("div",It,c(p.verb)+" ("+c(p.names.length)+")",1),t("div",St,[(e(!0),n(b,null,L(p.names,C=>(e(),R(S,{key:C,class:"badge badge-info",to:{name:"instance",params:{kind:p.kind,instance:C}}},{default:T(()=>[k(c(C),1)]),_:2},1032,["to"]))),128))])]))),128)):(e(),n("div",Ct,"None"))]),t("div",Tt,[$[1]||($[1]=t("h3",null,[t("i",{class:"iconoir-arrow-right"}),k(" Incoming")],-1)),g.value.length?(e(!0),n(b,{key:0},L(g.value,(p,v)=>(e(),n("div",{key:"in-"+v,class:"relation-group"},[t("div",At,[t("i",{class:A(`iconoir-${o(p.kind)} icon-${m(p.kind)}`)},null,2),t("span",null,c(p.kind)+" ("+c(p.names.length)+")",1)]),t("div",Lt,c(p.verb)+" ("+c(p.names.length)+")",1),t("div",Ot,[(e(!0),n(b,null,L(p.names,C=>(e(),R(S,{key:C,class:"badge badge-info",to:{name:"instance",params:{kind:p.kind,instance:C}}},{default:T(()=>[k(c(C),1)]),_:2},1032,["to"]))),128))])]))),128)):(e(),n("div",Mt,"None"))])])])):h("",!0)}}},J=q(Et,[["__scopeId","data-v-3a1d98d9"]]),Rt={key:0,class:"requirements-section"},qt={class:"requirements-table"},Dt={class:"requirement-status"},Ht=["title"],Bt={key:1,class:"view-empty-value"},Nt={class:"requirement-story"},Pt=["innerHTML"],Gt={key:1,class:"view-empty-value"},Ut={__name:"RequirementsSection",props:{data:Object},setup(u){const a=u,d=r(()=>{const l=a.data.relations||{},o=[],m={realizes:"implemented",partiallyRealizes:"partial",plans:"planned"};for(const[s,g]of Object.entries(m)){const x=l[s]||{},$=x.BusinessRequirement||x.businessRequirements||[];for(const S of $)o.push({name:S,status:g,verb:s})}return o}),i=E([]);U(d,async l=>{if(!l.length){i.value=[];return}const o=await Promise.all(l.map(async m=>{try{const g=(await lt("BusinessRequirement",m.name)).metadata?.annotations||{};return{...m,priority:g["requirement/priority"]||null,story:g["requirement/story"]||null}}catch{return{...m,priority:null,story:null}}}));i.value=o},{immediate:!0});function f(l){switch(l){case"implemented":return"iconoir-check-circle";case"partial":return"iconoir-half-moon";case"planned":return"iconoir-calendar";default:return"iconoir-circle"}}function y(l){const o=a.data.name;return`/search?q=${encodeURIComponent(`BusinessRequirement: <- "${o}" & requirement/priority == "${l}"`)}`}return(l,o)=>{const m=D("router-link");return d.value.length?(e(),n("article",Rt,[o[1]||(o[1]=t("header",null,[t("h2",null,"Business Requirements")],-1)),t("table",qt,[o[0]||(o[0]=t("thead",null,[t("tr",null,[t("th"),t("th",null,"Name"),t("th",null,"Priority"),t("th",null,"Story")])],-1)),t("tbody",null,[(e(!0),n(b,null,L(i.value,s=>(e(),n("tr",{key:s.name},[t("td",Dt,[t("i",{class:A([[f(s.status),`status-${s.status}`],"requirement-status-icon"]),title:s.status},null,10,Ht)]),t("td",null,[I(m,{to:{name:"instance",params:{kind:"BusinessRequirement",instance:s.name}}},{default:T(()=>[k(c(s.name),1)]),_:2},1032,["to"])]),t("td",null,[s.priority?(e(),R(m,{key:0,class:"badge badge-info",to:y(s.priority)},{default:T(()=>[k(c(s.priority),1)]),_:2},1032,["to"])):(e(),n("span",Bt,"-"))]),t("td",Nt,[s.story?(e(),n("div",{key:0,innerHTML:s.story},null,8,Pt)):(e(),n("span",Gt,"-"))])]))),128))])])])):h("",!0)}}},Ft=q(Ut,[["__scopeId","data-v-1e32a2b6"]]),Wt={key:0},Vt={scope:"row"},zt=["href"],Kt={class:"git-info"},Qt={class:"git-item"},Zt={class:"git-clone-command"},Jt={__name:"GitInfo",props:{annotations:Object},setup(u){const a=u,d=r(()=>a.annotations["repository/git"]),i=r(()=>d.value?kt(d.value):null);function f(){navigator.clipboard.writeText(`git clone ${d.value}`)}return(y,l)=>d.value?(e(),n("tr",Wt,[t("th",Vt,[t("a",{class:"git-link",href:i.value,target:"_blank"},"Git Repo",8,zt)]),t("td",null,[t("div",Kt,[t("div",Qt,[l[0]||(l[0]=t("i",{class:"iconoir-git-branch"},null,-1)),t("code",Zt,"git clone "+c(d.value),1)]),t("button",{class:"copy-button",onClick:f,title:"Copy to clipboard"},[...l[1]||(l[1]=[t("i",{class:"iconoir-copy"},null,-1)])])])])])):h("",!0)}},Xt=q(Jt,[["__scopeId","data-v-ae19746e"]]),Yt={key:0},te={class:"language-distribution"},ee={class:"language-total"},ne={class:"language-count"},se={class:"language-bar"},ae=["title"],oe={class:"language-legend"},le={class:"other-languages"},ie={__name:"LanguageStats",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>{const l=a.annotations["scc/languages"];if(!l)return null;const o=l.split(",").map(p=>{const v=`scc/language/${p.trim()}/loc`;return{name:p.trim(),loc:parseInt(a.annotations[v]||"0",10)}}).sort((p,v)=>v.loc-p.loc),m=o.reduce((p,v)=>p+v.loc,0);if(m<=0)return null;const s=o.filter(p=>p.loc/m*100>=.1),g=s.slice(0,10),x=[...s.slice(10),...o.filter(p=>p.loc/m*100<.1)],$=x.reduce((p,v)=>p+v.loc,0),S=[...g];return $>0&&S.push({name:"Other",loc:$,isOther:!0,otherNames:x.map(p=>p.name)}),{display:S,total:m}});function i(l){return(l/d.value.total*100).toFixed(1)}function f(l,o){return o.isOther?"lang-other":`lang-${l}`}function y(l,o){return{name:"search",query:{q:`${l} == "${o}"`}}}return(l,o)=>{const m=D("router-link");return d.value?(e(),n("tr",Yt,[o[3]||(o[3]=t("th",{scope:"row"},"Languages",-1)),t("td",null,[t("div",te,[t("div",ee,[t("span",ne,c(P(et)(d.value.total)),1),o[0]||(o[0]=t("span",{class:"language-label"},"lines of code",-1))]),t("div",se,[(e(!0),n(b,null,L(d.value.display,(s,g)=>(e(),n("div",{key:s.name,class:A(["language-bar-segment",f(g,s)]),style:Z({width:i(s.loc)+"%"}),title:`${s.name}: ${P(et)(s.loc)} (${i(s.loc)}%)`},null,14,ae))),128))]),t("div",oe,[(e(!0),n(b,null,L(d.value.display,(s,g)=>(e(),n("div",{key:s.name,class:"language-legend-item"},[t("div",{class:A(["language-legend-dot",f(g,s)])},null,2),s.isOther?(e(),n(b,{key:0},[t("span",null,"Other "+c(i(s.loc))+"%",1),t("span",le,[o[1]||(o[1]=k(" (",-1)),(e(!0),n(b,null,L(s.otherNames,(x,$)=>(e(),n(b,{key:x},[I(m,{to:y("scc/languages",x)},{default:T(()=>[k(c(x),1)]),_:2},1032,["to"]),$<s.otherNames.length-1?(e(),n(b,{key:0},[k(", ")],64)):h("",!0)],64))),128)),o[2]||(o[2]=k(") ",-1))])],64)):(e(),R(m,{key:1,to:y("scc/languages",s.name)},{default:T(()=>[k(c(s.name)+" "+c(i(s.loc))+"% ",1)]),_:2},1032,["to"]))]))),128))])])])])):h("",!0)}}},re=q(ie,[["__scopeId","data-v-c306da87"]]),ue={key:0},ce={class:"project-estimate"},de={key:0,class:"estimate-item"},ve={class:"estimate-value"},me={key:1,class:"estimate-item"},pe={class:"estimate-value"},ye={key:2,class:"estimate-item"},ke={class:"estimate-value"},fe={__name:"ProjectEstimate",props:{annotations:Object},setup(u){const a=u,d=r(()=>Q("cost",a.annotations["scc/estimatedCost"])),i=r(()=>Q("schedule",a.annotations["scc/estimatedScheduleMonths"])),f=r(()=>Q("team",a.annotations["scc/estimatedPeople"])),y=r(()=>d.value!=null||i.value!=null||f.value!=null);return(l,o)=>y.value?(e(),n("tr",ue,[o[6]||(o[6]=t("th",{scope:"row"},[k(" Project Estimate "),t("span",{class:"estimate-note",title:"Estimates adjusted for €80k salary and AI-assisted development (3x productivity)"},[t("i",{class:"iconoir-info-circle"})])],-1)),t("td",null,[t("div",ce,[d.value!=null?(e(),n("div",de,[o[0]||(o[0]=t("i",{class:"iconoir-euro"},null,-1)),o[1]||(o[1]=t("span",{class:"estimate-label"},"Cost:",-1)),t("span",ve,c(P(ft)(d.value)),1)])):h("",!0),i.value!=null?(e(),n("div",me,[o[2]||(o[2]=t("i",{class:"iconoir-calendar"},null,-1)),o[3]||(o[3]=t("span",{class:"estimate-label"},"Schedule:",-1)),t("span",pe,c(i.value.toFixed(1))+" months",1)])):h("",!0),f.value!=null?(e(),n("div",ye,[o[4]||(o[4]=t("i",{class:"iconoir-group"},null,-1)),o[5]||(o[5]=t("span",{class:"estimate-label"},"Team:",-1)),t("span",ke,c(f.value)+" people",1)])):h("",!0)])])])):h("",!0)}},he=q(fe,[["__scopeId","data-v-6cb46a9d"]]),ge={key:0},_e={class:"repository-distribution"},be={class:"repository-total"},$e={class:"repository-count"},we={class:"repository-bar"},xe=["title"],je={class:"repository-legend"},Ie={__name:"RepositoriesBar",props:{annotations:Object},setup(u){const a=u,d=r(()=>parseInt(a.annotations["repository/artifacts/total"]||"0",10)),i=r(()=>parseInt(a.annotations["repository/artifacts/active"]||"0",10)),f=r(()=>parseInt(a.annotations["repository/artifacts/abandoned"]||"0",10)),y=r(()=>parseInt(a.annotations["repository/artifacts/archived"]||"0",10)),l=r(()=>parseInt(a.annotations["repository/artifacts/highBusFactor"]||"0",10)),o=r(()=>d.value>0),m=r(()=>i.value-l.value),s=r(()=>d.value-i.value-f.value-y.value);function g($){return($/d.value*100).toFixed(1)}const x=r(()=>{const $=[];return m.value>0&&$.push({cls:"status-active",value:m.value,label:"Active (healthy)"}),l.value>0&&$.push({cls:"status-high-bus-factor",value:l.value,label:"Active (high bus factor)"}),y.value>0&&$.push({cls:"status-archived",value:y.value,label:"Archived"}),s.value>0&&$.push({cls:"status-other",value:s.value,label:"Other"}),f.value>0&&$.push({cls:"status-abandoned",value:f.value,label:"Abandoned"}),$});return($,S)=>o.value?(e(),n("tr",ge,[S[1]||(S[1]=t("th",{scope:"row"},"Repositories",-1)),t("td",null,[t("div",_e,[t("div",be,[t("span",$e,c(d.value),1),S[0]||(S[0]=t("span",{class:"repository-label"},"repositories",-1))]),t("div",we,[(e(!0),n(b,null,L(x.value,p=>(e(),n("div",{key:p.cls,class:A(["repository-bar-segment",p.cls]),style:Z({width:g(p.value)+"%"}),title:`${p.label}: ${p.value} (${g(p.value)}%)`},null,14,xe))),128))]),t("div",je,[(e(!0),n(b,null,L(x.value,p=>(e(),n("div",{key:p.cls,class:"repository-legend-item"},[t("div",{class:A(["repository-legend-dot",p.cls])},null,2),t("span",null,c(p.value)+" "+c(p.label.toLowerCase()),1)]))),128))])])])])):h("",!0)}},Se=q(Ie,[["__scopeId","data-v-1fbb3e92"]]),Ce=["title"],Te={__name:"SparklineChart",props:{values:{type:String,required:!0},type:{type:String,default:"commits"},maxHeight:{type:Number,default:16},colorClass:{type:String,default:null}},setup(u){const a=u,d=r(()=>!a.values||a.values.trim()===""?[]:a.values.split(",").map(l=>parseInt(l,10)||0)),i=r(()=>{const l=Math.max(...d.value);return l===0?1:l});function f(l){return l===0?0:Math.max(2,Math.round(l/i.value*a.maxHeight))}const y=r(()=>{switch(a.type){case"created":return" issues created";case"resolved":return" issues resolved";default:return" commits"}});return(l,o)=>(e(),n("div",{class:A(["activity-sparkline",u.colorClass])},[(e(!0),n(b,null,L(d.value,(m,s)=>(e(),n("div",{key:s,class:A(["activity-sparkline-bar",{empty:m===0}]),style:Z({height:f(m)+"px"}),title:m+y.value},null,14,Ce))),128))],2))}},W=q(Te,[["__scopeId","data-v-c5e6ffa5"]]),Ae={key:0},Le={class:"activity-summary"},Oe={key:0,class:"activity-item"},Me={class:"activity-value sparkline-total"},Ee={key:1,class:"activity-item"},Re={key:0,class:"activity-value sparkline-total"},qe={key:1,class:"activity-value contributors-total"},De={key:2,class:"activity-item"},He={class:"activity-value"},Be={key:3,class:"activity-item"},Ne={key:4,class:"activity-item"},Pe={__name:"ActivityInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>a.annotations["activity/commits"]),i=r(()=>a.annotations["activity/contributors"]),f=r(()=>a.annotations["activity/contributors/6m"]),y=r(()=>a.annotations["activity/contributors/total"]),l=r(()=>a.annotations["activity/status"]),o=r(()=>a.annotations["activity/busFactor"]),m=r(()=>a.annotations["activity/createdAt"]),s=r(()=>d.value||i.value||l.value||o.value||m.value),g=r(()=>d.value?d.value.split(",").map(Number).reduce((p,v)=>p+v,0):0),x=r(()=>m.value?new Date(m.value).toLocaleDateString("en",{month:"short",year:"numeric"}):null),$=r(()=>{const p=o.value;let v="";switch(p){case"high":v="High risk: One contributor accounts for >75% of commits in the last 6 months";break;case"medium":v="Medium risk: One contributor accounts for 50-75% of commits in the last 6 months";break;case"low":v="Low risk: No single contributor dominates the codebase";break;default:v="Unknown: Not enough recent activity to assess"}return f.value&&(v+=` (${f.value} unique contributors)`),v});function S(p,v){return{name:"search",query:{q:`${p} == "${v}"`}}}return(p,v)=>{const C=D("router-link");return s.value?(e(),n("tr",Ae,[v[10]||(v[10]=t("th",{scope:"row"},"Activity",-1)),t("td",null,[t("div",Le,[d.value?(e(),n("div",Oe,[v[0]||(v[0]=t("i",{class:"iconoir-git-commit"},null,-1)),v[1]||(v[1]=t("span",{class:"activity-label"},"Commits:",-1)),I(W,{values:d.value},null,8,["values"]),t("span",Me,c(g.value),1)])):h("",!0),i.value?(e(),n("div",Ee,[v[2]||(v[2]=t("i",{class:"iconoir-community"},null,-1)),v[3]||(v[3]=t("span",{class:"activity-label"},"Contributors:",-1)),I(W,{values:i.value,"color-class":"contributors-sparkline"},null,8,["values"]),f.value?(e(),n("span",Re,c(f.value),1)):h("",!0),y.value?(e(),n("span",qe,"("+c(y.value)+" total)",1)):h("",!0)])):h("",!0),m.value?(e(),n("div",De,[v[4]||(v[4]=t("i",{class:"iconoir-calendar"},null,-1)),v[5]||(v[5]=t("span",{class:"activity-label"},"Created:",-1)),t("span",He,c(x.value),1)])):h("",!0),l.value?(e(),n("div",Be,[v[6]||(v[6]=t("i",{class:"iconoir-info-circle"},null,-1)),v[7]||(v[7]=t("span",{class:"activity-label"},"Status:",-1)),I(C,{class:A(`activity-value status-${l.value}`),to:S("activity/status",l.value)},{default:T(()=>[k(c(l.value),1)]),_:1},8,["class","to"])])):h("",!0),o.value?(e(),n("div",Ne,[v[8]||(v[8]=t("i",{class:"iconoir-warning-triangle"},null,-1)),v[9]||(v[9]=t("span",{class:"activity-label"},"Bus Factor:",-1)),I(C,{class:A(`activity-value bus-factor-${o.value}`),to:S("activity/busFactor",o.value),title:$.value},{default:T(()=>[k(c(o.value),1)]),_:1},8,["class","to","title"])])):h("",!0)])])])):h("",!0)}}},Ge=q(Pe,[["__scopeId","data-v-c3143572"]]),Ue={key:0},Fe={key:1},We={class:"jira-info"},Ve=["href"],ze={class:"jira-metric"},Ke={class:"jira-metric-total"},Qe={class:"jira-metric"},Ze={class:"jira-metric-total"},Je={key:0,class:"iconoir-arrow-down-circle"},Xe={key:1,class:"iconoir-arrow-up-circle"},Ye={key:2,class:"iconoir-minus-circle"},tn={class:"jira-trend-text"},en={key:2},nn=["href"],sn={key:1,class:"team-value"},an={key:3},on={class:"team-stats"},ln={key:0,class:"team-stat-item"},rn={class:"team-stat-value"},un={key:1,class:"team-stat-item"},cn={class:"team-stat-value"},dn={key:4},vn={class:"team-members"},mn=["href"],pn={key:1,class:"team-member"},yn={__name:"TeamInfo",props:{annotations:Object,instance:Object},setup(u){const a=u,d=r(()=>a.annotations["team/lead"]),i=r(()=>a.annotations["team/members"]),f=r(()=>a.annotations["team/size"]),y=r(()=>a.annotations["team/lead/size"]),l=r(()=>a.annotations["team/jira"]),o=r(()=>a.annotations["jira/projectUrl"]),m=r(()=>a.annotations["jira/issues/created"]),s=r(()=>a.annotations["jira/issues/resolved"]),g=r(()=>a.instance?.kind==="BusinessActor"),x=r(()=>`kind in ("ApplicationService", "ApplicationComponent") & ~> $(TechnologyArtifact: -{maintainedBy}> "${a.instance?.name||""}")`),$=r(()=>i.value?i.value.split(/,|\n/).map(_=>_.trim()).filter(Boolean):[]);function S(_){const w=_.match(/<([^>]+@[^>]+)>/);return w?w[1]:null}function p(_){return{name:"search",query:{q:_}}}const v=r(()=>m.value?m.value.split(",").map(Number).reduce((_,w)=>_+w,0):0),C=r(()=>s.value?s.value.split(",").map(Number).reduce((_,w)=>_+w,0):0),j=r(()=>m.value?m.value.split(",").map(Number):[]),M=r(()=>s.value?s.value.split(",").map(Number):[]),N=r(()=>{const _=j.value.length?v.value/j.value.length:0,w=M.value.length?C.value/M.value.length:0;return _-w}),O=r(()=>{const _=N.value;return _<-1?"positive":_>1?"negative":"neutral"});return(_,w)=>{const B=D("router-link");return e(),n(b,null,[g.value?(e(),n("tr",Ue,[w[1]||(w[1]=t("th",{scope:"row"},"Owned Services",-1)),t("td",null,[I(B,{class:"badge badge-info",to:p(x.value)},{default:T(()=>[...w[0]||(w[0]=[k(" Show ApplicationServices & Components ",-1)])]),_:1},8,["to"])])])):h("",!0),l.value&&o.value?(e(),n("tr",Fe,[w[4]||(w[4]=t("th",{scope:"row"},"Jira Project",-1)),t("td",null,[t("div",We,[t("a",{class:"badge badge-info",href:o.value,target:"_blank"},c(l.value),9,Ve),m.value||s.value?(e(),n(b,{key:0},[t("div",ze,[w[2]||(w[2]=t("span",{class:"jira-metric-label"},"Created (6m):",-1)),I(W,{values:m.value,type:"created","color-class":"jira-created-sparkline"},null,8,["values"]),t("span",Ke,c(v.value),1)]),t("div",Qe,[w[3]||(w[3]=t("span",{class:"jira-metric-label"},"Resolved (6m):",-1)),I(W,{values:s.value,type:"resolved","color-class":"jira-resolved-sparkline"},null,8,["values"]),t("span",Ze,c(C.value),1)]),t("div",{class:A(["jira-trend",`jira-trend-${O.value}`])},[O.value==="positive"?(e(),n("i",Je)):O.value==="negative"?(e(),n("i",Xe)):(e(),n("i",Ye)),t("span",tn,c(N.value>0?"+":"")+c(N.value.toFixed(1))+"/mo",1)],2)],64)):h("",!0)])])])):h("",!0),d.value?(e(),n("tr",en,[w[5]||(w[5]=t("th",{scope:"row"},"Team Lead",-1)),t("td",null,[S(d.value)?(e(),n("a",{key:0,class:"team-value",href:`mailto:${S(d.value)}`},c(d.value),9,nn)):(e(),n("span",sn,c(d.value),1))])])):h("",!0),f.value||y.value?(e(),n("tr",an,[w[8]||(w[8]=t("th",{scope:"row"},"Team Stats",-1)),t("td",null,[t("div",on,[y.value?(e(),n("div",ln,[t("span",rn,c(y.value),1),w[6]||(w[6]=t("span",{class:"team-stat-label"},"leads",-1))])):h("",!0),f.value?(e(),n("div",un,[t("span",cn,c(f.value),1),w[7]||(w[7]=t("span",{class:"team-stat-label"},"members",-1))])):h("",!0)])])])):h("",!0),i.value?(e(),n("tr",dn,[w[9]||(w[9]=t("th",{scope:"row"},"Team Members",-1)),t("td",null,[t("div",vn,[(e(!0),n(b,null,L($.value,H=>(e(),n(b,{key:H},[S(H)?(e(),n("a",{key:0,class:"team-member",href:`mailto:${S(H)}`},c(H),9,mn)):(e(),n("span",pn,c(H),1))],64))),128))])])])):h("",!0)],64)}}},kn=q(yn,[["__scopeId","data-v-4e1ea26f"]]),fn={key:0},hn={class:"deployment-types"},gn={__name:"DeploymentInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>(a.annotations["repository/artifacts"]||"none").split(",").map(o=>o.trim())),i=r(()=>d.value[0]!=="none"),f=[{key:"container",icon:"iconoir-box",label:"Container Image"},{key:"chart",icon:"iconoir-packages",label:"Helm Chart"},{key:"binary",icon:"iconoir-terminal",label:"Binary"},{key:"debian",icon:"iconoir-package",label:"Debian Package"},{key:"rpm",icon:"iconoir-package",label:"RPM Package"}];function y(l,o){return{name:"search",query:{q:`${l} == "${o}"`}}}return(l,o)=>{const m=D("router-link");return i.value?(e(),n("tr",fn,[o[0]||(o[0]=t("th",{scope:"row"},"Deployment Artifacts",-1)),t("td",null,[t("div",hn,[(e(),n(b,null,L(f,s=>(e(),n(b,{key:s.key},[d.value.includes(s.key)?(e(),R(m,{key:0,class:"deployment-item",to:y("repository/artifacts",s.key)},{default:T(()=>[t("i",{class:A(s.icon)},null,2),t("strong",null,c(s.label),1)]),_:2},1032,["to"])):h("",!0)],64))),64))])])])):h("",!0)}}},_n=q(gn,[["__scopeId","data-v-7cfa7667"]]),bn={class:"workflow-platforms"},$n=["checked"],wn=["checked"],xn=["checked"],jn={class:"info-section-cell",colspan:"2"},In={open:""},Sn={class:"workflow-types"},Cn={class:"workflow-category"},Tn=["checked"],An=["checked"],Ln={class:"workflow-category"},On=["checked"],Mn=["checked"],En=["checked"],Rn=["checked"],qn={class:"workflow-category"},Dn=["checked"],Hn=["checked"],Bn={class:"workflow-category"},Nn=["checked"],Pn=["checked"],Gn={__name:"WorkflowInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>(a.annotations["workflow/platforms"]||"none").split(",").map(m=>m.trim())),i=r(()=>(a.annotations["workflow/types"]||"none").split(",").map(m=>m.trim())),f=r(()=>d.value[0]!=="none"||i.value[0]!=="none"),y=r(()=>i.value.includes("test"));function l(m,s){return{name:"search",query:{q:`${m} == "${s}"`}}}function o(m,s){return m.includes(s)}return(m,s)=>{const g=D("router-link");return f.value?(e(),n(b,{key:0},[t("tr",null,[s[3]||(s[3]=t("th",{scope:"row"},"CI/CD Platforms",-1)),t("td",null,[t("div",bn,[I(g,{class:"workflow-platform-item",to:l("workflow/platforms","github-actions")},{default:T(()=>[t("input",{type:"checkbox",disabled:"",checked:o(d.value,"github-actions")},null,8,$n),s[0]||(s[0]=t("label",null,"GitHub Actions",-1))]),_:1},8,["to"]),I(g,{class:"workflow-platform-item",to:l("workflow/platforms","gitlab-ci")},{default:T(()=>[t("input",{type:"checkbox",disabled:"",checked:o(d.value,"gitlab-ci")},null,8,wn),s[1]||(s[1]=t("label",null,"GitLab CI",-1))]),_:1},8,["to"]),I(g,{class:"workflow-platform-item",to:l("workflow/platforms","makefile")},{default:T(()=>[t("input",{type:"checkbox",disabled:"",checked:o(d.value,"makefile")},null,8,xn),s[2]||(s[2]=t("label",null,"Makefile",-1))]),_:1},8,["to"])])])]),t("tr",null,[t("td",jn,[t("details",In,[s[18]||(s[18]=t("summary",null,[t("strong",null,"Workflow Types")],-1)),t("div",Sn,[t("div",null,[t("div",Cn,[s[6]||(s[6]=t("strong",null,"Build & Deploy",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"build")},null,8,Tn),I(g,{to:l("workflow/types","build")},{default:T(()=>[...s[4]||(s[4]=[k("Build",-1)])]),_:1},8,["to"])]),t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"deploy")},null,8,An),I(g,{to:l("workflow/types","deploy")},{default:T(()=>[...s[5]||(s[5]=[k("Deploy",-1)])]),_:1},8,["to"])])])]),t("div",Ln,[s[11]||(s[11]=t("strong",null,"Testing",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"test")},null,8,On),I(g,{to:l("workflow/types","test")},{default:T(()=>[...s[7]||(s[7]=[k("Test (generic)",-1)])]),_:1},8,["to"])]),t("li",{class:A({"grayed-out":y.value})},[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"unit-test")},null,8,Mn),I(g,{to:l("workflow/types","unit-test")},{default:T(()=>[...s[8]||(s[8]=[k("Unit Tests",-1)])]),_:1},8,["to"])],2),t("li",{class:A({"grayed-out":y.value})},[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"integration-test")},null,8,En),I(g,{to:l("workflow/types","integration-test")},{default:T(()=>[...s[9]||(s[9]=[k("Integration Tests",-1)])]),_:1},8,["to"])],2),t("li",{class:A({"grayed-out":y.value})},[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"smoke-test")},null,8,Rn),I(g,{to:l("workflow/types","smoke-test")},{default:T(()=>[...s[10]||(s[10]=[k("Smoke Tests",-1)])]),_:1},8,["to"])],2)])]),t("div",qn,[s[14]||(s[14]=t("strong",null,"Quality & Security",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"lint")},null,8,Dn),I(g,{to:l("workflow/types","lint")},{default:T(()=>[...s[12]||(s[12]=[k("Linting",-1)])]),_:1},8,["to"])]),t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"security-scan")},null,8,Hn),I(g,{to:l("workflow/types","security-scan")},{default:T(()=>[...s[13]||(s[13]=[k("Security Scan",-1)])]),_:1},8,["to"])])])]),t("div",Bn,[s[17]||(s[17]=t("strong",null,"Automation",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"dependency-update")},null,8,Nn),I(g,{to:l("workflow/types","dependency-update")},{default:T(()=>[...s[15]||(s[15]=[k("Dependency Updates",-1)])]),_:1},8,["to"])]),t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"ticket-creation")},null,8,Pn),I(g,{to:l("workflow/types","ticket-creation")},{default:T(()=>[...s[16]||(s[16]=[k("Ticket Creation",-1)])]),_:1},8,["to"])])])])])])])])])],64)):h("",!0)}}},Un=q(Gn,[["__scopeId","data-v-62c25aa1"]]),Fn={class:"info-section-cell",colspan:"2"},Wn={class:"agentic-tools"},Vn={class:"tool-item-header"},zn=["checked"],Kn={class:"tool-item-description"},Qn={__name:"AgenticTools",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>(a.annotations["agentic/tools"]||"none").split(",").map(l=>l.trim())),i=r(()=>d.value[0]!=="none"),f=[{key:"claude",icon:"iconoir-brain",name:"Claude",description:"Anthropic Claude API"},{key:"cursor",icon:"iconoir-edit-pencil",name:"Cursor",description:"AI code editor"},{key:"aider",icon:"iconoir-terminal",name:"Aider",description:"CLI pair programmer"},{key:"github-copilot",icon:"iconoir-github",name:"GitHub Copilot",description:"GitHub AI assistant"},{key:"agents",icon:"iconoir-cpu-warning",name:"Custom Agents",description:"Custom AI agents"}];function y(l,o){return{name:"search",query:{q:`${l} == "${o}"`}}}return(l,o)=>{const m=D("router-link");return i.value?(e(),n(b,{key:0},[o[0]||(o[0]=t("tr",null,[t("th",{scope:"row",colspan:"2"},[t("i",{class:"iconoir-cpu"}),k(" AI Coding Assistants ")])],-1)),t("tr",null,[t("td",Fn,[t("div",Wn,[(e(),n(b,null,L(f,s=>I(m,{key:s.key,class:A(["tool-item",{"not-implemented":!d.value.includes(s.key)}]),to:y("agentic/tools",s.key)},{default:T(()=>[t("div",Vn,[t("input",{type:"checkbox",checked:d.value.includes(s.key),disabled:""},null,8,zn),t("i",{class:A([s.icon,d.value.includes(s.key)?"implemented":"not-implemented"])},null,2),t("strong",null,c(s.name),1)]),t("div",Kn,c(s.description),1)]),_:2},1032,["class","to"])),64))])])])],64)):h("",!0)}}},Zn=q(Qn,[["__scopeId","data-v-9f667c51"]]),Jn={key:0},Xn={class:"activity-summary"},Yn={class:"activity-item"},ts={key:0,class:"activity-item"},es={class:"activity-value"},ns={key:1,class:"activity-item"},ss={key:0,class:"license-details-inline"},as={class:"badge badge-secondary"},os={class:"license-overflow"},ls={__name:"LicenseInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>a.annotations["license/spdx"]),i=r(()=>a.annotations["license/category"]||"unknown"),f=r(()=>a.annotations["license/dependencies/count"]),y=r(()=>(a.annotations["license/dependencies/ecosystems"]||"").split(",").map(p=>p.trim()).filter(Boolean)),l=r(()=>a.annotations["license/dependencies/risk"]||"unknown"),o=r(()=>a.annotations["license/dependencies/copyleft"]||"unknown"),m=r(()=>(a.annotations["license/dependencies/licenses"]||"").split(",").map(p=>p.trim()).filter(Boolean)),s=r(()=>{switch(i.value){case"permissive":return"badge-success";case"weak-copyleft":return"badge-warning";case"copyleft":return"badge-danger";default:return"badge-secondary"}}),g=r(()=>{switch(l.value){case"low":return"badge-success";case"weak-copyleft":return"badge-warning";case"copyleft":return"badge-danger";default:return"badge-secondary"}}),x=r(()=>{switch(l.value){case"copyleft":return"Copyleft dependencies (GPL, AGPL) or >50% unknown licenses";case"weak-copyleft":return"Weak-copyleft dependencies (LGPL, MPL) present";case"low":return"All dependencies have known permissive licenses";default:return"No dependency license data available"}}),$=r(()=>m.value.filter(v=>v!=="unknown").map(v=>({name:v,count:parseInt(a.annotations[`license/dependencies/${v}/count`]||"0",10)})).sort((v,C)=>C.count-v.count));function S(p,v){return{name:"search",query:{q:`${p} == "${v}"`}}}return(p,v)=>{const C=D("router-link");return d.value?(e(),n("tr",Jn,[v[6]||(v[6]=t("th",{scope:"row"},"License",-1)),t("td",null,[t("div",Xn,[t("div",Yn,[v[0]||(v[0]=t("i",{class:"iconoir-shield-check"},null,-1)),I(C,{class:A(["badge",s.value]),to:S("license/spdx",d.value)},{default:T(()=>[k(c(d.value),1)]),_:1},8,["class","to"]),i.value!=="unknown"?(e(),R(C,{key:0,class:"badge badge-outline",to:S("license/category",i.value)},{default:T(()=>[k(c(i.value),1)]),_:1},8,["to"])):h("",!0)]),f.value&&parseInt(f.value)>0?(e(),n("div",ts,[v[2]||(v[2]=t("i",{class:"iconoir-box"},null,-1)),v[3]||(v[3]=t("span",{class:"activity-label"},"Dependencies:",-1)),t("span",es,c(f.value),1),(e(!0),n(b,null,L(y.value,j=>(e(),R(C,{key:j,class:"badge badge-info",to:S("license/dependencies/ecosystems",j)},{default:T(()=>[k(c(j),1)]),_:2},1032,["to"]))),128)),I(C,{class:A(["badge",g.value]),title:x.value,to:S("license/dependencies/risk",l.value)},{default:T(()=>[k("Risk: "+c(l.value),1)]),_:1},8,["class","title","to"]),o.value==="true"?(e(),R(C,{key:0,class:"badge badge-warning",to:S("license/dependencies/copyleft","true")},{default:T(()=>[...v[1]||(v[1]=[k("Copyleft present",-1)])]),_:1},8,["to"])):h("",!0)])):h("",!0),$.value.length?(e(),n("div",ns,[v[4]||(v[4]=t("i",{class:"iconoir-list"},null,-1)),v[5]||(v[5]=t("span",{class:"activity-label"},"Types:",-1)),(e(!0),n(b,null,L($.value.slice(0,5),j=>(e(),R(C,{key:j.name,class:"badge badge-outline",to:S("license/dependencies/licenses",j.name)},{default:T(()=>[k(c(j.count>0?`${j.name} (${j.count})`:j.name),1)]),_:2},1032,["to"]))),128)),$.value.length>5?(e(),n("details",ss,[t("summary",as,"+"+c($.value.length-5)+" more",1),t("div",os,[(e(!0),n(b,null,L($.value.slice(5),j=>(e(),R(C,{key:j.name,class:"badge badge-outline",to:S("license/dependencies/licenses",j.name)},{default:T(()=>[k(c(j.count>0?`${j.name} (${j.count})`:j.name),1)]),_:2},1032,["to"]))),128))])])):h("",!0)])):h("",!0)])])])):h("",!0)}}},is=q(ls,[["__scopeId","data-v-bd573961"]]),rs={key:0},us=["href"],cs=["href"],ds={__name:"ExternalLinks",props:{annotations:Object},setup(u){const a=u,d=r(()=>Object.entries(a.annotations).filter(([y])=>y.startsWith("link/")).sort(([y],[l])=>y.localeCompare(l))),i=r(()=>d.value.length>0),f=r(()=>{if(d.value.length<=10)return null;const y={};for(const[l,o]of d.value){const m=ht(o);y[m]||(y[m]=[]),y[m].push({key:l,url:o,name:l.replace("link/","")})}return Object.entries(y).sort(([l],[o])=>l.localeCompare(o))});return(y,l)=>i.value?(e(),n("tr",rs,[l[4]||(l[4]=t("th",{scope:"row"},"Links",-1)),t("td",null,[f.value?(e(!0),n(b,{key:0},L(f.value,([o,m])=>(e(),n(b,{key:o},[t("strong",null,c(o),1),l[1]||(l[1]=t("br",null,null,-1)),(e(!0),n(b,null,L(m,s=>(e(),n(b,{key:s.key},[t("a",{href:s.url,target:"_blank",rel:"noopener noreferrer"},[t("span",{class:A(P(nt)(s.url))},null,2),k(" "+c(s.name),1)],8,us),l[0]||(l[0]=t("br",null,null,-1))],64))),128)),l[2]||(l[2]=t("br",null,null,-1))],64))),128)):(e(!0),n(b,{key:1},L(d.value,([o,m])=>(e(),n(b,{key:o},[t("a",{href:m,target:"_blank",rel:"noopener noreferrer"},[t("span",{class:A(P(nt)(m))},null,2),k(" "+c(o.replace("link/","")),1)],8,cs),l[3]||(l[3]=t("br",null,null,-1))],64))),128))])])):h("",!0)}},vs={scope:"row"},ms=["innerHTML"],ps={key:1,class:"instance-badges"},ys=["href"],ks={__name:"AnnotationRow",props:{annotationKey:String,value:[String,Number,Boolean],kind:String,format:{type:String,default:null}},setup(u){const a=u,d=E(null);F(d);const i=r(()=>{const o=a.annotationKey.split("/");return o[o.length-1].replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^./,m=>m.toUpperCase())}),f=r(()=>typeof a.value=="string"&&/^https?:\/\//.test(a.value)),y=r(()=>a.format!=="tag_list"||typeof a.value!="string"?[]:a.value.split(",").map(o=>o.trim()).filter(Boolean));function l(o){return`/search?q=${encodeURIComponent(`${a.kind}: ${a.annotationKey} == "${o}"`)}`}return(o,m)=>{const s=D("router-link");return e(),n("tr",null,[t("th",vs,c(i.value),1),t("td",null,[u.format==="markdown"?(e(),n("div",{key:0,ref_key:"mdEl",ref:d,innerHTML:u.value},null,8,ms)):u.format==="tag_list"?(e(),n("div",ps,[(e(!0),n(b,null,L(y.value,g=>(e(),R(s,{key:g,class:"badge badge-info",to:l(g)},{default:T(()=>[k(c(g),1)]),_:2},1032,["to"]))),128))])):u.format==="tag_word"?(e(),R(s,{key:2,class:"badge badge-info",to:l(u.value)},{default:T(()=>[k(c(u.value),1)]),_:1},8,["to"])):(e(),n(b,{key:3},[f.value?(e(),n("a",{key:0,href:u.value,target:"_blank"},c(u.value),9,ys)):(e(),n(b,{key:1},[k(c(u.value),1)],64))],64))])])}}},fs={class:"instance-title-text"},hs={class:"instance-name"},gs={class:"instance-kind-subtitle"},_s={key:0,class:"generated-badge"},bs={class:"generated-script"},$s={key:0,class:"generated-time"},ws={key:0,class:"graph-container"},xs=["innerHTML"],js={key:1,class:"graph-too-large"},Is=["innerHTML"],Ss={class:"documentation"},Cs={__name:"InstanceDetail",props:{data:Object,kind:String,kindMeta:Object},setup(u){const a=u,d=E(""),i=E(null);let f=null;const y=E(null);F(y);const l=r(()=>a.data.metadata?.annotations||{}),o=r(()=>Object.keys(a.data.relations||{}).length>0),m=r(()=>{const j=a.data.references||{};return o.value||Object.keys(j).length>0}),s=r(()=>l.value["generated/script"]),g=r(()=>l.value["generated/at"]),x=r(()=>l.value["architecture/description"]),$=["scc/language/","repository/artifacts/","link/","team/","jira/","generated/","license/"],S=new Set(["scc/languages","architecture/description","workflow/platforms","workflow/types","agentic/tools","repository/artifacts","repository/git","repository/visibility"]),p=[/^scc\/estimated(Cost|ScheduleMonths|People)$/,/^activity\/(commits|contributors(\/.*)?|status|busFactor|createdAt)$/,/^scc\/language\/.+\/loc$/,/^repository\/$/],v=r(()=>Object.entries(l.value).filter(([j])=>!(S.has(j)||$.some(M=>j.startsWith(M))||p.some(M=>M.test(j)))));V(async()=>{if(o.value){const j=await it(a.kind,a.data.name);d.value=j?await ut(j):"",await G(),C()}await G(),y.value&&st(y.value)}),U(x,async()=>{await G(),y.value&&st(y.value)}),rt(()=>{f?.destroy()});function C(){if(!i.value)return;const j=i.value.querySelector("svg");j&&(f=ct(j,i.value))}return(j,M)=>{const N=D("router-link");return e(),n(b,null,[t("article",null,[t("header",null,[t("h2",null,[u.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${u.kindMeta.icon} icon-${u.kindMeta.layer}`)},null,2)):h("",!0),t("div",fs,[t("span",hs,c(u.data.name),1),t("span",gs,c(u.kind),1)])]),s.value?(e(),n("div",_s,[t("span",bs,[M[0]||(M[0]=k(" by ",-1)),I(N,{to:{name:"instance",params:{kind:"Import",instance:s.value}}},{default:T(()=>[k(c(s.value),1)]),_:1},8,["to"])]),g.value?(e(),n("span",$s," generated "+c(P(gt)(g.value)),1)):h("",!0)])):(e(),R(N,{key:1,class:"btn-header",to:`/kinds/${u.kind}/instances/${u.data.name}/edit`,title:"Edit this resource"},{default:T(()=>[...M[1]||(M[1]=[t("i",{class:"iconoir-edit-pencil"},null,-1),k(" Edit ",-1)])]),_:1},8,["to"]))]),o.value&&d.value?(e(),n("div",ws,[t("div",{id:"graphviz",ref_key:"graphEl",ref:i,class:"canvas",innerHTML:d.value},null,8,xs)])):m.value&&!o.value?(e(),n("p",js,[...M[2]||(M[2]=[t("i",{class:"iconoir-graph-up"},null,-1),k(" No outgoing dependencies — graph omitted ",-1)])])):h("",!0),x.value?(e(),n("div",{key:2,ref_key:"descEl",ref:y,innerHTML:x.value,class:A({footer:m.value})},null,10,Is)):h("",!0)]),I(Ft,{data:u.data},null,8,["data"]),t("article",Ss,[M[4]||(M[4]=t("header",null,[t("h2",null,"Details")],-1)),t("table",null,[M[3]||(M[3]=t("thead",null,[t("tr",null,[t("th",{scope:"col"},"Name"),t("th",{scope:"col"},"Value")])],-1)),t("tbody",null,[I(Xt,{annotations:l.value},null,8,["annotations"]),I(re,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(he,{annotations:l.value},null,8,["annotations"]),I(Se,{annotations:l.value},null,8,["annotations"]),I(Ge,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(kn,{annotations:l.value,instance:u.data},null,8,["annotations","instance"]),I(_n,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(Un,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(Zn,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(is,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(ds,{annotations:l.value},null,8,["annotations"]),(e(!0),n(b,null,L(v.value,([O,_])=>(e(),R(ks,{key:O,"annotation-key":O,value:_,kind:u.kind},null,8,["annotation-key","value","kind"]))),128))])])]),I(J,{data:u.data},null,8,["data"])],64)}}},Ts=q(Cs,[["__scopeId","data-v-05b7ea77"]]),As={class:"view-header"},Ls=["innerHTML"],Os={key:1,class:"view-query-display"},Ms={class:"query-item"},Es={class:"query-value"},Rs={key:0,class:"search-error"},qs={class:"search-error-message"},Ds={key:1,class:"view-results"},Hs={class:"view-result-meta"},Bs={key:2},at=100,Ns={__name:"ViewDetail",props:{data:Object,kindMeta:Object},setup(u){const a=u,d=r(()=>a.data.metadata?.annotations||{}),i=r(()=>d.value["view/query"]),f=r(()=>d.value["architecture/description"]),y=r(()=>d.value["view/type"]||"list:name+kind"),l=r(()=>y.value==="list:name+kind"),o=r(()=>(d.value["view/fields"]||"").split(",").map(w=>w.trim()).filter(Boolean)),m=r(()=>(d.value["view/sort"]||"").split(",").map(w=>w.trim()).filter(Boolean)),s=E(null);F(s);const g=E([]),x=E(0),$=E(0),S=E(!1),p=E(!1),v=E(null);let C=0;function j(_,w){return w.length?[..._].sort((B,H)=>{for(const z of w){const X=z.startsWith("-"),Y=X?z.slice(1):z,dt=B.annotations?.[Y]??"",vt=H.annotations?.[Y]??"",K=String(dt).localeCompare(String(vt),void 0,{numeric:!0});if(K!==0)return X?-K:K}return 0}):_}const M=r(()=>j(g.value,m.value));async function N(){if(i.value){S.value=!0,v.value=null,C=0;try{const _=o.value.length?"annotations":"brief",w=await tt(i.value,{limit:at,offset:0,output:_});g.value=w.instances||[],x.value=w.total||0,$.value=w.query_time_ms||0,C=g.value.length}catch(_){v.value=_.message}finally{S.value=!1}}}async function O(){if(!(p.value||C>=x.value||!i.value)){p.value=!0;try{const _=o.value.length?"annotations":"brief",B=(await tt(i.value,{limit:at,offset:C,output:_})).instances||[];g.value=[...g.value,...B],C+=B.length}catch{}p.value=!1}}return U(()=>a.data,N,{immediate:!0}),(_,w)=>(e(),n(b,null,[t("article",As,[t("header",null,[t("h2",null,[u.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${u.kindMeta.icon} icon-${u.kindMeta.layer}`)},null,2)):h("",!0),k(" "+c(u.data.name),1)])]),f.value?(e(),n("div",{key:0,ref_key:"descEl",ref:s,class:"view-description",innerHTML:f.value},null,8,Ls)):h("",!0),i.value?(e(),n("div",Os,[t("p",Ms,[w[0]||(w[0]=t("span",{class:"label"},"Query:",-1)),t("code",Es,c(i.value),1)])])):h("",!0)]),v.value?(e(),n("div",Rs,[w[1]||(w[1]=t("div",{class:"search-error-header"},[t("i",{class:"iconoir-warning-triangle"}),k(" Query Error")],-1)),t("div",qs,c(v.value),1)])):h("",!0),!S.value&&i.value&&!v.value?(e(),n("article",Ds,[t("header",null,[w[2]||(w[2]=t("h3",null,"Results",-1)),t("span",Hs,c(x.value)+" "+c(x.value===1?"item":"items")+" in "+c($.value)+" ms",1)]),I(_t,{instances:M.value,"omit-kind":!l.value,fields:o.value.length?o.value:null,total:x.value,"loading-more":p.value,onLoadMore:O},null,8,["instances","omit-kind","fields","total","loading-more"])])):h("",!0),i.value?h("",!0):(e(),n("article",Bs,[...w[3]||(w[3]=[t("p",{class:"view-empty-state"},[t("em",null,"No query defined")],-1)])]))],64))}},Ps=q(Ns,[["__scopeId","data-v-f921d1a2"]]),Gs=["innerHTML"],Us={key:3,class:"analysis-table-wrapper"},Fs={key:4,class:"analysis-list"},Ws={key:5,class:"code"},Vs={__name:"AnalysisSection",props:{section:Object},setup(u){const a={error:"xmark-circle",warning:"warning-triangle",info:"info-circle"};return(d,i)=>u.section.type==="heading"?(e(),n("div",{key:0,class:A(["analysis-heading","level-"+u.section.level])},c(u.section.text),3)):u.section.type==="text"?(e(),n("div",{key:1,class:"analysis-text",innerHTML:u.section.content},null,8,Gs)):u.section.type==="message"?(e(),n("div",{key:2,class:A(["analysis-message","message-"+u.section.level])},[t("i",{class:A(`iconoir-${a[u.section.level]||"info-circle"}`)},null,2),k(" "+c(u.section.message),1)],2)):u.section.type==="table"?(e(),n("div",Us,[t("table",null,[t("thead",null,[t("tr",null,[(e(!0),n(b,null,L(u.section.headers,f=>(e(),n("th",{key:f},c(f),1))),128))])]),t("tbody",null,[(e(!0),n(b,null,L(u.section.rows,(f,y)=>(e(),n("tr",{key:y},[(e(!0),n(b,null,L(f,(l,o)=>(e(),n("td",{key:o},c(l),1))),128))]))),128))])])])):u.section.type==="list"?(e(),n("ul",Fs,[(e(!0),n(b,null,L(u.section.items,(f,y)=>(e(),n("li",{key:y},c(f),1))),128))])):u.section.type==="code"?(e(),n("pre",Ws,[t("code",{class:A(u.section.lang?"language-"+u.section.lang:"")},c(u.section.content),3)])):h("",!0)}},zs=q(Vs,[["__scopeId","data-v-4d3d107a"]]),Ks={components:{RelationsGrid:J,AnalysisSection:zs},props:{data:Object,kindMeta:Object},setup(u){const a=r(()=>u.data.metadata?.annotations||{}),d=r(()=>a.value["architecture/description"]),i=r(()=>a.value["analysis/script"]),f=r(()=>a.value["analysis/handler"]||"ruby"),y=r(()=>a.value["analysis/timeout"]||"30s"),l=E(null);F(l);const o=E(null),m=E(!1);async function s(){m.value=!0,o.value=await yt(u.data.name),m.value=!1}function g(){i.value&&navigator.clipboard.writeText(i.value)}function x(v){const C=[];let j={title:null,sections:[]};for(const M of v)M.type==="heading"&&M.level===0?((j.title||j.sections.length)&&C.push(j),j={title:M.text,sections:[]}):j.sections.push(M);return(j.title||j.sections.length)&&C.push(j),C}const $=r(()=>o.value?.sections?.length?x(o.value.sections):[]),S=r(()=>$.value.some(v=>v.title)),p=E(null);return U(o,async()=>{await G(),p.value&&bt(p.value)}),V(()=>{i.value&&s()}),{annotations:a,description:d,analysisScript:i,handler:f,timeout:y,descEl:l,rootEl:p,result:o,executing:m,sectionGroups:$,hasTitledGroups:S,run:s,copyScript:g}}},Qs={class:"analysis-header"},Zs={class:"instance-title-text"},Js={class:"instance-name"},Xs={class:"header-actions"},Ys=["innerHTML"],ta={ref:"rootEl",class:"analysis-execution"},ea={class:"analysis-execute-controls"},na=["disabled"],sa={class:"analysis-result-header"},aa={class:"status-indicator"},oa={key:0,class:"duration"},la={key:0,class:"analysis-error-details"},ia={key:0},ra={class:"code"},ua={key:1,class:"analysis-output"},ca={key:0},da=["open"],va={key:1,class:"analysis-results-placeholder"},ma={class:"analysis-details-section"},pa={class:"analysis-details-content"},ya={class:"analysis-metadata"},ka={class:"analysis-meta-item"},fa={class:"analysis-meta-item"},ha={class:"analysis-script"},ga={class:"analysis-script-header"},_a={class:"code"},ba={class:"language-ruby"},$a={key:1};function wa(u,a,d,i,f,y){const l=D("router-link"),o=D("AnalysisSection"),m=D("RelationsGrid");return e(),n(b,null,[t("article",Qs,[t("header",null,[t("h2",null,[d.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${d.kindMeta.icon} icon-${d.kindMeta.layer}`)},null,2)):h("",!0),t("div",Zs,[t("span",Js,c(d.data.name),1),a[2]||(a[2]=t("span",{class:"instance-kind-subtitle"},"Analysis",-1))])]),t("div",Xs,[I(l,{class:"btn-header",to:`/kinds/Analysis/instances/${d.data.name}/edit`,title:"Edit this resource"},{default:T(()=>[...a[3]||(a[3]=[t("i",{class:"iconoir-edit-pencil"},null,-1),k(" Edit ",-1)])]),_:1},8,["to"])])]),i.description?(e(),n("div",{key:0,ref:"descEl",class:"analysis-description",innerHTML:i.description},null,8,Ys)):h("",!0)]),i.analysisScript?(e(),n(b,{key:0},[t("article",ta,[t("header",null,[a[4]||(a[4]=t("h3",null,[t("i",{class:"iconoir-play"}),k(" Results")],-1)),t("div",ea,[t("button",{class:"secondary outline",onClick:a[0]||(a[0]=(...s)=>i.run&&i.run(...s)),disabled:i.executing},[t("i",{class:A(["iconoir-refresh",{spinning:i.executing}])},null,2),k(" "+c(i.executing?"Running...":"Re-run"),1)],8,na)])]),i.result?(e(),n("div",{key:0,class:A(["analysis-result-container",i.result.success?"success":"failed"])},[t("div",sa,[t("span",aa,[i.result.success?(e(),n(b,{key:0},[i.result.has_findings?(e(),n(b,{key:0},[a[5]||(a[5]=t("i",{class:"iconoir-warning-triangle status-findings"},null,-1)),a[6]||(a[6]=k(" Completed with findings ",-1))],64)):(e(),n(b,{key:1},[a[7]||(a[7]=t("i",{class:"iconoir-check-circle status-success"},null,-1)),a[8]||(a[8]=k(" Completed successfully ",-1))],64))],64)):(e(),n(b,{key:1},[a[9]||(a[9]=t("i",{class:"iconoir-xmark-circle status-error"},null,-1)),a[10]||(a[10]=k(" Failed ",-1))],64))]),i.result.duration?(e(),n("span",oa,[a[11]||(a[11]=t("i",{class:"iconoir-timer"},null,-1)),k(" "+c(i.result.duration.toFixed(2))+"s ",1)])):h("",!0)]),i.result.success?h("",!0):(e(),n("div",la,[a[13]||(a[13]=t("strong",null,"Error:",-1)),k(" "+c(i.result.error)+" ",1),i.result.error_backtrace?.length?(e(),n("details",ia,[a[12]||(a[12]=t("summary",null,"Show backtrace",-1)),t("pre",ra,c(i.result.error_backtrace.join(`
|
|
1
|
+
import{z as mt,l as V,C as pt,_ as q,o as e,c as n,a as t,d as k,F as b,x as L,b as h,y as r,i as ot,g as D,n as A,t as c,q as R,f as T,w as U,e as I,r as E,D as lt,B as P,E as Z,G as it,k as G,p as rt,s as tt,H as yt}from"./index-Zr9MoxJi.js";import{r as ut}from"./useGraphviz-BN4iwLLN.js";import{i as ct}from"./usePanZoom-BEXq_r0S.js";import{h as kt,n as et,t as ft,a as Q,i as nt,c as ht,b as gt,R as _t}from"./ResourceList-DwsfI85-.js";import{r as st}from"./useMermaid-DSo5f1Jc.js";import{h as bt}from"./useHighlight-DmGaxZxx.js";import"./mermaid-DUllW9QE.js";function F(u){const a=mt();function d(i){const f=i.target.closest("a[href]");if(!f)return;const y=f.getAttribute("href");!y||!y.startsWith("/kinds/")||(i.preventDefault(),a.push(y))}V(()=>{u.value?.addEventListener("click",d)}),pt(()=>{u.value?.removeEventListener("click",d)})}const $t={key:0,class:"relations-section"},wt={class:"relations-grid"},xt={class:"relations-column relations-outgoing"},jt={class:"relation-kind"},It={class:"relation-verb"},St={class:"instance-badges"},Ct={key:1,class:"relations-empty"},Tt={class:"relations-column relations-incoming"},At={class:"relation-kind"},Lt={class:"relation-verb"},Ot={class:"instance-badges"},Mt={key:1,class:"relations-empty"},Et={__name:"RelationsGrid",props:{data:Object},setup(u){const a=u,d=ot("kinds"),i=r(()=>a.data.relations||{}),f=r(()=>a.data.references||{}),y=r(()=>Object.keys(i.value).length>0||Object.keys(f.value).length>0);function l(x){return d?.value?.kinds?d.value.kinds.find($=>$.kind===x):null}function o(x){return l(x)?.icon||"cube"}function m(x){return l(x)?.layer||"technology"}const s=r(()=>{const x=[];for(const[$,S]of Object.entries(i.value))for(const[p,v]of Object.entries(S))x.push({verb:$,kind:p,names:[...v].sort()});return x}),g=r(()=>{const x=[];for(const[$,S]of Object.entries(f.value))for(const[p,v]of Object.entries(S))x.push({verb:p||"references",kind:$,names:[...v].sort()});return x});return(x,$)=>{const S=D("router-link");return y.value?(e(),n("article",$t,[$[2]||($[2]=t("header",null,[t("h2",null,"Relations")],-1)),t("div",wt,[t("div",xt,[$[0]||($[0]=t("h3",null,[k("Outgoing "),t("i",{class:"iconoir-arrow-right"})],-1)),s.value.length?(e(!0),n(b,{key:0},L(s.value,(p,v)=>(e(),n("div",{key:"out-"+v,class:"relation-group"},[t("div",jt,[t("i",{class:A(`iconoir-${o(p.kind)} icon-${m(p.kind)}`)},null,2),t("span",null,c(p.kind)+" ("+c(p.names.length)+")",1)]),t("div",It,c(p.verb)+" ("+c(p.names.length)+")",1),t("div",St,[(e(!0),n(b,null,L(p.names,C=>(e(),R(S,{key:C,class:"badge badge-info",to:{name:"instance",params:{kind:p.kind,instance:C}}},{default:T(()=>[k(c(C),1)]),_:2},1032,["to"]))),128))])]))),128)):(e(),n("div",Ct,"None"))]),t("div",Tt,[$[1]||($[1]=t("h3",null,[t("i",{class:"iconoir-arrow-right"}),k(" Incoming")],-1)),g.value.length?(e(!0),n(b,{key:0},L(g.value,(p,v)=>(e(),n("div",{key:"in-"+v,class:"relation-group"},[t("div",At,[t("i",{class:A(`iconoir-${o(p.kind)} icon-${m(p.kind)}`)},null,2),t("span",null,c(p.kind)+" ("+c(p.names.length)+")",1)]),t("div",Lt,c(p.verb)+" ("+c(p.names.length)+")",1),t("div",Ot,[(e(!0),n(b,null,L(p.names,C=>(e(),R(S,{key:C,class:"badge badge-info",to:{name:"instance",params:{kind:p.kind,instance:C}}},{default:T(()=>[k(c(C),1)]),_:2},1032,["to"]))),128))])]))),128)):(e(),n("div",Mt,"None"))])])])):h("",!0)}}},J=q(Et,[["__scopeId","data-v-3a1d98d9"]]),Rt={key:0,class:"requirements-section"},qt={class:"requirements-table"},Dt={class:"requirement-status"},Ht=["title"],Bt={key:1,class:"view-empty-value"},Nt={class:"requirement-story"},Pt=["innerHTML"],Gt={key:1,class:"view-empty-value"},Ut={__name:"RequirementsSection",props:{data:Object},setup(u){const a=u,d=r(()=>{const l=a.data.relations||{},o=[],m={realizes:"implemented",partiallyRealizes:"partial",plans:"planned"};for(const[s,g]of Object.entries(m)){const x=l[s]||{},$=x.BusinessRequirement||x.businessRequirements||[];for(const S of $)o.push({name:S,status:g,verb:s})}return o}),i=E([]);U(d,async l=>{if(!l.length){i.value=[];return}const o=await Promise.all(l.map(async m=>{try{const g=(await lt("BusinessRequirement",m.name)).metadata?.annotations||{};return{...m,priority:g["requirement/priority"]||null,story:g["requirement/story"]||null}}catch{return{...m,priority:null,story:null}}}));i.value=o},{immediate:!0});function f(l){switch(l){case"implemented":return"iconoir-check-circle";case"partial":return"iconoir-half-moon";case"planned":return"iconoir-calendar";default:return"iconoir-circle"}}function y(l){const o=a.data.name;return`/search?q=${encodeURIComponent(`BusinessRequirement: <- "${o}" & requirement/priority == "${l}"`)}`}return(l,o)=>{const m=D("router-link");return d.value.length?(e(),n("article",Rt,[o[1]||(o[1]=t("header",null,[t("h2",null,"Business Requirements")],-1)),t("table",qt,[o[0]||(o[0]=t("thead",null,[t("tr",null,[t("th"),t("th",null,"Name"),t("th",null,"Priority"),t("th",null,"Story")])],-1)),t("tbody",null,[(e(!0),n(b,null,L(i.value,s=>(e(),n("tr",{key:s.name},[t("td",Dt,[t("i",{class:A([[f(s.status),`status-${s.status}`],"requirement-status-icon"]),title:s.status},null,10,Ht)]),t("td",null,[I(m,{to:{name:"instance",params:{kind:"BusinessRequirement",instance:s.name}}},{default:T(()=>[k(c(s.name),1)]),_:2},1032,["to"])]),t("td",null,[s.priority?(e(),R(m,{key:0,class:"badge badge-info",to:y(s.priority)},{default:T(()=>[k(c(s.priority),1)]),_:2},1032,["to"])):(e(),n("span",Bt,"-"))]),t("td",Nt,[s.story?(e(),n("div",{key:0,innerHTML:s.story},null,8,Pt)):(e(),n("span",Gt,"-"))])]))),128))])])])):h("",!0)}}},Ft=q(Ut,[["__scopeId","data-v-1e32a2b6"]]),Wt={key:0},Vt={scope:"row"},zt=["href"],Kt={class:"git-info"},Qt={class:"git-item"},Zt={class:"git-clone-command"},Jt={__name:"GitInfo",props:{annotations:Object},setup(u){const a=u,d=r(()=>a.annotations["repository/git"]),i=r(()=>d.value?kt(d.value):null);function f(){navigator.clipboard.writeText(`git clone ${d.value}`)}return(y,l)=>d.value?(e(),n("tr",Wt,[t("th",Vt,[t("a",{class:"git-link",href:i.value,target:"_blank"},"Git Repo",8,zt)]),t("td",null,[t("div",Kt,[t("div",Qt,[l[0]||(l[0]=t("i",{class:"iconoir-git-branch"},null,-1)),t("code",Zt,"git clone "+c(d.value),1)]),t("button",{class:"copy-button",onClick:f,title:"Copy to clipboard"},[...l[1]||(l[1]=[t("i",{class:"iconoir-copy"},null,-1)])])])])])):h("",!0)}},Xt=q(Jt,[["__scopeId","data-v-ae19746e"]]),Yt={key:0},te={class:"language-distribution"},ee={class:"language-total"},ne={class:"language-count"},se={class:"language-bar"},ae=["title"],oe={class:"language-legend"},le={class:"other-languages"},ie={__name:"LanguageStats",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>{const l=a.annotations["scc/languages"];if(!l)return null;const o=l.split(",").map(p=>{const v=`scc/language/${p.trim()}/loc`;return{name:p.trim(),loc:parseInt(a.annotations[v]||"0",10)}}).sort((p,v)=>v.loc-p.loc),m=o.reduce((p,v)=>p+v.loc,0);if(m<=0)return null;const s=o.filter(p=>p.loc/m*100>=.1),g=s.slice(0,10),x=[...s.slice(10),...o.filter(p=>p.loc/m*100<.1)],$=x.reduce((p,v)=>p+v.loc,0),S=[...g];return $>0&&S.push({name:"Other",loc:$,isOther:!0,otherNames:x.map(p=>p.name)}),{display:S,total:m}});function i(l){return(l/d.value.total*100).toFixed(1)}function f(l,o){return o.isOther?"lang-other":`lang-${l}`}function y(l,o){return{name:"search",query:{q:`${l} == "${o}"`}}}return(l,o)=>{const m=D("router-link");return d.value?(e(),n("tr",Yt,[o[3]||(o[3]=t("th",{scope:"row"},"Languages",-1)),t("td",null,[t("div",te,[t("div",ee,[t("span",ne,c(P(et)(d.value.total)),1),o[0]||(o[0]=t("span",{class:"language-label"},"lines of code",-1))]),t("div",se,[(e(!0),n(b,null,L(d.value.display,(s,g)=>(e(),n("div",{key:s.name,class:A(["language-bar-segment",f(g,s)]),style:Z({width:i(s.loc)+"%"}),title:`${s.name}: ${P(et)(s.loc)} (${i(s.loc)}%)`},null,14,ae))),128))]),t("div",oe,[(e(!0),n(b,null,L(d.value.display,(s,g)=>(e(),n("div",{key:s.name,class:"language-legend-item"},[t("div",{class:A(["language-legend-dot",f(g,s)])},null,2),s.isOther?(e(),n(b,{key:0},[t("span",null,"Other "+c(i(s.loc))+"%",1),t("span",le,[o[1]||(o[1]=k(" (",-1)),(e(!0),n(b,null,L(s.otherNames,(x,$)=>(e(),n(b,{key:x},[I(m,{to:y("scc/languages",x)},{default:T(()=>[k(c(x),1)]),_:2},1032,["to"]),$<s.otherNames.length-1?(e(),n(b,{key:0},[k(", ")],64)):h("",!0)],64))),128)),o[2]||(o[2]=k(") ",-1))])],64)):(e(),R(m,{key:1,to:y("scc/languages",s.name)},{default:T(()=>[k(c(s.name)+" "+c(i(s.loc))+"% ",1)]),_:2},1032,["to"]))]))),128))])])])])):h("",!0)}}},re=q(ie,[["__scopeId","data-v-c306da87"]]),ue={key:0},ce={class:"project-estimate"},de={key:0,class:"estimate-item"},ve={class:"estimate-value"},me={key:1,class:"estimate-item"},pe={class:"estimate-value"},ye={key:2,class:"estimate-item"},ke={class:"estimate-value"},fe={__name:"ProjectEstimate",props:{annotations:Object},setup(u){const a=u,d=r(()=>Q("cost",a.annotations["scc/estimatedCost"])),i=r(()=>Q("schedule",a.annotations["scc/estimatedScheduleMonths"])),f=r(()=>Q("team",a.annotations["scc/estimatedPeople"])),y=r(()=>d.value!=null||i.value!=null||f.value!=null);return(l,o)=>y.value?(e(),n("tr",ue,[o[6]||(o[6]=t("th",{scope:"row"},[k(" Project Estimate "),t("span",{class:"estimate-note",title:"Estimates adjusted for €80k salary and AI-assisted development (3x productivity)"},[t("i",{class:"iconoir-info-circle"})])],-1)),t("td",null,[t("div",ce,[d.value!=null?(e(),n("div",de,[o[0]||(o[0]=t("i",{class:"iconoir-euro"},null,-1)),o[1]||(o[1]=t("span",{class:"estimate-label"},"Cost:",-1)),t("span",ve,c(P(ft)(d.value)),1)])):h("",!0),i.value!=null?(e(),n("div",me,[o[2]||(o[2]=t("i",{class:"iconoir-calendar"},null,-1)),o[3]||(o[3]=t("span",{class:"estimate-label"},"Schedule:",-1)),t("span",pe,c(i.value.toFixed(1))+" months",1)])):h("",!0),f.value!=null?(e(),n("div",ye,[o[4]||(o[4]=t("i",{class:"iconoir-group"},null,-1)),o[5]||(o[5]=t("span",{class:"estimate-label"},"Team:",-1)),t("span",ke,c(f.value)+" people",1)])):h("",!0)])])])):h("",!0)}},he=q(fe,[["__scopeId","data-v-6cb46a9d"]]),ge={key:0},_e={class:"repository-distribution"},be={class:"repository-total"},$e={class:"repository-count"},we={class:"repository-bar"},xe=["title"],je={class:"repository-legend"},Ie={__name:"RepositoriesBar",props:{annotations:Object},setup(u){const a=u,d=r(()=>parseInt(a.annotations["repository/artifacts/total"]||"0",10)),i=r(()=>parseInt(a.annotations["repository/artifacts/active"]||"0",10)),f=r(()=>parseInt(a.annotations["repository/artifacts/abandoned"]||"0",10)),y=r(()=>parseInt(a.annotations["repository/artifacts/archived"]||"0",10)),l=r(()=>parseInt(a.annotations["repository/artifacts/highBusFactor"]||"0",10)),o=r(()=>d.value>0),m=r(()=>i.value-l.value),s=r(()=>d.value-i.value-f.value-y.value);function g($){return($/d.value*100).toFixed(1)}const x=r(()=>{const $=[];return m.value>0&&$.push({cls:"status-active",value:m.value,label:"Active (healthy)"}),l.value>0&&$.push({cls:"status-high-bus-factor",value:l.value,label:"Active (high bus factor)"}),y.value>0&&$.push({cls:"status-archived",value:y.value,label:"Archived"}),s.value>0&&$.push({cls:"status-other",value:s.value,label:"Other"}),f.value>0&&$.push({cls:"status-abandoned",value:f.value,label:"Abandoned"}),$});return($,S)=>o.value?(e(),n("tr",ge,[S[1]||(S[1]=t("th",{scope:"row"},"Repositories",-1)),t("td",null,[t("div",_e,[t("div",be,[t("span",$e,c(d.value),1),S[0]||(S[0]=t("span",{class:"repository-label"},"repositories",-1))]),t("div",we,[(e(!0),n(b,null,L(x.value,p=>(e(),n("div",{key:p.cls,class:A(["repository-bar-segment",p.cls]),style:Z({width:g(p.value)+"%"}),title:`${p.label}: ${p.value} (${g(p.value)}%)`},null,14,xe))),128))]),t("div",je,[(e(!0),n(b,null,L(x.value,p=>(e(),n("div",{key:p.cls,class:"repository-legend-item"},[t("div",{class:A(["repository-legend-dot",p.cls])},null,2),t("span",null,c(p.value)+" "+c(p.label.toLowerCase()),1)]))),128))])])])])):h("",!0)}},Se=q(Ie,[["__scopeId","data-v-1fbb3e92"]]),Ce=["title"],Te={__name:"SparklineChart",props:{values:{type:String,required:!0},type:{type:String,default:"commits"},maxHeight:{type:Number,default:16},colorClass:{type:String,default:null}},setup(u){const a=u,d=r(()=>!a.values||a.values.trim()===""?[]:a.values.split(",").map(l=>parseInt(l,10)||0)),i=r(()=>{const l=Math.max(...d.value);return l===0?1:l});function f(l){return l===0?0:Math.max(2,Math.round(l/i.value*a.maxHeight))}const y=r(()=>{switch(a.type){case"created":return" issues created";case"resolved":return" issues resolved";default:return" commits"}});return(l,o)=>(e(),n("div",{class:A(["activity-sparkline",u.colorClass])},[(e(!0),n(b,null,L(d.value,(m,s)=>(e(),n("div",{key:s,class:A(["activity-sparkline-bar",{empty:m===0}]),style:Z({height:f(m)+"px"}),title:m+y.value},null,14,Ce))),128))],2))}},W=q(Te,[["__scopeId","data-v-c5e6ffa5"]]),Ae={key:0},Le={class:"activity-summary"},Oe={key:0,class:"activity-item"},Me={class:"activity-value sparkline-total"},Ee={key:1,class:"activity-item"},Re={key:0,class:"activity-value sparkline-total"},qe={key:1,class:"activity-value contributors-total"},De={key:2,class:"activity-item"},He={class:"activity-value"},Be={key:3,class:"activity-item"},Ne={key:4,class:"activity-item"},Pe={__name:"ActivityInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>a.annotations["activity/commits"]),i=r(()=>a.annotations["activity/contributors"]),f=r(()=>a.annotations["activity/contributors/6m"]),y=r(()=>a.annotations["activity/contributors/total"]),l=r(()=>a.annotations["activity/status"]),o=r(()=>a.annotations["activity/busFactor"]),m=r(()=>a.annotations["activity/createdAt"]),s=r(()=>d.value||i.value||l.value||o.value||m.value),g=r(()=>d.value?d.value.split(",").map(Number).reduce((p,v)=>p+v,0):0),x=r(()=>m.value?new Date(m.value).toLocaleDateString("en",{month:"short",year:"numeric"}):null),$=r(()=>{const p=o.value;let v="";switch(p){case"high":v="High risk: One contributor accounts for >75% of commits in the last 6 months";break;case"medium":v="Medium risk: One contributor accounts for 50-75% of commits in the last 6 months";break;case"low":v="Low risk: No single contributor dominates the codebase";break;default:v="Unknown: Not enough recent activity to assess"}return f.value&&(v+=` (${f.value} unique contributors)`),v});function S(p,v){return{name:"search",query:{q:`${p} == "${v}"`}}}return(p,v)=>{const C=D("router-link");return s.value?(e(),n("tr",Ae,[v[10]||(v[10]=t("th",{scope:"row"},"Activity",-1)),t("td",null,[t("div",Le,[d.value?(e(),n("div",Oe,[v[0]||(v[0]=t("i",{class:"iconoir-git-commit"},null,-1)),v[1]||(v[1]=t("span",{class:"activity-label"},"Commits:",-1)),I(W,{values:d.value},null,8,["values"]),t("span",Me,c(g.value),1)])):h("",!0),i.value?(e(),n("div",Ee,[v[2]||(v[2]=t("i",{class:"iconoir-community"},null,-1)),v[3]||(v[3]=t("span",{class:"activity-label"},"Contributors:",-1)),I(W,{values:i.value,"color-class":"contributors-sparkline"},null,8,["values"]),f.value?(e(),n("span",Re,c(f.value),1)):h("",!0),y.value?(e(),n("span",qe,"("+c(y.value)+" total)",1)):h("",!0)])):h("",!0),m.value?(e(),n("div",De,[v[4]||(v[4]=t("i",{class:"iconoir-calendar"},null,-1)),v[5]||(v[5]=t("span",{class:"activity-label"},"Created:",-1)),t("span",He,c(x.value),1)])):h("",!0),l.value?(e(),n("div",Be,[v[6]||(v[6]=t("i",{class:"iconoir-info-circle"},null,-1)),v[7]||(v[7]=t("span",{class:"activity-label"},"Status:",-1)),I(C,{class:A(`activity-value status-${l.value}`),to:S("activity/status",l.value)},{default:T(()=>[k(c(l.value),1)]),_:1},8,["class","to"])])):h("",!0),o.value?(e(),n("div",Ne,[v[8]||(v[8]=t("i",{class:"iconoir-warning-triangle"},null,-1)),v[9]||(v[9]=t("span",{class:"activity-label"},"Bus Factor:",-1)),I(C,{class:A(`activity-value bus-factor-${o.value}`),to:S("activity/busFactor",o.value),title:$.value},{default:T(()=>[k(c(o.value),1)]),_:1},8,["class","to","title"])])):h("",!0)])])])):h("",!0)}}},Ge=q(Pe,[["__scopeId","data-v-c3143572"]]),Ue={key:0},Fe={key:1},We={class:"jira-info"},Ve=["href"],ze={class:"jira-metric"},Ke={class:"jira-metric-total"},Qe={class:"jira-metric"},Ze={class:"jira-metric-total"},Je={key:0,class:"iconoir-arrow-down-circle"},Xe={key:1,class:"iconoir-arrow-up-circle"},Ye={key:2,class:"iconoir-minus-circle"},tn={class:"jira-trend-text"},en={key:2},nn=["href"],sn={key:1,class:"team-value"},an={key:3},on={class:"team-stats"},ln={key:0,class:"team-stat-item"},rn={class:"team-stat-value"},un={key:1,class:"team-stat-item"},cn={class:"team-stat-value"},dn={key:4},vn={class:"team-members"},mn=["href"],pn={key:1,class:"team-member"},yn={__name:"TeamInfo",props:{annotations:Object,instance:Object},setup(u){const a=u,d=r(()=>a.annotations["team/lead"]),i=r(()=>a.annotations["team/members"]),f=r(()=>a.annotations["team/size"]),y=r(()=>a.annotations["team/lead/size"]),l=r(()=>a.annotations["team/jira"]),o=r(()=>a.annotations["jira/projectUrl"]),m=r(()=>a.annotations["jira/issues/created"]),s=r(()=>a.annotations["jira/issues/resolved"]),g=r(()=>a.instance?.kind==="BusinessActor"),x=r(()=>`kind in ("ApplicationService", "ApplicationComponent") & ~> $(TechnologyArtifact: -{maintainedBy}> "${a.instance?.name||""}")`),$=r(()=>i.value?i.value.split(/,|\n/).map(_=>_.trim()).filter(Boolean):[]);function S(_){const w=_.match(/<([^>]+@[^>]+)>/);return w?w[1]:null}function p(_){return{name:"search",query:{q:_}}}const v=r(()=>m.value?m.value.split(",").map(Number).reduce((_,w)=>_+w,0):0),C=r(()=>s.value?s.value.split(",").map(Number).reduce((_,w)=>_+w,0):0),j=r(()=>m.value?m.value.split(",").map(Number):[]),M=r(()=>s.value?s.value.split(",").map(Number):[]),N=r(()=>{const _=j.value.length?v.value/j.value.length:0,w=M.value.length?C.value/M.value.length:0;return _-w}),O=r(()=>{const _=N.value;return _<-1?"positive":_>1?"negative":"neutral"});return(_,w)=>{const B=D("router-link");return e(),n(b,null,[g.value?(e(),n("tr",Ue,[w[1]||(w[1]=t("th",{scope:"row"},"Owned Services",-1)),t("td",null,[I(B,{class:"badge badge-info",to:p(x.value)},{default:T(()=>[...w[0]||(w[0]=[k(" Show ApplicationServices & Components ",-1)])]),_:1},8,["to"])])])):h("",!0),l.value&&o.value?(e(),n("tr",Fe,[w[4]||(w[4]=t("th",{scope:"row"},"Jira Project",-1)),t("td",null,[t("div",We,[t("a",{class:"badge badge-info",href:o.value,target:"_blank"},c(l.value),9,Ve),m.value||s.value?(e(),n(b,{key:0},[t("div",ze,[w[2]||(w[2]=t("span",{class:"jira-metric-label"},"Created (6m):",-1)),I(W,{values:m.value,type:"created","color-class":"jira-created-sparkline"},null,8,["values"]),t("span",Ke,c(v.value),1)]),t("div",Qe,[w[3]||(w[3]=t("span",{class:"jira-metric-label"},"Resolved (6m):",-1)),I(W,{values:s.value,type:"resolved","color-class":"jira-resolved-sparkline"},null,8,["values"]),t("span",Ze,c(C.value),1)]),t("div",{class:A(["jira-trend",`jira-trend-${O.value}`])},[O.value==="positive"?(e(),n("i",Je)):O.value==="negative"?(e(),n("i",Xe)):(e(),n("i",Ye)),t("span",tn,c(N.value>0?"+":"")+c(N.value.toFixed(1))+"/mo",1)],2)],64)):h("",!0)])])])):h("",!0),d.value?(e(),n("tr",en,[w[5]||(w[5]=t("th",{scope:"row"},"Team Lead",-1)),t("td",null,[S(d.value)?(e(),n("a",{key:0,class:"team-value",href:`mailto:${S(d.value)}`},c(d.value),9,nn)):(e(),n("span",sn,c(d.value),1))])])):h("",!0),f.value||y.value?(e(),n("tr",an,[w[8]||(w[8]=t("th",{scope:"row"},"Team Stats",-1)),t("td",null,[t("div",on,[y.value?(e(),n("div",ln,[t("span",rn,c(y.value),1),w[6]||(w[6]=t("span",{class:"team-stat-label"},"leads",-1))])):h("",!0),f.value?(e(),n("div",un,[t("span",cn,c(f.value),1),w[7]||(w[7]=t("span",{class:"team-stat-label"},"members",-1))])):h("",!0)])])])):h("",!0),i.value?(e(),n("tr",dn,[w[9]||(w[9]=t("th",{scope:"row"},"Team Members",-1)),t("td",null,[t("div",vn,[(e(!0),n(b,null,L($.value,H=>(e(),n(b,{key:H},[S(H)?(e(),n("a",{key:0,class:"team-member",href:`mailto:${S(H)}`},c(H),9,mn)):(e(),n("span",pn,c(H),1))],64))),128))])])])):h("",!0)],64)}}},kn=q(yn,[["__scopeId","data-v-4e1ea26f"]]),fn={key:0},hn={class:"deployment-types"},gn={__name:"DeploymentInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>(a.annotations["repository/artifacts"]||"none").split(",").map(o=>o.trim())),i=r(()=>d.value[0]!=="none"),f=[{key:"container",icon:"iconoir-box",label:"Container Image"},{key:"chart",icon:"iconoir-packages",label:"Helm Chart"},{key:"binary",icon:"iconoir-terminal",label:"Binary"},{key:"debian",icon:"iconoir-package",label:"Debian Package"},{key:"rpm",icon:"iconoir-package",label:"RPM Package"}];function y(l,o){return{name:"search",query:{q:`${l} == "${o}"`}}}return(l,o)=>{const m=D("router-link");return i.value?(e(),n("tr",fn,[o[0]||(o[0]=t("th",{scope:"row"},"Deployment Artifacts",-1)),t("td",null,[t("div",hn,[(e(),n(b,null,L(f,s=>(e(),n(b,{key:s.key},[d.value.includes(s.key)?(e(),R(m,{key:0,class:"deployment-item",to:y("repository/artifacts",s.key)},{default:T(()=>[t("i",{class:A(s.icon)},null,2),t("strong",null,c(s.label),1)]),_:2},1032,["to"])):h("",!0)],64))),64))])])])):h("",!0)}}},_n=q(gn,[["__scopeId","data-v-7cfa7667"]]),bn={class:"workflow-platforms"},$n=["checked"],wn=["checked"],xn=["checked"],jn={class:"info-section-cell",colspan:"2"},In={open:""},Sn={class:"workflow-types"},Cn={class:"workflow-category"},Tn=["checked"],An=["checked"],Ln={class:"workflow-category"},On=["checked"],Mn=["checked"],En=["checked"],Rn=["checked"],qn={class:"workflow-category"},Dn=["checked"],Hn=["checked"],Bn={class:"workflow-category"},Nn=["checked"],Pn=["checked"],Gn={__name:"WorkflowInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>(a.annotations["workflow/platforms"]||"none").split(",").map(m=>m.trim())),i=r(()=>(a.annotations["workflow/types"]||"none").split(",").map(m=>m.trim())),f=r(()=>d.value[0]!=="none"||i.value[0]!=="none"),y=r(()=>i.value.includes("test"));function l(m,s){return{name:"search",query:{q:`${m} == "${s}"`}}}function o(m,s){return m.includes(s)}return(m,s)=>{const g=D("router-link");return f.value?(e(),n(b,{key:0},[t("tr",null,[s[3]||(s[3]=t("th",{scope:"row"},"CI/CD Platforms",-1)),t("td",null,[t("div",bn,[I(g,{class:"workflow-platform-item",to:l("workflow/platforms","github-actions")},{default:T(()=>[t("input",{type:"checkbox",disabled:"",checked:o(d.value,"github-actions")},null,8,$n),s[0]||(s[0]=t("label",null,"GitHub Actions",-1))]),_:1},8,["to"]),I(g,{class:"workflow-platform-item",to:l("workflow/platforms","gitlab-ci")},{default:T(()=>[t("input",{type:"checkbox",disabled:"",checked:o(d.value,"gitlab-ci")},null,8,wn),s[1]||(s[1]=t("label",null,"GitLab CI",-1))]),_:1},8,["to"]),I(g,{class:"workflow-platform-item",to:l("workflow/platforms","makefile")},{default:T(()=>[t("input",{type:"checkbox",disabled:"",checked:o(d.value,"makefile")},null,8,xn),s[2]||(s[2]=t("label",null,"Makefile",-1))]),_:1},8,["to"])])])]),t("tr",null,[t("td",jn,[t("details",In,[s[18]||(s[18]=t("summary",null,[t("strong",null,"Workflow Types")],-1)),t("div",Sn,[t("div",null,[t("div",Cn,[s[6]||(s[6]=t("strong",null,"Build & Deploy",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"build")},null,8,Tn),I(g,{to:l("workflow/types","build")},{default:T(()=>[...s[4]||(s[4]=[k("Build",-1)])]),_:1},8,["to"])]),t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"deploy")},null,8,An),I(g,{to:l("workflow/types","deploy")},{default:T(()=>[...s[5]||(s[5]=[k("Deploy",-1)])]),_:1},8,["to"])])])]),t("div",Ln,[s[11]||(s[11]=t("strong",null,"Testing",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"test")},null,8,On),I(g,{to:l("workflow/types","test")},{default:T(()=>[...s[7]||(s[7]=[k("Test (generic)",-1)])]),_:1},8,["to"])]),t("li",{class:A({"grayed-out":y.value})},[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"unit-test")},null,8,Mn),I(g,{to:l("workflow/types","unit-test")},{default:T(()=>[...s[8]||(s[8]=[k("Unit Tests",-1)])]),_:1},8,["to"])],2),t("li",{class:A({"grayed-out":y.value})},[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"integration-test")},null,8,En),I(g,{to:l("workflow/types","integration-test")},{default:T(()=>[...s[9]||(s[9]=[k("Integration Tests",-1)])]),_:1},8,["to"])],2),t("li",{class:A({"grayed-out":y.value})},[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"smoke-test")},null,8,Rn),I(g,{to:l("workflow/types","smoke-test")},{default:T(()=>[...s[10]||(s[10]=[k("Smoke Tests",-1)])]),_:1},8,["to"])],2)])]),t("div",qn,[s[14]||(s[14]=t("strong",null,"Quality & Security",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"lint")},null,8,Dn),I(g,{to:l("workflow/types","lint")},{default:T(()=>[...s[12]||(s[12]=[k("Linting",-1)])]),_:1},8,["to"])]),t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"security-scan")},null,8,Hn),I(g,{to:l("workflow/types","security-scan")},{default:T(()=>[...s[13]||(s[13]=[k("Security Scan",-1)])]),_:1},8,["to"])])])]),t("div",Bn,[s[17]||(s[17]=t("strong",null,"Automation",-1)),t("ul",null,[t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"dependency-update")},null,8,Nn),I(g,{to:l("workflow/types","dependency-update")},{default:T(()=>[...s[15]||(s[15]=[k("Dependency Updates",-1)])]),_:1},8,["to"])]),t("li",null,[t("input",{type:"checkbox",disabled:"",checked:o(i.value,"ticket-creation")},null,8,Pn),I(g,{to:l("workflow/types","ticket-creation")},{default:T(()=>[...s[16]||(s[16]=[k("Ticket Creation",-1)])]),_:1},8,["to"])])])])])])])])])],64)):h("",!0)}}},Un=q(Gn,[["__scopeId","data-v-62c25aa1"]]),Fn={class:"info-section-cell",colspan:"2"},Wn={class:"agentic-tools"},Vn={class:"tool-item-header"},zn=["checked"],Kn={class:"tool-item-description"},Qn={__name:"AgenticTools",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>(a.annotations["agentic/tools"]||"none").split(",").map(l=>l.trim())),i=r(()=>d.value[0]!=="none"),f=[{key:"claude",icon:"iconoir-brain",name:"Claude",description:"Anthropic Claude API"},{key:"cursor",icon:"iconoir-edit-pencil",name:"Cursor",description:"AI code editor"},{key:"aider",icon:"iconoir-terminal",name:"Aider",description:"CLI pair programmer"},{key:"github-copilot",icon:"iconoir-github",name:"GitHub Copilot",description:"GitHub AI assistant"},{key:"agents",icon:"iconoir-cpu-warning",name:"Custom Agents",description:"Custom AI agents"}];function y(l,o){return{name:"search",query:{q:`${l} == "${o}"`}}}return(l,o)=>{const m=D("router-link");return i.value?(e(),n(b,{key:0},[o[0]||(o[0]=t("tr",null,[t("th",{scope:"row",colspan:"2"},[t("i",{class:"iconoir-cpu"}),k(" AI Coding Assistants ")])],-1)),t("tr",null,[t("td",Fn,[t("div",Wn,[(e(),n(b,null,L(f,s=>I(m,{key:s.key,class:A(["tool-item",{"not-implemented":!d.value.includes(s.key)}]),to:y("agentic/tools",s.key)},{default:T(()=>[t("div",Vn,[t("input",{type:"checkbox",checked:d.value.includes(s.key),disabled:""},null,8,zn),t("i",{class:A([s.icon,d.value.includes(s.key)?"implemented":"not-implemented"])},null,2),t("strong",null,c(s.name),1)]),t("div",Kn,c(s.description),1)]),_:2},1032,["class","to"])),64))])])])],64)):h("",!0)}}},Zn=q(Qn,[["__scopeId","data-v-9f667c51"]]),Jn={key:0},Xn={class:"activity-summary"},Yn={class:"activity-item"},ts={key:0,class:"activity-item"},es={class:"activity-value"},ns={key:1,class:"activity-item"},ss={key:0,class:"license-details-inline"},as={class:"badge badge-secondary"},os={class:"license-overflow"},ls={__name:"LicenseInfo",props:{annotations:Object,kind:String},setup(u){const a=u,d=r(()=>a.annotations["license/spdx"]),i=r(()=>a.annotations["license/category"]||"unknown"),f=r(()=>a.annotations["license/dependencies/count"]),y=r(()=>(a.annotations["license/dependencies/ecosystems"]||"").split(",").map(p=>p.trim()).filter(Boolean)),l=r(()=>a.annotations["license/dependencies/risk"]||"unknown"),o=r(()=>a.annotations["license/dependencies/copyleft"]||"unknown"),m=r(()=>(a.annotations["license/dependencies/licenses"]||"").split(",").map(p=>p.trim()).filter(Boolean)),s=r(()=>{switch(i.value){case"permissive":return"badge-success";case"weak-copyleft":return"badge-warning";case"copyleft":return"badge-danger";default:return"badge-secondary"}}),g=r(()=>{switch(l.value){case"low":return"badge-success";case"weak-copyleft":return"badge-warning";case"copyleft":return"badge-danger";default:return"badge-secondary"}}),x=r(()=>{switch(l.value){case"copyleft":return"Copyleft dependencies (GPL, AGPL) or >50% unknown licenses";case"weak-copyleft":return"Weak-copyleft dependencies (LGPL, MPL) present";case"low":return"All dependencies have known permissive licenses";default:return"No dependency license data available"}}),$=r(()=>m.value.filter(v=>v!=="unknown").map(v=>({name:v,count:parseInt(a.annotations[`license/dependencies/${v}/count`]||"0",10)})).sort((v,C)=>C.count-v.count));function S(p,v){return{name:"search",query:{q:`${p} == "${v}"`}}}return(p,v)=>{const C=D("router-link");return d.value?(e(),n("tr",Jn,[v[6]||(v[6]=t("th",{scope:"row"},"License",-1)),t("td",null,[t("div",Xn,[t("div",Yn,[v[0]||(v[0]=t("i",{class:"iconoir-shield-check"},null,-1)),I(C,{class:A(["badge",s.value]),to:S("license/spdx",d.value)},{default:T(()=>[k(c(d.value),1)]),_:1},8,["class","to"]),i.value!=="unknown"?(e(),R(C,{key:0,class:"badge badge-outline",to:S("license/category",i.value)},{default:T(()=>[k(c(i.value),1)]),_:1},8,["to"])):h("",!0)]),f.value&&parseInt(f.value)>0?(e(),n("div",ts,[v[2]||(v[2]=t("i",{class:"iconoir-box"},null,-1)),v[3]||(v[3]=t("span",{class:"activity-label"},"Dependencies:",-1)),t("span",es,c(f.value),1),(e(!0),n(b,null,L(y.value,j=>(e(),R(C,{key:j,class:"badge badge-info",to:S("license/dependencies/ecosystems",j)},{default:T(()=>[k(c(j),1)]),_:2},1032,["to"]))),128)),I(C,{class:A(["badge",g.value]),title:x.value,to:S("license/dependencies/risk",l.value)},{default:T(()=>[k("Risk: "+c(l.value),1)]),_:1},8,["class","title","to"]),o.value==="true"?(e(),R(C,{key:0,class:"badge badge-warning",to:S("license/dependencies/copyleft","true")},{default:T(()=>[...v[1]||(v[1]=[k("Copyleft present",-1)])]),_:1},8,["to"])):h("",!0)])):h("",!0),$.value.length?(e(),n("div",ns,[v[4]||(v[4]=t("i",{class:"iconoir-list"},null,-1)),v[5]||(v[5]=t("span",{class:"activity-label"},"Types:",-1)),(e(!0),n(b,null,L($.value.slice(0,5),j=>(e(),R(C,{key:j.name,class:"badge badge-outline",to:S("license/dependencies/licenses",j.name)},{default:T(()=>[k(c(j.count>0?`${j.name} (${j.count})`:j.name),1)]),_:2},1032,["to"]))),128)),$.value.length>5?(e(),n("details",ss,[t("summary",as,"+"+c($.value.length-5)+" more",1),t("div",os,[(e(!0),n(b,null,L($.value.slice(5),j=>(e(),R(C,{key:j.name,class:"badge badge-outline",to:S("license/dependencies/licenses",j.name)},{default:T(()=>[k(c(j.count>0?`${j.name} (${j.count})`:j.name),1)]),_:2},1032,["to"]))),128))])])):h("",!0)])):h("",!0)])])])):h("",!0)}}},is=q(ls,[["__scopeId","data-v-bd573961"]]),rs={key:0},us=["href"],cs=["href"],ds={__name:"ExternalLinks",props:{annotations:Object},setup(u){const a=u,d=r(()=>Object.entries(a.annotations).filter(([y])=>y.startsWith("link/")).sort(([y],[l])=>y.localeCompare(l))),i=r(()=>d.value.length>0),f=r(()=>{if(d.value.length<=10)return null;const y={};for(const[l,o]of d.value){const m=ht(o);y[m]||(y[m]=[]),y[m].push({key:l,url:o,name:l.replace("link/","")})}return Object.entries(y).sort(([l],[o])=>l.localeCompare(o))});return(y,l)=>i.value?(e(),n("tr",rs,[l[4]||(l[4]=t("th",{scope:"row"},"Links",-1)),t("td",null,[f.value?(e(!0),n(b,{key:0},L(f.value,([o,m])=>(e(),n(b,{key:o},[t("strong",null,c(o),1),l[1]||(l[1]=t("br",null,null,-1)),(e(!0),n(b,null,L(m,s=>(e(),n(b,{key:s.key},[t("a",{href:s.url,target:"_blank",rel:"noopener noreferrer"},[t("span",{class:A(P(nt)(s.url))},null,2),k(" "+c(s.name),1)],8,us),l[0]||(l[0]=t("br",null,null,-1))],64))),128)),l[2]||(l[2]=t("br",null,null,-1))],64))),128)):(e(!0),n(b,{key:1},L(d.value,([o,m])=>(e(),n(b,{key:o},[t("a",{href:m,target:"_blank",rel:"noopener noreferrer"},[t("span",{class:A(P(nt)(m))},null,2),k(" "+c(o.replace("link/","")),1)],8,cs),l[3]||(l[3]=t("br",null,null,-1))],64))),128))])])):h("",!0)}},vs={scope:"row"},ms=["innerHTML"],ps={key:1,class:"instance-badges"},ys=["href"],ks={__name:"AnnotationRow",props:{annotationKey:String,value:[String,Number,Boolean],kind:String,format:{type:String,default:null}},setup(u){const a=u,d=E(null);F(d);const i=r(()=>{const o=a.annotationKey.split("/");return o[o.length-1].replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^./,m=>m.toUpperCase())}),f=r(()=>typeof a.value=="string"&&/^https?:\/\//.test(a.value)),y=r(()=>a.format!=="tag_list"||typeof a.value!="string"?[]:a.value.split(",").map(o=>o.trim()).filter(Boolean));function l(o){return`/search?q=${encodeURIComponent(`${a.kind}: ${a.annotationKey} == "${o}"`)}`}return(o,m)=>{const s=D("router-link");return e(),n("tr",null,[t("th",vs,c(i.value),1),t("td",null,[u.format==="markdown"?(e(),n("div",{key:0,ref_key:"mdEl",ref:d,innerHTML:u.value},null,8,ms)):u.format==="tag_list"?(e(),n("div",ps,[(e(!0),n(b,null,L(y.value,g=>(e(),R(s,{key:g,class:"badge badge-info",to:l(g)},{default:T(()=>[k(c(g),1)]),_:2},1032,["to"]))),128))])):u.format==="tag_word"?(e(),R(s,{key:2,class:"badge badge-info",to:l(u.value)},{default:T(()=>[k(c(u.value),1)]),_:1},8,["to"])):(e(),n(b,{key:3},[f.value?(e(),n("a",{key:0,href:u.value,target:"_blank"},c(u.value),9,ys)):(e(),n(b,{key:1},[k(c(u.value),1)],64))],64))])])}}},fs={class:"instance-title-text"},hs={class:"instance-name"},gs={class:"instance-kind-subtitle"},_s={key:0,class:"generated-badge"},bs={class:"generated-script"},$s={key:0,class:"generated-time"},ws={key:0,class:"graph-container"},xs=["innerHTML"],js={key:1,class:"graph-too-large"},Is=["innerHTML"],Ss={class:"documentation"},Cs={__name:"InstanceDetail",props:{data:Object,kind:String,kindMeta:Object},setup(u){const a=u,d=E(""),i=E(null);let f=null;const y=E(null);F(y);const l=r(()=>a.data.metadata?.annotations||{}),o=r(()=>Object.keys(a.data.relations||{}).length>0),m=r(()=>{const j=a.data.references||{};return o.value||Object.keys(j).length>0}),s=r(()=>l.value["generated/script"]),g=r(()=>l.value["generated/at"]),x=r(()=>l.value["architecture/description"]),$=["scc/language/","repository/artifacts/","link/","team/","jira/","generated/","license/"],S=new Set(["scc/languages","architecture/description","workflow/platforms","workflow/types","agentic/tools","repository/artifacts","repository/git","repository/visibility"]),p=[/^scc\/estimated(Cost|ScheduleMonths|People)$/,/^activity\/(commits|contributors(\/.*)?|status|busFactor|createdAt)$/,/^scc\/language\/.+\/loc$/,/^repository\/$/],v=r(()=>Object.entries(l.value).filter(([j])=>!(S.has(j)||$.some(M=>j.startsWith(M))||p.some(M=>M.test(j)))));V(async()=>{if(o.value){const j=await it(a.kind,a.data.name);d.value=j?await ut(j):"",await G(),C()}await G(),y.value&&st(y.value)}),U(x,async()=>{await G(),y.value&&st(y.value)}),rt(()=>{f?.destroy()});function C(){if(!i.value)return;const j=i.value.querySelector("svg");j&&(f=ct(j,i.value))}return(j,M)=>{const N=D("router-link");return e(),n(b,null,[t("article",null,[t("header",null,[t("h2",null,[u.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${u.kindMeta.icon} icon-${u.kindMeta.layer}`)},null,2)):h("",!0),t("div",fs,[t("span",hs,c(u.data.name),1),t("span",gs,c(u.kind),1)])]),s.value?(e(),n("div",_s,[t("span",bs,[M[0]||(M[0]=k(" by ",-1)),I(N,{to:{name:"instance",params:{kind:"Import",instance:s.value}}},{default:T(()=>[k(c(s.value),1)]),_:1},8,["to"])]),g.value?(e(),n("span",$s," generated "+c(P(gt)(g.value)),1)):h("",!0)])):(e(),R(N,{key:1,class:"btn-header",to:`/kinds/${u.kind}/instances/${u.data.name}/edit`,title:"Edit this resource"},{default:T(()=>[...M[1]||(M[1]=[t("i",{class:"iconoir-edit-pencil"},null,-1),k(" Edit ",-1)])]),_:1},8,["to"]))]),o.value&&d.value?(e(),n("div",ws,[t("div",{id:"graphviz",ref_key:"graphEl",ref:i,class:"canvas",innerHTML:d.value},null,8,xs)])):m.value&&!o.value?(e(),n("p",js,[...M[2]||(M[2]=[t("i",{class:"iconoir-graph-up"},null,-1),k(" No outgoing dependencies — graph omitted ",-1)])])):h("",!0),x.value?(e(),n("div",{key:2,ref_key:"descEl",ref:y,innerHTML:x.value,class:A({footer:m.value})},null,10,Is)):h("",!0)]),I(Ft,{data:u.data},null,8,["data"]),t("article",Ss,[M[4]||(M[4]=t("header",null,[t("h2",null,"Details")],-1)),t("table",null,[M[3]||(M[3]=t("thead",null,[t("tr",null,[t("th",{scope:"col"},"Name"),t("th",{scope:"col"},"Value")])],-1)),t("tbody",null,[I(Xt,{annotations:l.value},null,8,["annotations"]),I(re,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(he,{annotations:l.value},null,8,["annotations"]),I(Se,{annotations:l.value},null,8,["annotations"]),I(Ge,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(kn,{annotations:l.value,instance:u.data},null,8,["annotations","instance"]),I(_n,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(Un,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(Zn,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(is,{annotations:l.value,kind:u.kind},null,8,["annotations","kind"]),I(ds,{annotations:l.value},null,8,["annotations"]),(e(!0),n(b,null,L(v.value,([O,_])=>(e(),R(ks,{key:O,"annotation-key":O,value:_,kind:u.kind},null,8,["annotation-key","value","kind"]))),128))])])]),I(J,{data:u.data},null,8,["data"])],64)}}},Ts=q(Cs,[["__scopeId","data-v-05b7ea77"]]),As={class:"view-header"},Ls=["innerHTML"],Os={key:1,class:"view-query-display"},Ms={class:"query-item"},Es={class:"query-value"},Rs={key:0,class:"search-error"},qs={class:"search-error-message"},Ds={key:1,class:"view-results"},Hs={class:"view-result-meta"},Bs={key:2},at=100,Ns={__name:"ViewDetail",props:{data:Object,kindMeta:Object},setup(u){const a=u,d=r(()=>a.data.metadata?.annotations||{}),i=r(()=>d.value["view/query"]),f=r(()=>d.value["architecture/description"]),y=r(()=>d.value["view/type"]||"list:name+kind"),l=r(()=>y.value==="list:name+kind"),o=r(()=>(d.value["view/fields"]||"").split(",").map(w=>w.trim()).filter(Boolean)),m=r(()=>(d.value["view/sort"]||"").split(",").map(w=>w.trim()).filter(Boolean)),s=E(null);F(s);const g=E([]),x=E(0),$=E(0),S=E(!1),p=E(!1),v=E(null);let C=0;function j(_,w){return w.length?[..._].sort((B,H)=>{for(const z of w){const X=z.startsWith("-"),Y=X?z.slice(1):z,dt=B.annotations?.[Y]??"",vt=H.annotations?.[Y]??"",K=String(dt).localeCompare(String(vt),void 0,{numeric:!0});if(K!==0)return X?-K:K}return 0}):_}const M=r(()=>j(g.value,m.value));async function N(){if(i.value){S.value=!0,v.value=null,C=0;try{const _=o.value.length?"annotations":"brief",w=await tt(i.value,{limit:at,offset:0,output:_});g.value=w.instances||[],x.value=w.total||0,$.value=w.query_time_ms||0,C=g.value.length}catch(_){v.value=_.message}finally{S.value=!1}}}async function O(){if(!(p.value||C>=x.value||!i.value)){p.value=!0;try{const _=o.value.length?"annotations":"brief",B=(await tt(i.value,{limit:at,offset:C,output:_})).instances||[];g.value=[...g.value,...B],C+=B.length}catch{}p.value=!1}}return U(()=>a.data,N,{immediate:!0}),(_,w)=>(e(),n(b,null,[t("article",As,[t("header",null,[t("h2",null,[u.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${u.kindMeta.icon} icon-${u.kindMeta.layer}`)},null,2)):h("",!0),k(" "+c(u.data.name),1)])]),f.value?(e(),n("div",{key:0,ref_key:"descEl",ref:s,class:"view-description",innerHTML:f.value},null,8,Ls)):h("",!0),i.value?(e(),n("div",Os,[t("p",Ms,[w[0]||(w[0]=t("span",{class:"label"},"Query:",-1)),t("code",Es,c(i.value),1)])])):h("",!0)]),v.value?(e(),n("div",Rs,[w[1]||(w[1]=t("div",{class:"search-error-header"},[t("i",{class:"iconoir-warning-triangle"}),k(" Query Error")],-1)),t("div",qs,c(v.value),1)])):h("",!0),!S.value&&i.value&&!v.value?(e(),n("article",Ds,[t("header",null,[w[2]||(w[2]=t("h3",null,"Results",-1)),t("span",Hs,c(x.value)+" "+c(x.value===1?"item":"items")+" in "+c($.value)+" ms",1)]),I(_t,{instances:M.value,"omit-kind":!l.value,fields:o.value.length?o.value:null,total:x.value,"loading-more":p.value,onLoadMore:O},null,8,["instances","omit-kind","fields","total","loading-more"])])):h("",!0),i.value?h("",!0):(e(),n("article",Bs,[...w[3]||(w[3]=[t("p",{class:"view-empty-state"},[t("em",null,"No query defined")],-1)])]))],64))}},Ps=q(Ns,[["__scopeId","data-v-f921d1a2"]]),Gs=["innerHTML"],Us={key:3,class:"analysis-table-wrapper"},Fs={key:4,class:"analysis-list"},Ws={key:5,class:"code"},Vs={__name:"AnalysisSection",props:{section:Object},setup(u){const a={error:"xmark-circle",warning:"warning-triangle",info:"info-circle"};return(d,i)=>u.section.type==="heading"?(e(),n("div",{key:0,class:A(["analysis-heading","level-"+u.section.level])},c(u.section.text),3)):u.section.type==="text"?(e(),n("div",{key:1,class:"analysis-text",innerHTML:u.section.content},null,8,Gs)):u.section.type==="message"?(e(),n("div",{key:2,class:A(["analysis-message","message-"+u.section.level])},[t("i",{class:A(`iconoir-${a[u.section.level]||"info-circle"}`)},null,2),k(" "+c(u.section.message),1)],2)):u.section.type==="table"?(e(),n("div",Us,[t("table",null,[t("thead",null,[t("tr",null,[(e(!0),n(b,null,L(u.section.headers,f=>(e(),n("th",{key:f},c(f),1))),128))])]),t("tbody",null,[(e(!0),n(b,null,L(u.section.rows,(f,y)=>(e(),n("tr",{key:y},[(e(!0),n(b,null,L(f,(l,o)=>(e(),n("td",{key:o},c(l),1))),128))]))),128))])])])):u.section.type==="list"?(e(),n("ul",Fs,[(e(!0),n(b,null,L(u.section.items,(f,y)=>(e(),n("li",{key:y},c(f),1))),128))])):u.section.type==="code"?(e(),n("pre",Ws,[t("code",{class:A(u.section.lang?"language-"+u.section.lang:"")},c(u.section.content),3)])):h("",!0)}},zs=q(Vs,[["__scopeId","data-v-4d3d107a"]]),Ks={components:{RelationsGrid:J,AnalysisSection:zs},props:{data:Object,kindMeta:Object},setup(u){const a=r(()=>u.data.metadata?.annotations||{}),d=r(()=>a.value["architecture/description"]),i=r(()=>a.value["analysis/script"]),f=r(()=>a.value["analysis/handler"]||"ruby"),y=r(()=>a.value["analysis/timeout"]||"30s"),l=E(null);F(l);const o=E(null),m=E(!1);async function s(){m.value=!0,o.value=await yt(u.data.name),m.value=!1}function g(){i.value&&navigator.clipboard.writeText(i.value)}function x(v){const C=[];let j={title:null,sections:[]};for(const M of v)M.type==="heading"&&M.level===0?((j.title||j.sections.length)&&C.push(j),j={title:M.text,sections:[]}):j.sections.push(M);return(j.title||j.sections.length)&&C.push(j),C}const $=r(()=>o.value?.sections?.length?x(o.value.sections):[]),S=r(()=>$.value.some(v=>v.title)),p=E(null);return U(o,async()=>{await G(),p.value&&bt(p.value)}),V(()=>{i.value&&s()}),{annotations:a,description:d,analysisScript:i,handler:f,timeout:y,descEl:l,rootEl:p,result:o,executing:m,sectionGroups:$,hasTitledGroups:S,run:s,copyScript:g}}},Qs={class:"analysis-header"},Zs={class:"instance-title-text"},Js={class:"instance-name"},Xs={class:"header-actions"},Ys=["innerHTML"],ta={ref:"rootEl",class:"analysis-execution"},ea={class:"analysis-execute-controls"},na=["disabled"],sa={class:"analysis-result-header"},aa={class:"status-indicator"},oa={key:0,class:"duration"},la={key:0,class:"analysis-error-details"},ia={key:0},ra={class:"code"},ua={key:1,class:"analysis-output"},ca={key:0},da=["open"],va={key:1,class:"analysis-results-placeholder"},ma={class:"analysis-details-section"},pa={class:"analysis-details-content"},ya={class:"analysis-metadata"},ka={class:"analysis-meta-item"},fa={class:"analysis-meta-item"},ha={class:"analysis-script"},ga={class:"analysis-script-header"},_a={class:"code"},ba={class:"language-ruby"},$a={key:1};function wa(u,a,d,i,f,y){const l=D("router-link"),o=D("AnalysisSection"),m=D("RelationsGrid");return e(),n(b,null,[t("article",Qs,[t("header",null,[t("h2",null,[d.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${d.kindMeta.icon} icon-${d.kindMeta.layer}`)},null,2)):h("",!0),t("div",Zs,[t("span",Js,c(d.data.name),1),a[2]||(a[2]=t("span",{class:"instance-kind-subtitle"},"Analysis",-1))])]),t("div",Xs,[I(l,{class:"btn-header",to:`/kinds/Analysis/instances/${d.data.name}/edit`,title:"Edit this resource"},{default:T(()=>[...a[3]||(a[3]=[t("i",{class:"iconoir-edit-pencil"},null,-1),k(" Edit ",-1)])]),_:1},8,["to"])])]),i.description?(e(),n("div",{key:0,ref:"descEl",class:"analysis-description",innerHTML:i.description},null,8,Ys)):h("",!0)]),i.analysisScript?(e(),n(b,{key:0},[t("article",ta,[t("header",null,[a[4]||(a[4]=t("h3",null,[t("i",{class:"iconoir-play"}),k(" Results")],-1)),t("div",ea,[t("button",{class:"secondary outline",onClick:a[0]||(a[0]=(...s)=>i.run&&i.run(...s)),disabled:i.executing},[t("i",{class:A(["iconoir-refresh",{spinning:i.executing}])},null,2),k(" "+c(i.executing?"Running...":"Re-run"),1)],8,na)])]),i.result?(e(),n("div",{key:0,class:A(["analysis-result-container",i.result.success?"success":"failed"])},[t("div",sa,[t("span",aa,[i.result.success?(e(),n(b,{key:0},[i.result.has_findings?(e(),n(b,{key:0},[a[5]||(a[5]=t("i",{class:"iconoir-warning-triangle status-findings"},null,-1)),a[6]||(a[6]=k(" Completed with findings ",-1))],64)):(e(),n(b,{key:1},[a[7]||(a[7]=t("i",{class:"iconoir-check-circle status-success"},null,-1)),a[8]||(a[8]=k(" Completed successfully ",-1))],64))],64)):(e(),n(b,{key:1},[a[9]||(a[9]=t("i",{class:"iconoir-xmark-circle status-error"},null,-1)),a[10]||(a[10]=k(" Failed ",-1))],64))]),i.result.duration?(e(),n("span",oa,[a[11]||(a[11]=t("i",{class:"iconoir-timer"},null,-1)),k(" "+c(i.result.duration.toFixed(2))+"s ",1)])):h("",!0)]),i.result.success?h("",!0):(e(),n("div",la,[a[13]||(a[13]=t("strong",null,"Error:",-1)),k(" "+c(i.result.error)+" ",1),i.result.error_backtrace?.length?(e(),n("details",ia,[a[12]||(a[12]=t("summary",null,"Show backtrace",-1)),t("pre",ra,c(i.result.error_backtrace.join(`
|
|
2
2
|
`)),1)])):h("",!0)])),i.result.sections?.length?(e(),n("div",ua,[i.hasTitledGroups?(e(!0),n(b,{key:1},L(i.sectionGroups,(s,g)=>(e(),n(b,{key:g},[s.title?(e(),n(b,{key:1},[g>0&&i.sectionGroups[g-1]?.title?(e(),n("hr",ca)):h("",!0),t("details",{open:g===0||g===1&&!i.sectionGroups[0].title},[t("summary",null,c(s.title),1),(e(!0),n(b,null,L(s.sections,(x,$)=>(e(),R(o,{key:`g${g}-${$}`,section:x},null,8,["section"]))),128))],8,da)],64)):(e(!0),n(b,{key:0},L(s.sections,(x,$)=>(e(),R(o,{key:`u${$}`,section:x},null,8,["section"]))),128))],64))),128)):(e(!0),n(b,{key:0},L(i.sectionGroups[0]?.sections,(s,g)=>(e(),R(o,{key:g,section:s},null,8,["section"]))),128))])):h("",!0)],2)):i.executing?(e(),n("div",va," Running analysis... ")):h("",!0)],512),t("details",ma,[a[18]||(a[18]=t("summary",null,[t("i",{class:"iconoir-code-brackets-square"}),k(" Script Details ")],-1)),t("div",pa,[t("div",ya,[t("span",ka,[a[14]||(a[14]=t("i",{class:"iconoir-code"},null,-1)),k(" "+c(i.handler),1)]),t("span",fa,[a[15]||(a[15]=t("i",{class:"iconoir-timer"},null,-1)),k(" "+c(i.timeout),1)])]),t("div",ha,[t("div",ga,[a[17]||(a[17]=t("strong",null,"Script",-1)),t("button",{class:"copy-button",onClick:a[1]||(a[1]=(...s)=>i.copyScript&&i.copyScript(...s)),title:"Copy script to clipboard"},[...a[16]||(a[16]=[t("i",{class:"iconoir-copy"},null,-1)])])]),t("pre",_a,[t("code",ba,c(i.analysisScript),1)])])])])],64)):(e(),n("article",$a,[...a[19]||(a[19]=[t("p",{class:"analysis-empty-state"},[t("i",{class:"iconoir-warning-triangle"}),k(" No script defined for this analysis. ")],-1)])])),I(m,{data:d.data},null,8,["data"])],64)}const xa=q(Ks,[["render",wa],["__scopeId","data-v-19706829"]]),ja={class:"import-header"},Ia={class:"instance-title-text"},Sa={class:"instance-name"},Ca={class:"header-actions"},Ta={key:0,class:"badge badge-primary"},Aa={key:1,class:"badge badge-warning"},La=["innerHTML"],Oa={key:0,class:"graph-container"},Ma=["innerHTML"],Ea={key:1,class:"graph-too-large"},Ra={key:2,class:"graph-too-large"},qa={class:"import-configuration"},Da={class:"import-metadata"},Ha={key:0,class:"import-meta-item"},Ba={key:1,class:"import-meta-item"},Na={key:2,class:"import-meta-item"},Pa={key:3,class:"import-meta-item status-enabled"},Ga={key:4,class:"import-meta-item status-disabled"},Ua={key:0,class:"import-output-path"},Fa={key:1,class:"import-config-section",open:""},Wa={class:"import-config-table"},Va={scope:"row"},za={key:0},Ka={__name:"ImportDetail",props:{data:Object,kindMeta:Object},setup(u){const a=u,d=E(""),i=E(null);let f=null;const y=E(null);F(y);const l=r(()=>a.data.metadata?.annotations||{}),o=r(()=>l.value["import/handler"]),m=r(()=>l.value["import/enabled"]!=="false"),s=r(()=>l.value["import/cacheTime"]),g=r(()=>l.value["import/priority"]),x=r(()=>l.value["import/outputPath"]),$=r(()=>l.value["architecture/description"]),S=r(()=>Object.entries(l.value).filter(([O])=>O.startsWith("import/config/")).map(([O,_])=>[O.replace("import/config/",""),_])),p=r(()=>{const O=a.data.relations||{};return Object.values(O).reduce((_,w)=>typeof w=="object"?_+Object.values(w).reduce((B,H)=>B+(Array.isArray(H)?H.length:0),0):_,0)}),v=r(()=>Object.keys(a.data.relations||{}).length>0),C=r(()=>{const O=a.data.references||{};return v.value||Object.keys(O).length>0}),j=r(()=>p.value>=50);V(async()=>{if(v.value&&!j.value){const O=await it("Import",a.data.name);d.value=O?await ut(O):"",await G(),M()}}),rt(()=>{f?.destroy()});function M(){if(!i.value)return;const O=i.value.querySelector("svg");O&&(f=ct(O,i.value))}function N(O){return typeof O!="string"?!1:O.startsWith("http")||O.startsWith("git@")||O.startsWith("file://")}return(O,_)=>{const w=D("router-link");return e(),n(b,null,[t("article",ja,[t("header",null,[t("h2",null,[u.kindMeta?(e(),n("i",{key:0,class:A(`iconoir-${u.kindMeta.icon} icon-${u.kindMeta.layer}`)},null,2)):h("",!0),t("div",Ia,[t("span",Sa,c(u.data.name),1),_[0]||(_[0]=t("span",{class:"instance-kind-subtitle"},"Import",-1))])]),t("div",Ca,[o.value?(e(),n("span",Ta,c(o.value),1)):h("",!0),m.value?h("",!0):(e(),n("span",Aa,"Disabled")),I(w,{class:"btn-header",to:`/kinds/Import/instances/${u.data.name}/edit`,title:"Edit this resource"},{default:T(()=>[..._[1]||(_[1]=[t("i",{class:"iconoir-edit-pencil"},null,-1),k(" Edit ",-1)])]),_:1},8,["to"])])]),$.value?(e(),n("div",{key:0,ref_key:"descEl",ref:y,class:"import-description",innerHTML:$.value},null,8,La)):h("",!0),C.value?(e(),n(b,{key:1},[v.value&&!j.value&&d.value?(e(),n("div",Oa,[t("div",{id:"graphviz",ref_key:"graphEl",ref:i,class:"canvas",innerHTML:d.value},null,8,Ma)])):j.value?(e(),n("p",Ea,[_[2]||(_[2]=t("i",{class:"iconoir-warning-triangle"},null,-1)),k(" Graph too large to display ("+c(p.value)+" relations) ",1)])):v.value?h("",!0):(e(),n("p",Ra,[..._[3]||(_[3]=[t("i",{class:"iconoir-graph-up"},null,-1),k(" No outgoing dependencies — graph omitted ",-1)])]))],64)):h("",!0)]),t("article",qa,[_[11]||(_[11]=t("header",null,[t("h3",null,[t("i",{class:"iconoir-settings"}),k(" Configuration")])],-1)),t("div",Da,[o.value?(e(),n("span",Ha,[_[4]||(_[4]=t("i",{class:"iconoir-code"},null,-1)),k(" "+c(o.value),1)])):h("",!0),s.value?(e(),n("span",Ba,[_[5]||(_[5]=t("i",{class:"iconoir-timer"},null,-1)),k(" "+c(s.value),1)])):h("",!0),g.value?(e(),n("span",Na,[_[6]||(_[6]=t("i",{class:"iconoir-sort-down"},null,-1)),k(" Priority: "+c(g.value),1)])):h("",!0),m.value?(e(),n("span",Pa,[..._[7]||(_[7]=[t("i",{class:"iconoir-check-circle"},null,-1),k(" Enabled ",-1)])])):(e(),n("span",Ga,[..._[8]||(_[8]=[t("i",{class:"iconoir-xmark-circle"},null,-1),k(" Disabled ",-1)])]))]),x.value?(e(),n("div",Ua,[_[9]||(_[9]=t("strong",null,"Output:",-1)),t("code",null,c(x.value),1)])):h("",!0),S.value.length?(e(),n("details",Fa,[_[10]||(_[10]=t("summary",null,[t("i",{class:"iconoir-list"}),k(" Handler Settings ")],-1)),t("table",Wa,[t("tbody",null,[(e(!0),n(b,null,L(S.value,([B,H])=>(e(),n("tr",{key:B},[t("th",Va,c(B),1),t("td",null,[N(H)?(e(),n("code",za,c(H),1)):(e(),n(b,{key:1},[k(c(H),1)],64))])]))),128))])])])):h("",!0)]),I(J,{data:u.data},null,8,["data"])],64)}}},Qa=q(Ka,[["__scopeId","data-v-ceaaa6c2"]]),Za={key:0},Ja={key:1},oo={__name:"InstanceRouter",props:{kind:String,instance:String},setup(u){const a=u,d=ot("kinds"),i=E(null),f=E(!0),y=E(null);async function l(){f.value=!0,y.value=null;try{i.value=await lt(a.kind,a.instance)}catch(m){y.value=m.message}finally{f.value=!1}}U(()=>[a.kind,a.instance],l,{immediate:!0});function o(){return d.value?d.value.kinds.find(m=>m.kind===a.kind):null}return(m,s)=>f.value?(e(),n("article",Za,[...s[0]||(s[0]=[t("p",null,"Loading...",-1)])])):y.value?(e(),n("article",Ja,[s[4]||(s[4]=t("header",null,[t("h2",null,"Not Found")],-1)),t("p",null,[s[1]||(s[1]=k("Instance ",-1)),t("strong",null,c(u.instance),1),s[2]||(s[2]=k(" of kind ",-1)),t("strong",null,c(u.kind),1),s[3]||(s[3]=k(" was not found.",-1))])])):i.value?(e(),n(b,{key:2},[u.kind==="View"?(e(),R(Ps,{key:0,data:i.value,"kind-meta":o()},null,8,["data","kind-meta"])):u.kind==="Analysis"?(e(),R(xa,{key:1,data:i.value,"kind-meta":o()},null,8,["data","kind-meta"])):u.kind==="Import"?(e(),R(Qa,{key:2,data:i.value,"kind-meta":o()},null,8,["data","kind-meta"])):(e(),R(Ts,{key:3,data:i.value,kind:u.kind,"kind-meta":o()},null,8,["data","kind","kind-meta"]))],64)):h("",!0)}};export{oo as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{w as C,c as m,a as o,n as L,b as x,d as M,t as N,e as k,f as S,r as s,g as V,i as $,o as v,h as p}from"./index-
|
|
1
|
+
import{w as C,c as m,a as o,n as L,b as x,d as M,t as N,e as k,f as S,r as s,g as V,i as $,o as v,h as p}from"./index-Zr9MoxJi.js";import{R as b}from"./ResourceList-DwsfI85-.js";import"./mermaid-DUllW9QE.js";const B={key:0},E={class:"header-actions"},z={key:1},g=100,K={__name:"KindList",props:{kind:String},setup(c){const l=c,f=$("kinds"),a=s([]),i=s(0),d=s(!0),r=s(!1),u=s(null);let n=0;async function h(){d.value=!0,n=0;try{const e=await p(l.kind,{limit:g,offset:0,output:"brief"});a.value=e.instances||[],i.value=e.total||0,n=a.value.length}catch{a.value=[],i.value=0}f.value&&(u.value=f.value.kinds.find(e=>e.kind===l.kind)),d.value=!1}async function _(){if(!(r.value||n>=i.value)){r.value=!0;try{const t=(await p(l.kind,{limit:g,offset:n,output:"brief"})).instances||[];a.value=[...a.value,...t],n+=t.length}catch{}r.value=!1}}C(()=>l.kind,h,{immediate:!0});function y(e){return e.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()}return(e,t)=>{const w=V("router-link");return d.value?(v(),m("article",z,[...t[1]||(t[1]=[o("p",null,"Loading...",-1)])])):(v(),m("article",B,[o("header",null,[o("h2",null,[u.value?(v(),m("i",{key:0,class:L(`iconoir-${u.value.icon} icon-${u.value.layer}`)},null,2)):x("",!0),M(" "+N(c.kind),1)]),o("div",E,[k(w,{class:"kind-help",to:{name:"doc",params:{filename:"resources/"+y(c.kind)}},title:"Documentation"},{default:S(()=>[...t[0]||(t[0]=[o("i",{class:"iconoir-help-circle"},null,-1)])]),_:1},8,["to"])])]),k(b,{instances:a.value,"omit-kind":!0,total:i.value,"loading-more":r.value,onLoadMore:_},null,8,["instances","total","loading-more"])]))}}};export{K as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as F,l as N,w as S,C as D,o as n,c as a,a as u,b as f,F as y,x as b,y as v,r as I,g as T,t as g,e as w,f as B,n as j,d as M,B as K}from"./index-
|
|
1
|
+
import{_ as F,l as N,w as S,C as D,o as n,c as a,a as u,b as f,F as y,x as b,y as v,r as I,g as T,t as g,e as w,f as B,n as j,d as M,B as K}from"./index-Zr9MoxJi.js";function X(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function Y(e){const o=(Math.round(e*100)/100).toFixed(2).split(".");return o[0]=o[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),`€${o.join(".")}`}const p={cocomoSalary:15e4,targetSalary:8e4,aiCostMultiplier:3,aiScheduleMultiplier:2.5,aiTeamMultiplier:3};function ee(e,d){if(d==null)return null;const o=p.targetSalary/p.cocomoSalary,m=parseFloat(d);switch(e){case"cost":return m*o/p.aiCostMultiplier;case"schedule":return m/p.aiScheduleMultiplier;case"team":return Math.ceil(m/p.aiTeamMultiplier);default:return null}}function te(e){return e.replace(/\.git$/,"").replace(":","/").replace("git@","https://")}function R(e){if(!e)return null;const d=new Date(e);let o=Math.floor((Date.now()-d.getTime())/1e3);if(o<10)return"just now";const m=[[60,"second"],[60,"minute"],[24,"hour"],[7,"day"],[4,"week"],[12,"month"],[1/0,"year"]];let i=o;for(const[l,k]of m){if(i<l)return`${i} ${k}${i!==1?"s":""} ago`;i=Math.floor(i/l)}return`${i} years ago`}function ne(e){return/docs\.google\.com\/(document|spreadsheets|presentation)/.test(e)?"iconoir-google-docs":/github\.com/.test(e)?"iconoir-github":/gitlab/.test(e)?"iconoir-git-fork":/confluence\.|atlassian\.net/.test(e)?"iconoir-page-edit":/jira\.|atlassian\.net.*jira/.test(e)?"iconoir-list":/grafana/.test(e)?"iconoir-graph-up":/prometheus/.test(e)?"iconoir-database":/api\./.test(e)?"iconoir-code":/docs\./.test(e)?"iconoir-book":"iconoir-internet"}function ae(e){return/docs\.google\.com/.test(e)?"Documentation":/github\.com|gitlab/.test(e)?"Code Repository":/confluence\.|atlassian\.net/.test(e)?"Documentation":/jira\.|atlassian\.net.*jira/.test(e)?"Project Management":/grafana|prometheus/.test(e)?"Monitoring":/api\./.test(e)?"API":/docs\./.test(e)?"Documentation":"Other"}const V={key:0,class:"empty-state"},L={key:1,class:"resource-list-table"},O={key:0,class:"col-kind"},U={class:"col-name"},E={key:0,class:"col-kind"},z={class:"instance-kind"},G=["title"],P={key:1,class:"empty-value"},q={key:2,class:"search-instance-list"},W={class:"instance-main"},Z={key:0,class:"instance-kind"},H={key:0},J={__name:"ResourceList",props:{instances:{type:Array,required:!0},omitKind:{type:Boolean,default:!1},fields:{type:Array,default:null},total:{type:Number,default:0},loadingMore:{type:Boolean,default:!1}},emits:["load-more"],setup(e,{emit:d}){const o=e,m=d,i=I(null);let l=null;const k=v(()=>o.total>o.instances.length);function $(){l&&l.disconnect(),i.value&&(l=new IntersectionObserver(r=>{r[0].isIntersecting&&k.value&&!o.loadingMore&&m("load-more")},{rootMargin:"200px"}),l.observe(i.value))}N($),S(i,$),D(()=>{l&&l.disconnect()});const x=v(()=>o.fields&&o.fields.length>0),C=v(()=>o.fields?o.fields.map(r=>{const s=r.split("/");let c;return s.length>=2?c=`${s[s.length-2]} ${s[s.length-1]}`:c=s[s.length-1],c=c.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^./,t=>t.toUpperCase()),{key:r,title:c}}):[]);function _(r,s){return(r.annotations||{})[s]??null}function A(r){return/at$/i.test(r)||/date$/i.test(r)||/time$/i.test(r)}return(r,s)=>{const c=T("router-link");return n(),a(y,null,[e.instances.length?x.value?(n(),a("table",L,[u("thead",null,[u("tr",null,[s[1]||(s[1]=u("th",{class:"col-name"},"Name",-1)),e.omitKind?f("",!0):(n(),a("th",O,"Kind")),(n(!0),a(y,null,b(C.value,t=>(n(),a("th",{key:t.key,class:"col-annotation"},g(t.title),1))),128))])]),u("tbody",null,[(n(!0),a(y,null,b(e.instances,t=>(n(),a("tr",{key:t.name,class:"resource-list-row"},[u("td",U,[w(c,{class:"instance-name",to:{name:"instance",params:{kind:t.kind,instance:t.name}}},{default:B(()=>[t.icon?(n(),a("i",{key:0,class:j(`iconoir-${t.icon} icon-${t.layer}`)},null,2)):f("",!0),M(" "+g(t.name),1)]),_:2},1032,["to"])]),e.omitKind?f("",!0):(n(),a("td",E,[u("span",z,g(t.kind),1)])),(n(!0),a(y,null,b(C.value,h=>(n(),a("td",{key:h.key,class:"col-annotation"},[_(t,h.key)!=null?(n(),a(y,{key:0},[A(h.key)?(n(),a("span",{key:0,title:_(t,h.key)},g(K(R)(_(t,h.key))),9,G)):(n(),a(y,{key:1},[M(g(_(t,h.key)),1)],64))],64)):(n(),a("span",P,"—"))]))),128))]))),128))])])):(n(),a("ul",q,[(n(!0),a(y,null,b(e.instances,t=>(n(),a("li",{key:t.name,class:"search-instance-item"},[u("div",W,[w(c,{class:"instance-name",to:{name:"instance",params:{kind:t.kind,instance:t.name}}},{default:B(()=>[t.icon?(n(),a("i",{key:0,class:j(`iconoir-${t.icon} icon-${t.layer}`)},null,2)):f("",!0),M(" "+g(t.name),1)]),_:2},1032,["to"]),e.omitKind?f("",!0):(n(),a("span",Z,g(t.kind),1))])]))),128))])):(n(),a("p",V,[...s[0]||(s[0]=[u("i",null,"No resources found",-1)])])),k.value?(n(),a("div",{key:3,ref_key:"sentinel",ref:i,class:"load-more-sentinel"},[e.loadingMore?(n(),a("small",H,"Loading more…")):f("",!0)],512)):f("",!0)],64)}}},oe=F(J,[["__scopeId","data-v-baa693c5"]]);export{oe as R,ee as a,R as b,ae as c,te as h,ne as i,X as n,Y as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as R,w as x,c as r,a as s,d as q,t as u,b as d,q as w,F as B,r as a,u as E,o as l,s as k}from"./index-
|
|
1
|
+
import{_ as R,w as x,c as r,a as s,d as q,t as u,b as d,q as w,F as B,r as a,u as E,o as l,s as k}from"./index-Zr9MoxJi.js";import{R as N}from"./ResourceList-DwsfI85-.js";import"./mermaid-DUllW9QE.js";const Q={key:0,class:"search-error"},F={class:"search-error-message"},M={class:"search-error-query"},T={class:"search-context"},V={class:"search-query-display"},I={class:"query-item"},L={class:"query-value"},A={key:0,class:"query-item"},C={class:"kind-value"},D={key:1,class:"query-item"},G={class:"result-count"},K={class:"query-item"},P={class:"search-time"},Z={key:1,class:"search-results"},j={key:0},z={key:2},g=100,H={__name:"SearchResults",setup(J){const v=E(),t=a([]),n=a(0),f=a(0),p=a(""),m=a(null),y=a(!1),_=a(!1),i=a(null);let c=0;async function S(){const o=v.query.q;if(m.value=v.query.kind||null,!o){t.value=[],n.value=0;return}p.value=o,y.value=!0,i.value=null,c=0;try{const e=await k(o,{limit:g,offset:0,output:"brief"});t.value=e.instances||[],n.value=e.total||0,f.value=e.query_time_ms||0,c=t.value.length}catch(e){i.value=e.message,t.value=[]}finally{y.value=!1}}async function b(){if(_.value||c>=n.value)return;const o=v.query.q;if(o){_.value=!0;try{const h=(await k(o,{limit:g,offset:c,output:"brief"})).instances||[];t.value=[...t.value,...h],c+=h.length}catch{}_.value=!1}}return x(()=>v.query.q,S,{immediate:!0}),(o,e)=>(l(),r(B,null,[i.value?(l(),r("div",Q,[e[1]||(e[1]=s("div",{class:"search-error-header"},[s("i",{class:"iconoir-warning-triangle"}),q(" Query Syntax Error ")],-1)),s("div",F,u(i.value),1),s("div",M,[e[0]||(e[0]=q("Query: ",-1)),s("code",null,u(p.value),1)])])):d("",!0),s("article",T,[e[6]||(e[6]=s("header",null,[s("h3",null,"Search Query")],-1)),s("div",V,[s("p",I,[e[2]||(e[2]=s("span",{class:"label"},"Query:",-1)),s("code",L,u(p.value),1)]),m.value?(l(),r("p",A,[e[3]||(e[3]=s("span",{class:"label"},"Kind:",-1)),s("code",C,u(m.value),1)])):d("",!0),i.value?d("",!0):(l(),r("p",D,[e[4]||(e[4]=s("span",{class:"label"},"Results:",-1)),s("span",G,u(n.value)+" "+u(n.value===1?"item":"items"),1)])),s("p",K,[e[5]||(e[5]=s("span",{class:"label"},"Time:",-1)),s("span",P,u(f.value)+" ms",1)])])]),!i.value&&!y.value?(l(),r("article",Z,[e[8]||(e[8]=s("header",null,[s("h3",null,"Results")],-1)),t.value.length?(l(),w(N,{key:1,instances:t.value,"omit-kind":!!m.value,total:n.value,"loading-more":_.value,onLoadMore:b},null,8,["instances","omit-kind","total","loading-more"])):(l(),r("p",j,[...e[7]||(e[7]=[s("em",null,"No results found",-1)])]))])):d("",!0),y.value?(l(),r("article",z,[...e[9]||(e[9]=[s("p",null,"Searching...",-1)])])):d("",!0)],64))}},X=R(H,[["__scopeId","data-v-1926309f"]]);export{X as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as v,c as O,g,k as P,h as p,j as w,l as c,m as A,n as x,t as N,o as E}from"./_baseUniq-
|
|
1
|
+
import{e as v,c as O,g,k as P,h as p,j as w,l as c,m as A,n as x,t as N,o as E}from"./_baseUniq-C8pAAASt.js";import{b0 as b,an as F,b1 as M,b2 as _,b3 as $,b4 as I,b5 as B,b6 as T,b7 as y,b8 as S}from"./mermaid-DUllW9QE.js";var G=/\s/;function H(n){for(var r=n.length;r--&&G.test(n.charAt(r)););return r}var L=/^\s+/;function R(n){return n&&n.slice(0,H(n)+1).replace(L,"")}var m=NaN,q=/^[-+]0x[0-9a-f]+$/i,z=/^0b[01]+$/i,C=/^0o[0-7]+$/i,K=parseInt;function W(n){if(typeof n=="number")return n;if(v(n))return m;if(b(n)){var r=typeof n.valueOf=="function"?n.valueOf():n;n=b(r)?r+"":r}if(typeof n!="string")return n===0?n:+n;n=R(n);var t=z.test(n);return t||C.test(n)?K(n.slice(2),t?2:8):q.test(n)?m:+n}var o=1/0,X=17976931348623157e292;function Y(n){if(!n)return n===0?n:0;if(n=W(n),n===o||n===-o){var r=n<0?-1:1;return r*X}return n===n?n:0}function D(n){var r=Y(n),t=r%1;return r===r?t?r-t:r:0}function fn(n){var r=n==null?0:n.length;return r?O(n):[]}var l=Object.prototype,J=l.hasOwnProperty,dn=F(function(n,r){n=Object(n);var t=-1,a=r.length,e=a>2?r[2]:void 0;for(e&&M(r[0],r[1],e)&&(a=1);++t<a;)for(var f=r[t],i=_(f),s=-1,d=i.length;++s<d;){var u=i[s],h=n[u];(h===void 0||$(h,l[u])&&!J.call(n,u))&&(n[u]=f[u])}return n});function un(n){var r=n==null?0:n.length;return r?n[r-1]:void 0}function Q(n){return function(r,t,a){var e=Object(r);if(!I(r)){var f=g(t);r=P(r),t=function(s){return f(e[s],s,e)}}var i=n(r,t,a);return i>-1?e[f?r[i]:i]:void 0}}var U=Math.max;function Z(n,r,t){var a=n==null?0:n.length;if(!a)return-1;var e=t==null?0:D(t);return e<0&&(e=U(a+e,0)),p(n,g(r),e)}var hn=Q(Z);function V(n,r){var t=-1,a=I(n)?Array(n.length):[];return w(n,function(e,f,i){a[++t]=r(e,f,i)}),a}function bn(n,r){var t=B(n)?c:V;return t(n,g(r))}var j=Object.prototype,k=j.hasOwnProperty;function nn(n,r){return n!=null&&k.call(n,r)}function gn(n,r){return n!=null&&A(n,r,nn)}function rn(n,r){return n<r}function tn(n,r,t){for(var a=-1,e=n.length;++a<e;){var f=n[a],i=r(f);if(i!=null&&(s===void 0?i===i&&!v(i):t(i,s)))var s=i,d=f}return d}function mn(n){return n&&n.length?tn(n,T,rn):void 0}function en(n,r,t,a){if(!b(n))return n;r=x(r,n);for(var e=-1,f=r.length,i=f-1,s=n;s!=null&&++e<f;){var d=N(r[e]),u=t;if(d==="__proto__"||d==="constructor"||d==="prototype")return n;if(e!=i){var h=s[d];u=void 0,u===void 0&&(u=b(h)?h:y(r[e+1])?[]:{})}S(s,d,u),s=s[d]}return n}function on(n,r,t){for(var a=-1,e=r.length,f={};++a<e;){var i=r[a],s=E(n,i);t(s,i)&&en(f,x(i,n),s)}return f}export{rn as a,tn as b,V as c,on as d,mn as e,fn as f,hn as g,gn as h,dn as i,D as j,un as l,bn as m,Y as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{bg as S,bh as Rn,b5 as T,bi as w,b4 as sn,bj as xn,bk as mn,bl as Cn,bm as un,bn as x,b2 as B,bo as Mn,bp as on,bq as Fn,br as E,be as gn,bs as R,b0 as ln,bt as Dn,bu as D,bv as Gn,bw as Bn,bx as _,b8 as Un,by as Nn,b3 as Kn,bz as X,bA as jn,bB as Hn,b7 as qn,b6 as cn,bc as Yn,bC as C}from"./mermaid-DpPHPFQh.js";var Zn="[object Symbol]";function U(n){return typeof n=="symbol"||S(n)&&Rn(n)==Zn}function bn(n,r){for(var e=-1,t=n==null?0:n.length,f=Array(t);++e<t;)f[e]=r(n[e],e,n);return f}var J=w?w.prototype:void 0,Q=J?J.toString:void 0;function dn(n){if(typeof n=="string")return n;if(T(n))return bn(n,dn)+"";if(U(n))return Q?Q.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Xn(){}function pn(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Jn(n,r,e,t){for(var f=n.length,i=e+-1;++i<f;)if(r(n[i],i,n))return i;return-1}function Qn(n){return n!==n}function Wn(n,r,e){for(var t=e-1,f=n.length;++t<f;)if(n[t]===r)return t;return-1}function zn(n,r,e){return r===r?Wn(n,r,e):Jn(n,Qn,e)}function Vn(n,r){var e=n==null?0:n.length;return!!e&&zn(n,r,0)>-1}function $(n){return sn(n)?xn(n):mn(n)}var kn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nr=/^\w*$/;function N(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||U(n)?!0:nr.test(n)||!kn.test(n)||r!=null&&n in Object(r)}var rr=500;function er(n){var r=Cn(n,function(t){return e.size===rr&&e.clear(),t}),e=r.cache;return r}var tr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ir=/\\(\\)?/g,fr=er(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(tr,function(e,t,f,i){r.push(f?i.replace(ir,"$1"):t||e)}),r});function ar(n){return n==null?"":dn(n)}function An(n,r){return T(n)?n:N(n,r)?[n]:fr(ar(n))}function m(n){if(typeof n=="string"||U(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function yn(n,r){r=An(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[m(r[e++])];return e&&e==t?n:void 0}function sr(n,r,e){var t=n==null?void 0:yn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,f=n.length;++e<t;)n[f+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ur(n){return T(n)||un(n)||!!(W&&n&&n[W])}function Ot(n,r,e,t,f){var i=-1,a=n.length;for(e||(e=ur),f||(f=[]);++i<a;){var s=n[i];e(s)?K(f,s):t||(f[f.length]=s)}return f}function or(n,r,e,t){var f=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++f]);++f<i;)e=r(e,n[f],f,n);return e}function gr(n,r){return n&&x(r,$(r),n)}function lr(n,r){return n&&x(r,B(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,f=0,i=[];++e<t;){var a=n[e];r(a,e,n)&&(i[f++]=a)}return i}function hn(){return[]}var cr=Object.prototype,br=cr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,j=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return br.call(n,r)}))}:hn;function dr(n,r){return x(n,j(n),r)}var pr=Object.getOwnPropertySymbols,wn=pr?function(n){for(var r=[];n;)K(r,j(n)),n=Mn(n);return r}:hn;function Ar(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,$,j)}function yr(n){return On(n,B,wn)}var Tr=Object.prototype,hr=Tr.hasOwnProperty;function wr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&hr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Or(n,r){var e=r?on(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var $r=/\w*$/;function _r(n){var r=new n.constructor(n.source,$r.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function Sr(n){return k?Object(k.call(n)):{}}var Er="[object Boolean]",Ir="[object Date]",Pr="[object Map]",vr="[object Number]",Lr="[object RegExp]",Rr="[object Set]",xr="[object String]",mr="[object Symbol]",Cr="[object ArrayBuffer]",Mr="[object DataView]",Fr="[object Float32Array]",Dr="[object Float64Array]",Gr="[object Int8Array]",Br="[object Int16Array]",Ur="[object Int32Array]",Nr="[object Uint8Array]",Kr="[object Uint8ClampedArray]",jr="[object Uint16Array]",Hr="[object Uint32Array]";function qr(n,r,e){var t=n.constructor;switch(r){case Cr:return on(n);case Er:case Ir:return new t(+n);case Mr:return Or(n,e);case Fr:case Dr:case Gr:case Br:case Ur:case Nr:case Kr:case jr:case Hr:return Fn(n,e);case Pr:return new t;case vr:case xr:return new t(n);case Lr:return _r(n);case Rr:return new t;case mr:return Sr(n)}}var Yr="[object Map]";function Zr(n){return S(n)&&E(n)==Yr}var nn=R&&R.isMap,Xr=nn?gn(nn):Zr,Jr="[object Set]";function Qr(n){return S(n)&&E(n)==Jr}var rn=R&&R.isSet,Wr=rn?gn(rn):Qr,zr=1,Vr=2,kr=4,$n="[object Arguments]",ne="[object Array]",re="[object Boolean]",ee="[object Date]",te="[object Error]",_n="[object Function]",ie="[object GeneratorFunction]",fe="[object Map]",ae="[object Number]",Sn="[object Object]",se="[object RegExp]",ue="[object Set]",oe="[object String]",ge="[object Symbol]",le="[object WeakMap]",ce="[object ArrayBuffer]",be="[object DataView]",de="[object Float32Array]",pe="[object Float64Array]",Ae="[object Int8Array]",ye="[object Int16Array]",Te="[object Int32Array]",he="[object Uint8Array]",we="[object Uint8ClampedArray]",Oe="[object Uint16Array]",$e="[object Uint32Array]",g={};g[$n]=g[ne]=g[ce]=g[be]=g[re]=g[ee]=g[de]=g[pe]=g[Ae]=g[ye]=g[Te]=g[fe]=g[ae]=g[Sn]=g[se]=g[ue]=g[oe]=g[ge]=g[he]=g[we]=g[Oe]=g[$e]=!0;g[te]=g[_n]=g[le]=!1;function M(n,r,e,t,f,i){var a,s=r&zr,u=r&Vr,b=r&kr;if(a!==void 0)return a;if(!ln(n))return n;var l=T(n);if(l){if(a=wr(n),!s)return Dn(n,a)}else{var o=E(n),c=o==_n||o==ie;if(D(n))return Gn(n,s);if(o==Sn||o==$n||c&&!f){if(a=u||c?{}:Bn(n),!s)return u?Ar(n,lr(a,n)):dr(n,gr(a,n))}else{if(!g[o])return f?n:{};a=qr(n,o,s)}}i||(i=new _);var h=i.get(n);if(h)return h;i.set(n,a),Wr(n)?n.forEach(function(d){a.add(M(d,r,e,d,n,i))}):Xr(n)&&n.forEach(function(d,p){a.set(p,M(d,r,e,p,n,i))});var A=b?u?yr:G:u?B:$,y=l?void 0:A(n);return pn(y||n,function(d,p){y&&(p=d,d=n[p]),Un(a,p,M(d,r,e,p,n,i))}),a}var _e="__lodash_hash_undefined__";function Se(n){return this.__data__.set(n,_e),this}function Ee(n){return this.__data__.has(n)}function I(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Nn;++r<e;)this.add(n[r])}I.prototype.add=I.prototype.push=Se;I.prototype.has=Ee;function Ie(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Pe=1,ve=2;function In(n,r,e,t,f,i){var a=e&Pe,s=n.length,u=r.length;if(s!=u&&!(a&&u>s))return!1;var b=i.get(n),l=i.get(r);if(b&&l)return b==r&&l==n;var o=-1,c=!0,h=e&ve?new I:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var A=n[o],y=r[o];if(t)var d=a?t(y,A,o,r,n,i):t(A,y,o,n,r,i);if(d!==void 0){if(d)continue;c=!1;break}if(h){if(!Ie(r,function(p,O){if(!En(h,O)&&(A===p||f(A,p,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(A===y||f(A,y,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Le(n){var r=-1,e=Array(n.size);return n.forEach(function(t,f){e[++r]=[f,t]}),e}function H(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var Re=1,xe=2,me="[object Boolean]",Ce="[object Date]",Me="[object Error]",Fe="[object Map]",De="[object Number]",Ge="[object RegExp]",Be="[object Set]",Ue="[object String]",Ne="[object Symbol]",Ke="[object ArrayBuffer]",je="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function He(n,r,e,t,f,i,a){switch(e){case je:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Ke:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case me:case Ce:case De:return Kn(+n,+r);case Me:return n.name==r.name&&n.message==r.message;case Ge:case Ue:return n==r+"";case Fe:var s=Le;case Be:var u=tℜif(s||(s=H),n.size!=r.size&&!u)return!1;var b=a.get(n);if(b)return b==r;t|=xe,a.set(n,r);var l=In(s(n),s(r),t,f,i,a);return a.delete(n),l;case Ne:if(F)return F.call(n)==F.call(r)}return!1}var qe=1,Ye=Object.prototype,Ze=Ye.hasOwnProperty;function Xe(n,r,e,t,f,i){var a=e&qe,s=G(n),u=s.length,b=G(r),l=b.length;if(u!=l&&!a)return!1;for(var o=u;o--;){var c=s[o];if(!(a?c in r:Ze.call(r,c)))return!1}var h=i.get(n),A=i.get(r);if(h&&A)return h==r&&A==n;var y=!0;i.set(n,r),i.set(r,n);for(var d=a;++o<u;){c=s[o];var p=n[c],O=r[c];if(t)var Z=a?t(O,p,c,r,n,i):t(p,O,c,n,r,i);if(!(Z===void 0?p===O||f(p,O,e,t,i):Z)){y=!1;break}d||(d=c=="constructor")}if(y&&!d){var P=n.constructor,v=r.constructor;P!=v&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof v=="function"&&v instanceof v)&&(y=!1)}return i.delete(n),i.delete(r),y}var Je=1,tn="[object Arguments]",fn="[object Array]",L="[object Object]",Qe=Object.prototype,an=Qe.hasOwnProperty;function We(n,r,e,t,f,i){var a=T(n),s=T(r),u=a?fn:E(n),b=s?fn:E(r);u=u==tn?L:u,b=b==tn?L:b;var l=u==L,o=b==L,c=u==b;if(c&&D(n)){if(!D(r))return!1;a=!0,l=!1}if(c&&!l)return i||(i=new _),a||jn(n)?In(n,r,e,t,f,i):He(n,r,u,e,t,f,i);if(!(e&Je)){var h=l&&an.call(n,"__wrapped__"),A=o&&an.call(r,"__wrapped__");if(h||A){var y=h?n.value():n,d=A?r.value():r;return i||(i=new _),f(y,d,e,t,i)}}return c?(i||(i=new _),Xe(n,r,e,t,f,i)):!1}function q(n,r,e,t,f){return n===r?!0:n==null||r==null||!S(n)&&!S(r)?n!==n&&r!==r:We(n,r,e,t,q,f)}var ze=1,Ve=2;function ke(n,r,e,t){var f=e.length,i=f;if(n==null)return!i;for(n=Object(n);f--;){var a=e[f];if(a[2]?a[1]!==n[a[0]]:!(a[0]in n))return!1}for(;++f<i;){a=e[f];var s=a[0],u=n[s],b=a[1];if(a[2]){if(u===void 0&&!(s in n))return!1}else{var l=new _,o;if(!(o===void 0?q(b,u,ze|Ve,t,l):o))return!1}}return!0}function Pn(n){return n===n&&!ln(n)}function nt(n){for(var r=$(n),e=r.length;e--;){var t=r[e],f=n[t];r[e]=[t,f,Pn(f)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function rt(n){var r=nt(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ke(e,n,r)}}function et(n,r){return n!=null&&r in Object(n)}function tt(n,r,e){r=An(r,n);for(var t=-1,f=r.length,i=!1;++t<f;){var a=m(r[t]);if(!(i=n!=null&&e(n,a)))break;n=n[a]}return i||++t!=f?i:(f=n==null?0:n.length,!!f&&Hn(f)&&qn(a,f)&&(T(n)||un(n)))}function it(n,r){return n!=null&&tt(n,r,et)}var ft=1,at=2;function st(n,r){return N(n)&&Pn(r)?vn(m(n),r):function(e){var t=sr(e,n);return t===void 0&&t===r?it(e,n):q(r,t,ft|at)}}function ut(n){return function(r){return r?.[n]}}function ot(n){return function(r){return yn(r,n)}}function gt(n){return N(n)?ut(m(n)):ot(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?st(n[0],n[1]):rt(n):gt(n)}function lt(n,r){return n&&Yn(n,r,$)}function ct(n,r){return function(e,t){if(e==null)return e;if(!sn(e))return n(e,t);for(var f=e.length,i=-1,a=Object(e);++i<f&&t(a[i],i,a)!==!1;);return e}}var Y=ct(lt);function bt(n){return typeof n=="function"?n:cn}function $t(n,r){var e=T(n)?pn:Y;return e(n,bt(r))}function dt(n,r){var e=[];return Y(n,function(t,f,i){r(t,f,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:dt;return e(n,Ln(r))}function pt(n,r){return bn(r,function(e){return n[e]})}function St(n){return n==null?[]:pt(n,$(n))}function Et(n){return n===void 0}function At(n,r,e,t,f){return f(n,function(i,a,s){e=t?(t=!1,i):r(e,i,a,s)}),e}function It(n,r,e){var t=T(n)?or:At,f=arguments.length<3;return t(n,Ln(r),e,f,Y)}var yt=1/0,Tt=C&&1/H(new C([,-0]))[1]==yt?function(n){return new C(n)}:Xn,ht=200;function Pt(n,r,e){var t=-1,f=Vn,i=n.length,a=!0,s=[],u=s;if(i>=ht){var b=r?null:Tt(n);if(b)return H(b);a=!1,f=En,u=new I}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,a&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else f(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{Tn as A,dt as B,Ie as C,Xn as D,I as S,Pt as a,M as b,Ot as c,$t as d,U as e,_t as f,Ln as g,Jn as h,Et as i,Y as j,$ as k,bn as l,tt as m,An as n,yn as o,bt as p,lt as q,It as r,it as s,m as t,ar as u,St as v,Vn as w,En as x,zn as y,yr as z};
|
|
1
|
+
import{bg as S,bh as Rn,b5 as T,bi as w,b4 as sn,bj as xn,bk as mn,bl as Cn,bm as un,bn as x,b2 as B,bo as Mn,bp as on,bq as Fn,br as E,be as gn,bs as R,b0 as ln,bt as Dn,bu as D,bv as Gn,bw as Bn,bx as _,b8 as Un,by as Nn,b3 as Kn,bz as X,bA as jn,bB as Hn,b7 as qn,b6 as cn,bc as Yn,bC as C}from"./mermaid-DUllW9QE.js";var Zn="[object Symbol]";function U(n){return typeof n=="symbol"||S(n)&&Rn(n)==Zn}function bn(n,r){for(var e=-1,t=n==null?0:n.length,f=Array(t);++e<t;)f[e]=r(n[e],e,n);return f}var J=w?w.prototype:void 0,Q=J?J.toString:void 0;function dn(n){if(typeof n=="string")return n;if(T(n))return bn(n,dn)+"";if(U(n))return Q?Q.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Xn(){}function pn(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Jn(n,r,e,t){for(var f=n.length,i=e+-1;++i<f;)if(r(n[i],i,n))return i;return-1}function Qn(n){return n!==n}function Wn(n,r,e){for(var t=e-1,f=n.length;++t<f;)if(n[t]===r)return t;return-1}function zn(n,r,e){return r===r?Wn(n,r,e):Jn(n,Qn,e)}function Vn(n,r){var e=n==null?0:n.length;return!!e&&zn(n,r,0)>-1}function $(n){return sn(n)?xn(n):mn(n)}var kn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nr=/^\w*$/;function N(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||U(n)?!0:nr.test(n)||!kn.test(n)||r!=null&&n in Object(r)}var rr=500;function er(n){var r=Cn(n,function(t){return e.size===rr&&e.clear(),t}),e=r.cache;return r}var tr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ir=/\\(\\)?/g,fr=er(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(tr,function(e,t,f,i){r.push(f?i.replace(ir,"$1"):t||e)}),r});function ar(n){return n==null?"":dn(n)}function An(n,r){return T(n)?n:N(n,r)?[n]:fr(ar(n))}function m(n){if(typeof n=="string"||U(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function yn(n,r){r=An(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[m(r[e++])];return e&&e==t?n:void 0}function sr(n,r,e){var t=n==null?void 0:yn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,f=n.length;++e<t;)n[f+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ur(n){return T(n)||un(n)||!!(W&&n&&n[W])}function Ot(n,r,e,t,f){var i=-1,a=n.length;for(e||(e=ur),f||(f=[]);++i<a;){var s=n[i];e(s)?K(f,s):t||(f[f.length]=s)}return f}function or(n,r,e,t){var f=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++f]);++f<i;)e=r(e,n[f],f,n);return e}function gr(n,r){return n&&x(r,$(r),n)}function lr(n,r){return n&&x(r,B(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,f=0,i=[];++e<t;){var a=n[e];r(a,e,n)&&(i[f++]=a)}return i}function hn(){return[]}var cr=Object.prototype,br=cr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,j=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return br.call(n,r)}))}:hn;function dr(n,r){return x(n,j(n),r)}var pr=Object.getOwnPropertySymbols,wn=pr?function(n){for(var r=[];n;)K(r,j(n)),n=Mn(n);return r}:hn;function Ar(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,$,j)}function yr(n){return On(n,B,wn)}var Tr=Object.prototype,hr=Tr.hasOwnProperty;function wr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&hr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Or(n,r){var e=r?on(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var $r=/\w*$/;function _r(n){var r=new n.constructor(n.source,$r.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function Sr(n){return k?Object(k.call(n)):{}}var Er="[object Boolean]",Ir="[object Date]",Pr="[object Map]",vr="[object Number]",Lr="[object RegExp]",Rr="[object Set]",xr="[object String]",mr="[object Symbol]",Cr="[object ArrayBuffer]",Mr="[object DataView]",Fr="[object Float32Array]",Dr="[object Float64Array]",Gr="[object Int8Array]",Br="[object Int16Array]",Ur="[object Int32Array]",Nr="[object Uint8Array]",Kr="[object Uint8ClampedArray]",jr="[object Uint16Array]",Hr="[object Uint32Array]";function qr(n,r,e){var t=n.constructor;switch(r){case Cr:return on(n);case Er:case Ir:return new t(+n);case Mr:return Or(n,e);case Fr:case Dr:case Gr:case Br:case Ur:case Nr:case Kr:case jr:case Hr:return Fn(n,e);case Pr:return new t;case vr:case xr:return new t(n);case Lr:return _r(n);case Rr:return new t;case mr:return Sr(n)}}var Yr="[object Map]";function Zr(n){return S(n)&&E(n)==Yr}var nn=R&&R.isMap,Xr=nn?gn(nn):Zr,Jr="[object Set]";function Qr(n){return S(n)&&E(n)==Jr}var rn=R&&R.isSet,Wr=rn?gn(rn):Qr,zr=1,Vr=2,kr=4,$n="[object Arguments]",ne="[object Array]",re="[object Boolean]",ee="[object Date]",te="[object Error]",_n="[object Function]",ie="[object GeneratorFunction]",fe="[object Map]",ae="[object Number]",Sn="[object Object]",se="[object RegExp]",ue="[object Set]",oe="[object String]",ge="[object Symbol]",le="[object WeakMap]",ce="[object ArrayBuffer]",be="[object DataView]",de="[object Float32Array]",pe="[object Float64Array]",Ae="[object Int8Array]",ye="[object Int16Array]",Te="[object Int32Array]",he="[object Uint8Array]",we="[object Uint8ClampedArray]",Oe="[object Uint16Array]",$e="[object Uint32Array]",g={};g[$n]=g[ne]=g[ce]=g[be]=g[re]=g[ee]=g[de]=g[pe]=g[Ae]=g[ye]=g[Te]=g[fe]=g[ae]=g[Sn]=g[se]=g[ue]=g[oe]=g[ge]=g[he]=g[we]=g[Oe]=g[$e]=!0;g[te]=g[_n]=g[le]=!1;function M(n,r,e,t,f,i){var a,s=r&zr,u=r&Vr,b=r&kr;if(a!==void 0)return a;if(!ln(n))return n;var l=T(n);if(l){if(a=wr(n),!s)return Dn(n,a)}else{var o=E(n),c=o==_n||o==ie;if(D(n))return Gn(n,s);if(o==Sn||o==$n||c&&!f){if(a=u||c?{}:Bn(n),!s)return u?Ar(n,lr(a,n)):dr(n,gr(a,n))}else{if(!g[o])return f?n:{};a=qr(n,o,s)}}i||(i=new _);var h=i.get(n);if(h)return h;i.set(n,a),Wr(n)?n.forEach(function(d){a.add(M(d,r,e,d,n,i))}):Xr(n)&&n.forEach(function(d,p){a.set(p,M(d,r,e,p,n,i))});var A=b?u?yr:G:u?B:$,y=l?void 0:A(n);return pn(y||n,function(d,p){y&&(p=d,d=n[p]),Un(a,p,M(d,r,e,p,n,i))}),a}var _e="__lodash_hash_undefined__";function Se(n){return this.__data__.set(n,_e),this}function Ee(n){return this.__data__.has(n)}function I(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Nn;++r<e;)this.add(n[r])}I.prototype.add=I.prototype.push=Se;I.prototype.has=Ee;function Ie(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Pe=1,ve=2;function In(n,r,e,t,f,i){var a=e&Pe,s=n.length,u=r.length;if(s!=u&&!(a&&u>s))return!1;var b=i.get(n),l=i.get(r);if(b&&l)return b==r&&l==n;var o=-1,c=!0,h=e&ve?new I:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var A=n[o],y=r[o];if(t)var d=a?t(y,A,o,r,n,i):t(A,y,o,n,r,i);if(d!==void 0){if(d)continue;c=!1;break}if(h){if(!Ie(r,function(p,O){if(!En(h,O)&&(A===p||f(A,p,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(A===y||f(A,y,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Le(n){var r=-1,e=Array(n.size);return n.forEach(function(t,f){e[++r]=[f,t]}),e}function H(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var Re=1,xe=2,me="[object Boolean]",Ce="[object Date]",Me="[object Error]",Fe="[object Map]",De="[object Number]",Ge="[object RegExp]",Be="[object Set]",Ue="[object String]",Ne="[object Symbol]",Ke="[object ArrayBuffer]",je="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function He(n,r,e,t,f,i,a){switch(e){case je:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Ke:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case me:case Ce:case De:return Kn(+n,+r);case Me:return n.name==r.name&&n.message==r.message;case Ge:case Ue:return n==r+"";case Fe:var s=Le;case Be:var u=tℜif(s||(s=H),n.size!=r.size&&!u)return!1;var b=a.get(n);if(b)return b==r;t|=xe,a.set(n,r);var l=In(s(n),s(r),t,f,i,a);return a.delete(n),l;case Ne:if(F)return F.call(n)==F.call(r)}return!1}var qe=1,Ye=Object.prototype,Ze=Ye.hasOwnProperty;function Xe(n,r,e,t,f,i){var a=e&qe,s=G(n),u=s.length,b=G(r),l=b.length;if(u!=l&&!a)return!1;for(var o=u;o--;){var c=s[o];if(!(a?c in r:Ze.call(r,c)))return!1}var h=i.get(n),A=i.get(r);if(h&&A)return h==r&&A==n;var y=!0;i.set(n,r),i.set(r,n);for(var d=a;++o<u;){c=s[o];var p=n[c],O=r[c];if(t)var Z=a?t(O,p,c,r,n,i):t(p,O,c,n,r,i);if(!(Z===void 0?p===O||f(p,O,e,t,i):Z)){y=!1;break}d||(d=c=="constructor")}if(y&&!d){var P=n.constructor,v=r.constructor;P!=v&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof v=="function"&&v instanceof v)&&(y=!1)}return i.delete(n),i.delete(r),y}var Je=1,tn="[object Arguments]",fn="[object Array]",L="[object Object]",Qe=Object.prototype,an=Qe.hasOwnProperty;function We(n,r,e,t,f,i){var a=T(n),s=T(r),u=a?fn:E(n),b=s?fn:E(r);u=u==tn?L:u,b=b==tn?L:b;var l=u==L,o=b==L,c=u==b;if(c&&D(n)){if(!D(r))return!1;a=!0,l=!1}if(c&&!l)return i||(i=new _),a||jn(n)?In(n,r,e,t,f,i):He(n,r,u,e,t,f,i);if(!(e&Je)){var h=l&&an.call(n,"__wrapped__"),A=o&&an.call(r,"__wrapped__");if(h||A){var y=h?n.value():n,d=A?r.value():r;return i||(i=new _),f(y,d,e,t,i)}}return c?(i||(i=new _),Xe(n,r,e,t,f,i)):!1}function q(n,r,e,t,f){return n===r?!0:n==null||r==null||!S(n)&&!S(r)?n!==n&&r!==r:We(n,r,e,t,q,f)}var ze=1,Ve=2;function ke(n,r,e,t){var f=e.length,i=f;if(n==null)return!i;for(n=Object(n);f--;){var a=e[f];if(a[2]?a[1]!==n[a[0]]:!(a[0]in n))return!1}for(;++f<i;){a=e[f];var s=a[0],u=n[s],b=a[1];if(a[2]){if(u===void 0&&!(s in n))return!1}else{var l=new _,o;if(!(o===void 0?q(b,u,ze|Ve,t,l):o))return!1}}return!0}function Pn(n){return n===n&&!ln(n)}function nt(n){for(var r=$(n),e=r.length;e--;){var t=r[e],f=n[t];r[e]=[t,f,Pn(f)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function rt(n){var r=nt(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ke(e,n,r)}}function et(n,r){return n!=null&&r in Object(n)}function tt(n,r,e){r=An(r,n);for(var t=-1,f=r.length,i=!1;++t<f;){var a=m(r[t]);if(!(i=n!=null&&e(n,a)))break;n=n[a]}return i||++t!=f?i:(f=n==null?0:n.length,!!f&&Hn(f)&&qn(a,f)&&(T(n)||un(n)))}function it(n,r){return n!=null&&tt(n,r,et)}var ft=1,at=2;function st(n,r){return N(n)&&Pn(r)?vn(m(n),r):function(e){var t=sr(e,n);return t===void 0&&t===r?it(e,n):q(r,t,ft|at)}}function ut(n){return function(r){return r?.[n]}}function ot(n){return function(r){return yn(r,n)}}function gt(n){return N(n)?ut(m(n)):ot(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?st(n[0],n[1]):rt(n):gt(n)}function lt(n,r){return n&&Yn(n,r,$)}function ct(n,r){return function(e,t){if(e==null)return e;if(!sn(e))return n(e,t);for(var f=e.length,i=-1,a=Object(e);++i<f&&t(a[i],i,a)!==!1;);return e}}var Y=ct(lt);function bt(n){return typeof n=="function"?n:cn}function $t(n,r){var e=T(n)?pn:Y;return e(n,bt(r))}function dt(n,r){var e=[];return Y(n,function(t,f,i){r(t,f,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:dt;return e(n,Ln(r))}function pt(n,r){return bn(r,function(e){return n[e]})}function St(n){return n==null?[]:pt(n,$(n))}function Et(n){return n===void 0}function At(n,r,e,t,f){return f(n,function(i,a,s){e=t?(t=!1,i):r(e,i,a,s)}),e}function It(n,r,e){var t=T(n)?or:At,f=arguments.length<3;return t(n,Ln(r),e,f,Y)}var yt=1/0,Tt=C&&1/H(new C([,-0]))[1]==yt?function(n){return new C(n)}:Xn,ht=200;function Pt(n,r,e){var t=-1,f=Vn,i=n.length,a=!0,s=[],u=s;if(i>=ht){var b=r?null:Tt(n);if(b)return H(b);a=!1,f=En,u=new I}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,a&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else f(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{Tn as A,dt as B,Ie as C,Xn as D,I as S,Pt as a,M as b,Ot as c,$t as d,U as e,_t as f,Ln as g,Jn as h,Et as i,Y as j,$ as k,bn as l,tt as m,An as n,yn as o,bt as p,lt as q,It as r,it as s,m as t,ar as u,St as v,Vn as w,En as x,zn as y,yr as z};
|