Home / File/ introspect-gel.ts — drizzle-orm Source File

introspect-gel.ts — drizzle-orm Source File

Architecture documentation for introspect-gel.ts, a typescript file in the drizzle-orm codebase. 23 imports, 1 dependents.

File typescript DrizzleKit SchemaDiffer 23 imports 1 dependents 20 functions

Entity Profile

Dependency Diagram

graph LR
  ac795a29_c480_454a_c930_ea8898cad46c["introspect-gel.ts"]
  036f4e7e_88ec_1167_0cc5_711786d91440["utils.ts"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 036f4e7e_88ec_1167_0cc5_711786d91440
  9135e6b6_37f7_c980_ee35_90f5531de5a4["common.ts"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 9135e6b6_37f7_c980_ee35_90f5531de5a4
  aa32f2a7_8cd8_4461_8bdc_c44a0b8de20e["Casing"]
  ac795a29_c480_454a_c930_ea8898cad46c --> aa32f2a7_8cd8_4461_8bdc_c44a0b8de20e
  8f03c4cf_4fdf_b056_3b24_d493cab0cc81["global.ts"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 8f03c4cf_4fdf_b056_3b24_d493cab0cc81
  071bfc71_ad06_c0c4_cba2_360298dd4b47["assertUnreachable"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 071bfc71_ad06_c0c4_cba2_360298dd4b47
  964b24c5_3481_bed3_69f7_b6e4cefe58bb["gelSchema.ts"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 964b24c5_3481_bed3_69f7_b6e4cefe58bb
  72061df9_4bde_76b6_3ae5_b1ccadbf0419["CheckConstraint"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 72061df9_4bde_76b6_3ae5_b1ccadbf0419
  7fc27ac1_96be_048c_9025_05c53070aced["Column"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 7fc27ac1_96be_048c_9025_05c53070aced
  7a6eb056_3b22_7beb_0272_0c1bdeda63b4["ForeignKey"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 7a6eb056_3b22_7beb_0272_0c1bdeda63b4
  d48c4c35_40fc_605c_a768_08b6695243b7["GelKitInternals"]
  ac795a29_c480_454a_c930_ea8898cad46c --> d48c4c35_40fc_605c_a768_08b6695243b7
  d8097f04_a188_ed1a_3c1c_3446a8d2c62c["GelSchemaInternal"]
  ac795a29_c480_454a_c930_ea8898cad46c --> d8097f04_a188_ed1a_3c1c_3446a8d2c62c
  d0dbd3a8_d19d_6156_d8da_734852a8d643["Index"]
  ac795a29_c480_454a_c930_ea8898cad46c --> d0dbd3a8_d19d_6156_d8da_734852a8d643
  c52a8ad3_4f43_820a_b07c_1401a25d3051["Policy"]
  ac795a29_c480_454a_c930_ea8898cad46c --> c52a8ad3_4f43_820a_b07c_1401a25d3051
  630d17ed_6627_8d9c_c324_f5e3b5efa086["PrimaryKey"]
  ac795a29_c480_454a_c930_ea8898cad46c --> 630d17ed_6627_8d9c_c324_f5e3b5efa086
  style ac795a29_c480_454a_c930_ea8898cad46c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { getTableName, is } from 'drizzle-orm';
import { AnyGelTable } from 'drizzle-orm/gel-core';
import {
	createTableRelationsHelpers,
	extractTablesRelationalConfig,
	Many,
	One,
	Relation,
	Relations,
} from 'drizzle-orm/relations';
import './@types/utils';
import { toCamelCase } from 'drizzle-orm/casing';
import { Casing } from './cli/validations/common';
import { assertUnreachable } from './global';
import {
	CheckConstraint,
	Column,
	ForeignKey,
	GelKitInternals,
	GelSchemaInternal,
	Index,
	Policy,
	PrimaryKey,
	UniqueConstraint,
} from './serializer/gelSchema';
import { indexName } from './serializer/gelSerializer';
import { unescapeSingleQuotes } from './utils';

const gelImportsList = new Set([
	'gelTable',
	'smallint',
	'integer',
	'bigint',
	'bigintT',
	'boolean',
	'bytes',
	'dateDuration',
	'decimal',
	'doublePrecision',
	'duration',
	'json',
	'localDate',
	'localTime',
	'real',
	'relDuration',
	'text',
	'timestamp',
	'timestamptz',
	'uuid',
	'time',
]);

const mapColumnDefault = (defaultValue: any, isExpression?: boolean) => {
	if (isExpression) {
		return `sql\`${defaultValue}\``;
	}

	return defaultValue;
};

// ... (1032 more lines)

Domain

Subdomains

Frequently Asked Questions

What does introspect-gel.ts do?
introspect-gel.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleKit domain, SchemaDiffer subdomain.
What functions are defined in introspect-gel.ts?
introspect-gel.ts defines 20 function(s): buildArrayDefault, column, createTableChecks, createTableColumns, createTableFKs, createTableIndexes, createTablePKs, createTablePolicies, createTableUniques, dbColumnName, and 10 more.
What does introspect-gel.ts depend on?
introspect-gel.ts imports 23 module(s): Casing, CheckConstraint, Column, ForeignKey, GelKitInternals, GelSchemaInternal, Index, Policy, and 15 more.
What files import introspect-gel.ts?
introspect-gel.ts is imported by 1 file(s): introspect.ts.
Where is introspect-gel.ts in the architecture?
introspect-gel.ts is located at drizzle-kit/src/introspect-gel.ts (domain: DrizzleKit, subdomain: SchemaDiffer, directory: drizzle-kit/src).

Analyze Your Own Codebase

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

Try Supermodel Free