chat_pilot_kit_flutter 1.0.0-beta.12
chat_pilot_kit_flutter: ^1.0.0-beta.12 copied to clipboard
Flutter widgets and Riverpod integration for chat_pilot_kit_dart.
chat_pilot_kit_flutter #
Align with chat_pilot_kit_dart:1.0.0-beta.6.
1.0.0-beta.12 #
Changed #
- Dependency bump:
chat_pilot_kit_dart: ^1.0.0-beta.6(fixes history re-push deduplication — WS messages now correctly merge into existing conversation beans loaded from history)
1.0.0-beta.11 #
Changed #
- Updated
MarkdownNodeViewstyling to match Figma design specifications:- Text color:
#000000(light mode),#FFFFFF(dark mode) - H1: 20px, font-weight: 500, line-height: 30px (1.5)
- H2-H6: 16px, font-weight: 500, line-height: 24px (1.5)
- Paragraph text: 16px, font-weight: 400, line-height: 28px (1.75)
- Strong text: font-weight: 500
- Horizontal rule: color
#E8E9EB, width 1px - Border color:
#EAEEF2 - Code background:
#F7F9FC
- Text color:
1.0.0-beta.10 #
Changed #
- Dependency bump:
chat_pilot_kit_dart: ^1.0.0-beta.5(fixes metadata propagation fromAgentMessageData.nodeDatatoConversationNode.metadata)
1.0.0-beta.9 #
Changed #
StreamingDotswidget — simplified to use static cursor icon (typeCursor.png) instead of custom animated dots, removing animation logic and state management for a more lightweight implementation.
1.0.0-beta.6 #
Fixed #
- Fixed
ChatPilotKitController.queryWithAttachments()to call_agentService.queryWithAttachments()directly instead of delegating through_runQuery(), ensuring AgentService overrides are properly invoked.
1.0.0-beta.5 #
1.0.0-beta.4 #
Added #
StreamingDotswidget — animated bouncing dots indicator for streaming output.- Event listening documentation in README (Dart 3 pattern matching examples, event types table, subscription management).
MarkdownNodeViewnow showsStreamingDotsat the end during streaming.
1.0.0-beta.3 #
Fixed #
- Fixed provider dependency issue: added
dependencies: [chatPilotKitControllerProvider]toconversationsProviderandisQueryingProviderto ensure they properly rebuild when the controller is overridden inChatPilotKitScope.
1.0.0-beta.2 #
Align with the React UI package (@bdky/chat-pilot-kit-react).
Added #
ChatPilotKitTheme+ChatPilotKitThemeScope— semantic design tokens for NodeViews (bubble colors, code colors, border, accent, spacing, radius). Light / dark variants auto-derived from the surroundingThemeData.nodeInteractionProvider/filteredNodeInteractionProvider— RiverpodStreamProviderfor node interaction events (mirrors ReactuseNodeInteraction).sendNodeCommand(controller, nodeId, type, args)helper — send commands to nodes (app → node direction).- Extended
NodeViewPropswithupdateContent,updateMetadata,emitInteractioncallbacks. - All NodeViews now accept slot/builder parameters:
TextNodeView→style,textBuilderMarkdownNodeView→codeBlockBuilder,customBuildersThinkingBlockNodeView→defaultOpen,iconBuilder,labelBuilder,contentBuilderToolCallNodeView→defaultOpen,iconBuilder,badgeBuilder,argsContentBuilder,resultContentBuilder,errorContentBuilderImageNodeView→imageBuilder,captionBuilderFileNodeView→iconBuilder,downloadIconBuilder,onDownload+detectFileType()utility (pdf/excel/zip/markdown/code/other)AudioNodeView→audioPlayerBuilderVideoNodeView→videoPlayerBuilder
- Library now re-exports all
chat_pilot_kit_darttypes for single-import convenience.
Changed #
MarkdownNodeViewmigrated fromflutter_markdowntoflutter_markdown_plus. Adds:- Character-level streaming rendering (mirrors React Streamdown).
- Syntax highlighting via
flutter_highlight(atom-one-dark for dark mode, github for light mode). - Safe parse — auto-closes dangling
```fences during streaming so the markdown parser doesn't error on incomplete code blocks. - GFM tables, blockquotes, inline code, headings, horizontal rules, links — all themed via
ChatPilotKitTheme.
ThinkingBlockNodeViewrewritten offExpansionTile— self-implemented collapse with a 3-dot streaming animation (AnimationController).ToolCallNodeViewrewritten with first-classdefaultOpencontrol and 5 slot builders. Status labels now mirror React (PENDING/RUNNING/COMPLETED/ERROR).ConversationListViewauto-scroll actually triggers now —ref.listen(conversationsProvider, ...)drives_scrollToBottomon every update.- All NodeView colors now come from
ChatPilotKitThemeScope.of(context)instead of hardcoded values, making them theme-responsive. - Migrated deprecated
Color.withOpacitycalls towithValues(alpha: ...).
Dependencies #
- Added:
flutter_markdown_plus ^1.0.0,flutter_highlight ^0.7.0,highlight ^0.7.0,markdown ^7.0.0. - Removed:
flutter_markdown(replaced byflutter_markdown_plus).
Playground (example/) rewrite #
main.dart—MaterialApp+NavigationBarbottom tabs +IndexedStackto preserve tab state. Theme toggle (system/light/dark) lifted to app root.pages/chat_page.dart—ConversationListView+ input bar with send/interrupt button bound toisQueryingProvider.pages/demos_page.dart— 12 demos across Node Behaviors / Target Node / Media Types. Tapping a demo switches back to the Chat tab and triggers the corresponding mock response. Target demos auto-seed the required historical node.pages/settings_page.dart— theme toggle, Export History (to clipboard), Import Sample History, NodeView Gallery entry point, Clear All with confirmation dialog.services/mock_agent_service.dart— mirrors the React playground: 30ms / 3-char streaming, thinking block injection, full behavior / target / media demo coverage.- NodeView Gallery — one-tap showcase that seeds a conversation with every built-in node type.
1.0.0-beta.1 #
- Initial beta release.
- ChatPilotKitScope with InheritedWidget and Riverpod support.
- Riverpod providers for controller, conversations, and query state.
- NodeRenderer with type-based dispatch and custom view builder support.
- ConversationListView with auto-scroll and streaming updates.
- Built-in node views: text, markdown, image, audio, video, file, thinking block, tool call.