import 'dart:convert'; import 'package:apidash/services/services.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import '../services/services.dart'; final dashBotMinimizedProvider = StateProvider((ref) { return true; }); final chatMessagesProvider = StateNotifierProvider>>( (ref) => ChatMessagesNotifier(), ); final dashBotServiceProvider = Provider((ref) { return DashBotService(); }); class ChatMessagesNotifier extends StateNotifier>> { ChatMessagesNotifier() : super([]) { _loadMessages(); } Future _loadMessages() async { final messages = await hiveHandler.getDashbotMessages(); if (messages != null) { state = List>.from(json.decode(messages)); } } Future _saveMessages() async { final messages = json.encode(state); await hiveHandler.saveDashbotMessages(messages); } void addMessage(Map message) { state = [...state, message]; _saveMessages(); } void clearMessages() { state = []; _saveMessages(); } }