UNPKG

@techdocs/cli

Version:

Utility CLI for managing TechDocs sites in Backstage.

2 lines 29.7 kB
"use strict";(self.webpackChunktechdocs_cli_embedded_app=self.webpackChunktechdocs_cli_embedded_app||[]).push([["5954"],{6033(e,t,i){var n,a;i.d(t,{D:()=>n}),(a=n||(n={})).Direction={TOP_BOTTOM:"TB",BOTTOM_TOP:"BT",LEFT_RIGHT:"LR",RIGHT_LEFT:"RL"},a.Alignment={UP_LEFT:"UL",UP_RIGHT:"UR",DOWN_LEFT:"DL",DOWN_RIGHT:"DR"},a.Ranker={NETWORK_SIMPLEX:"network-simplex",TIGHT_TREE:"tight-tree",LONGEST_PATH:"longest-path"},a.LabelPosition={LEFT:"l",RIGHT:"r",CENTER:"c"}},280(e,t,i){i.d(t,{m:()=>d,v:()=>p});var n=i(31085),a=i(29365),r=i(71677),s=i(72501),l=i(58837),o=i(55940);let c=(0,l.A)(()=>({icon:{color:"#f3ba37",cursor:"pointer",display:"inline-flex"},iconBorder:{color:"inherit",cursor:"pointer",display:"inline-flex"}}),{name:"BackstageFavoriteToggleIcon"});function d(e){let{isFavorite:t}=e,i=c();return(0,n.jsx)(s.A,{component:"span",className:t?i.icon:i.iconBorder,children:t?(0,n.jsx)(o.Gg,{}):(0,n.jsx)(o.KG,{})})}function p(e){let{id:t,title:i,isFavorite:s,onToggle:l,...o}=e;return(0,n.jsx)(r.Ay,{id:t,title:i,children:(0,n.jsx)(a.A,{"aria-label":i,id:t,onClick:()=>l(!s),color:"inherit",...o,children:(0,n.jsx)(d,{isFavorite:s})})})}},27231(e,t,i){i.d(t,{S:()=>p});var n=i(31085),a=i(42899),r=i(58837),s=i(268),l=i(72501),o=i(60603);let c=(0,r.A)(e=>({root:{textAlign:"left"},label:{color:e.page.fontColor,fontWeight:e.typography.fontWeightBold,letterSpacing:0,fontSize:e.typography.fontSize,marginBottom:e.spacing(1)/2,lineHeight:1},value:{color:(0,s.X4)(e.page.fontColor,.8),fontSize:e.typography.fontSize,lineHeight:1}}),{name:"BackstageHeaderLabel"}),d=({value:e,className:t,typographyRootComponent:i})=>(0,n.jsx)(l.A,{component:i??("string"==typeof e?"p":"span"),className:t,children:e});function p(e){let{label:t,value:i,url:r,contentTypograpyRootComponent:s}=e,p=c(),u=(0,n.jsx)(d,{className:p.value,value:i||"<Unknown>",typographyRootComponent:s});return(0,n.jsx)(a.A,{item:!0,children:(0,n.jsxs)(l.A,{component:"span",className:p.root,children:[(0,n.jsx)(l.A,{className:p.label,children:t}),r?(0,n.jsx)(o.N_,{to:r,children:u}):u]})})}},43151(e,t,i){i.d(t,{q:()=>eL});var n=i(31085),a=i(98197),r=i(76028),s=i(14041),l=i(58077),o=i(11773),c=i(55489),d=i(97673),p=i(60603);let u=(0,s.lazy)(()=>Promise.all([i.e("1435"),i.e("7632")]).then(i.bind(i,6659)).then(e=>({default:e.DependencyGraph})));function g(e){return(0,n.jsx)(s.Suspense,{fallback:(0,n.jsx)("div",{}),children:(0,n.jsx)(u,{...e})})}var h=i(6033),m=i(50509),f=i(81219),x=i(91189),y=i(13408),j=i(69749),b=i(58837),v=i(53373),T=i.n(v),w=i(18690),k=i(73466),E=i(76272),L=i(15448),N=i(76355);let S=i(10437).A;function A(e){let t,i,{kind:a,entityRef:r,...s}=e,o=(t=(0,x.n)(),(i=function(e,t){if(e)return e.toLocaleLowerCase("en-US");if(t)try{return(0,l.KU)(t).kind.toLocaleLowerCase("en-US")}catch{}}(a,r))&&t.getSystemIcon(`kind:${i}`)||S);return(0,n.jsx)(o,{...s})}var C=i(79811),R=i(89595);let D=(0,b.A)(e=>({node:{fill:e.palette.grey[300],stroke:e.palette.grey[300],"&.primary":{fill:e.palette.primary.light,stroke:e.palette.primary.light},"&.secondary":{fill:e.palette.secondary.light,stroke:e.palette.secondary.light}},text:{fill:e.palette.getContrastText(e.palette.grey[300]),"&.primary":{fill:e.palette.primary.contrastText},"&.secondary":{fill:e.palette.secondary.contrastText},"&.focused":{fontWeight:"bold"}},clickable:{cursor:"pointer"}}));function I({node:e}){let t=D(),i=(0,w.useNavigate)(),a=(0,f.S)(L.s),[r,l]=(0,s.useState)(0),[c,d]=(0,s.useState)(0),p=(0,x.n)(),u=(0,s.useRef)(null);(0,s.useLayoutEffect)(()=>{if(u.current){let{height:e,width:t}=u.current.getBBox();e=Math.round(e),t=Math.round(t),(e!==c||t!==r)&&(l(t),d(e))}},[r,c]);let g=p.getSystemIcon(`kind:${e.kind.toLocaleLowerCase("en-US")}`),h=g?c+10:0,m=c+20,{primaryTitle:y}=(0,N.f)(e);return(0,n.jsxs)("g",{onClick:()=>{i(a({kind:e.kind,namespace:e.metadata.namespace||o.oQ,name:e.metadata.name}))},className:t.clickable,children:[(0,n.jsx)("rect",{className:T()(t.node,e.root?"secondary":"primary"),width:h+r+20,height:m,rx:10}),g&&(0,n.jsx)(A,{kind:e.kind,y:10,x:10,width:c,height:c,className:T()(t.text,e.root?"secondary":"primary")}),(0,n.jsx)("text",{ref:u,className:T()(t.text,e.root?"secondary":"primary"),y:m/2,x:h+(r+20)/2,textAnchor:"middle",alignmentBaseline:"middle",children:y})]})}function P(e){let{loading:t,error:i,nodes:a,edges:r}=function(e){let t=(0,m.gf)(E.v),i=(0,l.U2)(e),{loading:n,error:a,value:r}=(0,k.A)(async()=>{let e=await t.getEntityAncestors({entityRef:i}),n=[],a=[];for(let t of e.items){let i=(0,l.U2)(t.entity),r=i===e.rootEntityRef;for(let e of(n.push({id:i,root:r,...t.entity}),t.parentEntityRefs))a.push({from:i,to:e})}return{nodes:n,edges:a}},[i]);return{loading:n,error:a,nodes:r?.nodes||[],edges:r?.edges||[]}}(e.entity),{t:s}=(0,R.i)(C.j);return t?(0,n.jsx)(c.k,{}):i?(0,n.jsx)(d._,{error:i}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(y.a,{mb:"2",children:(0,n.jsx)(j.E,{as:"p",children:s("inspectEntityDialog.ancestryPage.description",{processorsLink:(0,n.jsx)(p.N_,{to:"https://backstage.io/docs/features/software-catalog/life-of-an-entity",children:s("inspectEntityDialog.ancestryPage.processorsLink")})})})}),(0,n.jsx)(y.a,{mt:"8",children:(0,n.jsx)(g,{nodes:a,edges:r,renderNode:I,direction:h.D.Direction.BOTTOM_TOP,zoom:"enable-on-click"})})]})}var F=i(16263),O=i(40743),B=i(3438);let z=(0,b.A)({list:{listStyle:"none",margin:0,padding:0},indented:{paddingLeft:"var(--bui-space-4)"},listItem:{display:"flex",alignItems:"flex-start",marginTop:"var(--bui-space-1)",paddingLeft:"var(--bui-space-4)",fontFamily:"monospace",fontSize:"var(--bui-font-size-3)","&:first-child":{marginTop:0}}});function W(e){let t=z();return(0,n.jsx)("ul",{className:T()(t.list,e.indent&&t.indented,e.className),"aria-label":e["aria-label"],children:e.children})}function _(e){let t=z();return(0,n.jsx)("li",{className:t.listItem,children:e.children})}let $=(0,b.A)({header:{paddingLeft:"var(--bui-space-4)",marginTop:"var(--bui-space-4)",marginBottom:"var(--bui-space-4)"},headerLabel:{margin:0,fontFamily:"monospace",fontSize:"var(--bui-font-size-3)",fontWeight:"var(--bui-font-weight-regular)"},entityList:{marginTop:"var(--bui-space-4)"},headerValue:{margin:0,marginTop:"var(--bui-space-1)",fontFamily:"monospace",fontSize:"var(--bui-font-size-3)",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}});function U(e){let t=$(),{t:i}=(0,R.i)(C.j);return(0,n.jsxs)(n.Fragment,{children:[e.header&&(0,n.jsxs)("header",{className:t.header,children:[(0,n.jsx)("h4",{className:t.headerLabel,children:e.header[0]}),(0,n.jsx)("p",{className:t.headerValue,children:e.header[1]})]}),(0,n.jsx)(W,{"aria-label":i("inspectEntityDialog.colocatedPage.entityListAriaLabel"),className:t.entityList,children:e.entities.map(e=>(0,n.jsx)(_,{children:(0,n.jsx)(B.z,{entityRef:e})},(0,l.U2)(e)))})]})}function G(e){let{entity:t}=e,{t:i}=(0,R.i)(C.j),{loading:a,error:r,location:s,originLocation:o,colocatedEntities:p}=function(e){let t=(0,m.gf)(E.v),i=(0,l.U2)(e),n=e.metadata.annotations?.[F.Eo],a=e.metadata.annotations?.[F.r2],{loading:r,error:s,value:o}=(0,k.A)(async()=>n||a?(await t.getEntities({filter:[...n?[{[`metadata.annotations.${F.Eo}`]:n}]:[],...a?[{[`metadata.annotations.${F.r2}`]:a}]:[]]})).items:[],[n,a]);return{loading:r,error:s,location:n,originLocation:a,colocatedEntities:o?.filter(e=>(0,l.U2)(e)!==i)}}(t);if(a)return(0,n.jsx)(c.k,{});if(r)return(0,n.jsx)(d._,{error:r});if(!s&&!o)return(0,n.jsx)(O.F,{status:"warning",description:i("inspectEntityDialog.colocatedPage.alertNoLocation"),mt:"4"});if(!p?.length)return(0,n.jsx)(O.F,{status:"info",description:i("inspectEntityDialog.colocatedPage.alertNoEntity"),mt:"4"});if(s===o)return(0,n.jsx)(U,{entities:p});let u=p.filter(e=>e.metadata.annotations?.[F.Eo]===s),g=p.filter(e=>e.metadata.annotations?.[F.r2]===o);return(0,n.jsxs)(n.Fragment,{children:[u.length>0&&(0,n.jsx)(U,{entities:u,header:[i("inspectEntityDialog.colocatedPage.locationHeader"),s]}),g.length>0&&(0,n.jsx)(U,{entities:g,header:[i("inspectEntityDialog.colocatedPage.originHeader"),o]})]})}function H(e){let{t}=(0,R.i)(C.j);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(j.E,{as:"p",children:t("inspectEntityDialog.colocatedPage.description")}),(0,n.jsx)(G,{entity:e.entity})]})}var M=i(4809);function K(e){return Object.fromEntries([...Object.entries(e)].sort((e,t)=>e[0]<t[0]?-1:1))}function Y(e){let{t}=(0,R.i)(C.j);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(j.E,{as:"p",children:t("inspectEntityDialog.jsonPage.description")}),(0,n.jsx)("div",{"data-testid":"code-snippet",children:(0,n.jsx)(M.z,{text:JSON.stringify(K(e.entity),void 0,2),language:"json",showCopyCodeButton:!0})})]})}var V=i(32725),Q=i(82604),Z=i(33998),q=i(26438),X=i(73880),J=i(15784),ee=i(57873),et=i(63690),ei=i(68133),en=i(48119);let ea={"bui-TagList":"RH6vZOMUe3ozH13w","bui-Tag":"RbVv4ECvOgnU1Dwb","bui-TagRemoveButton":"l9zJlYdsd_AvoCWG","bui-TagIcon":"APxTgEybjsYQrIC6"},er=(0,en.p)()({styles:ea,classNames:{root:"bui-TagGroup",list:"bui-TagList"},propDefs:{items:{},children:{},renderEmptyState:{},className:{}}}),es=(0,en.p)()({styles:ea,classNames:{root:"bui-Tag",icon:"bui-TagIcon",removeButton:"bui-TagRemoveButton"},analytics:!0,propDefs:{noTrack:{},icon:{},size:{dataAttribute:!0,default:"small"},href:{},children:{},className:{}}});var el=i(76435);let eo=e=>{let{ownProps:t,restProps:i}=(0,ei.Z)(er,e),{classes:a,items:r,children:s,renderEmptyState:l}=t;return(0,n.jsx)(J.CR,{className:a.root,...i,children:(0,n.jsx)(J.LY,{className:a.list,items:r,renderEmptyState:l,children:s})})},ec=(0,s.forwardRef)((e,t)=>{let{ownProps:i,restProps:a,dataAttributes:r,analytics:s}=(0,ei.Z)(es,e),{classes:l,children:o,icon:c,href:d}=i,p="string"==typeof o?o:void 0;return(0,n.jsx)(J.vw,{ref:t,textValue:p,className:l.root,href:d,...r,...a,onPress:t=>{if(a.onPress?.(t),d){let t=e["aria-label"]??p??(0,el.O)(o)??String(d);s.captureEvent("click",t,{attributes:{to:String(d)}})}},children:({allowsRemoving:e})=>(0,n.jsxs)(n.Fragment,{children:[c&&(0,n.jsx)("span",{className:l.icon,children:c}),o,e&&(0,n.jsx)(ee.$,{className:l.removeButton,slot:"remove",children:(0,n.jsx)(et.qFd,{size:16})})]})})});var ed=i(87809),ep=i.n(ed),eu=i(40074),eg=i.n(eu);let eh=(0,b.A)({headingWithIcon:{display:"flex",alignItems:"center"},definitionList:{margin:0,padding:0},definitionItem:{display:"flex",alignItems:"flex-start",marginTop:"var(--bui-space-4)",paddingLeft:"var(--bui-space-4)",fontFamily:"monospace",fontSize:"var(--bui-font-size-3)","&:first-child":{marginTop:0}},definitionContent:{flex:1,minWidth:0},definitionKey:{fontWeight:"bold"},definitionValue:{margin:0,marginTop:"var(--bui-space-1)",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"},copyAction:{marginLeft:"var(--bui-space-2)",flexShrink:0},relationGroup:{"& + &":{marginTop:"var(--bui-space-4)"}},monospace:{fontFamily:"monospace"},sectionHeading:{marginTop:"var(--bui-space-3)"},metadataList:{marginTop:"var(--bui-space-2)"},relationList:{marginTop:"var(--bui-space-2)"},tagGroup:{marginTop:"var(--bui-space-3)",paddingLeft:"var(--bui-space-4)"}});function em(e){return e.map(([e,t])=>{let i=t.match(/^url:https?:\/\//)?t.slice(4):t.match(/^https?:\/\//)?t:void 0;return{key:e,value:i?(0,n.jsx)(p.N_,{to:i,children:t}):t}})}function ef({text:e,label:t}){let{t:i}=(0,R.i)(C.j),[a,r]=(0,s.useState)(!1),l=(0,s.useRef)();(0,s.useEffect)(()=>()=>clearTimeout(l.current),[]);let o=async()=>{try{await window.navigator.clipboard.writeText(e),r(!0),l.current=setTimeout(()=>r(!1),2e3)}catch{}};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(V.a,{icon:a?(0,n.jsx)(et.s0,{}):(0,n.jsx)(et.NGz,{}),"aria-label":i("inspectEntityDialog.overviewPage.copyAriaLabel",{label:t}),variant:"tertiary",size:"small",onPress:o}),(0,n.jsx)(Q.s,{role:"status",children:a?i("inspectEntityDialog.overviewPage.copiedStatus"):""})]})}function ex(e){let{t}=(0,R.i)(C.j);return(0,n.jsx)(Z.v,{href:e.to,target:"_blank",rel:"noopener noreferrer",variant:"tertiary",size:"small",iconStart:(0,n.jsx)(et.Kt4,{}),"aria-label":t("inspectEntityDialog.overviewPage.helpLinkAriaLabel")})}function ey(e){let t=eh();return(0,n.jsxs)(q.Zp,{children:[(0,n.jsx)(q.aR,{children:(0,n.jsxs)(j.E,{variant:"title-x-small",as:"h3",className:e.helpLink?t.headingWithIcon:void 0,children:[e.title,e.helpLink&&(0,n.jsx)(ex,{to:e.helpLink})]})}),(0,n.jsx)(q.bw,{children:e.children})]})}function ej(e){let t=eh();return(0,n.jsx)(j.E,{variant:"body-large",as:"h4",className:T()(t.headingWithIcon,e.className),children:e.children})}function eb(e){let t=eh();return(0,n.jsx)("dl",{className:T()(t.definitionList,e.className),"aria-label":e["aria-label"],children:e.items.map(e=>(0,n.jsxs)("div",{className:t.definitionItem,children:[(0,n.jsxs)("div",{className:t.definitionContent,children:[(0,n.jsx)("dt",{className:t.definitionKey,children:e.key}),(0,n.jsx)("dd",{className:t.definitionValue,children:e.value})]}),e.copyable&&"string"==typeof e.value&&(0,n.jsx)("div",{className:t.copyAction,children:(0,n.jsx)(ef,{text:e.value,label:e.key})})]},e.key))})}function ev(e){let t=eh(),{apiVersion:i,kind:a,metadata:r,spec:s,relations:o=[],status:c={}}=e.entity,d=ep()(eg()(o,e=>e.targetRef),"type"),{t:p}=(0,R.i)(C.j),u=(0,l.U2)(e.entity);return(0,n.jsxs)(X.s,{direction:"column",gap:"4",children:[(0,n.jsx)(ey,{title:p("inspectEntityDialog.overviewPage.identity.title"),children:(0,n.jsx)(eb,{"aria-label":p("inspectEntityDialog.overviewPage.identity.title"),items:[{key:"apiVersion",value:i},{key:"kind",value:a},...s?.type?[{key:"spec.type",value:s.type.toString()}]:[],...r.uid?[{key:"uid",value:r.uid,copyable:!0}]:[],...r.etag?[{key:"etag",value:r.etag,copyable:!0}]:[],{key:"entityRef",value:u,copyable:!0}]})}),(0,n.jsxs)(ey,{title:p("inspectEntityDialog.overviewPage.metadata.title"),children:[!!Object.keys(r.annotations||{}).length&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(ej,{children:[p("inspectEntityDialog.overviewPage.annotations"),(0,n.jsx)(ex,{to:"https://backstage.io/docs/features/software-catalog/well-known-annotations"})]}),(0,n.jsx)(eb,{items:em(Object.entries(r.annotations)),"aria-label":p("inspectEntityDialog.overviewPage.annotations"),className:t.metadataList})]}),!!Object.keys(r.labels||{}).length&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(ej,{className:t.sectionHeading,children:p("inspectEntityDialog.overviewPage.labels")}),(0,n.jsx)(eb,{items:em(Object.entries(r.labels)),"aria-label":p("inspectEntityDialog.overviewPage.labels"),className:t.metadataList})]}),!!r.tags?.length&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(ej,{className:t.sectionHeading,children:p("inspectEntityDialog.overviewPage.tags")}),(0,n.jsx)(eo,{"aria-label":p("inspectEntityDialog.overviewPage.tags"),className:t.tagGroup,children:r.tags.map(e=>(0,n.jsx)(ec,{id:e,children:e},e))})]})]}),!!o.length&&(0,n.jsx)(ey,{title:p("inspectEntityDialog.overviewPage.relation.title"),helpLink:"https://backstage.io/docs/features/software-catalog/well-known-relations",children:Object.entries(d).map(([e,i])=>(0,n.jsxs)("div",{className:t.relationGroup,children:[(0,n.jsx)(ej,{className:t.monospace,children:e}),(0,n.jsx)(W,{"aria-label":e,className:t.relationList,children:i.map(e=>(0,n.jsx)(_,{children:(0,n.jsx)(B.z,{entityRef:e.targetRef})},e.targetRef))})]},e))}),!!c.items?.length&&(0,n.jsx)(ey,{title:p("inspectEntityDialog.overviewPage.status.title"),helpLink:"https://backstage.io/docs/features/software-catalog/well-known-statuses",children:c.items.map((e,t)=>(0,n.jsxs)("div",{children:[(0,n.jsxs)(j.E,{children:[e.level,": ",e.type]}),(0,n.jsx)(y.a,{ml:"4",children:e.message})]},t))})]})}var eT=i(64402);function ew(e){let{t}=(0,R.i)(C.j);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(j.E,{as:"p",children:t("inspectEntityDialog.yamlPage.description")}),(0,n.jsx)("div",{"data-testid":"code-snippet",children:(0,n.jsx)(M.z,{text:eT.Ay.stringify(K(e.entity)),language:"yaml",showCopyCodeButton:!0})})]})}let ek=["overview","ancestry","colocated","json","yaml"];function eE(e){let{entity:t,initialTab:i,onSelect:l}=e,{t:o}=(0,R.i)(C.j),c=(0,s.useMemo)(()=>({overview:o("inspectEntityDialog.tabNames.overview"),ancestry:o("inspectEntityDialog.tabNames.ancestry"),colocated:o("inspectEntityDialog.tabNames.colocated"),json:o("inspectEntityDialog.tabNames.json"),yaml:o("inspectEntityDialog.tabNames.yaml")}),[o]),d={overview:(0,n.jsx)(ev,{entity:t}),ancestry:(0,n.jsx)(P,{entity:t}),colocated:(0,n.jsx)(H,{entity:t}),json:(0,n.jsx)(Y,{entity:t}),yaml:(0,n.jsx)(ew,{entity:t})};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(a.c7,{children:o("inspectEntityDialog.title")}),(0,n.jsx)(a.R4,{children:(0,n.jsxs)(r.tU,{defaultSelectedKey:i||"overview",onSelectionChange:e=>l?.(e),children:[(0,n.jsx)(r.wb,{"aria-label":o("inspectEntityDialog.tabsAriaLabel"),children:ek.map(e=>(0,n.jsx)(r.oz,{id:e,children:c[e]},e))}),ek.map(e=>(0,n.jsx)(r.Kp,{id:e,children:d[e]},e))]})})]})}function eL(e){let{open:t,entity:i,initialTab:r,onClose:s,onSelect:l}=e;return i?(0,n.jsx)(a.lG,{isOpen:t,onOpenChange:e=>!e&&s(),width:"940px",height:"100vh",children:t&&(0,n.jsx)(eE,{entity:i,initialTab:r,onSelect:l})}):null}},15542(e,t,i){i.d(t,{w:()=>o});var n=i(58077),a=i(50509),r=i(14041),s=i(769);function l(e){return"string"==typeof e?e:(0,n.U2)(e)}function o(e){let t=(0,a.gf)(s.a),[i,n]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let i=t.starredEntitie$().subscribe({next(t){n(t.has(l(e)))}});return()=>{i.unsubscribe()}},[e,t]),{toggleStarredEntity:(0,r.useCallback)(()=>t.toggleStarred(l(e)).then(),[e,t]),isStarredEntity:i}}},12307(e,t,i){i.d(t,{Q:()=>u});var n=i(31085),a=i(70205),r=i(89595),s=i(19654),l=i(32725),o=i(63690),c=i(50010);function d(e){let{icon:t,useProps:i}=e.data,{title:a,disabled:r,onClick:l,...o}=i(),c=l?()=>{let e=l();e&&e.catch(()=>{})}:void 0;return"href"in o?(0,n.jsx)(s.Dr,{iconStart:t,href:o.href,onAction:c,isDisabled:r,children:a}):(0,n.jsx)(s.Dr,{iconStart:t,onAction:c,isDisabled:r,children:a})}function p(e){return(0,n.jsx)(a.u,{node:e.item.node,children:(0,n.jsx)(d,{data:e.item.data})})}function u(e){let{UNSTABLE_extraContextMenuItems:t,contextMenuItems:i}=e,{t:a}=(0,r.i)(c.W);return(0,n.jsxs)(s.cQ,{children:[(0,n.jsx)(l.a,{variant:"secondary",icon:(0,n.jsx)(o.BlR,{}),"aria-label":a("entityContextMenu.moreButtonAriaLabel")}),(0,n.jsxs)(s.W1,{placement:"bottom end",children:[t?.map((e,t)=>(0,n.jsx)(s.Dr,{iconStart:(0,n.jsx)(e.Icon,{}),onAction:()=>e.onClick(),children:e.title},`${e.title}-${t}`)),t?.length&&i?.length?(0,n.jsx)(s.bX,{}):null,i?.map(e=>(0,n.jsx)(p,{item:e},e.node.spec.id))]})]})}},7221(e,t,i){i.d(t,{I:()=>n});function n(e,t){return t?e.filter(e=>!e.if||e.if(t)):[]}},86793(e,t,i){i.r(t),i.d(t,{EntityLayout:()=>Y});var n=i(31085),a=i(48209),r=i(90615),s=i(89595),l=i(12439),o=i(55489),c=i(84391),d=i(87187),p=i(60603),u=i(15448),g=i(22845),h=i(50010),m=i(14041),f=i(73657),x=i(73466),y=i(58837),j=i(77125),b=i(4103),v=i(70111),T=i(50509),w=i(11773),k=i(26958),E=i(58077),L=i(15542),N=i(79811),S=i(280);let A=e=>{let{toggleStarredEntity:t,isStarredEntity:i}=(0,L.w)(e.entity),{t:a}=(0,s.i)(N.j),r=a(i?"favoriteEntity.removeFromFavorites":"favoriteEntity.addToFavorites"),l=`favorite-${(0,E.U2)(e.entity).replace(/[^a-zA-Z0-9-_]/g,"-")}`;return(0,n.jsx)(S.v,{title:r,id:l,isFavorite:i,onToggle:t,...e})};var C=i(76272),R=i(3438),D=i(43151),I=i(27231),P=i(49185),F=i(53320),O=i(53987);function B(e){let{entity:t}=e,i=(0,F.t)(t,P.vv),{t:a}=(0,s.i)(h.W);return(0,n.jsxs)(n.Fragment,{children:[i.length>0&&(0,n.jsx)(I.S,{label:a("entityLabels.ownerLabel"),contentTypograpyRootComponent:"p",value:(0,n.jsx)(O.i,{entityRefs:i,defaultKind:"Group",color:"inherit"})}),t.spec?.lifecycle&&(0,n.jsx)(I.S,{label:a("entityLabels.lifecycleLabel"),value:t.spec.lifecycle?.toString()})]})}var z=i(12307);function W(e,t,i,n){let a,r=e??n?.kind??"",s=t??n?.metadata.namespace??"",l=n?.metadata.title??i??n?.metadata.name??"";return{headerTitle:`${l}${s&&s!==w.oQ?` in ${s}`:""}`,headerType:(a=r.toLocaleLowerCase("en-US"),n&&n.spec&&"type"in n.spec&&(a+=" — ",a+=n.spec.type.toLocaleLowerCase("en-US")),a)}}function _(e=[],t=[]){for(let i of t){let t=e.find(e=>e.type===i);if(t)return t}return null}let $=(0,y.A)(e=>({breadcrumbs:{color:e.page.fontColor,fontSize:e.typography.caption.fontSize,textTransform:"uppercase",marginTop:e.spacing(1),opacity:.8,"& span ":{color:e.page.fontColor,textDecoration:"underline",textUnderlineOffset:"3px"}}}));function U(){let{entity:e}=(0,g.TY)(),{kind:t,namespace:i,name:a}=(0,r.K)(u.s),{headerTitle:s}=W(t,i,a,e);return(0,n.jsxs)(j.A,{display:"inline-flex",alignItems:"center",height:"1em",maxWidth:"100%",children:[(0,n.jsx)(j.A,{component:"span",textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden",children:e?(0,n.jsx)(k.d,{entityRef:e,hideIcon:!0}):s}),e&&(0,n.jsx)(A,{entity:e})]})}function G(e){let{parentEntityRelations:t}=e,i=$(),{entity:a}=(0,g.TY)(),{name:s}=(0,r.K)(u.s),l=_(a?.relations??[],t??[]),o=(0,T.gf)(C.v),{value:c}=(0,x.A)(async()=>l?_((await o.getEntityByRef(l?.targetRef))?.relations,t):null,[l,o]);return l?(0,n.jsxs)(b.B,{separator:">",className:i.breadcrumbs,children:[c&&(0,n.jsx)(R.z,{entityRef:c.targetRef,disableTooltip:!0}),(0,n.jsx)(R.z,{entityRef:l.targetRef,disableTooltip:!0}),s]}):null}function H(e){let{UNSTABLE_extraContextMenuItems:t,contextMenuItems:i,parentEntityRelations:a,title:s,subtitle:l}=e,{entity:o}=(0,g.TY)(),{kind:c,namespace:d,name:p}=(0,r.K)(u.s),{headerTitle:h,headerType:x}=W(c,d,p,o),[y,j]=(0,f.useSearchParams)(),b=y.get("inspect"),T=(0,m.useCallback)(e=>j(`inspect=${e}`),[j]),w=(0,m.useCallback)(()=>j(),[j]);return(0,n.jsx)(v.Y,{pageTitleOverride:h,type:x,title:s??(0,n.jsx)(U,{}),subtitle:l??(0,n.jsx)(G,{parentEntityRelations:a}),children:o&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B,{entity:o}),(0,n.jsx)(z.Q,{UNSTABLE_extraContextMenuItems:t,contextMenuItems:i}),(0,n.jsx)(D.q,{entity:o,initialTab:b||void 0,open:"string"==typeof b,onClose:w,onSelect:T})]})})}var M=i(63156),K=i(7221);function Y(e){let{UNSTABLE_extraContextMenuItems:t,contextMenuItems:i,header:m,NotFoundComponent:f,parentEntityRelations:x,groupDefinitions:y,defaultContentOrder:j,showNavItemIcons:b,routes:v}=e,{kind:T}=(0,r.K)(u.s),{entity:w,loading:k,error:E}=(0,g.TY)(),L=(0,K.I)(v,w),{t:N}=(0,s.i)(h.W);return(0,n.jsxs)(l.Y,{themeId:w?.spec?.type?.toString()??"home",children:[m??(0,n.jsx)(H,{parentEntityRelations:x,UNSTABLE_extraContextMenuItems:t,contextMenuItems:i}),k&&(0,n.jsx)(o.k,{}),w&&(0,n.jsx)(M.s,{routes:L,groupDefinitions:y,defaultContentOrder:j,showIcons:b}),E&&(0,n.jsx)(c.U,{children:(0,n.jsx)(a.A,{severity:"error",children:E.toString()})}),!k&&!E&&!w&&(0,n.jsx)(c.U,{children:f||(0,n.jsx)(d.B,{title:N("entityLabels.warningPanelTitle"),children:N("entityPage.notFoundMessage",{kind:T,link:(0,n.jsx)(p.N_,{to:"https://backstage.io/docs/features/software-catalog/references",children:N("entityPage.notFoundLinkText")})})})})]})}},63156(e,t,i){i.d(t,{s:()=>W,S:()=>z});var n=i(31085),a=i(14041),r=i(93285),s=i(18690),l=i(21613),o=i(51021),c=i(53373),d=i.n(c),p=i(58837);let u=(0,p.A)(e=>({root:{gridArea:"pageContent",minWidth:0,paddingTop:e.spacing(3),paddingBottom:e.spacing(3),paddingLeft:e.spacing(2),paddingRight:e.spacing(2),[e.breakpoints.up("sm")]:{paddingLeft:e.spacing(3),paddingRight:e.spacing(3)}},stretch:{display:"flex",flexDirection:"column",flexGrow:1},noPadding:{padding:0}}),{name:"EntityTabsPanel"});function g(e){let{className:t,stretch:i,noPadding:a,children:r,...s}=e,l=u();return(0,n.jsx)("article",{...s,className:d()(l.root,t,{[l.stretch]:i,[l.noPadding]:a}),children:r})}var h=i(77125),m=i(74953),f=i(89595),x=i(73657),y=i(72501),j=i(55197),b=i(11192),v=i(99703),T=i(7031),w=i(6924),k=i(64947),E=i(8109),L=i(46423),N=i(5951),S=i(58007),A=i(50509),C=i(80615);function R(e,t,i){if(i){if("string"==typeof e){let i=t.getIcon(e);return i?(0,n.jsx)(i,{}):void 0}return e}}let D=(0,a.forwardRef)(function(e,t){let[i,r]=(0,a.useState)(null),s=(0,A.gf)(C.s),l=!!i,{classes:o,className:c,disabled:p=!1,disableFocusRipple:u=!1,items:g,fullWidth:h,indicator:m,label:f,onSelectTab:v,selected:T,textColor:D="inherit",wrapped:I=!1,highlightedButton:P,showIcons:F=!1}=e,O=R(e.icon,s,F),B="data-testid"in e&&e["data-testid"],z=()=>{r(null)},W=[o?.root,o?.[`textColor${(0,b.A)(D)}`],o&&{[o.disabled]:p,[o.selected]:T,[o.labelIcon]:f&&O,[o.fullWidth]:h,[o.wrapped]:I},c];if(1===g.length)return(0,n.jsxs)(k.A,{focusRipple:!u,"data-testid":B,className:d()(W,o&&{[o.labelIcon]:f&&(g[0].icon??O)}),ref:t,role:"tab","aria-selected":T,disabled:p,component:x.Link,onClick:v,to:g[0]?.path,startIcon:R(g[0].icon,s,F),children:[(0,n.jsx)(y.A,{className:o?.wrapper,variant:"button",children:g[0].label}),m]});let _=F&&g.some(e=>e.icon);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(k.A,{"data-testid":B,focusRipple:!u,className:d()(W),ref:t,role:"tab","aria-selected":T,disabled:p,onClick:e=>{r(e.currentTarget)},startIcon:O,children:[(0,n.jsx)(y.A,{className:o?.wrapper,variant:"button",children:f}),(0,n.jsx)(w.default,{})]}),(0,n.jsx)(j.Ay,{id:l?"tabbed-submenu":void 0,open:l,anchorEl:i,onClose:z,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:(0,n.jsx)(S.A,{component:"nav",children:g.map(e=>{let i=R(e.icon,s,F);return(0,n.jsxs)(E.A,{button:!0,focusRipple:!u,classes:{selected:d()(o?.selectedButton),default:d()(o?.unselectedButton),disabled:d()(o?.disabled)},ref:t,"aria-selected":T,disabled:p,selected:P===e.id,component:x.Link,onClick:e=>{z(),v?.(e)},to:e.path,children:[i&&(0,n.jsx)(L.A,{children:i}),(0,n.jsx)(N.A,{inset:!i&&_,primary:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(y.A,{variant:"button",children:e.label}),m]})})]},`popover_item_${e.id}`)})})})]})}),I=(0,T.A)(e=>(0,v.A)({root:{...e.typography.button,maxWidth:264,minWidth:72,position:"relative",boxSizing:"border-box",minHeight:48,flexShrink:0,padding:"6px 12px",[e.breakpoints.up("sm")]:{padding:"6px 24px"},overflow:"hidden",whiteSpace:"normal",textAlign:"center",[e.breakpoints.up("sm")]:{minWidth:160}},defaultTab:{...e.typography.caption,padding:e.spacing(3,3),textTransform:"uppercase",fontWeight:e.typography.fontWeightBold,color:e.palette.text.secondary},labelIcon:{minHeight:72,paddingTop:9,"& $wrapper > *:first-child":{marginBottom:6}},textColorInherit:{color:"inherit",opacity:.7,"&$selected":{opacity:1},"&$disabled":{opacity:.5}},selectedButton:{color:`${e.palette.text.primary}`,opacity:"1"},unselectedButton:{color:`${e.palette.text.secondary}`,opacity:"0.7"},textColorPrimary:{color:e.palette.text.secondary,"&$selected":{color:e.palette.primary.main},"&$disabled":{color:e.palette.text.disabled}},textColorSecondary:{color:e.palette.text.secondary,"&$selected":{color:e.palette.secondary.main},"&$disabled":{color:e.palette.text.disabled}},selected:{},disabled:{},fullWidth:{flexShrink:1,flexGrow:1,flexBasis:0,maxWidth:"none"},wrapped:{fontSize:e.typography.pxToRem(12),lineHeight:1.5},wrapper:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:"100%",flexDirection:"row"}}),{name:"MuiTab"})(D);var P=i(50010);let F=(0,p.A)(e=>({tabsWrapper:{gridArea:"pageSubheader",backgroundColor:e.palette.background.paper,paddingLeft:e.spacing(3),minWidth:0},defaultTab:{...e.typography.caption,padding:e.spacing(3,3),textTransform:"uppercase",fontWeight:e.typography.fontWeightBold,color:e.palette.text.secondary},selected:{color:e.palette.text.primary},tabRoot:{"&:hover":{backgroundColor:e.palette.background.default,color:e.palette.text.primary}}}),{name:"BackstageHeaderTabs"});function O(e,t,i){if(e)return t[e]?e:i[e]}function B(e){let t=F(),{t:i}=(0,f.i)(P.W),{tabs:r,selectedIndex:s=0,showIcons:l,groupDefinitions:o,defaultContentOrder:c="title"}=e,d=(0,a.useMemo)(()=>Object.entries(o).reduce((e,[t,i])=>{for(let n of i.aliases??[])e[n]=t;return e},{}),[o]),p=(0,a.useMemo)(()=>{let e=r.reduce((e,t)=>{let i=O(t.group,o,d),n=i?o[i]:void 0,a=n&&i?i:t.id;return e[a]=e[a]??{group:n,items:[]},e[a].items.push(t),e},{}),t=Object.keys(o),i=Object.entries(e).sort(([e],[i])=>{let n=t.indexOf(e),a=t.indexOf(i);return -1!==n&&-1!==a?n-a:-1!==n?-1:+(-1!==a)});for(let[e,t]of i){let i=o[e];i&&"title"===(i.contentOrder??c)&&t.items.sort((e,t)=>e.label.localeCompare(t.label,void 0,{sensitivity:"base"}))}return i},[r,o,d,c]),u=s>=0?r[s]:void 0,g=O(u?.group,o,d);return(0,n.jsx)(h.A,{className:t.tabsWrapper,children:(0,n.jsx)(m.A,{selectionFollowsFocus:!0,indicatorColor:"primary",textColor:"inherit",variant:"scrollable",scrollButtons:"auto","aria-label":i("entityTabs.tabsAriaLabel"),value:g??u?.id??!1,children:p.map(([e,i])=>(0,n.jsx)(I,{"data-testid":`header-tab-${e}`,className:t.defaultTab,classes:{selected:t.selected,root:t.tabRoot},label:i.group?.title,icon:i.group?.icon,value:e,items:i.items,highlightedButton:u?.id,showIcons:l},e))})})}function z(e){let t=(0,s.useParams)(),i=(0,a.useMemo)(()=>e.map(({path:e,children:t})=>({caseSensitive:!1,path:function(e){let t=e.replace(/^\/+/,"");if(t.endsWith("*"))return t;let i=t.replace(/\/+$/,"");return i?`${i}/*`:""}(e),element:t})),[e]),n=(0,s.useRoutes)(i)??void 0,r=t["*"]??"";r.startsWith("/")||(r=`/${r}`);let[o]=(0,l.ue)(i,r)??[],c=o?i.findIndex(e=>e.path===o.route.path):-1;return{index:c,element:n,route:e[c]}}function W(e){let{routes:t,groupDefinitions:i,defaultContentOrder:s,showIcons:l}=e,{index:c,route:d,element:p}=z(t),u=(0,a.useMemo)(()=>t.map(e=>{let{path:t,title:i,group:n,icon:a}=e,r=t;return{group:n,id:t,path:r=(r=r.replace(/\/\*$/,"")).replace(/^\//,""),label:i,icon:a}}),[t]);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B,{tabs:u,selectedIndex:c,showIcons:l,groupDefinitions:i,defaultContentOrder:s}),(0,n.jsxs)(g,{children:[(0,n.jsx)(r.m,{title:d?.title}),p??(0,n.jsx)(o.zK,{})]})]})}}}]); //# sourceMappingURL=5954.fa4f85ba1dfd.chunk.js.map