@@ -3,7 +3,7 @@ import { AlertBanner } from "components/AlertBanner/AlertBanner"
3
3
import { ConfirmDialog } from "components/Dialogs/ConfirmDialog/ConfirmDialog"
4
4
import { scheduleToAutoStart } from "pages/WorkspaceSchedulePage/schedule"
5
5
import { ttlMsToAutoStop } from "pages/WorkspaceSchedulePage/ttl"
6
- import React , { useEffect , useState } from "react"
6
+ import React , { useEffect } from "react"
7
7
import { Navigate , useNavigate , useParams } from "react-router-dom"
8
8
import { scheduleChanged } from "util/schedule"
9
9
import * as TypesGen from "../../api/typesGenerated"
@@ -28,6 +28,11 @@ export const Language = {
28
28
applyLater : "Apply update later" ,
29
29
}
30
30
31
+ const getAutoStart = ( workspace ?: TypesGen . Workspace ) =>
32
+ scheduleToAutoStart ( workspace ?. autostart_schedule )
33
+ const getAutoStop = ( workspace ?: TypesGen . Workspace ) =>
34
+ ttlMsToAutoStop ( workspace ?. ttl_ms )
35
+
31
36
export const WorkspaceSchedulePage : React . FC = ( ) => {
32
37
const { username : usernameQueryParam , workspace : workspaceQueryParam } =
33
38
useParams ( )
@@ -52,19 +57,6 @@ export const WorkspaceSchedulePage: React.FC = () => {
52
57
scheduleSend ( { type : "GET_WORKSPACE" , username, workspaceName } )
53
58
} , [ username , workspaceName , scheduleSend ] )
54
59
55
- const getAutoStart = ( workspace ?: TypesGen . Workspace ) =>
56
- scheduleToAutoStart ( workspace ?. autostart_schedule )
57
- const getAutoStop = ( workspace ?: TypesGen . Workspace ) =>
58
- ttlMsToAutoStop ( workspace ?. ttl_ms )
59
-
60
- const [ autoStart , setAutoStart ] = useState ( getAutoStart ( workspace ) )
61
- const [ autoStop , setAutoStop ] = useState ( getAutoStop ( workspace ) )
62
-
63
- useEffect ( ( ) => {
64
- setAutoStart ( getAutoStart ( workspace ) )
65
- setAutoStop ( getAutoStop ( workspace ) )
66
- } , [ workspace ] )
67
-
68
60
if ( ! username || ! workspaceName ) {
69
61
return < Navigate to = "/workspaces" />
70
62
}
@@ -108,7 +100,7 @@ export const WorkspaceSchedulePage: React.FC = () => {
108
100
return (
109
101
< WorkspaceScheduleForm
110
102
submitScheduleError = { submitScheduleError }
111
- initialValues = { { ...autoStart , ...autoStop } }
103
+ initialValues = { { ...getAutoStart ( workspace ) , ...getAutoStop ( workspace ) } }
112
104
isLoading = { scheduleState . tags . has ( "loading" ) }
113
105
onCancel = { ( ) => {
114
106
navigate ( `/@${ username } /${ workspaceName } ` )
@@ -118,8 +110,8 @@ export const WorkspaceSchedulePage: React.FC = () => {
118
110
type : "SUBMIT_SCHEDULE" ,
119
111
autoStart : formValuesToAutoStartRequest ( values ) ,
120
112
ttl : formValuesToTTLRequest ( values ) ,
121
- autoStartChanged : scheduleChanged ( autoStart , values ) ,
122
- autoStopChanged : scheduleChanged ( autoStop , values ) ,
113
+ autoStartChanged : scheduleChanged ( getAutoStart ( workspace ) , values ) ,
114
+ autoStopChanged : scheduleChanged ( getAutoStop ( workspace ) , values ) ,
123
115
} )
124
116
} }
125
117
/>
0 commit comments