@talend/react-faceted-search
Version:
128 lines (127 loc) • 3.46 kB
JavaScript
const operatorNames = {
contains: 'contains',
containsIgnoreCase: 'containsIgnoreCase',
notContains: 'notContains',
notContainsIgnoreCase: 'notContainsIgnoreCase',
equals: 'equals',
notEquals: 'notEquals',
in: 'in',
notIn: 'notIn',
greaterThan: 'greaterThan',
greaterThanOrEquals: 'greaterThanOrEquals',
lessThan: 'lessThan',
lessThanOrEquals: 'lessThanOrEquals',
complies: 'complies',
wordComplies: 'wordComplies'
};
const standardOperators = t => ({
[]: {
label: t('OPERATOR_NOT_EQUALS_LABEL', {
defaultValue: 'Not equal to'
}),
name: 'notEquals',
iconName: 'not-equal'
},
[]: {
label: t('OPERATOR_EQUALS_LABEL', {
defaultValue: 'Equal to'
}),
name: 'equals',
iconName: 'equal'
},
[]: {
label: t('OPERATOR_CONTAINS_LABEL', {
defaultValue: 'Contains'
}),
name: 'contains',
iconName: 'contains'
},
[]: {
label: t('OPERATOR_CONTAINS_LABEL', {
defaultValue: 'Contains'
}),
name: 'containsIgnoreCase',
iconName: 'contains'
},
[]: {
label: t('OPERATOR_NOT_CONTAINS_LABEL', {
defaultValue: 'Not contains'
}),
name: 'notContains',
iconName: 'not-contains'
},
[]: {
label: t('OPERATOR_NOT_CONTAINS_LABEL', {
defaultValue: 'Not contains'
}),
name: 'notContainsIgnoreCase',
iconName: 'not-contains'
},
[]: {
label: t('OPERATOR_IN_LABEL', {
defaultValue: 'In'
}),
name: 'in'
},
[]: {
label: t('OPERATOR_NOT_IN_LABEL', {
defaultValue: 'Not in'
}),
name: 'notIn'
},
[]: {
label: t('OPERATOR_GREATER_THAN_LABEL', {
defaultValue: 'Greater than'
}),
name: 'greaterThan',
iconName: 'greater-than'
},
[]: {
label: t('OPERATOR_GREATER_THAN_OR_EQUAL_LABEL', {
defaultValue: 'Greater than or equal to'
}),
name: 'greaterThanOrEquals',
iconName: 'greater-than-equal'
},
[]: {
label: t('OPERATOR_LESS_THAN_LABEL', {
defaultValue: 'Less than'
}),
name: 'lessThan',
iconName: 'less-than'
},
[]: {
label: t('OPERATOR_LESS_THAN_OR_EQUAL_LABEL', {
defaultValue: 'Less than or equal to'
}),
name: 'lessThanOrEquals',
iconName: 'less-than-equal'
},
[]: {
label: t('OPERATOR_COMPLIES_LABEL', {
defaultValue: 'Matches character based pattern'
}),
name: 'complies',
iconName: 'between'
},
[]: {
label: t('OPERATOR_WORD_COMPLIES_LABEL', {
defaultValue: 'Matches word based pattern'
}),
name: 'wordComplies',
iconName: 'between'
}
});
const createOperatorsDict = (t, operators) => {
if (operators) {
return {
...standardOperators(t),
...operators
};
}
return standardOperators(t);
};
const getOperatorsFromDict = (operatorsDictionary, operatorsKeys) => operatorsKeys.map(operatorKey => operatorsDictionary[operatorKey]).filter(element => element !== undefined);
// eslint-disable-next-line import/prefer-default-export
export { operatorNames, createOperatorsDict, getOperatorsFromDict };
//# sourceMappingURL=operator.dictionary.js.map