@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
28 lines • 3.78 kB
JavaScript
import { Operator } from './operator';
import moment from 'moment';
import { clearTimeInformation } from '../../../utility/clear-time-information';
import { LessThan } from './less-than';
import { Operators } from './operators';
/**
* A strict less than operator for Date fields
*/
export class LessThanDate extends Operator {
lessThan;
constructor(operators) {
super(1);
this.lessThan = operators.getOperator(LessThan);
}
createQuery(elasticKeywords, args) {
this.checkArgumentsCount(args);
const arg = moment(args[0]);
clearTimeInformation(arg);
return this.lessThan.createQuery(elasticKeywords, [arg.valueOf()]);
}
getOperatorNameTemplate() {
return ['search.operator.lessThan', Operator.INPUT_PLACEHOLDER];
}
serialize() {
return Operators.LESS_THAN_DATE;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVzcy10aGFuLWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3NlYXJjaC9tb2RlbHMvb3BlcmF0b3IvbGVzcy10aGFuLWRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNwQyxPQUFPLE1BQWdCLE1BQU0sUUFBUSxDQUFDO0FBR3RDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFDckMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUV0Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxZQUFhLFNBQVEsUUFBZ0I7SUFFcEMsUUFBUSxDQUFXO0lBRTdCLFlBQVksU0FBMEI7UUFDbEMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1QsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBYSxDQUFDO0lBQ2hFLENBQUM7SUFFRCxXQUFXLENBQUMsZUFBOEIsRUFBRSxJQUFtQjtRQUMzRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVCLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsdUJBQXVCO1FBQ25CLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sU0FBUyxDQUFDLGNBQWMsQ0FBQztJQUNwQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09wZXJhdG9yfSBmcm9tICcuL29wZXJhdG9yJztcbmltcG9ydCBtb21lbnQsIHtNb21lbnR9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge09wZXJhdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vb3BlcmF0b3Itc2VydmljZS9vcGVyYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7UXVlcnl9IGZyb20gJy4uL3F1ZXJ5L3F1ZXJ5JztcbmltcG9ydCB7Y2xlYXJUaW1lSW5mb3JtYXRpb259IGZyb20gJy4uLy4uLy4uL3V0aWxpdHkvY2xlYXItdGltZS1pbmZvcm1hdGlvbic7XG5pbXBvcnQge0xlc3NUaGFufSBmcm9tICcuL2xlc3MtdGhhbic7XG5pbXBvcnQge09wZXJhdG9yc30gZnJvbSAnLi9vcGVyYXRvcnMnO1xuXG4vKipcbiAqIEEgc3RyaWN0IGxlc3MgdGhhbiBvcGVyYXRvciBmb3IgRGF0ZSBmaWVsZHNcbiAqL1xuZXhwb3J0IGNsYXNzIExlc3NUaGFuRGF0ZSBleHRlbmRzIE9wZXJhdG9yPE1vbWVudD4ge1xuXG4gICAgcHJvdGVjdGVkIGxlc3NUaGFuOiBMZXNzVGhhbjtcblxuICAgIGNvbnN0cnVjdG9yKG9wZXJhdG9yczogT3BlcmF0b3JTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKDEpO1xuICAgICAgICB0aGlzLmxlc3NUaGFuID0gb3BlcmF0b3JzLmdldE9wZXJhdG9yKExlc3NUaGFuKSBhcyBMZXNzVGhhbjtcbiAgICB9XG5cbiAgICBjcmVhdGVRdWVyeShlbGFzdGljS2V5d29yZHM6IEFycmF5PHN0cmluZz4sIGFyZ3M6IEFycmF5PE1vbWVudD4pOiBRdWVyeSB7XG4gICAgICAgIHRoaXMuY2hlY2tBcmd1bWVudHNDb3VudChhcmdzKTtcbiAgICAgICAgY29uc3QgYXJnID0gbW9tZW50KGFyZ3NbMF0pO1xuICAgICAgICBjbGVhclRpbWVJbmZvcm1hdGlvbihhcmcpO1xuICAgICAgICByZXR1cm4gdGhpcy5sZXNzVGhhbi5jcmVhdGVRdWVyeShlbGFzdGljS2V5d29yZHMsIFthcmcudmFsdWVPZigpXSk7XG4gICAgfVxuXG4gICAgZ2V0T3BlcmF0b3JOYW1lVGVtcGxhdGUoKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiBbJ3NlYXJjaC5vcGVyYXRvci5sZXNzVGhhbicsIE9wZXJhdG9yLklOUFVUX1BMQUNFSE9MREVSXTtcbiAgICB9XG5cbiAgICBzZXJpYWxpemUoKTogT3BlcmF0b3JzIHwgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIE9wZXJhdG9ycy5MRVNTX1RIQU5fREFURTtcbiAgICB9XG59XG4iXX0=