Skip to content

Commit 22e5147

Browse files
committed
fixup: override workspaceAutostartOptions
also fix toDurationString call
1 parent 8d870bf commit 22e5147

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

components/dashboard/src/data/current-user/update-mutation.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,16 @@ export const useUpdateCurrentUserMutation = () => {
1818
return useMutation({
1919
mutationFn: async (partialUser: UpdateCurrentUserArgs) => {
2020
const current = await getGitpodService().server.getLoggedInUser();
21+
const currentAdditionalData = { ...current.additionalData };
22+
// workspaceAutostartOptions needs to be overriden
23+
if (partialUser.additionalData?.workspaceAutostartOptions) {
24+
currentAdditionalData.workspaceAutostartOptions = [];
25+
}
2126
const update: UpdateCurrentUserArgs = {
2227
id: current.id,
2328
fullName: partialUser.fullName || current.fullName,
2429
additionalData: deepmerge<AdditionalUserData>(
25-
current.additionalData || {},
30+
currentAdditionalData || {},
2631
partialUser.additionalData || {},
2732
),
2833
};

components/dashboard/src/user-settings/Preferences.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export default function Preferences() {
3535
const [dotfileRepo, setDotfileRepo] = useState<string>(user?.dotfileRepo || "");
3636

3737
const [workspaceTimeout, setWorkspaceTimeout] = useState<string>(
38-
converter.fromDuration(user?.workspaceTimeoutSettings?.inactivity),
38+
converter.toDurationString(user?.workspaceTimeoutSettings?.inactivity),
3939
);
4040
const [timeoutUpdating, setTimeoutUpdating] = useState(false);
4141
const [creationError, setCreationError] = useState<Error>();
@@ -186,7 +186,9 @@ export default function Preferences() {
186186
loading={timeoutUpdating}
187187
disabled={
188188
workspaceTimeout ===
189-
converter.fromDuration(user?.workspaceTimeoutSettings?.inactivity) ?? ""
189+
converter.toDurationString(
190+
user?.workspaceTimeoutSettings?.inactivity,
191+
) ?? ""
190192
}
191193
>
192194
Save

components/public-api/typescript-common/src/public-api-converter.ts

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1066,8 +1066,8 @@ export class PublicAPIConverter {
10661066
* `Duration.nanos` is ignored
10671067
* @returns a string like "1h2m3s", valid time units are `s`, `m`, `h`
10681068
*/
1069-
toDurationString(duration: PartialMessage<Duration>): string {
1070-
const seconds = duration.seconds || 0;
1069+
toDurationString(duration?: PartialMessage<Duration>): string {
1070+
const seconds = duration?.seconds || 0;
10711071
if (seconds === 0) {
10721072
return "0";
10731073
}
@@ -1157,13 +1157,6 @@ export class PublicAPIConverter {
11571157
});
11581158
}
11591159

1160-
fromDuration(d?: Duration) {
1161-
if (!d) {
1162-
return "";
1163-
}
1164-
return String(d.seconds);
1165-
}
1166-
11671160
toTimestamp(from?: string | undefined): Timestamp | undefined {
11681161
return from ? Timestamp.fromDate(new Date(from)) : undefined;
11691162
}

0 commit comments

Comments
 (0)