@techdocs/cli 1.8.1 → 1.8.2-next.1
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.
- package/CHANGELOG.md +23 -0
- package/dist/cjs/{serve-a43e7800.cjs.js → serve-c333b152.cjs.js} +2 -2
- package/dist/cjs/{serve-a43e7800.cjs.js.map → serve-c333b152.cjs.js.map} +1 -1
- package/dist/embedded-app/.config-schema.json +479 -22
- package/dist/embedded-app/index.html +1 -1
- package/dist/embedded-app/static/{1032.962f0dc0.chunk.js → 1032.140ea063.chunk.js} +2 -2
- package/dist/embedded-app/static/{1032.962f0dc0.chunk.js.map → 1032.140ea063.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{1105.b895d544.chunk.js → 1105.d3f18e31.chunk.js} +2 -2
- package/dist/embedded-app/static/{1105.b895d544.chunk.js.map → 1105.d3f18e31.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{184.1dc24a02.chunk.js → 184.fb5a152a.chunk.js} +2 -2
- package/dist/embedded-app/static/{184.1dc24a02.chunk.js.map → 184.fb5a152a.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{2440.c190961f.chunk.js → 2440.7a3710e0.chunk.js} +2 -2
- package/dist/embedded-app/static/{2440.c190961f.chunk.js.map → 2440.7a3710e0.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{3487.033f70d1.chunk.js → 3487.00057c69.chunk.js} +2 -2
- package/dist/embedded-app/static/{3487.033f70d1.chunk.js.map → 3487.00057c69.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{4917.4ecb223f.chunk.js → 4917.5d4a6c52.chunk.js} +2 -2
- package/dist/embedded-app/static/{4917.4ecb223f.chunk.js.map → 4917.5d4a6c52.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{5458.ee26d731.chunk.js → 5458.7bf88cf3.chunk.js} +2 -2
- package/dist/embedded-app/static/{5458.ee26d731.chunk.js.map → 5458.7bf88cf3.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{5877.917fd5e0.chunk.js → 5877.fce91b72.chunk.js} +2 -2
- package/dist/embedded-app/static/{5877.917fd5e0.chunk.js.map → 5877.fce91b72.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{6051.4b8c1634.chunk.js → 6051.71a9b063.chunk.js} +2 -2
- package/dist/embedded-app/static/{6051.4b8c1634.chunk.js.map → 6051.71a9b063.chunk.js.map} +1 -1
- package/dist/embedded-app/static/7670.842d9f01.chunk.js +3 -0
- package/dist/embedded-app/static/7670.842d9f01.chunk.js.map +1 -0
- package/dist/embedded-app/static/{7750.259f7924.chunk.js → 7750.a9abe428.chunk.js} +2 -2
- package/dist/embedded-app/static/{7750.259f7924.chunk.js.map → 7750.a9abe428.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{8096.eca884aa.chunk.js → 8096.9b855cbc.chunk.js} +2 -2
- package/dist/embedded-app/static/{8096.eca884aa.chunk.js.map → 8096.9b855cbc.chunk.js.map} +1 -1
- package/dist/embedded-app/static/87.06c3bfc1.chunk.js +3 -0
- package/dist/embedded-app/static/87.06c3bfc1.chunk.js.map +1 -0
- package/dist/embedded-app/static/{9545.21600bcf.chunk.js → 9545.264135de.chunk.js} +2 -2
- package/dist/embedded-app/static/{9545.21600bcf.chunk.js.map → 9545.264135de.chunk.js.map} +1 -1
- package/dist/embedded-app/static/{9770.69fa838c.chunk.js → 9770.cfa9f314.chunk.js} +2 -2
- package/dist/embedded-app/static/{9770.69fa838c.chunk.js.map → 9770.cfa9f314.chunk.js.map} +1 -1
- package/dist/embedded-app/static/main.3f749eef.js +495 -0
- package/dist/embedded-app/static/main.3f749eef.js.map +1 -0
- package/dist/embedded-app/static/{module-material-table.b510f85c.js → module-material-table.dc2e7a78.js} +2 -2
- package/dist/embedded-app/static/{module-material-table.b510f85c.js.map → module-material-table.dc2e7a78.js.map} +1 -1
- package/dist/embedded-app/static/{module-material-ui.c8f92ef8.js → module-material-ui.e26d0f76.js} +7 -7
- package/dist/embedded-app/static/module-material-ui.e26d0f76.js.map +1 -0
- package/dist/embedded-app/static/module-react-beautiful-dnd.d66821d2.js +67 -0
- package/dist/embedded-app/static/module-react-beautiful-dnd.d66821d2.js.map +1 -0
- package/dist/embedded-app/static/module-react-router-dom.6a4a6115.js +22 -0
- package/dist/embedded-app/static/module-react-router-dom.6a4a6115.js.map +1 -0
- package/dist/embedded-app/static/module-react-router.fc2430de.js +22 -0
- package/dist/embedded-app/static/module-react-router.fc2430de.js.map +1 -0
- package/dist/embedded-app/static/{runtime.0c2b0715.js → runtime.3f749eef.js} +2 -2
- package/dist/embedded-app/static/{runtime.0c2b0715.js.map → runtime.3f749eef.js.map} +1 -1
- package/dist/embedded-app/static/vendor.3f749eef.js +164 -0
- package/dist/embedded-app/static/vendor.3f749eef.js.map +1 -0
- package/dist/index.cjs.js +2 -2
- package/package.json +5 -5
- package/dist/embedded-app/static/7670.ecbfc9f3.chunk.js +0 -3
- package/dist/embedded-app/static/7670.ecbfc9f3.chunk.js.map +0 -1
- package/dist/embedded-app/static/9814.cc1c4811.chunk.js +0 -3
- package/dist/embedded-app/static/9814.cc1c4811.chunk.js.map +0 -1
- package/dist/embedded-app/static/main.0c2b0715.js +0 -491
- package/dist/embedded-app/static/main.0c2b0715.js.map +0 -1
- package/dist/embedded-app/static/module-material-ui.c8f92ef8.js.map +0 -1
- package/dist/embedded-app/static/module-react-beautiful-dnd.1f1d9332.js +0 -67
- package/dist/embedded-app/static/module-react-beautiful-dnd.1f1d9332.js.map +0 -1
- package/dist/embedded-app/static/module-react-router-dom.81a9f610.js +0 -22
- package/dist/embedded-app/static/module-react-router-dom.81a9f610.js.map +0 -1
- package/dist/embedded-app/static/module-react-router.e7f42b6c.js +0 -22
- package/dist/embedded-app/static/module-react-router.e7f42b6c.js.map +0 -1
- package/dist/embedded-app/static/vendor.0c2b0715.js +0 -164
- package/dist/embedded-app/static/vendor.0c2b0715.js.map +0 -1
|
@@ -0,0 +1,495 @@
|
|
|
1
|
+
(()=>{(self.webpackChunktechdocs_cli_embedded_app=self.webpackChunktechdocs_cli_embedded_app||[]).push([[179],{88797:function(V,T,t){"use strict";t.d(T,{n:function(){return o}});const o=Symbol.for("CATALOG_FILTER_EXISTS_0e15b590c0b343a2bae3e787e84c2111")},34106:function(V,T,t){"use strict";t.d(T,{Tf:function(){return u},l2:function(){return i},zG:function(){return o}});const o="default",i="backstage.io/view-url",u="backstage.io/edit-url",S="kubernetes.io/api-server",m="kubernetes.io/api-server-certificate-authority",g="kubernetes.io/auth-provider"},74314:function(V,T,t){"use strict";t.d(T,{eE:function(){return m},iB:function(){return u},of:function(){return S}});var o=t(34106);function i(g){let c=g.indexOf(":");const d=g.indexOf("/");d!==-1&&d<c&&(c=-1);const E=c===-1?void 0:g.slice(0,c),y=d===-1?void 0:g.slice(c+1,d),O=g.slice(Math.max(c+1,d+1));if(E===""||y===""||O==="")throw new TypeError(`Entity reference "${g}" was not on the form [<kind>:][<namespace>/]<name>`);return{kind:E,namespace:y,name:O}}function u(g){return{kind:g.kind,namespace:g.metadata.namespace||o.zG,name:g.metadata.name}}function S(g,c){if(!g)throw new Error("Entity reference must not be empty");const d=c==null?void 0:c.defaultKind,E=(c==null?void 0:c.defaultNamespace)||o.zG;let y,O,v;if(typeof g=="string"){const w=i(g);var A;y=(A=w.kind)!==null&&A!==void 0?A:d;var h;O=(h=w.namespace)!==null&&h!==void 0?h:E,v=w.name}else{var I;y=(I=g.kind)!==null&&I!==void 0?I:d;var P;O=(P=g.namespace)!==null&&P!==void 0?P:E,v=g.name}if(y)if(O){if(!v){const w=JSON.stringify(g);throw new Error(`Entity reference ${w} had missing or empty name`)}}else{const w=JSON.stringify(g);throw new Error(`Entity reference ${w} had missing or empty namespace`)}else{const w=JSON.stringify(g);throw new Error(`Entity reference ${w} had missing or empty kind (e.g. did not start with "component:" or similar)`)}return{kind:y,namespace:O,name:v}}function m(g){let c,d,E;if("metadata"in g){c=g.kind;var y;d=(y=g.metadata.namespace)!==null&&y!==void 0?y:o.zG,E=g.metadata.name}else{c=g.kind;var O;d=(O=g.namespace)!==null&&O!==void 0?O:o.zG,E=g.name}return`${c.toLocaleLowerCase("en-US")}:${d.toLocaleLowerCase("en-US")}/${E.toLocaleLowerCase("en-US")}`}},8709:function(V,T,t){"use strict";t.d(T,{S4:function(){return o},aS:function(){return h},cz:function(){return A},nP:function(){return c},w$:function(){return d}});const o="ownedBy",i="ownerOf",u="consumesApi",S="apiConsumedBy",m="providesApi",g="apiProvidedBy",c="dependsOn",d="dependencyOf",E="parentOf",y="childOf",O="memberOf",v="hasMember",A="partOf",h="hasPart"},90663:function(V,T,t){"use strict";t.d(T,{M6:function(){return u},P1:function(){return o}});const o="backstage.io/managed-by-location",i="backstage.io/managed-by-origin-location",u="backstage.io/source-location"},51547:function(V,T,t){"use strict";t.d(T,{CV:function(){return g},NZ:function(){return m},Ou:function(){return S}});var o=t(74314),i=t(90663);const u=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i;function S(c){if(typeof c!="string")throw new TypeError(`Unable to parse location ref '${c}', unexpected argument ${typeof c}`);const d=c.indexOf(":");if(d<0)throw new TypeError(`Unable to parse location ref '${c}', expected '<type>:<target>', e.g. 'url:https://host/path'`);const E=c.substring(0,d).trim(),y=c.substring(d+1).trim();if(!E||!y)throw new TypeError(`Unable to parse location ref '${c}', expected '<type>:<target>', e.g. 'url:https://host/path'`);if(E==="http"||E==="https")throw new TypeError(`Invalid location ref '${c}', please prefix it with 'url:', e.g. 'url:${c}'`);if(u.test(y))throw new TypeError(`Invalid location ref '${c}', target is a javascript: URL`);return{type:E,target:y}}function m(c){const{type:d,target:E}=c;if(d){if(!E)throw new TypeError("Unable to stringify location ref, empty target")}else throw new TypeError("Unable to stringify location ref, empty type");if(u.test(E))throw new TypeError(`Invalid location ref '${d}:${E}', target is a javascript: URL`);return`${d}:${E}`}function g(c){var d,E,y,O,v;const A=(v=(E=c.metadata)===null||E===void 0||(d=E.annotations)===null||d===void 0?void 0:d[i.M6])!==null&&v!==void 0?v:(O=c.metadata)===null||O===void 0||(y=O.annotations)===null||y===void 0?void 0:y[i.P1];if(!A)throw new Error(`Entity '${(0,o.eE)(c)}' is missing location`);return S(A)}},9791:function(V,T,t){"use strict";t.d(T,{O:function(){return E}});var o=t(52322),i=t(62774),u=t(60364),S=t(2784),m=t(83229),g=t(26639),c=t(39595),d=t(58033);function E(y){const{text:O,language:v,showLineNumbers:A=!1,highlightedNumbers:h,customStyle:I,showCopyCodeButton:P=!1}=y,w=(0,u.Z)(),D=w.palette.type==="dark"?g.Z:c.Z,M=w.palette.type==="dark"?"#256bf3":"#e6ffed";return(0,o.jsxs)(i.Z,{position:"relative",children:[(0,o.jsx)(m.Z,{customStyle:I,language:v,style:D,showLineNumbers:A,wrapLines:!0,lineNumberStyle:{color:w.palette.textVerySubtle},lineProps:b=>h!=null&&h.includes(b)?{style:{backgroundColor:M}}:{},children:O}),P&&(0,o.jsx)(i.Z,{position:"absolute",top:0,right:0,children:(0,o.jsx)(d.b,{text:O})})]})}},58033:function(V,T,t){"use strict";t.d(T,{b:function(){return E}});var o=t(52322),i=t(44394),u=t(58513),S=t(61837),m=t(80030),g=t(19353),c=t(2784),d=t(95074);function E(y){const{text:O,tooltipDelay:v=1e3,tooltipText:A="Text copied to clipboard","aria-label":h="Copy text"}=y,I=(0,i.h_)(u.V),[P,w]=(0,c.useState)(!1),[{error:D},M]=(0,d.Z)();(0,c.useEffect)(()=>{D&&I.post(D)},[D,I]);const b=H=>{H.stopPropagation(),w(!0),M(O)};return(0,o.jsx)(o.Fragment,{children:(0,o.jsx)(m.ZP,{id:"copy-test-tooltip",title:A,placement:"top",leaveDelay:v,onClose:()=>w(!1),open:P,children:(0,o.jsx)(S.Z,{onClick:b,"aria-label":h,children:(0,o.jsx)(g.Z,{})})})})}},70249:function(V,T,t){"use strict";t.d(T,{u:function(){return A}});var o=t(52322),i=t(60905),u=t(79692),S=t(90436),m=t(2784),g=t.p+"static/missingAnnotation.67f79e98..svg",c=t.p+"static/noInformation.4b426325..svg",d=t.p+"static/createComponent.975d1e1e..svg",E=t.p+"static/noBuild.1715fa71..svg";const y=(0,u.Z)({generalImg:{width:"95%",zIndex:2,position:"relative",left:"50%",top:"50%",transform:"translate(-50%, 15%)"}},{name:"BackstageEmptyStateImage"}),O=({missing:h})=>{const I=y();switch(h){case"field":return(0,o.jsx)("img",{src:g,className:I.generalImg,alt:"annotation is missing"});case"info":return(0,o.jsx)("img",{src:c,alt:"no Information",className:I.generalImg});case"content":return(0,o.jsx)("img",{src:d,alt:"create Component",className:I.generalImg});case"data":return(0,o.jsx)("img",{src:E,alt:"no Build",className:I.generalImg});default:return null}},v=(0,u.Z)(h=>({root:{backgroundColor:h.palette.background.default,padding:h.spacing(2,0,0,0)},action:{marginTop:h.spacing(2)},imageContainer:{position:"relative"}}),{name:"BackstageEmptyState"});function A(h){const{title:I,description:P,missing:w,action:D}=h,M=v();return(0,o.jsxs)(i.Z,{container:!0,direction:"row",justifyContent:"space-around",alignItems:"flex-start",className:M.root,spacing:2,children:[(0,o.jsx)(i.Z,{item:!0,xs:12,md:6,children:(0,o.jsxs)(i.Z,{container:!0,direction:"column",children:[(0,o.jsx)(i.Z,{item:!0,xs:!0,children:(0,o.jsx)(S.Z,{variant:"h5",children:I})}),(0,o.jsx)(i.Z,{item:!0,xs:!0,children:(0,o.jsx)(S.Z,{variant:"body1",children:P})}),(0,o.jsx)(i.Z,{item:!0,xs:!0,className:M.action,children:D})]})}),(0,o.jsx)(i.Z,{item:!0,xs:12,md:6,className:M.imageContainer,children:typeof w=="string"?(0,o.jsx)(O,{missing:w}):w.customImage})]})}},74359:function(V,T,t){"use strict";t.d(T,{y:function(){return O}});var o=t(52322),i=t(79692),u=t(11776),S=t(38402),m=t(49378),g=t(2784),c=t(58033),d=t(538);const E=(0,i.Z)(v=>({text:{fontFamily:"monospace",whiteSpace:"pre",overflowX:"auto",marginRight:v.spacing(2)},divider:{margin:v.spacing(2)}}),{name:"BackstageErrorPanel"}),y=({error:v,message:A,stack:h,children:I})=>{const P=E();return(0,o.jsxs)(u.Z,{dense:!0,children:[(0,o.jsxs)(S.Z,{alignItems:"flex-start",children:[(0,o.jsx)(m.Z,{classes:{secondary:P.text},primary:"Error",secondary:v}),(0,o.jsx)(c.b,{text:v})]}),(0,o.jsxs)(S.Z,{alignItems:"flex-start",children:[(0,o.jsx)(m.Z,{classes:{secondary:P.text},primary:"Message",secondary:A}),(0,o.jsx)(c.b,{text:A})]}),h&&(0,o.jsxs)(S.Z,{alignItems:"flex-start",children:[(0,o.jsx)(m.Z,{classes:{secondary:P.text},primary:"Stack Trace",secondary:h}),(0,o.jsx)(c.b,{text:h})]}),I]})};function O(v){const{title:A,error:h,defaultExpanded:I,titleFormat:P,children:w}=v;return(0,o.jsx)(d.G,{severity:"error",title:A!=null?A:h.message,defaultExpanded:I,titleFormat:P,children:(0,o.jsx)(y,{error:h.name,message:h.message,stack:h.stack,children:w})})}},98864:function(V,T,t){"use strict";t.d(T,{rU:function(){return z}});var o=t(52322),i=t(44394),u=t(6542),S=t(62369),m=t(86689),g=t(79692),c=t(90436),d=t(12524),E=t.n(d),y=t(76635),O=t.n(y),v=t(2784),A=t(73557),h=t(71597);function I(){const[W]=(0,A.is)((0,o.jsx)(A.AW,{index:!0,element:(0,o.jsx)("div",{})}));return!W.index}const P=(0,g.Z)({visuallyHidden:{clip:"rect(0 0 0 0)",clipPath:"inset(50%)",overflow:"hidden",position:"absolute",userSelect:"none",whiteSpace:"nowrap",height:1,width:1},externalLink:{position:"relative"}},{name:"Link"}),w=W=>/^([a-z+.-]+):/.test(W),D=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i,M=window.open;if(M&&!M.__backstage){const W=function(...Q){const et=String(Q[0]);if(D.test(et))throw new Error("Rejected window.open() with a javascript: URL as a security precaution");return M.apply(this,Q)};W.__backstage=!0,window.open=W}const b=()=>{try{return(0,i.h_)(u.D).getOptionalString("app.baseUrl")}catch{return}},H=()=>{const W="http://sample.dev";var Z;const Q=(Z=b())!==null&&Z!==void 0?Z:"/",{pathname:et}=new URL(Q,W);return(0,y.trimEnd)(et,"/")},Y=W=>{let Z=String(W);const Q=H(),et=w(Z),it=Z.startsWith(Q);return!et&&!it&&(Z=Q.concat(Z)),Z},tt=W=>{if(W instanceof Array)return W.map(tt).join(" ").trim();if(typeof W=="object"&&W){var Z;return tt(W==null||(Z=W.props)===null||Z===void 0?void 0:Z.children)}return["string","number"].includes(typeof W)?String(W):""},z=v.forwardRef(({onClick:W,noTrack:Z,...Q},et)=>{const it=P(),mt=(0,S.z)(),ft=I()?Y(Q.to):Q.to,Ot=tt(Q.children)||ft,ct=w(ft),Et=ct&&!!/^https?:/.exec(ft);if(D.test(ft))throw new Error("Link component rejected javascript: URL as a security precaution");const at=G=>{W==null||W(G),Z||mt.captureEvent("click",Ot,{attributes:{to:ft}})};return ct?(0,o.jsxs)(m.Z,{...Et?{target:"_blank",rel:"noopener"}:{},...Q,...Q["aria-label"]?{"aria-label":`${Q["aria-label"]}, Opens in a new window`}:{},ref:et,href:ft,onClick:at,className:E()(it.externalLink,Q.className),children:[Q.children,(0,o.jsx)(c.Z,{component:"span",className:it.visuallyHidden,children:", Opens in a new window"})]}):(0,o.jsx)(m.Z,{...Q,ref:et,component:h.rU,to:ft,onClick:at})})},15929:function(V,T,t){"use strict";t.d(T,{Q:function(){return g}});var o=t(52322),i=t(77277),u=t(2784),S=t(98864);const m=u.forwardRef((d,E)=>(0,o.jsx)(S.rU,{ref:E,...d,color:"initial"})),g=u.forwardRef((d,E)=>(0,o.jsx)(i.Z,{ref:E,component:m,...d})),c=null},78527:function(V,T,t){"use strict";t.d(T,{S:function(){return O}});var o=t(52322),i=t(79692),u=t(28865),S=t(60251),m=t(2784),g=t(9791);const c=(0,i.Z)(v=>({markdown:{"& table":{borderCollapse:"collapse",border:`1px solid ${v.palette.border}`},"& th, & td":{border:`1px solid ${v.palette.border}`,padding:v.spacing(1)},"& td":{wordBreak:"break-word",overflow:"hidden",verticalAlign:"middle",lineHeight:"1",margin:0,padding:v.spacing(3,2,3,2.5),borderBottom:0},"& th":{backgroundColor:v.palette.background.paper},"& tr":{backgroundColor:v.palette.background.paper},"& tr:nth-child(odd)":{backgroundColor:v.palette.background.default},"& a":{color:v.palette.link},"& img":{maxWidth:"100%"}}}),{name:"BackstageMarkdownContent"}),d=(v,A)=>A?typeof A=="string"?v+A:m.Children.toArray(A.props.children).reduce(d,v):v,E=({level:v,children:A})=>{const P=m.Children.toArray(A).reduce(d,"").toLocaleLowerCase("en-US").replace(/\W/g,"-");return m.createElement(`h${v}`,{id:P},A)},y={code:({inline:v,className:A,children:h,...I})=>{const P=String(h).replace(/\n+$/,""),w=/language-(\w+)/.exec(A||"");return!v&&w?(0,o.jsx)(g.O,{language:w[1],text:P}):(0,o.jsx)("code",{className:A,...I,children:h})},h1:E,h2:E,h3:E,h4:E,h5:E,h6:E};function O(v){const{content:A,dialect:h="gfm",linkTarget:I,transformLinkUri:P,transformImageUri:w,className:D}=v,M=c();return(0,o.jsx)(u.D,{remarkPlugins:h==="gfm"?[S.Z]:[],className:`${M.markdown} ${D}`,children:A,components:y,linkTarget:I,transformLinkUri:P,transformImageUri:w})}},55015:function(V,T,t){"use strict";t.d(T,{E:function(){return g}});var o=t(52322),i=t(62774),u=t(67358),S=t(60364),m=t(2784);function g(c){const d=(0,S.Z)(),[E,y]=(0,m.useState)(!1);return(0,m.useEffect)(()=>{const O=setTimeout(()=>y(!0),d.transitions.duration.short);return()=>clearTimeout(O)},[d.transitions.duration.short]),E?(0,o.jsx)(u.Z,{...c,"data-testid":"progress"}):(0,o.jsx)(i.Z,{display:"none"})}},35879:function(V,T,t){"use strict";t.d(T,{H:function(){return z}});var o=t(52322),i=t(62774),u=t(21324),S=t(7089),m=t(30192),g=t(74603),c=t(56939),d=t(12231),E=t(73698),y=t(15459),O=t(42494),v=t(79692),A=t(90436),h=t(2784),I=t(72379);const P=(0,v.Z)(W=>(0,O.Z)({icon:{position:"absolute",right:W.spacing(.5),pointerEvents:"none"}}),{name:"BackstageClosedDropdown"});var D=()=>{const W=P();return(0,o.jsx)(I.Z,{className:W.icon,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,o.jsx)("path",{d:"M7.5 8L6 9.5L12.0703 15.5703L18.1406 9.5L16.6406 8L12.0703 12.5703L7.5 8Z",fill:"#616161"})})};const M=(0,v.Z)(W=>(0,O.Z)({icon:{position:"absolute",right:W.spacing(.5),pointerEvents:"none"}}),{name:"BackstageOpenedDropdown"});var H=()=>{const W=M();return(0,o.jsx)(I.Z,{className:W.icon,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,o.jsx)("path",{d:"M16.5 16L18 14.5L11.9297 8.42969L5.85938 14.5L7.35938 16L11.9297 11.4297L16.5 16Z",fill:"#616161"})})};const Y=(0,y.Z)(W=>(0,O.Z)({root:{"label + &":{marginTop:W.spacing(3)},"&.Mui-focused > div[role=button]":{borderColor:W.palette.primary.main}},input:{borderRadius:W.shape.borderRadius,position:"relative",backgroundColor:W.palette.background.paper,border:"1px solid #ced4da",fontSize:W.typography.body1.fontSize,padding:W.spacing(1.25,3.25,1.25,1.5),transition:W.transitions.create(["border-color","box-shadow"]),fontFamily:"Helvetica Neue","&:focus":{background:W.palette.background.paper,borderRadius:W.shape.borderRadius}}}),{name:"BackstageSelectInputBase"})(g.Z),tt=(0,v.Z)(W=>(0,O.Z)({formControl:{margin:W.spacing(1,0),maxWidth:300},label:{transform:"initial",fontWeight:"bold",fontSize:W.typography.body2.fontSize,fontFamily:W.typography.fontFamily,color:W.palette.text.primary,"&.Mui-focused":{color:W.palette.text.primary}},formLabel:{transform:"initial",fontWeight:"bold",fontSize:W.typography.body2.fontSize,fontFamily:W.typography.fontFamily,color:W.palette.text.primary,"&.Mui-focused":{color:W.palette.text.primary}},chips:{display:"flex",flexWrap:"wrap"},chip:{margin:2},checkbox:{},root:{display:"flex",flexDirection:"column"}}),{name:"BackstageSelect"});function z(W){const{multiple:Z,items:Q,label:et,placeholder:it,selected:mt,onChange:ft,triggerReset:Ot,native:ct=!1,disabled:Et=!1,margin:at}=W,G=tt(),[st,xt]=(0,h.useState)(mt||(Z?[]:"")),[At,Ct]=(0,h.useState)(!1);(0,h.useEffect)(()=>{xt(Z?[]:"")},[Ot,Z]),(0,h.useEffect)(()=>{xt(mt||(Z?[]:""))},[mt,Z]);const ht=k=>{xt(k.target.value),ft(k.target.value)},lt=k=>{if(Et){k.preventDefault();return}Ct(q=>Z&&!(k.target instanceof HTMLElement)?!0:!q)},pt=()=>{Ct(!1)},K=k=>()=>{const q=st.filter(ot=>ot!==k);xt(q),ft(q)};return(0,o.jsx)(i.Z,{className:G.root,children:(0,o.jsxs)(m.Z,{className:G.formControl,children:[(0,o.jsx)(c.Z,{className:G.formLabel,children:et}),(0,o.jsxs)(E.Z,{"aria-label":et,value:st,native:ct,disabled:Et,"data-testid":"select",displayEmpty:!0,multiple:Z,margin:at,onChange:ht,open:At,onOpen:lt,onClose:pt,input:(0,o.jsx)(Y,{}),label:et,renderValue:k=>{var q;return Z&&st.length!==0?(0,o.jsx)(i.Z,{className:G.chips,children:k.map(ot=>{const gt=Q.find(vt=>vt.value===ot);return gt?(0,o.jsx)(S.Z,{label:gt==null?void 0:gt.label,clickable:!0,onDelete:K(ot),className:G.chip},gt==null?void 0:gt.value):!1})}):(0,o.jsx)(A.Z,{children:st.length===0?it||"":(q=Q.find(ot=>ot.value===k))===null||q===void 0?void 0:q.label})},IconComponent:()=>At?(0,o.jsx)(H,{}):(0,o.jsx)(D,{}),MenuProps:{anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},getContentAnchorEl:null},children:[it&&!Z&&(0,o.jsx)(d.Z,{value:[],children:it}),ct?Q&&Q.map(k=>(0,o.jsx)("option",{value:k.value,children:k.label},k.value)):Q&&Q.map(k=>(0,o.jsxs)(d.Z,{value:k.value,children:[Z&&(0,o.jsx)(u.Z,{color:"primary",checked:st.includes(k.value)||!1,className:G.checkbox}),k.label]},k.value))]})]})})}},13788:function(V,T,t){"use strict";t.d(T,{q:function(){return at}});var o=t(52322),i=t(80851),u=t(62774),S=t(77277),m=t(49429),g=t(61837),c=t(86136),d=t(49378),E=t(12231),y=t(50758),O=t(79784),v=t(79692),A=t(90436),h=t(41156),I=t(2784),P=t(77770),w=t(80079);function D(G,st){const At=(0,i.q)().getSystemIcon(G);return At?(0,o.jsx)(At,{...st}):(0,o.jsx)(w.Z,{...st})}function M(G){return D("brokenImage",G)}function b(G){return D("catalog",G)}function H(G){return D("chat",G)}function Y(G){return D("dashboard",G)}function tt(G){return D("docs",G)}function z(G){return D("email",G)}function W(G){return D("github",G)}function Z(G){return D("group",G)}function Q(G){return D("help",G)}function et(G){return D("user",G)}function it(G){return D("warning",G)}var mt=t(98864);const ft=(0,v.Z)({popoverList:{minWidth:260,maxWidth:400},menuItem:{whiteSpace:"normal"}},{name:"BackstageSupportButton"}),Ot=({icon:G})=>{const st=(0,i.q)();var xt;const At=G&&(xt=st.getSystemIcon(G))!==null&&xt!==void 0?xt:Q;return(0,o.jsx)(At,{})},ct=({link:G})=>{var st;return(0,o.jsx)(mt.rU,{to:G.url,children:(st=G.title)!==null&&st!==void 0?st:G.url})},Et=({item:G})=>{var st;return(0,o.jsxs)(E.Z,{children:[(0,o.jsx)(c.Z,{children:(0,o.jsx)(Ot,{icon:G.icon})}),(0,o.jsx)(d.Z,{primary:G.title,secondary:(st=G.links)===null||st===void 0?void 0:st.reduce((xt,At,Ct)=>[...xt,Ct>0&&(0,o.jsx)("br",{},Ct),(0,o.jsx)(ct,{link:At},At.url)],[])})]})};function at(G){const{title:st,items:xt,children:At}=G,{items:Ct}=(0,P.v)(),[ht,lt]=(0,I.useState)(!1),[pt,K]=(0,I.useState)(null),k=ft(),q=(0,h.Z)(vt=>vt.breakpoints.down("sm")),ot=vt=>{K(vt.currentTarget),lt(!0)},gt=()=>{lt(!1)};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(u.Z,{display:"flex",ml:1,children:q?(0,o.jsx)(g.Z,{color:"primary",size:"small",onClick:ot,"data-testid":"support-button","aria-label":"Support",children:(0,o.jsx)(Q,{})}):(0,o.jsx)(S.Z,{"data-testid":"support-button","aria-label":"Support",color:"primary",onClick:ot,startIcon:(0,o.jsx)(Q,{}),children:"Support"})}),(0,o.jsxs)(O.ZP,{"data-testid":"support-button-popover",open:ht,anchorEl:pt,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},onClose:gt,children:[(0,o.jsxs)(y.Z,{className:k.popoverList,autoFocusItem:Boolean(pt),children:[st&&(0,o.jsx)(E.Z,{alignItems:"flex-start",className:k.menuItem,children:(0,o.jsx)(A.Z,{variant:"subtitle1",children:st})}),I.Children.map(At,(vt,Bt)=>(0,o.jsx)(E.Z,{alignItems:"flex-start",className:k.menuItem,children:vt},`child-${Bt}`)),(xt!=null?xt:Ct).map((vt,Bt)=>(0,o.jsx)(Et,{item:vt},`item-${Bt}`))]}),(0,o.jsx)(m.Z,{children:(0,o.jsx)(S.Z,{color:"primary",onClick:gt,"aria-label":"Close",children:"Close"})})]})]})}},34378:function(V,T,t){"use strict";t.d(T,{i:function(){return ht}});var o=t(52322),i=t(67222),u=t(62774),S=t(61837),m=t(15459),g=t(79692),c=t(60364),d=t(90436),E=t(21070),y=t(90324),O=t(98281),v=t(48049),A=t(51209),h=t(33375),I=t(44233),P=t(27604),w=t(36444),D=t(37971),M=t(59709),b=t(17373),H=t(3702),Y=t(93111),tt=t(76635),z=t(2784),W=t(77277),Z=t(35879);const Q=(0,g.Z)(K=>({root:{height:"100%",width:"315px",display:"flex",flexDirection:"column",marginRight:K.spacing(3)},value:{fontWeight:"bold",fontSize:18},header:{display:"flex",alignItems:"center",height:K.spacing(7.5),justifyContent:"space-between",borderBottom:`1px solid ${K.palette.grey[500]}`},filters:{display:"flex",flexDirection:"column","& > *":{marginTop:K.spacing(2)}}}),{name:"BackstageTableFilters"}),et=K=>{var k;const q=Q(),{onChangeFilters:ot}=K,[gt,vt]=(0,z.useState)({...K.selectedFilters}),[Bt,zt]=(0,z.useState)(!1),Ft=()=>{vt({}),zt(Nt=>!Nt)};return(0,z.useEffect)(()=>{ot(gt)},[gt,ot]),(0,o.jsxs)(u.Z,{className:q.root,children:[(0,o.jsxs)(u.Z,{className:q.header,children:[(0,o.jsx)(u.Z,{className:q.value,children:"Filters"}),(0,o.jsx)(W.Z,{color:"primary",onClick:Ft,children:"Clear all"})]}),(0,o.jsx)(u.Z,{className:q.filters,children:((k=K.filters)===null||k===void 0?void 0:k.length)&&K.filters.map(Nt=>(0,o.jsx)(Z.H,{triggerReset:Bt,...Nt.element,selected:gt[Nt.element.label],onChange:Lt=>vt({...gt,[Nt.element.label]:Lt})},Nt.element.label))})]})};var it=t(4614);function mt(K){return(0,o.jsx)("tbody",{"data-testid":"loading-indicator",children:(0,o.jsx)("tr",{children:(0,o.jsx)("td",{colSpan:K.colSpan,children:(0,o.jsx)(u.Z,{sx:{display:"flex",justifyContent:"center",alignItems:"center",width:"100%",minHeight:"15rem"},children:(0,o.jsx)(it.Z,{size:"5rem"})})})})})}const ft={Add:(0,z.forwardRef)((K,k)=>(0,o.jsx)(E.Z,{...K,ref:k})),Check:(0,z.forwardRef)((K,k)=>(0,o.jsx)(O.Z,{...K,ref:k})),Clear:(0,z.forwardRef)((K,k)=>(0,o.jsx)(h.Z,{...K,ref:k})),Delete:(0,z.forwardRef)((K,k)=>(0,o.jsx)(I.Z,{...K,ref:k})),DetailPanel:(0,z.forwardRef)((K,k)=>(0,o.jsx)(A.Z,{...K,ref:k})),Edit:(0,z.forwardRef)((K,k)=>(0,o.jsx)(P.Z,{...K,ref:k})),Export:(0,z.forwardRef)((K,k)=>(0,o.jsx)(H.Z,{...K,ref:k})),Filter:(0,z.forwardRef)((K,k)=>(0,o.jsx)(w.Z,{...K,ref:k})),FirstPage:(0,z.forwardRef)((K,k)=>(0,o.jsx)(D.Z,{...K,ref:k})),LastPage:(0,z.forwardRef)((K,k)=>(0,o.jsx)(M.Z,{...K,ref:k})),NextPage:(0,z.forwardRef)((K,k)=>(0,o.jsx)(A.Z,{...K,ref:k})),PreviousPage:(0,z.forwardRef)((K,k)=>(0,o.jsx)(v.Z,{...K,ref:k})),ResetSearch:(0,z.forwardRef)((K,k)=>(0,o.jsx)(h.Z,{...K,ref:k})),Search:(0,z.forwardRef)((K,k)=>(0,o.jsx)(w.Z,{...K,ref:k})),SortArrow:(0,z.forwardRef)((K,k)=>(0,o.jsx)(y.Z,{...K,ref:k})),ThirdStateCheck:(0,z.forwardRef)((K,k)=>(0,o.jsx)(b.Z,{...K,ref:k})),ViewColumn:(0,z.forwardRef)((K,k)=>(0,o.jsx)(Y.Z,{...K,ref:k}))};function Ot(K,k){const q=k.split(".");let ot=K[q[0]];for(let gt=1;gt<q.length;++gt){if(ot===void 0)return ot;const vt=q[gt];ot=ot[vt]}return ot}const ct=(0,m.Z)(K=>({header:{padding:K.spacing(1,2,1,2.5),borderTop:`1px solid ${K.palette.grey.A100}`,borderBottom:`1px solid ${K.palette.grey.A100}`,fontWeight:K.typography.fontWeightBold,position:"static",wordBreak:"normal"}}),{name:"BackstageTableHeader"})(i.W$),Et=(0,m.Z)(K=>({root:{padding:K.spacing(3,0,2.5,2.5)},title:{"& > h6":{fontWeight:K.typography.fontWeightBold}},searchField:{paddingRight:K.spacing(2)}}),{name:"BackstageTableToolbar"})(i.UW),at=(0,g.Z)(K=>({root:{display:"flex",alignItems:"center",justifyContent:"space-between"},title:{fontWeight:K.typography.fontWeightBold,fontSize:18,whiteSpace:"nowrap"}}),{name:"BackstageTableFiltersContainer"}),G=(0,g.Z)(()=>({root:{display:"flex",alignItems:"start"}}),{name:"BackstageTable"});function st(K,k){return K.map(q=>{var ot;const gt=(ot=q.headerStyle)!==null&&ot!==void 0?ot:{};let vt=q.cellStyle||{};if(q.highlight)if(gt.color=k.palette.textContrast,typeof vt=="object")vt.fontWeight=k.typography.fontWeightBold;else{const Bt=vt;vt=(zt,Ft,Nt)=>({...Bt(zt,Ft,Nt),fontWeight:k.typography.fontWeightBold})}return{...q,headerStyle:gt,cellStyle:vt}})}function xt(K,k){return(0,tt.transform)(K,(q,ot,gt)=>{(0,tt.isEqual)(ot,k[gt])||(q[gt]=ot)})}const At={search:"",filtersOpen:!1,filters:{}};function Ct(K){const{toolbarRef:k,setSearch:q,hasFilters:ot,selectedFiltersLength:gt,toggleFilters:vt}=K,Bt=at(),zt=(0,z.useCallback)(Ft=>{K.onSearchChanged(Ft),q(Ft)},[K,q]);return ot?(0,o.jsxs)(u.Z,{className:Bt.root,children:[(0,o.jsxs)(u.Z,{className:Bt.root,children:[(0,o.jsx)(S.Z,{onClick:vt,"aria-label":"filter list",children:(0,o.jsx)(w.Z,{})}),(0,o.jsxs)(d.Z,{className:Bt.title,children:["Filters (",gt,")"]})]}),(0,o.jsx)(Et,{...K,ref:k,onSearchChanged:zt})]}):(0,o.jsx)(Et,{...K,ref:k,onSearchChanged:zt})}function ht(K){const{data:k,columns:q,emptyContent:ot,options:gt,title:vt,subtitle:Bt,localization:zt,filters:Ft,initialState:Nt,onStateChange:Lt,components:Yt,isLoading:Te,...pe}=K,le=G(),_t=(0,c.Z)(),jt={...At,...Nt},[Vt,Oe]=(0,z.useState)(jt.filtersOpen),ke=(0,z.useCallback)(()=>Oe(we=>!we),[Oe]),[xe,tn]=(0,z.useState)(jt.filters),[Ve,Ye]=(0,z.useState)(jt.search);(0,z.useEffect)(()=>{if(Lt){const we=xt({search:Ve,filtersOpen:Vt,filters:xe},At);Lt(we)}},[Ve,Vt,xe,Lt]);const se=(0,z.useCallback)(we=>{var $e;return($e=q.find(Ne=>Ne.title===we))===null||$e===void 0?void 0:$e.field},[q]),sn=(0,z.useMemo)(()=>{if(typeof k=="function"||!xe)return k;const we=Object.values(xe);return k&&we.flat().length?k.filter(Ne=>!!Object.entries(xe).filter(([,U])=>!!U.length).every(([U,f])=>{const L=Ot(Ne,se(U));return Array.isArray(L)&&Array.isArray(f)?L.some(N=>f.includes(N)):Array.isArray(L)?L.includes(f):Array.isArray(f)?f.includes(L):L===f})):k},[k,xe,se]),Re=Object.values(xe).flat().length,en=!!(Ft!=null&&Ft.length),an=(0,z.useCallback)(we=>(0,o.jsx)(Ct,{setSearch:Ye,hasFilters:en,selectedFiltersLength:Re,toggleFilters:ke,...we}),[ke,en,Re,Ye]),ie=typeof k!="function"&&k.length===0,Ze=q.length,ze=(0,z.useMemo)(()=>lt({hasNoRows:ie,emptyContent:ot,columnCount:Ze,loading:Te}),[ie,ot,Ze,Te]);return(0,o.jsxs)(u.Z,{className:le.root,children:[Vt&&k&&typeof k!="function"&&(Ft==null?void 0:Ft.length)&&(0,o.jsx)(et,{filters:pt(Ft,k,q),selectedFilters:xe,onChangeFilters:tn}),(0,o.jsx)(i.ZP,{components:{Header:ct,Body:ze,Toolbar:an,...Yt},options:{headerStyle:{textTransform:"uppercase"},...gt},columns:st(q,_t),icons:ft,title:(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(d.Z,{variant:"h5",component:"h2",children:vt}),Bt&&(0,o.jsx)(d.Z,{color:"textSecondary",variant:"body1",children:Bt})]}),data:sn,style:{width:"100%"},localization:{toolbar:{searchPlaceholder:"Filter",searchTooltip:"Filter"},...zt},...pe})]})}ht.icons=Object.freeze(ft);function lt({columnCount:K,emptyContent:k,hasNoRows:q,loading:ot}){return gt=>ot?(0,o.jsx)(mt,{colSpan:K}):k&&q?(0,o.jsx)("tbody",{children:(0,o.jsx)("tr",{children:(0,o.jsx)("td",{colSpan:K,children:k})})}):(0,o.jsx)(i.os,{...gt})}function pt(K,k,q){const ot=vt=>{const Bt=new Set,zt=Ft=>{Ft!=null&&Bt.add(Ft)};return k&&k.forEach(Ft=>{var Nt;const Lt=Ot(Ft,(Nt=q.find(Yt=>Yt.title===vt))===null||Nt===void 0?void 0:Nt.field);Array.isArray(Lt)?Lt.forEach(zt):zt(Lt)}),Bt},gt=vt=>({placeholder:"All results",label:vt.column,multiple:vt.type==="multiple-select",items:[...ot(vt.column)].sort().map(Bt=>({label:Bt,value:Bt}))});return K.map(vt=>({type:vt.type,element:gt(vt)}))}},538:function(V,T,t){"use strict";t.d(T,{G:function(){return b}});var o=t(52322),i=t(41128),u=t(79692),S=t(27616),m=t(8284),g=t(70660),c=t(60905),d=t(90436),E=t(91750),y=t(38016),O=t(2784),v=t(78527);const A=(H,Y)=>(Y.palette.type==="light"?i._j:i.$n)(Y.palette[H].light,.6),h=(H,Y)=>(Y.palette.type==="light"?i.$n:i._j)(Y.palette[H].light,.9),I=(0,u.Z)(H=>({root:{marginRight:H.spacing(1),fill:({severity:Y})=>A(Y,H)}})),P=({severity:H})=>{const Y=I({severity:H});return(0,o.jsx)(E.Z,{classes:Y})},w=({severity:H})=>{const Y=I({severity:H});return(0,o.jsx)(y.Z,{classes:Y})},D=(0,u.Z)(H=>({panel:{backgroundColor:({severity:Y})=>h(Y,H),color:({severity:Y})=>A(Y,H),verticalAlign:"middle"},summary:{display:"flex",flexDirection:"row"},summaryText:{color:({severity:Y})=>A(Y,H),fontWeight:H.typography.fontWeightBold},markdownContent:{"& p":{display:"inline"}},message:{width:"100%",display:"block",color:({severity:Y})=>A(Y,H),backgroundColor:({severity:Y})=>h(Y,H)},details:{width:"100%",display:"block",color:H.palette.textContrast,backgroundColor:H.palette.background.default,border:`1px solid ${H.palette.border}`,padding:H.spacing(2),fontFamily:"sans-serif"}}),{name:"BackstageWarningPanel"}),M=H=>H.charAt(0).toLocaleUpperCase("en-US")+H.slice(1);function b(H){const{severity:Y="warning",title:tt,titleFormat:z,message:W,children:Z,defaultExpanded:Q}=H,et=D({severity:Y}),it=M(Y)+(tt?`: ${tt}`:"");return(0,o.jsxs)(S.Z,{defaultExpanded:Q!=null?Q:!1,className:et.panel,role:"alert",children:[(0,o.jsxs)(m.Z,{expandIcon:(0,o.jsx)(w,{severity:Y}),className:et.summary,children:[(0,o.jsx)(P,{severity:Y}),(0,o.jsx)(d.Z,{className:et.summaryText,variant:"subtitle1",children:z==="markdown"?(0,o.jsx)(v.S,{content:it,className:et.markdownContent}):it})]}),(W||Z)&&(0,o.jsx)(g.Z,{children:(0,o.jsxs)(c.Z,{container:!0,children:[W&&(0,o.jsx)(c.Z,{item:!0,xs:12,children:(0,o.jsx)(d.Z,{className:et.message,variant:"body1",children:W})}),Z&&(0,o.jsx)(c.Z,{item:!0,xs:12,className:et.details,children:Z})]})})]})}},77770:function(V,T,t){"use strict";t.d(T,{v:function(){return S}});var o=t(44394),i=t(6542);const u={url:"https://github.com/backstage/backstage/issues",items:[{title:"Support Not Configured",icon:"warning",links:[{title:"Add `app.support` config key",url:"https://github.com/backstage/backstage/blob/master/app-config.yaml"}]}]};function S(){const g=(0,o.I_)().get(i.D),c=g==null?void 0:g.getOptionalConfig("app.support");return c?{url:c.getString("url"),items:c.getConfigArray("items").flatMap(d=>{var E;return{title:d.getString("title"),icon:d.getOptionalString("icon"),links:((E=d.getOptionalConfigArray("links"))!==null&&E!==void 0?E:[]).flatMap(y=>({url:y.getString("url"),title:y.getString("title")}))}})}:u}},42398:function(V,T,t){"use strict";t.d(T,{V:function(){return c}});var o=t(52322),i=t(79692),u=t(12524),S=t.n(u),m=t(2784);const g=(0,i.Z)(d=>({root:{gridArea:"pageContent",minWidth:0,paddingTop:d.spacing(3),paddingBottom:d.spacing(3),paddingLeft:d.spacing(2),paddingRight:d.spacing(2),[d.breakpoints.up("sm")]:{paddingLeft:d.spacing(3),paddingRight:d.spacing(3)}},stretch:{display:"flex",flexDirection:"column",flexGrow:1},noPadding:{padding:0}}),{name:"BackstageContent"});function c(d){const{className:E,stretch:y,noPadding:O,children:v,...A}=d,h=g();return(0,o.jsx)("article",{...A,className:S()(h.root,E,{[h.stretch]:y,[h.noPadding]:O}),children:v})}},30706:function(V,T,t){"use strict";t.d(T,{y:function(){return E}});var o=t(52322),i=t(62774),u=t(79692),S=t(90436),m=t(2784),g=t(18671);const c=y=>(0,u.Z)(O=>({container:{width:"100%",display:"flex",flexDirection:"row",flexWrap:"wrap",justifyContent:"flex-end",alignItems:"center",marginBottom:O.spacing(2),textAlign:y.textAlign},leftItemsBox:{flex:"1 1 auto",minWidth:0,overflow:"visible"},rightItemsBox:{flex:"0 1 auto",display:"flex",flexDirection:"row",flexWrap:"wrap",alignItems:"center",marginLeft:O.spacing(1),minWidth:0,overflow:"visible"},description:{},title:{display:"inline-flex",marginBottom:0}}),{name:"BackstageContentHeader"}),d=({title:y="Unknown page",className:O})=>(0,o.jsx)(S.Z,{variant:"h4",component:"h2",className:O,"data-testid":"header-title",children:y});function E(y){const{description:O,title:v,titleComponent:A=void 0,children:h,textAlign:I="left"}=y,P=c({textAlign:I})(),w=A||(0,o.jsx)(d,{title:v,className:P.title});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(g.q,{title:v}),(0,o.jsxs)(i.Z,{className:P.container,children:[(0,o.jsxs)(i.Z,{className:P.leftItemsBox,children:[w,O&&(0,o.jsx)(S.Z,{className:P.description,variant:"body2",children:O})]}),(0,o.jsx)(i.Z,{className:P.rightItemsBox,children:h})]})]})}},87435:function(V,T,t){"use strict";t.d(T,{m:function(){return A}});var o=t(52322),i=t(60905),u=t(79692),S=t(90436),m=t(2784),g=t(73557),c=t(98864),d=t(77770),E=t.p+"static/mic-drop.fe3ef4d0..svg";const y=(0,u.Z)(h=>({micDrop:{maxWidth:"60%",bottom:h.spacing(2),right:h.spacing(2),[h.breakpoints.down("xs")]:{maxWidth:"96%",bottom:"unset",right:"unset",margin:h.spacing(10,"auto",4)}}}),{name:"BackstageErrorPageMicDrop"}),O=()=>{const h=y();return(0,o.jsx)("img",{src:E,className:h.micDrop,alt:"Girl dropping mic from her hands"})},v=(0,u.Z)(h=>({container:{padding:h.spacing(8),[h.breakpoints.down("xs")]:{padding:h.spacing(2)}},title:{paddingBottom:h.spacing(5),[h.breakpoints.down("xs")]:{paddingBottom:h.spacing(4),fontSize:h.typography.h3.fontSize}},subtitle:{color:h.palette.textSubtle}}),{name:"BackstageErrorPage"});function A(h){const{status:I,statusMessage:P,additionalInfo:w,supportUrl:D}=h,M=v(),b=(0,g.s0)(),H=(0,d.v)();return(0,o.jsxs)(i.Z,{container:!0,spacing:0,className:M.container,children:[(0,o.jsxs)(i.Z,{item:!0,xs:12,sm:8,md:4,children:[(0,o.jsxs)(S.Z,{"data-testid":"error",variant:"body1",className:M.subtitle,children:["ERROR ",I,": ",P]}),(0,o.jsx)(S.Z,{variant:"body1",className:M.subtitle,children:w}),(0,o.jsx)(S.Z,{variant:"h2",className:M.title,children:"Looks like someone dropped the mic!"}),(0,o.jsxs)(S.Z,{variant:"h6",children:[(0,o.jsx)(c.rU,{to:"#","data-testid":"go-back-link",onClick:()=>b(-1),children:"Go back"}),"... or please"," ",(0,o.jsx)(c.rU,{to:D||H.url,children:"contact support"})," if you think this is a bug."]})]}),(0,o.jsx)(O,{})]})}},48037:function(V,T,t){"use strict";t.d(T,{h:function(){return W}});var o=t(52322),i=t(44394),u=t(6542),S=t(62774),m=t(60905),g=t(79692),c=t(80030),d=t(90436),E=t(2784),y=t(18671),O=t(98864),v=t(16173),A=t(11776),h=t(38402),I=t(79784),P=t(15459);const w=(0,P.Z)({root:{textDecoration:"underline",cursor:"pointer"}},{name:"BackstageBreadcrumbsClickableText"})(d.Z),D=(0,P.Z)({root:{textDecoration:"underline",color:"inherit"}},{name:"BackstageBreadcrumbsStyledBox"})(S.Z);function M(Z){const{children:Q,...et}=Z,[it,mt]=E.useState(null),ft=E.Children.toArray(Q),[Ot,ct,...Et]=ft,at=Et.length?Et.pop():ft[ft.length-1],G=ft.length>3,st=Ct=>{mt(Ct.currentTarget)},xt=()=>{mt(null)},At=Boolean(it);return(0,o.jsxs)(E.Fragment,{children:[(0,o.jsxs)(v.Z,{"aria-label":"breadcrumb",...et,children:[ft.length>1&&(0,o.jsx)(D,{clone:!0,children:Ot}),ft.length>2&&(0,o.jsx)(D,{clone:!0,children:ct}),G&&(0,o.jsx)(w,{onClick:st,children:"..."}),(0,o.jsx)(S.Z,{style:{fontStyle:"italic"},children:at})]}),(0,o.jsx)(I.ZP,{open:At,anchorEl:it,onClose:xt,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,o.jsx)(A.Z,{children:Et.map((Ct,ht)=>(0,o.jsx)(h.Z,{button:!0,children:(0,o.jsx)(D,{clone:!0,children:Ct})},ht))})})]})}var b=t(44409);const H=(0,g.Z)(Z=>({header:{gridArea:"pageHeader",padding:Z.spacing(3),width:"100%",boxShadow:Z.shadows[4],position:"relative",zIndex:100,display:"flex",flexDirection:"row",alignItems:"center",backgroundImage:Z.page.backgroundImage,backgroundPosition:"center",backgroundSize:"cover",[Z.breakpoints.down("sm")]:{flexWrap:"wrap"}},leftItemsBox:{maxWidth:"100%",flexGrow:1},rightItemsBox:{width:"auto",alignItems:"center"},title:{color:Z.page.fontColor,wordBreak:"break-word",fontSize:Z.typography.h3.fontSize,marginBottom:0},subtitle:{color:Z.page.fontColor,opacity:.8,display:"inline-block",marginTop:Z.spacing(1),maxWidth:"75ch"},type:{textTransform:"uppercase",fontSize:11,opacity:.8,marginBottom:Z.spacing(1),color:Z.page.fontColor},breadcrumb:{color:Z.page.fontColor},breadcrumbType:{fontSize:"inherit",opacity:.7,marginRight:-Z.spacing(.3),marginBottom:Z.spacing(.3)},breadcrumbTitle:{fontSize:"inherit",marginLeft:-Z.spacing(.3),marginBottom:Z.spacing(.3)}}),{name:"BackstageHeader"}),Y=({type:Z,typeLink:Q,classes:et,pageTitle:it})=>Z?Q?(0,o.jsxs)(M,{className:et.breadcrumb,children:[(0,o.jsx)(O.rU,{to:Q,children:Z}),(0,o.jsx)(d.Z,{children:it})]}):(0,o.jsx)(d.Z,{className:et.type,children:Z}):null,tt=({pageTitle:Z,classes:Q,tooltip:et})=>{const{contentRef:it}=(0,b.r)(),mt=(0,o.jsx)(d.Z,{ref:it,tabIndex:-1,className:Q.title,variant:"h1",children:Z});return et?(0,o.jsx)(c.ZP,{title:et,placement:"top-start",children:mt}):mt},z=({classes:Z,subtitle:Q})=>Q?typeof Q!="string"?(0,o.jsx)(o.Fragment,{children:Q}):(0,o.jsx)(d.Z,{className:Z.subtitle,variant:"subtitle2",component:"span",children:Q}):null;function W(Z){const{children:Q,pageTitleOverride:et,style:it,subtitle:mt,title:ft,tooltip:Ot,type:ct,typeLink:Et}=Z,at=H(),st=(0,i.h_)(u.D).getOptionalString("app.title")||"Backstage",xt=et||ft,At=ft||et,Ct=`${xt} | %s | ${st}`,ht=`${xt} | ${st}`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(y.q,{titleTemplate:Ct,defaultTitle:ht}),(0,o.jsxs)("header",{style:it,className:at.header,children:[(0,o.jsxs)(S.Z,{className:at.leftItemsBox,children:[(0,o.jsx)(Y,{classes:at,type:ct,typeLink:Et,pageTitle:At}),(0,o.jsx)(tt,{classes:at,pageTitle:At,tooltip:Ot}),(0,o.jsx)(z,{classes:at,subtitle:mt})]}),(0,o.jsx)(m.Z,{container:!0,className:at.rightItemsBox,spacing:4,children:Q})]})]})}},67880:function(V,T,t){"use strict";t.d(T,{T:function(){return g}});var o=t(52322),i=t(2784),u=t(79692),S=t(41547);const m=(0,u.Z)(c=>({root:{display:"grid",gridTemplateAreas:"'pageHeader pageHeader pageHeader' 'pageSubheader pageSubheader pageSubheader' 'pageNav pageContent pageSidebar'",gridTemplateRows:"max-content auto 1fr",gridTemplateColumns:"auto 1fr auto",overflowY:"auto",height:"100vh",[c.breakpoints.down("xs")]:{height:"100%"},"@media print":{display:"block",height:"auto",overflowY:"inherit"}}}),{name:"BackstagePage"});function g(c){const{themeId:d,children:E}=c,y=m();return(0,o.jsx)(S.Z,{theme:O=>({...O,page:O.getPageTheme({themeId:d})}),children:(0,o.jsx)("main",{className:y.root,children:E})})}},32166:function(V,T,t){"use strict";t.d(T,{g:function(){return m}});var o=t(52322),i=t(2784),u=t(48037),S=t(67880);function m(g){const{themeId:c,children:d,...E}=g;return(0,o.jsxs)(S.T,{themeId:c,children:[(0,o.jsx)(u.h,{...E}),d]})}},44409:function(V,T,t){"use strict";t.d(T,{t:function(){return v},r:function(){return A}});var o=t(52322),i=t(62774),u=t(79692),S=t(41156),m=t(2784),g=t(76921),c;(function(h){h.SIDEBAR_PIN_STATE="sidebarPinState"})(c||(c={}));const d={getSidebarPinState(){let h;try{h=JSON.parse(window.localStorage.getItem("sidebarPinState")||"true")}catch{return!0}return!!h},setSidebarPinState(h){return window.localStorage.setItem("sidebarPinState",JSON.stringify(h))}};var E=t(93539);const y=(0,u.Z)(h=>({root:{width:"100%",transition:"padding-left 0.1s ease-out",isolation:"isolate",[h.breakpoints.up("sm")]:{paddingLeft:I=>I.isPinned?I.sidebarConfig.drawerWidthOpen:I.sidebarConfig.drawerWidthClosed},[h.breakpoints.down("xs")]:{paddingBottom:I=>I.sidebarConfig.mobileSidebarHeight},"@media print":{padding:"0px !important"}},content:{zIndex:0,isolation:"isolate","&:focus":{outline:0}}}),{name:"BackstageSidebarPage"}),O=(0,m.createContext)({content:{contentRef:void 0}});function v(h){const[I,P]=(0,m.useState)(()=>d.getSidebarPinState()),{sidebarConfig:w}=(0,m.useContext)(g.kG),D=(0,m.useRef)(null),M=(0,m.useMemo)(()=>({content:{contentRef:D}}),[D]);(0,m.useEffect)(()=>{d.setSidebarPinState(I)},[I]);const b=(0,S.Z)(tt=>tt.breakpoints.down("xs"),{noSsr:!0}),H=()=>P(!I),Y=y({isPinned:I,sidebarConfig:w});return(0,o.jsx)(E.lE,{value:{isPinned:I,toggleSidebarPinState:H,isMobile:b},children:(0,o.jsx)(O.Provider,{value:M,children:(0,o.jsx)(i.Z,{className:Y.root,children:h.children})})})}function A(){const{content:h}=(0,m.useContext)(O);return{focusContent:(0,m.useCallback)(()=>{var P,w;h==null||(w=h.contentRef)===null||w===void 0||(P=w.current)===null||P===void 0||P.focus()},[h]),contentRef:h==null?void 0:h.contentRef}}},93539:function(V,T,t){"use strict";t.d(T,{Pf:function(){return E},lE:function(){return d}});var o=t(52322),i=t(29651),u=t(68993),S=t(2784);const m={isPinned:!0,toggleSidebarPinState:()=>{},isMobile:!1},g=(0,S.createContext)(m),c=(0,i.CT)("sidebar-pin-state-context");function d(y){const{children:O,value:v}=y;return(0,o.jsx)(g.Provider,{value:v,children:(0,o.jsx)(c.Provider,{value:(0,u.E)({1:v}),children:O})})}const E=()=>{const y=(0,S.useContext)(c),O=(0,S.useContext)(g);if(y===void 0)return O||m;const v=y.atVersion(1);if(v===void 0)throw new Error("No context found for version 1.");return v}},76921:function(V,T,t){"use strict";t.d(T,{$E:function(){return g},Ag:function(){return O},kG:function(){return y},po:function(){return m},rW:function(){return d}});var o=t(2784);const i=72,u=24,S=18,m={drawerWidthClosed:i,drawerWidthOpen:224,defaultOpenDelayMs:100,defaultCloseDelayMs:0,defaultFadeDuration:200,logoHeight:32,iconContainerWidth:i,iconSize:i-u*2,iconPadding:u,selectedIndicatorWidth:3,userBadgePadding:S,userBadgeDiameter:i-S*2,mobileSidebarHeight:56},g=v=>({...m,...v,iconContainerWidth:m.drawerWidthClosed,iconSize:m.drawerWidthClosed-m.iconPadding*2,userBadgeDiameter:m.drawerWidthClosed-m.userBadgePadding*2}),c={drawerWidthClosed:0,drawerWidthOpen:202,defaultOpenDelayMs:m.defaultOpenDelayMs+200},d=v=>({...c,...v}),E="@backstage/core/sidebar-intro-dismissed",y=(0,o.createContext)({sidebarConfig:m,submenuConfig:c}),O=(0,o.createContext)({isHoveredOn:!1,setIsHoveredOn:()=>{}})},72388:function(V,T,t){"use strict";t.d(T,{Os:function(){return g},fC:function(){return c}});var o=t(52322),i=t(29651),u=t(68993),S=t(2784);const m=(0,i.CT)("analytics-context"),g=()=>{const E=(0,S.useContext)(m);if(E===void 0)return{routeRef:"unknown",pluginId:"root",extension:"App"};const y=E.atVersion(1);if(y===void 0)throw new Error("No context found for version 1.");return y},c=E=>{const{attributes:y,children:O}=E,A={...g(),...y},h=(0,u.E)({1:A});return(0,o.jsx)(m.Provider,{value:h,children:O})};function d(E,y){const O=v=>_jsx(c,{attributes:y,children:_jsx(E,{...v})});return O.displayName=`WithAnalyticsContext(${E.displayName||E.name||"Component"})`,O}},7355:function(V,T,t){"use strict";t.d(T,{f:function(){return m},h:function(){return S}});var o=t(87612),i=t(96087);const u=(0,i.u)("core-plugin-api:analytics-tracker-events",()=>({mostRecentGatheredNavigation:void 0,mostRecentRoutableExtensionRender:void 0,beforeUnloadRegistered:!1})),S="_ROUTABLE-EXTENSION-RENDERED";class m{setContext(c){this.context=c}captureEvent(c,d,{value:E,attributes:y}={}){const{_routeNodeType:O,...v}=this.context;if(c===S){u.mostRecentGatheredNavigation&&(u.mostRecentRoutableExtensionRender={context:{...v,extension:"App"}});return}if(u.mostRecentGatheredNavigation){try{this.analyticsApi.captureEvent({...u.mostRecentGatheredNavigation,...u.mostRecentRoutableExtensionRender})}catch(A){console.warn("Error during analytics event capture. %o",A)}u.mostRecentGatheredNavigation=void 0,u.mostRecentRoutableExtensionRender=void 0}if(c==="navigate"&&O==="gathered"&&v.pluginId==="root"){u.mostRecentGatheredNavigation={action:c,subject:d,value:E,attributes:y,context:v};return}try{this.analyticsApi.captureEvent({action:c,subject:d,value:E,attributes:y,context:v})}catch(A){console.warn("Error during analytics event capture. %o",A)}}constructor(c,d={routeRef:"unknown",pluginId:"root",extension:"App"}){(0,o._)(this,"analyticsApi",void 0),(0,o._)(this,"context",void 0),this.analyticsApi=c,this.context=d,u.beforeUnloadRegistered||(addEventListener("beforeunload",()=>{u.mostRecentGatheredNavigation&&(this.analyticsApi.captureEvent({...u.mostRecentGatheredNavigation,...u.mostRecentRoutableExtensionRender}),u.mostRecentGatheredNavigation=void 0,u.mostRecentRoutableExtensionRender=void 0)},{once:!0,passive:!0}),u.beforeUnloadRegistered=!0)}}},62369:function(V,T,t){"use strict";t.d(T,{z:function(){return c}});var o=t(72388),i=t(44394),u=t(86386),S=t(2784),m=t(7355);function g(){try{return(0,i.h_)(u.v)}catch{return{captureEvent:()=>{}}}}function c(){const d=(0,S.useRef)(null),E=(0,o.Os)(),y=g();function O(){return d.current===null&&(d.current=new m.f(y)),d.current}const v=O();return v.setContext(E),v}},78847:function(V,T,t){"use strict";t.d(T,{$:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.alert"})},86386:function(V,T,t){"use strict";t.d(T,{v:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.analytics"})},6542:function(V,T,t){"use strict";t.d(T,{D:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.config"})},96727:function(V,T,t){"use strict";t.d(T,{N:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.discovery"})},58513:function(V,T,t){"use strict";t.d(T,{V:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.error"})},82723:function(V,T,t){"use strict";t.d(T,{C:function(){return i},W:function(){return u}});var o=t(95965),i;(function(S){S[S.None=0]="None",S[S.Active=1]="Active"})(i||(i={}));const u=(0,o.T)({id:"core.featureflags"})},85094:function(V,T,t){"use strict";t.d(T,{g:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.fetch"})},77186:function(V,T,t){"use strict";t.d(T,{$:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.identity"})},96253:function(V,T,t){"use strict";t.d(T,{o:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"core.translation"})},95965:function(V,T,t){"use strict";t.d(T,{T:function(){return u}});var o=t(87612);class i{get id(){return this.config.id}get T(){throw new Error(`tried to read ApiRef.T of ${this}`)}toString(){return`apiRef{${this.config.id}}`}constructor(m){if((0,o._)(this,"config",void 0),this.config=m,!m.id.split(".").flatMap(c=>c.split("-")).every(c=>c.match(/^[a-z][a-z0-9]*$/)))throw new Error(`API id must only contain period separated lowercase alphanum tokens with dashes, got '${m.id}'`)}}function u(S){return new i(S)}},42380:function(V,T,t){"use strict";t.d(T,{n:function(){return o}});function o(i,u){return"id"in i?{api:i,deps:{},factory:()=>u}:i}},44394:function(V,T,t){"use strict";t.d(T,{I_:function(){return m},h_:function(){return g}});var o=t(52322),i=t(2784),u=t(29651),S=t(50029);function m(){const d=(0,u.Vt)("api-context");if(!d)throw new S.nj("API context is not available");const E=d.atVersion(1);if(!E)throw new S.nj("ApiContext v1 not available");return E}function g(d){const y=m().get(d);if(!y)throw new S.nj(`No implementation available for ${d}`);return y}function c(d){return function(y){const O=A=>{const h=m(),I={};for(const P in d)if(d.hasOwnProperty(P)){const w=d[P],D=h.get(w);if(!D)throw new NotImplementedError(`No implementation available for ${w}`);I[P]=D}return _jsx(y,{...A,...I})},v=y.displayName||y.name||"Component";return O.displayName=`withApis(${v})`,O}}},80851:function(V,T,t){"use strict";t.d(T,{q:function(){return i}});var o=t(29651);const i=()=>{const u=(0,o.Vt)("app-context");if(!u)throw new Error("App context is not available");const S=u.atVersion(1);if(!S)throw new Error("AppContext v1 not available");return S}},62584:function(V,T,t){"use strict";t.d(T,{I:function(){return m},R:function(){return S}});var o=t(96087);const i=(0,o.u)("component-data-store",()=>new WeakMap),u="__backstage_data";function S(g,c,d){const E=g;var y;let O=(y=E[u])!==null&&y!==void 0?y:i.get(g);if(O||(O={map:new Map},Object.defineProperty(E,u,{enumerable:!1,configurable:!0,writable:!1,value:O}),i.set(g,O)),O.map.has(c)){const v=g.displayName||g.name;throw new Error(`Attempted to attach duplicate data "${c}" to component "${v}"`)}O.map.set(c,d)}function m(g,c){if(!g)return;const d=g.type;if(!d)return;var E;const y=(E=d[u])!==null&&E!==void 0?E:i.get(d);if(y)return y.map.get(c)}},82963:function(V,T,t){"use strict";t.d(T,{CO:function(){return v},YO:function(){return A},P4:function(){return O}});var o=t(52322),i=t(2784),u=t(62369),S=t(72388),m=t(80851),g=t(37321),c=t(62584),d=t(87612);class E extends i.Component{static getDerivedStateFromError(I){return{error:I}}render(){const{error:I}=this.state,{app:P,plugin:w}=this.props,{ErrorBoundaryFallback:D}=P.getComponents();return I?(0,o.jsx)(D,{error:I,resetError:this.handleErrorReset,plugin:w}):this.props.children}constructor(...I){super(...I),(0,d._)(this,"state",{error:void 0}),(0,d._)(this,"handleErrorReset",()=>{this.setState({error:void 0})})}}var y=t(7355);function O(h){const{component:I,mountPoint:P,name:w}=h;return A({component:{lazy:()=>I().then(D=>{const M=H=>{const Y=(0,u.z)();try{(0,g.t)(P)}catch(tt){if(typeof tt=="object"&&tt!==null){const{message:z}=tt;if(typeof z=="string"&&z.startsWith("No path for "))throw new Error(`Routable extension component with mount point ${P} was not discovered in the app element tree. Routable extension components may not be rendered by other components and must be directly available as an element within the App provider component.`)}throw tt}return(0,i.useEffect)(()=>{Y.captureEvent(y.h,"")},[Y]),(0,o.jsx)(D,{...H})},b=w||D.displayName||D.name||"LazyComponent";return M.displayName=`RoutableExtension(${b})`,M},D=>b=>{const H=(0,m.q)(),{BootErrorPage:Y}=H.getComponents();return(0,o.jsx)(Y,{step:"load-chunk",error:D})})},data:{"core.mountPoint":P},name:w})}function v(h){const{component:I,name:P}=h;return A({component:I,name:P})}function A(h){const{data:I={},name:P}=h;P||console.warn("Declaring extensions without name is DEPRECATED. Make sure that all usages of createReactExtension, createComponentExtension and createRoutableExtension provide a name.");let w;if("lazy"in h.component){const M=h.component.lazy;w=(0,i.lazy)(()=>M().then(b=>({default:b})))}else w=h.component.sync;const D=P||w.displayName||w.name||"Component";return{expose(M){const b=H=>{const Y=(0,m.q)(),{Progress:tt}=Y.getComponents(),z=I==null?void 0:I["core.mountPoint"];return(0,o.jsx)(i.Suspense,{fallback:(0,o.jsx)(tt,{}),children:(0,o.jsx)(E,{app:Y,plugin:M,children:(0,o.jsx)(S.fC,{attributes:{pluginId:M.getId(),...P&&{extension:P},...z&&{routeRef:z.id}},children:(0,o.jsx)(w,{...H})})})})};(0,c.R)(b,"core.plugin",M),(0,c.R)(b,"core.extensionName",P);for(const[H,Y]of Object.entries(I))(0,c.R)(b,H,Y);return b.displayName=`Extension(${D})`,b}}}},2532:function(V,T,t){"use strict";t.d(T,{v:function(){return d}});var o=t(87612),i=t(2784),u=t(62584),S=t(44394),m=t(82723);function g(E,y,O,v){return i.Children.toArray(E).flatMap(A=>{if(!(0,i.isValidElement)(A))return[];if(A.type===i.Fragment)return g(A.props.children,y,O,v);if((0,u.I)(A,"core.featureFlagged")){const h=A.props;return("with"in h?y.isActive(h.with):!y.isActive(h.without))?g(A.props.children,y,O,v):[]}if(O===void 0||O(A))return[A];if(v)throw new Error(v);return g(A.props.children,y,O,v)})}class c{selectByComponentData(y){const O=g(this.node,this.featureFlagsApi,v=>(0,u.I)(v,y.key)!==void 0,y.withStrictError);return new c(O,this.featureFlagsApi)}findComponentData(y){return g(this.node,this.featureFlagsApi,v=>(0,u.I)(v,y.key)!==void 0).map(v=>(0,u.I)(v,y.key)).filter(v=>v!==void 0)}getElements(){return g(this.node,this.featureFlagsApi)}constructor(y,O){(0,o._)(this,"node",void 0),(0,o._)(this,"featureFlagsApi",void 0),this.node=y,this.featureFlagsApi=O}}function d(E,y,O=[]){const v=(0,S.h_)(m.W),A=new c(E,v);return(0,i.useMemo)(()=>y(A),[E,...O])}},15006:function(V,T,t){"use strict";t.d(T,{r:function(){return u}});var o=t(87612);class i{getId(){return this.config.id}getApis(){var m;return(m=this.config.apis)!==null&&m!==void 0?m:[]}getFeatureFlags(){var m,g;return(g=(m=this.config.featureFlags)===null||m===void 0?void 0:m.slice())!==null&&g!==void 0?g:[]}get routes(){var m;return(m=this.config.routes)!==null&&m!==void 0?m:{}}get externalRoutes(){var m;return(m=this.config.externalRoutes)!==null&&m!==void 0?m:{}}provide(m){return m.expose(this)}toString(){return`plugin{${this.config.id}}`}constructor(m){(0,o._)(this,"config",void 0),this.config=m}}function u(S){return new i(S)}},30283:function(V,T,t){"use strict";t.d(T,{N:function(){return g}});var o=t(87612),i=t(92918);let u=i.K,S=u;class m{get title(){return this.id}toString(){return`routeRef{type=absolute,id=${this.id}}`}constructor(d,E){(0,o._)(this,"id",void 0),(0,o._)(this,"params",void 0),(0,o._)(this,S,void 0),this.id=d,this.params=E,this[u]="absolute"}}function g(c){var d;return new m(c.id,(d=c.params)!==null&&d!==void 0?d:[])}},92918:function(V,T,t){"use strict";t.d(T,{K:function(){return i}});var o=t(96087);const i=(0,o.u)("route-ref-type",()=>Symbol("route-ref-type"))},37321:function(V,T,t){"use strict";t.d(T,{t:function(){return S}});var o=t(2784),i=t(73557),u=t(29651);function S(m){const{pathname:g}=(0,i.TH)(),c=(0,u.Vt)("routing-context");if(!c)throw new Error("Routing context is not available");const d=c.atVersion(1),E=(0,o.useMemo)(()=>d&&d.resolve(m,{pathname:g}),[d,m,g]);if(!c)throw new Error("useRouteRef used outside of routing context");if(!d)throw new Error("RoutingContext v1 not available");const y="optional"in m&&m.optional;if(!E&&!y)throw new Error(`No path for ${m}`);return E}},35304:function(V,T,t){"use strict";t.d(T,{F:function(){return O},y:function(){return v}});var o=t(88412),i=t(52475),u=t(80956),S=t(87612),m=t(18015);function g(A){const h=new Array;function I(P,w){for(const[D,M]of Object.entries(P))typeof M=="string"?h.push([w+D,M]):I(M,`${w}${D}.`)}return I(A,""),Object.fromEntries(h)}var c=new WeakMap,d=new WeakMap,E=new WeakMap;class y{get id(){return(0,o._)(this,c)}get T(){throw new Error("Not implemented")}getDefaultMessages(){return(0,o._)(this,d)}setDefaultResource(h){(0,u._)(this,E,h)}getDefaultResource(){return(0,o._)(this,E)}toString(){return`TranslationRef{id=${this.id}}`}constructor(h){(0,i._)(this,c,{writable:!0,value:void 0}),(0,i._)(this,d,{writable:!0,value:void 0}),(0,i._)(this,E,{writable:!0,value:void 0}),(0,S._)(this,"$$type","@backstage/TranslationRef"),(0,S._)(this,"version","v1"),(0,u._)(this,c,h.id),(0,u._)(this,d,g(h.messages))}}function O(A){const h=new y(A);return A.translations&&h.setDefaultResource((0,m.N)({ref:h,translations:A.translations})),h}function v(A){const h=A;if(h.$$type!=="@backstage/TranslationRef")throw new Error(`Invalid translation ref, bad type '${h.$$type}'`);if(h.version!=="v1")throw new Error(`Invalid translation ref, bad version '${h.version}'`);return h}},18015:function(V,T,t){"use strict";t.d(T,{N:function(){return i},W:function(){return o}});function o(u){const S=u;if(S.$$type!=="@backstage/TranslationResource")throw new Error(`Invalid translation resource, bad type '${S.$$type}'`);if(S.version!=="v1")throw new Error(`Invalid translation resource, bad version '${S.version}'`);return S}function i(u){return{$$type:"@backstage/TranslationResource",version:"v1",id:u.ref.id,resources:Object.entries(u.translations).map(([S,m])=>({language:S,loader:()=>m().then(g=>{const c=g.default;return{messages:(c==null?void 0:c.$$type)==="@backstage/TranslationMessages"?c.messages:c}})}))}}},41385:function(V,T,t){"use strict";t.d(T,{V:function(){return S}});var o=t(87612),i=t(48998);async function u(m){try{const c=await m.text();if(c){var g;if(!((g=m.headers.get("content-type"))===null||g===void 0)&&g.startsWith("application/json"))try{const d=JSON.parse(c);if(d.error&&d.response)return d}catch{}return{error:{name:"Error",message:`Request failed with status ${m.status} ${m.statusText}, ${c}`},response:{statusCode:m.status}}}}catch{}return{error:{name:"Error",message:`Request failed with status ${m.status} ${m.statusText}`},response:{statusCode:m.status}}}class S extends Error{static async fromResponse(g){const c=await u(g),d=c.response.statusCode||g.status,E=c.error.name||g.statusText,y=`Request failed with ${d} ${E}`,O=(0,i.Fq)(c.error);return new S({message:y,response:g,data:c,cause:O})}constructor(g){super(g.message),(0,o._)(this,"response",void 0),(0,o._)(this,"body",void 0),(0,o._)(this,"cause",void 0),this.name="ResponseError",this.response=g.response,this.body=g.data,this.cause=g.cause}}},30474:function(V,T,t){"use strict";t.d(T,{V:function(){return o}});function o(u){if(typeof u!="object"||u===null||Array.isArray(u))return!1;const S=u;return!(typeof S.name!="string"||S.name===""||typeof S.message!="string")}function i(u){if(typeof u!="object"||u===null||Array.isArray(u))throw new Error(`Encountered invalid error, not an object, got '${u}'`);const S=u;if(typeof S.name!="string"||S.name==="")throw new Error(`Encountered error object without a name, got '${u}'`);if(typeof S.message!="string")throw new Error(`Encountered error object without a message, got '${u}'`)}},50029:function(V,T,t){"use strict";t.d(T,{dR:function(){return d},nj:function(){return O}});var o=t(87612),i=t(48998),u=t(30474);class S extends Error{constructor(I,P){var w,D;let M=I;if(P!==void 0){const b=(0,i.n)(P);M?M+=`; caused by ${b}`:M=`caused by ${b}`}super(M),(0,o._)(this,"cause",void 0),(w=(D=Error).captureStackTrace)===null||w===void 0||w.call(D,this,this.constructor),(!this.name||this.name==="Error")&&this.constructor.name!=="Error"&&(this.name=this.constructor.name),this.cause=(0,u.V)(P)?P:void 0}}class m extends null{constructor(...I){super(...I),_define_property(this,"name","InputError")}}class g extends null{constructor(...I){super(...I),_define_property(this,"name","AuthenticationError")}}class c extends null{constructor(...I){super(...I),_define_property(this,"name","NotAllowedError")}}class d extends S{constructor(...I){super(...I),(0,o._)(this,"name","NotFoundError")}}class E extends null{constructor(...I){super(...I),_define_property(this,"name","ConflictError")}}class y extends null{constructor(...I){super(...I),_define_property(this,"name","NotModifiedError")}}class O extends S{constructor(...I){super(...I),(0,o._)(this,"name","NotImplementedError")}}class v extends null{}class A extends null{constructor(I,P){super(I,P),this.name=isError(P)?P.name:"Error"}}},48998:function(V,T,t){"use strict";t.d(T,{Fq:function(){return m},n:function(){return g}});var o=t(24852),i=t.n(o),u=t(30474);function S(c,d){const y={name:"Unknown",message:"<no reason given>",...serializeErrorInternal(c)};return d!=null&&d.includeStack||delete y.stack,y}function m(c){const d=(0,o.deserializeError)(c);return c.stack||(d.stack=void 0),d}function g(c){if((0,u.V)(c)){const d=String(c);return d!=="[object Object]"?d:`${c.name}: ${c.message}`}return`unknown error '${c}'`}},91657:function(V,T,t){"use strict";t.d(T,{a:function(){return $e},q:function(){return Ne}});var o=t(87612),i=t(38264);const u="amazonaws.com";function S(U){const f=U.getOptionalString("endpoint");var L;const N=(L=U.getOptionalBoolean("s3ForcePathStyle"))!==null&&L!==void 0?L:!1;let rt,wt;if(f){try{const Ut=new URL(f);rt=Ut.host,wt=Ut.pathname}catch{throw new Error(`invalid awsS3 integration config, endpoint '${f}' is not a valid URL`)}if(wt!=="/")throw new Error(`invalid awsS3 integration config, endpoints cannot contain path, got '${f}'`)}else rt=u;const Rt=U.getOptionalString("accessKeyId"),ae=U.getOptionalString("secretAccessKey"),ee=U.getOptionalString("roleArn"),Kt=U.getOptionalString("externalId");return{host:rt,endpoint:f,s3ForcePathStyle:N,accessKeyId:Rt,secretAccessKey:ae,roleArn:ee,externalId:Kt}}function m(U){const f=U.map(S);return f.some(L=>L.host===u)||f.push({host:u}),f}class g{get type(){return"awsS3"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){return(0,i.FI)(f)}resolveEditUrl(f){return f}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(g,"factory",({config:U})=>{var f;const L=m((f=U.getOptionalConfigArray("integrations.awsS3"))!==null&&f!==void 0?f:[]);return(0,i.gz)(L.map(N=>new g(N)),N=>N.config.host)});var c=t(88412),d=t(52475),E=t(80956);const y="GB";var O=new WeakMap,v=new WeakMap,A=new WeakMap,h=new WeakMap,I=new WeakMap,P=new WeakMap,w=new WeakMap;class D{static fromRepoUrl(f){const L=new URL(f);let N,rt,wt;const Rt=L.pathname.split("/").map(ge=>decodeURIComponent(ge));if(Rt[2]==="_git"?(N=Rt[1],rt=wt=Rt[3]):Rt[3]==="_git"?(N=Rt[1],rt=Rt[2],wt=Rt[4]):Rt[4]==="_git"&&(N=`${Rt[1]}/${Rt[2]}`,rt=Rt[3],wt=Rt[5]),!N||!rt||!wt)throw new Error("Azure URL must point to a git repository");var ae;const ee=(ae=L.searchParams.get("path"))!==null&&ae!==void 0?ae:void 0;let Kt;const Ut=L.searchParams.get("version");if(Ut){if(Ut.slice(0,2)!=="GB")throw new Error("Azure URL version must point to a git branch");Kt=Ut.slice(2)}return new D(L.origin,N,rt,wt,ee,Kt)}toRepoUrl(){let f;return(0,c._)(this,A)===(0,c._)(this,h)?f=(0,c._)(this,w).call(this,(0,c._)(this,v),"_git",(0,c._)(this,h)):f=(0,c._)(this,w).call(this,(0,c._)(this,v),(0,c._)(this,A),"_git",(0,c._)(this,h)),(0,c._)(this,I)&&f.searchParams.set("path",(0,c._)(this,I)),(0,c._)(this,P)&&f.searchParams.set("version",y+(0,c._)(this,P)),f.toString()}toFileUrl(){if(!(0,c._)(this,I))throw new Error("Azure URL must point to a specific path to be able to download a file");const f=(0,c._)(this,w).call(this,(0,c._)(this,v),(0,c._)(this,A),"_apis","git","repositories",(0,c._)(this,h),"items");return f.searchParams.set("api-version","6.0"),f.searchParams.set("path",(0,c._)(this,I)),(0,c._)(this,P)&&f.searchParams.set("version",(0,c._)(this,P)),f.toString()}toArchiveUrl(){const f=(0,c._)(this,w).call(this,(0,c._)(this,v),(0,c._)(this,A),"_apis","git","repositories",(0,c._)(this,h),"items");return f.searchParams.set("recursionLevel","full"),f.searchParams.set("download","true"),f.searchParams.set("api-version","6.0"),(0,c._)(this,I)&&f.searchParams.set("scopePath",(0,c._)(this,I)),(0,c._)(this,P)&&f.searchParams.set("version",(0,c._)(this,P)),f.toString()}toCommitsUrl(){const f=(0,c._)(this,w).call(this,(0,c._)(this,v),(0,c._)(this,A),"_apis","git","repositories",(0,c._)(this,h),"commits");return f.searchParams.set("api-version","6.0"),(0,c._)(this,P)&&f.searchParams.set("searchCriteria.itemVersion.version",(0,c._)(this,P)),f.toString()}getOwner(){return(0,c._)(this,v)}getProject(){return(0,c._)(this,A)}getRepo(){return(0,c._)(this,h)}getPath(){return(0,c._)(this,I)}getRef(){return(0,c._)(this,P)}constructor(f,L,N,rt,wt,Rt){(0,d._)(this,O,{writable:!0,value:void 0}),(0,d._)(this,v,{writable:!0,value:void 0}),(0,d._)(this,A,{writable:!0,value:void 0}),(0,d._)(this,h,{writable:!0,value:void 0}),(0,d._)(this,I,{writable:!0,value:void 0}),(0,d._)(this,P,{writable:!0,value:void 0}),(0,d._)(this,w,{writable:!0,value:(...ae)=>{const ee=new URL((0,c._)(this,O));return ee.pathname=ae.map(Kt=>encodeURIComponent(Kt)).join("/"),ee}}),(0,E._)(this,O,f),(0,E._)(this,v,L),(0,E._)(this,A,N),(0,E._)(this,h,rt),(0,E._)(this,I,wt),(0,E._)(this,P,Rt)}}const M="dev.azure.com",b=["clientId","clientSecret","tenantId","personalAccessToken"],H=new Map([["ClientSecret",["clientId","clientSecret","tenantId"]],["ManagedIdentity",["clientId"]],["PersonalAccessToken",["personalAccessToken"]]]);function Y(U){for(const f of H.entries()){const[L,N]=f,rt=b.filter(wt=>!N.includes(wt));if(N.every(wt=>U[wt]!==void 0)&&rt.every(wt=>U[wt]===void 0))return{kind:L,organizations:U.organizations,...N.reduce((wt,Rt)=>(wt[Rt]=U[Rt],wt),{})}}throw new Error("is not a valid credential")}function tt(U){var f,L;const N=(L=U.getOptionalString("host"))!==null&&L!==void 0?L:M;let rt=(f=U.getOptionalConfigArray("credentials"))===null||f===void 0?void 0:f.map(Kt=>({organizations:Kt.getOptionalStringArray("organizations"),personalAccessToken:Kt.getOptionalString("personalAccessToken"),tenantId:Kt.getOptionalString("tenantId"),clientId:Kt.getOptionalString("clientId"),clientSecret:Kt.getOptionalString("clientSecret")}));const wt=U.getOptionalString("token");if(U.getOptional("credential")!==void 0&&U.getOptional("credentials")!==void 0)throw new Error("Invalid Azure integration config, 'credential' and 'credentials' cannot be used together. Use 'credentials' instead.");if(U.getOptional("token")!==void 0&&U.getOptional("credentials")!==void 0)throw new Error("Invalid Azure integration config, 'token' and 'credentials' cannot be used together. Use 'credentials' instead.");if(wt!==void 0){const Kt=[{personalAccessToken:wt}];var Rt;rt=(Rt=rt==null?void 0:rt.concat(Kt))!==null&&Rt!==void 0?Rt:Kt}if(U.getOptional("credential")!==void 0){const Kt=[{organizations:U.getOptionalStringArray("credential.organizations"),token:U.getOptionalString("credential.token"),tenantId:U.getOptionalString("credential.tenantId"),clientId:U.getOptionalString("credential.clientId"),clientSecret:U.getOptionalString("credential.clientSecret")}];var ae;rt=(ae=rt==null?void 0:rt.concat(Kt))!==null&&ae!==void 0?ae:Kt}if(!(0,i.bK)(N))throw new Error(`Invalid Azure integration config, '${N}' is not a valid host`);let ee;if(rt!==void 0){const Kt=rt==null?void 0:rt.reduce((Ut,ge,Me)=>{let kt;try{Y(ge)}catch(oe){kt=oe.message}return kt!==void 0&&Ut.push(`credential at position ${Me+1} ${kt}`),Ut},Array.of()).concat(Object.entries(rt.filter(Ut=>Ut.organizations!==void 0&&Ut.organizations.length>0).reduce((Ut,ge,Me)=>{var kt;return(kt=ge.organizations)===null||kt===void 0||kt.forEach(oe=>{Ut[oe]||(Ut[oe]=[]),Ut[oe].push(Me+1)}),Ut},{})).filter(([Ut,ge])=>ge.length>1).reduce((Ut,[ge,Me])=>(Ut.push(`organization ${ge} is specified multiple times in credentials at positions ${Me.slice(0,Me.length-1).join(", ")} and ${Me[Me.length-1]}`),Ut),Array.of()));if((Kt==null?void 0:Kt.length)>0)throw new Error(`Invalid Azure integration config for ${N}: ${Kt.join("; ")}`);if(ee=rt.map(Ut=>Y(Ut)),ee.some(Ut=>Ut.kind!=="PersonalAccessToken")&&N!==M)throw new Error(`Invalid Azure integration config for ${N}, only personal access tokens can be used with hosts other than ${M}`);if(ee.filter(Ut=>Ut.organizations===void 0||Ut.organizations.length===0).length>1)throw new Error(`Invalid Azure integration config for ${N}, you cannot specify multiple credentials without organizations`)}return{host:N,credentials:ee}}function z(U){const f=U.map(tt);return f.some(L=>L.host===M)||f.push({host:M}),f}class W{get type(){return"azure"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){const{url:L,base:N}=f;if((0,i.jv)(L))return L;try{const wt=D.fromRepoUrl(N),Rt=new URL(N);var rt;const ae=new URL(`https://a.com${(rt=wt.getPath())!==null&&rt!==void 0?rt:""}`),ee=new URL(L,ae).pathname;return Rt.searchParams.set("path",ee),f.lineNumber&&(Rt.searchParams.set("line",String(f.lineNumber)),Rt.searchParams.set("lineEnd",String(f.lineNumber+1)),Rt.searchParams.set("lineStartColumn","1"),Rt.searchParams.set("lineEndColumn","1")),Rt.toString()}catch{return new URL(L,N).toString()}}resolveEditUrl(f){return f}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(W,"factory",({config:U})=>{var f;const L=z((f=U.getOptionalConfigArray("integrations.azure"))!==null&&f!==void 0?f:[]);return(0,i.gz)(L.map(N=>new W(N)),N=>N.config.host)});var Z=t(82717),Q=t.n(Z);const et="bitbucket.org",it="https://api.bitbucket.org/2.0";function mt(U){const f=et,L=it,N=U.getString("username"),rt=U.getString("appPassword");return{host:f,apiBaseUrl:L,username:N,appPassword:rt}}function ft(U){const f=U.map(mt);return f.length===0&&f.push({host:et,apiBaseUrl:it}),f}class Ot{get type(){return"bitbucketCloud"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){const L=(0,i.FI)(f);if(f.lineNumber){const N=new URL(L);return N.hash=`lines-${f.lineNumber}`,N.toString()}return L}resolveEditUrl(f){const L=Q()(f),N=new URL(f);return N.searchParams.set("mode","edit"),N.searchParams.set("at",L.ref),N.toString()}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(Ot,"factory",({config:U})=>{var f;const L=ft((f=U.getOptionalConfigArray("integrations.bitbucketCloud"))!==null&&f!==void 0?f:[]);return(0,i.gz)(L.map(N=>new Ot(N)),N=>N.config.host)});var ct=t(76635);const Et="bitbucket.org",at="https://api.bitbucket.org/2.0";function G(U){var f;const L=(f=U.getOptionalString("host"))!==null&&f!==void 0?f:Et;let N=U.getOptionalString("apiBaseUrl");const rt=U.getOptionalString("token"),wt=U.getOptionalString("username"),Rt=U.getOptionalString("appPassword");if(!(0,i.bK)(L))throw new Error(`Invalid Bitbucket integration config, '${L}' is not a valid host`);return N?N=(0,ct.trimEnd)(N,"/"):L===Et?N=at:N=`https://${L}/rest/api/1.0`,{host:L,apiBaseUrl:N,token:rt,username:wt,appPassword:Rt}}function st(U){const f=U.map(G);return f.some(L=>L.host===Et)||f.push({host:Et,apiBaseUrl:at}),f}class xt{get type(){return"bitbucket"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){const L=(0,i.FI)(f);if(!f.lineNumber)return L;const N=new URL(L);return this.integrationConfig.host==="bitbucket.org"?N.hash=`lines-${f.lineNumber}`:N.hash=`${f.lineNumber}`,N.toString()}resolveEditUrl(f){const L=Q()(f),N=new URL(f);return N.searchParams.set("mode","edit"),N.searchParams.set("spa","0"),N.searchParams.set("at",L.ref),N.toString()}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(xt,"factory",({config:U})=>{var f,L,N;const rt=st((N=U.getOptionalConfigArray("integrations.bitbucket"))!==null&&N!==void 0?N:[...(f=U.getOptionalConfigArray("integrations.bitbucketCloud"))!==null&&f!==void 0?f:[],...(L=U.getOptionalConfigArray("integrations.bitbucketServer"))!==null&&L!==void 0?L:[]]);return(0,i.gz)(rt.map(wt=>new xt(wt)),wt=>wt.config.host)});function At(U){const f=U.getString("host");let L=U.getOptionalString("apiBaseUrl");const N=U.getOptionalString("token"),rt=U.getOptionalString("username"),wt=U.getOptionalString("password");if(!(0,i.bK)(f))throw new Error(`Invalid Bitbucket Server integration config, '${f}' is not a valid host`);return L?L=(0,ct.trimEnd)(L,"/"):L=`https://${f}/rest/api/1.0`,{host:f,apiBaseUrl:L,token:N,username:rt,password:wt}}function Ct(U){return U.map(At)}class ht{get type(){return"bitbucketServer"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){const L=(0,i.FI)(f);if(f.lineNumber){const N=new URL(L);return N.hash=f.lineNumber.toString(),N.toString()}return L}resolveEditUrl(f){return f.includes("?")?f.substring(0,f.indexOf("?")):f}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(ht,"factory",({config:U})=>{var f;const L=Ct((f=U.getOptionalConfigArray("integrations.bitbucketServer"))!==null&&f!==void 0?f:[]);return(0,i.gz)(L.map(N=>new ht(N)),N=>N.config.host)});function lt(U){const f=U.getString("host");let L=U.getOptionalString("baseUrl"),N=U.getOptionalString("cloneUrl"),rt=U.getOptionalString("gitilesBaseUrl");const wt=U.getOptionalString("username"),Rt=U.getOptionalString("password");if((0,i.bK)(f)){if(L&&!(0,i.jv)(L))throw new Error(`Invalid Gerrit integration config, '${L}' is not a valid baseUrl`);if(N&&!(0,i.jv)(N))throw new Error(`Invalid Gerrit integration config, '${N}' is not a valid cloneUrl`);if(rt&&!(0,i.jv)(rt))throw new Error(`Invalid Gerrit integration config, '${rt}' is not a valid gitilesBaseUrl`)}else throw new Error(`Invalid Gerrit integration config, '${f}' is not a valid host`);return L?L=(0,ct.trimEnd)(L,"/"):L=`https://${f}`,rt?rt=(0,ct.trimEnd)(rt,"/"):rt=`https://${f}`,N?N=(0,ct.trimEnd)(N,"/"):N=L,{host:f,baseUrl:L,cloneUrl:N,gitilesBaseUrl:rt,username:wt,password:Rt}}function pt(U){return U.map(lt)}var K=t(48834).lW;const k=")]}'";function q(U,f){const L=new URL(U.gitilesBaseUrl),N=new URL(f),wt=N.pathname.substring(N.pathname.startsWith("/a/")?2:0).replace(L.pathname,"").split("/").filter(ge=>!!ge),Rt=wt.indexOf("+");if(Rt<=0)throw new Error(`Unable to parse project from url: ${f}`);const ae=(0,ct.trimStart)(wt.slice(0,Rt).join("/"),"/"),ee=wt.indexOf("heads");if(ee<=0)throw new Error(`Unable to parse branch from url: ${f}`);const Kt=wt[ee+1],Ut=wt.slice(ee+2).join("/");return{branch:Kt,filePath:Ut===""?"/":Ut,project:ae}}function ot(U,f,L,N){return`${U.gitilesBaseUrl}/${f}/+/refs/heads/${L}/${(0,ct.trimStart)(N,"/")}`}function gt(U,f,L,N){const rt=N==="/"||N===""?".tar.gz":`/${N}.tar.gz`;return`${Bt(U)}/${f}/+archive/refs/heads/${L}${rt}`}function vt(U){return U.password?"/a/":"/"}function Bt(U){if(!U.baseUrl||!U.gitilesBaseUrl)throw new Error("Unexpected Gerrit config values. baseUrl or gitilesBaseUrl not set.");if(U.gitilesBaseUrl.startsWith(U.baseUrl))return U.gitilesBaseUrl.replace(U.baseUrl.concat("/"),U.baseUrl.concat(vt(U)));if(U.password)throw new Error("Since the baseUrl (Gerrit) is not part of the gitilesBaseUrl, an authentication URL could not be constructed.");return U.gitilesBaseUrl}function zt(U,f){const{branch:L,project:N}=q(U,f);return`${U.baseUrl}${vt(U)}projects/${encodeURIComponent(N)}/branches/${L}`}function Ft(U,f){const{project:L}=q(U,f);return`${U.cloneUrl}${vt(U)}${L}`}function Nt(U,f){const{branch:L,filePath:N,project:rt}=q(U,f);return`${U.baseUrl}${vt(U)}projects/${encodeURIComponent(rt)}/branches/${L}/files/${encodeURIComponent(N)}/content`}function Lt(U){return`${U.baseUrl}${vt(U)}projects/`}function Yt(U){const f={};if(!U.password)return f;const L=K.from(`${U.username}:${U.password}`,"utf8");return f.Authorization=`Basic ${L.toString("base64")}`,{headers:f}}async function Te(U){const f=await U.text();if(f.startsWith(k))try{return JSON.parse(f.slice(k.length))}catch(L){throw new Error(`Invalid response from Gerrit: ${f.slice(0,10)} - ${L}`)}throw new Error(`Gerrit JSON body prefix missing. Found: ${f.slice(0,10)}`)}class pe{get type(){return"gerrit"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){const{url:L,base:N,lineNumber:rt}=f;let wt;if(L.startsWith("/")){const{branch:Rt,project:ae}=q(this.config,N);return ot(this.config,ae,Rt,L)}return L?wt=new URL(L,N):wt=new URL(N),rt&&(wt.hash=rt.toString()),wt.toString()}resolveEditUrl(f){return f}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(pe,"factory",({config:U})=>{var f;const L=pt((f=U.getOptionalConfigArray("integrations.gerrit"))!==null&&f!==void 0?f:[]);return(0,i.gz)(L.map(N=>new pe(N)),N=>N.config.host)});var le=t(61800);const _t="gitlab.com",jt="https://gitlab.com/api/v4";function Vt(U){const f=U.getString("host");let L=U.getOptionalString("apiBaseUrl");const N=U.getOptionalString("token");let rt=U.getOptionalString("baseUrl");if(L?L=(0,ct.trimEnd)(L,"/"):f===_t&&(L=jt),rt?rt=(0,ct.trimEnd)(rt,"/"):rt=`https://${f}`,(0,i.bK)(f)){if(!L||!(0,i.jv)(L))throw new Error(`Invalid GitLab integration config, '${L}' is not a valid apiBaseUrl`);if(!(0,i.jv)(rt))throw new Error(`Invalid GitLab integration config, '${rt}' is not a valid baseUrl`)}else throw new Error(`Invalid GitLab integration config, '${f}' is not a valid host`);return{host:f,token:N,apiBaseUrl:L,baseUrl:rt}}function Oe(U){const f=U.map(Vt);return f.some(L=>L.host===_t)||f.push({host:_t,apiBaseUrl:jt,baseUrl:`https://${_t}`}),f}function ke(U){let f="";return U.host!==_t&&(f=new URL(U.baseUrl).pathname),trimEnd(f,"/")}class xe{get type(){return"gitlab"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(f){return(0,i.FI)(f)}resolveEditUrl(f){return tn(f,"edit")}constructor(f){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=f}}(0,o._)(xe,"factory",({config:U})=>{var f;const L=Oe((f=U.getOptionalConfigArray("integrations.gitlab"))!==null&&f!==void 0?f:[]);return(0,i.gz)(L.map(N=>new xe(N)),N=>N.config.host)});function tn(U,f){return U.replace(/\/\-\/(blob|tree|edit)\//,`/-/${f}/`)}function Ve(U){const f=U.getString("host");let L=U.getOptionalString("baseUrl");const N=U.getOptionalString("username"),rt=U.getOptionalString("password");if(!(0,i.bK)(f))throw new Error(`Invalid Gitea integration config, '${f}' is not a valid host`);return L?L=(0,ct.trimEnd)(L,"/"):L=`https://${f}`,{host:f,baseUrl:L,username:N,password:rt}}var Ye=t(48834).lW;function se(U,f){const L=ie(U,f);return`${L.url}/${L.owner}/${L.name}/_edit/${L.ref}/${L.path}`}function sn(U,f){const L=ie(U,f);return`${L.url}/api/v1/repos/${L.owner}/${L.name}/contents/${L.path}?ref=${L.ref}`}function Re(U,f){const L=ie(U,f);return`${L.url}/api/v1/repos/${L.owner}/${L.name}/archive/${L.ref}.tar.gz`}function en(U,f){const L=ie(U,f);return`${L.url}/api/v1/repos/${L.owner}/${L.name}/git/commits/${L.ref}`}function an(U){const f={},{username:L,password:N}=U;return N?(L?f.Authorization=`basic ${Ye.from(`${L}:${N}`).toString("base64")}`:f.Authorization=`token ${N}`,{headers:f}):f}function ie(U,f){var L;const N=(L=U.baseUrl)!==null&&L!==void 0?L:`https://${U.host}`;try{const[rt,wt,Rt,ae,ee,Kt,...Ut]=f.replace(N,"").split("/"),ge=Ut.join("/").replace(/^\//,"");return{url:N,owner:wt,name:Rt,ref:Kt,path:ge}}catch(rt){throw new Error(`Incorrect URL: ${f}, ${rt}`)}}class Ze{get type(){return"gitea"}get title(){return this.config.host}resolveUrl(f){return(0,i.FI)(f)}resolveEditUrl(f){return se(this.config,f)}constructor(f){(0,o._)(this,"config",void 0),this.config=f}}(0,o._)(Ze,"factory",({config:U})=>{var f;const N=((f=U.getOptionalConfigArray("integrations.gitea"))!==null&&f!==void 0?f:[]).map(rt=>Ve(rt));return(0,i.gz)(N.map(rt=>new Ze(rt)),rt=>rt.config.host)});class ze{static fromConfig(f){return new ze({awsS3:g.factory({config:f}),azure:W.factory({config:f}),bitbucket:xt.factory({config:f}),bitbucketCloud:Ot.factory({config:f}),bitbucketServer:ht.factory({config:f}),gerrit:pe.factory({config:f}),github:le.X.factory({config:f}),gitlab:xe.factory({config:f}),gitea:Ze.factory({config:f})})}get awsS3(){return this.byType.awsS3}get azure(){return this.byType.azure}get bitbucket(){return this.byType.bitbucket}get bitbucketCloud(){return this.byType.bitbucketCloud}get bitbucketServer(){return this.byType.bitbucketServer}get gerrit(){return this.byType.gerrit}get github(){return this.byType.github}get gitlab(){return this.byType.gitlab}get gitea(){return this.byType.gitea}list(){return Object.values(this.byType).flatMap(f=>f.list())}byUrl(f){let L=Object.values(this.byType).map(N=>N.byUrl(f)).filter(Boolean);if(L.length>1){const N=L.filter(rt=>!(rt instanceof xt));N.length!==0&&(L=N)}return L[0]}byHost(f){return Object.values(this.byType).map(L=>L.byHost(f)).find(Boolean)}resolveUrl(f){const L=this.byUrl(f.base);return L?L.resolveUrl(f):(0,i.FI)(f)}resolveEditUrl(f){const L=this.byUrl(f);return L?L.resolveEditUrl(f):f}constructor(f){(0,o._)(this,"byType",void 0),this.byType=f}}var we=t(95965);class $e{static fromConfig(f){return ze.fromConfig(f)}}const Ne=(0,we.T)({id:"integration.scmintegrations"})},61800:function(V,T,t){"use strict";t.d(T,{X:function(){return E},B:function(){return y}});var o=t(87612),i=t(38264),u=t(76635);const S="github.com",m="https://api.github.com",g="https://raw.githubusercontent.com";function c(O){var v,A;const h=(A=O.getOptionalString("host"))!==null&&A!==void 0?A:S;let I=O.getOptionalString("apiBaseUrl"),P=O.getOptionalString("rawBaseUrl");const w=O.getOptionalString("token"),D=(v=O.getOptionalConfigArray("apps"))===null||v===void 0?void 0:v.map(M=>({appId:M.getNumber("appId"),clientId:M.getString("clientId"),clientSecret:M.getString("clientSecret"),webhookSecret:M.getString("webhookSecret"),privateKey:M.getString("privateKey"),allowedInstallationOwners:M.getOptionalStringArray("allowedInstallationOwners")}));if(!(0,i.bK)(h))throw new Error(`Invalid GitHub integration config, '${h}' is not a valid host`);return I?I=(0,u.trimEnd)(I,"/"):h===S&&(I=m),P?P=(0,u.trimEnd)(P,"/"):h===S&&(P=g),{host:h,apiBaseUrl:I,rawBaseUrl:P,token:w,apps:D}}function d(O){const v=O.map(c);return v.some(A=>A.host===S)||v.push({host:S,apiBaseUrl:m,rawBaseUrl:g}),v}class E{get type(){return"github"}get title(){return this.integrationConfig.host}get config(){return this.integrationConfig}resolveUrl(v){return y((0,i.FI)(v),"tree")}resolveEditUrl(v){return y(v,"edit")}parseRateLimitInfo(v){return{isRateLimited:v.status===429||v.status===403&&v.headers.get("x-ratelimit-remaining")==="0"}}constructor(v){(0,o._)(this,"integrationConfig",void 0),this.integrationConfig=v}}(0,o._)(E,"factory",({config:O})=>{var v;const A=d((v=O.getOptionalConfigArray("integrations.github"))!==null&&v!==void 0?v:[]);return(0,i.gz)(A.map(h=>new E(h)),h=>h.config.host)});function y(O,v){return O.replace(/\/\/([^/]+)\/([^/]+)\/([^/]+)\/(blob|tree|edit)\//,(A,h,I,P)=>`//${h}/${I}/${P}/${v}/`)}},38264:function(V,T,t){"use strict";t.d(T,{FI:function(){return d},bK:function(){return m},gz:function(){return c},jv:function(){return g}});var o=t(82717),i=t.n(o),u=t(76635),S=t.n(u);function m(y){const O=new URL("http://example.com");return O.host=y,O.host===y}function g(y){try{return new URL(y),!0}catch{return!1}}function c(y,O){return{list(){return y},byUrl(v){try{const A=typeof v=="string"?new URL(v):v;return y.find(h=>O(h)===A.host)}catch{return}},byHost(v){return y.find(A=>O(A)===v)}}}function d(y){const{url:O,base:v,lineNumber:A}=y;try{return new URL(O),O}catch{}let h;if(O.startsWith("/")){const{filepath:I}=i()(v);h=new URL(v);const P=(0,u.trimEnd)(h.pathname.substring(0,h.pathname.length-I.length),"/");h.pathname=`${P}${O}`}else h=new URL(O,v);return h.search=new URL(v).search,A&&(h.hash=`L${A}`),h.toString()}function E(y){beforeAll(()=>y.listen({onUnhandledRequest:"error"})),afterAll(()=>y.close()),afterEach(()=>y.resetHandlers())}},51280:function(V,T,t){"use strict";var o={};t.r(o),t.d(o,{TechDocsPlugin:function(){return g.s4}});var i=t(52322),u=t(2784),S=t(17029),m=t(73557),g=t(78284),c=t(29895),d=t(2296),E=t(57058),y=t(77277),O=t(87435),v=t(74359),A=t(55015),h=t(71597);function I({children:r}){return(0,m.GV)()?(0,i.jsx)(i.Fragment,{children:r}):(0,i.jsx)(m.VA,{children:r})}const P=()=>(0,i.jsx)(O.m,{status:"404",statusMessage:"PAGE NOT FOUND"}),w=({step:r,error:e})=>{let n="";return r==="load-config"?n=`The configuration failed to load, someone should have a look at this error: ${e.message}`:r==="load-chunk"&&(n=`Lazy loaded chunk failed to load, try to reload the page: ${e.message}`),(0,i.jsx)(I,{children:(0,i.jsx)(O.m,{status:"501",statusMessage:n})})},D=({error:r,resetError:e,plugin:n})=>(0,i.jsx)(v.y,{title:`Error in ${n==null?void 0:n.getId()}`,defaultExpanded:!0,error:r,children:(0,i.jsx)(y.Z,{variant:"outlined",onClick:e,children:"Retry"})}),M={Progress:A.E,Router:h.VK,NotFoundErrorPage:P,BootErrorPage:w,ErrorBoundaryFallback:D};var b=t(87612);const H="Invalid discovery URL pattern,";class Y{static compile(e){const n=e.split(/\{\{\s*pluginId\s*\}\}/),s=n.join("pluginId");let a;try{a=new URL(s)}catch{throw new Error(`${H} URL '${s}' is invalid`)}if(a.hash)throw new Error(`${H} URL must not have a hash`);if(a.search)throw new Error(`${H} URL must not have a query`);if(s.endsWith("/"))throw new Error(`${H} URL must not end with a slash`);return new Y(n)}async getBaseUrl(e){return this.parts.join(encodeURIComponent(e))}constructor(e){(0,b._)(this,"parts",void 0),this.parts=e}}var tt=t(82394),z=t.n(tt);let W=Symbol.observable;class Z{[W](){return this}get closed(){return this.isClosed}next(e){if(this.isClosed)throw new Error("PublishSubject is closed");this.subscribers.forEach(n=>n.next(e))}error(e){if(this.isClosed)throw new Error("PublishSubject is closed");this.isClosed=!0,this.terminatingError=e,this.subscribers.forEach(n=>n.error(e))}complete(){if(this.isClosed)throw new Error("PublishSubject is closed");this.isClosed=!0,this.subscribers.forEach(e=>e.complete())}subscribe(e,n,s){const a=typeof e=="function"?{next:e,error:n,complete:s}:e;return this.observable.subscribe(a)}constructor(){(0,b._)(this,"isClosed",!1),(0,b._)(this,"terminatingError",void 0),(0,b._)(this,"observable",new(z())(e=>this.isClosed?(this.terminatingError?e.error(this.terminatingError):e.complete(),()=>{}):(this.subscribers.add(e),()=>{this.subscribers.delete(e)}))),(0,b._)(this,"subscribers",new Set)}}let Q=Symbol.observable;class et{[Q](){return this}get closed(){return this.isClosed}next(e){if(this.isClosed)throw new Error("BehaviorSubject is closed");this.currentValue=e,this.subscribers.forEach(n=>n.next(e))}error(e){if(this.isClosed)throw new Error("BehaviorSubject is closed");this.isClosed=!0,this.terminatingError=e,this.subscribers.forEach(n=>n.error(e))}complete(){if(this.isClosed)throw new Error("BehaviorSubject is closed");this.isClosed=!0,this.subscribers.forEach(e=>e.complete())}subscribe(e,n,s){const a=typeof e=="function"?{next:e,error:n,complete:s}:e;return this.observable.subscribe(a)}constructor(e){(0,b._)(this,"isClosed",void 0),(0,b._)(this,"currentValue",void 0),(0,b._)(this,"terminatingError",void 0),(0,b._)(this,"observable",void 0),(0,b._)(this,"subscribers",new Set),this.isClosed=!1,this.currentValue=e,this.terminatingError=void 0,this.observable=new(z())(n=>this.isClosed?(this.terminatingError?n.error(this.terminatingError):n.complete(),()=>{}):(n.next(this.currentValue),this.subscribers.add(n),()=>{this.subscribers.delete(n)}))}}class it{post(e){this.subject.next(e)}alert$(){return this.subject}constructor(){(0,b._)(this,"subject",new Z)}}class mt{captureEvent(e){}}class ft{post(e,n){return n!=null&&n.hidden||this.alertApi.post({message:e.message,severity:"error"}),this.errorApi.post(e,n)}error$(){return this.errorApi.error$()}constructor(e,n){(0,b._)(this,"alertApi",void 0),(0,b._)(this,"errorApi",void 0),this.alertApi=e,this.errorApi=n}}class Ot{post(e,n){this.subject.next({error:e,context:n})}error$(){return this.subject}constructor(){(0,b._)(this,"subject",new Z)}}class ct{static forward(e,n){window.addEventListener("unhandledrejection",s=>{e.post(s.reason,n)})}}const Et=new Map;class at{static create(e){var n;return new at((n=e.namespace)!==null&&n!==void 0?n:"",e.errorApi)}static addStorageEventListener(){window.addEventListener("storage",e=>{for(const[s,a]of Et.entries()){var n;!((n=e.key)===null||n===void 0)&&n.startsWith(s)&&a.handleStorageChange(e.key)}})}get(e){return this.snapshot(e).value}snapshot(e){let n,s="absent";try{const a=localStorage.getItem(this.getKeyName(e));a&&(n=JSON.parse(a,(l,C)=>(typeof C=="object"&&C!==null&&Object.freeze(C),C)),s="present")}catch{this.errorApi.post(new Error(`Error when parsing JSON config from storage for: ${e}`))}return{key:e,value:n,presence:s}}forBucket(e){const n=`${this.namespace}/${e}`;return Et.has(n)||Et.set(n,new at(n,this.errorApi)),Et.get(n)}async set(e,n){localStorage.setItem(this.getKeyName(e),JSON.stringify(n)),this.notifyChanges(e)}async remove(e){localStorage.removeItem(this.getKeyName(e)),this.notifyChanges(e)}observe$(e){return at.hasSubscribed||(at.addStorageEventListener(),at.hasSubscribed=!0),this.observable.filter(({key:n})=>n===e)}handleStorageChange(e){if(!(e!=null&&e.startsWith(this.namespace)))return;const n=e==null?void 0:e.slice(`${this.namespace}/`.length);n.includes("/")||this.notifyChanges(decodeURIComponent(n))}getKeyName(e){return`${this.namespace}/${encodeURIComponent(e)}`}notifyChanges(e){const n=this.snapshot(e);for(const s of this.subscribers)s.next(n)}constructor(e,n){(0,b._)(this,"namespace",void 0),(0,b._)(this,"errorApi",void 0),(0,b._)(this,"subscribers",void 0),(0,b._)(this,"observable",void 0),this.namespace=e,this.errorApi=n,this.subscribers=new Set,this.observable=new(z())(s=>(this.subscribers.add(s),()=>{this.subscribers.delete(s)}))}}(0,b._)(at,"hasSubscribed",!1);function G(r){let e=r.baseImplementation||t.g.fetch;var n;const s=[(n=r.middleware)!==null&&n!==void 0?n:[]].flat().reverse();for(const a of s)e=a.apply(e);return{fetch:e}}class st{static create(e){var n,s;const a=xt(e),l=((n=e.header)===null||n===void 0?void 0:n.name)||"authorization",C=((s=e.header)===null||s===void 0?void 0:s.value)||(x=>`Bearer ${x}`);return new st(e.identityApi,a,l,C)}apply(e){return async(n,s)=>{const a=new Request(n,s),{token:l}=await this.identityApi.getCredentials();return a.headers.get(this.headerName)||typeof l!="string"||!l||!this.allowUrl(a.url)?e(n,s):(a.headers.set(this.headerName,this.headerValue(l)),e(a))}}constructor(e,n,s,a){(0,b._)(this,"identityApi",void 0),(0,b._)(this,"allowUrl",void 0),(0,b._)(this,"headerName",void 0),(0,b._)(this,"headerValue",void 0),this.identityApi=e,this.allowUrl=n,this.headerName=s,this.headerValue=a}}function xt(r){return r.allowUrl?r.allowUrl:r.urlPrefixAllowlist?At(r.urlPrefixAllowlist):r.config?At([r.config.getString("backend.baseUrl")]):()=>!1}function At(r){const e=r.map(n=>n.replace(/\/$/,""));return n=>e.some(s=>n===s||n.startsWith(`${s}/`))}function Ct(r,e){return!e||e==="/"?r:`${r.replace(/\/$/,"")}/${e.replace(/^\//,"")}`}class ht{apply(e){return async(n,s)=>{const a=new Request(n,s),l="plugin://";if(!a.url.startsWith(l))return e(n,s);const{hostname:C,pathname:x,search:j,hash:$,username:J,password:nt}=new URL(`http://${a.url.substring(l.length)}`);let ut=await this.discoveryApi.getBaseUrl(C);if(J||nt){const bt=new URL(ut),Zt=`${J}${nt?`:${nt}`:""}@`;ut=`${bt.protocol}//${Zt}${bt.host}${bt.pathname}`}const yt=`${Ct(ut,x)}${j}${$}`;return e(yt,typeof n=="string"||lt(n)?s:n)}}constructor(e){(0,b._)(this,"discoveryApi",void 0),this.discoveryApi=e}}function lt(r){return typeof r=="object"&&(r==null?void 0:r.constructor)===URL}class pt{static resolvePluginProtocol(e){return new ht(e.discoveryApi)}static injectIdentityAuth(e){return st.create(e)}constructor(){}}function K(r,e){for(const n of e)if(!r.has(n))return!1;return!0}function k(r,...e){const n=new Set(r);for(const s of e)for(const a of s)n.add(a);return n}class q{request(e){return new Promise((n,s)=>{this.requests.push({scopes:e,resolve:n,reject:s}),this.subject.next(this.getCurrentPending())})}resolve(e,n){this.requests=this.requests.filter(s=>K(e,s.scopes)?(s.resolve(n),!1):!0),this.subject.next(this.getCurrentPending())}reject(e){this.requests.forEach(n=>n.reject(e)),this.requests=[],this.subject.next(this.getCurrentPending())}pending(){return this.subject}getCurrentPending(){const e=this.requests.length===0?void 0:this.requests.slice(1).reduce((n,s)=>k(n,s.scopes),this.requests[0].scopes);return{scopes:e,resolve:n=>{e&&this.resolve(e,n)},reject:n=>{e&&this.reject(n)}}}constructor(){(0,b._)(this,"requests",[]),(0,b._)(this,"subject",new et(this.getCurrentPending()))}}class ot{createAuthRequester(e){const n=new q,s=this.handlerCount;return this.handlerCount++,n.pending().subscribe({next:a=>{const l=this.currentRequests.slice(),C=this.makeAuthRequest(a,e);C?l[s]=C:delete l[s],this.currentRequests=l,this.subject.next(l.filter(Boolean))}}),a=>n.request(a)}makeAuthRequest(e,n){const{scopes:s}=e;if(s)return{provider:n.provider,trigger:async()=>{const a=await n.onAuthRequest(s);e.resolve(a)},reject:()=>{const a=new Error("Login failed, rejected by user");a.name="RejectedError",e.reject(a)}}}authRequest$(){return this.subject}constructor(){(0,b._)(this,"subject",new et([])),(0,b._)(this,"currentRequests",[]),(0,b._)(this,"handlerCount",0)}}function gt(r){return new Promise((e,n)=>{const s=r.width||500,a=r.height||700,l=window.screen.width/2-s/2,C=window.screen.height/2-a/2,x=window.open(r.url,r.name,`menubar=no,location=no,resizable=no,scrollbars=no,status=no,width=${s},height=${a},top=${C},left=${l}`);let j="";if(!x||typeof x.closed=="undefined"||x.closed){const ut=new Error("Failed to open auth popup.");ut.name="PopupRejectedError",n(ut);return}const $=ut=>{if(ut.source!==x||ut.origin!==r.origin)return;const{data:yt}=ut;if(yt.type==="config_info"){j=yt.targetOrigin;return}if(yt.type!=="authorization_response")return;const bt=yt;if("error"in bt){const Zt=new Error(bt.error.message);Zt.name=bt.error.name,n(Zt)}else e(bt.response);nt()},J=setInterval(()=>{if(x.closed){const ut=`Login failed, ${j&&j!==window.location.origin?`Incorrect app origin, expected ${j}`:"popup was closed"}`,yt=new Error(ut);yt.name="PopupClosedError",n(yt),nt()}},100);function nt(){window.removeEventListener("message",$),clearInterval(J)}window.addEventListener("message",$)})}let vt=!1;function Bt(r){return[...r].join(" ")}class zt{async createSession(e){return e.instantPopup?this.enableExperimentalRedirectFlow?this.executeRedirect(e.scopes):this.showPopup(e.scopes):this.authRequester(e.scopes)}async refreshSession(e){const n=await fetch(await this.buildUrl("/refresh",{optional:!0,...e&&{scope:this.joinScopesFunc(e)}}),{headers:{"x-requested-with":"XMLHttpRequest"},credentials:"include"}).catch(a=>{throw new Error(`Auth refresh request failed, ${a}`)});if(!n.ok){const a=new Error(`Auth refresh request failed, ${n.statusText}`);throw a.status=n.status,a}const s=await n.json();if(s.error){const a=new Error(s.error.message);throw s.error.name&&(a.name=s.error.name),a}return await this.sessionTransform(s)}async removeSession(){const e=await fetch(await this.buildUrl("/logout"),{method:"POST",headers:{"x-requested-with":"XMLHttpRequest"},credentials:"include"}).catch(n=>{throw new Error(`Logout request failed, ${n}`)});if(!e.ok){const n=new Error(`Logout request failed, ${e.statusText}`);throw n.status=e.status,n}}async showPopup(e){var n,s,a,l,C,x,j,$;const J=this.joinScopesFunc(e),nt=await this.buildUrl("/start",{scope:J,origin:window.location.origin,flow:"popup"}),ut=!((s=this.popupOptions)===null||s===void 0||(n=s.size)===null||n===void 0)&&n.fullscreen?window.screen.width:((l=this.popupOptions)===null||l===void 0||(a=l.size)===null||a===void 0?void 0:a.width)||450,yt=!((x=this.popupOptions)===null||x===void 0||(C=x.size)===null||C===void 0)&&C.fullscreen?window.screen.height:(($=this.popupOptions)===null||$===void 0||(j=$.size)===null||j===void 0?void 0:j.height)||730,bt=await gt({url:nt,name:`${this.provider.title} Login`,origin:new URL(nt).origin,width:ut,height:yt});return await this.sessionTransform(bt)}async executeRedirect(e){const n=this.joinScopesFunc(e);return window.location.href=await this.buildUrl("/start",{scope:n,origin:window.location.origin,redirectUrl:window.location.href,flow:"redirect"}),new Promise(()=>{})}async buildUrl(e,n){const s=await this.discoveryApi.getBaseUrl("auth"),a=this.buildQueryString({...n,env:this.environment});return`${s}/${this.provider.id}${e}${a}`}buildQueryString(e){if(!e)return"";const n=Object.entries(e).map(([s,a])=>{if(typeof a=="string")return`${encodeURIComponent(s)}=${encodeURIComponent(a)}`;if(a)return encodeURIComponent(s)}).filter(Boolean).join("&");return n?`?${n}`:""}constructor(e){(0,b._)(this,"discoveryApi",void 0),(0,b._)(this,"environment",void 0),(0,b._)(this,"provider",void 0),(0,b._)(this,"joinScopesFunc",void 0),(0,b._)(this,"authRequester",void 0),(0,b._)(this,"sessionTransform",void 0),(0,b._)(this,"enableExperimentalRedirectFlow",void 0),(0,b._)(this,"popupOptions",void 0);const{configApi:n,discoveryApi:s,environment:a,provider:l,joinScopes:C=Bt,oauthRequestApi:x,sessionTransform:j=nt=>nt,popupOptions:$}=e;!vt&&!n&&(console.warn("DEPRECATION WARNING: Authentication providers require a configApi instance to configure the authentication flow. Please provide one to the authentication provider constructor."),vt=!0);var J;this.enableExperimentalRedirectFlow=n&&(J=n.getOptionalBoolean("enableExperimentalRedirectFlow"))!==null&&J!==void 0?J:!1,this.authRequester=x.createAuthRequester({provider:l,onAuthRequest:async nt=>this.enableExperimentalRedirectFlow?this.executeRedirect(nt):this.showPopup(nt)}),this.discoveryApi=s,this.environment=a,this.provider=l,this.joinScopesFunc=C,this.sessionTransform=j,this.popupOptions=$}}function Ft(r,e){for(const n of e)if(!r.has(n))return!1;return!0}class Nt{sessionExistsAndHasScope(e,n){if(!e)return!1;if(!n||this.options.sessionScopes===void 0)return!0;const s=this.options.sessionScopes(e);return Ft(s,n)}getExtendedScope(e,n){const s=new Set(this.options.defaultScopes);if(e&&this.options.sessionScopes!==void 0){const a=this.options.sessionScopes(e);for(const l of a)s.add(l)}if(n)for(const a of n)s.add(a);return s}constructor(e){(0,b._)(this,"options",void 0),this.options=e}}var Lt=t(95965),Yt;(function(r){r.SignedIn="SignedIn",r.SignedOut="SignedOut"})(Yt||(Yt={}));const Te=(0,Lt.T)({id:"core.auth.google"}),pe=(0,Lt.T)({id:"core.auth.github"}),le=(0,Lt.T)({id:"core.auth.okta"}),_t=(0,Lt.T)({id:"core.auth.gitlab"}),jt=(0,Lt.T)({id:"core.auth.microsoft"}),Vt=(0,Lt.T)({id:"core.auth.onelogin"}),Oe=(0,Lt.T)({id:"core.auth.bitbucket"}),ke=(0,Lt.T)({id:"core.auth.bitbucket-server"}),xe=(0,Lt.T)({id:"core.auth.atlassian"});class tn{setIsSignedIn(e){this.signedIn!==e&&(this.signedIn=e,this.subject.next(this.signedIn?Yt.SignedIn:Yt.SignedOut))}sessionState$(){return this.subject}constructor(){(0,b._)(this,"subject",new et(Yt.SignedOut)),(0,b._)(this,"signedIn",!1)}}class Ve{async getSession(e){if(this.helper.sessionExistsAndHasScope(this.currentSession,e.scopes)){if(!this.sessionShouldRefreshFunc(this.currentSession))return this.currentSession;try{const s=await this.collapsedSessionRefresh(e.scopes),a=this.sessionScopesFunc(this.currentSession),l=this.sessionScopesFunc(s);return Ft(l,a)&&(this.currentSession=s),s}catch(s){if(e.optional)return;throw s}}if(!this.currentSession&&!e.instantPopup)try{const n=await this.collapsedSessionRefresh(e.scopes);return this.currentSession=n,this.getSession(e)}catch{}if(!e.optional)return this.currentSession=await this.connector.createSession({...e,scopes:this.helper.getExtendedScope(this.currentSession,e.scopes)}),this.stateTracker.setIsSignedIn(!0),this.currentSession}async removeSession(){this.currentSession=void 0,await this.connector.removeSession(),this.stateTracker.setIsSignedIn(!1)}sessionState$(){return this.stateTracker.sessionState$()}async collapsedSessionRefresh(e){if(this.refreshPromise)return this.refreshPromise;this.refreshPromise=this.connector.refreshSession(this.helper.getExtendedScope(this.currentSession,e));try{const n=await this.refreshPromise;return this.stateTracker.setIsSignedIn(!0),n}finally{delete this.refreshPromise}}constructor(e){(0,b._)(this,"connector",void 0),(0,b._)(this,"helper",void 0),(0,b._)(this,"sessionScopesFunc",void 0),(0,b._)(this,"sessionShouldRefreshFunc",void 0),(0,b._)(this,"stateTracker",new tn),(0,b._)(this,"refreshPromise",void 0),(0,b._)(this,"currentSession",void 0);const{connector:n,defaultScopes:s=new Set,sessionScopes:a,sessionShouldRefresh:l}=e;this.connector=n,this.sessionScopesFunc=a,this.sessionShouldRefreshFunc=l,this.helper=new Nt({sessionScopes:a,defaultScopes:s})}}const Ye={id:"oauth2",title:"Your Identity Provider",icon:()=>null};class se{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=Ye,oauthRequestApi:C,defaultScopes:x=[],scopeTransform:j=ut=>ut,popupOptions:$}=e,J=new zt({configApi:n,discoveryApi:s,environment:a,provider:l,oauthRequestApi:C,sessionTransform({backstageIdentity:ut,...yt}){const bt={...yt,providerInfo:{idToken:yt.providerInfo.idToken,accessToken:yt.providerInfo.accessToken,scopes:se.normalizeScopes(j,yt.providerInfo.scope),expiresAt:yt.providerInfo.expiresInSeconds?new Date(Date.now()+yt.providerInfo.expiresInSeconds*1e3):void 0}};if(ut){var Zt;const Gt=(Zt=ut.expiresInSeconds)!==null&&Zt!==void 0?Zt:yt.providerInfo.expiresInSeconds;bt.backstageIdentity={token:ut.token,identity:ut.identity,expiresAt:Gt?new Date(Date.now()+Gt*1e3):void 0}}return bt},popupOptions:$}),nt=new Ve({connector:J,defaultScopes:new Set(x),sessionScopes:ut=>ut.providerInfo.scopes,sessionShouldRefresh:ut=>{var yt,bt;let Zt=1/0;return!((yt=ut.providerInfo)===null||yt===void 0)&&yt.expiresAt&&(Zt=Math.min(Zt,(ut.providerInfo.expiresAt.getTime()-Date.now())/1e3)),!((bt=ut.backstageIdentity)===null||bt===void 0)&&bt.expiresAt&&(Zt=Math.min(Zt,(ut.backstageIdentity.expiresAt.getTime()-Date.now())/1e3)),Zt<60*5}});return new se({sessionManager:nt,scopeTransform:j})}async signIn(){await this.getAccessToken()}async signOut(){await this.sessionManager.removeSession()}sessionState$(){return this.sessionManager.sessionState$()}async getAccessToken(e,n){const s=se.normalizeScopes(this.scopeTransform,e),a=await this.sessionManager.getSession({...n,scopes:s});var l;return(l=a==null?void 0:a.providerInfo.accessToken)!==null&&l!==void 0?l:""}async getIdToken(e={}){const n=await this.sessionManager.getSession({...e,scopes:new Set(["openid"])});var s;return(s=n==null?void 0:n.providerInfo.idToken)!==null&&s!==void 0?s:""}async getBackstageIdentity(e={}){const n=await this.sessionManager.getSession(e);return n==null?void 0:n.backstageIdentity}async getProfile(e={}){const n=await this.sessionManager.getSession(e);return n==null?void 0:n.profile}static normalizeScopes(e,n){if(!n)return new Set;const s=Array.isArray(n)?n:n.split(/[\s|,]/).filter(Boolean);return new Set(e(s))}constructor(e){(0,b._)(this,"sessionManager",void 0),(0,b._)(this,"scopeTransform",void 0),this.sessionManager=e.sessionManager,this.scopeTransform=e.scopeTransform}}const sn={id:"google",title:"Google",icon:()=>null},Re="https://www.googleapis.com/auth/";class en{static create(e){const{configApi:n,discoveryApi:s,oauthRequestApi:a,environment:l="development",provider:C=sn,defaultScopes:x=["openid",`${Re}userinfo.email`,`${Re}userinfo.profile`]}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:a,provider:C,environment:l,defaultScopes:x,scopeTransform(j){return j.map($=>$==="openid"?$:$==="profile"||$==="email"?`${Re}userinfo.${$}`:$.startsWith(Re)?$:`${Re}${$}`)}})}}const an={id:"microsoft",title:"Microsoft",icon:()=>null};class ie{static create(e){return new ie(e)}microsoftGraph(){return this.oauth2[ie.MicrosoftGraphID]}static resourceForScopes(e){const n=[...new Set(e.split(" ").map(ie.resourceForScope).filter(l=>l!=="openid"))];if(n.length>1)return Promise.reject(new Error(`Requested access token with scopes from multiple Azure resources: ${n.join(", ")}. Access tokens can only have a single audience.`));var s;const a=(s=n[0])!==null&&s!==void 0?s:ie.MicrosoftGraphID;return Promise.resolve(a)}static resourceForScope(e){var n;const s=(n=e.match(RegExp("^(?<resourceURI>.*)\\/(?<scp>[^\\/]*)$")))===null||n===void 0?void 0:n.groups;if(s){const{resourceURI:a}=s;return a.replace(/^api:\/\//,"")}switch(e){case"email":case"openid":case"offline_access":case"profile":return"openid";default:return ie.MicrosoftGraphID}}async getAccessToken(e,n){const s=e===void 0?ie.MicrosoftGraphID:await ie.resourceForScopes(Array.isArray(e)?e.join(" "):e);return s in this.oauth2||(this.oauth2[s]=se.create({configApi:this.configApi,discoveryApi:this.discoveryApi,oauthRequestApi:this.oauthRequestApi,provider:this.provider,environment:this.environment,scopeTransform:this.scopeTransform})),this.oauth2[s].getAccessToken(e,n)}getIdToken(e){return this.microsoftGraph().getIdToken(e)}getProfile(e){return this.microsoftGraph().getProfile(e)}getBackstageIdentity(e){return this.microsoftGraph().getBackstageIdentity(e)}signIn(){return this.microsoftGraph().signIn()}signOut(){return this.microsoftGraph().signOut()}sessionState$(){return this.microsoftGraph().sessionState$()}constructor(e){(0,b._)(this,"oauth2",void 0),(0,b._)(this,"configApi",void 0),(0,b._)(this,"environment",void 0),(0,b._)(this,"provider",void 0),(0,b._)(this,"oauthRequestApi",void 0),(0,b._)(this,"discoveryApi",void 0),(0,b._)(this,"scopeTransform",void 0);const{configApi:n,environment:s="development",provider:a=an,oauthRequestApi:l,discoveryApi:C,defaultScopes:x=["openid","offline_access","profile","email","User.Read"],scopeTransform:j=$=>$.concat("offline_access")}=e;this.configApi=n,this.environment=s,this.provider=a,this.oauthRequestApi=l,this.discoveryApi=C,this.scopeTransform=j,this.oauth2={[ie.MicrosoftGraphID]:se.create({configApi:this.configApi,discoveryApi:this.discoveryApi,oauthRequestApi:this.oauthRequestApi,provider:this.provider,environment:this.environment,scopeTransform:this.scopeTransform,defaultScopes:x})}}}(0,b._)(ie,"MicrosoftGraphID","00000003-0000-0000-c000-000000000000");const Ze={id:"github",title:"GitHub",icon:()=>null};class ze{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=Ze,oauthRequestApi:C,defaultScopes:x=["read:user"]}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a,defaultScopes:x})}}const we={id:"okta",title:"Okta",icon:()=>null},$e=new Set(["openid","profile","email","phone","address","groups","offline_access"]),Ne="okta.";class U{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=we,oauthRequestApi:C,defaultScopes:x=["openid","email","profile","offline_access"]}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a,defaultScopes:x,scopeTransform(j){return j.map($=>$e.has($)||$.startsWith(Ne)?$:`${Ne}${$}`)}})}}const f={id:"gitlab",title:"GitLab",icon:()=>null};class L{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=f,oauthRequestApi:C,defaultScopes:x=["read_user"]}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a,defaultScopes:x})}}const N={id:"onelogin",title:"onelogin",icon:()=>null},rt=new Set(["openid","profile","email","phone","address","groups","offline_access"]),wt="onelogin.";class Rt{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=N,oauthRequestApi:C}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a,defaultScopes:["openid","email","profile","offline_access"],scopeTransform(x){return x.map(j=>rt.has(j)||j.startsWith(wt)?j:`${wt}${j}`)}})}}const ae={id:"bitbucket",title:"Bitbucket",icon:()=>null};class ee{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=ae,oauthRequestApi:C,defaultScopes:x=["account"]}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a,defaultScopes:x})}}const Kt={id:"bitbucketServer",title:"Bitbucket Server",icon:()=>null};class Ut{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=Kt,oauthRequestApi:C,defaultScopes:x=["PROJECT_ADMIN"]}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a,defaultScopes:x})}}const ge={id:"atlassian",title:"Atlassian",icon:()=>null};class Me{static create(e){const{configApi:n,discoveryApi:s,environment:a="development",provider:l=ge,oauthRequestApi:C}=e;return se.create({configApi:n,discoveryApi:s,oauthRequestApi:C,provider:l,environment:a})}}var kt=t(42380),oe=t(96727),de=t(6542),Mn=t(78847),mo=t(86386),Bn=t(58513);const Un=(0,Lt.T)({id:"core.storage"});var Fn=t(85094),ve=t(77186);const Be=(0,Lt.T)({id:"core.oauthrequest"});var yo=t(98988),Qe=t(41385),Eo=t(96279),$n=t.n(Eo),xo=t(9571),Qt=t(30195),Je=t(51261);const ln=Qt.z.lazy(()=>Qt.z.object({rule:Qt.z.string(),resourceType:Qt.z.string(),params:Qt.z.record(Qt.z.any()).optional()}).or(Qt.z.object({anyOf:Qt.z.array(ln).nonempty()})).or(Qt.z.object({allOf:Qt.z.array(ln).nonempty()})).or(Qt.z.object({not:ln}))),Co=Qt.z.object({result:Qt.z.literal(Je.r.ALLOW).or(Qt.z.literal(Je.r.DENY))}),Ao=Qt.z.union([Qt.z.object({result:Qt.z.literal(Je.r.ALLOW).or(Qt.z.literal(Je.r.DENY))}),Qt.z.object({result:Qt.z.literal(Je.r.CONDITIONAL),pluginId:Qt.z.string(),resourceType:Qt.z.string(),conditions:ln})]),So=(r,e)=>Qt.z.object({items:Qt.z.array(Qt.z.intersection(Qt.z.object({id:Qt.z.string()}),r)).refine(n=>n.length===e.size&&n.every(({id:s})=>e.has(s)),{message:"Items in response do not match request"})});class Nn{async authorize(e,n){return this.makeRequest(e,Co,n)}async authorizeConditional(e,n){return this.makeRequest(e,Ao,n)}async makeRequest(e,n,s){if(!this.enabled)return e.map(J=>({result:Je.r.ALLOW}));const a={items:e.map(J=>({id:xo.Z(),...J}))},l=await this.discovery.getBaseUrl("permission"),C=await $n()(`${l}/authorize`,{method:"POST",body:JSON.stringify(a),headers:{...this.getAuthorizationHeader(s==null?void 0:s.token),"content-type":"application/json"}});if(!C.ok)throw await Qe.V.fromResponse(C);const x=await C.json(),$=So(n,new Set(a.items.map(({id:J})=>J))).parse(x).items.reduce((J,nt)=>(J[nt.id]=nt,J),{});return a.items.map(J=>$[J.id])}getAuthorizationHeader(e){return e?{Authorization:`Bearer ${e}`}:{}}constructor(e){(0,b._)(this,"enabled",void 0),(0,b._)(this,"discovery",void 0),this.discovery=e.discovery;var n;this.enabled=(n=e.config.getOptionalBoolean("permission.enabled"))!==null&&n!==void 0?n:!1}}class xn{static create(e){const{config:n,discovery:s,identity:a}=e,l=new Nn({discovery:s,config:n});return new xn(l,a)}async authorize(e){return(await this.permissionClient.authorize([e],await this.identityApi.getCredentials()))[0]}constructor(e,n){(0,b._)(this,"permissionClient",void 0),(0,b._)(this,"identityApi",void 0),this.permissionClient=e,this.identityApi=n}}const bo=[(0,kt.n)({api:oe.N,deps:{configApi:de.D},factory:({configApi:r})=>Y.compile(`${r.getString("backend.baseUrl")}/api/{{ pluginId }}`)}),(0,kt.n)({api:Mn.$,deps:{},factory:()=>new it}),(0,kt.n)({api:mo.v,deps:{},factory:()=>new mt}),(0,kt.n)({api:Bn.V,deps:{alertApi:Mn.$},factory:({alertApi:r})=>{const e=new ft(r,new Ot);return ct.forward(e,{hidden:!1}),e}}),(0,kt.n)({api:Un,deps:{errorApi:Bn.V},factory:({errorApi:r})=>at.create({errorApi:r})}),(0,kt.n)({api:Fn.g,deps:{configApi:de.D,identityApi:ve.$,discoveryApi:oe.N},factory:({configApi:r,identityApi:e,discoveryApi:n})=>G({middleware:[pt.resolvePluginProtocol({discoveryApi:n}),pt.injectIdentityAuth({identityApi:e,config:r})]})}),(0,kt.n)({api:Be,deps:{},factory:()=>new ot}),(0,kt.n)({api:Te,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>en.create({configApi:n,discoveryApi:r,oauthRequestApi:e,environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:jt,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>ie.create({configApi:n,discoveryApi:r,oauthRequestApi:e,environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:pe,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>ze.create({configApi:n,discoveryApi:r,oauthRequestApi:e,defaultScopes:["read:user"],environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:le,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>U.create({configApi:n,discoveryApi:r,oauthRequestApi:e,environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:_t,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>L.create({configApi:n,discoveryApi:r,oauthRequestApi:e,environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:Vt,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>Rt.create({configApi:n,discoveryApi:r,oauthRequestApi:e,environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:Oe,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>ee.create({configApi:n,discoveryApi:r,oauthRequestApi:e,defaultScopes:["account"],environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:ke,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>Ut.create({configApi:n,discoveryApi:r,oauthRequestApi:e,defaultScopes:["REPO_READ"]})}),(0,kt.n)({api:xe,deps:{discoveryApi:oe.N,oauthRequestApi:Be,configApi:de.D},factory:({discoveryApi:r,oauthRequestApi:e,configApi:n})=>Me.create({configApi:n,discoveryApi:r,oauthRequestApi:e,environment:n.getOptionalString("auth.environment")})}),(0,kt.n)({api:yo.R,deps:{discovery:oe.N,identity:ve.$,config:de.D},factory:({config:r,discovery:e,identity:n})=>xn.create({config:r,discovery:e,identity:n})})];var Wn=t(43642),Oo=t(80079),Zn=t(90941),kn=t(32915),Cn=t(40562),wo=t(21853),Po=t(60744),To=t(66569),Ro=t(30254),Io=t(13384),zn=t(15933),Do=t(58838),Lo=t(86737),Kn=t(4989),Hn=t(44407),jo=t(18628),An=t(84219),Sn=t(98685),Mo=t(39781),Gn=t(62607),Vn=t(78258);const Bo={brokenImage:Oo.Z,catalog:jo.Z,scaffolder:kn.Z,techdocs:Cn.Z,search:wo.Z,chat:Po.Z,dashboard:To.Z,docs:Ro.Z,email:Io.Z,github:Do.Z,group:An.Z,help:Lo.Z,"kind:api":zn.Z,"kind:component":Hn.Z,"kind:domain":Wn.Z,"kind:group":An.Z,"kind:location":Kn.Z,"kind:system":Zn.Z,"kind:user":Sn.Z,"kind:resource":Gn.Z,"kind:template":Vn.Z,user:Sn.Z,warning:Mo.Z};var Uo=t(87561),Fo=t(12536),Yn=t(19219),$o=t(41547),No=t(3493),Wo=t(81887);const Zo=(0,Fo.Z)({productionPrefix:"jss4-"});function cn(r){const{children:e,theme:n,noCssBaseline:s=!1}=r,a=n.getTheme("v4"),l=n.getTheme("v5");let C;s||(C=(0,i.jsx)(Uo.ZP,{}));let x=(0,i.jsxs)(i.Fragment,{children:[C,e]});return a&&(x=(0,i.jsx)(Yn.ZP,{generateClassName:Zo,children:(0,i.jsx)($o.Z,{theme:a,children:x})})),l&&(x=(0,i.jsx)(No.Z,{injectFirst:!0,children:(0,i.jsx)(Wo.Z,{theme:l,children:x})})),x}const Qn={light:{type:"light",mode:"light",background:{default:"#F8F8F8",paper:"#FFFFFF"},status:{ok:"#1DB954",warning:"#FF9800",error:"#E22134",running:"#1F5493",pending:"#FFED51",aborted:"#757575"},bursts:{fontColor:"#FEFEFE",slackChannelText:"#ddd",backgroundColor:{default:"#7C3699"},gradient:{linear:"linear-gradient(-137deg, #4BB8A5 0%, #187656 100%)"}},primary:{main:"#1F5493"},banner:{info:"#2E77D0",error:"#E22134",text:"#FFFFFF",link:"#000000",closeButtonColor:"#FFFFFF",warning:"#FF9800"},border:"#E6E6E6",textContrast:"#000000",textVerySubtle:"#DDD",textSubtle:"#6E6E6E",highlight:"#FFFBCC",errorBackground:"#FFEBEE",warningBackground:"#F59B23",infoBackground:"#ebf5ff",errorText:"#CA001B",infoText:"#004e8a",warningText:"#000000",linkHover:"#2196F3",link:"#0A6EBE",gold:"#FFD600",navigation:{background:"#171717",indicator:"#9BF0E1",color:"#b5b5b5",selectedColor:"#FFF",navItem:{hoverBackground:"#404040"},submenu:{background:"#404040"}},pinSidebarButton:{icon:"#181818",background:"#BDBDBD"},tabbar:{indicator:"#9BF0E1"}},dark:{type:"dark",mode:"dark",background:{default:"#333333",paper:"#424242"},status:{ok:"#71CF88",warning:"#FFB84D",error:"#F84C55",running:"#3488E3",pending:"#FEF071",aborted:"#9E9E9E"},bursts:{fontColor:"#FEFEFE",slackChannelText:"#ddd",backgroundColor:{default:"#7C3699"},gradient:{linear:"linear-gradient(-137deg, #4BB8A5 0%, #187656 100%)"}},primary:{main:"#9CC9FF",dark:"#82BAFD"},secondary:{main:"#FF88B2"},banner:{info:"#2E77D0",error:"#E22134",text:"#FFFFFF",link:"#000000",closeButtonColor:"#FFFFFF",warning:"#FF9800"},border:"#E6E6E6",textContrast:"#FFFFFF",textVerySubtle:"#727272",textSubtle:"#CCCCCC",highlight:"#FFFBCC",errorBackground:"#FFEBEE",warningBackground:"#F59B23",infoBackground:"#ebf5ff",errorText:"#CA001B",infoText:"#004e8a",warningText:"#000000",linkHover:"#82BAFD",link:"#9CC9FF",gold:"#FFD600",navigation:{background:"#424242",indicator:"#9BF0E1",color:"#b5b5b5",selectedColor:"#FFF",navItem:{hoverBackground:"#404040"},submenu:{background:"#404040"}},pinSidebarButton:{icon:"#404040",background:"#BDBDBD"},tabbar:{indicator:"#9BF0E1"}}};var Pt=t(88412),ue=t(52475),he=t(80956),ko=t(73689),cr=t(93606);const p={wave:`url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='1368' height='400' fill='none'%3e%3cmask id='a' width='1368' height='401' x='0' y='0' maskUnits='userSpaceOnUse'%3e%3cpath fill='url(%23paint0_linear)' d='M437 116C223 116 112 0 112 0h1256v400c-82 0-225-21-282-109-112-175-436-175-649-175z'/%3e%3cpath fill='url(%23paint1_linear)' d='M1368 400V282C891-29 788 40 711 161 608 324 121 372 0 361v39h1368z'/%3e%3cpath fill='url(%23paint2_linear)' d='M1368 244v156H0V94c92-24 198-46 375 0l135 41c176 51 195 109 858 109z'/%3e%3cpath fill='url(%23paint3_linear)' d='M1252 400h116c-14-7-35-14-116-16-663-14-837-128-1013-258l-85-61C98 28 46 8 0 0v400h1252z'/%3e%3c/mask%3e%3cg mask='url(%23a)'%3e%3cpath fill='white' d='M-172-98h1671v601H-172z'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient id='paint0_linear' x1='602' x2='1093.5' y1='-960.5' y2='272' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint1_linear' x1='482' x2='480' y1='1058.5' y2='70.5' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint2_linear' x1='424' x2='446.1' y1='-587.5' y2='274.6' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint3_linear' x1='587' x2='349' y1='-1120.5' y2='341' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e")`,wave2:`url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='1368' height='400' fill='none'%3e%3cmask id='a' width='1764' height='479' x='-229' y='-6' maskUnits='userSpaceOnUse'%3e%3cpath fill='url(%23paint0_linear)' d='M0 400h1350C1321 336 525 33 179-2c-345-34-395 236-408 402H0z'/%3e%3cpath fill='url(%23paint1_linear)' d='M1378 177v223H0V217s219 75 327 52C436 246 717-35 965 45s254 144 413 132z'/%3e%3cpath fill='url(%23paint2_linear)' d='M26 400l-78-16c-170 205-44-6-137-30l-4-1 4 1 137 30c37-45 89-110 159-201 399-514-45 238 1176-50 275-65 354-39 91 267H26z'/%3e%3c/mask%3e%3cg mask='url(%23a)'%3e%3cpath fill='white' d='M0 0h1368v400H0z'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient id='paint0_linear' x1='431' x2='397.3' y1='-599' y2='372.8' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint1_linear' x1='236.5' x2='446.6' y1='-586' y2='381.5' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint2_linear' x1='851.8' x2='640.4' y1='-867.2' y2='363.7' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e")`,round:`url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='1368' height='400' fill='none'%3e%3cmask id='a' width='2269' height='1408' x='-610' y='-509' maskUnits='userSpaceOnUse'%3e%3ccircle cx='1212.8' cy='74.8' r='317.5' fill='url(%23paint0_linear)' transform='rotate(-52 1213 75)'/%3e%3ccircle cx='737.8' cy='445.8' r='317.5' fill='url(%23paint1_linear)' transform='rotate(-116 738 446)'/%3e%3ccircle cx='601.8' cy='52.8' r='418.6' fill='url(%23paint2_linear)' transform='rotate(-117 602 53)'/%3e%3ccircle cx='999.8' cy='364' r='389.1' fill='url(%23paint3_linear)' transform='rotate(31 1000 364)'/%3e%3cellipse cx='-109.2' cy='263.5' fill='url(%23paint4_linear)' rx='429.2' ry='465.8' transform='rotate(-85 -109 264)'/%3e%3c/mask%3e%3cg mask='url(%23a)'%3e%3cpath fill='white' d='M0 0h1368v400H0z'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient id='paint0_linear' x1='1301.2' x2='161.4' y1='-1879.7' y2='-969.6' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint1_linear' x1='826.2' x2='-313.6' y1='-1508.7' y2='-598.6' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint2_linear' x1='718.4' x2='-784.3' y1='-2524' y2='-1324.2' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint3_linear' x1='1108.2' x2='-288.6' y1='-2031.1' y2='-915.9' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3clinearGradient id='paint4_linear' x1='10.4' x2='-1626.5' y1='-2603.8' y2='-1399.5' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='white'/%3e%3cstop offset='1' stop-color='white' stop-opacity='0'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e")`},R={darkGrey:["#171717","#383838"],marineBlue:["#006D8F","#0049A1"],veryBlue:["#0027AF","#270094"],rubyRed:["#98002B","#8D1134"],toastyOrange:["#BE2200","#A41D00"],purpleSky:["#8912CA","#3E00EA"],eveningSea:["#00FFF2","#035355"],teal:["#005B4B"],pinkSea:["#C8077A","#C2297D"],greens:["#4BB8A5","#187656"]};function B(r){const{colors:e,shape:n,options:s}=r,l=`linear-gradient(90deg, ${(e.length===1?[e[0],e[0]]:e).join(", ")})`,C=`${n}, ${l}`;var x;const j=(x=s==null?void 0:s.fontColor)!==null&&x!==void 0?x:"#FFFFFF";return{colors:e,shape:n,backgroundImage:C,fontColor:j}}const F={home:B({colors:R.teal,shape:p.wave}),documentation:B({colors:R.pinkSea,shape:p.wave2}),tool:B({colors:R.purpleSky,shape:p.round}),service:B({colors:R.marineBlue,shape:p.wave}),website:B({colors:R.veryBlue,shape:p.wave}),library:B({colors:R.rubyRed,shape:p.wave}),other:B({colors:R.darkGrey,shape:p.wave}),app:B({colors:R.toastyOrange,shape:p.wave}),apis:B({colors:R.teal,shape:p.wave2}),card:B({colors:R.greens,shape:p.wave})},X=16,_='"Helvetica Neue", Helvetica, Roboto, Arial, sans-serif',dt="home";function St(r){const{palette:e,htmlFontSize:n=X,fontFamily:s=_,defaultPageTheme:a=dt,pageTheme:l=F,typography:C}=r;if(!l[a])throw new Error(`${a} is not defined in pageTheme.`);const x={htmlFontSize:n,fontFamily:s,h1:{fontSize:54,fontWeight:700,marginBottom:10},h2:{fontSize:40,fontWeight:700,marginBottom:8},h3:{fontSize:32,fontWeight:700,marginBottom:6},h4:{fontWeight:700,fontSize:28,marginBottom:6},h5:{fontWeight:700,fontSize:24,marginBottom:4},h6:{fontWeight:700,fontSize:20,marginBottom:2}};return{palette:e,typography:C!=null?C:x,page:l[a],getPageTheme:({themeId:j})=>{var $;return($=l[j])!==null&&$!==void 0?$:l[a]}}}var It=t(32442);const $t={MuiCssBaseline:{styleOverrides:r=>({html:{height:"100%",fontFamily:r.typography.fontFamily},body:{height:"100%",fontFamily:r.typography.fontFamily,overscrollBehaviorY:"none",fontSize:"0.875rem",lineHeight:1.43},a:{color:"inherit",textDecoration:"none"}})},MuiGrid:{defaultProps:{spacing:2}},MuiSwitch:{defaultProps:{color:"primary"}},MuiTableRow:{styleOverrides:{root:({theme:r})=>({"&:nth-of-type(odd)":{backgroundColor:r.palette.background.default}}),hover:{"&:hover":{cursor:"pointer"}},head:({theme:r})=>({"&:nth-of-type(odd)":{backgroundColor:r.palette.background.paper}})}},MuiTableCell:{styleOverrides:{root:({theme:r})=>({wordBreak:"break-word",overflow:"hidden",verticalAlign:"middle",lineHeight:"1",margin:0,padding:r.spacing(3,2,3,2.5),borderBottom:0}),sizeSmall:({theme:r})=>({padding:r.spacing(1.5,2,1.5,2.5)}),head:({theme:r})=>({wordBreak:"break-word",overflow:"hidden",color:r.palette.textSubtle,fontWeight:"normal",lineHeight:"1"})}},MuiTabs:{styleOverrides:{root:{minHeight:24}}},MuiTab:{styleOverrides:{root:({theme:r})=>({color:r.palette.link,minHeight:24,textTransform:"initial",letterSpacing:"0.07em","&:hover":{color:(0,It._j)(r.palette.link,.3),background:(0,It.$n)(r.palette.link,.95)},[r.breakpoints.up("md")]:{minWidth:120,fontSize:r.typography.pxToRem(14),fontWeight:500}}),textColorPrimary:({theme:r})=>({color:r.palette.link})}},MuiTableSortLabel:{styleOverrides:{root:{color:"inherit","&:hover":{color:"inherit"},"&:focus":{color:"inherit"},"&.Mui-active":{fontWeight:"bold",color:"inherit"}}}},MuiListItemText:{styleOverrides:{dense:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}},MuiButton:{styleOverrides:{text:{padding:void 0}}},MuiChip:{styleOverrides:{root:({theme:r})=>({marginRight:r.spacing(1),marginBottom:r.spacing(1)}),label:({theme:r})=>({lineHeight:r.spacing(2.5),fontWeight:r.typography.fontWeightMedium,fontSize:r.spacing(1.75)}),labelSmall:({theme:r})=>({fontSize:r.spacing(1.5)}),deleteIcon:({theme:r})=>({width:r.spacing(3),height:r.spacing(3),margin:r.spacing(0,.75,0,-.75)}),deleteIconSmall:({theme:r})=>({width:r.spacing(2),height:r.spacing(2),margin:r.spacing(0,.5,0,-.5)})}},MuiCard:{styleOverrides:{root:{display:"flex",flexDirection:"column"}}},MuiCardHeader:{styleOverrides:{root:{paddingBottom:0}}},MuiCardContent:{styleOverrides:{root:{flexGrow:1,"&:last-child":{paddingBottom:void 0}}}},MuiCardActions:{styleOverrides:{root:{justifyContent:"flex-end"}}},MuiLink:{defaultProps:{underline:"hover"}},MuiPaper:{styleOverrides:{root:{backgroundImage:"unset"}}}},Jt=r=>(...e)=>{const n=e.length===0?[1]:e,s=(a,l)=>typeof a=="string"?a:l*a;return n.map(a=>{const l=s(a,r);return typeof l=="number"?`${l}px`:l}).join(" ")};function Wt(r,e){if(!e||typeof e=="string")return;const n=typeof e=="function"?e(r):e;if(n)return{"@global":n}}function Tt(r,e){if(!(!e||typeof e=="string")){if(typeof e=="object"){const n={...r},s=r.spacing(1);return typeof s=="number"&&(n.spacing=Jt(s)),Object.fromEntries(Object.entries(e).map(([a,l])=>typeof l=="function"?[a,l({theme:n})]:[a,l]))}return e}}const ce=/^&.Mui-([\w-]+)$/;function me(r){let e=r;if(!r||typeof r!="object")return e;for(const n of Object.keys(r)){const s=r[n];if(!(!s||typeof s!="object"))for(const a of Object.keys(s)){const l=a,C=l.match(ce);if(C){const[,x]=C,{[l]:j,...$}=s;j&&(e={...e,[n]:$,[x]:j})}}}return e}function Xt(r,e={}){const n={},s={};for(const a of Object.keys(e)){const l=e[a];l&&("styleOverrides"in l&&(a==="MuiCssBaseline"?n[a]=Wt(r,l.styleOverrides):n[a]=me(Tt(r,l.styleOverrides))),"defaultProps"in l&&(s[a]=l.defaultProps))}return{overrides:n,props:s}}var Mt=new WeakMap;class re{getTheme(e){return(0,Pt._)(this,Mt).get(e)}constructor(e,n){(0,ue._)(this,Mt,{writable:!0,value:new Map}),(0,he._)(this,Mt,new Map),e&&(0,Pt._)(this,Mt).set("v4",e),n&&(0,Pt._)(this,Mt).set("v5",n)}}function ye(r){const e=St(r),n={...$t,...r.components},s=(0,cr.Z)({...e,components:n}),a=Xt(s,n),l={...(0,ko.Z)(e),...a};return new re(l,s)}function Dt(r){const e=adaptV4Theme(r),n=createTheme(r);return new re(n,e)}const Ht={light:ye({palette:Qn.light}),dark:ye({palette:Qn.dark})};var qt=t(98192),Ce=t(15222);const Ie=[{id:"light",title:"Light Theme",variant:"light",icon:(0,i.jsx)(Ce.Z,{}),Provider:({children:r})=>(0,i.jsx)(cn,{theme:Ht.light,children:r})},{id:"dark",title:"Dark Theme",variant:"dark",icon:(0,i.jsx)(qt.Z,{}),Provider:({children:r})=>(0,i.jsx)(cn,{theme:Ht.dark,children:r})}];var We=t(64279),fe=t(13980),De=t.n(fe);class ne{get(e){for(const n of this.holders){const s=n.get(e);if(s)return s}}constructor(...e){(0,b._)(this,"holders",void 0),this.holders=e}}var Xe=t(29651),dn=t(68993);const dr=(0,Xe.CT)("api-context"),zo=r=>{var e;const{apis:n,children:s}=r,a=(e=(0,u.useContext)(dr))===null||e===void 0?void 0:e.atVersion(1),l=a?new ne(n,a):n;return(0,i.jsx)(dr.Provider,{value:(0,dn.E)({1:l}),children:s})};zo.propTypes={apis:De().shape({get:De().func.isRequired}).isRequired,children:De().node};var ds=t(9850),us=t.n(ds),hs=t(12782),fs=t.n(hs);const ps=/^[a-z][a-z0-9]*(?:[-_][a-z][a-z0-9]*)*$/i;function bn(r){return typeof r=="object"&&r!==null&&!Array.isArray(r)}function Ko(r){if(r===null)return"null";if(Array.isArray(r))return"array";const e=typeof r;return e==="number"&&isNaN(r)?"nan":e==="string"&&r===""?"empty-string":e}const Ue={type(r,e,n,s){return`Invalid type in config for key '${r}' in '${e}', got ${n}, wanted ${s}`},missing(r){return`Missing required config value at '${r}'`},convert(r,e,n){return`Unable to convert config value for key '${r}' in '${e}' to a ${n}`}};class un{static fromConfigs(e){return e.length===0?new un(void 0):e.reduce((n,{data:s,context:a,filteredKeys:l,deprecatedKeys:C})=>{const x=new un(s,a,n);if(x.filteredKeys=l,C)for(const{key:j,description:$}of C)console.warn(`The configuration key '${j}' of ${a} is deprecated and may be removed soon. ${$||""}`);return x},void 0)}has(e){var n;if(this.readValue(e)!==void 0)return!0;var a;return(a=(n=this.fallback)===null||n===void 0?void 0:n.has(e))!==null&&a!==void 0?a:!1}keys(){var e;const n=this.data?Object.keys(this.data):[];var s;const a=(s=(e=this.fallback)===null||e===void 0?void 0:e.keys())!==null&&s!==void 0?s:[];return[...new Set([...n,...a])]}get(e){const n=this.getOptional(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e!=null?e:"")));return n}getOptional(e){var n;const s=us()(this.readValue(e)),a=(n=this.fallback)===null||n===void 0?void 0:n.getOptional(e);if(s===void 0){if(!1)var l;return a}else if(a===void 0)return s;return fs()({},{value:a},{value:s},(C,x)=>!bn(x)||!bn(C)?x:void 0).value}getConfig(e){const n=this.getOptionalConfig(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e)));return n}getOptionalConfig(e){var n;const s=this.readValue(e),a=(n=this.fallback)===null||n===void 0?void 0:n.getOptionalConfig(e);if(bn(s))return this.copy(s,e,a);if(s!==void 0)throw new TypeError(Ue.type(this.fullKey(e),this.context,Ko(s),"object"));return a}getConfigArray(e){const n=this.getOptionalConfigArray(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e)));return n}getOptionalConfigArray(e){const n=this.readConfigValue(e,a=>{if(!Array.isArray(a))return{expected:"object-array"};for(const[l,C]of a.entries())if(!bn(C))return{expected:"object-array",value:C,key:`${e}[${l}]`};return!0});if(!n){if(!1)var s;return}return n.map((a,l)=>this.copy(a,`${e}[${l}]`))}getNumber(e){const n=this.getOptionalNumber(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e)));return n}getOptionalNumber(e){const n=this.readConfigValue(e,a=>typeof a=="number"||typeof a=="string"||{expected:"number"});if(typeof n=="number"||n===void 0)return n;const s=Number(n);if(!Number.isFinite(s))throw new Error(Ue.convert(this.fullKey(e),this.context,"number"));return s}getBoolean(e){const n=this.getOptionalBoolean(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e)));return n}getOptionalBoolean(e){const n=this.readConfigValue(e,a=>typeof a=="boolean"||typeof a=="number"||typeof a=="string"||{expected:"boolean"});if(typeof n=="boolean"||n===void 0)return n;const s=String(n).trim();if(/^(?:y|yes|true|1|on)$/i.test(s))return!0;if(/^(?:n|no|false|0|off)$/i.test(s))return!1;throw new Error(Ue.convert(this.fullKey(e),this.context,"boolean"))}getString(e){const n=this.getOptionalString(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e)));return n}getOptionalString(e){return this.readConfigValue(e,n=>typeof n=="string"&&n!==""||{expected:"string"})}getStringArray(e){const n=this.getOptionalStringArray(e);if(n===void 0)throw new Error(Ue.missing(this.fullKey(e)));return n}getOptionalStringArray(e){return this.readConfigValue(e,n=>{if(!Array.isArray(n))return{expected:"string-array"};for(const[s,a]of n.entries())if(typeof a!="string"||a==="")return{expected:"string-array",value:a,key:`${e}[${s}]`};return!0})}fullKey(e){return`${this.prefix}${this.prefix?".":""}${e}`}copy(e,n,s){const a=new un(e,this.context,s,this.fullKey(n));return a.filteredKeys=this.filteredKeys,a}readConfigValue(e,n){const s=this.readValue(e);if(s===void 0){var a;if(!1)var l;return(a=this.fallback)===null||a===void 0?void 0:a.readConfigValue(e,n)}const C=n(s);if(C!==!0){const{key:x=e,value:j=s,expected:$}=C;throw new TypeError(Ue.type(this.fullKey(x),this.context,Ko(j),$))}return s}readValue(e){const n=e?e.split("."):[];for(const a of n)if(!ps.test(a))throw new TypeError(`Invalid config key '${e}'`);if(this.data===void 0)return;let s=this.data;for(const[a,l]of n.entries())if(bn(s))s=s[l];else if(s!==void 0){const C=this.fullKey(n.slice(0,a).join("."));throw new TypeError(Ue.type(C,this.context,Ko(s),"object"))}return s}constructor(e,n="mock-config",s,a=""){(0,b._)(this,"data",void 0),(0,b._)(this,"context",void 0),(0,b._)(this,"fallback",void 0),(0,b._)(this,"prefix",void 0),(0,b._)(this,"filteredKeys",void 0),(0,b._)(this,"notifiedFilteredKeys",void 0),this.data=e,this.context=n,this.fallback=s,this.prefix=a,this.notifiedFilteredKeys=new Set}}const On="theme";class Jn{static createWithStorage(e){const n=new Jn(e);if(!window.localStorage)return n;var s;const a=(s=window.localStorage.getItem(On))!==null&&s!==void 0?s:void 0;return n.setActiveThemeId(a),n.activeThemeId$().subscribe(l=>{l?window.localStorage.setItem(On,l):window.localStorage.removeItem(On)}),window.addEventListener("storage",l=>{if(l.key===On){var C;const x=(C=localStorage.getItem(On))!==null&&C!==void 0?C:void 0;n.setActiveThemeId(x)}}),n}getInstalledThemes(){return this.themes.slice()}activeThemeId$(){return this.subject}getActiveThemeId(){return this.activeThemeId}setActiveThemeId(e){this.activeThemeId=e,this.subject.next(e)}constructor(e){(0,b._)(this,"themes",void 0),(0,b._)(this,"activeThemeId",void 0),(0,b._)(this,"subject",void 0),this.themes=e,this.subject=new et(void 0)}}var hn=t(82723);function ur(r){if(r.length<3)throw new Error(`The '${r}' feature flag must have a minimum length of three characters.`);if(r.length>150)throw new Error(`The '${r}' feature flag must not exceed 150 characters.`);if(!r.match(/^[a-z]+[a-z0-9-]+$/))throw new Error(`The '${r}' feature flag must start with a lowercase letter and only contain lowercase letters, numbers and hyphens. Examples: feature-flag-one, alpha, release-2020`)}class gs{registerFlag(e){ur(e.name),this.registeredFeatureFlags.push(e)}getRegisteredFlags(){return this.registeredFeatureFlags.slice()}isActive(e){return this.flags||(this.flags=this.load()),this.flags.get(e)===hn.C.Active}save(e){this.flags||(this.flags=this.load()),e.merge||this.flags.clear();for(const[s,a]of Object.entries(e.states))this.flags.set(s,a);const n=Array.from(this.flags.entries()).filter(([,s])=>s===hn.C.Active);window.localStorage.setItem("featureFlags",JSON.stringify(Object.fromEntries(n)))}load(){try{const e=window.localStorage.getItem("featureFlags");if(!e)return new Map;const n=JSON.parse(e);if(typeof n!="object"||n===null||Array.isArray(n))return new Map;const s=Object.entries(n).filter(([a,l])=>(ur(a),l===hn.C.Active));return new Map(s)}catch{return new Map}}constructor(){(0,b._)(this,"registeredFeatureFlags",[]),(0,b._)(this,"flags",void 0)}}const Xn=(0,Lt.T)({id:"core.apptheme"}),hr=(0,Lt.T)({id:"core.applanguage"});var vs=t(96253);class Ho{static validateFactories(e,n){for(const s of n){const a=[s],l=new Set;for(;a.length;){const C=a.shift(),x=e.get(C);if(x)for(const j of Object.values(x.deps)){if(j.id===s.id)throw new Error(`Circular dependency of api factory for ${s}`);l.has(j)||(l.add(j),a.push(j))}}}}get(e){return this.load(e)}load(e,n=[]){const s=this.apis.get(e.id);if(s)return s;const a=this.factories.get(e);if(!a)return;if(n.includes(a.api))throw new Error(`Circular dependency of api factory for ${a.api}`);const l=this.loadDeps(e,a.deps,[...n,a.api]),C=a.factory(l);return this.apis.set(e.id,C),C}loadDeps(e,n,s){const a={};for(const l in n)if(n.hasOwnProperty(l)){const C=n[l],x=this.load(C,s);if(!x)throw new Error(`No API factory available for dependency ${C} of dependent ${e}`);a[l]=x}return a}constructor(e){(0,b._)(this,"factories",void 0),(0,b._)(this,"apis",void 0),this.factories=e,this.apis=new Map}}var Go;(function(r){r[r.default=10]="default",r[r.app=50]="app",r[r.static=100]="static"})(Go||(Go={}));class ms{register(e,n){const s=Go[e],a=this.factories.get(n.api.id);return a&&a.priority>=s?!1:(this.factories.set(n.api.id,{priority:s,factory:n}),!0)}get(e){const n=this.factories.get(e.id);if(n)return n.factory}getAllApis(){const e=new Set;for(const{factory:n}of this.factories.values())e.add(n.api);return e}constructor(){(0,b._)(this,"factories",new Map)}}function ys(r){const e={};for(const s in r.collectors)r.collectors.hasOwnProperty(s)&&(e[s]=r.collectors[s]());const n=[{node:u.Children.toArray(r.root),parent:void 0,contexts:{}}];for(;n.length!==0;){const{node:s,parent:a,contexts:l}=n.shift();u.Children.forEach(s,C=>{if(!(0,u.isValidElement)(C))return;const x={};for(const j in e)if(e.hasOwnProperty(j)){const $=e[j];x[j]=$.visit($.accumulator,C,a,l[j])}for(const j of r.discoverers){const $=j(C);$&&n.push({node:$,parent:C,contexts:x})}})}return Object.fromEntries(Object.entries(e).map(([s,a])=>[s,a.accumulator]))}function _n(r,e){return()=>({accumulator:r(),visit:e})}function Es(r){var e;return(e=r.props)===null||e===void 0?void 0:e.children}function xs(r){var e,n;if(!((e=r.props)===null||e===void 0)&&e.path&&(!((n=r.props)===null||n===void 0)&&n.element)){var s;return(s=r.props)===null||s===void 0?void 0:s.element}}var Pe=t(62584);const Cs=_n(()=>new Set,(r,e)=>{const n=(0,Pe.I)(e,"core.plugin");n&&r.add(n)});var wn=t(44394);const fr=r=>{const{children:e}=r,n=(0,wn.h_)(hn.W),s="with"in r?n.isActive(r.with):!n.isActive(r.without);return(0,i.jsx)(i.Fragment,{children:s?e:null})};(0,Pe.R)(fr,"core.featureFlagged",!0);const qn={caseSensitive:!1,path:"*",element:"match-all",routeRefs:new Set,plugins:new Set};function to(r){const e=r;if(e!=null&&e.type){var n,s;return(s=(n=e.type.displayName)!==null&&n!==void 0?n:e.type.name)!==null&&s!==void 0?s:String(e.type)}return String(e)}const pr=r=>{const e=new Set;return r&&e.add(r),e};function gr(r,e=new Array){return u.Children.forEach(r,n=>{if(!(0,u.isValidElement)(n))return;const s=(0,Pe.I)(n,"core.mountPoint");if(s){const a=(0,Pe.I)(n,"core.plugin");e.push({routeRef:s,plugin:a})}gr(n.props.children,e)}),e}const As=_n(()=>({paths:new Map,parents:new Map,objects:new Array}),(r,e,n,s)=>{var a,l;if(s!=null&&s.isElementAncestor)return s;if((n==null?void 0:n.props.element)===e)return{...s,isElementAncestor:!0};const C=(a=e.props)===null||a===void 0?void 0:a.path,x=(0,Pe.I)(e,"core.mountPoint");if(x&&C)throw new Error(`Path property may not be set directly on a routable extension "${to(e)}"`);var j;const $=(j=s==null||(l=s.obj)===null||l===void 0?void 0:l.children)!==null&&j!==void 0?j:r.objects;if(C!==void 0){if(typeof C!="string")throw new Error(`Element path must be a string at "${to(e)}"`);const bt=C.startsWith("/")?C.slice(1):C,Zt=e.props.element;if((0,Pe.I)(e,"core.gatherMountPoints")){var J;if(Zt)throw new Error(`Mount point gatherers may not have an element prop "${to(e)}"`);const Gt={path:bt,element:"gathered",routeRefs:new Set,caseSensitive:Boolean((J=e.props)===null||J===void 0?void 0:J.caseSensitive),children:[qn],plugins:new Set};return $.push(Gt),{obj:Gt,gatherPath:bt,routeRef:s==null?void 0:s.routeRef,gatherRouteRef:s==null?void 0:s.routeRef}}if(Zt){var nt;const[Gt,...te]=gr(Zt);if(te.length>0)throw new Error(`Route element with path "${C}" may not contain multiple routable extensions`);if(!Gt)return s;const{routeRef:Ee,plugin:Ge}=Gt,jn={path:bt,element:"mounted",routeRefs:new Set([Ee]),caseSensitive:Boolean((nt=e.props)===null||nt===void 0?void 0:nt.caseSensitive),children:[qn],plugins:pr(Ge)};return $.push(jn),r.paths.set(Ee,bt),r.parents.set(Ee,s==null?void 0:s.routeRef),{obj:jn,routeRef:Ee!=null?Ee:s==null?void 0:s.routeRef,gatherPath:bt,gatherRouteRef:s==null?void 0:s.gatherRouteRef}}}if(x){var ut;if((s==null?void 0:s.gatherPath)===void 0)throw new Error(`Routable extension "${to(e)}" with mount point "${x}" must be assigned a path`);s==null||(ut=s.obj)===null||ut===void 0||ut.routeRefs.add(x);const bt=(0,Pe.I)(e,"core.plugin");if(bt){var yt;s==null||(yt=s.obj)===null||yt===void 0||yt.plugins.add(bt)}return r.paths.set(x,s.gatherPath),r.parents.set(x,s==null?void 0:s.gatherRouteRef),{...s,routeRef:x}}return s}),Ss=_n(()=>({paths:new Map,parents:new Map,objects:new Array}),(r,e,n,s)=>{var a,l,C;if((n==null?void 0:n.props.element)===e)return s;let x=s==null?void 0:s.obj,j=s==null?void 0:s.routeRef,$=s==null?void 0:s.sticky;const J=(a=e.props)===null||a===void 0?void 0:a.path;var nt;const ut=(nt=x==null?void 0:x.children)!==null&&nt!==void 0?nt:r.objects,yt=Boolean((l=e.props)===null||l===void 0?void 0:l.caseSensitive);let bt=s==null?void 0:s.path;if((0,Pe.I)(e,"core.gatherMountPoints")){if(!J)throw new Error("Mount point gatherer must have a path");bt=J}const Zt=(C=e.props)===null||C===void 0?void 0:C.element;let Gt=(0,Pe.I)(e,"core.mountPoint");if(!Gt&&(0,u.isValidElement)(Zt)&&(Gt=(0,Pe.I)(Zt,"core.mountPoint")),Gt){let Ge=J;if(bt&&(Ge?bt=void 0:Ge=bt),!Ge)throw new Error("Mounted routable extension must have a path");r.paths.set(Gt,Ge),j&&$?(r.parents.set(Gt,j),J&&(j=Gt,$=!1)):(r.parents.set(Gt,j),j=Gt),J?(x={caseSensitive:yt,path:J,element:"mounted",routeRefs:new Set([Gt]),children:[qn],plugins:pr((0,Pe.I)(e.props.element,"core.plugin"))},ut.push(x)):x==null||x.routeRefs.add(Gt)}if((0,Pe.I)(e,"core.gatherMountPoints")&&($=!0),(0,Pe.I)(e,"core.gatherMountPoints")){if(!J)throw new Error("Mount point gatherer must have a path");if(!Gt){var Ee;x={caseSensitive:yt,path:J,element:"gathered",routeRefs:new Set,children:[qn],plugins:(s==null||(Ee=s.obj)===null||Ee===void 0?void 0:Ee.plugins)||new Set},ut.push(x)}}return{obj:x,path:bt,routeRef:j,sticky:$}}),bs=_n(()=>new Set,(r,e)=>{if(e.type===fr){const n=e.props;r.add("with"in n?n.with:n.without)}});var Pn=t(84800),Os=t(96087);const Tn=(0,Os.u)("route-ref-type",()=>Symbol("route-ref-type"));function vr(r){return r[Tn]==="absolute"}function mr(r){return r[Tn]==="sub"}function ws(r){return r[Tn]==="external"}function eo(...r){const e=r.join("/").replace(/\/\/+/g,"/");return e!=="/"&&e.endsWith("/")?e.slice(0,-1):e}var Ps=t(34519),Ts=t.n(Ps);function Rs(r,e,n){let s,a="";if(vr(r))s=r;else if(mr(r))s=r.parent,a=r.path;else if(ws(r)){const x=n.get(r);if(!x)return[void 0,""];if(vr(x))s=x;else if(mr(x))s=x.parent,a=x.path;else throw new Error(`ExternalRouteRef was bound to invalid target, ${x}`)}else throw r[Tn]?new Error(`Unknown or invalid route ref type, ${r[Tn]}`):new Error(`Unknown object passed to useRouteRef, got ${r}`);if(!s)return[void 0,""];const l=e.get(s);if(l===void 0)return[void 0,""];const C=eo(l,a);return[s,C]}function Is(r,e,n,s,a){var l;const C=(l=(0,Pn.fp)(a,e))!==null&&l!==void 0?l:[],x=Array();let j=-1;for(let nt=r;nt&&(j=C.findIndex(ut=>ut.route.routeRefs.has(nt)),j===-1);nt=s.get(nt))x.unshift(nt);x.length===0&&(j-=1);const $=j===-1?"":C[j].pathname,J=x.slice(0,-1).map(nt=>{const ut=n.get(nt);if(ut===void 0)throw new Error(`No path for ${nt}`);if(ut.includes(":"))throw new Error(`Cannot route to ${r} with parent ${nt} as it has parameters`);return ut});return`${eo($,...J)}/`}class Ds{resolve(e,n){const[s,a]=Rs(e,this.routePaths,this.routeBindings);if(!s)return;let l;typeof n=="string"?l=this.trimPath(n):n.pathname?l={...n,pathname:this.trimPath(n.pathname)}:l=n;const C=this.appBasePath+Is(s,l,this.routePaths,this.routeParents,this.routeObjects);return(...[j])=>{const $=j&&Ts()(j,J=>typeof J=="string"?J.replaceAll(/[&?#;\/]/g,nt=>encodeURIComponent(nt)):J);return eo(C,(0,Pn.Gn)(a,$))}}trimPath(e){return e&&(e.startsWith(this.appBasePath)?e.slice(this.appBasePath.length):e)}constructor(e,n,s,a,l){(0,b._)(this,"routePaths",void 0),(0,b._)(this,"routeParents",void 0),(0,b._)(this,"routeObjects",void 0),(0,b._)(this,"routeBindings",void 0),(0,b._)(this,"appBasePath",void 0),this.routePaths=e,this.routeParents=n,this.routeObjects=s,this.routeBindings=a,this.appBasePath=l}}const Ls=(0,Xe.CT)("routing-context"),js=({routePaths:r,routeParents:e,routeObjects:n,routeBindings:s,basePath:a="",children:l})=>{const C=new Ds(r,e,n,s,a),x=(0,dn.E)({1:C});return(0,i.jsx)(Ls.Provider,{value:x,children:l})};function Ms(r,e){const n=new Set(e.values());n.delete(void 0);for(const s of e.keys()){if(n.has(s))continue;let a=s,l="";for(;a;){const x=r.get(a);if(x===void 0)throw new Error(`No path for ${a}`);l=eo(x,l),a=e.get(a)}const C=l.match(/:(\w+)/g);if(C){for(let x=0;x<C.length;x++)for(let j=x+1;j<C.length;j++)if(C[j]===C[x])throw new Error(`Parameter ${C[j]} is duplicated in path ${l}`)}}}function Bs(r,e){for(const n of e)if(n.externalRoutes){for(const[s,a]of Object.entries(n.externalRoutes))if(!a.optional&&!r.has(a))throw new Error(`External route '${s}' of the '${n.getId()}' plugin must be bound to a target route. See https://backstage.io/link?bind-routes for details.`)}}const Us=(0,Xe.CT)("app-context"),Fs=({appContext:r,children:e})=>{const n=(0,dn.E)({1:r});return(0,i.jsx)(Us.Provider,{value:n,children:e})};function yr(r){return new Error(`Tried to access IdentityApi ${r} before app was loaded`)}function Vo(r){console.warn(`WARNING: Call to ${r} is deprecated and will break in the future`)}class $s{setTarget(e,n){this.target=e,this.signOutTargetUrl=n.signOutTargetUrl,this.resolveTarget(e)}getUserId(){if(!this.target)throw yr("getUserId");if(!this.target.getUserId)throw new Error("IdentityApi does not implement getUserId");return Vo("getUserId"),this.target.getUserId()}getProfile(){if(!this.target)throw yr("getProfile");if(!this.target.getProfile)throw new Error("IdentityApi does not implement getProfile");return Vo("getProfile"),this.target.getProfile()}async getProfileInfo(){return this.waitForTarget.then(e=>e.getProfileInfo())}async getBackstageIdentity(){const e=await this.waitForTarget.then(n=>n.getBackstageIdentity());return e.userEntityRef.match(/^.*:.*\/.*$/)||console.warn(`WARNING: The App IdentityApi provided an invalid userEntityRef, '${e.userEntityRef}'. It must be a full Entity Reference of the form '<kind>:<namespace>/<name>'.`),e}async getCredentials(){return this.waitForTarget.then(e=>e.getCredentials())}async getIdToken(){return this.waitForTarget.then(e=>{if(!e.getIdToken)throw new Error("IdentityApi does not implement getIdToken");return Vo("getIdToken"),e.getIdToken()})}async signOut(){await this.waitForTarget.then(e=>e.signOut()),window.location.href=this.signOutTargetUrl}constructor(){(0,b._)(this,"target",void 0),(0,b._)(this,"waitForTarget",void 0),(0,b._)(this,"resolveTarget",()=>{}),(0,b._)(this,"signOutTargetUrl","/"),this.waitForTarget=new Promise(e=>{this.resolveTarget=e})}}var Ns=t(72164);function Ws(r,e,n){if(r!==void 0){const a=n.find(l=>l.id===r);if(a)return a}if(e){const a=n.find(l=>l.variant==="dark");if(a)return a}const s=n.find(a=>a.variant==="light");return s||n[0]}const Zs=()=>{const r=(0,u.useMemo)(()=>window.matchMedia("(prefers-color-scheme: dark)"),[]),[e,n]=(0,u.useState)(r.matches);return(0,u.useEffect)(()=>{const s=a=>{n(a.matches)};return r.addListener(s),()=>{r.removeListener(s)}},[r]),e};function Er({children:r}){const e=(0,wn.h_)(Xn),n=(0,Ns.Z)(e.activeThemeId$(),e.getActiveThemeId()),s=Boolean(window.matchMedia)?Zs():!1,a=Ws(n,s,e.getInstalledThemes());if(!a)throw new Error("App has no themes");return(0,i.jsx)(a.Provider,{children:r})}const xr=async()=>ks();function ks(r="__APP_INJECTED_RUNTIME_CONFIG__"){const e=[{context:"app-config.yaml",data:{app:{title:"Techdocs Preview App",baseUrl:"http://localhost:3000"},backend:{baseUrl:"http://localhost:3000"},techdocs:{builder:"external"}}}];if(!e)throw new Error("No static configuration provided");if(!Array.isArray(e))throw new Error("Static configuration has invalid format");const n=e.slice();if(r!=="__app_injected_runtime_config__".toLocaleUpperCase("en-US"))try{const a=JSON.parse(r);Array.isArray(a)?n.push(...a):n.push({data:a,context:"env"})}catch(a){throw new Error(`Failed to load runtime configuration, ${a}`)}const s=window.__APP_CONFIG__;return s&&n.push({context:"window",data:s}),n}class zs{add(e,n){return this.apis.push([e.id,n]),n}build(){return new fn(new Map(this.apis))}constructor(){(0,b._)(this,"apis",[])}}class fn{static builder(){return new zs}static from(e){return new fn(new Map(e.map(([n,s])=>[n.id,s])))}static with(e,n){return new fn(new Map([[e.id,n]]))}with(e,n){return new fn(new Map([...this.apis,[e.id,n]]))}get(e){return this.apis.get(e.id)}constructor(e){(0,b._)(this,"apis",void 0),this.apis=e}}function Ks(r){const e=new Map;return r&&r({bind:(s,a)=>{for(const[l,C]of Object.entries(a)){const x=s[l];if(!x)throw new Error(`Key ${l} is not an existing external route`);if(!C&&!x.optional)throw new Error(`External route ${l} is required but was undefined`);C&&e.set(x,C)}}}),e}function Rn(){const[r]=(0,m.is)((0,i.jsx)(m.AW,{index:!0,element:(0,i.jsx)("div",{})}));return!r.index}const Cr=(0,u.createContext)(void 0);var Ar=t(80851),Sr=t(62369),Hs=t(72388);const Gs=(r,e)=>{try{const n=(0,Pn.fp)(e,{pathname:r}),s=n==null?void 0:n.filter(j=>{var $;return(j==null||($=j.route.routeRefs)===null||$===void 0?void 0:$.size)>0}).pop(),a=s==null?void 0:s.route;if(!a||a.path===""&&r!=="/")return;let l;a.routeRefs.size===1&&(l=a.routeRefs.values().next().value);let C;a.plugins.size===1&&(C=a.plugins.values().next().value);const x=Object.entries((s==null?void 0:s.params)||{}).reduce((j,[$,J])=>(J!==void 0&&$!=="*"&&(j[$]=J),j),{});return{extension:"App",pluginId:(C==null?void 0:C.getId())||"root",...l?{routeRef:l.id}:{},_routeNodeType:a.element,params:x}}catch{return}},Vs=({pathname:r,search:e,hash:n,attributes:s})=>{const a=(0,Sr.z)();return(0,u.useEffect)(()=>{a.captureEvent("navigate",`${r}${e}${n}`,{attributes:s})},[a,r,e,n,s]),null},no=({routeObjects:r})=>{const{pathname:e,search:n,hash:s}=(0,m.TH)(),{params:a,...l}=Gs(e,r)||{params:{}};return(0,i.jsx)(Hs.fC,{attributes:l,children:(0,i.jsx)(Vs,{pathname:e,search:n,hash:s,attributes:a})})};function Ys(r){return Rn()?Yo(r):""}function Yo(r){var e;let{pathname:n}=new URL((e=r.getOptionalString("app.baseUrl"))!==null&&e!==void 0?e:"/","http://sample.dev");return n=n.replace(/\/*$/,""),n}function br({component:r,appIdentityProxy:e,children:n}){const[s,a]=(0,u.useState)(),l=(0,wn.h_)(de.D),C=Yo(l);return s?(e.setTarget(s,{signOutTargetUrl:C||"/"}),(0,i.jsx)(i.Fragment,{children:n})):(0,i.jsx)(r,{onSignInSuccess:a})}function Or(r){const{Router:e,SignInPage:n}=(0,Ar.q)().getComponents(),s=(0,wn.h_)(de.D),a=Yo(s),l=`${a}/*`,C=(0,u.useContext)(Cr);if(!C)throw new Error("AppRouter must be rendered within the AppProvider");const{routeObjects:x,appIdentityProxy:j}=C;return n?Rn()?(0,i.jsxs)(e,{children:[(0,i.jsx)(no,{routeObjects:x}),(0,i.jsx)(br,{component:n,appIdentityProxy:j,children:(0,i.jsx)(m.Z5,{children:(0,i.jsx)(m.AW,{path:l,element:(0,i.jsx)(i.Fragment,{children:r.children})})})})]}):(0,i.jsxs)(e,{basename:a,children:[(0,i.jsx)(no,{routeObjects:x}),(0,i.jsx)(br,{component:n,appIdentityProxy:j,children:r.children})]}):(j.setTarget({getUserId:()=>"guest",getIdToken:async()=>{},getProfile:()=>({email:"guest@example.com",displayName:"Guest"}),getProfileInfo:async()=>({email:"guest@example.com",displayName:"Guest"}),getBackstageIdentity:async()=>({type:"user",userEntityRef:"user:default/guest",ownershipEntityRefs:["user:default/guest"]}),getCredentials:async()=>({}),signOut:async()=>{}},{signOutTargetUrl:a||"/"}),Rn()?(0,i.jsxs)(e,{children:[(0,i.jsx)(no,{routeObjects:x}),(0,i.jsx)(m.Z5,{children:(0,i.jsx)(m.AW,{path:l,element:(0,i.jsx)(i.Fragment,{children:r.children})})})]}):(0,i.jsxs)(e,{basename:a,children:[(0,i.jsx)(no,{routeObjects:x}),r.children]}))}(0,Pe.R)(Or,"core.type","AppRouter");const In="language",Ke="en";var Dn=new WeakMap,pn=new WeakMap,oo=new WeakMap;class ro{static create(e){var n;const s=(n=e==null?void 0:e.availableLanguages)!==null&&n!==void 0?n:[Ke];if(s.length!==new Set(s).size)throw new Error(`Supported languages may not contain duplicates, got '${s.join("', '")}'`);if(!s.includes(Ke))throw new Error(`Supported languages must include '${Ke}'`);var a;const l=(a=e==null?void 0:e.defaultLanguage)!==null&&a!==void 0?a:Ke;if(!s.includes(l))throw new Error(`Initial language must be one of the supported languages, got '${l}'`);return new ro(s,l)}static createWithStorage(e){const n=ro.create(e);if(!window.localStorage)return n;const s=window.localStorage.getItem(In),{languages:a}=n.getAvailableLanguages();return s&&a.includes(s)&&n.setLanguage(s),n.language$().subscribe(({language:l})=>{l!==window.localStorage.getItem(In)&&window.localStorage.setItem(In,l)}),window.addEventListener("storage",l=>{if(l.key===In){var C;const x=(C=localStorage.getItem(In))!==null&&C!==void 0?C:void 0;x&&n.setLanguage(x)}}),n}getAvailableLanguages(){return{languages:(0,Pt._)(this,Dn).slice()}}setLanguage(e){const n=e!=null?e:Ke;if(n!==(0,Pt._)(this,pn)){if(n&&!(0,Pt._)(this,Dn).includes(n))throw new Error(`Failed to change language to '${n}', available languages are '${(0,Pt._)(this,Dn).join("', '")}'`);(0,he._)(this,pn,n),(0,Pt._)(this,oo).next({language:n})}}getLanguage(){return{language:(0,Pt._)(this,pn)}}language$(){return(0,Pt._)(this,oo)}constructor(e,n){(0,ue._)(this,Dn,{writable:!0,value:void 0}),(0,ue._)(this,pn,{writable:!0,value:void 0}),(0,ue._)(this,oo,{writable:!0,value:void 0}),(0,he._)(this,Dn,e),(0,he._)(this,pn,n),(0,he._)(this,oo,new et({language:(0,Pt._)(this,pn)}))}}var Fe=t(29190),nn=t(15356),Qs=t(24991),Js=t(18015),wr=t(35304);function Pr(r){return Object.fromEntries(Object.entries(r).filter(e=>e[1]!==null))}var gn=new WeakMap,so=new WeakMap,vn=new WeakMap,io=new WeakSet;class Xs{addTranslationResource(e){const n=(0,Js.W)(e);for(const s of n.resources){const a=(0,Fe._)(this,io,Qo).call(this,s.language,n.id);(0,Pt._)(this,vn).has(a)||(0,Pt._)(this,vn).set(a,s.loader)}}needsLoading(e,n){const s=(0,Fe._)(this,io,Qo).call(this,e,n);return(0,Pt._)(this,vn).get(s)?!(0,Pt._)(this,gn).has(s):!1}async load(e,n){const s=(0,Fe._)(this,io,Qo).call(this,e,n),a=(0,Pt._)(this,vn).get(s);if(!a||(0,Pt._)(this,gn).has(s))return;const l=(0,Pt._)(this,so).get(s);if(l){await l;return}const C=a().then(x=>{this.onLoad({language:e,namespace:n,messages:x.messages}),(0,Pt._)(this,gn).add(s)},x=>{throw(0,Pt._)(this,gn).add(s),x});(0,Pt._)(this,so).set(s,C),await C}constructor(e){(0,nn._)(this,io),(0,b._)(this,"onLoad",void 0),(0,ue._)(this,gn,{writable:!0,value:void 0}),(0,ue._)(this,so,{writable:!0,value:void 0}),(0,ue._)(this,vn,{writable:!0,value:void 0}),this.onLoad=e,(0,he._)(this,gn,new Set),(0,he._)(this,so,new Map),(0,he._)(this,vn,new Map)}}function Qo(r,e){return`${r}/${e}`}var Ln=new WeakMap,mn=new WeakMap,on=new WeakMap,Jo=new WeakMap,ao=new WeakMap,Tr=new WeakSet,lo=new WeakSet,Xo=new WeakSet;class _o{static create(e){const{languages:n}=e.languageApi.getAvailableLanguages(),s=(0,Qs.Fs)({fallbackLng:Ke,supportedLngs:n,interpolation:{escapeValue:!1},ns:[],defaultNS:!1,fallbackNS:!1,initImmediate:!1});if(s.init(),!s.isInitialized)throw new Error("i18next was unexpectedly not initialized");const{language:a}=e.languageApi.getLanguage();a!==Ke&&s.changeLanguage(a);const l=new Xs(j=>{s.addResourceBundle(j.language,j.namespace,Pr(j.messages),!1,!0)}),C=(e==null?void 0:e.resources)||[];for(let j=C.length-1;j>=0;j--){const $=C[j];$.$$type==="@backstage/TranslationResource"?l.addTranslationResource($):$.$$type==="@backstage/TranslationMessages"&&s.addResourceBundle(Ke,$.id,Pr($.messages),!0,!1)}const x=new _o(s,l,e.languageApi.getLanguage().language);return e.languageApi.language$().subscribe(({language:j})=>{(0,Fe._)(x,Tr,_s).call(x,j)}),x}getTranslation(e){const n=(0,wr.y)(e);return(0,Fe._)(this,Xo,Rr).call(this,n),(0,Fe._)(this,lo,qo).call(this,n)}translation$(e){const n=(0,wr.y)(e);return(0,Fe._)(this,Xo,Rr).call(this,n),new(z())(s=>{let a={};const l=()=>{a={};const x=a;(0,Pt._)(this,mn).load((0,Pt._)(this,on),n.id).then(()=>{if(x===a){const j=(0,Fe._)(this,lo,qo).call(this,n);j.ready&&s.next(j)}},j=>{x===a&&s.error(Array.isArray(j)?j[0]:j)})},C=()=>{const x=(0,Fe._)(this,lo,qo).call(this,n);x.ready?s.next(x):l()};return(0,Pt._)(this,mn).needsLoading((0,Pt._)(this,on),n.id)&&l(),(0,Pt._)(this,ao).add(C),()=>{(0,Pt._)(this,ao).delete(C)}})}constructor(e,n,s){(0,nn._)(this,Tr),(0,nn._)(this,lo),(0,nn._)(this,Xo),(0,ue._)(this,Ln,{writable:!0,value:void 0}),(0,ue._)(this,mn,{writable:!0,value:void 0}),(0,ue._)(this,on,{writable:!0,value:void 0}),(0,ue._)(this,Jo,{writable:!0,value:new Set}),(0,ue._)(this,ao,{writable:!0,value:new Set}),(0,he._)(this,Ln,e),(0,he._)(this,mn,n),(0,he._)(this,on,s)}}function _s(r){(0,Pt._)(this,on)!==r&&((0,he._)(this,on,r),(0,Pt._)(this,Ln).changeLanguage(r),(0,Pt._)(this,ao).forEach(e=>e()))}function qo(r){return(0,Pt._)(this,mn).needsLoading((0,Pt._)(this,on),r.id)?{ready:!1}:{ready:!0,t:(0,Pt._)(this,Ln).getFixedT(null,r.id)}}function Rr(r){if((0,Pt._)(this,Jo).has(r.id))return;(0,Pt._)(this,Jo).add(r.id);const e=r.getDefaultMessages();(0,Pt._)(this,Ln).addResourceBundle(Ke,r.id,e,!0,!1);const n=r.getDefaultResource();n&&(0,Pt._)(this,mn).addTranslationResource(n)}function Ir(r){const e=new URL(r);return e.protocol=document.location.protocol,e.hostname=document.location.hostname,e.port=document.location.port,e.toString().replace(/\/$/,"")}function qs(r){const e=un.fromConfigs(r),n=e.getOptionalString("app.baseUrl"),s=e.getOptionalString("backend.baseUrl");let a=r,l,C;if(n&&s){const x=new URL(n).origin,j=new URL(s).origin;if(x===j){const $=Ir(s);s!==$&&(l=$)}}if(n){const x=Ir(n);n!==x&&(C=x)}return(C||l)&&(a=a.concat({data:{app:C&&{baseUrl:C},backend:l&&{baseUrl:l}},context:"relative-resolver"})),a}function ti(r,e,n){var s;const a=Boolean(r),l=(0,We.default)(r||(()=>Promise.resolve([])));let C;if(a&&l.loading){const{Progress:$}=e;C=(0,i.jsx)($,{})}else if(l.error){const{BootErrorPage:$}=e;C=(0,i.jsx)($,{step:"load-config",error:l.error})}const{ThemeProvider:x=Er}=e;return C?{node:(0,i.jsx)(zo,{apis:fn.with(Xn,n),children:(0,i.jsx)(x,{children:C})})}:{api:un.fromConfigs(!((s=l.value)===null||s===void 0)&&s.length?qs(l.value):[])}}class ei{getPlugins(){return this.app.getPlugins()}getSystemIcon(e){return this.app.getSystemIcon(e)}getSystemIcons(){return this.app.getSystemIcons()}getComponents(){return this.app.getComponents()}constructor(e){(0,b._)(this,"app",void 0),this.app=e}}var tr=new WeakMap;class ni{getPlugins(){return Array.from(this.plugins)}getSystemIcon(e){return this.icons[e]}getSystemIcons(){return this.icons}getComponents(){return this.components}createRoot(e){const n=this.getProvider();return()=>(0,i.jsx)(n,{children:e})}getProvider(){if((0,Pt._)(this,tr))throw new Error("app.getProvider() or app.createRoot() has already been called, and can only be called once");(0,he._)(this,tr,!0);const e=new ei(this);let n=!1;return({children:a})=>{const l=(0,u.useRef)(!0),C=(0,u.useMemo)(()=>Jn.createWithStorage(this.themes),[]),{routing:x,featureFlags:j,routeBindings:$}=(0,u.useMemo)(()=>{const bt=Rn();bt&&console.warn(`
|
|
2
|
+
DEPRECATION WARNING: React Router Beta is deprecated and support for it will be removed in a future release.
|
|
3
|
+
Please migrate to use React Router v6 stable.
|
|
4
|
+
See https://backstage.io/docs/tutorials/react-router-stable-migration
|
|
5
|
+
`);const Zt=ys({root:a,discoverers:[Es,xs],collectors:{routing:bt?Ss:As,collectedPlugins:Cs,featureFlags:bs}});return Zt.collectedPlugins.forEach(Gt=>this.plugins.add(Gt)),this.verifyPlugins(this.plugins),this.getApiHolder(),{...Zt,routeBindings:Ks(this.bindRoutes)}},[a]);n||(n=!0,Ms(x.paths,x.parents),Bs($,this.plugins));const J=ti(this.configLoader,this.components,C),nt="api"in J;if(nt){const{api:bt}=J;this.configApi=bt}if("node"in J)return J.node;if(nt&&l.current){l.current=!1;const bt=this.getApiHolder().get(hn.W);if(bt){for(const te of this.featureFlags)bt.registerFlag({...te,pluginId:""});for(const te of this.plugins.values())if("getFeatureFlags"in te)for(const Ee of te.getFeatureFlags())bt.registerFlag({name:Ee.name,pluginId:te.getId()});else for(const Ee of te.output())Ee.type==="feature-flag"&&bt.registerFlag({name:Ee.name,pluginId:te.getId()});const Zt=bt.getRegisteredFlags(),Gt=new Set(Zt.map(te=>te.name));for(const te of j)Gt.has(te)||bt.registerFlag({name:te,pluginId:""})}}const{ThemeProvider:ut=Er,Progress:yt}=this.components;return(0,i.jsx)(zo,{apis:this.getApiHolder(),children:(0,i.jsx)(Fs,{appContext:e,children:(0,i.jsx)(ut,{children:(0,i.jsx)(js,{routePaths:x.paths,routeParents:x.parents,routeObjects:x.objects,routeBindings:$,basePath:Ys(J.api),children:(0,i.jsx)(Cr.Provider,{value:{routeObjects:x.objects,appIdentityProxy:this.appIdentityProxy},children:(0,i.jsx)(u.Suspense,{fallback:(0,i.jsx)(yt,{}),children:a})})})})})})}}getRouter(){return Or}getApiHolder(){if(this.apiHolder){for(const e of this.plugins)for(const n of e.getApis())this.apiFactoryRegistry.get(n.api)||this.apiFactoryRegistry.register("default",n);return Ho.validateFactories(this.apiFactoryRegistry,this.apiFactoryRegistry.getAllApis()),this.apiHolder}this.apiFactoryRegistry.register("static",{api:Xn,deps:{},factory:()=>Jn.createWithStorage(this.themes)}),this.apiFactoryRegistry.register("static",{api:de.D,deps:{},factory:()=>{if(!this.configApi)throw new Error("Tried to access config API before config was loaded");return this.configApi}}),this.apiFactoryRegistry.register("static",{api:ve.$,deps:{},factory:()=>this.appIdentityProxy}),this.apiFactoryRegistry.register("static",{api:hr,deps:{},factory:()=>this.appLanguageApi}),this.apiFactoryRegistry.register("default",{api:vs.o,deps:{languageApi:hr},factory:({languageApi:e})=>_o.create({languageApi:e,resources:this.translationResources})}),this.apiFactoryRegistry.register("default",{api:hn.W,deps:{},factory:()=>new gs});for(const e of this.defaultApis)this.apiFactoryRegistry.register("default",e);for(const e of this.plugins)for(const n of e.getApis())if(!this.apiFactoryRegistry.register("default",n))throw new Error(`Plugin ${e.getId()} tried to register duplicate or forbidden API factory for ${n.api}`);for(const e of this.apis)if(!this.apiFactoryRegistry.register("app",e))throw new Error(`Duplicate or forbidden API factory for ${e.api} in app`);return Ho.validateFactories(this.apiFactoryRegistry,this.apiFactoryRegistry.getAllApis()),this.apiHolder=new Ho(this.apiFactoryRegistry),this.apiHolder}verifyPlugins(e){const n=new Set;for(const s of e){const a=s.getId();if(n.has(a))throw new Error(`Duplicate plugin found '${a}'`);n.add(a)}}constructor(e){var n,s,a;(0,b._)(this,"apiHolder",void 0),(0,b._)(this,"configApi",void 0),(0,b._)(this,"apis",void 0),(0,b._)(this,"icons",void 0),(0,b._)(this,"plugins",void 0),(0,b._)(this,"featureFlags",void 0),(0,b._)(this,"components",void 0),(0,b._)(this,"themes",void 0),(0,b._)(this,"configLoader",void 0),(0,b._)(this,"defaultApis",void 0),(0,b._)(this,"bindRoutes",void 0),(0,b._)(this,"appLanguageApi",void 0),(0,b._)(this,"translationResources",void 0),(0,b._)(this,"appIdentityProxy",new $s),(0,b._)(this,"apiFactoryRegistry",void 0),(0,ue._)(this,tr,{writable:!0,value:!1});var l;this.apis=(l=e.apis)!==null&&l!==void 0?l:[],this.icons=e.icons;var C;this.plugins=new Set((C=e.plugins)!==null&&C!==void 0?C:[]);var x;this.featureFlags=(x=e.featureFlags)!==null&&x!==void 0?x:[],this.components=e.components,this.themes=e.themes;var j;this.configLoader=(j=e.configLoader)!==null&&j!==void 0?j:xr;var $;this.defaultApis=($=e.defaultApis)!==null&&$!==void 0?$:[],this.bindRoutes=e.bindRoutes,this.apiFactoryRegistry=new ms,this.appLanguageApi=ro.createWithStorage({defaultLanguage:(n=e.__experimentalTranslations)===null||n===void 0?void 0:n.defaultLanguage,availableLanguages:(s=e.__experimentalTranslations)===null||s===void 0?void 0:s.availableLanguages});var J;this.translationResources=(J=(a=e.__experimentalTranslations)===null||a===void 0?void 0:a.resources)!==null&&J!==void 0?J:[]}}function oi(r){return new ni(r)}function ri(r){var e,n,s,a;return oi({...r,apis:(e=r==null?void 0:r.apis)!==null&&e!==void 0?e:[],bindRoutes:r==null?void 0:r.bindRoutes,components:{...M,...r==null?void 0:r.components},configLoader:r==null?void 0:r.configLoader,defaultApis:bo,icons:{...Bo,...r==null?void 0:r.icons},plugins:(n=r==null?void 0:r.plugins)!==null&&n!==void 0?n:[],featureFlags:(s=r==null?void 0:r.featureFlags)!==null&&s!==void 0?s:[],themes:(a=r==null?void 0:r.themes)!==null&&a!==void 0?a:Ie})}var co=t(2532);let Dr=!1;const Lr=r=>{const e=(0,Ar.q)(),{NotFoundErrorPage:n}=e.getComponents(),s=(0,u.useMemo)(()=>Rn(),[]),l=[...(0,co.v)(r.children,C=>C.getElements().flatMap(x=>{let j=x.props.path;if(j==="")return[];var $;j=($=j==null?void 0:j.replace(/\/\*$/,""))!==null&&$!==void 0?$:"/";let J=s?x:x.props.element;return!s&&!J&&(J=x,Dr||(console.warn("DEPRECATION WARNING: All elements within <FlatRoutes> must be of type <Route> with an element prop. Existing usages of <Navigate key=[path] to=[to] /> should be replaced with <Route path=[path] element={<Navigate to=[to] />} />."),Dr=!0)),[{path:j,element:J,children:x.props.children?[{path:j==="/"?"/":"*",element:x.props.children}]:void 0}]}).sort((x,j)=>j.path.localeCompare(x.path)).map(x=>({...x,path:x.path==="/"?"/":`${x.path}/*`}))),{path:"*",element:(0,i.jsx)(n,{})}];return(0,m.V$)(l)};(0,Pe.R)(Lr,"core.type","FlatRoutes");var _e=t(74314),si=t(51547),ii=t(88797);function jr(r){return!r.cursor}function Ma(r){return!jr(r)}const Ae="catalog";var Se=t(23587);class ai{async analyzeLocation(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/analyze-location",l=Se.parse(a).expand({});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"POST",body:JSON.stringify(e.body)})}async createLocation(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/locations{?dryRun}",l=Se.parse(a).expand({...e.query});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"POST",body:JSON.stringify(e.body)})}async deleteEntityByUid(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities/by-uid/{uid}",l=Se.parse(a).expand({uid:e.path.uid});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"DELETE"})}async deleteLocation(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/locations/{id}",l=Se.parse(a).expand({id:e.path.id});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"DELETE"})}async getEntities(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities{?fields,limit,filter*,offset,after,order*}",l=Se.parse(a).expand({...e.query});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getEntitiesByQuery(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities/by-query{?fields,limit,orderField*,cursor,filter*,fullTextFilterTerm,fullTextFilterFields}",l=Se.parse(a).expand({...e.query});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getEntitiesByRefs(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities/by-refs",l=Se.parse(a).expand({});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"POST",body:JSON.stringify(e.body)})}async getEntityAncestryByName(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities/by-name/{kind}/{namespace}/{name}/ancestry",l=Se.parse(a).expand({kind:e.path.kind,namespace:e.path.namespace,name:e.path.name});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getEntityByName(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities/by-name/{kind}/{namespace}/{name}",l=Se.parse(a).expand({kind:e.path.kind,namespace:e.path.namespace,name:e.path.name});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getEntityByUid(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entities/by-uid/{uid}",l=Se.parse(a).expand({uid:e.path.uid});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getEntityFacets(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/entity-facets{?facet*,filter*}",l=Se.parse(a).expand({...e.query});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getLocation(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/locations/{id}",l=Se.parse(a).expand({id:e.path.id});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getLocationByEntity(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/locations/by-entity/{kind}/{namespace}/{name}",l=Se.parse(a).expand({kind:e.path.kind,namespace:e.path.namespace,name:e.path.name});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async getLocations(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/locations",l=Se.parse(a).expand({});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"GET"})}async refreshEntity(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/refresh",l=Se.parse(a).expand({});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"POST",body:JSON.stringify(e.body)})}async validateEntity(e,n){const s=await this.discoveryApi.getBaseUrl(Ae),a="/validate-entity",l=Se.parse(a).expand({});return await this.fetchApi.fetch(`${s}${l}`,{headers:{"Content-Type":"application/json",...(n==null?void 0:n.token)&&{Authorization:`Bearer ${n==null?void 0:n.token}`}},method:"POST",body:JSON.stringify(e.body)})}constructor(e){(0,b._)(this,"discoveryApi",void 0),(0,b._)(this,"fetchApi",void 0),this.discoveryApi=e.discoveryApi,this.fetchApi=e.fetchApi||{fetch:$n()}}}class li{async getEntityAncestors(e,n){return await this.requestRequired(await this.apiClient.getEntityAncestryByName({path:(0,_e.of)(e.entityRef)},n))}async getLocationById(e,n){return await this.requestOptional(await this.apiClient.getLocation({path:{id:e}},n))}async getLocationByEntity(e,n){return await this.requestOptional(await this.apiClient.getLocationByEntity({path:(0,_e.of)(e)},n))}async getEntities(e,n){const{filter:s=[],fields:a=[],order:l,offset:C,limit:x,after:j}=e!=null?e:{},$=[];if(l)for(const ut of[l].flat())ut&&$.push(`${ut.order}:${ut.field}`);const J=await this.requestRequired(await this.apiClient.getEntities({query:{fields:a,limit:x,filter:this.getFilterValue(s),offset:C,after:j,order:l?$:void 0}},n)),nt=(ut,yt)=>{var bt,Zt;if(((bt=ut.metadata)===null||bt===void 0?void 0:bt.name)===void 0||ut.kind===void 0||((Zt=yt.metadata)===null||Zt===void 0?void 0:Zt.name)===void 0||yt.kind===void 0)return 0;const Gt=(0,_e.eE)(ut),te=(0,_e.eE)(yt);return Gt<te?-1:Gt>te?1:0};return{items:J.sort(nt)}}async getEntitiesByRefs(e,n){const s=await this.apiClient.getEntitiesByRefs({body:e},n);if(!s.ok)throw await Qe.V.fromResponse(s);const{items:a}=await s.json();return{items:a.map(l=>l!=null?l:void 0)}}async queryEntities(e={},n){const s={};if(jr(e)){var a,l;const{fields:C=[],filter:x,limit:j,orderFields:$,fullTextFilter:J}=e;s.filter=this.getFilterValue(x),j!==void 0&&(s.limit=j),$!==void 0&&(s.orderField=(Array.isArray($)?$:[$]).map(({field:ut,order:yt})=>`${ut},${yt}`)),C.length&&(s.fields=C);const nt=J==null||(a=J.term)===null||a===void 0?void 0:a.trim();nt&&(s.fullTextFilterTerm=nt),!(J==null||(l=J.fields)===null||l===void 0)&&l.length&&(s.fullTextFilterFields=J.fields)}else{const{fields:C=[],limit:x,cursor:j}=e;s.cursor=j,x!==void 0&&(s.limit=x),C.length&&(s.fields=C)}return this.apiClient.getEntitiesByQuery({query:s},n).then(C=>C.json())}async getEntityByRef(e,n){return this.requestOptional(await this.apiClient.getEntityByName({path:(0,_e.of)(e)},n))}async getEntityByName(e,n){const{kind:s,namespace:a="default",name:l}=e;return this.requestOptional(await this.apiClient.getEntityByName({path:{kind:s,namespace:a,name:l}},n))}async refreshEntity(e,n){const s=await this.apiClient.refreshEntity({body:{entityRef:e}},n);if(s.status!==200)throw new Error(await s.text())}async getEntityFacets(e,n){const{filter:s=[],facets:a}=e;return await this.requestOptional(await this.apiClient.getEntityFacets({query:{facet:a,filter:this.getFilterValue(s)}},n))}async addLocation(e,n){const{type:s="url",target:a,dryRun:l}=e,C=await this.apiClient.createLocation({body:{type:s,target:a},query:{dryRun:l?"true":void 0}},n);if(C.status!==201)throw new Error(await C.text());const{location:x,entities:j,exists:$}=await C.json();if(!x)throw new Error(`Location wasn't added: ${a}`);return{location:x,entities:j,exists:$}}async getLocationByRef(e,n){return(await this.requestRequired(await this.apiClient.getLocations({},n))).map(a=>a.data).find(a=>e===(0,si.NZ)(a))}async removeLocationById(e,n){await this.requestIgnored(await this.apiClient.deleteLocation({path:{id:e}},n))}async removeEntityByUid(e,n){await this.requestIgnored(await this.apiClient.deleteEntityByUid({path:{uid:e}},n))}async validateEntity(e,n,s){const a=await this.apiClient.validateEntity({body:{entity:e,location:n}},s);if(a.ok)return{valid:!0};if(a.status!==400)throw await Qe.V.fromResponse(a);const{errors:l=[]}=await a.json();return{valid:!1,errors:l}}async requestIgnored(e){if(!e.ok)throw await Qe.V.fromResponse(e)}async requestRequired(e){if(!e.ok)throw await Qe.V.fromResponse(e);return e.json()}async requestOptional(e){if(!e.ok){if(e.status===404)return;throw await Qe.V.fromResponse(e)}return await e.json()}getFilterValue(e=[]){const n=[];for(const s of[e].flat()){const a=[];for(const[l,C]of Object.entries(s))for(const x of[C].flat())x===ii.n?a.push(l):typeof x=="string"&&a.push(`${l}=${x}`);a.length&&n.push(a.join(","))}return n}constructor(e){(0,b._)(this,"apiClient",void 0),this.apiClient=new ai(e)}}var Mr=t(88624),ci=t(36802),di=t(51271),Br=t(36434),yn=t(65524),ui=t(15006),je=t(82963),hi=t(53945),En=t(76635);async function fi({storageApi:r}){const e=r.forBucket("settings"),n=r.forBucket("starredEntities"),s=e.snapshot("starredEntities").value;if(!(0,En.isArray)(s))return;var a;const l=new Set((a=n.snapshot("entityRefs").value)!==null&&a!==void 0?a:[]);s.filter(En.isString).map(C=>C.split(":")).filter(C=>C.length===4&&C[0]==="entity").map(([C,x,j,$])=>(0,_e.eE)({kind:x,namespace:j,name:$})).forEach(C=>l.add(C)),await n.set("entityRefs",Array.from(l)),await e.remove("starredEntities")}class pi{async toggleStarred(e){this.starredEntities.has(e)?this.starredEntities.delete(e):this.starredEntities.add(e),await this.settingsStore.set("entityRefs",Array.from(this.starredEntities))}starredEntitie$(){return this.observable}notifyChanges(){for(const e of this.subscribers)e.next(new Set(this.starredEntities))}constructor(e){(0,b._)(this,"settingsStore",void 0),(0,b._)(this,"starredEntities",void 0),(0,b._)(this,"subscribers",new Set),(0,b._)(this,"observable",new(z())(s=>(s.next(new Set(this.starredEntities)),this.subscribers.add(s),()=>{this.subscribers.delete(s)}))),fi(e).then(),this.settingsStore=e.storageApi.forBucket("starredEntities");var n;this.starredEntities=new Set((n=this.settingsStore.snapshot("entityRefs").value)!==null&&n!==void 0?n:[]),this.settingsStore.observe$("entityRefs").subscribe({next:s=>{var a;this.starredEntities=new Set((a=s.value)!==null&&a!==void 0?a:[]),this.notifyChanges()}})}}function er(r){const{years:e=0,months:n=0,weeks:s=0,days:a=0,hours:l=0,minutes:C=0,seconds:x=0,milliseconds:j=0}=r;return((((e*365+n*30+s*7+a)*24+l)*60+C)*60+x)*1e3+j}var gi=t(99798),vi=t.n(gi),mi=t(12830),yi=t.n(mi),Ei=t(68203);const xi={seconds:10},Ci={milliseconds:50},Ai={api:zn.Z,component:Hn.Z,system:Zn.Z,resource:Gn.Z,domain:Wn.Z,location:Kn.Z,user:Sn.Z,group:An.Z,template:Vn.Z};function Ur(r){return{async:r.async,render:({entityRef:e,entity:n,context:s})=>({snapshot:(0,Ei.n)(n||e,s),loadEntity:r.async})}}var uo=new WeakMap,nr=new WeakMap,ho=new WeakMap,or=new WeakMap,fo=new WeakMap,Fr=new WeakSet,$r=new WeakSet,Nr=new WeakSet;class po{static createLocal(){return new po({renderer:Ur({async:!1})})}static create(e){return new po(e)}forEntity(e,n){const{entityRef:s,kind:a,entity:l,needsLoad:C}=(0,Fe._)(this,Fr,Si).call(this,e),x=J=>{const{snapshot:nt}=(0,Pt._)(this,fo).render({entityRef:s,loading:J.loading,entity:J.entity,context:n||{}});return{...nt,entityRef:s,Icon:(0,Fe._)(this,Nr,Oi).call(this,nt.Icon,a)}};let j;try{j=x({loading:C,entity:l})}catch{j={primaryTitle:s,entityRef:s}}const $=C?new(z())(J=>{let nt=!1;return Promise.resolve().then(()=>{var ut;return(ut=(0,Pt._)(this,ho))===null||ut===void 0?void 0:ut.load(s)}).then(ut=>{if(!nt&&ut&&ut.metadata.etag!==(l==null?void 0:l.metadata.etag)){const yt=x({loading:!1,entity:ut});J.next(yt)}}).catch(()=>{}).finally(()=>{nt||J.complete()}),()=>{nt=!0}}):void 0;return{snapshot:j,update$:$}}constructor(e){(0,nn._)(this,Fr),(0,nn._)(this,$r),(0,nn._)(this,Nr),(0,ue._)(this,uo,{writable:!0,value:void 0}),(0,ue._)(this,nr,{writable:!0,value:void 0}),(0,ue._)(this,ho,{writable:!0,value:void 0}),(0,ue._)(this,or,{writable:!0,value:void 0}),(0,ue._)(this,fo,{writable:!0,value:void 0});var n;const s=(n=e.cacheTtl)!==null&&n!==void 0?n:xi;var a;const l=(a=e.batchDelay)!==null&&a!==void 0?a:Ci;var C;const x=(C=e.renderer)!==null&&C!==void 0?C:Ur({async:!0}),j={};Object.entries(Ai).forEach(([J,nt])=>{j[J.toLocaleLowerCase("en-US")]=nt});var $;if(Object.entries(($=e.kindIcons)!==null&&$!==void 0?$:{}).forEach(([J,nt])=>{j[J.toLocaleLowerCase("en-US")]=nt}),x.async){if(!e.catalogApi)throw new TypeError("Asynchronous rendering requires a catalog API");(0,he._)(this,ho,(0,Fe._)(this,$r,bi).call(this,{cacheTtl:s,batchDelay:l,renderer:x,catalogApi:e.catalogApi}))}(0,he._)(this,nr,er(s)),(0,he._)(this,uo,new Map),(0,he._)(this,or,j),(0,he._)(this,fo,x)}}function Si(r){if(typeof r!="string")return{entity:r,kind:r.kind,entityRef:(0,_e.eE)(r),needsLoad:!1};const e=(0,Pt._)(this,uo).get(r),n=e==null?void 0:e.entity,a=(!e||Date.now()-e.updatedAt>(0,Pt._)(this,nr))&&(0,Pt._)(this,fo).async!==!1&&(0,Pt._)(this,ho)!==void 0;return{entity:n,kind:(0,_e.of)(r).kind,entityRef:r,needsLoad:a}}function bi(r){const e=er(r.cacheTtl),n=er(r.batchDelay);return new(vi())(async s=>{const{items:a}=await r.catalogApi.getEntitiesByRefs({entityRefs:s}),l=Date.now();return s.forEach((C,x)=>{(0,Pt._)(this,uo).set(C,{updatedAt:l,entity:a[x]})}),a},{name:"DefaultEntityPresentationApi",cacheMap:new(yi())(e),maxBatchSize:100,batchScheduleFn:n?s=>setTimeout(s,n):void 0})}function Oi(r,e){return r||(r===!1?!1:(0,Pt._)(this,or)[e.toLocaleLowerCase("en-US")])}const Le=(0,ui.r)({id:"catalog",apis:[(0,kt.n)({api:Mr.A,deps:{discoveryApi:oe.N,fetchApi:Fn.g},factory:({discoveryApi:r,fetchApi:e})=>new li({discoveryApi:r,fetchApi:e})}),(0,kt.n)({api:ci.p,deps:{storageApi:Un},factory:({storageApi:r})=>new pi({storageApi:r})}),(0,kt.n)({api:di.X,deps:{catalogApi:Mr.A},factory:({catalogApi:r})=>po.create({catalogApi:r})})],routes:{catalogIndex:yn._Z,catalogEntity:Br.w},externalRoutes:{createComponent:yn.yw,viewTechDoc:yn.jU,createFromTemplate:yn.ql,unregisterRedirect:yn.kR}}),Ba=Le.provide((0,je.P4)({name:"CatalogIndexPage",component:()=>Promise.all([t.e(9993),t.e(6332),t.e(87)]).then(t.bind(t,20087)).then(r=>r.CatalogPage),mountPoint:yn._Z})),wi=Le.provide((0,je.P4)({name:"CatalogEntityPage",component:()=>t.e(8951).then(t.bind(t,78951)).then(r=>r.CatalogEntityPage),mountPoint:Br.w})),Ua=Le.provide((0,je.CO)({name:"EntityAboutCard",component:{lazy:()=>Promise.all([t.e(9993),t.e(8118),t.e(4917)]).then(t.bind(t,34917)).then(r=>r.AboutCard)}})),Fa=Le.provide((0,je.CO)({name:"EntityLinksCard",component:{lazy:()=>t.e(7750).then(t.bind(t,17750)).then(r=>r.EntityLinksCard)}})),$a=Le.provide((0,je.CO)({name:"EntityLabelsCard",component:{lazy:()=>t.e(5877).then(t.bind(t,85877)).then(r=>r.EntityLabelsCard)}})),Na=Le.provide((0,je.CO)({name:"EntityHasSystemsCard",component:{lazy:()=>t.e(5458).then(t.bind(t,5458)).then(r=>r.HasSystemsCard)}})),Wa=Le.provide((0,je.CO)({name:"EntityHasComponentsCard",component:{lazy:()=>t.e(1105).then(t.bind(t,1105)).then(r=>r.HasComponentsCard)}})),Za=Le.provide((0,je.CO)({name:"EntityHasSubcomponentsCard",component:{lazy:()=>t.e(2440).then(t.bind(t,82440)).then(r=>r.HasSubcomponentsCard)}})),ka=Le.provide((0,je.CO)({name:"EntityHasResourcesCard",component:{lazy:()=>t.e(9770).then(t.bind(t,79770)).then(r=>r.HasResourcesCard)}})),za=Le.provide((0,je.CO)({name:"EntityDependsOnComponentsCard",component:{lazy:()=>t.e(9545).then(t.bind(t,19545)).then(r=>r.DependsOnComponentsCard)}})),Ka=Le.provide((0,je.CO)({name:"EntityDependencyOfComponentsCard",component:{lazy:()=>t.e(184).then(t.bind(t,40184)).then(r=>r.DependencyOfComponentsCard)}})),Ha=Le.provide((0,je.CO)({name:"EntityDependsOnResourcesCard",component:{lazy:()=>t.e(1032).then(t.bind(t,81032)).then(r=>r.DependsOnResourcesCard)}})),Ga=Le.provide((0,je.CO)({name:"RelatedEntitiesCard",component:{lazy:()=>t.e(3487).then(t.bind(t,33487)).then(r=>r.RelatedEntitiesCard)}})),Va=Le.provide((0,hi.E5)({name:"CatalogSearchResultListItem",component:()=>t.e(7670).then(t.bind(t,27670)).then(r=>r.CatalogSearchResultListItem),predicate:r=>r.type==="software-catalog"}));var Wr=t(91657),Zr=t(58496);class Pi{async getApiOrigin(){return await this.discoveryApi.getBaseUrl("techdocs")}async getStorageUrl(){return`${await this.discoveryApi.getBaseUrl("techdocs")}/static/docs`}async getBuilder(){return this.configApi.getString("techdocs.builder")}async getEntityDocs(e,n){const a=`${await this.getApiOrigin()}/${n}`,l=await fetch(`${a.endsWith("/")?a:`${a}/`}index.html`);if(l.status===404)throw new Error("Page not found");return l.text()}async syncEntityDocs(e){return"cached"}async getBaseUrl(e,n,s){const a=await this.getApiOrigin();return new URL(e,`${a}/${s}`).toString()}constructor({configApi:e,discoveryApi:n,identityApi:s}){(0,b._)(this,"configApi",void 0),(0,b._)(this,"discoveryApi",void 0),(0,b._)(this,"identityApi",void 0),this.configApi=e,this.discoveryApi=n,this.identityApi=s}}class Ti{async getApiOrigin(){return await this.discoveryApi.getBaseUrl("techdocs")}async getEntityMetadata(e){return{apiVersion:"backstage.io/v1alpha1",kind:"Component",metadata:{name:"local"},spec:{owner:"test",lifecycle:"experimental"}}}async getTechDocsMetadata(e){return{site_name:"Live preview environment",site_description:""}}constructor({configApi:e,discoveryApi:n,identityApi:s}){(0,b._)(this,"configApi",void 0),(0,b._)(this,"discoveryApi",void 0),(0,b._)(this,"identityApi",void 0),this.configApi=e,this.discoveryApi=n,this.identityApi=s}}const Ri=[(0,kt.n)({api:Zr.D,deps:{configApi:de.D,discoveryApi:oe.N,identityApi:ve.$},factory:({configApi:r,discoveryApi:e,identityApi:n})=>new Pi({configApi:r,discoveryApi:e,identityApi:n})}),(0,kt.n)({api:Zr.g,deps:{configApi:de.D,discoveryApi:oe.N,identityApi:ve.$},factory:({configApi:r,discoveryApi:e,identityApi:n})=>new Ti({configApi:r,discoveryApi:e,identityApi:n})}),(0,kt.n)({api:Wr.q,deps:{configApi:de.D},factory:({configApi:r})=>Wr.a.fromConfig(r)})],Ii={backend:{baseUrl:"http://localhost:3000"},techdocs:{builder:"external"}},Di={backend:{baseUrl:"http://localhost:7007"},techdocs:{builder:"external"}};async function Li(){const r=await fetch("/.detect");return r.ok?(await r.text()).trim()==="techdocs-cli-server":!1}async function ji(){const r=await xr(),e=await Li();return[...r,{context:"detected",data:e?Ii:Di}]}var He=t(79692),Mi=t(58845);const Bi=(0,He.Z)({svg:{width:"auto",height:30},path:{fill:"#7df3e1"}});var Ui=()=>{const r=Bi();return(0,i.jsx)("svg",{className:r.svg,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2079.95 456.05",children:(0,i.jsx)("path",{className:r.path,d:"M302.9,180a80.62,80.62,0,0,0,13.44-10.37c.8-.77,1.55-1.54,2.31-2.31a81.89,81.89,0,0,0,7.92-9.37,62.37,62.37,0,0,0,6.27-10.77,48.6,48.6,0,0,0,4.36-16.4c1.49-19.39-10-38.67-35.62-54.22L198.42,14,78.16,129.22l-78.29,75,108.6,65.9a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.8,66.42-25.69,19.16-18.36,25.52-42.12,13.7-61.87a49.69,49.69,0,0,0-6.8-8.87,89.78,89.78,0,0,0,19.28,2.15H259a85.09,85.09,0,0,0,31-5.79A80.88,80.88,0,0,0,302.9,180Zm-100.59,59.8c-19.32,18.51-50.4,21.24-75.7,5.9l-75.13-45.6,67.44-64.65,76.42,46.39C222.88,198.57,221.36,221.6,202.31,239.84Zm8.94-82.21L140.6,114.74,205,53l69.37,42.11c25.94,15.73,29.31,37.05,10.55,55A60.71,60.71,0,0,1,211.25,157.63Zm29.86,190c-19.57,18.75-46.17,29.08-74.88,29.08a123.84,123.84,0,0,1-64.11-18.19L-.13,296.51v24.67l108.6,65.91a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.81,66.42-25.69,12.88-12.34,20-27.13,19.68-41.49v-1.79A87.85,87.85,0,0,1,241.11,347.67Zm0-39c-19.57,18.76-46.17,29.09-74.88,29.09a123.84,123.84,0,0,1-64.11-18.19L-.13,257.52V282.2l108.6,65.91a111.59,111.59,0,0,0,57.76,16.41c24.92,0,48.8-8.8,66.42-25.68,12.88-12.35,20-27.13,19.68-41.5v-1.79A86.86,86.86,0,0,1,241.11,308.68Zm0-39c-19.57,18.76-46.17,29.09-74.88,29.09a123.84,123.84,0,0,1-64.11-18.19L-.13,218.54v24.68l108.6,65.91a111.59,111.59,0,0,0,57.76,16.41c24.92,0,48.8-8.8,66.42-25.69,12.88-12.34,20-27.12,19.68-41.49v-1.82A87.14,87.14,0,0,1,241.11,269.7Zm83.69,25.74a94.16,94.16,0,0,1-60.19,25.86h0V348a81.6,81.6,0,0,0,51.73-22.37c14-13.38,21.15-28.11,21-42.64v-2.2A95.14,95.14,0,0,1,324.8,295.44Zm-83.69,91.21c-19.57,18.75-46.17,29.09-74.88,29.09a123.76,123.76,0,0,1-64.11-18.2L-.13,335.49v24.67l108.6,65.91a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.81,66.42-25.69,12.88-12.34,20-27.13,19.68-41.49v-1.79A87.35,87.35,0,0,1,241.11,386.65Zm85.75-210.21c-.68.69-1.35,1.38-2.06,2.05a99.19,99.19,0,0,1-22.23,15.69,94.53,94.53,0,0,1-26.24,8.71,97.84,97.84,0,0,1-14.16,1.57c.5,1.61.9,3.25,1.25,4.9a52.7,52.7,0,0,1,1.13,12V231h.05A84.48,84.48,0,0,0,290,225.47a80.83,80.83,0,0,0,26.38-16.82c.81-.77,1.51-1.56,2.27-2.34a82,82,0,0,0,7.92-9.38,62.85,62.85,0,0,0,6.29-10.78,48.5,48.5,0,0,0,4.32-16.44c.09-1.23.2-2.47.19-3.7v-2c-.72,1-1.48,2.06-2.26,3.09A98,98,0,0,1,326.86,176.44Zm0,77.92c-.68.7-1.3,1.41-2,2.1a94.09,94.09,0,0,1-60.19,25.85h0V309h0a81.65,81.65,0,0,0,51.73-22.37,73.51,73.51,0,0,0,16.48-22.49,48.56,48.56,0,0,0,4.32-16.44c.09-1.24.2-2.48.19-3.71v-2.2c-.74,1.08-1.47,2.16-2.27,3.22A95.81,95.81,0,0,1,326.82,254.36Zm0-39c-.68.7-1.3,1.41-2,2.1a92.22,92.22,0,0,1-10.62,8.65,93.53,93.53,0,0,1-11.63,7,95.63,95.63,0,0,1-37.94,10.18h-.05l0,26.67h0a81.63,81.63,0,0,0,51.73-22.37c.81-.77,1.51-1.56,2.27-2.34a82,82,0,0,0,7.92-9.38,63.16,63.16,0,0,0,6.29-10.77,48.55,48.55,0,0,0,4.32-16.45c.09-1.23.2-2.47.19-3.7v-2.2c-.74,1.08-1.47,2.16-2.27,3.22A98.19,98.19,0,0,1,326.82,215.38Zm241-88.84q7.94,0,17.09.17t18.12,1a139.3,139.3,0,0,1,16.74,2.57,42.78,42.78,0,0,1,13.3,5.14,64.27,64.27,0,0,1,20.54,19.89Q662,168,662,186.54q0,19.54-9.49,33.78t-27.1,21.09v.68q22.78,4.82,34.87,20.58t12.08,38.4a72.62,72.62,0,0,1-4.83,26.06,65.29,65.29,0,0,1-14.33,22.46,71.57,71.57,0,0,1-23.47,15.78q-14,6-32.28,6H478.38V126.54Zm9,105.27q28,0,40.21-9.78t12.26-29.31q0-13-4.14-20.58a29.47,29.47,0,0,0-11.4-11.66A45,45,0,0,0,597,155.17a161.2,161.2,0,0,0-20.19-1.2h-65.6v77.84Zm16.57,112.13q21.74,0,34-11.66T639.59,300q0-12-4.48-19.88a34.85,34.85,0,0,0-11.91-12.52,50.14,50.14,0,0,0-17.09-6.52,105,105,0,0,0-20-1.88H511.17v84.7Zm274.79,26.74q-7.61,4.45-21.06,4.46-11.4,0-18.12-6.34t-6.74-20.75a70.17,70.17,0,0,1-28.13,20.75,97.87,97.87,0,0,1-57.65,3.6,53.51,53.51,0,0,1-18.82-8.58A41.19,41.19,0,0,1,705,348.56q-4.65-9.42-4.66-22.8,0-15.09,5.18-24.69a44.92,44.92,0,0,1,13.64-15.6,62.63,62.63,0,0,1,19.33-9.09q10.88-3.08,22.27-5.14,12.08-2.4,23-3.6a128,128,0,0,0,19.16-3.43c5.53-1.48,9.89-3.65,13.12-6.51s4.83-7,4.83-12.52q0-9.6-3.62-15.43a24.94,24.94,0,0,0-9.32-8.92,38.38,38.38,0,0,0-12.78-4.11,96.54,96.54,0,0,0-14-1q-18.63,0-31.07,7T736.6,249.29H707.26q.69-16.46,6.9-27.77a52.21,52.21,0,0,1,16.57-18.35,70,70,0,0,1,23.65-10.11A125.51,125.51,0,0,1,782.86,190a168.63,168.63,0,0,1,24,1.72,63.26,63.26,0,0,1,21.58,7A41.23,41.23,0,0,1,844,213.59q5.87,9.57,5.87,25v91q0,10.26,1.21,15.05t8.11,4.79a35.57,35.57,0,0,0,9-1.37Zm-47.64-90.87c-3.69,2.74-8.52,4.72-14.5,6s-12.26,2.27-18.82,3.07-13.17,1.71-19.85,2.73a73.7,73.7,0,0,0-18,4.94,32.62,32.62,0,0,0-12.94,9.73q-5,6.32-5,17.23a23.31,23.31,0,0,0,2.94,12.11,24.11,24.11,0,0,0,7.59,8,32,32,0,0,0,10.88,4.44,60.94,60.94,0,0,0,13.11,1.36q14.5,0,24.86-3.92a52.49,52.49,0,0,0,16.91-9.9,39.1,39.1,0,0,0,9.67-13,32.53,32.53,0,0,0,3.11-13.14ZM1002.07,225q-11.05-9.25-29.69-9.26-15.89,0-26.58,5.83A47.29,47.29,0,0,0,928.71,237a64.66,64.66,0,0,0-9.15,22.12A119.83,119.83,0,0,0,916.8,285a98.22,98.22,0,0,0,2.93,24,64.18,64.18,0,0,0,9.15,20.74,46.2,46.2,0,0,0,16.23,14.58q10,5.49,23.82,5.48,21.75,0,34-11.31t15-31.89h30q-4.83,32.91-24.68,50.75t-54,17.83q-20.37,0-36.07-6.52A69.86,69.86,0,0,1,907,350.11a79.92,79.92,0,0,1-15.88-28.63A118.64,118.64,0,0,1,885.73,285a129.41,129.41,0,0,1,5.18-37.21,85.63,85.63,0,0,1,15.71-30.17A73.46,73.46,0,0,1,933,197.35Q948.91,190,970,190a108.54,108.54,0,0,1,28.48,3.6,69.59,69.59,0,0,1,23.48,11.15,61,61,0,0,1,16.74,19q6.55,11.49,8.29,27.26h-30.38Q1013.11,234.21,1002.07,225Zm109.77-98.41v145l81.47-77.49h39.36l-70.77,64.46,75.95,112.82h-37.29l-61.1-92.59-27.62,25.38v67.21H1082.5V126.54Zm170.54,205.22a31.07,31.07,0,0,0,10.87,10.63,49,49,0,0,0,15.19,5.66,87.06,87.06,0,0,0,17.44,1.71,109.18,109.18,0,0,0,14.5-1,53.22,53.22,0,0,0,14-3.78,26.27,26.27,0,0,0,10.53-8q4.14-5.32,4.14-13.55,0-11.31-8.63-17.14a73.69,73.69,0,0,0-21.58-9.43q-12.94-3.6-28.13-6.52a146,146,0,0,1-28.14-8.23A58.16,58.16,0,0,1,1261,267.13q-8.64-9.6-8.63-26.75,0-13.38,6-23a49.26,49.26,0,0,1,15.53-15.61,71.76,71.76,0,0,1,21.4-8.91A99.41,99.41,0,0,1,1319,190a141.31,141.31,0,0,1,28,2.58,64.85,64.85,0,0,1,22.62,8.91,46.16,46.16,0,0,1,15.7,17.15q5.87,10.8,6.91,26.91h-29.35q-.69-8.57-4.48-14.23a29.36,29.36,0,0,0-9.67-9.08,44.16,44.16,0,0,0-12.94-5,67.68,67.68,0,0,0-14.33-1.54,87.29,87.29,0,0,0-13.29,1,45.28,45.28,0,0,0-12.26,3.6,24.49,24.49,0,0,0-9,6.86q-3.46,4.29-3.46,11.14a16.32,16.32,0,0,0,5.36,12.52,42.75,42.75,0,0,0,13.63,8.23,120,120,0,0,0,18.64,5.48q10.37,2.24,20.72,4.63,11,2.4,21.57,5.83A70.74,70.74,0,0,1,1382,284.1a44.55,44.55,0,0,1,13.12,14.23q5,8.58,5,21.26,0,16.13-6.73,26.75a52.5,52.5,0,0,1-17.61,17.14,73.89,73.89,0,0,1-24.51,9.09,146.3,146.3,0,0,1-27.1,2.57,126.24,126.24,0,0,1-28.31-3.09A69.56,69.56,0,0,1,1272,361.94a51.74,51.74,0,0,1-16.57-18.52q-6.21-11.49-6.9-27.95h29.34A32.65,32.65,0,0,0,1282.38,331.76Zm226.46-137.67v25.72h-35.56V329.88a31.37,31.37,0,0,0,.87,8.23,8.42,8.42,0,0,0,3.28,4.8,14.61,14.61,0,0,0,6.73,2.23,99.19,99.19,0,0,0,11.22.51h13.46v25.72H1486.4a105.8,105.8,0,0,1-19.5-1.55,28.65,28.65,0,0,1-13.12-5.65,24.09,24.09,0,0,1-7.42-11.66q-2.43-7.54-2.42-19.89V219.81h-30.38V194.09h30.38V140.94h29.34v53.15ZM1699.4,370.68q-7.61,4.45-21.06,4.46-11.4,0-18.12-6.34t-6.74-20.75a70.17,70.17,0,0,1-28.13,20.75,97.87,97.87,0,0,1-57.65,3.6,53.51,53.51,0,0,1-18.82-8.58,41.19,41.19,0,0,1-12.6-15.26q-4.65-9.42-4.66-22.8,0-15.09,5.18-24.69a44.92,44.92,0,0,1,13.64-15.6,62.63,62.63,0,0,1,19.33-9.09q10.88-3.08,22.27-5.14,12.07-2.4,23-3.6a128,128,0,0,0,19.16-3.43c5.53-1.48,9.89-3.65,13.12-6.51s4.83-7,4.83-12.52q0-9.6-3.62-15.43a24.94,24.94,0,0,0-9.32-8.92,38.38,38.38,0,0,0-12.78-4.11,96.54,96.54,0,0,0-14-1q-18.63,0-31.07,7t-13.46,26.57h-29.34q.67-16.46,6.9-27.77A52.21,52.21,0,0,1,1562,203.17a70,70,0,0,1,23.65-10.11,125.51,125.51,0,0,1,28.48-3.09,168.63,168.63,0,0,1,24,1.72,63.26,63.26,0,0,1,21.58,7,41.23,41.23,0,0,1,15.53,14.89q5.87,9.57,5.87,25v91q0,10.26,1.21,15.05t8.11,4.79a35.57,35.57,0,0,0,9-1.37Zm-47.64-90.87c-3.69,2.74-8.52,4.72-14.5,6s-12.26,2.27-18.82,3.07-13.17,1.71-19.85,2.73a73.7,73.7,0,0,0-17.95,4.94,32.62,32.62,0,0,0-12.94,9.73q-5,6.32-5,17.23a23.31,23.31,0,0,0,2.94,12.11,24.11,24.11,0,0,0,7.59,8,32,32,0,0,0,10.88,4.44,60.94,60.94,0,0,0,13.11,1.36q14.51,0,24.86-3.92a52.49,52.49,0,0,0,16.91-9.9,39.1,39.1,0,0,0,9.67-13,32.53,32.53,0,0,0,3.11-13.14Zm208.85,141.62q-20,21.6-62.83,21.6a122.11,122.11,0,0,1-25.37-2.74,78,78,0,0,1-23.48-8.92,54.41,54.41,0,0,1-17.43-16.11q-6.91-10-7.6-24.35h29.35a21.47,21.47,0,0,0,5,13.38,36.67,36.67,0,0,0,11.4,8.91,55.52,55.52,0,0,0,14.67,5,79.51,79.51,0,0,0,15.19,1.55q14.49,0,24.51-5A46,46,0,0,0,1840.59,401a56.53,56.53,0,0,0,9.49-21.09,117.46,117.46,0,0,0,2.94-27.09V341.19h-.7q-7.59,16.46-23,24.18a71.8,71.8,0,0,1-32.63,7.71q-20,0-34.86-7.2A72.88,72.88,0,0,1,1737,346.51a82.13,82.13,0,0,1-15-28.46,116.62,116.62,0,0,1-5-34.47,133.92,133.92,0,0,1,4.14-32.4A88.17,88.17,0,0,1,1735,221a75.49,75.49,0,0,1,25.55-22.29q15.87-8.75,39-8.75a66.21,66.21,0,0,1,31.07,7.38,52.13,52.13,0,0,1,22.09,22.11h.35V194.09h27.61V356.28Q1880.63,399.83,1860.61,421.43Zm-37.46-79.72a47.94,47.94,0,0,0,16.4-15.78,71.89,71.89,0,0,0,9.15-22.11,106.77,106.77,0,0,0,2.93-24.69,96.71,96.71,0,0,0-2.76-23,64,64,0,0,0-8.8-20.4,45.76,45.76,0,0,0-15.71-14.57q-9.66-5.49-23.47-5.49-14.16,0-24.17,5.32a46.77,46.77,0,0,0-16.4,14.23,60.14,60.14,0,0,0-9.32,20.57,99.69,99.69,0,0,0-2.93,24.35,120.63,120.63,0,0,0,2.42,24,67.5,67.5,0,0,0,8.28,21.77,46.37,46.37,0,0,0,15.54,15.78q9.66,6,24.16,6T1823.15,341.71Zm228,18.34q-20,15.09-50.41,15.09-21.4,0-37.11-6.86a73.16,73.16,0,0,1-26.41-19.2,81.52,81.52,0,0,1-16-29.49,141.12,141.12,0,0,1-6-37.38,106.1,106.1,0,0,1,6.21-37A88.56,88.56,0,0,1,1938.8,216a79.09,79.09,0,0,1,26.58-19.2A81.66,81.66,0,0,1,1999,190q23.82,0,39.53,9.78a78,78,0,0,1,25.2,24.86,98.18,98.18,0,0,1,13.12,32.91,140.6,140.6,0,0,1,2.93,34h-133.6a70,70,0,0,0,2.76,22.12,49.9,49.9,0,0,0,10,18.51A49.1,49.1,0,0,0,1976.6,345q10.7,4.82,25.2,4.8,18.65,0,30.55-8.57t15.71-26.06h29Q2071.18,345,2051.17,360.05Zm-7.08-113.84a50,50,0,0,0-10.7-16,53.1,53.1,0,0,0-56.62-10.63,47.48,47.48,0,0,0-15.71,10.81,51.69,51.69,0,0,0-10.35,15.94,60.18,60.18,0,0,0-4.49,19.37h102.53A59.47,59.47,0,0,0,2044.09,246.21ZM302.9,180a80.62,80.62,0,0,0,13.44-10.37c.8-.77,1.55-1.54,2.31-2.31a81.89,81.89,0,0,0,7.92-9.37,62.37,62.37,0,0,0,6.27-10.77,48.6,48.6,0,0,0,4.36-16.4c1.49-19.39-10-38.67-35.62-54.22L198.42,14,78.16,129.22l-78.29,75,108.6,65.9a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.8,66.42-25.69,19.16-18.36,25.52-42.12,13.7-61.87a49.69,49.69,0,0,0-6.8-8.87,89.78,89.78,0,0,0,19.28,2.15H259a85.09,85.09,0,0,0,31-5.79A80.88,80.88,0,0,0,302.9,180Zm-100.59,59.8c-19.32,18.51-50.4,21.24-75.7,5.9l-75.13-45.6,67.44-64.65,76.42,46.39C222.88,198.57,221.36,221.6,202.31,239.84Zm8.94-82.21L140.6,114.74,205,53l69.37,42.11c25.94,15.73,29.31,37.05,10.55,55A60.71,60.71,0,0,1,211.25,157.63Zm29.86,190c-19.57,18.75-46.17,29.08-74.88,29.08a123.84,123.84,0,0,1-64.11-18.19L-.13,296.51v24.67l108.6,65.91a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.81,66.42-25.69,12.88-12.34,20-27.13,19.68-41.49v-1.79A87.85,87.85,0,0,1,241.11,347.67Zm0-39c-19.57,18.76-46.17,29.09-74.88,29.09a123.84,123.84,0,0,1-64.11-18.19L-.13,257.52V282.2l108.6,65.91a111.59,111.59,0,0,0,57.76,16.41c24.92,0,48.8-8.8,66.42-25.68,12.88-12.35,20-27.13,19.68-41.5v-1.79A86.86,86.86,0,0,1,241.11,308.68Zm0-39c-19.57,18.76-46.17,29.09-74.88,29.09a123.84,123.84,0,0,1-64.11-18.19L-.13,218.54v24.68l108.6,65.91a111.59,111.59,0,0,0,57.76,16.41c24.92,0,48.8-8.8,66.42-25.69,12.88-12.34,20-27.12,19.68-41.49v-1.82A87.14,87.14,0,0,1,241.11,269.7Zm83.69,25.74a94.16,94.16,0,0,1-60.19,25.86h0V348a81.6,81.6,0,0,0,51.73-22.37c14-13.38,21.15-28.11,21-42.64v-2.2A95.14,95.14,0,0,1,324.8,295.44Zm-83.69,91.21c-19.57,18.75-46.17,29.09-74.88,29.09a123.76,123.76,0,0,1-64.11-18.2L-.13,335.49v24.67l108.6,65.91a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.81,66.42-25.69,12.88-12.34,20-27.13,19.68-41.49v-1.79A87.35,87.35,0,0,1,241.11,386.65Zm85.75-210.21c-.68.69-1.35,1.38-2.06,2.05a99.19,99.19,0,0,1-22.23,15.69,94.53,94.53,0,0,1-26.24,8.71,97.84,97.84,0,0,1-14.16,1.57c.5,1.61.9,3.25,1.25,4.9a52.7,52.7,0,0,1,1.13,12V231h.05A84.48,84.48,0,0,0,290,225.47a80.83,80.83,0,0,0,26.38-16.82c.81-.77,1.51-1.56,2.27-2.34a82,82,0,0,0,7.92-9.38,62.85,62.85,0,0,0,6.29-10.78,48.5,48.5,0,0,0,4.32-16.44c.09-1.23.2-2.47.19-3.7v-2c-.72,1-1.48,2.06-2.26,3.09A98,98,0,0,1,326.86,176.44Zm0,77.92c-.68.7-1.3,1.41-2,2.1a94.09,94.09,0,0,1-60.19,25.85h0V309h0a81.65,81.65,0,0,0,51.73-22.37,73.51,73.51,0,0,0,16.48-22.49,48.56,48.56,0,0,0,4.32-16.44c.09-1.24.2-2.48.19-3.71v-2.2c-.74,1.08-1.47,2.16-2.27,3.22A95.81,95.81,0,0,1,326.82,254.36Zm0-39c-.68.7-1.3,1.41-2,2.1a92.22,92.22,0,0,1-10.62,8.65,93.53,93.53,0,0,1-11.63,7,95.63,95.63,0,0,1-37.94,10.18h-.05l0,26.67h0a81.63,81.63,0,0,0,51.73-22.37c.81-.77,1.51-1.56,2.27-2.34a82,82,0,0,0,7.92-9.38,63.16,63.16,0,0,0,6.29-10.77,48.55,48.55,0,0,0,4.32-16.45c.09-1.23.2-2.47.19-3.7v-2.2c-.74,1.08-1.47,2.16-2.27,3.22A98.19,98.19,0,0,1,326.82,215.38Z"})})};const Fi=(0,He.Z)({svg:{width:"auto",height:28},path:{fill:"#7df3e1"}});var $i=()=>{const r=Fi();return(0,i.jsx)("svg",{className:r.svg,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 337.46 428.5",children:(0,i.jsx)("path",{className:r.path,d:"M303,166.05a80.69,80.69,0,0,0,13.45-10.37c.79-.77,1.55-1.53,2.3-2.3a83.12,83.12,0,0,0,7.93-9.38A63.69,63.69,0,0,0,333,133.23a48.58,48.58,0,0,0,4.35-16.4c1.49-19.39-10-38.67-35.62-54.22L198.56,0,78.3,115.23,0,190.25l108.6,65.91a111.59,111.59,0,0,0,57.76,16.41c24.92,0,48.8-8.8,66.42-25.69,19.16-18.36,25.52-42.12,13.7-61.87a49.22,49.22,0,0,0-6.8-8.87A89.17,89.17,0,0,0,259,178.29h.15a85.08,85.08,0,0,0,31-5.79A80.88,80.88,0,0,0,303,166.05ZM202.45,225.86c-19.32,18.51-50.4,21.23-75.7,5.9L51.61,186.15l67.45-64.64,76.41,46.38C223,184.58,221.49,207.61,202.45,225.86Zm8.93-82.22-70.65-42.89L205.14,39,274.51,81.1c25.94,15.72,29.31,37,10.55,55A60.69,60.69,0,0,1,211.38,143.64Zm29.86,190c-19.57,18.75-46.17,29.09-74.88,29.09a123.73,123.73,0,0,1-64.1-18.2L0,282.52v24.67L108.6,373.1a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.81,66.42-25.69,12.88-12.34,20-27.13,19.68-41.49v-1.79A87.27,87.27,0,0,1,241.24,333.68Zm0-39c-19.57,18.75-46.17,29.08-74.88,29.08a123.81,123.81,0,0,1-64.1-18.19L0,243.53v24.68l108.6,65.91a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.81,66.42-25.69,12.88-12.34,20-27.13,19.68-41.5v-1.78A87.27,87.27,0,0,1,241.24,294.7Zm0-39c-19.57,18.76-46.17,29.09-74.88,29.09a123.81,123.81,0,0,1-64.1-18.19L0,204.55v24.68l108.6,65.91a111.59,111.59,0,0,0,57.76,16.41c24.92,0,48.8-8.8,66.42-25.68,12.88-12.35,20-27.13,19.68-41.5v-1.82A86.09,86.09,0,0,1,241.24,255.71Zm83.7,25.74a94.15,94.15,0,0,1-60.2,25.86h0V334a81.6,81.6,0,0,0,51.74-22.37c14-13.38,21.14-28.11,21-42.64v-2.19A94.92,94.92,0,0,1,324.94,281.45Zm-83.7,91.21c-19.57,18.76-46.17,29.09-74.88,29.09a123.73,123.73,0,0,1-64.1-18.2L0,321.5v24.68l108.6,65.9a111.6,111.6,0,0,0,57.76,16.42c24.92,0,48.8-8.8,66.42-25.69,12.88-12.34,20-27.13,19.68-41.49v-1.79A86.29,86.29,0,0,1,241.24,372.66ZM327,162.45c-.68.69-1.35,1.38-2.05,2.06a94.37,94.37,0,0,1-10.64,8.65,91.35,91.35,0,0,1-11.6,7,94.53,94.53,0,0,1-26.24,8.71,97.69,97.69,0,0,1-14.16,1.57c.5,1.61.9,3.25,1.25,4.9a53.27,53.27,0,0,1,1.14,12V217h.05a84.41,84.41,0,0,0,25.35-5.55,81,81,0,0,0,26.39-16.82c.8-.77,1.5-1.56,2.26-2.34a82.08,82.08,0,0,0,7.93-9.38A63.76,63.76,0,0,0,333,172.17a48.55,48.55,0,0,0,4.32-16.45c.09-1.23.2-2.47.19-3.7V150q-1.08,1.54-2.25,3.09A96.73,96.73,0,0,1,327,162.45Zm0,77.92c-.69.7-1.31,1.41-2,2.1a94.2,94.2,0,0,1-60.2,25.86h0l0,26.67h0a81.6,81.6,0,0,0,51.74-22.37A73.51,73.51,0,0,0,333,250.13a48.56,48.56,0,0,0,4.32-16.44c.09-1.24.2-2.47.19-3.71v-2.19c-.74,1.07-1.46,2.15-2.27,3.21A95.68,95.68,0,0,1,327,240.37Zm0-39c-.69.7-1.31,1.41-2,2.1a93.18,93.18,0,0,1-10.63,8.65,91.63,91.63,0,0,1-11.63,7,95.47,95.47,0,0,1-37.94,10.18h0V256h0a81.65,81.65,0,0,0,51.74-22.37c.8-.77,1.5-1.56,2.26-2.34a82.08,82.08,0,0,0,7.93-9.38A63.76,63.76,0,0,0,333,211.15a48.56,48.56,0,0,0,4.32-16.44c.09-1.24.2-2.48.19-3.71v-2.2c-.74,1.08-1.46,2.16-2.27,3.22A95.68,95.68,0,0,1,327,201.39Z"})})},be=t(76921);const kr={isOpen:!1,setOpen:()=>{}},zr=(0,u.createContext)(kr),Kr=(0,Xe.CT)("sidebar-open-state-context");function Hr(r){const{children:e,value:n}=r;return(0,i.jsx)(zr.Provider,{value:n,children:(0,i.jsx)(Kr.Provider,{value:(0,dn.E)({1:n}),children:e})})}const rr=()=>{const r=(0,u.useContext)(Kr),e=(0,u.useContext)(zr);if(r===void 0)return e||kr;const n=r.atVersion(1);if(n===void 0)throw new Error("No context found for version 1.");return n};var Gr=t(98864),Vr=t(44409),qe=t(62774),Yr=t(41156),Ni=t(12524),rn=t.n(Ni),Wi=t(50023),Qr=t(61837),Zi=t(4190),sr=t(90436),ki=t(87685),zi=t(44882),Ki=t(57998);const Jr=(0,u.createContext)({selectedMenuItemIndex:-1,setSelectedMenuItemIndex:()=>{}});var ir=t(93539);const Hi=(0,He.Z)(r=>({root:{flexGrow:0,margin:r.spacing(0,2),color:r.palette.navigation.color},selected:e=>({color:`${r.palette.navigation.selectedColor}!important`,borderTop:`solid ${e.sidebarConfig.selectedIndicatorWidth}px ${r.palette.navigation.indicator}`,marginTop:"-1px"}),label:{display:"none"}})),Gi=r=>{const{to:e,label:n,icon:s,value:a}=r,{sidebarConfig:l}=(0,u.useContext)(be.kG),C=Hi({sidebarConfig:l}),x=(0,m.TH)(),{selectedMenuItemIndex:j,setSelectedMenuItemIndex:$}=(0,u.useContext)(Jr),J=(ut,yt)=>{$(yt===j?-1:yt)},nt=a===j&&j>=0||a!==j&&!(j>=0)&&e===x.pathname;return(0,i.jsx)(Ki.Z,{"aria-label":n,label:n,icon:s,component:Gr.rU,to:e||x.pathname,onChange:J,value:a,selected:nt,classes:C})},Xr=r=>{const{children:e,to:n,label:s,icon:a,value:l}=r,{isMobile:C}=(0,ir.Pf)();return C?(0,i.jsx)(Gi,{to:n,label:s,icon:a,value:l}):(0,i.jsx)(i.Fragment,{children:e})},_r=(0,He.Z)(r=>({root:{position:"fixed",backgroundColor:r.palette.navigation.background,color:r.palette.navigation.color,bottom:0,left:0,right:0,zIndex:r.zIndex.snackbar,borderTop:"1px solid #383838","@media print":{display:"none"}},overlay:e=>({background:r.palette.navigation.background,width:"100%",bottom:`${e.sidebarConfig.mobileSidebarHeight}px`,height:`calc(100% - ${e.sidebarConfig.mobileSidebarHeight}px)`,flex:"0 1 auto",overflow:"auto"}),overlayHeader:{display:"flex",color:r.palette.navigation.color,alignItems:"center",justifyContent:"space-between",padding:r.spacing(2,3)},overlayHeaderClose:{color:r.palette.navigation.color},marginMobileSidebar:e=>({marginBottom:`${e.sidebarConfig.mobileSidebarHeight}px`})})),Vi=r=>(0,En.orderBy)(r,({props:{priority:e}})=>Number.isInteger(e)?e:-1,"desc"),Yi=u.createElement(Xr).type,Qi=({children:r,label:e="Menu",open:n,onClose:s})=>{const{sidebarConfig:a}=(0,u.useContext)(be.kG),l=_r({sidebarConfig:a});return(0,i.jsxs)(Zi.ZP,{anchor:"bottom",open:n,onClose:s,ModalProps:{BackdropProps:{classes:{root:l.marginMobileSidebar}}},classes:{root:l.marginMobileSidebar,paperAnchorBottom:l.overlay},children:[(0,i.jsxs)(qe.Z,{className:l.overlayHeader,children:[(0,i.jsx)(sr.Z,{variant:"h3",children:e}),(0,i.jsx)(Qr.Z,{onClick:s,classes:{root:l.overlayHeaderClose},children:(0,i.jsx)(ki.Z,{})})]}),(0,i.jsx)(qe.Z,{component:"nav",children:r})]})},Ji=r=>{const{sidebarConfig:e}=(0,u.useContext)(be.kG),{children:n}=r,s=_r({sidebarConfig:e}),a=(0,m.TH)(),[l,C]=(0,u.useState)(-1);(0,u.useEffect)(()=>{C(-1)},[a.pathname]);let x=(0,co.v)(n,$=>$.getElements().filter(J=>J.type===Yi));if(n)x.length?x=Vi(x):x.push((0,i.jsx)(Xr,{icon:(0,i.jsx)(zi.Z,{}),children:n},"default_menu"));else return null;const j=l>=0&&!x[l].props.to;return(0,i.jsx)(Hr,{value:{isOpen:!0,setOpen:()=>{}},children:(0,i.jsxs)(Jr.Provider,{value:{selectedMenuItemIndex:l,setSelectedMenuItemIndex:C},children:[(0,i.jsx)(Qi,{label:x[l]&&x[l].props.label,open:j,onClose:()=>C(-1),children:x[l]&&x[l].props.children}),(0,i.jsx)(Wi.Z,{className:s.root,"data-testid":"mobile-sidebar-root",component:"nav",children:x})]})})},qr=(0,He.Z)(r=>({drawer:{display:"flex",flexFlow:"column nowrap",alignItems:"flex-start",position:"fixed",left:0,top:0,bottom:0,zIndex:r.zIndex.appBar,background:r.palette.navigation.background,overflowX:"hidden",msOverflowStyle:"none",scrollbarWidth:"none",transition:r.transitions.create("width",{easing:r.transitions.easing.sharp,duration:r.transitions.duration.shortest}),"& > *":{flexShrink:0},"&::-webkit-scrollbar":{display:"none"},"@media print":{display:"none"}},drawerWidth:e=>({width:e.sidebarConfig.drawerWidthClosed}),drawerOpen:e=>({width:e.sidebarConfig.drawerWidthOpen,transition:r.transitions.create("width",{easing:r.transitions.easing.sharp,duration:r.transitions.duration.shorter})}),visuallyHidden:{top:0,position:"absolute",zIndex:1e3,transform:"translateY(-200%)","&:focus":{transform:"translateY(5px)"}}}),{name:"BackstageSidebar"});var ts;(function(r){r[r.Closed=0]="Closed",r[r.Idle=1]="Idle",r[r.Open=2]="Open"})(ts||(ts={}));const Xi=r=>{const{sidebarConfig:e}=(0,u.useContext)(be.kG),{openDelayMs:n=e.defaultOpenDelayMs,closeDelayMs:s=e.defaultCloseDelayMs,disableExpandOnHover:a,children:l}=r,C=qr({sidebarConfig:e}),x=(0,Yr.Z)(te=>te.breakpoints.down("md"),{noSsr:!0}),[j,$]=(0,u.useState)(0),J=(0,u.useRef)(),{isPinned:nt,toggleSidebarPinState:ut}=(0,ir.Pf)(),yt=()=>{nt||a||(J.current&&(clearTimeout(J.current),J.current=void 0),j!==2&&!x&&(J.current=window.setTimeout(()=>{J.current=void 0,$(2)},n),$(1)))},bt=()=>{nt||a||(J.current&&(clearTimeout(J.current),J.current=void 0),j===1?$(0):j===2&&(J.current=window.setTimeout(()=>{J.current=void 0,$(0)},s)))},Zt=j===2&&!x||nt,Gt=te=>{te?($(2),ut()):($(0),ut())};return(0,i.jsxs)("nav",{style:{},"aria-label":"sidebar nav",children:[(0,i.jsx)(qi,{}),(0,i.jsx)(Hr,{value:{isOpen:Zt,setOpen:Gt},children:(0,i.jsx)(qe.Z,{className:C.root,"data-testid":"sidebar-root",onMouseEnter:a?()=>{}:yt,onFocus:a?()=>{}:yt,onMouseLeave:a?()=>{}:bt,onBlur:a?()=>{}:bt,children:(0,i.jsx)(qe.Z,{className:rn()(C.drawer,C.drawerWidth,{[C.drawerOpen]:Zt}),children:l})})})]})},_i=r=>{var e;const n=(0,be.$E)((e=r.sidebarOptions)!==null&&e!==void 0?e:{});var s;const a=(0,be.rW)((s=r.submenuOptions)!==null&&s!==void 0?s:{}),{children:l,disableExpandOnHover:C,openDelayMs:x,closeDelayMs:j}=r,{isMobile:$}=(0,ir.Pf)();return $?(0,i.jsx)(Ji,{children:l}):(0,i.jsx)(be.kG.Provider,{value:{sidebarConfig:n,submenuConfig:a},children:(0,i.jsx)(Xi,{openDelayMs:x,closeDelayMs:j,disableExpandOnHover:C,children:l})})};function qi(){const{sidebarConfig:r}=(0,u.useContext)(be.kG),{focusContent:e,contentRef:n}=(0,Vr.r)(),s=qr({sidebarConfig:r});return n!=null&&n.current?(0,i.jsx)(y.Z,{onClick:e,variant:"contained",className:rn()(s.visuallyHidden),children:"Skip to content"}):null}var ta=t(26739),go=t(1667),ea=t(83543),na=t(59797),es=t(98989);const oa=(0,He.Z)(r=>({root:{zIndex:1e3,position:"relative",overflow:"visible",width:r.spacing(7)+1},drawer:e=>{var n,s;return{display:"flex",flexFlow:"column nowrap",alignItems:"flex-start",position:"fixed",[r.breakpoints.up("sm")]:{marginLeft:e.left,transition:r.transitions.create("margin-left",{easing:r.transitions.easing.sharp,duration:r.transitions.duration.shortest})},top:0,bottom:0,padding:0,background:(s=(n=r.palette.navigation.submenu)===null||n===void 0?void 0:n.background)!==null&&s!==void 0?s:"#404040",overflowX:"hidden",msOverflowStyle:"none",scrollbarWidth:"none",cursor:"default",width:e.submenuConfig.drawerWidthClosed,transitionDelay:`${e.submenuConfig.defaultOpenDelayMs}ms`,"& > *":{flexShrink:0},"&::-webkit-scrollbar":{display:"none"}}},drawerOpen:e=>({width:e.submenuConfig.drawerWidthOpen,[r.breakpoints.down("xs")]:{width:"100%",position:"relative",paddingLeft:r.spacing(3),left:0,top:0}}),title:{fontSize:r.typography.h5.fontSize,fontWeight:r.typography.fontWeightMedium,color:r.palette.common.white,padding:r.spacing(2.5),[r.breakpoints.down("xs")]:{display:"none"}}}),{name:"BackstageSidebarSubmenu"}),ra=r=>{const{isOpen:e}=rr(),{sidebarConfig:n,submenuConfig:s}=(0,u.useContext)(be.kG),a=e?n.drawerWidthOpen:n.drawerWidthClosed,l=oa({left:a,submenuConfig:s}),{isHoveredOn:C}=(0,u.useContext)(be.Ag),[x,j]=(0,u.useState)(!1);return(0,u.useEffect)(()=>{j(C)},[C]),(0,i.jsxs)(qe.Z,{className:rn()(l.drawer,{[l.drawerOpen]:x}),children:[(0,i.jsx)(sr.Z,{variant:"h5",component:"span",className:l.title,children:r.title}),r.children]})};var sa=t(19126),ns=t.n(sa);function os(r,e,n=!1){const s=new URLSearchParams(e.search).toString(),a=ns().parse(s),l=new URLSearchParams(r.search).toString(),C=ns().parse(l),x=n?En.isEqual:En.isMatch;return(0,En.isEqual)(e.pathname,r.pathname)&&x(C,a)}const ia=r=>(0,He.Z)(e=>{var n,s,a,l;return{root:{color:e.palette.navigation.color,display:"flex",flexFlow:"row nowrap",alignItems:"center",height:48,cursor:"pointer"},buttonItem:{background:"none",border:"none",width:"100%",margin:0,padding:0,textAlign:"inherit",font:"inherit",textTransform:"none"},closed:{width:r.drawerWidthClosed,justifyContent:"center"},open:{[e.breakpoints.up("sm")]:{width:r.drawerWidthOpen}},highlightable:{"&:hover":{background:(a=(n=e.palette.navigation.navItem)===null||n===void 0?void 0:n.hoverBackground)!==null&&a!==void 0?a:"#404040"}},highlighted:{background:(l=(s=e.palette.navigation.navItem)===null||s===void 0?void 0:s.hoverBackground)!==null&&l!==void 0?l:"#404040"},label:{fontWeight:"bold",whiteSpace:"nowrap",lineHeight:"auto",flex:"3 1 auto",width:"110px",overflow:"hidden","text-overflow":"ellipsis"},iconContainer:{boxSizing:"border-box",height:"100%",width:r.iconContainerWidth,marginRight:-e.spacing(2),display:"flex",alignItems:"center",justifyContent:"center",lineHeight:"0"},searchRoot:{marginBottom:12},searchField:{color:"#b5b5b5",fontWeight:e.typography.fontWeightBold,fontSize:e.typography.fontSize},searchFieldHTMLInput:{padding:e.spacing(2,0,2)},searchContainer:{width:r.drawerWidthOpen-r.iconContainerWidth},secondaryAction:{width:e.spacing(6),textAlign:"center",marginRight:e.spacing(1)},closedItemIcon:{width:"100%",justifyContent:"center"},submenuArrow:{display:"flex"},expandButton:{background:"none",border:"none",color:e.palette.navigation.color,width:"100%",cursor:"pointer",position:"relative",height:48},arrows:{position:"absolute",right:10},selected:{"&$root":{borderLeft:`solid ${r.selectedIndicatorWidth}px ${e.palette.navigation.indicator}`,color:e.palette.navigation.selectedColor},"&$closed":{width:r.drawerWidthClosed},"& $closedItemIcon":{paddingRight:r.selectedIndicatorWidth},"& $iconContainer":{marginLeft:-r.selectedIndicatorWidth}}}},{name:"BackstageSidebarItem"});function vo(r){return(0,u.useMemo)(()=>ia(r),[r])()}const aa=(r,e)=>(0,co.v)(r.props.children,n=>{let s=!1;return n.getElements().forEach(({props:{to:a,dropdownItems:l}})=>{if(!s){if(l!=null&&l.length){l.forEach(({to:C})=>s=s||os(e,(0,Pn.i3)(C)));return}a&&(s=os(e,(0,Pn.i3)(a)))}}),s},[e.pathname]);function ar(r){return r.to===void 0}const la=u.createElement(ra).type,ca=u.forwardRef(function({to:e,end:n,style:s,className:a,activeStyle:l,caseSensitive:C,activeClassName:x="active","aria-current":j="page",...$},J){let{pathname:nt}=(0,m.TH)(),{pathname:ut}=(0,m.WU)(e);C||(nt=nt.toLocaleLowerCase("en-US"),ut=ut.toLocaleLowerCase("en-US"));let yt=nt===ut;!yt&&!n&&(yt=nt.startsWith(`${ut}/`));const bt=yt?j:void 0;return(0,i.jsx)(h.rU,{...$,to:e,ref:J,"aria-current":bt,style:{...s,...yt?l:void 0},className:rn()([typeof a!="function"?a:void 0,yt?x:void 0])})}),rs=(0,u.forwardRef)((r,e)=>{const{icon:n,text:s,hasNotifications:a=!1,hasSubmenu:l=!1,disableHighlight:C=!1,onClick:x,noTrack:j,children:$,className:J,...nt}=r,{sidebarConfig:ut}=(0,u.useContext)(be.kG),yt=vo(ut),{isOpen:bt}=rr(),Zt=!bt&&l?{display:"flex",marginLeft:"20px"}:{lineHeight:"0"},Gt=(0,i.jsxs)(qe.Z,{style:Zt,children:[(0,i.jsx)(n,{fontSize:"small"}),!bt&&l?(0,i.jsx)(es.Z,{fontSize:"small"}):(0,i.jsx)(i.Fragment,{})]}),te=(0,i.jsx)(ta.Z,{color:"secondary",variant:"dot",overlap:"circular",invisible:!a,className:rn()({[yt.closedItemIcon]:!bt}),children:Gt}),Ee=(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(qe.Z,{"data-testid":"login-button",className:yt.iconContainer,children:te}),s&&(0,i.jsx)(sr.Z,{variant:"subtitle2",component:"span",className:yt.label,children:s}),(0,i.jsx)("div",{className:yt.secondaryAction,children:$})]}),Ge=bt?Ee:te,jn={onClick:x,className:rn()(J,yt.root,bt?yt.open:yt.closed,ar(r)&&yt.buttonItem,{[yt.highlightable]:!C})},ls=(0,Sr.z)(),{pathname:lr}=(0,m.WU)(!ar(r)&&r.to?r.to:""),cs=(0,u.useCallback)(Ia=>{if(!j){const Da="click",La=s!=null?s:"Sidebar Item",ja=lr?{attributes:{to:lr}}:void 0;ls.captureEvent(Da,La,ja)}x==null||x(Ia)},[ls,s,lr,j,x]);return ar(r)?(0,i.jsx)(y.Z,{role:"button","aria-label":s,...jn,ref:e,onClick:cs,children:Ge}):(0,i.jsx)(ca,{...jn,activeClassName:yt.selected,to:r.to?r.to:"",ref:e,"aria-label":s||r.to,...nt,onClick:cs,children:Ge})}),da=({children:r,...e})=>{const{sidebarConfig:n}=(0,u.useContext)(be.kG),s=vo(n),[a,l]=(0,u.useState)(!1),C=(0,m.TH)(),x=aa(r,C),j=(0,Yr.Z)(ut=>ut.breakpoints.down("sm")),$=()=>{l(!0)},J=()=>{l(!1)},nt=()=>j?a?(0,i.jsx)(na.Z,{fontSize:"small",className:s.submenuArrow}):(0,i.jsx)(ea.Z,{fontSize:"small",className:s.submenuArrow}):!a&&(0,i.jsx)(es.Z,{fontSize:"small",className:s.submenuArrow});return(0,i.jsx)(be.Ag.Provider,{value:{isHoveredOn:a,setIsHoveredOn:l},children:(0,i.jsxs)("div",{"data-testid":"item-with-submenu",onMouseLeave:J,onTouchStart:a?J:$,onMouseEnter:$,className:rn()(a&&s.highlighted),children:[(0,i.jsx)(rs,{hasSubmenu:!0,className:x?s.selected:"",...e,children:nt()}),a&&r]})})},ss=(0,u.forwardRef)((r,e)=>{const[n]=(0,co.v)(r.children,s=>s.getElements().filter(a=>a.type===la));return n?(0,i.jsx)(da,{...r,children:n}):(0,i.jsx)(rs,{...r,ref:e})});function Ja(r){const{sidebarConfig:e}=useContext(SidebarConfigContext),[n,s]=useState(""),a=vo(e),l=r.icon?r.icon:SearchIcon,C=()=>{r.onSearch(n),s("")},x=nt=>{nt.key==="Enter"&&(nt.preventDefault(),C())},j=nt=>{s(nt.target.value)},$=nt=>{nt.preventDefault(),nt.stopPropagation()},J=nt=>{C(),nt.preventDefault()};return _jsx(Box,{className:a.searchRoot,children:_jsx(ss,{icon:l,to:r.to,onClick:J,disableHighlight:!0,children:_jsx(TextField,{placeholder:"Search",value:n,onClick:$,onChange:j,onKeyDown:x,className:a.searchContainer,InputProps:{disableUnderline:!0,className:a.searchField},inputProps:{className:a.searchFieldHTMLInput}})})})}const Xa=(0,go.Z)("div")({flex:1},{name:"BackstageSidebarSpace"}),_a=(0,go.Z)("div")({height:8},{name:"BackstageSidebarSpacer"}),ua=(0,go.Z)("hr")(({theme:r})=>({height:1,width:"100%",background:"#383838",border:"none",margin:r.spacing(1.2,0)}),{name:"BackstageSidebarDivider"}),ha=r=>({overflowY:"auto","&::-webkit-scrollbar":{backgroundColor:r.palette.background.default,width:"5px",borderRadius:"5px"},"&::-webkit-scrollbar-thumb":{backgroundColor:r.palette.text.secondary,borderRadius:"5px"}}),qa=(0,go.Z)("div")(({theme:r})=>{const e=ha(r);return{flex:"0 1 auto",overflowX:"hidden",width:"calc(100% - 5px)",minHeight:"48px",overflowY:"hidden","@media (hover: none)":e,"&:hover":e}}),tl=()=>{const{sidebarConfig:r}=useContext(SidebarConfigContext),e=vo(r),{isOpen:n,setOpen:s}=useSidebarOpenState();if(useMediaQuery(C=>C.breakpoints.down("md"),{noSsr:!0}))return null;const l=()=>{s(!n)};return _jsx(Button,{role:"button",onClick:l,className:e.expandButton,"aria-label":"Expand Sidebar","data-testid":"sidebar-expand-button",children:_jsx(Box,{className:e.arrows,children:n?_jsx(DoubleArrowLeft,{}):_jsx(DoubleArrowRight,{})})})},fa=(0,He.Z)({root:{width:be.po.drawerWidthClosed,height:3*be.po.logoHeight,display:"flex",flexFlow:"row nowrap",alignItems:"center",marginBottom:-14},link:{width:be.po.drawerWidthClosed,marginLeft:24}}),pa=()=>{const r=fa(),{isOpen:e}=rr();return(0,i.jsx)("div",{className:r.root,children:(0,i.jsx)(Gr.rU,{to:"/docs/default/component/local/",underline:"none",className:r.link,children:e?(0,i.jsx)(Ui,{}):(0,i.jsx)($i,{})})})},ga=({children:r})=>(0,i.jsxs)(Vr.t,{children:[(0,i.jsxs)(_i,{children:[(0,i.jsx)(pa,{}),(0,i.jsx)(ua,{}),(0,i.jsx)(ss,{icon:Mi.Z,to:"/docs/default/component/local",text:"Docs Preview"})]}),r]});var va=t(80030),ma=t(32388),ya=t(4142),Ea=t(65386),xa=t(14540);const Ca=(0,He.Z)(r=>({headerIcon:{color:r.palette.common.white,width:"32px",height:"32px"},content:{backgroundColor:r.palette.background.default},contentToolbar:{display:"flex",justifyContent:"flex-end",padding:0}}));var is;(function(r){r.LIGHT="light",r.DARK="dark"})(is||(is={}));const Aa=()=>{const r=(0,wn.h_)(Xn),e=Ca(),[n,s]=(0,u.useState)(r.getActiveThemeId()==="dark"?"dark":"light"),a={light:{icon:ya.Z,title:"Dark theme"},dark:{icon:ma.Z,title:"Light theme"}},{title:l,icon:C}=a[n],x=()=>{s(j=>{const $=j==="light"?"dark":"light";return r.setActiveThemeId($),$})};return(0,i.jsx)(qe.Z,{display:"flex",alignItems:"center",mr:2,children:(0,i.jsx)(va.ZP,{title:l,arrow:!0,children:(0,i.jsx)(Qr.Z,{size:"small",onClick:x,children:(0,i.jsx)(C,{className:e.headerIcon})})})})},Sa=()=>(0,i.jsxs)(g.I6,{children:[(0,i.jsx)(Ea.S,{}),(0,i.jsx)(xa.F,{withSearch:!1})]}),ba=(0,i.jsx)(Sa,{}),as=ri({apis:Ri,configLoader:ji,plugins:Object.values(o)}),Oa=as.getProvider(),wa=as.getRouter(),Pa=g.s4.provide((0,d.KY)({name:"ThemeToggleAddon",component:Aa,location:E.o.Header})),Ta=(0,i.jsxs)(Lr,{children:[(0,i.jsx)(m.Fg,{to:"/docs/default/component/local/"},"/"),(0,i.jsx)(m.AW,{path:"/catalog/:namespace/:kind/:name",element:(0,i.jsx)(wi,{})}),(0,i.jsx)(m.AW,{path:"/docs",element:(0,i.jsx)(g.Jl,{}),children:(0,i.jsx)(c.u,{})}),(0,i.jsxs)(m.AW,{path:"/docs/:namespace/:kind/:name/*",element:(0,i.jsx)(g.I6,{}),children:[ba,(0,i.jsx)(d.DR,{children:(0,i.jsx)(Pa,{})})]})]});var Ra=()=>(0,i.jsx)(Oa,{children:(0,i.jsx)(wa,{children:(0,i.jsx)(ga,{children:Ta})})});S.createRoot(document.getElementById("root")).render((0,i.jsx)(Ra,{}))},29651:function(V,T,t){"use strict";t.d(T,{CT:function(){return u},Vt:function(){return S}});var o=t(2784),i=t(96087);function u(g){return(0,i.u)(g,()=>(0,o.createContext)(void 0))}function S(g){return(0,o.useContext)(u(g))}function m(g){return{set(c){globalThis[`__@backstage/${g}__`]=createContext(createVersionedValueMap(c))},reset(){delete globalThis[`__@backstage/${g}__`]}}}},68993:function(V,T,t){"use strict";t.d(T,{E:function(){return o}});function o(i){Object.freeze(i);const u={atVersion(S){return i[S]}};return Object.defineProperty(u,"$map",{configurable:!0,enumerable:!0,get(){return i}}),u}},96087:function(V,T,t){"use strict";t.d(T,{u:function(){return S}});function o(){return typeof window!="undefined"&&window.Math===Math?window:typeof self!="undefined"&&self.Math===Math?self:Function("return this")()}const i=o(),u=m=>`__@backstage/${m}__`;function S(m,g){const c=u(m);let d=i[c];return d||(d=g(),i[c]=d,d)}},88624:function(V,T,t){"use strict";t.d(T,{A:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"plugin.catalog.service"})},51271:function(V,T,t){"use strict";t.d(T,{X:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"plugin.catalog.entity-presentation"})},68203:function(V,T,t){"use strict";t.d(T,{n:function(){return m}});var o=t(74314),i=t(34106),u=t(72579),S=t.n(u);function m(d,E){const{kind:y,namespace:O,name:v,title:A,description:h,displayName:I,type:P}=g(d),w=(0,o.eE)({kind:y||"unknown",namespace:O||i.zG,name:v||"unknown"}),D=c({kind:y,namespace:O,name:v,context:E}),M=[I,A,D].find(H=>H&&typeof H=="string"),b=[M!==w?w:void 0,P,h].filter(H=>H&&typeof H=="string").join(" | ");return{entityRef:w,primaryTitle:M,secondaryTitle:b||void 0,Icon:void 0}}function g(d){if(typeof d=="string"){let E=d.indexOf(":");const y=d.indexOf("/");y!==-1&&y<E&&(E=-1);const O=E===-1?void 0:d.slice(0,E),v=y===-1?void 0:d.slice(E+1,y),A=d.slice(Math.max(E+1,y+1));return{kind:O,namespace:v,name:A}}if(typeof d=="object"&&d!==null){const E=[S()(d,"kind")].find(P=>P&&typeof P=="string"),y=[S()(d,"metadata.namespace"),S()(d,"namespace")].find(P=>P&&typeof P=="string"),O=[S()(d,"metadata.name"),S()(d,"name")].find(P=>P&&typeof P=="string"),v=[S()(d,"metadata.title")].find(P=>P&&typeof P=="string"),A=[S()(d,"metadata.description")].find(P=>P&&typeof P=="string"),h=[S()(d,"spec.profile.displayName")].find(P=>P&&typeof P=="string"),I=[S()(d,"spec.type")].find(P=>P&&typeof P=="string");return{kind:E,namespace:y,name:O,title:v,description:A,displayName:h,type:I}}return{}}function c(d){var E,y,O,v,A;const h=((E=d.kind)===null||E===void 0?void 0:E.toLocaleLowerCase("en-US"))||"unknown",I=d.namespace||i.zG,P=d.name||"unknown",w=(O=d.context)===null||O===void 0||(y=O.defaultKind)===null||y===void 0?void 0:y.toLocaleLowerCase("en-US"),D=(A=d.context)===null||A===void 0||(v=A.defaultNamespace)===null||v===void 0?void 0:v.toLocaleLowerCase("en-US");let M=P;return(D&&I.toLocaleLowerCase("en-US")!==D||I!==i.zG)&&(M=`${I}/${M}`),w&&h.toLocaleLowerCase("en-US")!==w&&(M=`${h}:${M}`),M}},74780:function(V,T,t){"use strict";t.d(T,{V:function(){return c}});var o=t(74314),i=t(44394),u=t(2784),S=t(51271),m=t(68203);function g(d,E,y){const[O,v]=(0,u.useState)(d);return(0,u.useEffect)(()=>{v(d);const A=E==null?void 0:E.subscribe({next:h=>{v(h)},complete:()=>{A==null||A.unsubscribe()}});return()=>{A==null||A.unsubscribe()}},y),O}function c(d,E){const O=(0,i.I_)().get(S.X),v=[O,JSON.stringify(d),JSON.stringify(E||null)],A=(0,u.useMemo)(()=>O?O.forEntity(typeof d=="string"||"metadata"in d?d:(0,o.eE)(d),E):{snapshot:(0,m.n)(d,E)},v);return g(A.snapshot,A.update$,[A])}},36802:function(V,T,t){"use strict";t.d(T,{p:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"catalog-react.starred-entities"})},30389:function(V,T,t){"use strict";t.d(T,{_i:function(){return A}});var o=t(52322),i=t(2784),u=t(41156),S=t(60364),m=t(77277),g=t(4190),c=t(62774),d=t(90436),E=t(60905),y=t(36444);const O=h=>{var I;const P=(0,u.Z)(H=>{var Y,tt;return H.breakpoints.down((tt=(Y=h.options)===null||Y===void 0?void 0:Y.drawerBreakpoint)!==null&&tt!==void 0?tt:"md")}),w=(0,S.Z)(),[D,M]=(0,i.useState)(!1);var b;return P?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(m.Z,{style:{marginTop:w.spacing(1),marginLeft:w.spacing(1)},onClick:()=>M(!0),startIcon:(0,o.jsx)(y.Z,{}),children:"Filters"}),(0,o.jsx)(g.ZP,{open:D,onClose:()=>M(!1),anchor:(b=(I=h.options)===null||I===void 0?void 0:I.drawerAnchor)!==null&&b!==void 0?b:"left",disableAutoFocus:!0,keepMounted:!0,variant:"temporary",children:(0,o.jsxs)(c.Z,{m:2,children:[(0,o.jsx)(d.Z,{variant:"h6",component:"h2",style:{marginBottom:w.spacing(1)},children:"Filters"}),h.children]})})]}):(0,o.jsx)(E.Z,{item:!0,lg:2,children:h.children})},v=h=>(0,o.jsx)(E.Z,{item:!0,xs:12,lg:10,children:h.children}),A=h=>(0,o.jsx)(E.Z,{container:!0,style:{position:"relative"},children:h.children});A.Filters=O,A.Content=v},77605:function(V,T,t){"use strict";t.d(T,{K:function(){return W}});var o=t(52322),i=t(62774),u=t(90436),S=t(38016),m=t(88013),g=t(2784),c=t(44394),d=t(64279),E=t(88624),y=t(21324),O=t(5806),v=t(19996),A=t(25505);const h=(0,o.jsx)(A.Z,{fontSize:"small"}),I=(0,o.jsx)(v.Z,{fontSize:"small"});function P({selected:Z}){return(0,o.jsx)(y.Z,{icon:h,checkedIcon:I,checked:Z})}const w=(0,g.memo)(Z=>{const{selected:Q,value:et,availableOptions:it,showCounts:mt}=Z,ft=mt?`${et} (${it==null?void 0:it[et]})`:et;return(0,o.jsx)(O.Z,{control:(0,o.jsx)(P,{selected:Q}),label:ft,onClick:Ot=>Ot.preventDefault()})});var D=t(79692),M=t(86619),b=t(12524),H=t.n(b);const Y=(0,D.Z)({input:{}},{name:"CatalogReactEntityAutocompletePickerInput"});function tt(Z){const Q=Y();return(0,o.jsx)(M.Z,{variant:"outlined",...Z,className:H()(Q.input,Z.className)})}var z=t(25942);function W(Z){var Q;const{label:et,name:it,path:mt,showCounts:ft,Filter:Ot,InputProps:ct,initialSelectedOptions:Et=[]}=Z,{updateFilters:at,filters:G,queryParameters:{[it]:st}}=(0,z.wp)(),xt=(0,c.h_)(E.A),{value:At}=(0,d.default)(async()=>{var ot;const gt=mt,{facets:vt}=await xt.getEntityFacets({facets:[gt],filter:(ot=G.kind)===null||ot===void 0?void 0:ot.getCatalogFilters()});return Object.fromEntries(vt[gt].map(({value:Bt,count:zt})=>[Bt,zt]))},[G.kind]),Ct=(0,g.useMemo)(()=>[st].flat().filter(Boolean),[st]);var ht;const[lt,pt]=(0,g.useState)(Ct.length?Ct:(ht=(Q=G[it])===null||Q===void 0?void 0:Q.values)!==null&&ht!==void 0?ht:Et);(0,g.useEffect)(()=>{Ct.length&&pt(Ct)},[Ct]);const K=Object.keys(At!=null?At:{}),k=lt.length&&K.length;(0,g.useEffect)(()=>{at({[it]:k?new Ot(lt):void 0})},[it,k,lt,Ot,at]);const q=G[it];return q&&typeof q=="object"&&!("values"in q)||!K.length||K.length<=1?null:(0,o.jsx)(i.Z,{pb:1,pt:1,children:(0,o.jsxs)(u.Z,{variant:"button",component:"label",children:[et,(0,o.jsx)(m.ZP,{multiple:!0,disableCloseOnSelect:!0,options:K,value:lt,onChange:(ot,gt)=>pt(gt),renderOption:(ot,{selected:gt})=>(0,o.jsx)(w,{selected:gt,value:ot,availableOptions:At,showCounts:!!ft}),size:"small",popupIcon:(0,o.jsx)(S.Z,{"data-testid":`${String(it)}-picker-expand`}),renderInput:ot=>(0,o.jsx)(tt,{...ot,...ct})})]})})}},63833:function(V,T,t){"use strict";t.d(T,{d:function(){return Ct}});var o=t(52322),i=t(74314),u=t(79692),S=t(5806),m=t(62774),g=t(21324),c=t(80030),d=t(90436),E=t(86619),y=t(19996),O=t(25505),v=t(38016),A=t(88013),h=t(2784),I=t(25942),P=t(4967),w=t(5270),D=t(98685),M=t(62367),b=t(86540),H=t(44394),Y=t(69294),tt=t(88624);function z({enabled:ht}){const lt=(0,H.h_)(tt.A),[pt]=(0,h.useState)(async()=>{if(!ht)return[];const K="relations.ownedBy";return lt.getEntityFacets({facets:[K]}).then(k=>k.facets[K].map(q=>q.value).map(q=>{const{kind:ot,name:gt,namespace:vt}=(0,i.of)(q);return{apiVersion:"backstage.io/v1beta1",kind:ot,metadata:{name:gt,namespace:vt}}}).sort((q,ot)=>(q.metadata.namespace||"").localeCompare(ot.metadata.namespace||"","en-US")||q.metadata.name.localeCompare(ot.metadata.name,"en-US")||q.kind.localeCompare(ot.kind,"en-US"))).catch(()=>[])});return(0,Y.default)(async(K,k)=>{const q=await pt;if(!q)return{items:[]};var ot;const gt=(ot=k==null?void 0:k.limit)!==null&&ot!==void 0?ot:20,{text:vt,start:Bt}=W(K),zt=q.filter(Nt=>et(vt,Nt)),Ft=Bt+gt;return{items:zt.slice(0,Ft),...Q({entities:zt,limit:Ft,payload:{text:vt,start:Ft}})}},[pt],{loading:!0,value:{items:[]}})}function W(ht){return Z(ht)&&ht.cursor?JSON.parse(atob(ht.cursor)):{text:ht.text||"",start:0}}function Z(ht){return!!ht.cursor}function Q({entities:ht,limit:lt,payload:pt}){return ht.length>lt?{cursor:btoa(JSON.stringify(pt))}:{}}function et(ht,lt){var pt;const K=ht.trim();return lt.kind.includes(K)||((pt=lt.metadata.namespace)===null||pt===void 0?void 0:pt.includes(K))||lt.metadata.name.includes(K)}function it(){const ht=(0,H.h_)(tt.A);return(0,Y.default)(async(lt,pt)=>{const K=lt,k=lt;var q;const ot=(q=pt==null?void 0:pt.limit)!==null&&q!==void 0?q:20;if(k.cursor){const vt=await ht.queryEntities({cursor:k.cursor,limit:ot});return{cursor:vt.pageInfo.nextCursor,items:[...k.items,...vt.items]}}const gt=await ht.queryEntities({fullTextFilter:{term:K.text||"",fields:["metadata.name","kind","spec.profile.displayname","metadata.title"]},filter:{kind:["User","Group"]},orderFields:[{field:"metadata.name",order:"asc"}],limit:ot});return{cursor:gt.pageInfo.nextCursor,items:gt.items}},[],{loading:!0})}var mt=t(89586);function ft({mode:ht,initialSelectedOwnersRefs:lt}){const pt=ht==="owners-only",K=it(),k=z({enabled:pt}),[q,ot]=pt?k:K;return[q,ot,Ot({enabled:!pt,initialSelectedOwnersRefs:lt})]}function Ot({enabled:ht,initialSelectedOwnersRefs:lt}){const pt=(0,h.useRef)({}),K=(0,H.h_)(tt.A),[,k]=(0,Y.default)(async()=>{(await K.getEntitiesByRefs({entityRefs:lt})).items.forEach(ot=>{ot&&(pt.current[(0,i.eE)(ot)]=ot)})},[]);return(0,mt.n)(()=>{ht&<.length>0&&k()}),{getEntity:q=>pt.current[q],setEntity:q=>{pt.current[(0,i.eE)(q)]=q}}}var ct=t(15459),Et=t(74780);const at=(0,u.Z)({input:{},fullWidth:{width:"100%"},boxLabel:{width:"100%",textOverflow:"ellipsis",overflow:"hidden"}},{name:"CatalogReactEntityOwnerPicker"}),G=(0,ct.Z)(ht=>({label:{width:"100%"},root:{width:"90%"}}),{name:"FixedWidthFormControlLabel"})(S.Z),st=(0,o.jsx)(O.Z,{fontSize:"small"}),xt=(0,o.jsx)(y.Z,{fontSize:"small"});function At(ht){const lt=at(),pt=ht.entity.kind.toLocaleLowerCase("en-US")==="group",{primaryTitle:K}=(0,Et.V)(ht.entity);return(0,o.jsx)(m.Z,{className:lt.fullWidth,children:(0,o.jsx)(G,{className:lt.fullWidth,control:(0,o.jsx)(g.Z,{icon:st,checkedIcon:xt,checked:ht.isSelected}),onClick:k=>k.preventDefault(),label:(0,o.jsx)(c.ZP,{title:K,children:(0,o.jsxs)(m.Z,{display:"flex",alignItems:"center",children:[pt?(0,o.jsx)(M.Z,{fontSize:"small"}):(0,o.jsx)(D.Z,{fontSize:"small"}),"\xA0",(0,o.jsx)(m.Z,{className:lt.boxLabel,children:(0,o.jsx)(d.Z,{noWrap:!0,children:K})})]})})})})}const Ct=ht=>{var lt,pt;const K=at(),{mode:k="owners-only"}=ht||{},{updateFilters:q,filters:ot,queryParameters:{owners:gt}}=(0,I.wp)(),[vt,Bt]=(0,h.useState)(""),zt=(0,h.useMemo)(()=>[gt].flat().filter(Boolean),[gt]);var Ft;const[Nt,Lt]=(0,h.useState)(zt.length?zt:(Ft=(lt=ot.owners)===null||lt===void 0?void 0:lt.values)!==null&&Ft!==void 0?Ft:[]),[{value:Yt,loading:Te},pe,le]=ft({mode:k,initialSelectedOwnersRefs:Nt});(0,w.b)(()=>pe({text:vt}),[vt,pe],250);const _t=(Yt==null?void 0:Yt.items)||[];return(0,h.useEffect)(()=>{if(zt.length){const jt=new P.rf(zt);Lt(jt.values)}},[zt]),(0,h.useEffect)(()=>{q({owners:Nt.length?new P.rf(Nt):void 0})},[Nt,q]),["user","group"].includes(((pt=ot.kind)===null||pt===void 0?void 0:pt.value.toLocaleLowerCase("en-US"))||"")?null:(0,o.jsx)(m.Z,{pb:1,pt:1,children:(0,o.jsxs)(d.Z,{variant:"button",component:"label",children:["Owner",(0,o.jsx)(A.ZP,{multiple:!0,disableCloseOnSelect:!0,loading:Te,options:_t,value:Nt,getOptionSelected:(jt,Vt)=>typeof Vt=="string"?(0,i.eE)(jt)===Vt:jt===Vt,getOptionLabel:jt=>{const Vt=typeof jt=="string"?le.getEntity(jt)||(0,i.of)(jt,{defaultKind:"group",defaultNamespace:"default"}):jt;return(0,b.w)(Vt,(0,b.$)(Vt))},onChange:(jt,Vt)=>{Bt(""),Lt(Vt.map(Oe=>{const ke=typeof Oe=="string"?Oe:(0,i.eE)(Oe);return typeof Oe!="string"&&le.setEntity(Oe),ke}))},filterOptions:jt=>jt,renderOption:(jt,{selected:Vt})=>(0,o.jsx)(At,{entity:jt,isSelected:Vt}),size:"small",popupIcon:(0,o.jsx)(v.Z,{"data-testid":"owner-picker-expand"}),renderInput:jt=>(0,o.jsx)(E.Z,{...jt,className:K.input,onChange:Vt=>{Bt(Vt.currentTarget.value)},variant:"outlined"}),ListboxProps:{onScroll:jt=>{const Vt=jt.currentTarget;Math.abs(Vt.scrollHeight-Vt.clientHeight-Vt.scrollTop)<1&&(Yt!=null&&Yt.cursor)&&pe({items:Yt.items,cursor:Yt.cursor})},"data-testid":"owner-picker-listbox"}})]})})}},76277:function(V,T,t){"use strict";t.d(T,{d:function(){return h}});var o=t(52322),i=t(74314),u=t(34106),S=t(98864),m=t(37321),g=t(2784),c=t(36434),d=t(79692),E=t(62774),y=t(80030),O=t(74780);const v=(0,d.Z)(P=>({root:{display:"inline-flex",alignItems:"center"},icon:{marginRight:P.spacing(.5),color:P.palette.text.secondary,lineHeight:0}}),{name:"CatalogReactEntityDisplayName"}),A=P=>{const{entityRef:w,hideIcon:D,disableTooltip:M,defaultKind:b,defaultNamespace:H}=P,Y=v(),{primaryTitle:tt,secondaryTitle:z,Icon:W}=(0,O.V)(w,{defaultKind:b,defaultNamespace:H});let Z=(0,o.jsx)(o.Fragment,{children:tt});return Z=(0,o.jsxs)(E.Z,{component:"span",className:Y.root,children:[W&&!D?(0,o.jsx)(E.Z,{component:"span",className:Y.icon,children:(0,o.jsx)(W,{fontSize:"inherit"})}):null,Z]}),z&&!M&&(Z=(0,o.jsx)(y.ZP,{enterDelay:1500,title:z,children:Z})),Z},h=(0,g.forwardRef)((P,w)=>{const{entityRef:D,defaultKind:M,defaultNamespace:b,title:H,children:Y,hideIcon:tt,...z}=P,W=I(P.entityRef);var Z;const Q=(Z=Y!=null?Y:H)!==null&&Z!==void 0?Z:(0,o.jsx)(A,{entityRef:D,defaultKind:M,defaultNamespace:b,hideIcon:tt});return(0,o.jsx)(S.rU,{...z,ref:w,to:W,children:Q})});function I(P){const w=(0,m.t)(c.w);let D,M,b;if(typeof P=="string"){const tt=(0,i.of)(P);D=tt.kind,M=tt.namespace,b=tt.name}else"metadata"in P?(D=P.kind,M=P.metadata.namespace,b=P.metadata.name):(D=P.kind,M=P.namespace,b=P.name);D=D.toLocaleLowerCase("en-US");var H;M=(H=M==null?void 0:M.toLocaleLowerCase("en-US"))!==null&&H!==void 0?H:u.zG;const Y={kind:encodeURIComponent(D),namespace:encodeURIComponent(M),name:encodeURIComponent(b)};return w(Y)}},51194:function(V,T,t){"use strict";t.d(T,{r:function(){return m}});var o=t(52322),i=t(74314),u=t(2784),S=t(76277);function m(g){const{entityRefs:c,hideIcons:d,...E}=g;return(0,o.jsx)(o.Fragment,{children:c.map((y,O)=>{const v=typeof y=="string"?y:(0,i.eE)(y);return(0,o.jsxs)(u.Fragment,{children:[O>0&&", ",(0,o.jsx)(S.d,{...E,entityRef:y,hideIcon:d})]},`${O}.${v}`)})})}},86540:function(V,T,t){"use strict";t.d(T,{$:function(){return S},w:function(){return m}});var o=t(34106),i=t(72579),u=t.n(i);function S(g,c){const d=c==null?void 0:c.defaultKind;let E,y,O;return"metadata"in g?(E=g.kind,y=g.metadata.namespace,O=g.metadata.name):(E=g.kind,y=g.namespace,O=g.name),(y===void 0||y==="")&&(y=o.zG),(c==null?void 0:c.defaultNamespace)!==void 0?(c==null?void 0:c.defaultNamespace)===y&&(y=void 0):y===o.zG&&(y=void 0),E=E.toLocaleLowerCase("en-US"),E=d&&d.toLocaleLowerCase("en-US")===E?void 0:E,`${E?`${E}:`:""}${y?`${y}/`:""}${O}`}function m(g,c){for(const d of["spec.profile.displayName","metadata.title"]){const E=u()(g,d);if(E&&typeof E=="string")return E}return c}},97894:function(V,T,t){"use strict";t.d(T,{x:function(){return c}});var o=t(52322),i=t(79692),u=t(2784),S=t(4967),m=t(77605);const g=(0,i.Z)({input:{}},{name:"CatalogReactEntityTagPicker"}),c=d=>{const E=g();return(0,o.jsx)(m.K,{label:"Tags",name:"tags",path:"metadata.tags",Filter:S.Cu,showCounts:d.showCounts,InputProps:{className:E.input}})}},32494:function(V,T,t){"use strict";t.d(T,{E:function(){return Ot}});var o=t(52322),i=t(44394),u=t(6542),S=t(79692),m=t(94339),g=t(90436),c=t(11776),d=t(12231),E=t(86136),y=t(49378),O=t(9520),v=t(47603),A=t(11640),h=t(2784),I=t(4967),P=t(25942),w=t(77186),D=t(76635),M=t(64279),b=t(88624),H=t(64039),Y=t(69294),tt=t(38408);function z(){const ct=(0,i.h_)(w.$),Et=(0,i.h_)(b.A),{filters:at}=(0,P.wp)(),{value:G,loading:st}=(0,M.default)(async()=>(await ct.getBackstageIdentity()).ownershipEntityRefs,[]),{user:xt,owners:At,...Ct}=at,{["metadata.name"]:ht,...lt}=(0,H.wq)((0,D.compact)(Object.values(Ct))),[{value:pt,loading:K},k]=(0,Y.default)(async ot=>{const gt=W(ot.owners,ot.ownershipEntityRefs);if(gt===void 0)return 0;const{totalItems:vt}=await Et.queryEntities({filter:{...ot.filter,"relations.ownedBy":gt},limit:0});return vt},[],{loading:!0});return(0,tt.Z)(()=>{Object.keys(lt).length!==0&&G!==void 0&&k({ownershipEntityRefs:G,owners:At,filter:lt})},[G,At,lt]),{count:pt,loading:st||K,filter:(0,h.useMemo)(()=>I.t$.owned(G!=null?G:[]),[G]),ownershipEntityRefs:G}}function W(ct,Et){if(Et===void 0)return;var at;const G=(at=ct==null?void 0:ct.values)!==null&&at!==void 0?at:[];if(G.length){const st=(0,D.intersection)(G,Et);return st.length===0?void 0:st}return Et}function Z(){const ct=(0,i.h_)(b.A),{filters:Et}=(0,P.wp)(),at=(0,h.useRef)(),G=(0,h.useMemo)(()=>{const{user:At,...Ct}=Et,ht=(0,D.compact)(Object.values(Ct)),lt=(0,H.wq)(ht),pt={filter:lt,limit:0};return Object.keys(lt).length===0?(at.current=void 0,at.current):(0,D.isEqual)(pt,at.current)?at.current:(at.current=pt,pt)},[Et]),{value:st,loading:xt}=(0,M.default)(async()=>{if(G===void 0)return 0;const{totalItems:At}=await ct.queryEntities(G);return At},[G]);return{count:st,loading:xt}}var Q=t(74314),et=t(42870);function it(){const ct=(0,i.h_)(b.A),{filters:Et}=(0,P.wp)(),{starredEntities:at}=(0,et.C)(),G=(0,h.useRef)(),st=(0,h.useMemo)(()=>{const{user:ht,...lt}=Et,pt=(0,D.compact)(Object.values(lt)),q={filter:{...(0,H.wq)(pt),["metadata.name"]:Array.from(at).map(ot=>(0,Q.of)(ot).name)},limit:1e3};return(0,D.isEqual)(q,G.current)?G.current:(G.current=q,q)},[Et,at]),{value:xt,loading:At}=(0,M.default)(async()=>at.size?(await ct.queryEntities(st)).items.map(lt=>(0,Q.eE)({kind:lt.kind,namespace:lt.metadata.namespace,name:lt.metadata.name})).filter(lt=>at.has(lt)).length:0,[st,at]),Ct=(0,h.useMemo)(()=>I.t$.starred(Array.from(at)),[at]);return{count:xt,loading:At,filter:Ct}}const mt=(0,S.Z)(ct=>({root:{backgroundColor:"rgba(0, 0, 0, .11)",boxShadow:"none",margin:ct.spacing(1,0,1,0)},title:{margin:ct.spacing(1,0,0,1),textTransform:"uppercase",fontSize:12,fontWeight:"bold"},listIcon:{minWidth:30,color:ct.palette.text.primary},menuItem:{minHeight:ct.spacing(6)},groupWrapper:{margin:ct.spacing(1,1,2,1)}}),{name:"CatalogReactUserListPicker"});function ft(ct){return[{name:"Personal",items:[{id:"owned",label:"Owned",icon:v.Z},{id:"starred",label:"Starred",icon:A.Z}]},{name:ct!=null?ct:"Company",items:[{id:"all",label:"All"}]}]}const Ot=ct=>{const{initialFilter:Et,availableFilters:at}=ct,G=mt(),st=(0,i.h_)(u.D);var xt;const At=(xt=st.getOptionalString("organization.name"))!==null&&xt!==void 0?xt:"Company",{filters:Ct,updateFilters:ht,queryParameters:{kind:lt,user:pt}}=(0,P.wp)(),K=["starred","all"],k=ft(At).map(le=>({...le,items:le.items.filter(({id:_t})=>["group","user"].some(jt=>jt===lt)?K.includes(_t):!at||at.includes(_t))})).filter(({items:le})=>!!le.length),{count:q,loading:ot,filter:gt}=z(),{count:vt}=Z(),{count:Bt,filter:zt,loading:Ft}=it(),Nt=(0,h.useMemo)(()=>[pt].flat()[0],[pt]),[Lt,Yt]=(0,h.useState)(Nt!=null?Nt:Et),Te=(0,h.useMemo)(()=>({all:vt,starred:Bt,owned:q}),[Bt,q,vt]);(0,h.useEffect)(()=>{Nt&&Yt(Nt)},[Nt]);const pe=ot||Ft;return(0,h.useEffect)(()=>{!pe&&Lt&&Lt!=="all"&&Te[Lt]===0&&Yt("all")},[pe,Te,Lt,Yt]),(0,h.useEffect)(()=>{if(!Lt||pe)return;ht({user:(()=>Lt==="owned"?gt:Lt==="starred"?zt:I.t$.all())()})},[Lt,zt,gt,ht,pe]),(0,o.jsx)(m.Z,{className:G.root,children:k.map(le=>(0,o.jsxs)(h.Fragment,{children:[(0,o.jsx)(g.Z,{variant:"subtitle2",component:"span",className:G.title,children:le.name}),(0,o.jsx)(m.Z,{className:G.groupWrapper,children:(0,o.jsx)(c.Z,{disablePadding:!0,dense:!0,role:"menu","aria-label":le.name,children:le.items.map(_t=>{var jt,Vt;return(0,o.jsxs)(d.Z,{role:"none presentation",divider:!0,onClick:()=>Yt(_t.id),selected:_t.id===((jt=Ct.user)===null||jt===void 0?void 0:jt.value),className:G.menuItem,disabled:Te[_t.id]===0,"data-testid":`user-picker-${_t.id}`,tabIndex:0,ContainerProps:{role:"menuitem"},children:[_t.icon&&(0,o.jsx)(E.Z,{className:G.listIcon,children:(0,o.jsx)(_t.icon,{fontSize:"small"})}),(0,o.jsx)(y.Z,{children:(0,o.jsxs)(g.Z,{variant:"body1",children:[_t.label," "]})}),(0,o.jsx)(O.Z,{children:(Vt=Te[_t.id])!==null&&Vt!==void 0?Vt:"-"})]},_t.id)})})})]},le.name))})}},4967:function(V,T,t){"use strict";t.d(T,{A5:function(){return I},Bf:function(){return g},Cu:function(){return c},IZ:function(){return A},Qe:function(){return O},SZ:function(){return d},mM:function(){return h},rf:function(){return E},t$:function(){return v},zH:function(){return y},zo:function(){return m}});var o=t(87612),i=t(8709),u=t(74314),S=t(75435);class m{getCatalogFilters(){return{kind:this.value}}toQueryValue(){return this.value}constructor(w){(0,o._)(this,"value",void 0),this.value=w}}class g{getTypes(){return Array.isArray(this.value)?this.value:[this.value]}getCatalogFilters(){return{"spec.type":this.getTypes()}}toQueryValue(){return this.getTypes()}constructor(w){(0,o._)(this,"value",void 0),this.value=w}}class c{filterEntity(w){return this.values.every(D=>{var M;return((M=w.metadata.tags)!==null&&M!==void 0?M:[]).includes(D)})}getCatalogFilters(){return{"metadata.tags":this.values}}toQueryValue(){return this.values}constructor(w){(0,o._)(this,"values",void 0),this.values=w}}class d{filterEntity(w){const D=this.toUpperArray(this.value.split(/\s/)),M=this.toUpperArray([w.metadata.tags]),b=this.toUpperArray([w.metadata.name,w.metadata.title]);for(const H of D)if(M.every(Y=>Y!==H)&&b.every(Y=>!Y.includes(H)))return!1;return!0}toUpperArray(w){return w.flat().filter(D=>Boolean(D)).map(D=>D.toLocaleUpperCase("en-US"))}constructor(w){(0,o._)(this,"value",void 0),this.value=w}}class E{getCatalogFilters(){return{"relations.ownedBy":this.values}}filterEntity(w){return this.values.some(D=>(0,S.h)(w,i.S4).some(M=>(0,u.eE)(M)===D))}toQueryValue(){return this.values}constructor(w){(0,o._)(this,"values",void 0),this.values=w.reduce((D,M)=>{try{return D.push((0,u.eE)((0,u.of)(M,{defaultKind:"Group"}))),D}catch{return D}},[])}}class y{getCatalogFilters(){return{"spec.lifecycle":this.values}}filterEntity(w){return this.values.some(D=>{var M;return((M=w.spec)===null||M===void 0?void 0:M.lifecycle)===D})}toQueryValue(){return this.values}constructor(w){(0,o._)(this,"values",void 0),this.values=w}}class O{getCatalogFilters(){return{"metadata.namespace":this.values}}filterEntity(w){return this.values.some(D=>w.metadata.namespace===D)}toQueryValue(){return this.values}constructor(w){(0,o._)(this,"values",void 0),this.values=w}}class v{static owned(w){return new v("owned",w)}static all(){return new v("all")}static starred(w){return new v("starred",w)}getCatalogFilters(){if(this.value==="owned"){var w;return{"relations.ownedBy":(w=this.refs)!==null&&w!==void 0?w:[]}}if(this.value==="starred"){var D,M;return{"metadata.name":(M=(D=this.refs)===null||D===void 0?void 0:D.map(b=>(0,u.of)(b).name))!==null&&M!==void 0?M:[]}}return{}}filterEntity(w){if(this.value==="starred"){var D,M;return(M=(D=this.refs)===null||D===void 0?void 0:D.includes((0,u.eE)(w)))!==null&&M!==void 0?M:!0}if(this.value==="owned"){var b;const Y=(0,S.h)(w,i.S4);var H;return(H=(b=this.refs)===null||b===void 0?void 0:b.some(tt=>Y.some(z=>(0,u.eE)(z)===tt)))!==null&&H!==void 0?H:!1}return!0}toQueryValue(){return this.value}constructor(w,D){(0,o._)(this,"value",void 0),(0,o._)(this,"refs",void 0),this.value=w,this.refs=D}}class A{filterEntity(w){switch(this.value){case"owned":return this.isOwnedEntity(w);case"starred":return this.isStarredEntity(w);default:return!0}}toQueryValue(){return this.value}constructor(w,D,M){(0,o._)(this,"value",void 0),(0,o._)(this,"isOwnedEntity",void 0),(0,o._)(this,"isStarredEntity",void 0),this.value=w,this.isOwnedEntity=D,this.isStarredEntity=M}}class h{getCatalogFilters(){return this.value?{"metadata.annotations.backstage.io/orphan":String(this.value)}:{}}filterEntity(w){var D;const M=(D=w.metadata.annotations)===null||D===void 0?void 0:D["backstage.io/orphan"];return M!==void 0&&this.value.toString()===M}constructor(w){(0,o._)(this,"value",void 0),this.value=w}}class I{filterEntity(w){var D,M;const b=(w==null||(M=w.status)===null||M===void 0||(D=M.items)===null||D===void 0?void 0:D.length)>0;return b!==void 0&&this.value===b}constructor(w){(0,o._)(this,"value",void 0),this.value=w}}},25942:function(V,T,t){"use strict";t.d(T,{UO:function(){return I},wp:function(){return P}});var o=t(52322),i=t(76635),u=t.n(i),S=t(19126),m=t.n(S),g=t(2784),c=t(73557),d=t(69294),E=t(48760),y=t(90736),O=t(88624),v=t(64039),A=t(44394);const h=(0,g.createContext)(void 0),I=w=>{const D=(0,y.default)(),M=(0,A.h_)(O.A),[b,H]=(0,g.useState)({}),Y=(0,c.TH)(),tt=w.pagination===!0||typeof w.pagination=="object",z=w.pagination&&typeof w.pagination=="object"&&typeof w.pagination.limit=="number"?w.pagination.limit:20,{queryParameters:W,cursor:Z}=(0,g.useMemo)(()=>{const st=m().parse(Y.search,{ignoreQueryPrefix:!0});var xt;return{queryParameters:(xt=st.filters)!==null&&xt!==void 0?xt:{},cursor:typeof st.cursor=="string"?st.cursor:void 0}},[Y]),[Q,et]=(0,g.useState)(Z),[it,mt]=(0,g.useState)(()=>({appliedFilters:{},entities:[],backendEntities:[],pageInfo:tt?{}:void 0})),[{loading:ft,error:Ot},ct]=(0,d.default)(async()=>{const st=(0,i.compact)(Object.values(b)),xt=Object.keys(b).reduce((Ct,ht)=>{const lt=b[ht];return lt!=null&<.toQueryValue&&(Ct[ht]=lt.toQueryValue()),Ct},{});if(tt)if(Q){if(Q!==it.appliedCursor){const Ct=(0,v.Gz)(st),ht=await M.queryEntities({cursor:Q,limit:z});mt({appliedFilters:b,appliedCursor:Q,backendEntities:ht.items,entities:ht.items.filter(Ct),pageInfo:ht.pageInfo})}}else{const Ct=(0,v.Gz)(st),ht=(0,v.wq)(st),lt=(0,v.wq)((0,i.compact)(Object.values(it.appliedFilters)));if(!(0,i.isEqual)(lt,ht)){const pt=await M.queryEntities({filter:ht,limit:z,orderFields:[{field:"metadata.name",order:"asc"}]});mt({appliedFilters:b,backendEntities:pt.items,entities:pt.items.filter(Ct),pageInfo:pt.pageInfo})}}else{const Ct=(0,v.Gz)(st),ht=(0,v.Oq)(st),lt=(0,v.Oq)((0,i.compact)(Object.values(it.appliedFilters)));if((0,i.isEqual)(lt,ht))mt({appliedFilters:b,backendEntities:it.backendEntities,entities:it.backendEntities.filter(Ct)});else{const pt=await M.getEntities({filter:ht});mt({appliedFilters:b,backendEntities:pt.items,entities:pt.items.filter(Ct)})}}if(D()){var At;const Ct=m().parse(Y.search,{ignoreQueryPrefix:!0}),ht=m().stringify({...Ct,filters:xt,cursor:Q},{addQueryPrefix:!0,arrayFormat:"repeat"}),lt=`${window.location.pathname}${ht}`;(At=window.history)===null||At===void 0||At.replaceState(null,document.title,lt)}},[M,W,b,it,Q,tt],{loading:!0});(0,E.Z)(ct,10,[b,Q]);const Et=(0,g.useCallback)(st=>{et(void 0),H(xt=>{const At=typeof st=="function"?st(xt):st;return{...xt,...At}})},[]),at=(0,g.useMemo)(()=>{var st,xt;if(!tt)return;const At=(st=it.pageInfo)===null||st===void 0?void 0:st.prevCursor,Ct=(xt=it.pageInfo)===null||xt===void 0?void 0:xt.nextCursor;return{prev:At?()=>et(At):void 0,next:Ct?()=>et(Ct):void 0}},[tt,it.pageInfo]),G=(0,g.useMemo)(()=>({filters:it.appliedFilters,entities:it.entities,backendEntities:it.backendEntities,updateFilters:Et,queryParameters:W,loading:ft,error:Ot,pageInfo:at}),[it,Et,W,ft,Ot,at]);return(0,o.jsx)(h.Provider,{value:G,children:w.children})};function P(){const w=(0,g.useContext)(h);if(!w)throw new Error("useEntityList must be used within EntityListProvider");return w}},42870:function(V,T,t){"use strict";t.d(T,{C:function(){return c}});var o=t(74314),i=t(44394),u=t(2784),S=t(72164),m=t(36802);function g(d){return typeof d=="string"?d:(0,o.eE)(d)}function c(){const d=(0,i.h_)(m.p),E=(0,S.Z)((0,u.useMemo)(()=>d.starredEntitie$(),[d]),new Set),y=(0,u.useCallback)(v=>E.has(g(v)),[E]),O=(0,u.useCallback)(v=>d.toggleStarred(g(v)).then(),[d]);return{starredEntities:E,toggleStarredEntity:O,isStarredEntity:y}}},36434:function(V,T,t){"use strict";t.d(T,{w:function(){return u}});var o=t(30283),i=t(96087);const u=(0,i.u)("catalog:entity-route-ref",()=>(0,o.N)({id:"catalog:entity",params:["namespace","kind","name"]}));function S(m){var g,c;return{kind:m.kind.toLocaleLowerCase("en-US"),namespace:(c=(g=m.metadata.namespace)===null||g===void 0?void 0:g.toLocaleLowerCase("en-US"))!==null&&c!==void 0?c:DEFAULT_NAMESPACE,name:m.metadata.name}}},64039:function(V,T,t){"use strict";t.d(T,{Gz:function(){return S},Oq:function(){return u},wq:function(){return i}});var o=t(4967);function i(m){return m.reduce((g,c)=>({...g,...c.getCatalogFilters?c.getCatalogFilters():{}}),{})}function u(m){const g={};return m.forEach(c=>{var d;c instanceof o.Cu||c instanceof o.rf||c instanceof o.zH||c instanceof o.Qe||c instanceof o.t$||c instanceof o.mM||c instanceof o.SZ||c instanceof o.IZ||Object.assign(g,((d=c.getCatalogFilters)===null||d===void 0?void 0:d.call(c))||{})}),g}function S(m){return g=>m.every(c=>!c.filterEntity||c.filterEntity(g))}},75435:function(V,T,t){"use strict";t.d(T,{h:function(){return i}});var o=t(74314);function i(u,S,m){var g;let c=(u==null||(g=u.relations)===null||g===void 0?void 0:g.filter(d=>d.type===S).map(d=>(0,o.of)(d.targetRef)))||[];return m!=null&&m.kind&&(c=c.filter(d=>d.kind.toLocaleLowerCase("en-US")===m.kind.toLocaleLowerCase("en-US"))),c}},65524:function(V,T,t){"use strict";t.d(T,{yw:function(){return d},ql:function(){return y},_Z:function(){return v},kR:function(){return O},jU:function(){return E}});var o=t(87612),i=t(92918);let u=i.K,S=u;class m{toString(){return`routeRef{type=external,id=${this.id}}`}constructor(h,I,P){(0,o._)(this,"id",void 0),(0,o._)(this,"params",void 0),(0,o._)(this,"optional",void 0),(0,o._)(this,S,void 0),this.id=h,this.params=I,this.optional=P,this[u]="external"}}function g(A){var h;return new m(A.id,(h=A.params)!==null&&h!==void 0?h:[],Boolean(A.optional))}var c=t(30283);const d=g({id:"create-component",optional:!0}),E=g({id:"view-techdoc",optional:!0,params:["namespace","kind","name"]}),y=g({id:"create-from-template",optional:!0,params:["namespace","templateName"]}),O=g({id:"catalog:unregister-redirect",optional:!0}),v=(0,c.N)({id:"catalog"})},51261:function(V,T,t){"use strict";t.d(T,{r:function(){return o}});var o;(function(i){i.DENY="DENY",i.ALLOW="ALLOW",i.CONDITIONAL="CONDITIONAL"})(o||(o={}))},98988:function(V,T,t){"use strict";t.d(T,{R:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"plugin.permission.api"})},76079:function(V,T,t){"use strict";t.d(T,{F:function(){return m}});var o=t(52322),i=t(2784),u=t(79692);const S=(0,u.Z)(()=>({highlight:{}}),{name:"BackstageHighlightedSearchResultText"}),m=g=>{const{text:c,preTag:d,postTag:E}=g,y=S(),O=(0,i.useMemo)(()=>c.split(new RegExp(`(${d}.+?${E})`)),[E,d,c]);return(0,o.jsx)(o.Fragment,{children:O.map((v,A)=>v.includes(d)?(0,o.jsx)("mark",{className:y.highlight,children:v.replace(new RegExp(`${d}|${E}`,"g"),"")},A):v)})}},53945:function(V,T,t){"use strict";t.d(T,{E5:function(){return E}});var o=t(52322),i=t(2784),u=t(62369),S=t(82963),m=t(38402);const g="search.results.list.items.extensions.v1",c=(v,A)=>{for(const h of v){if(!isValidElement(h))continue;const I=getComponentData(h,g);if(I!=null&&I(A))return cloneElement(h,{rank:A.rank,highlight:A.highlight,result:A.document,...h.props})}return null},d=v=>{const{rank:A,result:h,noTrack:I,children:P,alignItems:w="flex-start",...D}=v,M=(0,u.z)(),b=(0,i.useCallback)(()=>{I||h&&M.captureEvent("discover",h.title,{attributes:{to:h.location},value:A})},[A,h,I,M]);return(0,o.jsx)(m.Z,{divider:!0,alignItems:w,onClickCapture:b,...D,children:P})},E=v=>{const{name:A,component:h,predicate:I=()=>!0}=v;return(0,S.YO)({name:A,component:{lazy:()=>h().then(P=>w=>(0,o.jsx)(d,{rank:w.rank,result:w.result,noTrack:w.noTrack,children:(0,i.createElement)(P,w)}))},data:{[g]:I}})},y=v=>{const A=useElementFilter(v,h=>h.selectByComponentData({key:g}).getElements(),[v]);return useCallback((h,I)=>{const P=c(A,h);return _jsx(Fragment,{children:P!=null?P:_jsx(d,{rank:h.rank,result:h.document,children:_jsx(DefaultResultListItem,{rank:h.rank,highlight:h.highlight,result:h.document})})},I)},[A])},O=v=>{const{results:A,children:h,...I}=v,P=y(h);return _jsx(List,{...I,children:A.map(P)})}},2296:function(V,T,t){"use strict";t.d(T,{$L:function(){return I},DR:function(){return E},KY:function(){return O},Zz:function(){return d},jM:function(){return c}});var o=t(52322),i=t(2784),u=t(73557),S=t(62584),m=t(82963),g=t(2532);const c="techdocs.addons.addon.v1",d="techdocs.addons.wrapper.v1",E=()=>null;(0,S.R)(E,d,!0);const y=P=>`${c}.${P.toLocaleLowerCase("en-US")}`;function O(P){const{name:w,component:D}=P;return(0,m.YO)({name:w,component:{sync:M=>(0,o.jsx)(D,{...M})},data:{[c]:P,[y(w)]:!0}})}const v=(P,w)=>P.selectByComponentData({key:w}).getElements()[0],A=P=>P.selectByComponentData({key:d}).selectByComponentData({key:c}),h=P=>P.selectByComponentData({key:d}).findComponentData({key:c}),I=()=>{const P=(0,u.pC)(),w=(0,g.v)(P,A),D=(0,g.v)(P,h),M=(0,i.useCallback)(Y=>{if(!w||!Y)return null;const tt=y(Y.name);var z;return(z=v(w,tt))!==null&&z!==void 0?z:null},[w]),b=(0,i.useCallback)(Y=>{const tt=D.find(z=>z.name===Y);return tt?M(tt):null},[D,M]),H=(0,i.useCallback)(Y=>{const tt=D.filter(z=>z.location===Y);return tt.length?tt.map(M):null},[D,M]);return{renderComponentByName:b,renderComponentsByLocation:H}}},58496:function(V,T,t){"use strict";t.d(T,{D:function(){return u},g:function(){return i}});var o=t(95965);const i=(0,o.T)({id:"plugin.techdocs.service"}),u=(0,o.T)({id:"plugin.techdocs.storageservice"})},68979:function(V,T,t){"use strict";t.d(T,{Z:function(){return P},x:function(){return w}});var o=t(52322),i=t(2784),u=t(64279),S=t(77446),m=t(74314),g=t(29651),c=t(68993),d=t(44394),E=t(6542),y=t(72388),O=t(58496);function v(D,M){return M.getOptionalBoolean("techdocs.legacyUseCaseSensitiveTripletPaths")||(D.kind=D.kind.toLocaleLowerCase(),D.name=D.name.toLocaleLowerCase(),D.namespace=D.namespace.toLocaleLowerCase()),D}const A=(D,M)=>(0,m.eE)(D)===(0,m.eE)(M),h={title:"",subtitle:"",setTitle:()=>{},setSubtitle:()=>{},setShadowRoot:()=>{},metadata:{loading:!0},entityMetadata:{loading:!0},entityRef:{kind:"",name:"",namespace:""}},I=(0,g.CT)("techdocs-reader-page-context"),P=(0,i.memo)(D=>{const{entityRef:M,children:b}=D,H=(0,d.h_)(O.g),Y=(0,d.h_)(E.D),tt=(0,u.default)(async()=>H.getEntityMetadata(M),[M]),z=(0,S.Z)(async()=>H.getTechDocsMetadata(M),[M]),[W,Z]=(0,i.useState)(h.title),[Q,et]=(0,i.useState)(h.subtitle),[it,mt]=(0,i.useState)(h.shadowRoot);(0,i.useEffect)(()=>{it&&!z.value&&!z.loading&&z.retry()},[z.value,z.loading,it,z.retry,z]);const ft={metadata:z,entityRef:v(M,Y),entityMetadata:tt,shadowRoot:it,setShadowRoot:mt,title:W,setTitle:Z,subtitle:Q,setSubtitle:et},Ot=(0,c.E)({1:ft});return(0,o.jsx)(y.fC,{attributes:{entityRef:(0,m.eE)(M)},children:(0,o.jsx)(I.Provider,{value:Ot,children:b instanceof Function?b(ft):b})})},(D,M)=>A(D.entityRef,M.entityRef)),w=()=>{const D=(0,i.useContext)(I);if(D===void 0)return h;const M=D.atVersion(1);if(M===void 0)throw new Error("No context found for version 1.");return M}},57058:function(V,T,t){"use strict";t.d(T,{o:function(){return o}});const o=Object.freeze({Header:"Header",Subheader:"Subheader",Settings:"Settings",PrimarySidebar:"PrimarySidebar",SecondarySidebar:"SecondarySidebar",Content:"Content"})},51953:function(V,T,t){"use strict";t.d(T,{D:function(){return o}});function o(i,u){return u.getOptionalBoolean("techdocs.legacyUseCaseSensitiveTripletPaths")?i:i.toLocaleLowerCase("en-US")}},29895:function(V,T,t){"use strict";t.d(T,{u:function(){return z}});var o=t(52322),i=t(2784),u=t(42398),S=t(30706),m=t(13788),g=t(25942),c=t(30389),d=t(32494),E=t(63833),y=t(97894),O=t(42081),v=t(88797);class A{getCatalogFilters(){return{"metadata.annotations.backstage.io/techdocs-ref":v.n}}}const h=()=>{const{updateFilters:W}=(0,g.wp)();return(0,i.useEffect)(()=>{W({techdocs:new A})},[W]),null};var I=t(95074),P=t(76635),w=t(538),D=t(9791),M=t(42870),b=t(16787),H=t(45342),Y=t(49079);const tt=W=>{var Z;const{columns:Q,actions:et,options:it}=W,{loading:mt,error:ft,entities:Ot,filters:ct}=(0,g.wp)(),{isStarredEntity:Et,toggleStarredEntity:at}=(0,M.C)(),[,G]=(0,I.Z)();var st;const xt=(0,P.capitalize)((st=(Z=ct.user)===null||Z===void 0?void 0:Z.value)!==null&&st!==void 0?st:"all"),At=[H.n.createCopyDocsUrlAction(G),H.n.createStarEntityAction(Et,at)];return ft?(0,o.jsx)(w.G,{severity:"error",title:"Could not load available documentation.",children:(0,o.jsx)(D.O,{language:"text",text:ft.toString()})}):(0,o.jsx)(b.H,{title:xt,entities:Ot,loading:mt,actions:et||At,columns:Q,options:it})};tt.columns=Y.N,tt.actions=H.n;const z=W=>{const{initialFilter:Z="owned",columns:Q,actions:et}=W;return(0,o.jsx)(O.j,{children:(0,o.jsxs)(u.V,{children:[(0,o.jsx)(S.y,{title:"",children:(0,o.jsx)(m.q,{children:"Discover documentation in your ecosystem."})}),(0,o.jsx)(g.UO,{children:(0,o.jsxs)(c._i,{children:[(0,o.jsxs)(c._i.Filters,{children:[(0,o.jsx)(h,{}),(0,o.jsx)(d.E,{initialFilter:Z}),(0,o.jsx)(E.d,{}),(0,o.jsx)(y.x,{})]}),(0,o.jsx)(c._i.Content,{children:(0,o.jsx)(tt,{actions:et,columns:Q})})]})})]})})}},16787:function(V,T,t){"use strict";t.d(T,{H:function(){return w}});var o=t(52322),i=t(2784),u=t(95074),S=t(37321),m=t(44394),g=t(6542),c=t(8709),d=t(75435),E=t(86540),y=t(95573),O=t(34378),v=t(70249),A=t(15929),h=t(45342),I=t(49079),P=t(51953);const w=D=>{const{entities:M,title:b,loading:H,columns:Y,actions:tt,options:z}=D,[,W]=(0,u.Z)(),Z=(0,S.t)(y.Fw),Q=(0,m.h_)(g.D);if(!M)return null;const et=M.map(ct=>{const Et=(0,d.h)(ct,c.S4);var at;return{entity:ct,resolved:{docsUrl:Z({namespace:(0,P.D)((at=ct.metadata.namespace)!==null&&at!==void 0?at:"default",Q),kind:(0,P.D)(ct.kind,Q),name:(0,P.D)(ct.metadata.name,Q)}),ownedByRelations:Et,ownedByRelationsTitle:Et.map(G=>(0,E.$)(G,{defaultKind:"group"})).join(", ")}}}),it=[I.N.createNameColumn(),I.N.createOwnerColumn(),I.N.createKindColumn(),I.N.createTypeColumn()],mt=[h.n.createCopyDocsUrlAction(W)],ft=20,Ot=et&&et.length>ft;return(0,o.jsx)(o.Fragment,{children:H||et&&et.length>0?(0,o.jsx)(O.i,{isLoading:H,options:{paging:Ot,pageSize:ft,search:!0,actionsColumnIndex:-1,...z},data:et,columns:Y||it,actions:tt||mt,title:b?`${b} (${et.length})`:`All (${et.length})`}):(0,o.jsx)(v.u,{missing:"data",title:"No documents to show",description:"Create your own document. Check out our Getting Started Information",action:(0,o.jsx)(A.Q,{color:"primary",to:"https://backstage.io/docs/features/techdocs/getting-started",variant:"contained",children:"DOCS"})})})};w.columns=I.N,w.actions=h.n},45342:function(V,T,t){"use strict";t.d(T,{n:function(){return d}});var o=t(52322),i=t(2784),u=t(39981),S=t(2337),m=t(11640),g=t(28347);const c=(0,S.Z)({root:{color:"#f3ba37"}})(m.Z),d={createCopyDocsUrlAction(E){return y=>({icon:()=>(0,o.jsx)(u.Z,{fontSize:"small"}),tooltip:"Click to copy documentation link to clipboard",onClick:()=>E(`${window.location.origin}${y.resolved.docsUrl}`)})},createStarEntityAction(E,y){return O=>{const v=O.entity,A=E(v);return{cellStyle:{paddingLeft:"1em"},icon:()=>A?(0,o.jsx)(c,{}):(0,o.jsx)(g.Z,{}),tooltip:A?"Remove from favorites":"Add to favorites",onClick:()=>y(v)}}}}},49079:function(V,T,t){"use strict";t.d(T,{N:function(){return y}});var o=t(52322),i=t(2784),u=t(62774),S=t(79692);const m=(0,S.Z)(O=>({value:{marginBottom:O.spacing(.75)},subvalue:{color:O.palette.textSubtle,fontWeight:"normal"}}),{name:"BackstageSubvalueCell"});function g(O){const{value:v,subvalue:A}=O,h=m();return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(u.Z,{className:h.value,children:v}),(0,o.jsx)(u.Z,{className:h.subvalue,children:A})]})}var c=t(98864),d=t(51194);function E(O){return O.metadata.title||O.metadata.name}const y={createNameColumn(){return{title:"Document",field:"entity.metadata.name",highlight:!0,render:O=>(0,o.jsx)(g,{value:(0,o.jsx)(c.rU,{to:O.resolved.docsUrl,children:E(O.entity)}),subvalue:O.entity.metadata.description})}},createOwnerColumn(){return{title:"Owner",field:"resolved.ownedByRelationsTitle",render:({resolved:O})=>(0,o.jsx)(d.r,{entityRefs:O.ownedByRelations,defaultKind:"group"})}},createKindColumn(){return{title:"Kind",field:"entity.kind"}},createTypeColumn(){return{title:"Type",field:"entity.spec.type"}}}},42081:function(V,T,t){"use strict";t.d(T,{j:function(){return g}});var o=t(52322),i=t(2784),u=t(32166),S=t(44394),m=t(6542);const g=c=>{const{children:d}=c,E=(0,S.h_)(m.D);var y;const O=`Documentation available in ${(y=E.getOptionalString("organization.name"))!==null&&y!==void 0?y:"Backstage"}`;return(0,o.jsx)(u.g,{title:"Documentation",subtitle:O,themeId:"documentation",children:d})}},78284:function(V,T,t){"use strict";t.d(T,{Jl:function(){return H},I6:function(){return Y},s4:function(){return w}});var o=t(58496),i=t(87612),u=t(41385),S=t(50029),m=t(54847);class g{async getApiOrigin(){return await this.discoveryApi.getBaseUrl("techdocs")}async getTechDocsMetadata(W){const{kind:Z,namespace:Q,name:et}=W,mt=`${await this.getApiOrigin()}/metadata/techdocs/${Q}/${Z}/${et}`,ft=await this.fetchApi.fetch(`${mt}`);if(!ft.ok)throw await u.V.fromResponse(ft);return await ft.json()}async getEntityMetadata(W){const{kind:Z,namespace:Q,name:et}=W,mt=`${await this.getApiOrigin()}/metadata/entity/${Q}/${Z}/${et}`,ft=await this.fetchApi.fetch(`${mt}`);if(!ft.ok)throw await u.V.fromResponse(ft);return await ft.json()}constructor(W){(0,i._)(this,"configApi",void 0),(0,i._)(this,"discoveryApi",void 0),(0,i._)(this,"fetchApi",void 0),this.configApi=W.configApi,this.discoveryApi=W.discoveryApi,this.fetchApi=W.fetchApi}}class c{async getApiOrigin(){return await this.discoveryApi.getBaseUrl("techdocs")}async getStorageUrl(){var W;return(W=this.configApi.getOptionalString("techdocs.storageUrl"))!==null&&W!==void 0?W:`${await this.discoveryApi.getBaseUrl("techdocs")}/static/docs`}async getBuilder(){return this.configApi.getString("techdocs.builder")}async getEntityDocs(W,Z){const{kind:Q,namespace:et,name:it}=W,ft=`${await this.getStorageUrl()}/${et}/${Q}/${it}/${Z}`,Ot=await this.fetchApi.fetch(`${ft.endsWith("/")?ft:`${ft}/`}index.html`);let ct="";switch(Ot.status){case 404:throw ct="Page not found. ",Z||(ct+="This could be because there is no index.md file in the root of the docs directory of this repository."),new S.dR(ct);case 500:throw ct="Could not generate documentation or an error in the TechDocs backend. ",new Error(ct);default:break}return Ot.text()}async syncEntityDocs(W,Z=()=>{}){const{kind:Q,namespace:et,name:it}=W,ft=`${await this.getApiOrigin()}/sync/${et}/${Q}/${it}`,{token:Ot}=await this.identityApi.getCredentials();return new Promise((ct,Et)=>{const at=new m.EventSourcePolyfill(ft,{withCredentials:!0,headers:Ot?{Authorization:`Bearer ${Ot}`}:{}});at.addEventListener("log",G=>{G.data&&Z(JSON.parse(G.data))}),at.addEventListener("finish",G=>{let st=!1;G.data&&({updated:st}=JSON.parse(G.data)),ct(st?"updated":"cached")}),at.onerror=G=>{switch(at.close(),G.status){case 404:Et(new S.dR(G.message));return;default:Et(new Error(G.data));return}}})}async getBaseUrl(W,Z,Q){const{kind:et,namespace:it,name:mt}=Z,Ot=`${await this.getApiOrigin()}/static/docs/${it}/${et}/${mt}/${Q}`;return new URL(W,Ot.endsWith("/")?Ot:`${Ot}/`).toString()}constructor(W){(0,i._)(this,"configApi",void 0),(0,i._)(this,"discoveryApi",void 0),(0,i._)(this,"identityApi",void 0),(0,i._)(this,"fetchApi",void 0),this.configApi=W.configApi,this.discoveryApi=W.discoveryApi,this.identityApi=W.identityApi,this.fetchApi=W.fetchApi}}var d=t(95573),E=t(15006),y=t(42380),O=t(6542),v=t(96727),A=t(77186),h=t(85094),I=t(82963),P=t(53945);const w=(0,E.r)({id:"techdocs",apis:[(0,y.n)({api:o.D,deps:{configApi:O.D,discoveryApi:v.N,identityApi:A.$,fetchApi:h.g},factory:({configApi:z,discoveryApi:W,identityApi:Z,fetchApi:Q})=>new c({configApi:z,discoveryApi:W,identityApi:Z,fetchApi:Q})}),(0,y.n)({api:o.g,deps:{configApi:O.D,discoveryApi:v.N,fetchApi:h.g},factory:({configApi:z,discoveryApi:W,fetchApi:Z})=>new g({configApi:z,discoveryApi:W,fetchApi:Z})})],routes:{root:d._Z,docRoot:d.Fw,entityContent:d.pd}}),D=w.provide((0,I.P4)({name:"TechdocsPage",component:()=>t.e(8096).then(t.bind(t,8096)).then(z=>z.Router),mountPoint:d._Z})),M=w.provide((0,I.P4)({name:"EntityTechdocsContent",component:()=>t.e(8096).then(t.bind(t,8096)).then(z=>z.EmbeddedDocsRouter),mountPoint:d.pd})),b=w.provide((0,I.P4)({name:"TechDocsCustomHome",component:()=>t.e(4109).then(t.bind(t,44109)).then(z=>z.TechDocsCustomHome),mountPoint:d._Z})),H=w.provide((0,I.P4)({name:"TechDocsIndexPage",component:()=>t.e(8662).then(t.bind(t,18662)).then(z=>z.TechDocsIndexPage),mountPoint:d._Z})),Y=w.provide((0,I.P4)({name:"TechDocsReaderPage",component:()=>t.e(5914).then(t.bind(t,35914)).then(z=>z.TechDocsReaderPage),mountPoint:d.Fw})),tt=w.provide((0,P.E5)({name:"TechDocsSearchResultListItem",component:()=>Promise.resolve().then(t.bind(t,55511)).then(z=>z.TechDocsSearchResultListItem),predicate:z=>z.type==="techdocs"}))},14540:function(V,T,t){"use strict";t.d(T,{F:function(){return ko}});var o=t(52322),i=t(2784),u=t(79692),S=t(60905),m=t(68979),g=t(70882),c=t(50236),d=t(19219),E=t(55015);const y="TECH_DOCS_SHADOW_DOM_STYLE_LOAD",O=p=>{(0,i.useEffect)(()=>{if(!p)return()=>{};const R=p.querySelectorAll('head > link[rel="stylesheet"]');var B;let F=(B=R==null?void 0:R.length)!==null&&B!==void 0?B:0;const X=new CustomEvent(y);if(!F)return p.dispatchEvent(X),()=>{};const _=()=>{--F===0&&p.dispatchEvent(X)};return R==null||R.forEach(dt=>{dt.addEventListener("load",_)}),()=>{R==null||R.forEach(dt=>{dt.removeEventListener("load",_)})}},[p])},v=p=>{const[R,B]=(0,i.useState)(!1);return(0,i.useEffect)(()=>{if(!p)return()=>{};B(!0);const F=p.style;F.setProperty("opacity","0");const X=()=>{B(!1),F.setProperty("opacity","1")};return p.addEventListener(y,X),()=>{p.removeEventListener(y,X)}},[p]),R},A=p=>{const{element:R,onAppend:B,children:F}=p,[X,_]=(0,i.useState)((0,g.Ue)({...(0,c.Z)(),insertionPoint:void 0}));O(R);const dt=v(R),St=(0,i.useCallback)(It=>{if(!R||!It)return;_((0,g.Ue)({...(0,c.Z)(),insertionPoint:R.querySelector("head")||void 0}));let $t=It.shadowRoot;$t||($t=It.attachShadow({mode:"open"})),$t.replaceChildren(R),typeof B=="function"&&B($t)},[R,B]);return(0,o.jsxs)(o.Fragment,{children:[dt&&(0,o.jsx)(E.E,{}),(0,o.jsxs)(d.ZP,{jss:X,sheetsManager:new Map,children:[(0,o.jsx)("div",{ref:St,"data-testid":"techdocs-native-shadowroot"}),F]})]})};var h=t(54073);const I=()=>{const{shadowRoot:p}=(0,m.x)();return p},P=p=>{const R=I();return R?p.map(B=>R==null?void 0:R.querySelectorAll(B)).filter(B=>B.length).map(B=>Array.from(B)).flat():[]},w=p=>p.toString()&&p.rangeCount&&p.getRangeAt(0).getBoundingClientRect().top,D=(p=0)=>{const R=I(),[B,F]=useState(null),X=useMemo(()=>debounce(()=>{const _=R,dt=_.getSelection?_.getSelection():document.getSelection();dt&&w(dt)?F(dt):F(null)},p),[R,F,p]);return useEffect(()=>(window.document.addEventListener("selectionchange",X),()=>{X.cancel(),window.document.removeEventListener("selectionchange",X)}),[X]),B};var M=t(87435),b=t(42398),H=t(76635),Y=t(64279),tt=t(1849),z=t(29651),W=t(68993),Z=t(44394),Q=t(62369),et=t(72388),it=t(6542),mt=t(95965);const ft=(0,mt.T)({id:"plugin.search.queryservice"});class Ot{query(){return Promise.resolve(this.mockedResults||{results:[]})}constructor(R){_define_property(this,"mockedResults",void 0),this.mockedResults=R}}const ct=(0,z.CT)("search-context"),Et=()=>{const p=(0,i.useContext)(ct);if(!p)throw new Error("useSearch must be used within a SearchContextProvider");const R=p.atVersion(1);if(!R)throw new Error("No SearchContext v1 found");return R},at=()=>(0,i.useContext)(ct)!==void 0,G={term:"",types:[],filters:{},pageLimit:void 0,pageCursor:void 0},st=(p=G)=>{var R,B,F,X;const _=(0,Z.h_)(ft),dt=(0,Q.z)(),[St,It]=(0,i.useState)(p.term),[$t,Jt]=(0,i.useState)(p.types),[Wt,Tt]=(0,i.useState)(p.filters),[ce,me]=(0,i.useState)(p.pageLimit),[Xt,Mt]=(0,i.useState)(p.pageCursor),re=(0,tt.Z)(St),ye=(0,tt.Z)(Wt),Dt=(0,Y.default)(async()=>{const fe=await _.query({term:St,types:$t,filters:Wt,pageLimit:ce,pageCursor:Xt});if(St){var De,ne;dt.captureEvent("search",St,{value:(ne=(De=Dt.value)===null||De===void 0?void 0:De.numberOfResults)!==null&&ne!==void 0?ne:void 0})}return fe},[St,$t,Wt,ce,Xt]),Ht=!Dt.loading&&!Dt.error&&((R=Dt.value)===null||R===void 0?void 0:R.nextPageCursor),qt=!Dt.loading&&!Dt.error&&((B=Dt.value)===null||B===void 0?void 0:B.previousPageCursor),Ce=(0,i.useCallback)(()=>{var fe;Mt((fe=Dt.value)===null||fe===void 0?void 0:fe.nextPageCursor)},[(F=Dt.value)===null||F===void 0?void 0:F.nextPageCursor]),Ie=(0,i.useCallback)(()=>{var fe;Mt((fe=Dt.value)===null||fe===void 0?void 0:fe.previousPageCursor)},[(X=Dt.value)===null||X===void 0?void 0:X.previousPageCursor]);return(0,i.useEffect)(()=>{re!==void 0&&St!==re&&Mt(void 0)},[St,re,Mt]),(0,i.useEffect)(()=>{ye!==void 0&&!(0,H.isEqual)(Wt,ye)&&Mt(void 0)},[Wt,ye,Mt]),{result:Dt,term:St,setTerm:It,types:$t,setTypes:Jt,filters:Wt,setFilters:Tt,pageLimit:ce,setPageLimit:me,pageCursor:Xt,setPageCursor:Mt,fetchNextPage:Ht?Ce:void 0,fetchPreviousPage:qt?Ie:void 0}},xt=p=>{const{initialState:R,children:B}=p,F=st(R);return(0,o.jsx)(et.fC,{attributes:{searchTypes:F.types.sort().join(",")},children:(0,o.jsx)(ct.Provider,{value:(0,W.E)({1:F}),children:B})})},At=p=>{const{initialState:R,inheritParentContextIfAvailable:B,children:F}=p,X=at(),_=(0,Z.h_)(it.D),dt=R!=null?R:{},St=_.has("search.query.pageLimit")?{pageLimit:_.getNumber("search.query.pageLimit")}:{},It={...G,...dt,...St};return X&&B?(0,o.jsx)(o.Fragment,{children:F}):(0,o.jsx)(xt,{initialState:It,children:F})};var Ct=t(4614),ht=t(88013),lt=t(50581),pt=t(61837),K=t(86619),k=t(77277),q=t(21853),ot=t(48760);function gt(p){return(0,i.forwardRef)((R,B)=>(0,o.jsx)(At,{inheritParentContextIfAvailable:!0,children:(0,o.jsx)(p,{...R,ref:B})}))}const vt=gt((0,i.forwardRef)((p,R)=>{const{onChange:B,onKeyDown:F=()=>{},onClear:X=()=>{},onSubmit:_=()=>{},debounceTime:dt=200,clearButton:St=!0,fullWidth:It=!0,value:$t,label:Jt,placeholder:Wt,inputProps:Tt={},InputProps:ce={},endAdornment:me,...Xt}=p,Mt=(0,Z.h_)(it.D),[re,ye]=(0,i.useState)(""),Dt=(0,i.useRef)("");(0,i.useEffect)(()=>{ye(ne=>ne===Dt.current?String($t):ne)},[$t,Dt]),(0,ot.Z)(()=>{Dt.current=re,B(re)},dt,[re]);const Ht=(0,i.useCallback)(ne=>{ye(ne.target.value)},[ye]),qt=(0,i.useCallback)(ne=>{F&&F(ne),_&&ne.key==="Enter"&&_()},[F,_]),Ce=(0,i.useCallback)(()=>{Dt.current="",B(""),ye(""),X&&X()},[B,X]),Ie=Jt?void 0:"Search",We=Wt!=null?Wt:`Search in ${Mt.getOptionalString("app.title")||"Backstage"}`,fe=(0,o.jsx)(lt.Z,{position:"start",children:(0,o.jsx)(pt.Z,{"aria-label":"Query",size:"small",disabled:!0,children:(0,o.jsx)(q.Z,{})})}),De=(0,o.jsx)(lt.Z,{position:"end",children:(0,o.jsx)(k.Z,{"aria-label":"Clear",size:"small",onClick:Ce,onKeyDown:ne=>{ne.key==="Enter"&&ne.stopPropagation()},children:"Clear"})});return(0,o.jsx)(K.Z,{id:"search-bar-text-field","data-testid":"search-bar-next",variant:"outlined",margin:"normal",inputRef:R,value:re,label:Jt,placeholder:We,InputProps:{startAdornment:fe,endAdornment:St?De:me,...ce},inputProps:{"aria-label":Ie,...Tt},fullWidth:It,onChange:Ht,onKeyDown:qt,...Xt})})),Bt=gt((0,i.forwardRef)((p,R)=>{const{value:B="",onChange:F,...X}=p,{term:_,setTerm:dt}=Et();(0,i.useEffect)(()=>{B&&dt(String(B))},[B,dt]);const St=(0,i.useCallback)(It=>{F?F(It):dt(It)},[F,dt]);return(0,o.jsx)(et.fC,{attributes:{pluginId:"search",extension:"SearchBar"},children:(0,o.jsx)(vt,{...X,ref:R,value:_,onChange:St})})})),zt=(0,u.Z)(p=>({loading:{right:p.spacing(1),position:"absolute"}})),Ft=p=>R=>(0,o.jsx)(At,{inheritParentContextIfAvailable:!0,children:(0,o.jsx)(p,{...R})}),Nt=()=>{const p=zt();return(0,o.jsx)(Ct.Z,{className:p.loading,"data-testid":"search-autocomplete-progressbar",color:"inherit",size:20})},Lt=Ft(function(R){const{loading:B,value:F,onChange:X=()=>{},options:_=[],getOptionLabel:dt=Dt=>String(Dt),inputPlaceholder:St,inputDebounceTime:It,freeSolo:$t=!0,fullWidth:Jt=!0,clearOnBlur:Wt=!1,"data-testid":Tt="search-autocomplete",...ce}=R,{setTerm:me}=Et(),Xt=(0,i.useCallback)(Dt=>Dt?typeof Dt=="string"?Dt:dt(Dt):"",[dt]),Mt=(0,i.useMemo)(()=>Xt(F),[F,Xt]),re=(0,i.useCallback)((Dt,Ht,qt,Ce)=>{me(Xt(Ht)),X(Dt,Ht,qt,Ce)},[Xt,me,X]),ye=(0,i.useCallback)(({InputProps:{ref:Dt,className:Ht,endAdornment:qt},InputLabelProps:Ce,...Ie})=>(0,o.jsx)(Bt,{...Ie,ref:Dt,clearButton:!1,value:Mt,placeholder:St,debounceTime:It,endAdornment:B?(0,o.jsx)(Nt,{}):qt,InputProps:{className:Ht}}),[B,Mt,St,It]);return(0,o.jsx)(ht.ZP,{...ce,"data-testid":Tt,value:F,onChange:re,options:_,getOptionLabel:dt,renderInput:ye,freeSolo:$t,fullWidth:Jt,clearOnBlur:Wt})});var Yt=t(73557),Te=t(55511);const pe=p=>p==null?void 0:p.document,le=p=>{const{entityId:R,entityTitle:B,debounceTime:F=150}=p,[X,_]=(0,i.useState)(!1),dt=(0,Yt.s0)(),{setFilters:St,result:{loading:It,value:$t}}=Et(),[Jt,Wt]=(0,i.useState)([]);(0,i.useEffect)(()=>{let Mt=!0;if(Mt&&$t){const re=$t.results.slice(0,10);Wt(re)}return()=>{Mt=!1}},[It,$t]);const{kind:Tt,name:ce,namespace:me}=R;(0,i.useEffect)(()=>{St(Mt=>({...Mt,kind:Tt,namespace:me,name:ce}))},[Tt,me,ce,St]);const Xt=(Mt,re)=>{if(pe(re)){const{location:ye}=re.document;dt(ye)}};return(0,o.jsx)(Lt,{"data-testid":"techdocs-search-bar",size:"small",open:X,getOptionLabel:()=>"",filterOptions:Mt=>Mt,onClose:()=>{_(!1)},onFocus:()=>{_(!0)},onChange:Xt,blurOnSelect:!0,noOptionsText:"No results found",value:null,options:Jt,renderOption:({document:Mt,highlight:re})=>(0,o.jsx)(Te.TechDocsSearchResultListItem,{result:Mt,lineClamp:3,asListItem:!1,asLink:!1,title:Mt.title,highlight:re}),loading:It,inputDebounceTime:F,inputPlaceholder:`Search ${B||R.name} docs`,freeSolo:!1})},_t=p=>{const R={term:"",types:["techdocs"],pageCursor:"",filters:p.entityId};return(0,o.jsx)(At,{initialState:R,children:(0,o.jsx)(le,{...p})})};var jt=t(99688),Vt=t(80851);const Oe=(0,i.lazy)(()=>Promise.all([t.e(1113),t.e(6051)]).then(t.bind(t,76051)).then(p=>({default:p.RealLogViewer})));function ke(p){const{Progress:R}=(0,Vt.q)().getComponents();return(0,o.jsx)(i.Suspense,{fallback:(0,o.jsx)(R,{}),children:(0,o.jsx)(Oe,{...p})})}var xe=t(42494),tn=t(90436),Ve=t(4190),Ye=t(87685);const se=(0,u.Z)(p=>(0,xe.Z)({paper:{width:"100%",[p.breakpoints.up("sm")]:{width:"75%"},[p.breakpoints.up("md")]:{width:"50%"},padding:p.spacing(2.5)},root:{height:"100%",overflow:"hidden"},logs:{background:p.palette.background.default}})),sn=({buildLog:p,onClose:R})=>{const B=se(),F=p.length===0?"Waiting for logs...":p.join(`
|
|
6
|
+
`);return(0,o.jsxs)(S.Z,{container:!0,direction:"column",className:B.root,spacing:0,wrap:"nowrap",children:[(0,o.jsxs)(S.Z,{item:!0,container:!0,justifyContent:"space-between",alignItems:"center",spacing:0,wrap:"nowrap",children:[(0,o.jsx)(tn.Z,{variant:"h5",children:"Build Details"}),(0,o.jsx)(pt.Z,{title:"Close the drawer",onClick:R,color:"inherit",children:(0,o.jsx)(Ye.Z,{})},"dismiss")]}),(0,o.jsx)(S.Z,{item:!0,xs:!0,children:(0,o.jsx)(ke,{text:F,classes:{root:B.logs}})})]})},Re=({buildLog:p})=>{const R=se(),[B,F]=(0,i.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(k.Z,{color:"inherit",onClick:()=>F(!0),children:"Show Build Logs"}),(0,o.jsx)(Ve.ZP,{classes:{paper:R.paper},anchor:"right",open:B,onClose:()=>F(!1),children:(0,o.jsx)(sn,{buildLog:p,onClose:()=>F(!1)})})]})},en=({errorMessage:p})=>{const R=(0,Z.h_)(it.D).getOptionalString("techdocs.builder"),B=(0,Q.z)(),{entityRef:F}=(0,m.x)(),X=(0,Yt.TH)();(0,i.useEffect)(()=>{const{pathname:dt,search:St,hash:It}=X;B.captureEvent("not-found",`${dt}${St}${It}`,{attributes:F})},[B,F,X]);let _="";return R!=="local"&&(_="Note that techdocs.builder is not set to 'local' in your config, which means this Backstage app will not generate docs if they are not found. Make sure the project's docs are generated and published by some external process (e.g. CI/CD pipeline). Or change techdocs.builder to 'local' to generate docs from this Backstage instance."),(0,o.jsx)(M.m,{status:"404",statusMessage:p||"Documentation not found",additionalInfo:_})};var an=t(77446),ie=t(58496);function Ze({contentLoading:p,content:R,activeSyncState:B}){return p||B==="BUILD_READY_RELOAD"||!R&&B==="CHECKING"?"CHECKING":!R&&B==="BUILDING"?"INITIAL_BUILD":R?B==="BUILDING"?"CONTENT_STALE_REFRESHING":B==="BUILD_READY"?"CONTENT_STALE_READY":B==="ERROR"?"CONTENT_STALE_ERROR":"CONTENT_FRESH":"CONTENT_NOT_FOUND"}function ze(p,R){const B={...p};switch(R.type){case"sync":R.state==="CHECKING"&&(B.buildLog=[]),B.activeSyncState=R.state,B.syncError=R.syncError;break;case"contentLoading":B.contentLoading=!0,B.contentError=void 0;break;case"content":typeof R.path=="string"&&(B.path=R.path),B.contentLoading=!1,B.content=R.content,B.contentError=R.contentError;break;case"buildLog":B.buildLog=B.buildLog.concat(R.log);break;default:throw new Error}return["BUILD_READY","BUILD_READY_RELOAD"].includes(B.activeSyncState)&&["contentLoading","content"].includes(R.type)&&(B.activeSyncState="UP_TO_DATE",B.buildLog=[]),B}function we(p,R,B,F){var X,_;const[dt,St]=(0,i.useReducer)(ze,{activeSyncState:"CHECKING",path:F,contentLoading:!0,buildLog:[]}),It=(0,Z.h_)(ie.D),{retry:$t}=(0,an.Z)(async()=>{St({type:"contentLoading"});try{const Tt=await It.getEntityDocs({kind:p,namespace:R,name:B},F);return St({type:"content",content:Tt,path:F}),Tt}catch(Tt){St({type:"content",contentError:Tt,path:F})}},[It,p,R,B,F]),Jt=(0,i.useRef)({content:void 0,reload:()=>{}});return Jt.current={content:dt.content,reload:$t},(0,Y.default)(async()=>{St({type:"sync",state:"CHECKING"});const Tt=setTimeout(()=>{St({type:"sync",state:"BUILDING"})},1e3);try{switch(await It.syncEntityDocs({kind:p,namespace:R,name:B},me=>{St({type:"buildLog",log:me})})){case"updated":Jt.current.content?St({type:"sync",state:"BUILD_READY"}):(Jt.current.reload(),St({type:"sync",state:"BUILD_READY_RELOAD"}));break;case"cached":St({type:"sync",state:"UP_TO_DATE"});break;default:St({type:"sync",state:"ERROR",syncError:new Error("Unexpected return state")});break}}catch(ce){St({type:"sync",state:"ERROR",syncError:ce})}finally{clearTimeout(Tt)}},[p,B,R,It,St,Jt]),{state:(0,i.useMemo)(()=>Ze({activeSyncState:dt.activeSyncState,contentLoading:dt.contentLoading,content:dt.content}),[dt.activeSyncState,dt.content,dt.contentLoading]),contentReload:$t,path:dt.path,content:dt.content,contentErrorMessage:(X=dt.contentError)===null||X===void 0?void 0:X.toString(),syncErrorMessage:(_=dt.syncError)===null||_===void 0?void 0:_.toString(),buildLog:dt.buildLog}}const $e=(0,i.createContext)({}),Ne=()=>(0,i.useContext)($e),U=p=>{const{children:R}=p,{"*":B=""}=(0,Yt.UO)(),{entityRef:F}=(0,m.x)(),{kind:X,namespace:_,name:dt}=F,St=we(X,_,dt,B);return(0,o.jsx)($e.Provider,{value:St,children:R instanceof Function?R(St):R})},f=p=>R=>(0,o.jsx)(U,{children:(0,o.jsx)(p,{...R})}),L=(0,u.Z)(p=>({root:{marginBottom:p.spacing(2)},message:{wordBreak:"break-word",overflowWrap:"anywhere"}})),N=()=>{let p=null;const R=L(),{state:B,contentReload:F,contentErrorMessage:X,syncErrorMessage:_,buildLog:dt}=Ne();return B==="INITIAL_BUILD"&&(p=(0,o.jsx)(jt.Z,{classes:{root:R.root},variant:"outlined",severity:"info",icon:(0,o.jsx)(Ct.Z,{size:"24px"}),action:(0,o.jsx)(Re,{buildLog:dt}),children:"Documentation is accessed for the first time and is being prepared. The subsequent loads are much faster."})),B==="CONTENT_STALE_REFRESHING"&&(p=(0,o.jsx)(jt.Z,{variant:"outlined",severity:"info",icon:(0,o.jsx)(Ct.Z,{size:"24px"}),action:(0,o.jsx)(Re,{buildLog:dt}),classes:{root:R.root},children:"A newer version of this documentation is being prepared and will be available shortly."})),B==="CONTENT_STALE_READY"&&(p=(0,o.jsx)(jt.Z,{variant:"outlined",severity:"success",action:(0,o.jsx)(k.Z,{color:"inherit",onClick:()=>F(),children:"Refresh"}),classes:{root:R.root},children:"A newer version of this documentation is now available, please refresh to view."})),B==="CONTENT_STALE_ERROR"&&(p=(0,o.jsxs)(jt.Z,{variant:"outlined",severity:"error",action:(0,o.jsx)(Re,{buildLog:dt}),classes:{root:R.root,message:R.message},children:["Building a newer version of this documentation failed."," ",_]})),B==="CONTENT_NOT_FOUND"&&(p=(0,o.jsxs)(o.Fragment,{children:[_&&(0,o.jsxs)(jt.Z,{variant:"outlined",severity:"error",action:(0,o.jsx)(Re,{buildLog:dt}),classes:{root:R.root,message:R.message},children:["Building a newer version of this documentation failed."," ",_]}),(0,o.jsx)(en,{errorMessage:X})]})),p};var rt=t(60364),wt=t(41156),Rt=t(91657),ae=t(35368),ee=t.n(ae);const Kt=/main\.[A-Fa-f0-9]{8}\.min\.css$/,Ut=/^https:\/\/fonts\.googleapis\.com/,ge=/^https:\/\/fonts\.gstatic\.com/,Me=p=>p.nodeName==="LINK",kt=p=>{const R=(p==null?void 0:p.getAttribute("href"))||"",B=R.match(Kt),F=R.match(Ut),X=R.match(ge);return B||F||X},oe=p=>(Me(p)&&!kt(p)&&p.remove(),p),de=p=>p.nodeName==="IFRAME",Mn=(p,R)=>{const B=p.getAttribute("src")||"";try{const{host:F}=new URL(B);return R.includes(F)}catch{return!1}},mo=p=>R=>(de(R)&&!Mn(R,p)&&R.remove(),R),Bn=()=>{const p=(0,Z.h_)(it.D);return(0,i.useMemo)(()=>p.getOptionalConfig("techdocs.sanitizer"),[p])},Un=()=>{const p=Bn();return(0,i.useCallback)(async R=>{const B=p==null?void 0:p.getOptionalStringArray("allowedIframeHosts");ee().addHook("beforeSanitizeElements",oe);const F=["link"];return B&&(F.push("iframe"),ee().addHook("beforeSanitizeElements",mo(B))),ee().sanitize(R.outerHTML,{ADD_TAGS:F,FORBID_TAGS:["style"],WHOLE_DOCUMENT:!0,RETURN_DOM:!0})},[p])};var Fn=t(93539),ve=t(41128),Be=({theme:p})=>`
|
|
7
|
+
/*================== Variables ==================*/
|
|
8
|
+
/*
|
|
9
|
+
As the MkDocs output is rendered in shadow DOM, the CSS variable definitions on the root selector are not applied. Instead, they have to be applied on :host.
|
|
10
|
+
As there is no way to transform the served main*.css yet (for example in the backend), we have to copy from main*.css and modify them.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
:host {
|
|
14
|
+
/* FONT */
|
|
15
|
+
--md-default-fg-color: ${p.palette.text.primary};
|
|
16
|
+
--md-default-fg-color--light: ${p.palette.text.secondary};
|
|
17
|
+
--md-default-fg-color--lighter: ${(0,ve.$n)(p.palette.text.secondary,.7)};
|
|
18
|
+
--md-default-fg-color--lightest: ${(0,ve.$n)(p.palette.text.secondary,.3)};
|
|
19
|
+
|
|
20
|
+
/* BACKGROUND */
|
|
21
|
+
--md-default-bg-color:${p.palette.background.default};
|
|
22
|
+
--md-default-bg-color--light: ${p.palette.background.paper};
|
|
23
|
+
--md-default-bg-color--lighter: ${(0,ve.$n)(p.palette.background.paper,.7)};
|
|
24
|
+
--md-default-bg-color--lightest: ${(0,ve.$n)(p.palette.background.paper,.3)};
|
|
25
|
+
|
|
26
|
+
/* PRIMARY */
|
|
27
|
+
--md-primary-fg-color: ${p.palette.primary.main};
|
|
28
|
+
--md-primary-fg-color--light: ${p.palette.primary.light};
|
|
29
|
+
--md-primary-fg-color--dark: ${p.palette.primary.dark};
|
|
30
|
+
--md-primary-bg-color: ${p.palette.primary.contrastText};
|
|
31
|
+
--md-primary-bg-color--light: ${(0,ve.$n)(p.palette.primary.contrastText,.7)};
|
|
32
|
+
|
|
33
|
+
/* ACCENT */
|
|
34
|
+
--md-accent-fg-color: var(--md-primary-fg-color);
|
|
35
|
+
|
|
36
|
+
/* SHADOW */
|
|
37
|
+
--md-shadow-z1: ${p.shadows[1]};
|
|
38
|
+
--md-shadow-z2: ${p.shadows[2]};
|
|
39
|
+
--md-shadow-z3: ${p.shadows[3]};
|
|
40
|
+
|
|
41
|
+
/* EXTENSIONS */
|
|
42
|
+
--md-admonition-fg-color: var(--md-default-fg-color);
|
|
43
|
+
--md-admonition-bg-color: var(--md-default-bg-color);
|
|
44
|
+
/* Admonitions and others are using SVG masks to define icons. These masks are defined as CSS variables. */
|
|
45
|
+
--md-admonition-icon--note: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg>');
|
|
46
|
+
--md-admonition-icon--abstract: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 5h16v2H4V5m0 4h16v2H4V9m0 4h16v2H4v-2m0 4h10v2H4v-2z"/></svg>');
|
|
47
|
+
--md-admonition-icon--info: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 9h-2V7h2m0 10h-2v-6h2m-1-9A10 10 0 002 12a10 10 0 0010 10 10 10 0 0010-10A10 10 0 0012 2z"/></svg>');
|
|
48
|
+
--md-admonition-icon--tip: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.55 11.2c-.23-.3-.5-.56-.76-.82-.65-.6-1.4-1.03-2.03-1.66C13.3 7.26 13 4.85 13.91 3c-.91.23-1.75.75-2.45 1.32-2.54 2.08-3.54 5.75-2.34 8.9.04.1.08.2.08.33 0 .22-.15.42-.35.5-.22.1-.46.04-.64-.12a.83.83 0 01-.15-.17c-1.1-1.43-1.28-3.48-.53-5.12C5.89 10 5 12.3 5.14 14.47c.04.5.1 1 .27 1.5.14.6.4 1.2.72 1.73 1.04 1.73 2.87 2.97 4.84 3.22 2.1.27 4.35-.12 5.96-1.6 1.8-1.66 2.45-4.32 1.5-6.6l-.13-.26c-.2-.46-.47-.87-.8-1.25l.05-.01m-3.1 6.3c-.28.24-.73.5-1.08.6-1.1.4-2.2-.16-2.87-.82 1.19-.28 1.89-1.16 2.09-2.05.17-.8-.14-1.46-.27-2.23-.12-.74-.1-1.37.18-2.06.17.38.37.76.6 1.06.76 1 1.95 1.44 2.2 2.8.04.14.06.28.06.43.03.82-.32 1.72-.92 2.27h.01z"/></svg>');
|
|
49
|
+
--md-admonition-icon--success: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2m-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>');
|
|
50
|
+
--md-admonition-icon--question: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15.07 11.25l-.9.92C13.45 12.89 13 13.5 13 15h-2v-.5c0-1.11.45-2.11 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41a2 2 0 00-2-2 2 2 0 00-2 2H8a4 4 0 014-4 4 4 0 014 4 3.2 3.2 0 01-.93 2.25M13 19h-2v-2h2M12 2A10 10 0 002 12a10 10 0 0010 10 10 10 0 0010-10c0-5.53-4.5-10-10-10z"/></svg>');
|
|
51
|
+
--md-admonition-icon--warning: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 14h-2v-4h2m0 8h-2v-2h2M1 21h22L12 2 1 21z"/></svg>');
|
|
52
|
+
--md-admonition-icon--failure: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2c5.53 0 10 4.47 10 10s-4.47 10-10 10S2 17.53 2 12 6.47 2 12 2m3.59 5L12 10.59 8.41 7 7 8.41 10.59 12 7 15.59 8.41 17 12 13.41 15.59 17 17 15.59 13.41 12 17 8.41 15.59 7z"/></svg>');
|
|
53
|
+
--md-admonition-icon--danger: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11.5 20l4.86-9.73H13V4l-5 9.73h3.5V20M12 2c2.75 0 5.1 1 7.05 2.95C21 6.9 22 9.25 22 12s-1 5.1-2.95 7.05C17.1 21 14.75 22 12 22s-5.1-1-7.05-2.95C3 17.1 2 14.75 2 12s1-5.1 2.95-7.05C6.9 3 9.25 2 12 2z"/></svg>');
|
|
54
|
+
--md-admonition-icon--bug: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14 12h-4v-2h4m0 6h-4v-2h4m6-6h-2.81a5.985 5.985 0 00-1.82-1.96L17 4.41 15.59 3l-2.17 2.17a6.002 6.002 0 00-2.83 0L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8z"/></svg>');
|
|
55
|
+
--md-admonition-icon--example: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 13v-2h14v2H7m0 6v-2h14v2H7M7 7V5h14v2H7M3 8V5H2V4h2v4H3m-1 9v-1h3v4H2v-1h2v-.5H3v-1h1V17H2m2.25-7a.75.75 0 01.75.75c0 .2-.08.39-.21.52L3.12 13H5v1H2v-.92L4 11H2v-1h2.25z"/></svg>');
|
|
56
|
+
--md-admonition-icon--quote: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14 17h3l2-4V7h-6v6h3M6 17h3l2-4V7H5v6h3l-2 4z"/></svg>');
|
|
57
|
+
--md-footnotes-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.42L5.83 13H21V7h-2z"/></svg>');
|
|
58
|
+
--md-details-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.42z"/></svg>');
|
|
59
|
+
--md-tasklist-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"/></svg>');
|
|
60
|
+
--md-tasklist-icon--checked: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>');
|
|
61
|
+
--md-nav-icon--prev: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>');
|
|
62
|
+
--md-nav-icon--next: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.42z"/></svg>');
|
|
63
|
+
--md-toc-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 9h14V7H3v2m0 4h14v-2H3v2m0 4h14v-2H3v2m16 0h2v-2h-2v2m0-10v2h2V7h-2m0 6h2v-2h-2v2z"/></svg>');
|
|
64
|
+
--md-clipboard-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 21H8V7h11m0-2H8a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2m-3-4H4a2 2 0 0 0-2 2v14h2V3h12V1z"/></svg>');
|
|
65
|
+
--md-search-result-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h7c-.41-.25-.8-.56-1.14-.9-.33-.33-.61-.7-.86-1.1H6V4h7v5h5v1.18c.71.16 1.39.43 2 .82V8l-6-6m6.31 16.9c1.33-2.11.69-4.9-1.4-6.22-2.11-1.33-4.91-.68-6.22 1.4-1.34 2.11-.69 4.89 1.4 6.22 1.46.93 3.32.93 4.79.02L22 23.39 23.39 22l-3.08-3.1m-3.81.1a2.5 2.5 0 0 1-2.5-2.5 2.5 2.5 0 0 1 2.5-2.5 2.5 2.5 0 0 1 2.5 2.5 2.5 2.5 0 0 1-2.5 2.5z"/></svg>');
|
|
66
|
+
--md-source-forks-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M5 3.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm0 2.122a2.25 2.25 0 1 0-1.5 0v.878A2.25 2.25 0 0 0 5.75 8.5h1.5v2.128a2.251 2.251 0 1 0 1.5 0V8.5h1.5a2.25 2.25 0 0 0 2.25-2.25v-.878a2.25 2.25 0 1 0-1.5 0v.878a.75.75 0 0 1-.75.75h-4.5A.75.75 0 0 1 5 6.25v-.878zm3.75 7.378a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm3-8.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5z"/></svg>');
|
|
67
|
+
--md-source-repositories-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 0 1 4.5 0h8.75a.75.75 0 0 1 .75.75v12.5a.75.75 0 0 1-.75.75h-2.5a.75.75 0 1 1 0-1.5h1.75v-2h-8a1 1 0 0 0-.714 1.7.75.75 0 0 1-1.072 1.05A2.495 2.495 0 0 1 2 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 0 1 1-1h8zM5 12.25v3.25a.25.25 0 0 0 .4.2l1.45-1.087a.25.25 0 0 1 .3 0L8.6 15.7a.25.25 0 0 0 .4-.2v-3.25a.25.25 0 0 0-.25-.25h-3.5a.25.25 0 0 0-.25.25z"/></svg>');
|
|
68
|
+
--md-source-stars-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.75.75 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25zm0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41L8 2.694v.001z"/></svg>');
|
|
69
|
+
--md-source-version-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2.5 7.775V2.75a.25.25 0 0 1 .25-.25h5.025a.25.25 0 0 1 .177.073l6.25 6.25a.25.25 0 0 1 0 .354l-5.025 5.025a.25.25 0 0 1-.354 0l-6.25-6.25a.25.25 0 0 1-.073-.177zm-1.5 0V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.75 1.75 0 0 1 1 7.775zM6 5a1 1 0 1 0 0 2 1 1 0 0 0 0-2z"/></svg>');
|
|
70
|
+
--md-version-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--! Font Awesome Free 6.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="m310.6 246.6-127.1 128c-7.1 6.3-15.3 9.4-23.5 9.4s-16.38-3.125-22.63-9.375l-127.1-128C.224 237.5-2.516 223.7 2.438 211.8S19.07 192 32 192h255.1c12.94 0 24.62 7.781 29.58 19.75s3.12 25.75-6.08 34.85z"/></svg>');
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
:host > * {
|
|
74
|
+
/* CODE */
|
|
75
|
+
--md-code-fg-color: ${p.palette.text.primary};
|
|
76
|
+
--md-code-bg-color: ${p.palette.background.paper};
|
|
77
|
+
--md-code-hl-color: ${(0,ve.Fq)(p.palette.warning.main,.5)};
|
|
78
|
+
--md-code-hl-keyword-color: ${p.palette.type==="dark"?p.palette.primary.light:p.palette.primary.dark};
|
|
79
|
+
--md-code-hl-function-color: ${p.palette.type==="dark"?p.palette.secondary.light:p.palette.secondary.dark};
|
|
80
|
+
--md-code-hl-string-color: ${p.palette.type==="dark"?p.palette.success.light:p.palette.success.dark};
|
|
81
|
+
--md-code-hl-number-color: ${p.palette.type==="dark"?p.palette.error.light:p.palette.error.dark};
|
|
82
|
+
--md-code-hl-constant-color: var(--md-code-hl-function-color);
|
|
83
|
+
--md-code-hl-special-color: var(--md-code-hl-function-color);
|
|
84
|
+
--md-code-hl-name-color: var(--md-code-fg-color);
|
|
85
|
+
--md-code-hl-comment-color: var(--md-default-fg-color--light);
|
|
86
|
+
--md-code-hl-generic-color: var(--md-default-fg-color--light);
|
|
87
|
+
--md-code-hl-variable-color: var(--md-default-fg-color--light);
|
|
88
|
+
--md-code-hl-operator-color: var(--md-default-fg-color--light);
|
|
89
|
+
--md-code-hl-punctuation-color: var(--md-default-fg-color--light);
|
|
90
|
+
|
|
91
|
+
/* TYPESET */
|
|
92
|
+
--md-typeset-font-size: 1rem;
|
|
93
|
+
--md-typeset-color: var(--md-default-fg-color);
|
|
94
|
+
--md-typeset-a-color: ${p.palette.link};
|
|
95
|
+
--md-typeset-table-color: ${p.palette.text.primary};
|
|
96
|
+
--md-typeset-del-color: ${p.palette.type==="dark"?(0,ve.Fq)(p.palette.error.dark,.5):(0,ve.Fq)(p.palette.error.light,.5)};
|
|
97
|
+
--md-typeset-ins-color: ${p.palette.type==="dark"?(0,ve.Fq)(p.palette.success.dark,.5):(0,ve.Fq)(p.palette.success.light,.5)};
|
|
98
|
+
--md-typeset-mark-color: ${p.palette.type==="dark"?(0,ve.Fq)(p.palette.warning.dark,.5):(0,ve.Fq)(p.palette.warning.light,.5)};
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
@media screen and (max-width: 76.1875em) {
|
|
102
|
+
:host > * {
|
|
103
|
+
/* TYPESET */
|
|
104
|
+
--md-typeset-font-size: .9rem;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@media screen and (max-width: 600px) {
|
|
109
|
+
:host > * {
|
|
110
|
+
/* TYPESET */
|
|
111
|
+
--md-typeset-font-size: .7rem;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
`,yo=({theme:p})=>`
|
|
115
|
+
/*================== Reset ==================*/
|
|
116
|
+
|
|
117
|
+
body {
|
|
118
|
+
--md-text-color: var(--md-default-fg-color);
|
|
119
|
+
--md-text-link-color: var(--md-accent-fg-color);
|
|
120
|
+
--md-text-font-family: ${p.typography.fontFamily};
|
|
121
|
+
font-family: var(--md-text-font-family);
|
|
122
|
+
background-color: unset;
|
|
123
|
+
}
|
|
124
|
+
`;const Qe="224px";var Eo=({theme:p,sidebar:R})=>`
|
|
125
|
+
/*================== Layout ==================*/
|
|
126
|
+
|
|
127
|
+
/* mkdocs material v9 compat */
|
|
128
|
+
.md-nav__title {
|
|
129
|
+
color: var(--md-default-fg-color);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.md-grid {
|
|
133
|
+
max-width: 100%;
|
|
134
|
+
margin: 0;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.md-nav {
|
|
138
|
+
font-size: calc(var(--md-typeset-font-size) * 0.9);
|
|
139
|
+
}
|
|
140
|
+
.md-nav__link {
|
|
141
|
+
display: flex;
|
|
142
|
+
align-items: center;
|
|
143
|
+
justify-content: space-between;
|
|
144
|
+
}
|
|
145
|
+
.md-nav__icon {
|
|
146
|
+
height: 20px !important;
|
|
147
|
+
width: 20px !important;
|
|
148
|
+
margin-left:${p.spacing(1)}px;
|
|
149
|
+
}
|
|
150
|
+
.md-nav__icon svg {
|
|
151
|
+
margin: 0;
|
|
152
|
+
width: 20px !important;
|
|
153
|
+
height: 20px !important;
|
|
154
|
+
}
|
|
155
|
+
.md-nav__icon:after {
|
|
156
|
+
width: 20px !important;
|
|
157
|
+
height: 20px !important;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.md-nav__item--active > .md-nav__link, a.md-nav__link--active {
|
|
161
|
+
text-decoration: underline;
|
|
162
|
+
color: var(--md-typeset-a-color);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.md-main__inner {
|
|
166
|
+
margin-top: 0;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.md-sidebar {
|
|
170
|
+
bottom: 75px;
|
|
171
|
+
position: fixed;
|
|
172
|
+
width: 16rem;
|
|
173
|
+
overflow-y: auto;
|
|
174
|
+
overflow-x: hidden;
|
|
175
|
+
scrollbar-color: rgb(193, 193, 193) #eee;
|
|
176
|
+
scrollbar-width: thin;
|
|
177
|
+
}
|
|
178
|
+
.md-sidebar .md-sidebar__scrollwrap {
|
|
179
|
+
width: calc(12.1rem);
|
|
180
|
+
}
|
|
181
|
+
.md-sidebar--secondary {
|
|
182
|
+
right: ${p.spacing(3)}px;
|
|
183
|
+
}
|
|
184
|
+
.md-sidebar::-webkit-scrollbar {
|
|
185
|
+
width: 5px;
|
|
186
|
+
}
|
|
187
|
+
.md-sidebar::-webkit-scrollbar-button {
|
|
188
|
+
width: 5px;
|
|
189
|
+
height: 5px;
|
|
190
|
+
}
|
|
191
|
+
.md-sidebar::-webkit-scrollbar-track {
|
|
192
|
+
background: #eee;
|
|
193
|
+
border: 1 px solid rgb(250, 250, 250);
|
|
194
|
+
box-shadow: 0px 0px 3px #dfdfdf inset;
|
|
195
|
+
border-radius: 3px;
|
|
196
|
+
}
|
|
197
|
+
.md-sidebar::-webkit-scrollbar-thumb {
|
|
198
|
+
width: 5px;
|
|
199
|
+
background: rgb(193, 193, 193);
|
|
200
|
+
border: transparent;
|
|
201
|
+
border-radius: 3px;
|
|
202
|
+
}
|
|
203
|
+
.md-sidebar::-webkit-scrollbar-thumb:hover {
|
|
204
|
+
background: rgb(125, 125, 125);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
.md-content {
|
|
208
|
+
max-width: calc(100% - 16rem * 2);
|
|
209
|
+
margin-left: 16rem;
|
|
210
|
+
margin-bottom: 50px;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
.md-footer {
|
|
214
|
+
position: fixed;
|
|
215
|
+
bottom: 0px;
|
|
216
|
+
pointer-events: none;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
.md-footer-nav__link, .md-footer__link {
|
|
220
|
+
pointer-events: all;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
.md-footer__title {
|
|
224
|
+
background-color: unset;
|
|
225
|
+
}
|
|
226
|
+
.md-footer-nav__link, .md-footer__link {
|
|
227
|
+
width: 16rem;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
.md-dialog {
|
|
231
|
+
background-color: unset;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
@media screen and (min-width: 76.25em) {
|
|
235
|
+
.md-sidebar {
|
|
236
|
+
height: auto;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
@media screen and (max-width: 76.1875em) {
|
|
241
|
+
.md-nav {
|
|
242
|
+
transition: none !important;
|
|
243
|
+
background-color: var(--md-default-bg-color)
|
|
244
|
+
}
|
|
245
|
+
.md-nav--primary .md-nav__title {
|
|
246
|
+
cursor: auto;
|
|
247
|
+
color: var(--md-default-fg-color);
|
|
248
|
+
font-weight: 700;
|
|
249
|
+
white-space: normal;
|
|
250
|
+
line-height: 1rem;
|
|
251
|
+
height: auto;
|
|
252
|
+
display: flex;
|
|
253
|
+
flex-flow: column;
|
|
254
|
+
row-gap: 1.6rem;
|
|
255
|
+
padding: 1.2rem .8rem .8rem;
|
|
256
|
+
background-color: var(--md-default-bg-color);
|
|
257
|
+
}
|
|
258
|
+
.md-nav--primary .md-nav__title~.md-nav__list {
|
|
259
|
+
box-shadow: none;
|
|
260
|
+
}
|
|
261
|
+
.md-nav--primary .md-nav__title ~ .md-nav__list > :first-child {
|
|
262
|
+
border-top: none;
|
|
263
|
+
}
|
|
264
|
+
.md-nav--primary .md-nav__title .md-nav__button {
|
|
265
|
+
display: none;
|
|
266
|
+
}
|
|
267
|
+
.md-nav--primary .md-nav__title .md-nav__icon {
|
|
268
|
+
color: var(--md-default-fg-color);
|
|
269
|
+
position: static;
|
|
270
|
+
height: auto;
|
|
271
|
+
margin: 0 0 0 -0.2rem;
|
|
272
|
+
}
|
|
273
|
+
.md-nav--primary > .md-nav__title [for="none"] {
|
|
274
|
+
padding-top: 0;
|
|
275
|
+
}
|
|
276
|
+
.md-nav--primary .md-nav__item {
|
|
277
|
+
border-top: none;
|
|
278
|
+
}
|
|
279
|
+
.md-nav--primary :is(.md-nav__title,.md-nav__item) {
|
|
280
|
+
font-size : var(--md-typeset-font-size);
|
|
281
|
+
}
|
|
282
|
+
.md-nav .md-source {
|
|
283
|
+
display: none;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.md-sidebar {
|
|
287
|
+
height: 100%;
|
|
288
|
+
}
|
|
289
|
+
.md-sidebar--primary {
|
|
290
|
+
width: 12.1rem !important;
|
|
291
|
+
z-index: 200;
|
|
292
|
+
left: ${R.isPinned?`calc(-12.1rem + ${Qe})`:"calc(-12.1rem + 72px)"} !important;
|
|
293
|
+
}
|
|
294
|
+
.md-sidebar--secondary:not([hidden]) {
|
|
295
|
+
display: none;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
.md-content {
|
|
299
|
+
max-width: 100%;
|
|
300
|
+
margin-left: 0;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
.md-header__button {
|
|
304
|
+
margin: 0.4rem 0;
|
|
305
|
+
margin-left: 0.4rem;
|
|
306
|
+
padding: 0;
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
.md-overlay {
|
|
310
|
+
left: 0;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.md-footer {
|
|
314
|
+
position: static;
|
|
315
|
+
padding-left: 0;
|
|
316
|
+
}
|
|
317
|
+
.md-footer-nav__link {
|
|
318
|
+
/* footer links begin to overlap at small sizes without setting width */
|
|
319
|
+
width: 50%;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
@media screen and (max-width: 600px) {
|
|
324
|
+
.md-sidebar--primary {
|
|
325
|
+
left: -12.1rem !important;
|
|
326
|
+
width: 12.1rem;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
@media print {
|
|
332
|
+
.md-sidebar,
|
|
333
|
+
#toggle-sidebar {
|
|
334
|
+
display: none;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
.md-content {
|
|
338
|
+
margin: 0;
|
|
339
|
+
width: 100%;
|
|
340
|
+
max-width: 100%;
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
`;const $n=["h1","h2","h3","h4","h5","h6"];var xo=({theme:p})=>`
|
|
344
|
+
/*================== Typeset ==================*/
|
|
345
|
+
|
|
346
|
+
.md-typeset {
|
|
347
|
+
font-size: var(--md-typeset-font-size);
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
${$n.reduce((R,B)=>{var F;const X=(F=p.typography.htmlFontSize)!==null&&F!==void 0?F:16,_=p.typography[B],{lineHeight:dt,fontFamily:St,fontWeight:It,fontSize:$t}=_,Jt=Wt=>{let Tt=1;return typeof Wt=="number"&&(Tt=Wt/X*.6),typeof Wt=="string"&&(Tt=Wt.replace("rem","")),`calc(${Tt} * var(--md-typeset-font-size))`};return R.concat(`
|
|
351
|
+
.md-typeset ${B} {
|
|
352
|
+
color: var(--md-default-fg-color);
|
|
353
|
+
line-height: ${dt};
|
|
354
|
+
font-family: ${St};
|
|
355
|
+
font-weight: ${It};
|
|
356
|
+
font-size: ${Jt($t)};
|
|
357
|
+
}
|
|
358
|
+
`)},"")}
|
|
359
|
+
|
|
360
|
+
.md-typeset .md-content__button {
|
|
361
|
+
color: var(--md-default-fg-color);
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
.md-typeset hr {
|
|
365
|
+
border-bottom: 0.05rem dotted ${p.palette.divider};
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
.md-typeset details {
|
|
369
|
+
font-size: var(--md-typeset-font-size) !important;
|
|
370
|
+
}
|
|
371
|
+
.md-typeset details summary {
|
|
372
|
+
padding-left: 2.5rem !important;
|
|
373
|
+
}
|
|
374
|
+
.md-typeset details summary:before,
|
|
375
|
+
.md-typeset details summary:after {
|
|
376
|
+
top: 50% !important;
|
|
377
|
+
width: 20px !important;
|
|
378
|
+
height: 20px !important;
|
|
379
|
+
transform: rotate(0deg) translateY(-50%) !important;
|
|
380
|
+
}
|
|
381
|
+
.md-typeset details[open] > summary:after {
|
|
382
|
+
transform: rotate(90deg) translateX(-50%) !important;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
.md-typeset blockquote {
|
|
386
|
+
color: var(--md-default-fg-color--light);
|
|
387
|
+
border-left: 0.2rem solid var(--md-default-fg-color--light);
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
.md-typeset table:not([class]) {
|
|
391
|
+
font-size: var(--md-typeset-font-size);
|
|
392
|
+
border: 1px solid var(--md-default-fg-color);
|
|
393
|
+
border-bottom: none;
|
|
394
|
+
border-collapse: collapse;
|
|
395
|
+
}
|
|
396
|
+
.md-typeset table:not([class]) th {
|
|
397
|
+
font-weight: bold;
|
|
398
|
+
}
|
|
399
|
+
.md-typeset table:not([class]) td, .md-typeset table:not([class]) th {
|
|
400
|
+
border-bottom: 1px solid var(--md-default-fg-color);
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
.md-typeset pre > code::-webkit-scrollbar-thumb {
|
|
404
|
+
background-color: hsla(0, 0%, 0%, 0.32);
|
|
405
|
+
}
|
|
406
|
+
.md-typeset pre > code::-webkit-scrollbar-thumb:hover {
|
|
407
|
+
background-color: hsla(0, 0%, 0%, 0.87);
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
.md-typeset code {
|
|
411
|
+
word-break: keep-all;
|
|
412
|
+
}
|
|
413
|
+
`,Qt=()=>`
|
|
414
|
+
/*================== Animations ==================*/
|
|
415
|
+
/*
|
|
416
|
+
Disable CSS animations on link colors as they lead to issues in dark mode.
|
|
417
|
+
The dark mode color theme is applied later and theirfore there is always an animation from light to dark mode when navigation between pages.
|
|
418
|
+
*/
|
|
419
|
+
.md-dialog, .md-nav__link, .md-footer__link, .md-typeset a, .md-typeset a::before, .md-typeset .headerlink {
|
|
420
|
+
transition: none;
|
|
421
|
+
}
|
|
422
|
+
`,Je=({theme:p})=>`
|
|
423
|
+
/*================== Extensions ==================*/
|
|
424
|
+
|
|
425
|
+
/* HIGHLIGHT */
|
|
426
|
+
.highlight .md-clipboard:after {
|
|
427
|
+
content: unset;
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
.highlight .nx {
|
|
431
|
+
color: ${p.palette.type==="dark"?"#ff53a3":"#ec407a"};
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
/* CODE HILITE */
|
|
435
|
+
.codehilite .gd {
|
|
436
|
+
background-color: ${p.palette.type==="dark"?"rgba(248,81,73,0.65)":"#fdd"};
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
.codehilite .gi {
|
|
440
|
+
background-color: ${p.palette.type==="dark"?"rgba(46,160,67,0.65)":"#dfd"};
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
/* TABBED */
|
|
444
|
+
.tabbed-set>input:nth-child(1):checked~.tabbed-labels>:nth-child(1),
|
|
445
|
+
.tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),
|
|
446
|
+
.tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),
|
|
447
|
+
.tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),
|
|
448
|
+
.tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),
|
|
449
|
+
.tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),
|
|
450
|
+
.tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),
|
|
451
|
+
.tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),
|
|
452
|
+
.tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),
|
|
453
|
+
.tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),
|
|
454
|
+
.tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),
|
|
455
|
+
.tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),
|
|
456
|
+
.tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),
|
|
457
|
+
.tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),
|
|
458
|
+
.tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),
|
|
459
|
+
.tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),
|
|
460
|
+
.tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),
|
|
461
|
+
.tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),
|
|
462
|
+
.tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),
|
|
463
|
+
.tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20) {
|
|
464
|
+
color: var(--md-accent-fg-color);
|
|
465
|
+
border-color: var(--md-accent-fg-color);
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
/* TASK-LIST */
|
|
469
|
+
.task-list-control .task-list-indicator::before {
|
|
470
|
+
background-color: ${p.palette.action.disabledBackground};
|
|
471
|
+
}
|
|
472
|
+
.task-list-control [type="checkbox"]:checked + .task-list-indicator:before {
|
|
473
|
+
background-color: ${p.palette.success.main};
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
/* ADMONITION */
|
|
477
|
+
.admonition {
|
|
478
|
+
font-size: var(--md-typeset-font-size) !important;
|
|
479
|
+
}
|
|
480
|
+
.admonition .admonition-title {
|
|
481
|
+
padding-left: 2.5rem !important;
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
.admonition .admonition-title:before {
|
|
485
|
+
top: 50% !important;
|
|
486
|
+
width: 20px !important;
|
|
487
|
+
height: 20px !important;
|
|
488
|
+
transform: translateY(-50%) !important;
|
|
489
|
+
}
|
|
490
|
+
`;const ln=[Be,yo,Eo,xo,Qt,Je],Co=()=>(0,Fn.Pf)(),Ao=()=>{const p=Co(),R=(0,rt.Z)();return(0,i.useMemo)(()=>{const B={theme:R,sidebar:p};return ln.reduce((F,X)=>F+X(B),"")},[R,p])},So=()=>{const p=Ao();return(0,i.useCallback)(R=>(R.getElementsByTagName("head")[0].insertAdjacentHTML("beforeend",`<style>${p}</style>`),R),[p])},Nn=async(p,R)=>{let B;if(typeof p=="string")B=new DOMParser().parseFromString(p,"text/html").documentElement;else if(p instanceof Element)B=p;else throw new Error("dom is not a recognized type");for(const F of R)B=await F(B);return B},xn=(p,R,B)=>{const F=p==="src"&&R.endsWith(".svg"),X=!R.match(/^([a-z]*:)?\/\//i),_=R.startsWith(B);return F&&(X||_)},bo=({techdocsStorageApi:p,entityId:R,path:B})=>async F=>{const X=await p.getApiOrigin(),_=async(dt,St)=>{for(const It of dt)if(It.hasAttribute(St)){const $t=It.getAttribute(St);if(!$t)return;const Jt=await p.getBaseUrl($t,R,B);if(xn(St,$t,X))try{const Tt=await(await fetch(Jt,{credentials:"include"})).text();It.setAttribute(St,`data:image/svg+xml;base64,${btoa(unescape(encodeURIComponent(Tt)))}`)}catch{It.setAttribute("alt",`Error: ${$t}`)}else It.setAttribute(St,Jt)}};return await Promise.all([_(F.querySelectorAll("img"),"src"),_(F.querySelectorAll("script"),"src"),_(F.querySelectorAll("source"),"src"),_(F.querySelectorAll("link"),"href"),_(F.querySelectorAll("a[download]"),"href")]),F},Wn=()=>p=>(((B,F)=>{Array.from(B).filter(X=>X.hasAttribute(F)).forEach(X=>{const _=X.getAttribute(F);if(_){_.match(/^https?:\/\//i)&&X.setAttribute("target","_blank");try{const dt=Oo(window.location.href);X.setAttribute(F,new URL(_,dt).toString())}catch{X.replaceWith(X.textContent||_)}}})})(Array.from(p.getElementsByTagName("a")),"href"),p);function Oo(p){const R=new URL(p);return!R.pathname.endsWith("/")&&!R.pathname.endsWith(".html")&&(R.pathname+="/"),R.toString()}var Zn=t(44882);let kn;kn=Promise.resolve().then(t.t.bind(t,17029,19));function Cn(p,R){kn.then(B=>{"createRoot"in B?B.createRoot(R).render(p):B.render(p,R)})}const wo=()=>p=>{const R=p.querySelector('.md-header label[for="__drawer"]'),B=p.querySelector("article");if(!R||!B)return p;const F=R.cloneNode();return Cn(i.createElement(Zn.Z),F),F.id="toggle-sidebar",F.title="Toggle Sidebar",F.classList.add("md-content__button"),F.style.setProperty("padding","0 0 0 5px"),F.style.setProperty("margin","0.4rem 0 0.4rem 0.4rem"),B==null||B.prepend(F),p},Po=()=>p=>{var R;return(R=p.querySelector(".md-header"))===null||R===void 0||R.remove(),p},To=()=>p=>{var R,B;return(R=p.querySelector(".md-footer .md-copyright"))===null||R===void 0||R.remove(),(B=p.querySelector(".md-footer-copyright"))===null||B===void 0||B.remove(),p};var Ro=t(61800),Io=t(67097),zn=t(82717),Do=t.n(zn);const Lo=p=>R=>{var B;const F=R.querySelector('[title="Edit this page"]');if(!F||!F.href)return R;const X=new URL(F.href),_=p.byUrl(X);if((_==null?void 0:_.type)!=="github"&&(_==null?void 0:_.type)!=="gitlab")return R;const dt=((B=R.querySelector("article>h1"))===null||B===void 0?void 0:B.childNodes[0].textContent)||"",St=encodeURIComponent(`Documentation Feedback: ${dt}`),It=encodeURIComponent(`Page source:
|
|
491
|
+
${F.href}
|
|
492
|
+
|
|
493
|
+
Feedback:`),$t=(_==null?void 0:_.type)==="github"?(0,Ro.B)(X.href,"blob"):X.href,Jt=Do()($t),Wt=`/${Jt.organization}/${Jt.name}`,Tt=F.cloneNode();switch(_==null?void 0:_.type){case"gitlab":Tt.href=`${X.origin}${Wt}/issues/new?issue[title]=${St}&issue[description]=${It}`;break;case"github":Tt.href=`${X.origin}${Wt}/issues/new?title=${St}&body=${It}`;break;default:return R}return Cn(i.createElement(Io.Z),Tt),Tt.style.paddingLeft="5px",Tt.title="Leave feedback for this page",Tt.id="git-feedback-link",F==null||F.insertAdjacentElement("beforebegin",Tt),R},Kn=()=>p=>(setTimeout(()=>{const R=p==null?void 0:p.querySelectorAll("li.md-nav__item--active");R.length!==0&&(R.forEach(F=>{const X=F==null?void 0:F.querySelector("input");X!=null&&X.checked||X==null||X.click()}),R[R.length-1].scrollIntoView())},200),p);var Hn=t(15459),jo=t(80030),An=t(72379),Sn=t(41547),Mo=t(95074);const Gn=(0,Hn.Z)(p=>({tooltip:{fontSize:"inherit",color:p.palette.text.primary,margin:0,padding:p.spacing(.5),backgroundColor:"transparent",boxShadow:"none"}}))(jo.ZP),Vn=()=>(0,o.jsx)(An.Z,{children:(0,o.jsx)("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"})}),Bo=({text:p})=>{const[R,B]=(0,i.useState)(!1),[,F]=(0,Mo.Z)(),X=(0,i.useCallback)(()=>{F(p),B(!0)},[p,F]),_=(0,i.useCallback)(()=>{B(!1)},[B]);return(0,o.jsx)(Gn,{title:"Copied to clipboard",placement:"left",open:R,onClose:_,leaveDelay:1e3,children:(0,o.jsx)(pt.Z,{style:{color:"inherit"},className:"md-clipboard md-icon",onClick:X,children:(0,o.jsx)(Vn,{})})})},Uo=p=>R=>{const B=R.querySelectorAll("pre > code");for(const X of B){var F;const _=X.textContent||"",dt=document.createElement("div");X==null||(F=X.parentElement)===null||F===void 0||F.prepend(dt),Cn((0,o.jsx)(Sn.Z,{theme:p,children:(0,o.jsx)(Bo,{text:_})}),dt)}return R},Fo=({baseUrl:p,onClick:R})=>B=>(Array.from(B.getElementsByTagName("a")).forEach(F=>{F.addEventListener("click",X=>{const dt=F.getAttribute("href");dt&&dt.startsWith(p)&&!F.hasAttribute("download")&&(X.preventDefault(),R(X,dt))})}),B),Yn=({onLoading:p,onLoaded:R})=>B=>(p(),B.addEventListener(y,function F(){R(),B.removeEventListener(y,F)}),B);function $o(p,R){const B=new URL(R),F=`${B.origin}${B.pathname.replace(/\/$/,"")}`,X=p.replace(F,"").replace(/^\/+/,""),_=new URL(`http://localhost/${X}`);return`${_.pathname}${_.search}${_.hash}`}function No(){const p=(0,Yt.s0)(),B=(0,Z.h_)(it.D).getOptionalString("app.baseUrl");return(0,i.useCallback)(X=>{let _=X;if(B)try{_=$o(X,B)}catch{}p(_)},[p,B])}const Wo="screen and (max-width: 76.1875em)",Zo=p=>{const R=No(),B=(0,rt.Z)(),F=(0,wt.Z)(Wo),X=Un(),_=So(),dt=(0,Q.z)(),St=(0,Z.h_)(ie.D),It=(0,Z.h_)(Rt.q),{state:$t,path:Jt,content:Wt}=Ne(),[Tt,ce]=(0,i.useState)(null),me=v(Tt),Xt=(0,i.useCallback)(()=>{if(!Tt)return;Tt.querySelectorAll(".md-sidebar").forEach(Ht=>{if(F)Ht.style.top="0px";else{var qt;const fe=(qt=document)===null||qt===void 0?void 0:qt.querySelector(".techdocs-reader-page");var Ce;const De=(Ce=fe==null?void 0:fe.getBoundingClientRect().top)!==null&&Ce!==void 0?Ce:0;var Ie;let ne=(Ie=Tt.getBoundingClientRect().top)!==null&&Ie!==void 0?Ie:0;const Xe=Tt.querySelector(".md-container > .md-tabs");var We;const dn=(We=Xe==null?void 0:Xe.getBoundingClientRect().height)!==null&&We!==void 0?We:0;ne<De&&(ne=De),Ht.style.top=`${Math.max(ne,0)+dn}px`}Ht.style.setProperty("opacity","1")})},[Tt,F]);(0,i.useEffect)(()=>(window.addEventListener("resize",Xt),window.addEventListener("scroll",Xt,!0),()=>{window.removeEventListener("resize",Xt),window.removeEventListener("scroll",Xt,!0)}),[Tt,Xt]);const Mt=(0,i.useCallback)(()=>{if(!Tt)return;const Dt=Tt.querySelector(".md-footer");Dt&&(Dt.style.width=`${Tt.getBoundingClientRect().width}px`)},[Tt]);(0,i.useEffect)(()=>(window.addEventListener("resize",Mt),()=>{window.removeEventListener("resize",Mt)}),[Tt,Mt]),(0,i.useEffect)(()=>{me||(Mt(),Xt())},[$t,me,Mt,Xt]);const re=(0,i.useCallback)((Dt,Ht)=>Nn(Dt,[X,bo({techdocsStorageApi:St,entityId:p,path:Ht}),Wn(),wo(),Po(),To(),Lo(It),_]),[p,It,St,X,_]),ye=(0,i.useCallback)(async Dt=>Nn(Dt,[Kn(),Uo(B),Fo({baseUrl:window.location.origin,onClick:(Ht,qt)=>{var Ce;const Ie=Ht.ctrlKey||Ht.metaKey,We=new URL(qt),fe=((Ce=Ht.target)===null||Ce===void 0?void 0:Ce.innerText)||qt,De=qt.replace(window.location.origin,"");if(dt.captureEvent("click",fe,{attributes:{to:De}}),We.hash)if(Ie)window.open(qt,"_blank");else{var ne;R(qt),Dt==null||(ne=Dt.querySelector(`[id="${We.hash.slice(1)}"]`))===null||ne===void 0||ne.scrollIntoView()}else Ie?window.open(qt,"_blank"):R(qt)}}),Yn({onLoading:()=>{},onLoaded:()=>{var Ht;(Ht=Dt.querySelector(".md-nav__title"))===null||Ht===void 0||Ht.removeAttribute("for")}}),Yn({onLoading:()=>{Array.from(Dt.querySelectorAll(".md-sidebar")).forEach(qt=>{qt.style.setProperty("opacity","0")})},onLoaded:()=>{}})]),[B,R,dt]);return(0,i.useEffect)(()=>{if(!Wt)return()=>{};let Dt=!0;return re(Wt,Jt).then(async Ht=>{if(!(Ht!=null&&Ht.innerHTML)||!Dt)return;window.scroll({top:0});const qt=await ye(Ht);ce(qt)}),()=>{Dt=!1}},[Wt,Jt,re,ye]),Tt};var cn=t(8560),Qn=t(2296),Pt=t(57058);const ue=()=>{const p=(0,Qn.$L)(),{shadowRoot:R}=(0,m.x)(),B=R==null?void 0:R.querySelector('[data-md-component="content"]'),F=R==null?void 0:R.querySelector('div[data-md-component="sidebar"][data-md-type="navigation"], div[data-md-component="navigation"]');let X=F==null?void 0:F.querySelector('[data-techdocs-addons-location="primary sidebar"]');X||(X=document.createElement("div"),X.setAttribute("data-techdocs-addons-location","primary sidebar"),F==null||F.prepend(X));const _=R==null?void 0:R.querySelector('div[data-md-component="sidebar"][data-md-type="toc"], div[data-md-component="toc"]');let dt=_==null?void 0:_.querySelector('[data-techdocs-addons-location="secondary sidebar"]');return dt||(dt=document.createElement("div"),dt.setAttribute("data-techdocs-addons-location","secondary sidebar"),_==null||_.prepend(dt)),(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(cn.Z,{container:X,children:p.renderComponentsByLocation(Pt.o.PrimarySidebar)}),(0,o.jsx)(cn.Z,{container:B,children:p.renderComponentsByLocation(Pt.o.Content)}),(0,o.jsx)(cn.Z,{container:dt,children:p.renderComponentsByLocation(Pt.o.SecondarySidebar)})]})},he=(0,u.Z)({search:{width:"100%","@media (min-width: 76.1875em)":{width:"calc(100% - 34.4rem)",margin:"0 auto"},"@media print":{display:"none"}}}),ko=f(p=>{var R;const{withSearch:B=!0,onReady:F}=p,X=he(),{entityMetadata:{value:_,loading:dt},entityRef:St,setShadowRoot:It}=(0,m.x)(),$t=Zo(St),Jt=window.location.pathname,Wt=window.location.hash,Tt=v($t),[ce]=P([`[id="${Wt.slice(1)}"]`]);(0,i.useEffect)(()=>{if(!Tt)if(Wt)ce&&ce.scrollIntoView();else{var Xt,Mt;(Mt=document)===null||Mt===void 0||(Xt=Mt.querySelector("header"))===null||Xt===void 0||Xt.scrollIntoView()}},[Jt,Wt,ce,Tt]);const me=(0,i.useCallback)(Xt=>{It(Xt),F instanceof Function&&F()},[It,F]);return dt===!1&&!_?(0,o.jsx)(M.m,{status:"404",statusMessage:"PAGE NOT FOUND"}):$t?(0,o.jsx)(b.V,{children:(0,o.jsxs)(S.Z,{container:!0,children:[(0,o.jsx)(S.Z,{xs:12,item:!0,children:(0,o.jsx)(N,{})}),B&&(0,o.jsx)(S.Z,{className:X.search,xs:"auto",item:!0,children:(0,o.jsx)(_t,{entityId:St,entityTitle:_==null||(R=_.metadata)===null||R===void 0?void 0:R.title})}),(0,o.jsx)(S.Z,{xs:12,item:!0,children:(0,o.jsx)(A,{element:$t,onAppend:me,children:(0,o.jsx)(ue,{})})})]})}):(0,o.jsx)(b.V,{children:(0,o.jsx)(S.Z,{container:!0,children:(0,o.jsx)(S.Z,{xs:12,item:!0,children:(0,o.jsx)(N,{})})})})}),cr=null},65386:function(V,T,t){"use strict";t.d(T,{S:function(){return it}});var o=t(52322),i=t(2784),u=t(18671),S=t(60905),m=t(98069),g=t(60364),c=t(73250),d=t(2296),E=t(68979),y=t(57058),O=t(75435),v=t(76277),A=t(51194),h=t(8709),I=t(79692),P=t(41128),w=t(90436),D=t(98864);const M=(0,I.Z)(mt=>({root:{textAlign:"left"},label:{color:mt.page.fontColor,fontWeight:mt.typography.fontWeightBold,letterSpacing:0,fontSize:mt.typography.fontSize,marginBottom:mt.spacing(1)/2,lineHeight:1},value:{color:(0,P.Fq)(mt.page.fontColor,.8),fontSize:mt.typography.fontSize,lineHeight:1}}),{name:"BackstageHeaderLabel"}),b=({value:mt,className:ft,typographyRootComponent:Ot})=>(0,o.jsx)(w.Z,{component:Ot!=null?Ot:typeof mt=="string"?"p":"span",className:ft,children:mt});function H(mt){const{label:ft,value:Ot,url:ct,contentTypograpyRootComponent:Et}=mt,at=M(),G=(0,o.jsx)(b,{className:at.value,value:Ot||"<Unknown>",typographyRootComponent:Et});return(0,o.jsx)(S.Z,{item:!0,children:(0,o.jsxs)(w.Z,{component:"span",className:at.root,children:[(0,o.jsx)(w.Z,{className:at.label,children:ft}),ct?(0,o.jsx)(D.rU,{to:ct,children:G}):G]})})}var Y=t(48037),tt=t(44394),z=t(6542),W=t(37321),Z=t(76635),Q=t(95573);const et=(0,o.jsx)(m.Z,{animation:"wave",variant:"text",height:40}),it=mt=>{const{palette:{common:{white:ft}}}=(0,g.Z)(),{children:Ot}=mt,ct=(0,d.$L)(),Et=(0,tt.h_)(z.D),{title:at,setTitle:G,subtitle:st,setSubtitle:xt,entityRef:At,metadata:{value:Ct,loading:ht},entityMetadata:{value:lt,loading:pt}}=(0,E.x)();(0,i.useEffect)(()=>{Ct&&(G(Ct.site_name),xt(()=>{let{site_description:Lt}=Ct;return(!Lt||Lt==="None")&&(Lt=""),Lt}))},[Ct,G,xt]);const K=Et.getOptional("app.title")||"Backstage",k=[at,st,K].filter(Boolean).join(" | "),{locationMetadata:q,spec:ot}=lt||{},gt=ot==null?void 0:ot.lifecycle,vt=lt?(0,O.h)(lt,h.S4):[],Bt=(0,W.t)(Q._Z)(),zt=(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(H,{label:(0,Z.capitalize)((lt==null?void 0:lt.kind)||"entity"),value:(0,o.jsx)(v.d,{color:"inherit",entityRef:At,title:lt==null?void 0:lt.metadata.title,defaultKind:"Component"})}),vt.length>0&&(0,o.jsx)(H,{label:"Owner",value:(0,o.jsx)(A.r,{color:"inherit",entityRefs:vt,defaultKind:"group"})}),gt?(0,o.jsx)(H,{label:"Lifecycle",value:String(gt)}):null,q&&q.type!=="dir"&&q.type!=="file"?(0,o.jsx)(H,{label:"",value:(0,o.jsxs)(S.Z,{container:!0,direction:"column",alignItems:"center",style:{color:ft},children:[(0,o.jsx)(S.Z,{style:{padding:0},item:!0,children:(0,o.jsx)(c.Z,{style:{marginTop:"-25px"}})}),(0,o.jsx)(S.Z,{style:{padding:0},item:!0,children:"Source"})]}),url:q.target}):null]});return!pt&<===void 0||!ht&&Ct===void 0?null:(0,o.jsxs)(Y.h,{type:"Documentation",typeLink:Bt,title:at||et,subtitle:st===""?void 0:st||et,children:[(0,o.jsx)(u.Z,{titleTemplate:"%s",children:(0,o.jsx)("title",{children:k})}),zt,Ot,ct.renderComponentsByLocation(y.o.Header)]})}},95573:function(V,T,t){"use strict";t.d(T,{Fw:function(){return u},_Z:function(){return i},pd:function(){return S}});var o=t(30283);const i=(0,o.N)({id:"techdocs:index-page"}),u=(0,o.N)({id:"techdocs:reader-page",params:["namespace","kind","name"]}),S=(0,o.N)({id:"techdocs:catalog-reader-view"})},55511:function(V,T,t){"use strict";t.r(T),t.d(T,{TechDocsSearchResultListItem:function(){return y}});var o=t(52322),i=t(2784),u=t(79692),S=t(49378),m=t(86136),g=t(90436),c=t(98864),d=t(76079);const E=(0,u.Z)({flexContainer:{flexWrap:"wrap"},itemText:{width:"100%",marginBottom:"1rem"}}),y=O=>{const{result:v,highlight:A,lineClamp:h=5,asListItem:I=!0,asLink:P=!0,title:w,icon:D}=O,M=E(),b=({children:tt})=>P?(0,o.jsx)(c.rU,{noTrack:!0,to:v.location,children:tt}):(0,o.jsx)(o.Fragment,{children:tt}),H=()=>{const tt=A!=null&&A.fields.title?(0,o.jsx)(d.F,{text:A.fields.title,preTag:A.preTag,postTag:A.postTag}):v.title,z=A!=null&&A.fields.entityTitle?(0,o.jsx)(d.F,{text:A.fields.entityTitle,preTag:A.preTag,postTag:A.postTag}):v.entityTitle,W=A!=null&&A.fields.name?(0,o.jsx)(d.F,{text:A.fields.name,preTag:A.preTag,postTag:A.postTag}):v.name;return v?(0,o.jsx)(S.Z,{className:M.itemText,primaryTypographyProps:{variant:"h6"},primary:(0,o.jsx)(b,{children:w||(0,o.jsxs)(o.Fragment,{children:[tt," | ",z!=null?z:W," docs"]})}),secondary:(0,o.jsx)(g.Z,{component:"span",style:{display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:h,overflow:"hidden"},color:"textSecondary",variant:"body2",children:A!=null&&A.fields.text?(0,o.jsx)(d.F,{text:A.fields.text,preTag:A.preTag,postTag:A.postTag}):v.text})}):null},Y=({children:tt})=>I?(0,o.jsxs)(o.Fragment,{children:[D&&(0,o.jsx)(m.Z,{children:typeof D=="function"?D(v):D}),(0,o.jsx)("div",{className:M.flexContainer,children:tt})]}):(0,o.jsx)(o.Fragment,{children:tt});return(0,o.jsx)(Y,{children:(0,o.jsx)(H,{})})}},53260:function(){}},function(V){var T=function(o){return V(V.s=o)};V.O(0,[2370,6202,9284,7012,427,242,5109,5218,6816,1213,4736],function(){return T(51280)});var t=V.O()}]);})();
|
|
494
|
+
|
|
495
|
+
//# sourceMappingURL=main.3f749eef.js.map
|