@@ -43,88 +43,90 @@ export function NetworkInterfaceField({
43
43
return (
44
44
< div className = "max-w-lg space-y-2" >
45
45
< FieldLabel id = "network-interface-type-label" > Network interface</ FieldLabel >
46
- < RadioGroup
47
- aria-labelledby = "network-interface-type-label"
48
- name = "networkInterfaceType"
49
- column
50
- className = "pt-1"
51
- defaultChecked = { value . type }
52
- onChange = { ( event ) => {
53
- const newType = event . target . value as InstanceNetworkInterfaceAttachment [ 'type' ]
46
+ < div className = "space-y-4" >
47
+ < RadioGroup
48
+ aria-labelledby = "network-interface-type-label"
49
+ name = "networkInterfaceType"
50
+ column
51
+ className = "pt-1"
52
+ defaultChecked = { value . type }
53
+ onChange = { ( event ) => {
54
+ const newType = event . target . value as InstanceNetworkInterfaceAttachment [ 'type' ]
54
55
55
- if ( value . type === 'create' ) {
56
- setOldParams ( value . params )
57
- }
56
+ if ( value . type === 'create' ) {
57
+ setOldParams ( value . params )
58
+ }
58
59
59
- newType === 'create'
60
- ? onChange ( { type : newType , params : oldParams } )
61
- : onChange ( { type : newType } )
62
- } }
63
- disabled = { disabled }
64
- >
65
- < Radio value = "none" > None</ Radio >
66
- < Radio value = "default" > Default</ Radio >
67
- < Radio value = "create" > Custom</ Radio >
68
- </ RadioGroup >
69
- { value . type === 'create' && (
70
- < >
71
- { value . params . length > 0 && (
72
- < MiniTable . Table className = "mb-4 " >
73
- < MiniTable . Header >
74
- < MiniTable . HeadCell > Name</ MiniTable . HeadCell >
75
- < MiniTable . HeadCell > VPC</ MiniTable . HeadCell >
76
- < MiniTable . HeadCell > Subnet</ MiniTable . HeadCell >
77
- { /* For remove button */ }
78
- < MiniTable . HeadCell className = "w-12" />
79
- </ MiniTable . Header >
80
- < MiniTable . Body >
81
- { value . params . map ( ( item , index ) => (
82
- < MiniTable . Row
83
- tabIndex = { 0 }
84
- aria-rowindex = { index + 1 }
85
- aria-label = { `Name: ${ item . name } , Vpc: ${ item . vpcName } , Subnet: ${ item . subnetName } ` }
86
- key = { item . name }
87
- >
88
- < MiniTable . Cell > { item . name } </ MiniTable . Cell >
89
- < MiniTable . Cell > { item . vpcName } </ MiniTable . Cell >
90
- < MiniTable . Cell > { item . subnetName } </ MiniTable . Cell >
91
- < MiniTable . Cell >
92
- < button
93
- onClick = { ( ) =>
94
- onChange ( {
95
- type : 'create' ,
96
- params : value . params . filter ( ( i ) => i . name !== item . name ) ,
97
- } )
98
- }
99
- >
100
- < Error16Icon title = { `remove ${ item . name } ` } />
101
- </ button >
102
- </ MiniTable . Cell >
103
- </ MiniTable . Row >
104
- ) ) }
105
- </ MiniTable . Body >
106
- </ MiniTable . Table >
107
- ) }
60
+ newType === 'create'
61
+ ? onChange ( { type : newType , params : oldParams } )
62
+ : onChange ( { type : newType } )
63
+ } }
64
+ disabled = { disabled }
65
+ >
66
+ < Radio value = "none" > None</ Radio >
67
+ < Radio value = "default" > Default</ Radio >
68
+ < Radio value = "create" > Custom</ Radio >
69
+ </ RadioGroup >
70
+ { value . type === 'create' && (
71
+ < >
72
+ { value . params . length > 0 && (
73
+ < MiniTable . Table className = "pt-2 " >
74
+ < MiniTable . Header >
75
+ < MiniTable . HeadCell > Name</ MiniTable . HeadCell >
76
+ < MiniTable . HeadCell > VPC</ MiniTable . HeadCell >
77
+ < MiniTable . HeadCell > Subnet</ MiniTable . HeadCell >
78
+ { /* For remove button */ }
79
+ < MiniTable . HeadCell className = "w-12" />
80
+ </ MiniTable . Header >
81
+ < MiniTable . Body >
82
+ { value . params . map ( ( item , index ) => (
83
+ < MiniTable . Row
84
+ tabIndex = { 0 }
85
+ aria-rowindex = { index + 1 }
86
+ aria-label = { `Name: ${ item . name } , Vpc: ${ item . vpcName } , Subnet: ${ item . subnetName } ` }
87
+ key = { item . name }
88
+ >
89
+ < MiniTable . Cell > { item . name } </ MiniTable . Cell >
90
+ < MiniTable . Cell > { item . vpcName } </ MiniTable . Cell >
91
+ < MiniTable . Cell > { item . subnetName } </ MiniTable . Cell >
92
+ < MiniTable . Cell >
93
+ < button
94
+ onClick = { ( ) =>
95
+ onChange ( {
96
+ type : 'create' ,
97
+ params : value . params . filter ( ( i ) => i . name !== item . name ) ,
98
+ } )
99
+ }
100
+ >
101
+ < Error16Icon title = { `remove ${ item . name } ` } />
102
+ </ button >
103
+ </ MiniTable . Cell >
104
+ </ MiniTable . Row >
105
+ ) ) }
106
+ </ MiniTable . Body >
107
+ </ MiniTable . Table >
108
+ ) }
108
109
109
- { showForm && (
110
- < CreateNetworkInterfaceForm
111
- onSubmit = { ( networkInterface ) => {
112
- onChange ( {
113
- type : 'create' ,
114
- params : [ ...value . params , networkInterface ] ,
115
- } )
116
- setShowForm ( false )
117
- } }
118
- onDismiss = { ( ) => setShowForm ( false ) }
119
- />
120
- ) }
121
- < div className = "space-x-3" >
122
- < Button size = "sm" onClick = { ( ) => setShowForm ( true ) } >
123
- Add network interface
124
- </ Button >
125
- </ div >
126
- </ >
127
- ) }
110
+ { showForm && (
111
+ < CreateNetworkInterfaceForm
112
+ onSubmit = { ( networkInterface ) => {
113
+ onChange ( {
114
+ type : 'create' ,
115
+ params : [ ...value . params , networkInterface ] ,
116
+ } )
117
+ setShowForm ( false )
118
+ } }
119
+ onDismiss = { ( ) => setShowForm ( false ) }
120
+ />
121
+ ) }
122
+ < div className = "space-x-3" >
123
+ < Button size = "sm" onClick = { ( ) => setShowForm ( true ) } >
124
+ Add network interface
125
+ </ Button >
126
+ </ div >
127
+ </ >
128
+ ) }
129
+ </ div >
128
130
</ div >
129
131
)
130
132
}
0 commit comments