Home / File/ api.ts — drizzle-orm Source File

api.ts — drizzle-orm Source File

Architecture documentation for api.ts, a typescript file in the drizzle-orm codebase. 68 imports, 0 dependents.

File typescript DrizzleKit SnapshotSerializer 68 imports 18 functions

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

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