feat(ext-openapi): pick the page that reads the document
Swagger UI, Redoc or Scalar, each configured with its own options under the names its own documentation gives them, or no page at all. What a UI does not name still passes through, so a bundle's whole option set stays reachable without this extension tracking it. The page is rendered once at boot and the document is encoded once per revision, so a request to any of the three routes hands out bytes rather than building them: the spec used to be serialized again on every single request. /openapi/swagger becomes /openapi/docs, because the path names what is served and not which bundle happens to serve it. That page also named a preset that lives in a bundle it never loaded, and BaseLayout never needed it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
5164f8c41f
commit
439588c19f
@@ -12,7 +12,7 @@ a zero-allocation FSM router, bounded protocol state, and one shared request/res
|
||||
| `flash-extensions/flash-ext-jackson-core` | What every Jackson format shares: the codec, the body handler, the constraints a body is checked against |
|
||||
| `flash-extensions/flash-ext-jackson-json` | JSON bodies and responses |
|
||||
| `flash-extensions/flash-ext-jackson-xml` | XML bodies and responses |
|
||||
| `flash-extensions/flash-ext-openapi` | OpenAPI 3.0 spec + Swagger UI |
|
||||
| `flash-extensions/flash-ext-openapi` | OpenAPI 3.0 spec, read by Swagger UI, Redoc or Scalar |
|
||||
| `flash-extensions/flash-ext-security-core` | Security: authentication chain, annotations, sessions, OpenAPI |
|
||||
| `flash-extensions/flash-ext-security-oidc` | OpenID Connect: bearer tokens, code flow + PKCE |
|
||||
| `flash-extensions/flash-ext-security-apikey` | API keys |
|
||||
|
||||
Reference in New Issue
Block a user