table.ts — drizzle-orm Source File
Architecture documentation for table.ts, a typescript file in the drizzle-orm codebase. 11 imports, 12 dependents.
Entity Profile
Dependency Diagram
graph LR 64ae061d_ed9a_c5f9_235a_3f31995a8d54["table.ts"] 7b4b19ff_e672_3a3d_638b_e876d01d7300["checks.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 7b4b19ff_e672_3a3d_638b_e876d01d7300 0bca2cbd_0e97_da69_ba34_0de360b77802["all.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 0bca2cbd_0e97_da69_ba34_0de360b77802 04a07377_e207_f788_0fe1_3907cb66bb05["getSQLiteColumnBuilders"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 04a07377_e207_f788_0fe1_3907cb66bb05 a4c1e5cb_a206_4786_985b_0e0a35ddd536["common.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> a4c1e5cb_a206_4786_985b_0e0a35ddd536 fab980e5_64f0_d7af_6cbf_9d6014d326a4["foreign-keys.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> fab980e5_64f0_d7af_6cbf_9d6014d326a4 8777ea5d_4a78_587f_df18_57c7aa59b8a6["indexes.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 8777ea5d_4a78_587f_df18_57c7aa59b8a6 a7ff59de_fcfb_68fe_6665_16d01fc2937f["primary-keys.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> a7ff59de_fcfb_68fe_6665_16d01fc2937f 45366305_acee_28e7_392a_dc8de75a63d3["unique-constraint.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 45366305_acee_28e7_392a_dc8de75a63d3 2dc784c6_95e9_4e28_ec81_7caf4acbd426["column-builder.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 2dc784c6_95e9_4e28_ec81_7caf4acbd426 27705a9d_afe9_57dd_8c97_e52d8a67d426["entity.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 27705a9d_afe9_57dd_8c97_e52d8a67d426 1fd6ac27_a0fb_a054_a358_c8766c3fcbd7["table.ts"] 64ae061d_ed9a_c5f9_235a_3f31995a8d54 --> 1fd6ac27_a0fb_a054_a358_c8766c3fcbd7 fd865152_2272_3ed9_2eb9_18c436f3e353["alias.ts"] fd865152_2272_3ed9_2eb9_18c436f3e353 --> 64ae061d_ed9a_c5f9_235a_3f31995a8d54 7b4b19ff_e672_3a3d_638b_e876d01d7300["checks.ts"] 7b4b19ff_e672_3a3d_638b_e876d01d7300 --> 64ae061d_ed9a_c5f9_235a_3f31995a8d54 29728329_4422_ca9a_2652_18e0b18797f4["integer.ts"] 29728329_4422_ca9a_2652_18e0b18797f4 --> 64ae061d_ed9a_c5f9_235a_3f31995a8d54 f265b8e0_8c11_0dc5_3895_a9a09f511b37["real.ts"] f265b8e0_8c11_0dc5_3895_a9a09f511b37 --> 64ae061d_ed9a_c5f9_235a_3f31995a8d54 style 64ae061d_ed9a_c5f9_235a_3f31995a8d54 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';
import { entityKind } from '~/entity.ts';
import { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';
import type { CheckBuilder } from './checks.ts';
import { getSQLiteColumnBuilders, type SQLiteColumnBuilders } from './columns/all.ts';
import type { SQLiteColumn, SQLiteColumnBuilder, SQLiteColumnBuilderBase } from './columns/common.ts';
import type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';
import type { IndexBuilder } from './indexes.ts';
import type { PrimaryKeyBuilder } from './primary-keys.ts';
import type { UniqueConstraintBuilder } from './unique-constraint.ts';
export type SQLiteTableExtraConfigValue =
| IndexBuilder
| CheckBuilder
| ForeignKeyBuilder
| PrimaryKeyBuilder
| UniqueConstraintBuilder;
export type SQLiteTableExtraConfig = Record<
string,
SQLiteTableExtraConfigValue
>;
export type TableConfig = TableConfigBase<SQLiteColumn<any>>;
/** @internal */
export const InlineForeignKeys = Symbol.for('drizzle:SQLiteInlineForeignKeys');
export class SQLiteTable<T extends TableConfig = TableConfig> extends Table<T> {
static override readonly [entityKind]: string = 'SQLiteTable';
/** @internal */
static override readonly Symbol = Object.assign({}, Table.Symbol, {
InlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,
});
/** @internal */
override [Table.Symbol.Columns]!: NonNullable<T['columns']>;
/** @internal */
[InlineForeignKeys]: ForeignKey[] = [];
/** @internal */
override [Table.Symbol.ExtraConfigBuilder]:
| ((self: Record<string, SQLiteColumn>) => SQLiteTableExtraConfig)
| undefined = undefined;
}
export type AnySQLiteTable<TPartial extends Partial<TableConfig> = {}> = SQLiteTable<
UpdateTableConfig<TableConfig, TPartial>
>;
export type SQLiteTableWithColumns<T extends TableConfig> =
& SQLiteTable<T>
& {
[Key in keyof T['columns']]: T['columns'][Key];
};
export interface SQLiteTableFn<TSchema extends string | undefined = undefined> {
<
// ... (168 more lines)
Domain
Subdomains
Classes
Types
Dependencies
- all.ts
- checks.ts
- column-builder.ts
- common.ts
- entity.ts
- foreign-keys.ts
- getSQLiteColumnBuilders
- indexes.ts
- primary-keys.ts
- table.ts
- unique-constraint.ts
Imported By
- drizzle-orm/src/sqlite-core/alias.ts
- drizzle-orm/src/sqlite-core/checks.ts
- drizzle-orm/src/sqlite-core/query-builders/count.ts
- drizzle-orm/src/sqlite-core/foreign-keys.ts
- drizzle-orm/src/sqlite-core/indexes.ts
- drizzle-orm/src/sqlite-core/columns/integer.ts
- drizzle-orm/src/sqlite-core/primary-keys.ts
- drizzle-orm/src/sqlite-core/query-builders/query.ts
- drizzle-orm/src/sqlite-core/columns/real.ts
- drizzle-orm/src/sqlite-core/unique-constraint.ts
- drizzle-orm/src/sqlite-core/utils.ts
- drizzle-orm/src/sqlite-core/view.ts
Source
Frequently Asked Questions
What does table.ts do?
table.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleORM domain, SQLDialects subdomain.
What functions are defined in table.ts?
table.ts defines 3 function(s): sqliteTable, sqliteTableBase, sqliteTableCreator.
What does table.ts depend on?
table.ts imports 11 module(s): all.ts, checks.ts, column-builder.ts, common.ts, entity.ts, foreign-keys.ts, getSQLiteColumnBuilders, indexes.ts, and 3 more.
What files import table.ts?
table.ts is imported by 12 file(s): alias.ts, checks.ts, count.ts, foreign-keys.ts, indexes.ts, integer.ts, primary-keys.ts, query.ts, and 4 more.
Where is table.ts in the architecture?
table.ts is located at drizzle-orm/src/sqlite-core/table.ts (domain: DrizzleORM, subdomain: SQLDialects, directory: drizzle-orm/src/sqlite-core).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free