construct() — drizzle-orm Function Reference
Architecture documentation for the construct() function in driver.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD db63f71b_7d24_8ddd_e53f_e0073f40480e["construct()"] 84c51149_b6db_0b9a_6291_ce0d0f0b183c["driver.ts"] db63f71b_7d24_8ddd_e53f_e0073f40480e -->|defined in| 84c51149_b6db_0b9a_6291_ce0d0f0b183c 8a735c63_1434_c930_313a_785cb08187d1["drizzle()"] 8a735c63_1434_c930_313a_785cb08187d1 -->|calls| db63f71b_7d24_8ddd_e53f_e0073f40480e f2878e63_cb83_271f_adb8_f50644c5ac45["mock()"] f2878e63_cb83_271f_adb8_f50644c5ac45 -->|calls| db63f71b_7d24_8ddd_e53f_e0073f40480e style db63f71b_7d24_8ddd_e53f_e0073f40480e fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-orm/src/better-sqlite3/driver.ts lines 30–66
function construct<TSchema extends Record<string, unknown> = Record<string, never>>(
client: Database,
config: Omit<DrizzleConfig<TSchema>, 'cache'> = {},
): BetterSQLite3Database<TSchema> & {
$client: Database;
} {
const dialect = new SQLiteSyncDialect({ casing: config.casing });
let logger;
if (config.logger === true) {
logger = new DefaultLogger();
} else if (config.logger !== false) {
logger = config.logger;
}
let schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;
if (config.schema) {
const tablesConfig = extractTablesRelationalConfig(
config.schema,
createTableRelationsHelpers,
);
schema = {
fullSchema: config.schema,
schema: tablesConfig.tables,
tableNamesMap: tablesConfig.tableNamesMap,
};
}
const session = new BetterSQLiteSession(client, dialect, schema, { logger });
const db = new BetterSQLite3Database('sync', dialect, session, schema);
(<any> db).$client = client;
// (<any> db).$cache = config.cache;
// if ((<any> db).$cache) {
// (<any> db).$cache['invalidate'] = config.cache?.onMutate;
// }
return db as any;
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does construct() do?
construct() is a function in the drizzle-orm codebase, defined in drizzle-orm/src/better-sqlite3/driver.ts.
Where is construct() defined?
construct() is defined in drizzle-orm/src/better-sqlite3/driver.ts at line 30.
What calls construct()?
construct() is called by 2 function(s): drizzle, mock.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free