kaafil-react-uikit 0.11.4 → 0.11.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,54 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this package uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
  While on `0.x` a minor bump may carry a breaking change; the entry will say so.
8
8
 
9
+ ## [0.11.6] — 2026-09-18
10
+
11
+ ### Fixed
12
+
13
+ - **The pickup board's counter never caught up with the rows.** Tapping the
14
+ tick patched the traveller's own row instantly and correctly, and the write
15
+ reached the engine correctly — but the stop's `0 / 12 boarded` summary sat
16
+ unchanged until the manager left the stop and came back. `patchManifestTraveller`
17
+ deliberately does not reproduce the stop-level aggregate client-side, and
18
+ this file's own header says that aggregate "is left to a follow-up background
19
+ refetch"; nothing ever fired one. It now refetches on the edge where the
20
+ outbox goes from having work to having none. `handleBoard`'s reasoning for
21
+ NOT refetching on tap is untouched and still right: `mutate()` resolving
22
+ means the write is durably enqueued, not processed, so a refetch fired then
23
+ races the drain and can replace a correct optimistic row with the
24
+ still-`PENDING` truth. The optimistic patch and its rollback-on-failure are
25
+ unchanged — this only adds the reconciliation step after the server has
26
+ caught up.
27
+
28
+ - **The board button was a step larger than its own documentation.**
29
+ `TravellerBoardRow.tsx` described a `--kf-space-9` circular control and the
30
+ CSS built it at `--kf-space-10`, which made the ring read as a large empty
31
+ circle with the tick at under a third of it. Sized down to the documented
32
+ step — still clear of the `--kf-target-min` floor — with the tick grown to
33
+ match.
34
+
35
+ ## [0.11.5] — 2026-09-18
36
+
37
+ ### Fixed
38
+
39
+ - **The trip picker counted a leader's whole history, not their live trips.**
40
+ `KaafilManagerApp` skipped the picker only when `trips.length === 1`, while
41
+ the comment beside it already claimed "2+ live trips". So a leader who had
42
+ run eight departures this year and was standing on their ninth got a list of
43
+ finished trips as the first screen of an offline-first field app, with the
44
+ one that mattered somewhere down it. The rule now counts trips that are
45
+ `IN_PROGRESS`: exactly one live trip opens directly, however much history
46
+ sits behind it. Zero live trips keeps the old behaviour, so a leader whose
47
+ only assignment has not started yet still opens straight into it; two or more
48
+ live trips is a real question and still gets the picker.
49
+
50
+ - **The picker listed trips in the server's order.** A February departure that
51
+ finished could sit above the two a leader is actually running. Rows are now
52
+ ordered by what the reader is looking for — under way, then confirmed, then
53
+ postponed, then completed, then cancelled — and within a status by start
54
+ date. The array is copied before sorting, so `useManagerMe()`'s own `trips[]`
55
+ is not reordered for other consumers.
56
+
9
57
  ## [0.11.4] — 2026-09-15
10
58
 
11
59
  ### Changed