[Story-730] Filing Types frontend list + edit drawer

Story 730Epic 683๐ŸŽฏ Multi-Front OperationsFirm Operations15 files ยท +1142/โˆ’26

PR #223 ยท pramaan-io/pramaan-app ยท merged 2026-06-04

How it flows

sequenceDiagram
  autonumber
  participant user as browser (admin or member)
  participant page as catalog page
  participant gateway as server actions + gateway
  participant api as /app/filing-types
  user->>user: browse catalog
  user->>page: navigate route
  page->>page: render via adapter
  page->>gateway: create / update / delete / attach / detach
  gateway->>gateway: admin check + schema validate
  gateway-->>api: request
  api-->>gateway: response
  gateway->>page: normalized payload

What changed, file by file

Server-only gateway validating list, detail, create, update, delete, attach, detach responses against generated schemas; defines the attach request input shape.

New fields: input : FilingTypeAttachRequest

What doesn't happen

admin check is server-side, not just visual
generated schemas reject bad responses
build fails fast if service key is missing
Playwright collected but skipped until auth flag
no new filing-types token literal exceptions
four-four-seven tests, typecheck, lint all clean

Files changed (15)

Fileยฑ
docs/visual-verification/story-730/filing-types-catalog-storybook.png+0
docs/walkthroughs/story-730-walkthrough.html+198
src/app/[locale]/(app)/settings/matter-configuration/filing-types/actions.ts โ˜…+165
src/app/[locale]/(app)/settings/matter-configuration/filing-types/page.tsx+72 โˆ’7
src/components/settings/filing-types/filing-type-applies-to-field.tsx+4 โˆ’1
src/components/settings/filing-types/filing-type-archive-dialog.tsx+5 โˆ’5
src/components/settings/filing-types/filing-type-catalog-row-actions.tsx+3 โˆ’3
src/components/settings/filing-types/filing-type-catalog-sheet.tsx+32 โˆ’4
src/components/settings/filing-types/filing-types-catalog-adapter.ts+42
src/components/settings/filing-types/filing-types-catalog-page.tsx โ˜…+204
src/components/settings/filing-types/filing-types-catalog-types.ts+16 โˆ’6
src/lib/filing-types/gateway.ts โ˜…+155
src/lib/filing-types/types.ts+11
tests/e2e/filing-types.spec.ts+54
tests/unit/filing-types-contract.test.ts+181