api.ts — drizzle-orm Source File
Architecture documentation for api.ts, a typescript file in the drizzle-orm codebase. 68 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR e668bfef_9125_1ef0_2f94_a0f9605584bd["api.ts"] b14d3855_8cce_38c9_8952_a9d014c2fb1b["migrate.ts"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> b14d3855_8cce_38c9_8952_a9d014c2fb1b 3b2eccf9_35d1_b2cc_b116_520f2f3c5d92["columnsResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 3b2eccf9_35d1_b2cc_b116_520f2f3c5d92 2cb46387_de58_6ec4_428f_4bb77f77993b["enumsResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 2cb46387_de58_6ec4_428f_4bb77f77993b 0be76621_eac6_138b_22d0_4d7d5741d5d3["indPolicyResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 0be76621_eac6_138b_22d0_4d7d5741d5d3 4390988c_6fdb_5c1f_d5d7_a4d15611a5d1["mySqlViewsResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 4390988c_6fdb_5c1f_d5d7_a4d15611a5d1 e30b893b_f65f_b356_a9de_630281e9c4d9["policyResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> e30b893b_f65f_b356_a9de_630281e9c4d9 5c0a4ada_35a6_8e1f_890c_a7fb92ef6116["roleResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 5c0a4ada_35a6_8e1f_890c_a7fb92ef6116 ea26ea35_7e38_edd5_dcf4_9309d7a255a4["schemasResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> ea26ea35_7e38_edd5_dcf4_9309d7a255a4 265d44ac_bb67_8fcd_3326_e0ebe5ffd4f7["sequencesResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 265d44ac_bb67_8fcd_3326_e0ebe5ffd4f7 1203e9e3_f171_963e_b898_13a3a20875d5["sqliteViewsResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 1203e9e3_f171_963e_b898_13a3a20875d5 2381bda1_f151_c72c_7494_6acc619c954d["tablesResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 2381bda1_f151_c72c_7494_6acc619c954d 651c7e7f_df55_9121_60ef_9cb9381ff4ac["viewsResolver"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 651c7e7f_df55_9121_60ef_9cb9381ff4ac 9b24aa9e_af00_88e2_5a0a_d67a2b0b670c["pgIntrospect.ts"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 9b24aa9e_af00_88e2_5a0a_d67a2b0b670c 6109e4f5_b41c_e1f5_46f4_31f100453ba2["pgPushIntrospect"] e668bfef_9125_1ef0_2f94_a0f9605584bd --> 6109e4f5_b41c_e1f5_46f4_31f100453ba2 style e668bfef_9125_1ef0_2f94_a0f9605584bd fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
/// <reference types="@cloudflare/workers-types" />
import type { PGlite } from '@electric-sql/pglite';
import { randomUUID } from 'crypto';
import { is } from 'drizzle-orm';
import { LibSQLDatabase } from 'drizzle-orm/libsql';
import { AnyMySqlTable, getTableConfig as mysqlTableConfig, MySqlTable } from 'drizzle-orm/mysql-core';
import type { MySql2Database } from 'drizzle-orm/mysql2';
import { AnyPgTable, getTableConfig as pgTableConfig, PgDatabase, PgTable } from 'drizzle-orm/pg-core';
import { Relations } from 'drizzle-orm/relations';
import { SingleStoreDriverDatabase } from 'drizzle-orm/singlestore';
import {
AnySingleStoreTable,
getTableConfig as singlestoreTableConfig,
SingleStoreTable,
} from 'drizzle-orm/singlestore-core';
import { AnySQLiteTable, SQLiteTable } from 'drizzle-orm/sqlite-core';
import {
columnsResolver,
enumsResolver,
indPolicyResolver,
mySqlViewsResolver,
policyResolver,
roleResolver,
schemasResolver,
sequencesResolver,
sqliteViewsResolver,
tablesResolver,
viewsResolver,
} from './cli/commands/migrate';
import { pgPushIntrospect } from './cli/commands/pgIntrospect';
import { pgSuggestions } from './cli/commands/pgPushUtils';
import { updateUpToV6 as upPgV6, updateUpToV7 as upPgV7 } from './cli/commands/pgUp';
import { sqlitePushIntrospect } from './cli/commands/sqliteIntrospect';
import { logSuggestionsAndReturn } from './cli/commands/sqlitePushUtils';
import type { CasingType } from './cli/validations/common';
import type { MysqlCredentials } from './cli/validations/mysql';
import type { PostgresCredentials } from './cli/validations/postgres';
import type { SingleStoreCredentials } from './cli/validations/singlestore';
import type { SqliteCredentials } from './cli/validations/sqlite';
import { getTablesFilterByExtensions } from './extensions/getTablesFilterByExtensions';
import { originUUID } from './global';
import type { Config } from './index';
import { MySqlSchema as MySQLSchemaKit, mysqlSchema, squashMysqlScheme } from './serializer/mysqlSchema';
import { generateMySqlSnapshot } from './serializer/mysqlSerializer';
import { prepareFromExports } from './serializer/pgImports';
import { PgSchema as PgSchemaKit, pgSchema, squashPgScheme } from './serializer/pgSchema';
import { generatePgSnapshot } from './serializer/pgSerializer';
import {
SingleStoreSchema as SingleStoreSchemaKit,
singlestoreSchema,
squashSingleStoreScheme,
} from './serializer/singlestoreSchema';
import { generateSingleStoreSnapshot } from './serializer/singlestoreSerializer';
import { SQLiteSchema as SQLiteSchemaKit, sqliteSchema, squashSqliteScheme } from './serializer/sqliteSchema';
import { generateSqliteSnapshot } from './serializer/sqliteSerializer';
import type { Setup } from './serializer/studio';
import type { DB, SQLiteDB } from './utils';
import { certs } from './utils/certs';
export type DrizzleSnapshotJSON = PgSchemaKit;
export type DrizzleSQLiteSnapshotJSON = SQLiteSchemaKit;
// ... (609 more lines)
Domain
Subdomains
Functions
- generateDrizzleJson()
- generateMigration()
- generateMySQLDrizzleJson()
- generateMySQLMigration()
- generateSQLiteDrizzleJson()
- generateSQLiteMigration()
- generateSingleStoreDrizzleJson()
- generateSingleStoreMigration()
- pushMySQLSchema()
- pushSQLiteSchema()
- pushSchema()
- pushSingleStoreSchema()
- startServerFromSetup()
- startStudioMySQLServer()
- startStudioPostgresServer()
- startStudioSQLiteServer()
- startStudioSingleStoreServer()
- upPgSnapshot()
Types
Dependencies
- MySqlSchema
- PgSchema
- SQLiteSchema
- SingleStoreSchema
- certs
- certs.ts
- columnsResolver
- common.ts
- crypto
- drizzle-orm
- enumsResolver
- generateMySqlSnapshot
- generateSingleStoreSnapshot
- generateSqliteSnapshot
- getTablesFilterByExtensions
- getTablesFilterByExtensions.ts
- global.ts
- indPolicyResolver
- index.ts
- libsql
- logSuggestionsAndReturn
- migrate.ts
- mySqlViewsResolver
- mysql-core
- mysql.ts
- mysql2
- mysqlSchema.ts
- mysqlSerializer.ts
- pg-core
- pgImports.ts
- pgIntrospect.ts
- pgPushIntrospect
- pgPushUtils.ts
- pgSchema.ts
- pgSerializer.ts
- pgSuggestions
- pgUp.ts
- pglite
- policyResolver
- postgres.ts
- prepareFromExports
- relations
- roleResolver
- schemasResolver
- sequencesResolver
- singlestore
- singlestore-core
- singlestore.ts
- singlestoreSchema.ts
- singlestoreSerializer.ts
- sqlite-core
- sqlite.ts
- sqliteIntrospect.ts
- sqlitePushIntrospect
- sqlitePushUtils.ts
- sqliteSchema.ts
- sqliteSerializer.ts
- sqliteViewsResolver
- squashMysqlScheme
- squashPgScheme
- squashSingleStoreScheme
- squashSqliteScheme
- studio.ts
- tablesResolver
- updateUpToV6
- updateUpToV7
- utils.ts
- viewsResolver
Source
Frequently Asked Questions
What does api.ts do?
api.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleKit domain, SnapshotSerializer subdomain.
What functions are defined in api.ts?
api.ts defines 18 function(s): generateDrizzleJson, generateMigration, generateMySQLDrizzleJson, generateMySQLMigration, generateSQLiteDrizzleJson, generateSQLiteMigration, generateSingleStoreDrizzleJson, generateSingleStoreMigration, pushMySQLSchema, pushSQLiteSchema, and 8 more.
What does api.ts depend on?
api.ts imports 68 module(s): MySqlSchema, PgSchema, SQLiteSchema, SingleStoreSchema, certs, certs.ts, columnsResolver, common.ts, and 60 more.
Where is api.ts in the architecture?
api.ts is located at drizzle-kit/src/api.ts (domain: DrizzleKit, subdomain: SnapshotSerializer, directory: drizzle-kit/src).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free