Skip to content

Commit 0b5b6e6

Browse files
naibanaiba/CloudCode
andcommitted
fix: align frontend permission types with strict oneof=100|200|300 API schema
Generated TypeScript API client infers permission as 100|200|300 union type from the oneof swagger annotation. Updated mutation function signatures and Select component generics to match. Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba>
1 parent 18ff6a8 commit 0b5b6e6

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

web/src/pages/settings/Invitations.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export default function Invitations() {
4141
});
4242

4343
const createMutation = useMutation({
44-
mutationFn: (values: { email: string; permission: number }) =>
44+
mutationFn: (values: { email: string; permission: 100 | 200 | 300 }) =>
4545
api.invitations.invitationsCreate(values),
4646
onSuccess: () => {
4747
queryClient.invalidateQueries({ queryKey: qk });

web/src/pages/vault/VaultSettings.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ export default function VaultSettings() {
251251
});
252252

253253
const inviteMutation = useMutation({
254-
mutationFn: (values: { email: string; permission: number }) =>
254+
mutationFn: (values: { email: string; permission: 100 | 200 | 300 }) =>
255255
api.vaultSettings.settingsUsersCreate(String(vaultId), values),
256256
onSuccess: () => {
257257
message.success(t("invitations.status.pending")); // Or specific success message
@@ -270,7 +270,7 @@ export default function VaultSettings() {
270270
});
271271

272272
const updateUserPermMutation = useMutation({
273-
mutationFn: ({ userId, permission }: { userId: number; permission: number }) =>
273+
mutationFn: ({ userId, permission }: { userId: number; permission: 100 | 200 | 300 }) =>
274274
api.vaultSettings.settingsUsersUpdate(String(vaultId), userId, { permission }),
275275
onSuccess: () => {
276276
message.success(t("common.updated"));
@@ -329,9 +329,9 @@ export default function VaultSettings() {
329329
renderItem={(user: VaultUserResponse) => (
330330
<List.Item
331331
actions={[
332-
<Select
332+
<Select<100 | 200 | 300>
333333
key="perm"
334-
defaultValue={user.permission ?? 300}
334+
defaultValue={(user.permission ?? 300) as 100 | 200 | 300}
335335
style={{ width: 120 }}
336336
onChange={(val) =>
337337
updateUserPermMutation.mutate({ userId: user.id!, permission: val })

0 commit comments

Comments
 (0)