import { DatePicker } from "./datePicker"; import { lmt } from '../Helpers/readI18NProp'; import { CommonKeyword } from './commonKeyword'; /** * Calendar works */ export class DateFilter { /** * To select Create Date * ```js * DateFilter.selectCreateDate("01/20/2020") * ``` * @param {string}date * */ static async selectCreateDate(date:string) { await DatePicker.selectDate(`.//label[text()[normalize-space()='${await lmt.getLabel(`Date`)}'] | text()[normalize-space()='${await lmt.getLabel(`Create Date`)}']]/following-sibling::dew-datepicker//input[contains(@class,'date-picker')]`, date); } /** *  To select Date Period * ```js * await DateFilter.selectDatePeriod("01/20/2020","02/20/2020") * ``` * @param {string}fromDate * @param {string}toDate */ static async selectDatePeriod(fromDate:string, toDate:string) { await DatePicker.selectDate(`(.//label[contains(text(),'${await lmt.getLabel(`Date Period`)}')]/following-sibling::dew-datepicker//input[contains(@class,'date-picker')])[1]`, fromDate); await DatePicker.selectDate(`(.//label[contains(text(),'${await lmt.getLabel(`Date Period`)}')]/following-sibling::dew-datepicker//input[contains(@class,'date-picker')])[2]`, toDate); } /** * To select Date Within a range * ```js * await DateFilter.selectDateWithin("Last Week") * ``` * @param {String} option— Date Range to be selected */ static async selectDateWithin(option:string) { await CommonKeyword.click(`.//div[@class='time-range']/button[text()='${option}']`); } } module.exports = new DateFilter(); module.exports.DateFilter = DateFilter; // for inheritance