n8n
Version:
n8n Workflow Automation Tool
21 lines • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.findSchemaConflict = findSchemaConflict;
const data_table_compat_1 = require("./data-table-compat");
const SCHEMA_CONFLICTS = {
'keep-existing': data_table_compat_1.findSchemaIncompatibility,
fail: (packageColumns, targetColumns) => {
const incompatibility = (0, data_table_compat_1.findSchemaIncompatibility)(packageColumns, targetColumns);
const packageColumnNames = new Set(packageColumns.map(({ name }) => name));
const extraColumns = targetColumns
.map(({ name }) => name)
.filter((name) => !packageColumnNames.has(name));
if (extraColumns.length === 0)
return incompatibility;
return { missingColumns: [], typeMismatches: [], ...incompatibility, extraColumns };
},
};
function findSchemaConflict(policy, packageColumns, targetColumns) {
return SCHEMA_CONFLICTS[policy](packageColumns, targetColumns);
}
//# sourceMappingURL=data-table-schema-conflict-policy.js.map