Add PF2e attack effects, ability frequency, and perception details

Show inline on-hit effects on attack lines (e.g., "plus Grab"), frequency
limits on abilities (e.g., "(1/day)"), and perception details text alongside
senses. Strip redundant frequency lines from Foundry descriptions.

Also add resilient PF2e source fetching: batched requests with retry,
graceful handling of ad-blocker-blocked creature files (partial success
with toast warning and re-fetch prompt for missing creatures).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Lukas
2026-04-10 23:37:03 +02:00
parent 1eaeecad32
commit c3707cf0b6
16 changed files with 488 additions and 55 deletions
+8 -2
View File
@@ -22,7 +22,10 @@ interface BulkImportHook {
state: BulkImportState;
startImport: (
baseUrl: string,
fetchAndCacheSource: (sourceCode: string, url: string) => Promise<void>,
fetchAndCacheSource: (
sourceCode: string,
url: string,
) => Promise<{ skippedNames: string[] }>,
isSourceCached: (sourceCode: string) => Promise<boolean>,
refreshCache: () => Promise<void>,
) => void;
@@ -39,7 +42,10 @@ export function useBulkImport(): BulkImportHook {
const startImport = useCallback(
(
baseUrl: string,
fetchAndCacheSource: (sourceCode: string, url: string) => Promise<void>,
fetchAndCacheSource: (
sourceCode: string,
url: string,
) => Promise<{ skippedNames: string[] }>,
isSourceCached: (sourceCode: string) => Promise<boolean>,
refreshCache: () => Promise<void>,
) => {