|
|
|
// playwright-dev-page.ts
|
|
|
|
import { expect, Locator } from '@playwright/test';
|
|
|
|
import { DashboardPage } from '..';
|
|
|
|
import BasePage from '../../Base';
|
|
|
|
import { ToolbarPage } from '../common/Toolbar';
|
|
|
|
|
|
|
|
export class GalleryPage extends BasePage {
|
|
|
|
readonly dashboard: DashboardPage;
|
|
|
|
readonly toolbar: ToolbarPage;
|
|
|
|
|
|
|
|
constructor(dashboard: DashboardPage) {
|
|
|
|
super(dashboard.rootPage);
|
|
|
|
this.dashboard = dashboard;
|
|
|
|
this.toolbar = new ToolbarPage(this);
|
|
|
|
}
|
|
|
|
|
|
|
|
get() {
|
|
|
|
return this.dashboard.get().locator('[data-pw="nc-gallery-wrapper"]');
|
|
|
|
}
|
|
|
|
|
|
|
|
card(index: number) {
|
|
|
|
return this.get().locator(`.ant-card`).nth(index);
|
|
|
|
}
|
|
|
|
|
|
|
|
async openExpandedRow({ index }: { index: number }) {
|
|
|
|
await this.card(index).click();
|
|
|
|
await (await this.rootPage.locator('.ant-drawer-body').elementHandle())?.waitForElementState('stable');
|
|
|
|
}
|
|
|
|
|
|
|
|
// todo: Wait for render to complete
|
|
|
|
async waitLoading() {
|
|
|
|
await this.rootPage.waitForTimeout(1000);
|
|
|
|
}
|
|
|
|
}
|