feat : new main page inspection

This commit is contained in:
2025-07-24 16:57:34 +03:30
parent e5142a258c
commit 42727c7eec
30 changed files with 1784 additions and 238 deletions

View File

@@ -147,6 +147,9 @@ class AppColor {
static const Color redDarkActive = Color(0xFF6a2727); // #6a2727 rgb(106, 39, 39)
static const Color redDarker = Color(0xFF521e1e); // #521e1e rgb(82, 30, 30)
static const Color redDarkerText = Color(0xFFD24E4E); // #D34E4E rgba(211, 78, 78, 1)
static const Color redLight2 = Color(0xFFEDDCE0); // #EDDCE0 rgb(237, 220, 224)
static const Color redLightActive2 = Color(0xFFE0BCC5); // #E0BCC5 rgb(224, 188, 197)
//endregion
//region --- Teal Colors ---
@@ -166,6 +169,8 @@ class AppColor {
static const Color bgDark = Color(0xFF979797); // #083940 rgb(8, 57, 64)
static const Color textColor = Color(0xFF5B5B5B); // #083940 rgb(8, 57, 64)
static const Color textColorLight = Color(0xFFB2B2B2);
static const Color iconColor = Color(0xFF444444); // #444444 rgb(68, 68, 68)
static const Color borderColor = Color(0xFFC7CFCD); // #C7CFCD rgb(199, 207, 205)`
//endregion

View File

@@ -37,6 +37,9 @@ class $AssetsIconsGen {
/// File path: assets/icons/add.svg
SvgGenImage get add => const SvgGenImage('assets/icons/add.svg');
/// File path: assets/icons/app_bar_inspection.svg
SvgGenImage get appBarInspection => const SvgGenImage('assets/icons/app_bar_inspection.svg');
/// File path: assets/icons/arrow_left.svg
SvgGenImage get arrowLeft => const SvgGenImage('assets/icons/arrow_left.svg');
@@ -172,12 +175,18 @@ class $AssetsIconsGen {
/// File path: assets/icons/pdf_download.svg
SvgGenImage get pdfDownload => const SvgGenImage('assets/icons/pdf_download.svg');
/// File path: assets/icons/people.svg
SvgGenImage get people => const SvgGenImage('assets/icons/people.svg');
/// File path: assets/icons/picture_frame.svg
SvgGenImage get pictureFrame => const SvgGenImage('assets/icons/picture_frame.svg');
/// File path: assets/icons/place_holder.svg
SvgGenImage get placeHolder => const SvgGenImage('assets/icons/place_holder.svg');
/// File path: assets/icons/profile2.svg
SvgGenImage get profile2 => const SvgGenImage('assets/icons/profile2.svg');
/// File path: assets/icons/profile_circle.svg
SvgGenImage get profileCircle => const SvgGenImage('assets/icons/profile_circle.svg');
@@ -205,6 +214,9 @@ class $AssetsIconsGen {
/// File path: assets/icons/setting.svg
SvgGenImage get setting => const SvgGenImage('assets/icons/setting.svg');
/// File path: assets/icons/shop.svg
SvgGenImage get shop => const SvgGenImage('assets/icons/shop.svg');
/// File path: assets/icons/shopping_basket.svg
SvgGenImage get shoppingBasket => const SvgGenImage('assets/icons/shopping_basket.svg');
@@ -251,6 +263,7 @@ class $AssetsIconsGen {
List<SvgGenImage> get values => [
a3dCubeSquare,
add,
appBarInspection,
arrowLeft,
arrowRight,
bgHeaderUserProfile,
@@ -296,8 +309,10 @@ class $AssetsIconsGen {
messageAdd,
outside,
pdfDownload,
people,
pictureFrame,
placeHolder,
profile2,
profileCircle,
profileUser,
receiptDiscount,
@@ -307,6 +322,7 @@ class $AssetsIconsGen {
search,
securityTime,
setting,
shop,
shoppingBasket,
tagLabel,
tagUser,
@@ -362,6 +378,9 @@ class $AssetsVecGen {
/// File path: assets/vec/add.svg.vec
SvgGenImage get addSvg => const SvgGenImage.vec('assets/vec/add.svg.vec');
/// File path: assets/vec/app_bar_inspection.svg.vec
SvgGenImage get appBarInspectionSvg => const SvgGenImage.vec('assets/vec/app_bar_inspection.svg.vec');
/// File path: assets/vec/arrow_left.svg.vec
SvgGenImage get arrowLeftSvg => const SvgGenImage.vec('assets/vec/arrow_left.svg.vec');
@@ -497,12 +516,18 @@ class $AssetsVecGen {
/// File path: assets/vec/pdf_download.svg.vec
SvgGenImage get pdfDownloadSvg => const SvgGenImage.vec('assets/vec/pdf_download.svg.vec');
/// File path: assets/vec/people.svg.vec
SvgGenImage get peopleSvg => const SvgGenImage.vec('assets/vec/people.svg.vec');
/// File path: assets/vec/picture_frame.svg.vec
SvgGenImage get pictureFrameSvg => const SvgGenImage.vec('assets/vec/picture_frame.svg.vec');
/// File path: assets/vec/place_holder.svg.vec
SvgGenImage get placeHolderSvg => const SvgGenImage.vec('assets/vec/place_holder.svg.vec');
/// File path: assets/vec/profile2.svg.vec
SvgGenImage get profile2Svg => const SvgGenImage.vec('assets/vec/profile2.svg.vec');
/// File path: assets/vec/profile_circle.svg.vec
SvgGenImage get profileCircleSvg => const SvgGenImage.vec('assets/vec/profile_circle.svg.vec');
@@ -530,6 +555,9 @@ class $AssetsVecGen {
/// File path: assets/vec/setting.svg.vec
SvgGenImage get settingSvg => const SvgGenImage.vec('assets/vec/setting.svg.vec');
/// File path: assets/vec/shop.svg.vec
SvgGenImage get shopSvg => const SvgGenImage.vec('assets/vec/shop.svg.vec');
/// File path: assets/vec/shopping_basket.svg.vec
SvgGenImage get shoppingBasketSvg => const SvgGenImage.vec('assets/vec/shopping_basket.svg.vec');
@@ -576,6 +604,7 @@ class $AssetsVecGen {
List<SvgGenImage> get values => [
a3dCubeSquareSvg,
addSvg,
appBarInspectionSvg,
arrowLeftSvg,
arrowRightSvg,
bgHeaderUserProfileSvg,
@@ -621,8 +650,10 @@ class $AssetsVecGen {
messageAddSvg,
outsideSvg,
pdfDownloadSvg,
peopleSvg,
pictureFrameSvg,
placeHolderSvg,
profile2Svg,
profileCircleSvg,
profileUserSvg,
receiptDiscountSvg,
@@ -632,6 +663,7 @@ class $AssetsVecGen {
searchSvg,
securityTimeSvg,
settingSvg,
shopSvg,
shoppingBasketSvg,
tagLabelSvg,
tagUserSvg,

View File

@@ -53,7 +53,9 @@ class RAppBar extends StatelessWidget implements PreferredSizeWidget {
)
: null,
leadingWidth: leadingWidth?.toDouble(),
leading: leading != null ? Padding(padding: const EdgeInsets.only(right: 6), child: leading) : null,
leading: leading != null
? Padding(padding: const EdgeInsets.only(right: 6), child: leading)
: null,
titleSpacing: 8,
actions: [
if (additionalActions != null) ...additionalActions!,

View File

@@ -2,9 +2,10 @@ import 'package:flutter/material.dart';
import 'package:rasadyar_core/core.dart';
class RBottomNavigation extends StatefulWidget {
const RBottomNavigation({super.key, required this.items});
RBottomNavigation({super.key, required this.items,this.mainAxisAlignment});
final List<RBottomNavigationItem> items;
MainAxisAlignment? mainAxisAlignment;
@override
State<RBottomNavigation> createState() => _RBottomNavigationState();
@@ -18,9 +19,15 @@ class _RBottomNavigationState extends State<RBottomNavigation> {
padding: EdgeInsets.symmetric(horizontal: 11.w, vertical: 18.h),
decoration: BoxDecoration(
color: AppColor.blueNormal,
borderRadius: const BorderRadius.only(topLeft: Radius.circular(32), topRight: Radius.circular(32)),
borderRadius: const BorderRadius.only(
topLeft: Radius.circular(32),
topRight: Radius.circular(32),
),
),
child: Row(
mainAxisAlignment: widget.mainAxisAlignment??MainAxisAlignment.spaceBetween,
children: widget.items,
),
child: Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: widget.items),
);
}
}
@@ -57,10 +64,18 @@ class RBottomNavigationItem extends StatelessWidget {
SvgGenImage.vec(icon).svg(
width: 40.w,
height: 40.h,
colorFilter: ColorFilter.mode(isSelected ? AppColor.blueNormal : Colors.white, BlendMode.srcIn),
colorFilter: ColorFilter.mode(
isSelected ? AppColor.blueNormal : Colors.white,
BlendMode.srcIn,
),
),
SizedBox(height: 5.h),
Text(label, style: AppFonts.yekan10.copyWith(color: isSelected ? AppColor.blueNormal : Colors.white)),
Text(
label,
style: AppFonts.yekan10.copyWith(
color: isSelected ? AppColor.blueNormal : Colors.white,
),
),
],
),
),