Home / Function/ findAlternationsInTable() — drizzle-orm Function Reference

findAlternationsInTable() — drizzle-orm Function Reference

Architecture documentation for the findAlternationsInTable() function in jsonDiffer.js from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  906f6136_df62_f258_6513_16b2c830beec["findAlternationsInTable()"]
  42cd5bcb_caa4_6b61_11ea_da1b767eeadd["jsonDiffer.js"]
  906f6136_df62_f258_6513_16b2c830beec -->|defined in| 42cd5bcb_caa4_6b61_11ea_da1b767eeadd
  533ce4b3_537b_7386_0343_102f1baf9cfb["diffForRenamedTable()"]
  533ce4b3_537b_7386_0343_102f1baf9cfb -->|calls| 906f6136_df62_f258_6513_16b2c830beec
  3b61cdb0_0771_3cda_8dbf_5ecbe8a49a2b["applyJsonDiff()"]
  3b61cdb0_0771_3cda_8dbf_5ecbe8a49a2b -->|calls| 906f6136_df62_f258_6513_16b2c830beec
  8b823a7b_e100_8757_c26e_074b85993748["alternationsInColumn()"]
  906f6136_df62_f258_6513_16b2c830beec -->|calls| 8b823a7b_e100_8757_c26e_074b85993748
  style 906f6136_df62_f258_6513_16b2c830beec fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-kit/src/jsonDiffer.js lines 413–572

const findAlternationsInTable = (table) => {
	// map each table to have altered, deleted or renamed columns

	// in case no columns were altered, but indexes were
	const columns = table.columns ?? {};

	const altered = Object.keys(columns)
		.filter((it) => !(it.includes('__deleted') || it.includes('__added')))
		.map((it) => {
			return { name: it, ...columns[it] };
		});

	const deletedIndexes = Object.fromEntries(
		Object.entries(table.indexes__deleted || {})
			.concat(
				Object.entries(table.indexes || {}).filter((it) => it[0].includes('__deleted')),
			)
			.map((entry) => [entry[0].replace('__deleted', ''), entry[1]]),
	);

	const addedIndexes = Object.fromEntries(
		Object.entries(table.indexes__added || {})
			.concat(
				Object.entries(table.indexes || {}).filter((it) => it[0].includes('__added')),
			)
			.map((entry) => [entry[0].replace('__added', ''), entry[1]]),
	);

	const alteredIndexes = Object.fromEntries(
		Object.entries(table.indexes || {}).filter((it) => {
			return !it[0].endsWith('__deleted') && !it[0].endsWith('__added');
		}),
	);

	const deletedPolicies = Object.fromEntries(
		Object.entries(table.policies__deleted || {})
			.concat(
				Object.entries(table.policies || {}).filter((it) => it[0].includes('__deleted')),
			)
			.map((entry) => [entry[0].replace('__deleted', ''), entry[1]]),
	);

	const addedPolicies = Object.fromEntries(
		Object.entries(table.policies__added || {})
			.concat(
				Object.entries(table.policies || {}).filter((it) => it[0].includes('__added')),
			)
			.map((entry) => [entry[0].replace('__added', ''), entry[1]]),
	);

	const alteredPolicies = Object.fromEntries(
		Object.entries(table.policies || {}).filter((it) => {
			return !it[0].endsWith('__deleted') && !it[0].endsWith('__added');
		}),
	);

	const deletedForeignKeys = Object.fromEntries(
		Object.entries(table.foreignKeys__deleted || {})
			.concat(
				Object.entries(table.foreignKeys || {}).filter((it) => it[0].includes('__deleted')),
			)
			.map((entry) => [entry[0].replace('__deleted', ''), entry[1]]),
	);

	const addedForeignKeys = Object.fromEntries(
		Object.entries(table.foreignKeys__added || {})
			.concat(
				Object.entries(table.foreignKeys || {}).filter((it) => it[0].includes('__added')),
			)
			.map((entry) => [entry[0].replace('__added', ''), entry[1]]),
	);

	const alteredForeignKeys = Object.fromEntries(
		Object.entries(table.foreignKeys || {})
			.filter(
				(it) => !it[0].endsWith('__added') && !it[0].endsWith('__deleted'),
			)
			.map((entry) => [entry[0], entry[1]]),
	);

	const addedCompositePKs = Object.fromEntries(

Domain

Subdomains

Frequently Asked Questions

What does findAlternationsInTable() do?
findAlternationsInTable() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/jsonDiffer.js.
Where is findAlternationsInTable() defined?
findAlternationsInTable() is defined in drizzle-kit/src/jsonDiffer.js at line 413.
What does findAlternationsInTable() call?
findAlternationsInTable() calls 1 function(s): alternationsInColumn.
What calls findAlternationsInTable()?
findAlternationsInTable() is called by 2 function(s): applyJsonDiff, diffForRenamedTable.

Analyze Your Own Codebase

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

Try Supermodel Free