import "package:provider/provider.dart"; import "package:shadcn_flutter/shadcn_flutter.dart"; import "../../../../providers/chat_provider.dart"; import "../../../../utils/path_utils.dart"; import "../../diff_view.dart"; import "tool_bubble_base.dart"; class EditBubble extends StatelessWidget { const EditBubble({ super.key, required this.input, this.result, this.isPendingPermission = false, }); final Map input; final String? result; final bool isPendingPermission; @override Widget build(BuildContext context) { final projectRoot = context.read().workingDirectory; final filePath = input["file_path"] as String? ?? ""; final oldString = input["old_string"] as String? ?? ""; final newString = input["new_string"] as String? ?? ""; return ToolBubbleBase( toolName: "Edit", icon: LucideIcons.filePen, result: result, isPendingPermission: isPendingPermission, detail: shortenPath(filePath, projectRoot), body: DiffView( oldString: oldString, newString: newString, ), ); } }