generateSingleStoreSnapshot() — drizzle-orm Function Reference
Architecture documentation for the generateSingleStoreSnapshot() function in singlestoreSerializer.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 93c32913_b015_e0e1_4247_f842b1e91d5b["generateSingleStoreSnapshot()"] 67437259_0670_dcef_f238_9264f0f16394["singlestoreSerializer.ts"] 93c32913_b015_e0e1_4247_f842b1e91d5b -->|defined in| 67437259_0670_dcef_f238_9264f0f16394 6bbf7ad1_6052_d345_e9c5_7eda2f0abb09["generateSingleStoreDrizzleJson()"] 6bbf7ad1_6052_d345_e9c5_7eda2f0abb09 -->|calls| 93c32913_b015_e0e1_4247_f842b1e91d5b 5de2ec9b_64d7_f004_04c1_e08f9695c862["sqlToStr()"] 93c32913_b015_e0e1_4247_f842b1e91d5b -->|calls| 5de2ec9b_64d7_f004_04c1_e08f9695c862 style 93c32913_b015_e0e1_4247_f842b1e91d5b fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-kit/src/serializer/singlestoreSerializer.ts lines 33–411
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
: (column as any).autoIncrement;
const generated = column.generated;
const columnToSet: Column = {
name: column.name,
type: column.getSQLType(),
primaryKey: false,
// If field is autoincrement it's notNull by default
// notNull: autoIncrement ? true : notNull,
notNull,
autoincrement: autoIncrement,
onUpdate: (column as any).hasOnUpdateNow,
generated: generated
? {
as: is(generated.as, SQL)
? dialect.sqlToQuery(generated.as as SQL).sql
: typeof generated.as === 'function'
? dialect.sqlToQuery(generated.as() as SQL).sql
: (generated.as as any),
type: generated.mode ?? 'stored',
}
: undefined,
};
if (column.primary) {
primaryKeysObject[`${tableName}_${column.name}`] = {
name: `${tableName}_${column.name}`,
columns: [column.name],
};
}
if (column.isUnique) {
const existingUnique = uniqueConstraintObject[column.uniqueName!];
if (typeof existingUnique !== 'undefined') {
console.log(
`\n${
withStyle.errorWarning(`We\'ve found duplicated unique constraint names in ${
chalk.underline.blue(
tableName,
)
} table.
The unique constraint ${
chalk.underline.blue(
column.uniqueName,
)
} on the ${
chalk.underline.blue(
column.name,
)
} column is confilcting with a unique constraint name already defined for ${
chalk.underline.blue(
existingUnique.columns.join(','),
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does generateSingleStoreSnapshot() do?
generateSingleStoreSnapshot() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/serializer/singlestoreSerializer.ts.
Where is generateSingleStoreSnapshot() defined?
generateSingleStoreSnapshot() is defined in drizzle-kit/src/serializer/singlestoreSerializer.ts at line 33.
What does generateSingleStoreSnapshot() call?
generateSingleStoreSnapshot() calls 1 function(s): sqlToStr.
What calls generateSingleStoreSnapshot()?
generateSingleStoreSnapshot() is called by 1 function(s): generateSingleStoreDrizzleJson.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free