15 Widget
build(BuildContext context) {
16 return BlocConsumer<DocumentCubit, DocumentState>(
17 listener: (context, state) {
23 .
translate(
'Failed to load profile documents'),
27 builder: (context, state) {
28 if (state is DocumentLoadedState) {
29 return state.documents.isEmpty
32 decoration: BoxDecoration(
33 color: Theme.of(context).colorScheme.surface,
34 borderRadius: BorderRadius.circular(10),
37 crossAxisAlignment: CrossAxisAlignment.start,
41 horizontal: 16.sp, vertical: 12.sp),
45 style: Theme.of(context).textTheme.bodySmall,
49 padding: EdgeInsets.symmetric(horizontal: 16.sp),
50 child: GridView.builder(
52 physics: NeverScrollableScrollPhysics(),
54 SliverGridDelegateWithFixedCrossAxisCount(
56 crossAxisSpacing: 12.sp,
57 mainAxisSpacing: 12.sp,
58 childAspectRatio: 2.5,
60 itemCount: state.documents.length,
61 itemBuilder: (BuildContext context,
int index) {
62 return DocumentsButton(
63 document: state.documents[index],
68 SizedBox(height: 20.sp),
72 }
else if (state is LoadingDocumentState) {
74 padding: EdgeInsets.symmetric(vertical: 20.sp),
79 child: CircularProgressIndicator(