mirror of
https://github.com/nocodb/nocodb.git
synced 2026-05-01 03:36:40 +00:00
33 lines
985 B
TypeScript
33 lines
985 B
TypeScript
import BasePage from '../../../Base';
|
|
import { ToolbarPage } from './index';
|
|
|
|
export class ToolbarCalendarViewModePage extends BasePage {
|
|
readonly toolbar: ToolbarPage;
|
|
|
|
constructor(toolbar: ToolbarPage) {
|
|
super(toolbar.rootPage);
|
|
this.toolbar = toolbar;
|
|
}
|
|
get() {
|
|
return this.rootPage.getByTestId('nc-calendar-view-mode');
|
|
}
|
|
|
|
getViewTab({ title }: { title: string }) {
|
|
return this.get().getByTestId(`nc-calendar-view-mode-${title}`);
|
|
}
|
|
|
|
async changeCalendarView({ title }: { title: 'day' | 'week' | 'month' | 'year' }) {
|
|
if (await this.getViewTab({ title }).isVisible()) {
|
|
await this.getViewTab({ title }).click({ force: true });
|
|
} else {
|
|
await this.get().click({ force: true });
|
|
await this.rootPage.waitForTimeout(500);
|
|
|
|
await this.rootPage.locator('.rc-virtual-list-holder-inner > div').locator(`text="${title}"`).click();
|
|
}
|
|
|
|
// Wait for view mode to change
|
|
await this.rootPage.waitForTimeout(1000);
|
|
}
|
|
}
|