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

gelSchema.ts — drizzle-orm Source File

Architecture documentation for gelSchema.ts, a typescript file in the drizzle-orm codebase. 3 imports, 3 dependents.

File typescript DrizzleKit SnapshotSerializer 3 imports 3 dependents 21 functions

Entity Profile

Dependency Diagram

graph LR
  964b24c5_3481_bed3_69f7_b6e4cefe58bb["gelSchema.ts"]
  8f03c4cf_4fdf_b056_3b24_d493cab0cc81["global.ts"]
  964b24c5_3481_bed3_69f7_b6e4cefe58bb --> 8f03c4cf_4fdf_b056_3b24_d493cab0cc81
  920ff56d_9b78_d6a4_9c81_c1e6a3d1d992["mapValues"]
  964b24c5_3481_bed3_69f7_b6e4cefe58bb --> 920ff56d_9b78_d6a4_9c81_c1e6a3d1d992
  9d8cc145_835b_8147_2ea5_b7b5383ae775["zod"]
  964b24c5_3481_bed3_69f7_b6e4cefe58bb --> 9d8cc145_835b_8147_2ea5_b7b5383ae775
  ac795a29_c480_454a_c930_ea8898cad46c["introspect-gel.ts"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 964b24c5_3481_bed3_69f7_b6e4cefe58bb
  33990744_4141_72e3_2ae9_3c695bf71d75["gelSerializer.ts"]
  33990744_4141_72e3_2ae9_3c695bf71d75 --> 964b24c5_3481_bed3_69f7_b6e4cefe58bb
  5847e5ae_7b4a_4b02_b68f_883ef88b3c1a["utils.ts"]
  5847e5ae_7b4a_4b02_b68f_883ef88b3c1a --> 964b24c5_3481_bed3_69f7_b6e4cefe58bb
  style 964b24c5_3481_bed3_69f7_b6e4cefe58bb fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { mapValues, originUUID, snapshotVersion } from '../global';

import { any, array, boolean, enum as enumType, literal, number, object, record, string, TypeOf, union } from 'zod';

const enumSchema = object({
	name: string(),
	schema: string(),
	values: string().array(),
}).strict();

const enumSchemaV1 = object({
	name: string(),
	values: record(string(), string()),
}).strict();

const indexColumn = object({
	expression: string(),
	isExpression: boolean(),
	asc: boolean(),
	nulls: string().optional(),
	opclass: string().optional(),
});

export type IndexColumnType = TypeOf<typeof indexColumn>;

const index = object({
	name: string(),
	columns: indexColumn.array(),
	isUnique: boolean(),
	with: record(string(), any()).optional(),
	method: string().default('btree'),
	where: string().optional(),
	concurrently: boolean().default(false),
}).strict();

const fk = object({
	name: string(),
	tableFrom: string(),
	columnsFrom: string().array(),
	tableTo: string(),
	schemaTo: string().optional(),
	columnsTo: string().array(),
	onUpdate: string().optional(),
	onDelete: string().optional(),
}).strict();

export const sequenceSchema = object({
	name: string(),
	increment: string().optional(),
	minValue: string().optional(),
	maxValue: string().optional(),
	startWith: string().optional(),
	cache: string().optional(),
	cycle: boolean().optional(),
	schema: string(),
}).strict();

export const roleSchema = object({
	name: string(),
	createDb: boolean().optional(),
// ... (574 more lines)

Domain

Subdomains

Dependencies

Frequently Asked Questions

What does gelSchema.ts do?
gelSchema.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 gelSchema.ts?
gelSchema.ts defines 21 function(s): GelSquasher.squashCheck, GelSquasher.squashFK, GelSquasher.squashIdentity, GelSquasher.squashIdx, GelSquasher.squashIdxPush, GelSquasher.squashPK, GelSquasher.squashPolicy, GelSquasher.squashPolicyPush, GelSquasher.squashSequence, GelSquasher.squashUnique, and 11 more.
What does gelSchema.ts depend on?
gelSchema.ts imports 3 module(s): global.ts, mapValues, zod.
What files import gelSchema.ts?
gelSchema.ts is imported by 3 file(s): gelSerializer.ts, introspect-gel.ts, utils.ts.
Where is gelSchema.ts in the architecture?
gelSchema.ts is located at drizzle-kit/src/serializer/gelSchema.ts (domain: DrizzleKit, subdomain: SnapshotSerializer, directory: drizzle-kit/src/serializer).

Analyze Your Own Codebase

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

Try Supermodel Free