notes cubit

This commit is contained in:
2026-05-30 18:06:43 +02:00
parent b69308e1ef
commit 44c85766fc
7 changed files with 146 additions and 120 deletions

View File

@@ -3,7 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flux/core/blocs/session/session_cubit.dart';
import 'package:flux/core/utils/debouncer.dart';
import 'package:flux/features/master_data/staff/blocs/staff_cubit.dart';
import 'package:flux/features/notes/blocs/notes_bloc.dart';
import 'package:flux/features/notes/blocs/notes_cubit.dart';
import 'package:flux/features/notes/models/note_model.dart';
class NoteFormScreen extends StatefulWidget {
@@ -20,7 +20,7 @@ class _NoteFormScreenState extends State<NoteFormScreen> {
NoteModel get _note => widget.note;
late TextEditingController _titleController;
late TextEditingController _contentController;
late final NotesBloc _notesBloc;
late final NotesCubit _notesCubit;
late String _selectedColor;
late bool _isPinned;
late bool _isSharedAll;
@@ -43,7 +43,7 @@ class _NoteFormScreenState extends State<NoteFormScreen> {
super.initState();
_titleController = TextEditingController(text: widget.note.title ?? '');
_contentController = TextEditingController(text: widget.note.content ?? '');
_notesBloc = context.read<NotesBloc>();
_notesCubit = context.read<NotesCubit>();
_selectedColor = widget.note.color;
_isPinned = widget.note.isPinned;
_isSharedAll = widget.note.isSharedAll;
@@ -90,7 +90,7 @@ class _NoteFormScreenState extends State<NoteFormScreen> {
);
// Spariamo l'evento al Bloc, che salverà silente sul DB tramite Repository
_notesBloc.add(NoteSavedRequested(updatedNote));
_notesCubit.saveNote(updatedNote);
}
/// Se l'utente esce e la nota è totalmente vuota, la eliminiamo dal DB "al secchio"
@@ -103,12 +103,12 @@ class _NoteFormScreenState extends State<NoteFormScreen> {
// Assumiamo che se non ha scritto testo ed è appena stata creata, sia vuota.
if (titleEmpty && contentEmpty) {
// Notifichiamo anche il Bloc dell'avvenuta cancellazione così pulisce lo stato locale
_notesBloc.add(NoteDeletedRequested(noteId));
_notesCubit.deleteNote(noteId);
}
}
void _deleteNote() {
_notesBloc.add(NoteDeletedRequested(widget.note.id!));
_notesCubit.deleteNote(widget.note.id!);
Navigator.pop(context);
}