@redocly/asyncapi-docs
Version:
Async API docs for Redocly Realm
50 lines (49 loc) • 2.98 kB
JavaScript
var u=Object.create;var l=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var S=(e,a)=>{for(var r in a)l(e,r,{get:a[r],enumerable:!0})},p=(e,a,r,s)=>{if(a&&typeof a=="object"||typeof a=="function")for(let i of f(a))!b.call(e,i)&&i!==r&&l(e,i,{get:()=>a[i],enumerable:!(s=m(a,i))||s.enumerable});return e};var w=(e,a,r)=>(r=e!=null?u(x(e)):{},p(a||!e||!e.__esModule?l(r,"default",{value:e,enumerable:!0}):r,e)),k=e=>p(l({},"__esModule",{value:!0}),e);var R={};S(R,{ServerModal:()=>I});module.exports=k(R);var t=require("react/jsx-runtime"),o=require("@redocly/theme"),n=w(require("styled-components")),c=require("react"),g=require("./ServerOverviewSection"),v=require("./ServerBindingsSection");const y=[{label:"Overview",value:0}],z=({protocol:e})=>{switch(e){case"kafka":return(0,t.jsx)(o.KafkaIcon,{size:"24px"});case"amqp":return(0,t.jsx)(o.RabbitMQIcon,{size:"24px"});default:return(0,t.jsx)(o.DatabaseIcon,{size:"24px"})}},I=({server:e,onClose:a})=>{const[r,s]=(0,c.useState)(0),i=(0,c.useRef)(null);(0,o.useOutsideClick)(i,a),(0,o.useFocusTrap)(i);const d=[...y];return e.value.bindings&&d.push({label:"Configuration",value:2}),(0,t.jsx)(B,{"data-component-name":"ServerModal/ServerModal",children:(0,t.jsxs)(C,{ref:i,tabIndex:0,children:[(0,t.jsx)(M,{onClick:a,"data-testid":"close",variant:"ghost",icon:(0,t.jsx)(o.CloseIcon,{})}),(0,t.jsxs)(O,{children:[(0,t.jsx)(z,{protocol:e.value.protocol}),(0,t.jsx)(T,{children:e.value.protocol}),": ",e.key]}),(0,t.jsx)(o.Segmented,{value:r,onChange:({value:h})=>s(h),options:d}),(0,t.jsxs)(j,{children:[r===0&&(0,t.jsx)(g.ServerOverviewSection,{server:e.value}),r===2&&(0,t.jsx)(v.ServerBindingsSection,{server:e.value})]})]})})},B=n.default.div`
background: var(--bg-color-modal-overlay);
position: fixed;
width: 100vw;
height: 100vh;
z-index: var(--z-index-popover);
left: 0;
top: 0;
pointer-events: auto;
`,C=n.default.div`
background: var(--bg-color);
box-shadow: var(--bg-raised-shadow);
border-radius: var(--border-radius-lg);
padding: var(--spacing-lg);
display: flex;
flex-direction: column;
align-items: flex-start;
position: absolute;
width: 720px;
max-width: 100%;
height: auto;
max-height: 600px;
overflow-y: scroll;
left: 50%;
top: 100px;
transform: translateX(-50%);
.tag-grey span {
font-size: var(--font-size-base);
line-height: var(--line-height-base);
}
`,M=(0,n.default)(o.Button)`
position: absolute;
right: var(--spacing-md);
top: var(--spacing-md);
`,O=(0,n.default)(o.Typography)`
display: flex;
align-items: center;
font-size: var(--h4-font-size);
font-weight: var(--h4-font-weight);
margin-bottom: var(--spacing-lg);
svg {
margin-right: var(--spacing-xs);
}
`,T=n.default.span`
text-transform: capitalize;
`,j=n.default.div`
padding-top: var(--spacing-base);
width: 100%;
`;0&&(module.exports={ServerModal});