coerce big int from string to number from sql

This commit is contained in:
Maidul Islam
2024-01-27 12:40:37 +05:30
committed by Akhil Mohan
parent 9a4f294749
commit 13040439c3
5 changed files with 17 additions and 18 deletions
+1 -1
View File
@@ -36,7 +36,7 @@ const getZodPrimitiveType = (type: string) => {
case "integer": case "integer":
return "z.number()"; return "z.number()";
case "bigint": case "bigint":
return "z.number()"; return "z.coerce.number()";
case "text": case "text":
return "z.string()"; return "z.string()";
default: default:
@@ -9,11 +9,10 @@ import { TImmutableDBKeys } from "./models";
export const IdentityAccessTokensSchema = z.object({ export const IdentityAccessTokensSchema = z.object({
id: z.string().uuid(), id: z.string().uuid(),
authType: z.string(), accessTokenTTL: z.coerce.number().default(2592000),
accessTokenTTL: z.number().default(2592000), accessTokenMaxTTL: z.coerce.number().default(2592000),
accessTokenMaxTTL: z.number().default(2592000), accessTokenNumUses: z.coerce.number().default(0),
accessTokenNumUses: z.number().default(0), accessTokenNumUsesLimit: z.coerce.number().default(0),
accessTokenNumUsesLimit: z.number().default(0),
accessTokenLastUsedAt: z.date().nullable().optional(), accessTokenLastUsedAt: z.date().nullable().optional(),
accessTokenLastRenewedAt: z.date().nullable().optional(), accessTokenLastRenewedAt: z.date().nullable().optional(),
isAccessTokenRevoked: z.boolean().default(false), isAccessTokenRevoked: z.boolean().default(false),
@@ -13,17 +13,15 @@ export const IdentityUaClientSecretsSchema = z.object({
clientSecretPrefix: z.string(), clientSecretPrefix: z.string(),
clientSecretHash: z.string(), clientSecretHash: z.string(),
clientSecretLastUsedAt: z.date().nullable().optional(), clientSecretLastUsedAt: z.date().nullable().optional(),
clientSecretNumUses: z.number().default(0), clientSecretNumUses: z.coerce.number().default(0),
clientSecretNumUsesLimit: z.number().default(0), clientSecretNumUsesLimit: z.coerce.number().default(0),
clientSecretTTL: z.number().default(0), clientSecretTTL: z.coerce.number().default(0),
isClientSecretRevoked: z.boolean().default(false), isClientSecretRevoked: z.boolean().default(false),
createdAt: z.date(), createdAt: z.date(),
updatedAt: z.date(), updatedAt: z.date(),
identityUAId: z.string().uuid() identityUAId: z.string().uuid(),
}); });
export type TIdentityUaClientSecrets = z.infer<typeof IdentityUaClientSecretsSchema>; export type TIdentityUaClientSecrets = z.infer<typeof IdentityUaClientSecretsSchema>;
export type TIdentityUaClientSecretsInsert = Omit<TIdentityUaClientSecrets, TImmutableDBKeys>; export type TIdentityUaClientSecretsInsert = Omit<TIdentityUaClientSecrets, TImmutableDBKeys>;
export type TIdentityUaClientSecretsUpdate = Partial< export type TIdentityUaClientSecretsUpdate = Partial<Omit<TIdentityUaClientSecrets, TImmutableDBKeys>>;
Omit<TIdentityUaClientSecrets, TImmutableDBKeys>
>;
@@ -10,9 +10,9 @@ import { TImmutableDBKeys } from "./models";
export const IdentityUniversalAuthsSchema = z.object({ export const IdentityUniversalAuthsSchema = z.object({
id: z.string().uuid(), id: z.string().uuid(),
clientId: z.string(), clientId: z.string(),
accessTokenTTL: z.number().default(7200), accessTokenTTL: z.coerce.number().default(7200),
accessTokenMaxTTL: z.number().default(7200), accessTokenMaxTTL: z.coerce.number().default(7200),
accessTokenNumUsesLimit: z.number().default(0), accessTokenNumUsesLimit: z.coerce.number().default(0),
clientSecretTrustedIps: z.unknown(), clientSecretTrustedIps: z.unknown(),
accessTokenTrustedIps: z.unknown(), accessTokenTrustedIps: z.unknown(),
createdAt: z.date(), createdAt: z.date(),
@@ -31,8 +31,8 @@ export const registerIdentityUaRouter = async (server: FastifyZodProvider) => {
response: { response: {
200: z.object({ 200: z.object({
accessToken: z.string(), accessToken: z.string(),
expiresIn: z.number(), expiresIn: z.coerce.number(),
accessTokenMaxTTL: z.number(), accessTokenMaxTTL: z.coerce.number(),
tokenType: z.literal("Bearer") tokenType: z.literal("Bearer")
}) })
} }
@@ -242,6 +242,8 @@ export const registerIdentityUaRouter = async (server: FastifyZodProvider) => {
} }
}); });
console.log("HELLOoooo====+", typeof(identityUniversalAuth.accessTokenNumUsesLimit), identityUniversalAuth)
return { identityUniversalAuth }; return { identityUniversalAuth };
} }
}); });