VercelPgPreparedQuery Class — drizzle-orm Architecture
Architecture documentation for the VercelPgPreparedQuery class in session.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD e2c50c8d_fb7d_d417_0322_22c93324dfc6["VercelPgPreparedQuery"] 5332ec54_ebfc_a1f4_a95c_2a39ae467e61["session.ts"] e2c50c8d_fb7d_d417_0322_22c93324dfc6 -->|defined in| 5332ec54_ebfc_a1f4_a95c_2a39ae467e61 fe48f394_88e3_d209_0804_2a2936e7d214["constructor()"] e2c50c8d_fb7d_d417_0322_22c93324dfc6 -->|method| fe48f394_88e3_d209_0804_2a2936e7d214 3a6e8138_0409_5715_8044_528b249e7919["execute()"] e2c50c8d_fb7d_d417_0322_22c93324dfc6 -->|method| 3a6e8138_0409_5715_8044_528b249e7919 c4332c6a_6798_1c78_f44b_45598607739d["all()"] e2c50c8d_fb7d_d417_0322_22c93324dfc6 -->|method| c4332c6a_6798_1c78_f44b_45598607739d 4fc5c84a_2a0f_cf54_eb84_17d93ccfd50f["values()"] e2c50c8d_fb7d_d417_0322_22c93324dfc6 -->|method| 4fc5c84a_2a0f_cf54_eb84_17d93ccfd50f 4dbfcb6c_fc7d_da3d_54d9_54cc0a07dac4["isResponseInArrayMode()"] e2c50c8d_fb7d_d417_0322_22c93324dfc6 -->|method| 4dbfcb6c_fc7d_da3d_54d9_54cc0a07dac4
Relationship Graph
Source Code
drizzle-orm/src/vercel-postgres/session.ts lines 26–181
export class VercelPgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {
static override readonly [entityKind]: string = 'VercelPgPreparedQuery';
private rawQuery: QueryConfig;
private queryConfig: QueryArrayConfig;
constructor(
private client: VercelPgClient,
queryString: string,
private params: unknown[],
private logger: Logger,
cache: Cache,
queryMetadata: {
type: 'select' | 'update' | 'delete' | 'insert';
tables: string[];
} | undefined,
cacheConfig: WithCacheConfig | undefined,
private fields: SelectedFieldsOrdered | undefined,
name: string | undefined,
private _isResponseInArrayMode: boolean,
private customResultMapper?: (rows: unknown[][]) => T['execute'],
) {
super({ sql: queryString, params }, cache, queryMetadata, cacheConfig);
this.rawQuery = {
name,
text: queryString,
types: {
// @ts-ignore
getTypeParser: (typeId, format) => {
if (typeId === types.builtins.TIMESTAMPTZ) {
return (val: any) => val;
}
if (typeId === types.builtins.TIMESTAMP) {
return (val: any) => val;
}
if (typeId === types.builtins.DATE) {
return (val: any) => val;
}
if (typeId === types.builtins.INTERVAL) {
return (val: any) => val;
}
// numeric[]
if (typeId === 1231 as any) {
return (val: any) => val;
}
// timestamp[]
if (typeId === 1115 as any) {
return (val: any) => val;
}
// timestamp with timezone[]
if (typeId === 1185 as any) {
return (val: any) => val;
}
// interval[]
if (typeId === 1187 as any) {
return (val: any) => val;
}
// date[]
if (typeId === 1182 as any) {
return (val: any) => val;
}
// @ts-ignore
return types.getTypeParser(typeId, format);
},
},
};
this.queryConfig = {
name,
text: queryString,
rowMode: 'array',
types: {
// @ts-ignore
getTypeParser: (typeId, format) => {
if (typeId === types.builtins.TIMESTAMPTZ) {
return (val: any) => val;
}
if (typeId === types.builtins.TIMESTAMP) {
return (val: any) => val;
}
if (typeId === types.builtins.DATE) {
return (val: any) => val;
Domain
Defined In
Source
Frequently Asked Questions
What is the VercelPgPreparedQuery class?
VercelPgPreparedQuery is a class in the drizzle-orm codebase, defined in drizzle-orm/src/vercel-postgres/session.ts.
Where is VercelPgPreparedQuery defined?
VercelPgPreparedQuery is defined in drizzle-orm/src/vercel-postgres/session.ts at line 26.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free