mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-11 22:02:16 +00:00
docs(api): keep the labs category status rule in the contract
The description of a labs category lost the status rule and the sentence that a client never rebuilds the category, the order or the status. Both are back as they were, with one line added: a client that shows only the members matching a filter may summarise that subset by the same rule.
This commit is contained in:
1 parent
82ad1e2b45
commit
fbbcaf4417
3 files changed
+12
-11
No files matched your search
@@ -4,10 +4,10 @@
|
||||
* A marker's category is its panel: the serialised `latest.panel`, which is
|
||||
* the biomarker's panel for a linked marker and the row's own for a legacy
|
||||
* unlinked one (the same value the card shows as its chip). The server
|
||||
* resolves the category, its label, its order, and combined counts and status
|
||||
* for the full category once; clients (the web list and the iOS app) render
|
||||
* that as given when unfiltered, while the web list summarizes the visible
|
||||
* subset client-side when filters are active.
|
||||
* resolves the category, its label, its order and a combined status once;
|
||||
* the web list and the iOS app render that as given and never rebuild it.
|
||||
* While a filter hides some members, the web list summarises the matching
|
||||
* ones by the same rule (`priorityReferenceRangeStatus`).
|
||||
*
|
||||
* Resolution, first match wins:
|
||||
* 1. the panel folds to a catalog panel label in any shipped locale
|
||||
|
||||
@@ -149,7 +149,7 @@ export const labOverviewCategoryCounts = z
|
||||
.meta({
|
||||
id: "LabOverviewCategoryCounts",
|
||||
description:
|
||||
"How many members' newest readings are in range, below, above, or unassessed (qualitative, or no range) for the full category without filters.",
|
||||
"How many members' newest readings are in range, below, above, or unassessed (qualitative, or no range).",
|
||||
});
|
||||
|
||||
export const labOverviewCategory = z
|
||||
@@ -163,7 +163,7 @@ export const labOverviewCategory = z
|
||||
.meta({
|
||||
id: "LabOverviewCategory",
|
||||
description:
|
||||
"One category of the labs list, resolved by the server. `key` is opaque: a catalog panel key, `custom:<hash>` for the person's own panel, or `other`; it carries no user text and is stable, so a client may key collapse state on it. `label` is rendered as given (a catalog panel in the caller's locale, the person's own spelling, or the localised \"Other\"). `markerKeys` names the `markers[].key` values in the category. `counts` and `status` describe the full category without filters; a client renders these values directly when unfiltered, and may summarize the visible row subset client-side while filters are active.",
|
||||
"One category of the labs list, resolved by the server. `key` is opaque: a catalog panel key, `custom:<hash>` for the person's own panel, or `other`; it carries no user text and is stable, so a client may key collapse state on it. `label` is rendered as given (a catalog panel in the caller's locale, the person's own spelling, or the localised \"Other\"). `markerKeys` names the `markers[].key` values in the category. `status` combines the members' newest readings: `above` when any is above its range, else `below` when any is below, else `in-range` when any was assessed, else `unknown`. A client renders these values and never rebuilds the category, the order or the status. A client that shows only the members matching a filter may summarise that subset by the same rule; without a filter it shows `counts` and `status` as sent.",
|
||||
});
|
||||
|
||||
export const labOverviewResponse = z
|
||||
|
||||
Reference in new issue
Block a user