Split the person card into overview, clothes, carry and now tabs.

Today's history is a paged HTTP log on the worker, not on the card or in people.json.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-20 04:00:38 +03:00
co-authored by Cursor
parent 69106cb48b
commit 6be4fa75ab
27 changed files with 1551 additions and 109 deletions
+16 -2
View File
@@ -12,6 +12,16 @@ internal enum PersonLookupError
internal sealed record PersonCardResult(PersonCardResponse? Card, PersonLookupError Error);
internal sealed record PersonLogResult(PersonLogResponse? Page, PersonLookupError Error);
internal sealed record PersonLogResponse(
int Total,
int Page,
int PageSize,
IReadOnlyList<PersonLogEntryResponse> Entries);
internal sealed record PersonLogEntryResponse(DateTime Time, string Type, string Label, string? ThingDef);
internal sealed record PeopleListResponse(
int Total,
int Page,
@@ -65,14 +75,18 @@ internal sealed record PersonCardResponse(
IReadOnlyList<WornItemResponse> Worn,
IReadOnlyList<CarriedItemResponse> Carried,
float CarryMass,
float CarryCapacity);
float CarryCapacity,
bool HasLocker,
int HomeCount);
internal sealed record WornItemResponse(
string DefName,
string Label,
string? Color,
string? ColorLabel,
IReadOnlyList<DefLabelResponse> Layers);
IReadOnlyList<DefLabelResponse> Layers,
float Condition,
string? ConditionLabel);
internal sealed record CarriedItemResponse(
string DefName,