Marc-André Bombeck
74e691cecd
feat(timeline): draw person-defined symptoms as value lines
...
A custom symptom could feed pattern discovery and the Coach but could not
be looked at over time. The timeline now offers every symptom the record
has logged, hidden ones included, beside the measurements and lab markers,
and draws a chosen one as a value line.
`values` takes `symptom:<definitionId>`, checked for its shape and capped
like a lab marker; an id the record does not hold draws nothing. A day's
value is its highest intensity on the record's local day; a point is the
mean of the bucket's day values over the days logged, with the number of
those days, and a day without an entry is not a zero. The line sits on a
fixed 0 to 10 scale. Symptoms are read under the illness lane's gate, the
module and sharing domain the symptom routes use. An `all` window reaches
back to a chosen symptom's first entry.
The response carries `symptomSeries` and `availableSymptoms`; the OpenAPI
contract is regenerated. The page words a point's count as days and the
value out of ten. The date-key schema moves to its own module so the
symptom schemas can share it.
2026-11-07 00:38:53 +01:00
..
2026-11-04 23:45:55 +01:00
2026-11-04 23:45:55 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 22:30:50 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 21:35:57 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-21 16:25:25 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 19:28:05 +02:00
2026-10-22 09:09:44 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 03:34:51 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 00:28:38 +02:00
2026-10-25 02:42:09 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 22:30:50 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 19:04:20 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 21:43:55 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-04 23:45:55 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-06 17:53:56 +01:00
2026-11-04 21:24:12 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 09:08:40 +02:00
2026-11-03 20:32:35 +01:00
2026-10-25 07:16:44 +01:00
2026-11-04 00:12:49 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-25 05:46:08 +01:00
2026-10-25 07:16:44 +01:00
2026-10-20 09:08:40 +02:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 05:48:05 +02:00
2026-11-03 20:49:31 +01:00
2026-10-11 13:09:12 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 18:22:36 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-10-25 11:42:37 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-21 19:24:21 +02:00
2026-11-04 22:07:34 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-06 18:03:37 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 07:18:57 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 21:35:57 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 23:31:37 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-02 20:06:15 +01:00
2026-11-03 20:32:35 +01:00
2026-10-24 12:14:33 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 23:24:49 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-16 03:57:46 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-05 14:12:09 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 18:59:07 +02:00
2026-10-21 21:56:16 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 01:19:01 +02:00
2026-11-03 20:32:35 +01:00
2026-11-04 22:02:48 +01:00
2026-11-03 21:35:57 +01:00
2026-10-25 11:18:14 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 22:30:50 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-29 23:13:43 +01:00
2026-10-15 12:23:09 +02:00
2026-10-23 13:30:10 +02:00
2026-11-03 20:32:35 +01:00
2026-10-16 01:34:17 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 21:35:57 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 10:52:54 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 22:30:50 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 13:07:24 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 09:47:20 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:49:31 +01:00
2026-10-25 03:19:54 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 21:35:57 +01:00
2026-10-23 22:41:36 +02:00
2026-11-03 21:35:57 +01:00
2026-10-23 22:41:36 +02:00
2026-11-03 22:13:32 +01:00
2026-10-29 11:00:01 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 23:30:21 +01:00
2026-11-05 10:59:52 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-06 17:49:38 +01:00
2026-11-03 22:30:50 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 05:38:36 +02:00
2026-11-03 20:32:35 +01:00
2026-10-20 03:35:03 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-16 05:48:00 +02:00
2026-11-03 21:33:17 +01:00
2026-11-03 21:35:57 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-04 10:14:10 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 13:01:45 +02:00
2026-11-03 20:32:35 +01:00
2026-10-26 00:47:24 +01:00
2026-10-20 13:01:45 +02:00
2026-10-26 00:05:21 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 21:54:25 +02:00
2026-10-20 13:01:45 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-10-25 08:04:27 +01:00
2026-10-22 07:18:56 +02:00
2026-10-20 12:48:17 +02:00
2026-10-21 21:40:06 +02:00
2026-10-22 05:30:00 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-22 21:23:19 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-10-16 00:22:23 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-25 06:43:51 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 12:57:47 +02:00
2026-10-19 10:53:59 +02:00
2026-10-15 15:10:18 +02:00
2026-10-14 19:08:22 +02:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-10-25 02:14:17 +01:00
2026-10-15 15:12:57 +02:00
2026-10-25 06:27:44 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-15 21:48:57 +02:00
2026-11-03 20:32:35 +01:00
2026-10-23 13:12:23 +02:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 12:57:47 +02:00
2026-11-03 21:35:57 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-25 06:51:51 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 22:30:50 +01:00
2026-10-22 05:38:45 +02:00
2026-10-23 12:36:09 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 22:30:50 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-16 00:25:04 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 21:35:57 +01:00
2026-10-24 12:14:33 +02:00
2026-10-20 09:08:40 +02:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:49:31 +01:00
2026-10-25 17:26:40 +01:00
2026-10-29 21:50:34 +01:00
2026-10-20 16:06:10 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-29 11:05:43 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-26 07:46:50 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 10:56:55 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-06 17:44:38 +01:00
2026-11-06 17:44:38 +01:00
2026-10-22 05:30:00 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-06 18:03:37 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 11:02:10 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-10-24 23:06:00 +02:00
2026-11-03 20:32:35 +01:00
2026-10-23 13:30:10 +02:00
2026-10-15 22:49:00 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-04 21:24:12 +01:00
2026-11-03 20:32:35 +01:00
2026-10-25 00:35:10 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-29 10:58:04 +01:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:49:31 +01:00
2026-11-07 00:38:53 +01:00
2026-11-03 20:32:35 +01:00
2026-10-23 19:27:52 +02:00
2026-11-03 20:49:31 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-04 22:02:48 +01:00
2026-11-03 20:32:35 +01:00
2026-10-16 02:59:47 +02:00
2026-10-21 16:25:26 +02:00
2026-10-14 19:08:22 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-20 09:08:40 +02:00
2026-10-21 12:59:43 +02:00
2026-11-03 20:32:35 +01:00
2026-10-22 05:30:00 +02:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-11-05 16:04:08 +01:00
2026-11-03 20:32:35 +01:00
2026-11-03 20:32:35 +01:00
2026-10-21 20:51:13 +02:00
2026-11-03 20:32:35 +01:00