mirror of
https://github.com/n8n-io/n8n.git
synced 2024-11-13 16:14:07 -08:00
29 lines
795 B
TypeScript
29 lines
795 B
TypeScript
import flow from 'lodash.flow';
|
|
import sortBy from 'lodash.sortby';
|
|
import uniqBy from 'lodash.uniqby';
|
|
|
|
export type DocumentProperties = {
|
|
customProperty: Array<{ field: string; value: string }>;
|
|
};
|
|
|
|
type DocFields = Array<{ name: string; value: string }>;
|
|
|
|
const ensureName = (docFields: DocFields) => docFields.filter((o) => o.name);
|
|
const sortByName = (docFields: DocFields) => sortBy(docFields, ['name']);
|
|
const uniqueByName = (docFields: DocFields) => uniqBy(docFields, (o) => o.name);
|
|
|
|
export const processNames = flow(ensureName, sortByName, uniqueByName);
|
|
|
|
export const toSQL = (operator: string) => {
|
|
const operators: { [key: string]: string } = {
|
|
is: '=',
|
|
isNot: '!=',
|
|
greater: '>',
|
|
less: '<',
|
|
equalsGreater: '>=',
|
|
equalsLess: '<=',
|
|
};
|
|
|
|
return operators[operator];
|
|
};
|