kaafil-react-uikit 0.9.0 → 0.10.0

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.
Files changed (61) hide show
  1. package/CHANGELOG.md +88 -0
  2. package/dist/admin/index.cjs +458 -360
  3. package/dist/admin/index.cjs.map +1 -1
  4. package/dist/admin/index.d.cts +112 -14
  5. package/dist/admin/index.d.ts +112 -14
  6. package/dist/admin/index.js +117 -19
  7. package/dist/admin/index.js.map +1 -1
  8. package/dist/{chunk-TJGE4ZSX.js → chunk-2HGOHUFU.js} +3 -3
  9. package/dist/{chunk-TJGE4ZSX.js.map → chunk-2HGOHUFU.js.map} +1 -1
  10. package/dist/{chunk-FO5VJJUO.cjs → chunk-AJEZMD64.cjs} +12 -12
  11. package/dist/{chunk-FO5VJJUO.cjs.map → chunk-AJEZMD64.cjs.map} +1 -1
  12. package/dist/{chunk-TYBIAPPT.cjs → chunk-APE4R2GB.cjs} +86 -86
  13. package/dist/chunk-APE4R2GB.cjs.map +1 -0
  14. package/dist/{chunk-ELJPQSXY.cjs → chunk-BKDKXM3L.cjs} +11 -11
  15. package/dist/{chunk-ELJPQSXY.cjs.map → chunk-BKDKXM3L.cjs.map} +1 -1
  16. package/dist/{chunk-2WPNGUX5.cjs → chunk-E6SI2S3L.cjs} +17 -17
  17. package/dist/{chunk-2WPNGUX5.cjs.map → chunk-E6SI2S3L.cjs.map} +1 -1
  18. package/dist/{chunk-GOSSRXBN.js → chunk-IDKRXLMY.js} +3 -3
  19. package/dist/{chunk-GOSSRXBN.js.map → chunk-IDKRXLMY.js.map} +1 -1
  20. package/dist/{chunk-PFTWPEVV.cjs → chunk-LYCN2BOH.cjs} +4 -4
  21. package/dist/{chunk-PFTWPEVV.cjs.map → chunk-LYCN2BOH.cjs.map} +1 -1
  22. package/dist/{chunk-SO4F5LTH.js → chunk-OXCVTVBY.js} +5 -5
  23. package/dist/{chunk-SO4F5LTH.js.map → chunk-OXCVTVBY.js.map} +1 -1
  24. package/dist/{chunk-SMGXVEN3.cjs → chunk-P5HF55MO.cjs} +6 -6
  25. package/dist/chunk-P5HF55MO.cjs.map +1 -0
  26. package/dist/chunk-PHVQIIOI.cjs +12 -0
  27. package/dist/{chunk-PG7HNBTO.cjs.map → chunk-PHVQIIOI.cjs.map} +1 -1
  28. package/dist/{chunk-FSSB6J3X.js → chunk-U2443I5Q.js} +6 -6
  29. package/dist/chunk-U2443I5Q.js.map +1 -0
  30. package/dist/{chunk-6PQWLUBA.js → chunk-UMLJEBQV.js} +5 -5
  31. package/dist/{chunk-6PQWLUBA.js.map → chunk-UMLJEBQV.js.map} +1 -1
  32. package/dist/{chunk-CCK3WPMF.js → chunk-VAUGZOY6.js} +3 -3
  33. package/dist/{chunk-CCK3WPMF.js.map → chunk-VAUGZOY6.js.map} +1 -1
  34. package/dist/{chunk-TESIDLJ6.js → chunk-WMBFBZ7Q.js} +6 -6
  35. package/dist/chunk-WMBFBZ7Q.js.map +1 -0
  36. package/dist/{chunk-IAXVUR7H.cjs → chunk-X5EFVCYF.cjs} +55 -55
  37. package/dist/{chunk-IAXVUR7H.cjs.map → chunk-X5EFVCYF.cjs.map} +1 -1
  38. package/dist/{chunk-YWMDBY43.js → chunk-ZVADVALQ.js} +5 -5
  39. package/dist/{chunk-YWMDBY43.js.map → chunk-ZVADVALQ.js.map} +1 -1
  40. package/dist/core/index.cjs +107 -107
  41. package/dist/core/index.js +10 -10
  42. package/dist/manager/index.cjs +375 -263
  43. package/dist/manager/index.cjs.map +1 -1
  44. package/dist/manager/index.d.cts +136 -17
  45. package/dist/manager/index.d.ts +136 -17
  46. package/dist/manager/index.js +142 -30
  47. package/dist/manager/index.js.map +1 -1
  48. package/dist/offline/index.cjs +12 -1
  49. package/dist/offline/index.cjs.map +1 -1
  50. package/dist/offline/index.d.cts +51 -3
  51. package/dist/offline/index.d.ts +51 -3
  52. package/dist/offline/index.js +12 -1
  53. package/dist/offline/index.js.map +1 -1
  54. package/dist/traveller/index.cjs +35 -35
  55. package/dist/traveller/index.js +5 -5
  56. package/package.json +1 -1
  57. package/dist/chunk-FSSB6J3X.js.map +0 -1
  58. package/dist/chunk-PG7HNBTO.cjs +0 -12
  59. package/dist/chunk-SMGXVEN3.cjs.map +0 -1
  60. package/dist/chunk-TESIDLJ6.js.map +0 -1
  61. package/dist/chunk-TYBIAPPT.cjs.map +0 -1
