diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/settings/update-key-remaining.tsx b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/settings/update-key-remaining.tsx index 478497271..d3756e12f 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/settings/update-key-remaining.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/settings/update-key-remaining.tsx @@ -108,7 +108,11 @@ export const UpdateKeyRemaining: React.FC = ({ apiKey }) => { delete values.refill; } // make sure they aren't sent to the server if they are disabled. - if (values.refill?.interval !== "none" && !values.refill?.amount) { + if ( + values.refill?.interval !== undefined && + values.refill?.interval !== "none" && + !values.refill?.amount + ) { form.setError("refill.amount", { type: "manual", message: "Please enter a value if interval is selected", diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/client.tsx b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/client.tsx index 739366779..e4155905f 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/client.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/client.tsx @@ -68,6 +68,14 @@ export const CreateKey = ({ apiId, keyAuthId, defaultBytes, defaultPrefix }: Pro limitEnabled: false, metaEnabled: false, ratelimitEnabled: false, + limit: { + remaining: undefined, + refill: { + interval: "none", + amount: undefined, + refillDay: undefined, + }, + }, }, }); @@ -111,12 +119,11 @@ export const CreateKey = ({ apiId, keyAuthId, defaultBytes, defaultPrefix }: Pro } const refill = values.limit?.refill; if (refill?.interval === "daily") { - refill?.refillDay === undefined; + refill.refillDay = undefined; } if (refill?.interval === "monthly" && !refill.refillDay) { refill.refillDay = 1; } - await key.mutateAsync({ keyAuthId, ...values, @@ -516,10 +523,7 @@ export const CreateKey = ({ apiId, keyAuthId, defaultBytes, defaultPrefix }: Pro render={({ field }) => ( Refill Rate - diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/validation.ts b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/validation.ts index f68e5a613..9c360b196 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/validation.ts +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/new/validation.ts @@ -77,7 +77,7 @@ export const formSchema = z.object({ .int() .min(1) .max(31) - .default(1), + .optional(), }) .optional(), })