Files
directus/api/src/__utils__/items-utils.ts
rijkvanzanten 37658802b7 One more
2023-04-14 17:30:56 -04:00

41 lines
1.0 KiB
TypeScript

// dynamically adds fields to the sql strings as the schema grows
export const sqlFieldFormatter = (schema: Record<string, any>, table: string) => {
const fields = [];
// Exclude alias fields, unable to selected in DB
for (const field of Object.keys(schema['collections'][table].fields)) {
if (schema['collections'][table].fields[field].type !== 'alias') {
fields.push(field);
}
}
let sql = '';
for (const field of fields.slice(0, fields.length - 1)) {
sql += `"${table}"."${field}", `;
}
sql += `"${table}"."${fields[fields.length - 1]}"`;
return sql;
};
export const sqlFieldList = (schema: Record<string, any>, table: string) => {
const fields = [];
// Exclude alias fields, unable to selected in DB
for (const field of Object.keys(schema['collections'][table].fields)) {
if (schema['collections'][table].fields[field].type !== 'alias') {
fields.push(field);
}
}
let sql = '';
for (const field of fields.slice(0, fields.length - 1)) {
sql += `"${field}", `;
}
sql += `"${fields[fields.length - 1]}"`;
return sql;
};