Add mobile ops surface nav and footer public API links.
Some checks failed
Deploy Explorer Live / deploy (push) Failing after 14s
Validate Explorer / frontend (push) Successful in 1m32s
Validate Explorer / smoke-e2e (push) Failing after 1m52s

Operations pages get collapsible surface navigation on small screens and a shared action-card accordion; the footer surfaces read-only JSON endpoints with e2e coverage.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
defiQUG
2026-05-22 21:39:08 -07:00
parent 847cfeb48b
commit 991d1bb07c
11 changed files with 276 additions and 100 deletions

View File

@@ -37,4 +37,17 @@ test.describe('Explorer sprint smoke', () => {
await expect(page.getByRole('heading', { name: /Bridge & Relay Monitoring/i })).toBeVisible({ timeout: 15000 })
await expect(page.getByText(/CCIP route catalog/i).first()).toBeVisible({ timeout: 15000 })
})
test('operations hub shows surface navigation', async ({ page }) => {
await page.setViewportSize({ width: 1280, height: 720 })
await page.goto(`${EXPLORER_URL}/operations`, { waitUntil: 'domcontentloaded', timeout: 30000 })
await expect(page.getByRole('navigation', { name: /Operations surfaces/i })).toBeVisible({ timeout: 10000 })
await expect(page.getByRole('link', { name: /Bridge/i }).first()).toBeVisible({ timeout: 10000 })
})
test('footer lists public API endpoints', async ({ page }) => {
await page.goto(`${EXPLORER_URL}/`, { waitUntil: 'domcontentloaded', timeout: 20000 })
await expect(page.getByRole('contentinfo').getByText(/Public APIs/i)).toBeVisible({ timeout: 10000 })
await expect(page.getByRole('contentinfo').getByRole('link', { name: /Blockscout stats/i })).toBeVisible({ timeout: 10000 })
})
})