# admin-pages fragment

**ID:** `fvcms.fragment.admin-pages.001`
**Constitutional home:** fvCMS app-pact §7 (content admin is operator-driven, runtime-resident, lives in the editing chrome)
**Tier:** T2 (chrome feature)

## What it is

The **Pages** admin panel. Shows the list of pages declared in `annotation.json` for the current site, lets the operator click one to focus it in the chrome, and provides a "+ New page" button that opens the content admin.

## Public API (per FvW §10)

```js
import { openAdminPages, renderAdminPages } from 'app-fragments/admin-pages/index.js';

// As a docked/floating panel
const panel = openAdminPages();

// Or render the content directly
const content = renderAdminPages();
parent.appendChild(content);
```

## Recipe items (per FvW §11 10-item)

1. **purpose** — list pages, focus one in the chrome, open the content admin
2. **inputs** — `annotation.json` regions (via `window.__fvcmsAnnotation`), `window.PanelManager`
3. **outputs** — a `dock-panel` state, optionally triggers a region focus
4. **state machine** — same as other admin panels (hidden / floating / docked-active / docked-collapsed)
5. **event bus** — emits `region:selected` when an operator clicks a page
6. **dependencies** — `editor-content-admin`, `panel-manager`
7. **constitutional refs** — app-pact §7, FvW §10 (fragment pattern)
8. **tier** — T2
9. **canonical home** — `app-fragments/admin-pages/`
10. **recipe** — this file

## History

- 2026-08-05: shipped v0.1.0 (Phase 6.1, a493 v20+1)
