Skip to content

Commit ea9051c

Browse files
committed
fixup: override workspaceAutostartOptions
also fix toDurationString call
1 parent ab37461 commit ea9051c

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
@@ -1068,8 +1068,8 @@ export class PublicAPIConverter {
10681068
* `Duration.nanos` is ignored
10691069
* @returns a string like "1h2m3s", valid time units are `s`, `m`, `h`
10701070
*/
1071-
toDurationString(duration: PartialMessage<Duration>): string {
1072-
const seconds = duration.seconds || 0;
1071+
toDurationString(duration?: PartialMessage<Duration>): string {
1072+
const seconds = duration?.seconds || 0;
10731073
if (seconds === 0) {
10741074
return "0";
10751075
}
@@ -1168,13 +1168,6 @@ export class PublicAPIConverter {
11681168
});
11691169
}
11701170

1171-
fromDuration(d?: Duration) {
1172-
if (!d) {
1173-
return "";
1174-
}
1175-
return String(d.seconds);
1176-
}
1177-
11781171
toTimestamp(from?: string | undefined): Timestamp | undefined {
11791172
return from ? Timestamp.fromDate(new Date(from)) : undefined;
11801173
}

0 commit comments

Comments
 (0)