Replace prop drilling with React context providers. App.tsx shrinks from 427 lines to ~80 lines of pure layout. Components consume shared state directly via 7 context providers instead of threading 50+ props. Key changes: - 7 context providers wrapping existing hooks (encounter, bestiary, player characters, side panel, theme, bulk import, initiative rolls) - 2 coordinating hooks extracted from App.tsx (useInitiativeRolls, useAutoStatBlock) - All 9 affected components refactored from prop-based to context-based - 6 test files updated to use providers or context mocks - Prop count enforcement script (max 8 per component interface) - Constitution principle II-A added (context-based state flow) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
11 lines
157 B
JSON
11 lines
157 B
JSON
{
|
|
"$schema": "https://unpkg.com/knip@5/schema.json",
|
|
"workspaces": {
|
|
".": {
|
|
"entry": ["scripts/*.mjs"]
|
|
},
|
|
"packages/*": {},
|
|
"apps/web": {}
|
|
}
|
|
}
|