84 lines
2.1 KiB
Dart
84 lines
2.1 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
|
import 'package:novyronst/common/const/const_string.dart';
|
|
import 'package:novyronst/tools/widgets/novy_com_widget.dart';
|
|
|
|
import '../../../tools/util/app_screen.dart';
|
|
import '../../../tools/widgets/novy_button_bg.dart';
|
|
import '../../widgets/cut_corner_clipper.dart';
|
|
import '../../widgets/ny_tag_widget.dart';
|
|
|
|
class HomeRankWidget extends StatelessWidget {
|
|
|
|
const HomeRankWidget({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return CutCornerClipper(
|
|
width: AppScreen.screenWidth - 32,
|
|
cutCorner: CutCorner.bottomLeft,
|
|
cutSize: 40,
|
|
child: Padding(
|
|
padding: const EdgeInsets.all(8),
|
|
child: Column(
|
|
children: [
|
|
_buildRankList(),
|
|
const SizedBox(height: 5),
|
|
Row(
|
|
children: [
|
|
SizedBox(width: 20.w),
|
|
NovyButtonBg(text: 'Keep Watching', width: 308.w,)
|
|
],
|
|
)
|
|
],
|
|
),
|
|
),
|
|
);
|
|
}
|
|
|
|
Row _buildRankList() {
|
|
return Row(
|
|
children: [
|
|
_firstVideoView(),
|
|
const SizedBox(width: 8),
|
|
_otherVideoView(),
|
|
],
|
|
);
|
|
}
|
|
|
|
Widget _firstVideoView() {
|
|
return Column(
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
children: [
|
|
Container(
|
|
width: 160.w, height: 240.w,
|
|
decoration: BoxDecoration(
|
|
color: Colors.red,
|
|
)
|
|
),
|
|
const SizedBox(height: 10),
|
|
NovyText('Star of the ocean', fontSize: 15,
|
|
color: Colors.black,
|
|
fontFamily: ConstFont.montMedium,
|
|
),
|
|
const SizedBox(height: 5),
|
|
NyTagWidget(text: 'Safiray'),
|
|
const SizedBox(height: 8),
|
|
],
|
|
);
|
|
}
|
|
|
|
Widget _otherVideoView() {
|
|
return Column(
|
|
children: List.generate(3, (index) {
|
|
return Container(
|
|
margin: const EdgeInsets.only(bottom: 8),
|
|
width: 160.w, height: 93.w,
|
|
decoration: BoxDecoration(
|
|
color: Colors.grey,
|
|
)
|
|
);
|
|
})
|
|
);
|
|
}
|
|
} |