File tree Expand file tree Collapse file tree 3 files changed +15
-3
lines changed Expand file tree Collapse file tree 3 files changed +15
-3
lines changed Original file line number Diff line number Diff line change @@ -3,4 +3,11 @@ Changelog
33
44in development
55--------------
6- * Create a changelog and required machinery
6+
7+ Added
8+ ~~~~~
9+
10+ * Added feature for disabling button for synchronous responses
11+ - Button gets disabled onClick on `Connect ` and `Submit ` in st2-login and st2-history module respectively
12+
13+ Contributed by @ParthS007
Original file line number Diff line number Diff line change @@ -39,6 +39,7 @@ export default class HistoryPopup extends React.Component {
3939
4040 state = {
4141 preview : false ,
42+ disabled : false ,
4243 }
4344
4445 static getDerivedStateFromProps ( props , state ) {
@@ -89,6 +90,7 @@ export default class HistoryPopup extends React.Component {
8990 delete this . state . payload [ payLoadKey ] ;
9091 }
9192 this . props . onSubmit ( this . state . payload ) ;
93+ this . setState ( { disabled : true } ) ;
9294 }
9395
9496 render ( ) {
@@ -136,6 +138,7 @@ export default class HistoryPopup extends React.Component {
136138 submit
137139 className = "st2-details__toolbar-button"
138140 value = "Submit"
141+ disabled = { this . state . disabled }
139142 onClick = { ( e ) => this . handleSubmit ( e ) }
140143 data-test = "rerun_submit"
141144 />
Original file line number Diff line number Diff line change @@ -157,6 +157,7 @@ export default class Login extends React.Component {
157157 username : '' ,
158158 password : '' ,
159159 remember : true ,
160+ disabled : false ,
160161
161162 server,
162163 servers,
@@ -168,13 +169,13 @@ export default class Login extends React.Component {
168169
169170 connect ( e ) {
170171 e . preventDefault ( ) ;
171-
172+ this . setState ( { disabled : true } ) ;
172173 this . setState ( { error : null } ) ;
173174
174175 const { server, username, password, remember } = this . state ;
175176 return api . connect ( server , username , password , remember )
176177 . then ( ( ) => this . props . onConnect ( ) )
177- . catch ( ( err ) => this . setState ( { error : err . message } ) )
178+ . catch ( ( err ) => this . setState ( { error : err . message , disabled : false } ) )
178179 ;
179180 }
180181
@@ -240,6 +241,7 @@ export default class Login extends React.Component {
240241 className = { cx ( 'st2-forms__button' , style . button ) }
241242 type = "submit"
242243 value = "Connect"
244+ disabled = { this . state . disabled }
243245 />
244246
245247 < label className = { style . checkboxWrapper } >
You can’t perform that action at this time.
0 commit comments