Add jsinspect-plus (AST-based structural duplication detector) to pnpm check with threshold 50 / min 3 instances. Fix all findings: - Extract condition icon/color maps to shared condition-styles.ts - Extract useClickOutside hook (5 components) - Extract dispatchAction + resolveAndRename in use-encounter - Extract runEncounterAction in application layer (13 use cases) - Extract findCombatant helper in domain (9 functions) - Extract TraitSection in stat-block (4 trait rendering blocks) - Extract DialogHeader in dialog.tsx (4 dialogs) Net result: -263 lines across 40 files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
41 lines
1.5 KiB
JSON
41 lines
1.5 KiB
JSON
{
|
|
"private": true,
|
|
"packageManager": "pnpm@10.32.1+sha512.a706938f0e89ac1456b6563eab4edf1d1faf3368d1191fc5c59790e96dc918e4456ab2e67d613de1043d2e8c81f87303e6b40d4ffeca9df15ef1ad567348f2be",
|
|
"pnpm": {
|
|
"overrides": {
|
|
"undici": ">=7.24.0",
|
|
"picomatch": ">=4.0.4"
|
|
}
|
|
},
|
|
"devDependencies": {
|
|
"@biomejs/biome": "2.4.8",
|
|
"@vitest/coverage-v8": "^4.1.0",
|
|
"jscpd": "^4.0.8",
|
|
"jsinspect-plus": "^3.1.3",
|
|
"knip": "^5.88.1",
|
|
"lefthook": "^2.1.4",
|
|
"oxlint": "^1.56.0",
|
|
"oxlint-tsgolint": "^0.17.1",
|
|
"typescript": "^5.8.0",
|
|
"vitest": "^4.1.0"
|
|
},
|
|
"scripts": {
|
|
"prepare": "lefthook install",
|
|
"format": "biome format --write .",
|
|
"format:check": "biome format .",
|
|
"lint": "biome lint .",
|
|
"lint:fix": "biome lint --write .",
|
|
"typecheck": "tsc --build",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"knip": "knip",
|
|
"jscpd": "jscpd",
|
|
"jsinspect": "jsinspect -c .jsinspectrc apps/web/src packages/domain/src packages/application/src",
|
|
"oxlint": "oxlint --tsconfig apps/web/tsconfig.json --type-aware",
|
|
"check:ignores": "node scripts/check-lint-ignores.mjs",
|
|
"check:classnames": "node scripts/check-cn-classnames.mjs",
|
|
"check:props": "node scripts/check-component-props.mjs",
|
|
"check": "pnpm audit --audit-level=high && knip && biome check . && oxlint --tsconfig apps/web/tsconfig.json --type-aware && node scripts/check-lint-ignores.mjs && node scripts/check-cn-classnames.mjs && node scripts/check-component-props.mjs && tsc --build && vitest run && jscpd && pnpm jsinspect"
|
|
}
|
|
}
|