@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
28 lines • 3.74 kB
JavaScript
import { Operator } from './operator';
import { Query } from '../query/query';
import { EqualsDate } from './equals-date';
import { Operators } from './operators';
/**
* Inequality operator for Date fields. Will match if the field has a date with different day than the provided date.
*/
export class NotEqualsDate extends Operator {
equals;
constructor(operators) {
super(1);
this.equals = operators.getOperator(EqualsDate);
}
createQuery(elasticKeywords, args) {
const equalsQuery = this.equals.createQuery(elasticKeywords, args);
if (equalsQuery.isEmpty) {
return equalsQuery;
}
return new Query(`(!${equalsQuery.value})`);
}
getOperatorNameTemplate() {
return ['search.operator.notEquals', Operator.INPUT_PLACEHOLDER];
}
serialize() {
return Operators.NOT_EQUALS_DATE;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWVxdWFscy1kYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9zZWFyY2gvbW9kZWxzL29wZXJhdG9yL25vdC1lcXVhbHMtZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBRXBDLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFFdEM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFFBQWdCO0lBRXJDLE1BQU0sQ0FBYTtJQUU3QixZQUFZLFNBQTBCO1FBQ2xDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNULElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQWUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsV0FBVyxDQUFDLGVBQThCLEVBQUUsSUFBbUI7UUFDM0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25FLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRTtZQUNyQixPQUFPLFdBQVcsQ0FBQztTQUN0QjtRQUNELE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsdUJBQXVCO1FBQ25CLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sU0FBUyxDQUFDLGVBQWUsQ0FBQztJQUNyQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09wZXJhdG9yfSBmcm9tICcuL29wZXJhdG9yJztcbmltcG9ydCB7T3BlcmF0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi9vcGVyYXRvci1zZXJ2aWNlL29wZXJhdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHtRdWVyeX0gZnJvbSAnLi4vcXVlcnkvcXVlcnknO1xuaW1wb3J0IHtFcXVhbHNEYXRlfSBmcm9tICcuL2VxdWFscy1kYXRlJztcbmltcG9ydCB7TW9tZW50fSBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtPcGVyYXRvcnN9IGZyb20gJy4vb3BlcmF0b3JzJztcblxuLyoqXG4gKiBJbmVxdWFsaXR5IG9wZXJhdG9yIGZvciBEYXRlIGZpZWxkcy4gV2lsbCBtYXRjaCBpZiB0aGUgZmllbGQgaGFzIGEgZGF0ZSB3aXRoIGRpZmZlcmVudCBkYXkgdGhhbiB0aGUgcHJvdmlkZWQgZGF0ZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE5vdEVxdWFsc0RhdGUgZXh0ZW5kcyBPcGVyYXRvcjxNb21lbnQ+IHtcblxuICAgIHByb3RlY3RlZCBlcXVhbHM6IEVxdWFsc0RhdGU7XG5cbiAgICBjb25zdHJ1Y3RvcihvcGVyYXRvcnM6IE9wZXJhdG9yU2VydmljZSkge1xuICAgICAgICBzdXBlcigxKTtcbiAgICAgICAgdGhpcy5lcXVhbHMgPSBvcGVyYXRvcnMuZ2V0T3BlcmF0b3IoRXF1YWxzRGF0ZSkgYXMgRXF1YWxzRGF0ZTtcbiAgICB9XG5cbiAgICBjcmVhdGVRdWVyeShlbGFzdGljS2V5d29yZHM6IEFycmF5PHN0cmluZz4sIGFyZ3M6IEFycmF5PE1vbWVudD4pOiBRdWVyeSB7XG4gICAgICAgIGNvbnN0IGVxdWFsc1F1ZXJ5ID0gdGhpcy5lcXVhbHMuY3JlYXRlUXVlcnkoZWxhc3RpY0tleXdvcmRzLCBhcmdzKTtcbiAgICAgICAgaWYgKGVxdWFsc1F1ZXJ5LmlzRW1wdHkpIHtcbiAgICAgICAgICAgIHJldHVybiBlcXVhbHNRdWVyeTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3IFF1ZXJ5KGAoISR7ZXF1YWxzUXVlcnkudmFsdWV9KWApO1xuICAgIH1cblxuICAgIGdldE9wZXJhdG9yTmFtZVRlbXBsYXRlKCk6IEFycmF5PHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gWydzZWFyY2gub3BlcmF0b3Iubm90RXF1YWxzJywgT3BlcmF0b3IuSU5QVVRfUExBQ0VIT0xERVJdO1xuICAgIH1cblxuICAgIHNlcmlhbGl6ZSgpOiBPcGVyYXRvcnMgfCBzdHJpbmcge1xuICAgICAgICByZXR1cm4gT3BlcmF0b3JzLk5PVF9FUVVBTFNfREFURTtcbiAgICB9XG59XG4iXX0=