Home / Class/ One Class — drizzle-orm Architecture

One Class — drizzle-orm Architecture

Architecture documentation for the One class in relations.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  8930e39d_41cd_ddaf_bd38_f1d7428e1a65["One"]
  2f47d090_425d_2e56_2395_4c4d912316f0["relations.ts"]
  8930e39d_41cd_ddaf_bd38_f1d7428e1a65 -->|defined in| 2f47d090_425d_2e56_2395_4c4d912316f0
  21c97d4f_da74_f8de_8056_fe2d59e820fb["constructor()"]
  8930e39d_41cd_ddaf_bd38_f1d7428e1a65 -->|method| 21c97d4f_da74_f8de_8056_fe2d59e820fb
  b120db63_918f_e3c3_8f88_36af2e4aad23["withFieldName()"]
  8930e39d_41cd_ddaf_bd38_f1d7428e1a65 -->|method| b120db63_918f_e3c3_8f88_36af2e4aad23

Relationship Graph

Source Code

drizzle-orm/src/relations.ts lines 65–98

export class One<
	TTableName extends string = string,
	TIsNullable extends boolean = boolean,
> extends Relation<TTableName> {
	static override readonly [entityKind]: string = 'One';

	declare protected $relationBrand: 'One';

	constructor(
		sourceTable: Table,
		referencedTable: AnyTable<{ name: TTableName }>,
		readonly config:
			| RelationConfig<
				TTableName,
				string,
				AnyColumn<{ tableName: TTableName }>[]
			>
			| undefined,
		readonly isNullable: TIsNullable,
	) {
		super(sourceTable, referencedTable, config?.relationName);
	}

	withFieldName(fieldName: string): One<TTableName> {
		const relation = new One(
			this.sourceTable,
			this.referencedTable,
			this.config,
			this.isNullable,
		);
		relation.fieldName = fieldName;
		return relation;
	}
}

Domain

Frequently Asked Questions

What is the One class?
One is a class in the drizzle-orm codebase, defined in drizzle-orm/src/relations.ts.
Where is One defined?
One is defined in drizzle-orm/src/relations.ts at line 65.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free