kata_cx_ui 1.1.2
kata_cx_ui: ^1.1.2 copied to clipboard
Ready-made Kata CX chat screen for Flutter — transcript, streaming replies, session history and the CSAT survey, in light and dark.
Changelog #
1.1.2 — 2026-09-17 #
- The tenant logo fills its circle again, as the web widget's does. The
header avatar used
BoxFit.contain, which letterboxes the logo inside the 46px circle and leaves the accent tint showing around it, so the chat looked visibly different from the chatwidget preview in the CX Dashboard. The deployed widget setswidth: 100%; height: 100%; object-fit: coveron the same 46px circle, and this now matches. The avatar stays circular either way — the clip belongs to the container, not the image. A square logo renders identically under both fits, which is why this survived review and why no golden caught it:flutter_testserves a transparent placeholder forImage.network, so the avatar never appears in a snapshot at all. A widget test pins the fit instead.
1.1.1 — 2026-09-17 #
- A failure to load the tenant's settings is no longer silent. The screen
falls back to defaults when
/settingsfails, which is the right behaviour — but it swallowed the error with nothing logged, making a real failure indistinguishable from a tenant who has never opened the dashboard. It now says so, throughdebugPrintrather thandart:developer'slog():log()writes to the VM service, which a release build does not run, so the case where this matters most — a release build on a real device — was the one case that stayed quiet. - Requires
kata_cx^1.0.2, which fixes a repeatedKataCx.setupcancelling the settings request this screen issues on mount. The constraint is raised rather than left at ^1.0.0 so a consumer's lockfile cannot resolve to a version with that bug.
1.1.0 — 2026-09-15 #
KataCxChatScreengainsonClose. The close button previously always calledNavigator.maybePop(), which does nothing when the screen is the root of its own engine — exactly the case when a native Android or iOS app embeds it. Hosts now pass a callback that dismisses their own container. Purely additive: omit it and the behaviour is unchanged.- Dropped the
repositorylink. It pointed at a private repository, so on a public package page it was a login wall rather than source.
1.0.1 — 2026-09-14 #
- Document the core library desugaring that Android builds require. No code
change:
flutter_local_notificationshas always needed it, and 1.0.0 simply did not say so, which left a fresh consumer's Android build failing at:app:checkDebugAarMetadatawith an error that names neither this package nor their app. Found by installing the published packages into a stockflutter createapp.
1.0.0 — 2026-09-14 #
KataCxChatScreenandKataCxChat.open: header, transcript, message bubbles with tap-to-reveal timestamps, history dividers, rating rows, the end-of-session notice, suggestion chips, the composer and the CSAT survey.- Built to the Kata CX Phase 1 design system. Full-bleed rather than the Figma's fixed 400×704 frame, and with no launcher button — that is a web-widget concern, not an SDK one.
- Light and dark token sets, following the host's
ThemeMode. Dark mode is new in the Flutter port; neither the web widget nor the Android module has one. - Tenant accent colours are contrast-corrected against the surface they land on, and bubble label colours are computed from the bubble's luminance. The Android module hardcodes white there, which makes a pale tenant accent nearly unreadable.
- The survey is a bottom sheet that rises over a scrim, on every platform, and the transcript scrolls to the foot once it resolves — the same motion a new message gets.
- "Powered by Kata.ai" is shown by default and hidden with
showPoweredBy: false. KataCxLocalNotifier, aflutter_local_notificationsimplementation ofkata_cx's notifier interface.- Golden snapshots of seven states in both themes, under
test/goldens.