diffPolicies() — drizzle-orm Function Reference
Architecture documentation for the diffPolicies() function in jsonDiffer.js from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 90e1758a_0f7f_54fb_c779_49c80a540b03["diffPolicies()"] 42cd5bcb_caa4_6b61_11ea_da1b767eeadd["jsonDiffer.js"] 90e1758a_0f7f_54fb_c779_49c80a540b03 -->|defined in| 42cd5bcb_caa4_6b61_11ea_da1b767eeadd c7a398db_43c9_7771_09b7_73bc09e703e8["applyPgSnapshotsDiff()"] c7a398db_43c9_7771_09b7_73bc09e703e8 -->|calls| 90e1758a_0f7f_54fb_c779_49c80a540b03 style 90e1758a_0f7f_54fb_c779_49c80a540b03 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-kit/src/jsonDiffer.js lines 165–206
export function diffPolicies(left, right) {
left = JSON.parse(JSON.stringify(left));
right = JSON.parse(JSON.stringify(right));
const result = diff(left, right) ?? {};
const alteredTables = Object.fromEntries(
Object.entries(result)
.filter((it) => {
return !(it[0].includes('__added') || it[0].includes('__deleted'));
})
.map((tableEntry) => {
// const entry = { name: it, ...result[it] }
const deletedPolicies = Object.entries(tableEntry[1].policies ?? {})
.filter((it) => {
return it[0].endsWith('__deleted');
})
.map((it) => {
return it[1];
});
const addedPolicies = Object.entries(tableEntry[1].policies ?? {})
.filter((it) => {
return it[0].endsWith('__added');
})
.map((it) => {
return it[1];
});
tableEntry[1].policies = {
added: addedPolicies,
deleted: deletedPolicies,
};
const table = left[tableEntry[0]];
return [
tableEntry[0],
{ name: table.name, schema: table.schema, ...tableEntry[1] },
];
}),
);
return alteredTables;
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does diffPolicies() do?
diffPolicies() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/jsonDiffer.js.
Where is diffPolicies() defined?
diffPolicies() is defined in drizzle-kit/src/jsonDiffer.js at line 165.
What calls diffPolicies()?
diffPolicies() is called by 1 function(s): applyPgSnapshotsDiff.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free