ManualViewBuilder Class — drizzle-orm Architecture
Architecture documentation for the ManualViewBuilder class in view.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 1bbc9a65_0bdd_5ba3_b99b_f9fcb2f8f5dd["ManualViewBuilder"] 00013fdd_c67a_b05e_780e_20cc1f0af66b["view.ts"] 1bbc9a65_0bdd_5ba3_b99b_f9fcb2f8f5dd -->|defined in| 00013fdd_c67a_b05e_780e_20cc1f0af66b 5b8a161f_f55c_4ac5_34d2_1ffbb5d0d298["constructor()"] 1bbc9a65_0bdd_5ba3_b99b_f9fcb2f8f5dd -->|method| 5b8a161f_f55c_4ac5_34d2_1ffbb5d0d298 02781e8c_cd6d_eedb_b438_d13f99c3ae0a["existing()"] 1bbc9a65_0bdd_5ba3_b99b_f9fcb2f8f5dd -->|method| 02781e8c_cd6d_eedb_b438_d13f99c3ae0a b42eafca_3383_2444_86ea_a5b14f6d7828["as()"] 1bbc9a65_0bdd_5ba3_b99b_f9fcb2f8f5dd -->|method| b42eafca_3383_2444_86ea_a5b14f6d7828
Relationship Graph
Source Code
drizzle-orm/src/singlestore-core/view.ts lines 97–153
export class ManualViewBuilder<
TName extends string = string,
TColumns extends Record<string, SingleStoreColumnBuilderBase> = Record<string, SingleStoreColumnBuilderBase>,
> extends ViewBuilderCore<{ name: TName; columns: TColumns }> {
static override readonly [entityKind]: string = 'SingleStoreManualViewBuilder';
private columns: Record<string, SingleStoreColumn>;
constructor(
name: TName,
columns: TColumns,
schema: string | undefined,
) {
super(name, schema);
this.columns = getTableColumns(singlestoreTable(name, columns)) as BuildColumns<TName, TColumns, 'singlestore'>;
}
existing(): SingleStoreViewWithSelection<TName, true, BuildColumns<TName, TColumns, 'singlestore'>> {
return new Proxy(
new SingleStoreView({
singlestoreConfig: undefined,
config: {
name: this.name,
schema: this.schema,
selectedFields: this.columns,
query: undefined,
},
}),
new SelectionProxyHandler({
alias: this.name,
sqlBehavior: 'error',
sqlAliasedBehavior: 'alias',
replaceOriginalName: true,
}),
) as SingleStoreViewWithSelection<TName, true, BuildColumns<TName, TColumns, 'singlestore'>>;
}
as(query: SQL): SingleStoreViewWithSelection<TName, false, BuildColumns<TName, TColumns, 'singlestore'>> {
return new Proxy(
new SingleStoreView({
singlestoreConfig: this.config,
config: {
name: this.name,
schema: this.schema,
selectedFields: this.columns,
query: query.inlineParams(),
},
}),
new SelectionProxyHandler({
alias: this.name,
sqlBehavior: 'error',
sqlAliasedBehavior: 'alias',
replaceOriginalName: true,
}),
) as SingleStoreViewWithSelection<TName, false, BuildColumns<TName, TColumns, 'singlestore'>>;
}
}
Domain
Defined In
Source
Frequently Asked Questions
What is the ManualViewBuilder class?
ManualViewBuilder is a class in the drizzle-orm codebase, defined in drizzle-orm/src/singlestore-core/view.ts.
Where is ManualViewBuilder defined?
ManualViewBuilder is defined in drizzle-orm/src/singlestore-core/view.ts at line 97.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free