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

singlestoreSchema.ts — drizzle-orm Source File

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

File typescript DrizzleKit SnapshotSerializer 3 imports 13 dependents 7 functions

Entity Profile

Dependency Diagram

graph LR
  d63c81a6_6779_4926_bffe_7351e12a4301["singlestoreSchema.ts"]
  8f03c4cf_4fdf_b056_3b24_d493cab0cc81["global.ts"]
  d63c81a6_6779_4926_bffe_7351e12a4301 --> 8f03c4cf_4fdf_b056_3b24_d493cab0cc81
  920ff56d_9b78_d6a4_9c81_c1e6a3d1d992["mapValues"]
  d63c81a6_6779_4926_bffe_7351e12a4301 --> 920ff56d_9b78_d6a4_9c81_c1e6a3d1d992
  9d8cc145_835b_8147_2ea5_b7b5383ae775["zod"]
  d63c81a6_6779_4926_bffe_7351e12a4301 --> 9d8cc145_835b_8147_2ea5_b7b5383ae775
  e668bfef_9125_1ef0_2f94_a0f9605584bd["api.ts"]
  e668bfef_9125_1ef0_2f94_a0f9605584bd --> d63c81a6_6779_4926_bffe_7351e12a4301
  5ace557c_1d0c_8b30_588f_2973fb2830b3["singlestoreIntrospect.ts"]
  5ace557c_1d0c_8b30_588f_2973fb2830b3 --> d63c81a6_6779_4926_bffe_7351e12a4301
  65107a57_7714_63e5_7018_8c2efc0f3b41["singlestorePushUtils.ts"]
  65107a57_7714_63e5_7018_8c2efc0f3b41 --> d63c81a6_6779_4926_bffe_7351e12a4301
  c6b71380_9588_5d06_58bb_e4dc7e505759["introspect-singlestore.ts"]
  c6b71380_9588_5d06_58bb_e4dc7e505759 --> d63c81a6_6779_4926_bffe_7351e12a4301
  6139f734_8ada_c641_9fec_9a55cfdf376f["jsonStatements.ts"]
  6139f734_8ada_c641_9fec_9a55cfdf376f --> d63c81a6_6779_4926_bffe_7351e12a4301
  4078709f_3fc0_5514_7728_8f28a7b0e807["migrationPreparator.ts"]
  4078709f_3fc0_5514_7728_8f28a7b0e807 --> d63c81a6_6779_4926_bffe_7351e12a4301
  5e835bc2_6860_21e3_492c_babcc3e93529["schemaValidator.ts"]
  5e835bc2_6860_21e3_492c_babcc3e93529 --> d63c81a6_6779_4926_bffe_7351e12a4301
  c3eb904f_5390_9c0d_4b12_54d182c5f8c9["index.ts"]
  c3eb904f_5390_9c0d_4b12_54d182c5f8c9 --> d63c81a6_6779_4926_bffe_7351e12a4301
  67437259_0670_dcef_f238_9264f0f16394["singlestoreSerializer.ts"]
  67437259_0670_dcef_f238_9264f0f16394 --> d63c81a6_6779_4926_bffe_7351e12a4301
  582ba146_631b_7794_80a3_5b8044ba7cde["snapshotsDiffer.ts"]
  582ba146_631b_7794_80a3_5b8044ba7cde --> d63c81a6_6779_4926_bffe_7351e12a4301
  fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"]
  fe4174c7_3b9c_5b26_98a0_b2395ca21939 --> d63c81a6_6779_4926_bffe_7351e12a4301
  style d63c81a6_6779_4926_bffe_7351e12a4301 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { any, boolean, enum as enumType, literal, object, record, string, TypeOf, union } from 'zod';
import { mapValues, originUUID, snapshotVersion } from '../global';

// ------- V3 --------
const index = object({
	name: string(),
	columns: string().array(),
	isUnique: boolean(),
	using: enumType(['btree', 'hash']).optional(),
	algorithm: enumType(['default', 'inplace', 'copy']).optional(),
	lock: enumType(['default', 'none', 'shared', 'exclusive']).optional(),
}).strict();

const column = object({
	name: string(),
	type: string(),
	primaryKey: boolean(),
	notNull: boolean(),
	autoincrement: boolean().optional(),
	default: any().optional(),
	onUpdate: any().optional(),
	generated: object({
		type: enumType(['stored', 'virtual']),
		as: string(),
	}).optional(),
}).strict();

const compositePK = object({
	name: string(),
	columns: string().array(),
}).strict();

const uniqueConstraint = object({
	name: string(),
	columns: string().array(),
}).strict();

const table = object({
	name: string(),
	columns: record(string(), column),
	indexes: record(string(), index),
	compositePrimaryKeys: record(string(), compositePK),
	uniqueConstraints: record(string(), uniqueConstraint).default({}),
}).strict();

const viewMeta = object({
	algorithm: enumType(['undefined', 'merge', 'temptable']),
	sqlSecurity: enumType(['definer', 'invoker']),
	withCheckOption: enumType(['local', 'cascaded']).optional(),
}).strict();

/* export const view = object({
	name: string(),
	columns: record(string(), column),
	definition: string().optional(),
	isExisting: boolean(),
}).strict().merge(viewMeta);
type SquasherViewMeta = Omit<TypeOf<typeof viewMeta>, 'definer'>; */

export const kitInternals = object({
// ... (198 more lines)

Domain

Subdomains

Dependencies

Frequently Asked Questions

What does singlestoreSchema.ts do?
singlestoreSchema.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 singlestoreSchema.ts?
singlestoreSchema.ts defines 7 function(s): SingleStoreSquasher.squashIdx, SingleStoreSquasher.squashPK, SingleStoreSquasher.squashUnique, SingleStoreSquasher.unsquashIdx, SingleStoreSquasher.unsquashPK, SingleStoreSquasher.unsquashUnique, squashSingleStoreScheme.
What does singlestoreSchema.ts depend on?
singlestoreSchema.ts imports 3 module(s): global.ts, mapValues, zod.
What files import singlestoreSchema.ts?
singlestoreSchema.ts is imported by 13 file(s): api.ts, index.ts, introspect-singlestore.ts, jsonStatements.ts, migrationPreparator.ts, schemaValidator.ts, singlestoreIntrospect.ts, singlestorePushUtils.ts, and 5 more.
Where is singlestoreSchema.ts in the architecture?
singlestoreSchema.ts is located at drizzle-kit/src/serializer/singlestoreSchema.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