Files
alighasami 3d5eaf9445
Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled
first commit
2026-03-17 16:22:57 +03:30

29 lines
936 B
TypeScript

import type { Locator, Page } from '@playwright/test';
import { BasePage } from './BasePage';
import { ChatHubProviderSettingsModal } from './components/ChatHubProviderSettingsModal';
import { CredentialModal } from './components/CredentialModal';
export class ChatHubSettingsPage extends BasePage {
readonly providerModal = new ChatHubProviderSettingsModal(
this.page.getByTestId('chatProviderSettingsModal-modal'),
);
readonly credentialModal = new CredentialModal(this.page.getByTestId('editCredential-modal'));
constructor(page: Page) {
super(page);
}
getProvidersTable(): Locator {
return this.page.getByTestId('chat-providers-table');
}
getProviderRow(providerName: string): Locator {
return this.getProvidersTable().getByRole('row').filter({ hasText: providerName });
}
getProviderActionToggle(providerName: string): Locator {
return this.getProviderRow(providerName).getByTestId('action-toggle');
}
}