pediatric-ai-scribe-v3/public/e2e-harness.html
Daniel 6f6b6fb4d5 feat(nav): promote Bedside to its own tab; reorganise sidebar sections
Bedside is now a top-level tab instead of a sub-pill inside Calculators —
it's the highest-traffic emergency reference in the app and deserves a
one-click entry. Same DOM structure and JS modules; only the container
moved.

Sidebar reorg:
- Notes: Hospital Course, Chart Review, SOAP Note, Well Visit, Sick Visit
  (Well Visit + Sick Visit relocated from the old "Pediatric" group —
  they're clinical note workflows, not pure reference tools).
- Section rename: "Pediatric" → "Clinical Tools". The section now holds
  Vaccine Schedule, Catch-Up Schedule, Physical Exam Guide, Bedside,
  Calculators, Pagers & Extensions, Learning Hub, Content Manager — mix
  of reference tables + active calculators + utilities, none strictly
  pediatric. "Clinical Tools" reads naturally for the combined set.

Layout changes:
- calculators.html: dropped 480 lines of bedside panel + the Bedside
  nav-pill. The shared age→weight estimator moved with it.
- bedside.html: new component file, contains the full bedside card +
  the age→weight estimator prepended.
- index.html: added bedside-tab section, sidebar restructured.
- e2e-harness.html: renders calculators + bedside side-by-side (not the
  old calc-tab→bedside-pill dance) so the bedside smoke suite still
  works without auth. e2e-bootstrap fetches both with a cache-buster.
- bedside-smoke.spec.js: removed the now-obsolete calc-nav-pill click
  from each test.

Tab persistence is unchanged — ped_last_tab already survives sign-out,
and the lazy-load cache keeps sub-pill state across navigation within a
session. Persistence across browser restart for sub-pills is a separate
follow-up.
2026-04-23 18:58:38 +02:00

29 lines
1.3 KiB
HTML

<!DOCTYPE html>
<!-- E2E test harness — loads the calculators component + JS in isolation
(no auth wall). Playwright points here instead of the full SPA.
All scripts are external because the app's CSP blocks inline scripts. -->
<html lang="en">
<head>
<meta charset="UTF-8">
<title>E2E harness — calculators</title>
<link rel="stylesheet" href="/css/styles.css">
<style>
body { margin: 0; padding: 16px; background: #f9fafb; }
#calculators-tab { max-width: 1100px; margin: 0 auto; }
</style>
</head>
<body>
<section id="calculators-tab" class="tab-content active" data-component="calculators"></section>
<!-- Bedside used to live inside calculators; since the promotion to a top-level
tab, the harness now renders both components side-by-side so the bedside
smoke tests can find #bedside-age without having to click the old
calc-nav-pill (which no longer exists). -->
<section id="bedside-tab" class="tab-content active" data-component="bedside"></section>
<script defer src="/js/calc-math.js"></script>
<script defer src="/js/drugs-loader.js"></script>
<script defer src="/js/calculators.js"></script>
<script type="module" src="/js/bedside/index.js"></script>
<script defer src="/js/e2e-bootstrap.js"></script>
</body>
</html>