singlestoreSerializer.ts — drizzle-orm Source File
Architecture documentation for singlestoreSerializer.ts, a typescript file in the drizzle-orm codebase. 20 imports, 4 dependents.
Entity Profile
Dependency Diagram
graph LR 67437259_0670_dcef_f238_9264f0f16394["singlestoreSerializer.ts"] 502fb53b_89d2_ec40_3a24_f05850833f68["outputs.ts"] 67437259_0670_dcef_f238_9264f0f16394 --> 502fb53b_89d2_ec40_3a24_f05850833f68 217e2cbd_4fb7_ceab_251c_5733ece08a8f["views.ts"] 67437259_0670_dcef_f238_9264f0f16394 --> 217e2cbd_4fb7_ceab_251c_5733ece08a8f 09093721_c406_7222_9827_ed44d69a25bd["IntrospectStage"] 67437259_0670_dcef_f238_9264f0f16394 --> 09093721_c406_7222_9827_ed44d69a25bd 520362d9_670d_b6d8_02b1_d2de488c5e21["IntrospectStatus"] 67437259_0670_dcef_f238_9264f0f16394 --> 520362d9_670d_b6d8_02b1_d2de488c5e21 5847e5ae_7b4a_4b02_b68f_883ef88b3c1a["utils.ts"] 67437259_0670_dcef_f238_9264f0f16394 --> 5847e5ae_7b4a_4b02_b68f_883ef88b3c1a d63c81a6_6779_4926_bffe_7351e12a4301["singlestoreSchema.ts"] 67437259_0670_dcef_f238_9264f0f16394 --> d63c81a6_6779_4926_bffe_7351e12a4301 8dcd1f45_dc3b_e271_1b2d_5f24f4c459ed["Column"] 67437259_0670_dcef_f238_9264f0f16394 --> 8dcd1f45_dc3b_e271_1b2d_5f24f4c459ed 49edf791_0f28_ef80_4725_d7796492eb0d["Index"] 67437259_0670_dcef_f238_9264f0f16394 --> 49edf791_0f28_ef80_4725_d7796492eb0d ad181f4b_e7ef_8d58_2095_6a0797f72dc0["PrimaryKey"] 67437259_0670_dcef_f238_9264f0f16394 --> ad181f4b_e7ef_8d58_2095_6a0797f72dc0 b97d8549_2730_a97e_b05a_56fc5237b62c["SingleStoreKitInternals"] 67437259_0670_dcef_f238_9264f0f16394 --> b97d8549_2730_a97e_b05a_56fc5237b62c 4544b292_3be6_3d5c_dcf4_cfb560ea3b61["SingleStoreSchemaInternal"] 67437259_0670_dcef_f238_9264f0f16394 --> 4544b292_3be6_3d5c_dcf4_cfb560ea3b61 f59504d4_374d_a22e_2b76_a9d97095693c["Table"] 67437259_0670_dcef_f238_9264f0f16394 --> f59504d4_374d_a22e_2b76_a9d97095693c c7f1917b_fbbd_15cc_a1b4_815edcebaca9["UniqueConstraint"] 67437259_0670_dcef_f238_9264f0f16394 --> c7f1917b_fbbd_15cc_a1b4_815edcebaca9 12d176aa_882f_ddcb_4bc8_df3fbb9542b1["utils.ts"] 67437259_0670_dcef_f238_9264f0f16394 --> 12d176aa_882f_ddcb_4bc8_df3fbb9542b1 style 67437259_0670_dcef_f238_9264f0f16394 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import chalk from 'chalk';
import { is, SQL } from 'drizzle-orm';
import {
AnySingleStoreTable,
getTableConfig,
type PrimaryKey as PrimaryKeyORM,
SingleStoreDialect,
uniqueKeyName,
} from 'drizzle-orm/singlestore-core';
import { RowDataPacket } from 'mysql2/promise';
import { withStyle } from '../cli/validations/outputs';
import { IntrospectStage, IntrospectStatus } from '../cli/views';
import { CasingType } from 'src/cli/validations/common';
import type { DB } from '../utils';
import {
Column,
Index,
PrimaryKey,
SingleStoreKitInternals,
SingleStoreSchemaInternal,
Table,
UniqueConstraint,
} from './singlestoreSchema';
import { sqlToStr } from './utils';
const dialect = new SingleStoreDialect();
export const indexName = (tableName: string, columns: string[]) => {
return `${tableName}_${columns.join('_')}_index`;
};
export const generateSingleStoreSnapshot = (
tables: AnySingleStoreTable[],
/* views: SingleStoreView[], */
casing: CasingType | undefined,
): SingleStoreSchemaInternal => {
const dialect = new SingleStoreDialect({ casing });
const result: Record<string, Table> = {};
/* const resultViews: Record<string, View> = {}; */
const internal: SingleStoreKitInternals = { tables: {}, indexes: {} };
for (const table of tables) {
const {
name: tableName,
columns,
indexes,
schema,
primaryKeys,
uniqueConstraints,
} = getTableConfig(table);
const columnsObject: Record<string, Column> = {};
const indexesObject: Record<string, Index> = {};
const primaryKeysObject: Record<string, PrimaryKey> = {};
const uniqueConstraintObject: Record<string, UniqueConstraint> = {};
columns.forEach((column) => {
const notNull: boolean = column.notNull;
const sqlTypeLowered = column.getSQLType().toLowerCase();
const autoIncrement = typeof (column as any).autoIncrement === 'undefined'
? false
// ... (708 more lines)
Domain
Subdomains
Dependencies
Imported By
Source
Frequently Asked Questions
What does singlestoreSerializer.ts do?
singlestoreSerializer.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 singlestoreSerializer.ts?
singlestoreSerializer.ts defines 4 function(s): clearDefaults, fromDatabase, generateSingleStoreSnapshot, indexName.
What does singlestoreSerializer.ts depend on?
singlestoreSerializer.ts imports 20 module(s): Column, Index, IntrospectStage, IntrospectStatus, PrimaryKey, SingleStoreKitInternals, SingleStoreSchemaInternal, Table, and 12 more.
What files import singlestoreSerializer.ts?
singlestoreSerializer.ts is imported by 4 file(s): api.ts, introspect-singlestore.ts, introspect.ts, singlestoreIntrospect.ts.
Where is singlestoreSerializer.ts in the architecture?
singlestoreSerializer.ts is located at drizzle-kit/src/serializer/singlestoreSerializer.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