nhance_partner/lib/presentation/widgets/custom_dataTable.dart
2025-09-01 11:07:27 +05:30

54 lines
1.5 KiB
Dart

import 'package:flutter/material.dart';
// import 'package:google_fonts/google_fonts.dart';
class CustomPaginatedTable extends StatelessWidget {
final List<DataColumn> columns;
final List<DataRow> rows;
final int currentPage;
final int itemsPerPage;
final bool isDesktop;
const CustomPaginatedTable({
super.key,
required this.columns,
required this.rows,
required this.currentPage,
required this.itemsPerPage,
this.isDesktop = false,
});
@override
Widget build(BuildContext context) {
return LayoutBuilder(
builder: (context, constraints) {
// double minWidth = isDesktop ? MediaQuery.of(context).size.width : 1300;
double minWidth = isDesktop ? constraints.maxWidth : 1300;
return SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: SingleChildScrollView(
scrollDirection: Axis.vertical,
child: ConstrainedBox(
// width: MediaQuery.of(context).size.width * 0.8,
constraints: BoxConstraints(minWidth: minWidth),
child: DataTable(
dividerThickness: 0.5,
// columnSpacing: isDesktop ? 24.0 : 16.0,
border: TableBorder(
horizontalInside: BorderSide(
width: 0.5,
// color: Colors.grey.shade200,
),
),
columns: columns,
rows: rows,
),
),
),
);
},
);
}
}