const { chromium } = require('playwright');
const BASE = 'http://127.0.0.1:8099';
(async () => {
  const browser = await chromium.launch({ headless: true });
  const page = await (await browser.newContext({ viewport: { width: 1280, height: 900 } })).newPage();
  await page.goto(BASE + '/login', { waitUntil: 'load', timeout: 60000 });
  await page.waitForTimeout(5000);

  // JS 直接触发 placeholder click（绕过 viewport 限制）
  await page.evaluate(() => {
    const el = document.querySelector('flt-semantics-placeholder');
    if (el) el.click();
  });
  await page.waitForTimeout(4000);

  const textbox = await page.locator('[role="textbox"]').count();
  const input = await page.locator('input').count();
  console.log(`JS click 后: role=textbox=${textbox}, input=${input}`);

  const labels = await page.evaluate(() =>
    [...document.querySelectorAll('[role="textbox"],[role="button"]')]
      .map(e => ({ role: e.getAttribute('role'), label: e.getAttribute('aria-label') }))
      .filter(x => x.label && x.label.length < 50).slice(0, 30)
  );
  console.log('labels:', JSON.stringify(labels));
  await browser.close();
})().catch(e => { console.error('失败:', e.message); process.exit(1); });