package/CHANGELOG.md CHANGED
@@ -6,6 +6,94 @@ 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.10.0] — 2026-09-15
10
+
11
+ Both changes came out of integrating a real partner CRM against the live
12
+ engine; both are things a host hit before anybody here did.
13
+
14
+ ### Fixed
15
+
16
+ - **Every directly-exported composite now waits for the session.**
17
+ `SessionShell` renders its children throughout the async open window with
18
+ `SessionContext` populated but no client yet, so any client-backed hook
19
+ called in that window throws:
20
+
21
+ ```
22
+ useKaafilClient() was called outside a <SessionShell>
23
+ ```
24
+
25
+ — which is a misleading message for a timing problem. The shell is right
26
+ there; it has nothing to hand down yet.
27
+
28
+ `KaafilAgencyWorkspace`, `KaafilManagerApp`, `KaafilShareView` and two
29
+ Manager sections already guarded with a two-component split. Thirty-one
30
+ other exports did not, and were safe only because a gated Surface happened
31
+ to sit above them. `TripWorkspace` is the one a host actually mounts
32
+ directly — it is the right component when a CRM wants to keep its own
33
+ navigation — and it threw every time.
34
+
35
+ What made it expensive to diagnose: the child throws, `ErrorShell` catches
36
+ it, the subtree unmounts, and the effect that would have opened the session
37
+ never runs. The network tab shows **no request at all**, which reads like a
38
+ broken credential rather than a race.
39
+
40
+ `TripWorkspace` renders its own skeleton while opening; the rest render
41
+ `null`, matching the five that were already gated.
42
+
43
+ ### Added
44
+
45
+ - **`installKaafilOfflineShell` gained `isHostOwned`**, defaulting to
46
+ same-origin. The handler previously claimed every non-API GET including
47
+ cross-origin ones, so a third-party font or beacon went through a cache
48
+ lookup that could never hit — and, because the first `respondWith` wins, a
49
+ host's own `fetch` listener could never answer for it.
50
+
51
+ - **`installKaafilOfflineShell` gained `runtimeCache`**, default `false`.
52
+ When on, a successful same-origin miss is written to the cache so the next
53
+ offline load can serve it. Only `ok`, `basic` responses are stored: a
54
+ pinned 404 outlives the mistake, and an opaque response cannot be read back
55
+ usefully. Off by default so `cacheName` stays the only revalidation knob.
56
+
57
+ Turn it on when enumerating your build is impractical — content-hashed
58
+ chunks you cannot list at worker-build time being the usual case.
59
+
60
+ ### Changed
61
+
62
+ - **The offline shell's own documentation was wrong in two places**, which is
63
+ worth a changelog line because the fix is what the options above are for.
64
+ It claimed to call `respondWith` "only for requests it actually owns" — it
65
+ declines only non-GET, API and (now) cross-origin. And an inline comment
66
+ said a non-precached request was "left alone for the host's own handlers",
67
+ when it was in fact claimed, proxied, and returned without being cached.
68
+
69
+ The consequence the docs never stated: without `runtimeCache`, `precache`
70
+ is not a warm-up optimisation, it is the entire offline surface.
71
+
72
+ - First tests for `src/offline/serviceWorker.ts`, which had none: eleven
73
+ covering what the handler claims and what a miss does.
74
+
75
+ ## [0.9.0] — 2026-09-14
76
+
77
+ Backfilled — this version shipped without a changelog entry.
78
+
79
+ ### Added
80
+
81
+ - **`kaafil-react-uikit/offline`**, the seventh subpath: `withCachedCredential`,
82
+ `localStorageCredentialStore` and `installKaafilOfflineShell`. The host's half
83
+ of offline — a credential that survives a reload, and a service-worker fetch
84
+ policy — in a module that imports neither React nor the SDK, so it can be
85
+ pulled into a worker bundle.
86
+
87
+ ### Changed
88
+
89
+ - **`KaafilManagerApp`'s `onNavigateModule` is now optional.** The Surface
90
+ satisfies `ManagerNowSection`'s requirement itself; omit it and the
91
+ quick-link chips still work, you lose only the host-side hook.
92
+
93
+ - `ShareLinkDialog` no longer labels a bare token "the new share link", and
94
+ warns in development when `buildShareUrl` is unset — the desk was showing an
95
+ operator a UUID they could not send anyone.
96
+
9
97
  ## [0.8.0] — 2026-09-14
10
98
 
11
99
  ### Added