diff --git a/lib/main.dart b/lib/main.dart index 6e2dc9d..840ae0c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,9 +1,8 @@ import 'package:device_preview/device_preview.dart'; import 'package:flutter/material.dart'; -import 'package:get/get.dart'; import 'package:rasadyar_app/domain/service/user/user_service.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; import 'package:rasadyar_app/presentation/routes/app_pages.dart'; +import 'package:rasadyar_core/core.dart'; import 'package:rasadyar_core/infrastructure/di/di.dart'; void main() async { diff --git a/lib/presentation/common/app_color.dart b/lib/presentation/common/app_color.dart deleted file mode 100644 index 6505e83..0000000 --- a/lib/presentation/common/app_color.dart +++ /dev/null @@ -1,368 +0,0 @@ -import 'package:flutter/material.dart'; - -class AppColor { - AppColor._(); - - //region --- Blue Colors --- - static const Color blueLight = Color( - 0xFFeaefff, - ); // #eaefff rgb(234, 239, 255) - static const Color blueLightHover = Color( - 0xFFe0e7ff, - ); // #e0e7ff rgb(224, 231, 255) - static const Color blueLightActive = Color( - 0xFFbecdff, - ); // #becdff rgb(190, 205, 255) - static const Color blueNormal = Color(0xFF2d5fff); // #2d5fff rgb(45, 95, 255) - static const Color blueNormalHover = Color( - 0xFF2956e6, - ); // #2956e6 rgb(41, 86, 230) - static const Color blueNormalActive = Color( - 0xFF244ccc, - ); // #244ccc rgb(36, 76, 204) - static const Color blueDark = Color(0xFF2247bf); // #2247bf rgb(34, 71, 191) - static const Color blueDarkHover = Color( - 0xFF1b3999, - ); // #1b3999 rgb(27, 57, 153) - static const Color blueDarkActive = Color( - 0xFF142b73, - ); // #142b73 rgb(20, 43, 115) - static const Color blueDarker = Color(0xFF102159); // #102159 rgb(16, 33, 89) - //endregion - - //region --- Green Colors --- - static const Color greenLight = Color( - 0xFFe6faf5, - ); // #e6faf5 rgb(230, 250, 245) - static const Color greenLightHover = Color( - 0xFFd9f7f0, - ); // #d9f7f0 rgb(217, 247, 240) - static const Color greenLightActive = Color( - 0xFFb0efdf, - ); // #b0efdf rgb(176, 239, 223) - static const Color greenNormal = Color( - 0xFF00cc99, - ); // #00cc99 rgb(0, 204, 153) - static const Color greenNormalHover = Color( - 0xFF00b88a, - ); // #00b88a rgb(0, 184, 138) - static const Color greenNormalActive = Color( - 0xFF00a37a, - ); // #00a37a rgb(0, 163, 122) - static const Color greenDark = Color(0xFF009973); // #009973 rgb(0, 153, 115) - static const Color greenDarkHover = Color( - 0xFF007a5c, - ); // #007a5c rgb(0, 122, 92) - static const Color greenDarkActive = Color( - 0xFF005c45, - ); // #005c45 rgb(0, 92, 69) - static const Color greenDarker = Color(0xFF004736); // #004736 rgb(0, 71, 54) - //endregion - - //region --- Black Colors --- - static const Color blackLight = Color( - 0xFFe6e6e6, - ); // #e6e6e6 rgb(230, 230, 230) - static const Color blackLightHover = Color( - 0xFFd9d9d9, - ); // #d9d9d9 rgb(217, 217, 217) - static const Color blackLightActive = Color( - 0xFFb0b0b0, - ); // #b0b0b0 rgb(176, 176, 176) - static const Color blackNormal = Color(0xFF000000); // #000000 rgb(0, 0, 0) - static const Color blackNormalHover = Color( - 0xFF000000, - ); // #000000 rgb(0, 0, 0) - static const Color blackNormalActive = Color( - 0xFF000000, - ); // #000000 rgb(0, 0, 0) - static const Color blackDark = Color(0xFF000000); // #000000 rgb(0, 0, 0) - static const Color blackDarkHover = Color(0xFF000000); // #000000 rgb(0, 0, 0) - static const Color blackDarkActive = Color( - 0xFF000000, - ); // #000000 rgb(0, 0, 0) - static const Color blackDarker = Color(0xFF000000); // #000000 rgb(0, 0, 0) - //endregion - - //region ---Dark Grey Colors --- - static const Color darkGreyLight = Color( - 0xFFeaeaea, - ); // #eaeaea rgb(234, 234, 234) - static const Color darkGreyLightHover = Color( - 0xFFdfdfdf, - ); // #dfdfdf rgb(223, 223, 223) - static const Color darkGreyLightActive = Color( - 0xFFbdbdbd, - ); // #bdbdbd rgb(189, 189, 189) - static const Color darkGreyNormal = Color( - 0xFF2a2a2a, - ); // #2a2a2a rgb(42, 42, 42) - static const Color darkGreyNormalHover = Color( - 0xFF262626, - ); // #262626 rgb(38, 38, 38) - static const Color darkGreyNormalActive = Color( - 0xFF222222, - ); // #222222 rgb(34, 34, 34) - static const Color darkGreyDark = Color( - 0xFF202020, - ); // #202020 rgb(32, 32, 32) - static const Color darkGreyDarkHover = Color( - 0xFF191919, - ); // #191919 rgb(25, 25, 25) - static const Color darkGreyDarkActive = Color( - 0xFF131313, - ); // #131313 rgb(19, 19, 19) - static const Color darkGreyDarker = Color( - 0xFF0f0f0f, - ); // #0f0f0f rgb(15, 15, 15) - //endregion - - //region ---Medium Grey Colors --- - static const Color mediumGreyLight = Color( - 0xFFf4f4f4, - ); // #f4f4f4 rgb(244, 244, 244) - static const Color mediumGreyLightHover = Color( - 0xFFeeeeee, - ); // #eeeeee rgb(238, 238, 238) - static const Color mediumGreyLightActive = Color( - 0xFFdcdcdc, - ); // #dcdcdc rgb(220, 220, 220) - static const Color mediumGreyNormal = Color( - 0xFF8f8f8f, - ); // #8f8f8f rgb(143, 143, 143) - static const Color mediumGreyNormalHover = Color( - 0xFF818181, - ); // #818181 rgb(129, 129, 129) - static const Color mediumGreyNormalActive = Color( - 0xFF727272, - ); // #727272 rgb(114, 114, 114) - static const Color mediumGreyDark = Color( - 0xFF6b6b6b, - ); // #6b6b6b rgb(107, 107, 107) - static const Color mediumGreyDarkHover = Color( - 0xFF565656, - ); // #565656 rgb(86, 86, 86) - static const Color mediumGreyDarkActive = Color( - 0xFF404040, - ); // #404040 rgb(64, 64, 64) - static const Color mediumGreyDarker = Color( - 0xFF323232, - ); // #323232 rgb(50, 50, 50) - //endregion - - //region ---Light Grey Colors --- - static const Color lightGreyLight = Color( - 0xFFfdfdfd, - ); // #fdfdfd rgb(253, 253, 253) - static const Color lightGreyLightHover = Color( - 0xFFfcfcfc, - ); // #fcfcfc rgb(252, 252, 252) - static const Color lightGreyLightActive = Color( - 0xFFfafafa, - ); // #fafafa rgb(250, 250, 250) - static const Color lightGreyNormal = Color( - 0xFFeeeeee, - ); // #eeeeee rgb(238, 238, 238) - static const Color lightGreyNormalHover = Color( - 0xFFd6d6d6, - ); // #d6d6d6 rgb(214, 214, 214) - static const Color lightGreyNormalActive = Color( - 0xFFbebebe, - ); // #bebebe rgb(190, 190, 190) - static const Color lightGreyDark = Color( - 0xFFb3b3b3, - ); // #b3b3b3 rgb(179, 179, 179) - static const Color lightGreyDarkHover = Color( - 0xFF8f8f8f, - ); // #8f8f8f rgb(143, 143, 143) - static const Color lightGreyDarkActive = Color( - 0xFF6b6b6b, - ); // #6b6b6b rgb(107, 107, 107) - static const Color lightGreyDarker = Color( - 0xFF535353, - ); // #535353 rgb(83, 83, 83) - //endregion - - //region ---WhiteGrey Colors --- - static const Color whiteGreyLight = Color( - 0xFFfefefe, - ); // #fefefe rgb(254, 254, 254) - static const Color whiteGreyLightHover = Color( - 0xFFfefefe, - ); // #fefefe rgb(254, 254, 254) - static const Color whiteGreyLightActive = Color( - 0xFFfdfdfd, - ); // #fdfdfd rgb(253, 253, 253) - static const Color whiteGreyNormal = Color( - 0xFFf9f9f9, - ); // #f9f9f9 rgb(249, 249, 249) - static const Color whiteGreyNormalHover = Color( - 0xFFe0e0e0, - ); // #e0e0e0 rgb(224, 224, 224) - static const Color whiteGreyNormalActive = Color( - 0xFFc7c7c7, - ); // #c7c7c7 rgb(199, 199, 199) - static const Color whiteGreyDark = Color( - 0xFFbbbbbb, - ); // #bbbbbb rgb(187, 187, 187) - static const Color whiteGreyDarkHover = Color( - 0xFF959595, - ); // #959595 rgb(149, 149, 149) - static const Color whiteGreyDarkActive = Color( - 0xFF707070, - ); // #707070 rgb(112, 112, 112) - static const Color whiteGreyDarker = Color( - 0xFF575757, - ); // #575757 rgb(87, 87, 87) - //endregion - - //region ---White Colors --- - static const Color whiteLight = Color( - 0xFFffffff, - ); // #ffffff rgb(255, 255, 255) - static const Color whiteLightHover = Color( - 0xFFffffff, - ); // #ffffff rgb(255, 255, 255) - static const Color whiteLightActive = Color( - 0xFFffffff, - ); // #ffffff rgb(255, 255, 255) - static const Color whiteNormal = Color( - 0xFFffffff, - ); // #ffffff rgb(255, 255, 255) - static const Color whiteNormalHover = Color( - 0xFFe6e6e6, - ); // #e6e6e6 rgb(230, 230, 230) - static const Color whiteNormalActive = Color( - 0xFFcccccc, - ); // #cccccc rgb(204, 204, 204) - static const Color whiteDark = Color( - 0xFFbfbfbf, - ); // #bfbfbf rgb(191, 191, 191) - static const Color whiteDarkHover = Color( - 0xFF999999, - ); // #999999 rgb(153, 153, 153) - static const Color whiteDarkActive = Color( - 0xFF737373, - ); // #737373 rgb(115, 115, 115) - static const Color whiteDarker = Color(0xFF595959); // #595959 rgb(89, 89, 89) - //endregion - - //region --- green1 Colors --- - static const Color green1Light = Color( - 0xFFe6f6f4, - ); // #e6f6f4 rgb(230, 246, 244) - static const Color green1LightHover = Color( - 0xFFd9f2ef, - ); // #d9f2ef rgb(217, 242, 239) - static const Color green1LightActive = Color( - 0xFFb0e4dd, - ); // #b0e4dd rgb(176, 228, 221) - static const Color green1Normal = Color( - 0xFF00a991, - ); // #00a991 rgb(0, 169, 145) - static const Color green1NormalHover = Color( - 0xFF009883, - ); // #009883 rgb(0, 152, 131) - static const Color green1NormalActive = Color( - 0xFF008774, - ); // #008774 rgb(0, 135, 116) - static const Color green1Dark = Color(0xFF007f6d); // #007f6d rgb(0, 127, 109) - static const Color green1DarkHover = Color( - 0xFF006557, - ); // #006557 rgb(0, 101, 87) - static const Color green1DarkActive = Color( - 0xFF004c41, - ); // #004c41 rgb(0, 76, 65) - static const Color green1Darker = Color(0xFF003b33); // #003b33 rgb(0, 59, 51) - //endregion - - //region --- Yellow Colors --- - static const Color yellowLight = Color( - 0xFFfff9e6, - ); // #fff9e6 rgb(255, 249, 230) - static const Color yellowLightHover = Color( - 0xFFfff6da, - ); // #fff6da rgb(255, 246, 218) - static const Color yellowLightActive = Color( - 0xFFffecb2, - ); // #ffecb2 rgb(255, 236, 178) - static const Color yellowNormal = Color( - 0xFFffc107, - ); // #ffc107 rgb(255, 193, 7) - static const Color yellowNormalHover = Color( - 0xFFe6ae06, - ); // #e6ae06 rgb(230, 174, 6) - static const Color yellowNormalActive = Color( - 0xFFcc9a06, - ); // #cc9a06 rgb(204, 154, 6) - static const Color yellowDark = Color(0xFFbf9105); // #bf9105 rgb(191, 145, 5) - static const Color yellowDarkHover = Color( - 0xFF997404, - ); // #997404 rgb(153, 116, 4) - static const Color yellowDarkActive = Color( - 0xFF735703, - ); // #735703 rgb(115, 87, 3) - static const Color yellowDarker = Color(0xFF594402); // #594402 rgb(89, 68, 2) - //endregion - - //region --- red Colors --- - static const Color redLight = Color(0xFFfdeeee); // #fdeeee rgb(253, 238, 238) - static const Color redLightHover = Color( - 0xFFfce6e6, - ); // #fce6e6 rgb(252, 230, 230) - static const Color redLightActive = Color( - 0xFFf9cbcb, - ); // #f9cbcb rgb(249, 203, 203) - static const Color redNormal = Color(0xFFeb5757); // #eb5757 rgb(235, 87, 87) - static const Color redNormalHover = Color( - 0xFFd44e4e, - ); // #d44e4e rgb(212, 78, 78) - static const Color redNormalActive = Color( - 0xFFbc4646, - ); // #bc4646 rgb(188, 70, 70) - static const Color redDark = Color(0xFFb04141); // #b04141 rgb(176, 65, 65) - static const Color redDarkHover = Color( - 0xFF8d3434, - ); // #8d3434 rgb(141, 52, 52) - static const Color redDarkActive = Color( - 0xFF6a2727, - ); // #6a2727 rgb(106, 39, 39) - static const Color redDarker = Color(0xFF521e1e); // #521e1e rgb(82, 30, 30) - //endregion - - //region --- Teal Colors --- - static const Color tealLight = Color( - 0xFFe8f6f8, - ); // #e8f6f8 rgb(232, 246, 248) - static const Color tealLightHover = Color( - 0xFFdcf1f4, - ); // #dcf1f4 rgb(220, 241, 244) - static const Color tealLightActive = Color( - 0xFFb7e2e9, - ); // #b7e2e9 rgb(183, 226, 233) - static const Color tealNormal = Color( - 0xFF17a2b8, - ); // #17a2b8 rgb(23, 162, 184) - static const Color tealNormalHover = Color( - 0xFF1592a6, - ); // #1592a6 rgb(21, 146, 166) - static const Color tealNormalActive = Color( - 0xFF128293, - ); // #128293 rgb(18, 130, 147) - static const Color tealDark = Color(0xFF117a8a); // #117a8a rgb(17, 122, 138) - static const Color tealDarkHover = Color( - 0xFF0e616e, - ); // #0e616e rgb(14, 97, 110) - static const Color tealDarkActive = Color( - 0xFF0a4953, - ); // #0a4953 rgb(10, 73, 83) - static const Color tealDarker = Color(0xFF083940); // #083940 rgb(8, 57, 64) - //endregion - - //region --- category Colors --- - static const Color confirm = greenNormalActive; - static const Color warning =yellowNormal; - static const Color error =redNormal; - static const Color info = tealNormal; - //endregion -} diff --git a/lib/presentation/common/app_fonts.dart b/lib/presentation/common/app_fonts.dart deleted file mode 100644 index 65be3b0..0000000 --- a/lib/presentation/common/app_fonts.dart +++ /dev/null @@ -1,169 +0,0 @@ -import 'package:flutter/material.dart'; - -class AppFonts { - AppFonts._(); // Private constructor to prevent instantiation - - // --- Font Families --- - static const String yekan = 'yekan'; - - // --- Font Weights --- - static const FontWeight regular = FontWeight.w400; - static const FontWeight bold = FontWeight.w600; - static const double _height = 1.20; - - static const TextStyle yekan61 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 61, - height: _height, - ); - - static const TextStyle yekan49 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 48, - height: _height, - ); - - static const TextStyle yekan39 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 39, - height: _height, - ); - - static const TextStyle yekan31 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 31, - height: _height, - ); - - static const TextStyle yekan25 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 25, - height: _height, - ); - - static const TextStyle yekan24 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 24, - height: _height, - ); - - static const TextStyle yekan20 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 20, - height: _height, - ); - - static const TextStyle yekan18 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 18, - height: _height, - ); - - static const TextStyle yekan16 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 16, - height: _height, - ); - - static const TextStyle yekan14 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 13, - height: _height, - ); - - static const TextStyle yekan13 = TextStyle( - fontFamily: yekan, - fontWeight: regular, - fontSize: 13, - height: _height, - ); - - static const TextStyle yekan10 = TextStyle( - // Rounded from 10.24 - fontFamily: yekan, - fontWeight: regular, - fontSize: 10, - height: _height, - ); - - static const TextStyle yekan61Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 61, - height: _height, - ); - - static const TextStyle yekan49Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 48, - height: _height, - ); - - static const TextStyle yekan39Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 39, - height: _height, - ); - - static const TextStyle yekan31Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 31, - height: _height, - ); - - static const TextStyle yekan25Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 25, - height: _height, - ); - - static const TextStyle yekan24Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 24, - height: _height, - ); - - static const TextStyle yekan20Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 20, - height: _height, - ); - - static const TextStyle yekan16Bold = TextStyle( - // Base size bold - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 16, - height: _height, - ); - - static const TextStyle yekan13Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 13, - height: _height, - ); - - static const TextStyle yekan10Bold = TextStyle( - fontFamily: yekan, - fontWeight: bold, // Use bold weight - fontSize: 10, - height: _height, - ); -} diff --git a/lib/presentation/common/assets.dart b/lib/presentation/common/assets.dart deleted file mode 100644 index 0e70b14..0000000 --- a/lib/presentation/common/assets.dart +++ /dev/null @@ -1,72 +0,0 @@ -///This file is automatically generated. DO NOT EDIT, all your changes would be lost. -class Assets { - Assets._(); - - static const String iconsAdd = 'assets/icons/add.svg'; - static const String iconsArrowLeft = 'assets/icons/arrow_left.svg'; - static const String iconsArrowRight = 'assets/icons/arrow_right.svg'; - static const String iconsBgHeaderUserProfile = 'assets/icons/bg_header_user_profile.svg'; - static const String iconsCalendar = 'assets/icons/calendar.svg'; - static const String iconsCalendarSearch = 'assets/icons/calendar_search.svg'; - static const String iconsCall = 'assets/icons/call.svg'; - static const String iconsDiagram = 'assets/icons/diagram.svg'; - static const String iconsDownload = 'assets/icons/download.svg'; - static const String iconsEdit = 'assets/icons/edit.svg'; - static const String iconsExcelDownload = 'assets/icons/excel_download.svg'; - static const String iconsFilter = 'assets/icons/filter.svg'; - static const String iconsGps = 'assets/icons/gps.svg'; - static const String iconsInformation = 'assets/icons/information.svg'; - static const String iconsKey = 'assets/icons/key.svg'; - static const String iconsLogout = 'assets/icons/logout.svg'; - static const String iconsMap = 'assets/icons/map.svg'; - static const String iconsMapMarker = 'assets/icons/map_marker.svg'; - static const String iconsMessageAdd = 'assets/icons/message_add.svg'; - static const String iconsPdfDownload = 'assets/icons/pdf_download.svg'; - static const String iconsPictureFrame = 'assets/icons/picture_frame.svg'; - static const String iconsProfileCircle = 'assets/icons/profile_circle.svg'; - static const String iconsProfileUser = 'assets/icons/profile_user.svg'; - static const String iconsReceiptDiscount = 'assets/icons/receipt_discount.svg'; - static const String iconsScan = 'assets/icons/scan.svg'; - static const String iconsScanBarcode = 'assets/icons/scan_barcode.svg'; - static const String iconsSecurityTime = 'assets/icons/security_time.svg'; - static const String iconsSetting = 'assets/icons/setting.svg'; - static const String iconsTagUser = 'assets/icons/tag_user.svg'; - static const String iconsTrash = 'assets/icons/trash.svg'; - static const String iconsUser = 'assets/icons/user.svg'; - static const String iconsUserSquare = 'assets/icons/user_square.svg'; - static const String imagesInnerSplash = 'assets/images/inner_splash.webp'; - static const String imagesOutterSplash = 'assets/images/outter_splash.webp'; - static const String vecAddSvg = 'assets/vec/add.svg.vec'; - static const String vecArrowLeftSvg = 'assets/vec/arrow_left.svg.vec'; - static const String vecArrowRightSvg = 'assets/vec/arrow_right.svg.vec'; - static const String vecBgHeaderUserProfileSvg = 'assets/vec/bg_header_user_profile.svg.vec'; - static const String vecCalendarSearchSvg = 'assets/vec/calendar_search.svg.vec'; - static const String vecCalendarSvg = 'assets/vec/calendar.svg.vec'; - static const String vecCallSvg = 'assets/vec/call.svg.vec'; - static const String vecDiagramSvg = 'assets/vec/diagram.svg.vec'; - static const String vecDownloadSvg = 'assets/vec/download.svg.vec'; - static const String vecEditSvg = 'assets/vec/edit.svg.vec'; - static const String vecExcelDownloadSvg = 'assets/vec/excel_download.svg.vec'; - static const String vecFilterSvg = 'assets/vec/filter.svg.vec'; - static const String vecGpsSvg = 'assets/vec/gps.svg.vec'; - static const String vecInformationSvg = 'assets/vec/information.svg.vec'; - static const String vecKeySvg = 'assets/vec/key.svg.vec'; - static const String vecLogoutSvg = 'assets/vec/logout.svg.vec'; - static const String vecMapMarkerSvg = 'assets/vec/map_marker.svg.vec'; - static const String vecMapSvg = 'assets/vec/map.svg.vec'; - static const String vecMessageAddSvg = 'assets/vec/message_add.svg.vec'; - static const String vecPdfDownloadSvg = 'assets/vec/pdf_download.svg.vec'; - static const String vecPictureFrameSvg = 'assets/vec/picture_frame.svg.vec'; - static const String vecProfileCircleSvg = 'assets/vec/profile_circle.svg.vec'; - static const String vecProfileUserSvg = 'assets/vec/profile_user.svg.vec'; - static const String vecReceiptDiscountSvg = 'assets/vec/receipt_discount.svg.vec'; - static const String vecScanBarcodeSvg = 'assets/vec/scan_barcode.svg.vec'; - static const String vecScanSvg = 'assets/vec/scan.svg.vec'; - static const String vecSecurityTimeSvg = 'assets/vec/security_time.svg.vec'; - static const String vecSettingSvg = 'assets/vec/setting.svg.vec'; - static const String vecTagUserSvg = 'assets/vec/tag_user.svg.vec'; - static const String vecTrashSvg = 'assets/vec/trash.svg.vec'; - static const String vecUserSquareSvg = 'assets/vec/user_square.svg.vec'; - static const String vecUserSvg = 'assets/vec/user.svg.vec'; - -} diff --git a/lib/presentation/pages/auth/auth_with_use_and_pass/logic.dart b/lib/presentation/pages/auth/auth_with_use_and_pass/logic.dart index d5ac08e..580413d 100644 --- a/lib/presentation/pages/auth/auth_with_use_and_pass/logic.dart +++ b/lib/presentation/pages/auth/auth_with_use_and_pass/logic.dart @@ -1,8 +1,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; -import 'package:get/get.dart'; -import 'package:rasadyar_app/presentation/widget/captcha/captcha_widget.dart'; +import 'package:rasadyar_core/core.dart'; enum AuthType { useAndPass, otp } diff --git a/lib/presentation/pages/auth/auth_with_use_and_pass/view.dart b/lib/presentation/pages/auth/auth_with_use_and_pass/view.dart index 33d73d8..dd0b469 100644 --- a/lib/presentation/pages/auth/auth_with_use_and_pass/view.dart +++ b/lib/presentation/pages/auth/auth_with_use_and_pass/view.dart @@ -1,14 +1,9 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; -import 'package:get/get.dart'; import 'package:inspection/inspection.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; -import 'package:rasadyar_app/presentation/common/assets.dart'; -import 'package:rasadyar_app/presentation/widget/buttons/elevated.dart'; -import 'package:rasadyar_app/presentation/widget/captcha/captcha_widget.dart'; -import 'package:rasadyar_app/presentation/widget/vec_widget.dart'; +import 'package:rasadyar_core/core.dart'; +import 'package:rasadyar_core/presentation/widget/captcha/captcha_widget.dart'; import 'logic.dart'; diff --git a/lib/presentation/pages/splash/view.dart b/lib/presentation/pages/splash/view.dart index 75f37c3..bffd309 100644 --- a/lib/presentation/pages/splash/view.dart +++ b/lib/presentation/pages/splash/view.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:get/get.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/assets.dart'; +import 'package:rasadyar_core/core.dart'; + import 'logic.dart'; diff --git a/lib/presentation/pages/system_design/system_design.dart b/lib/presentation/pages/system_design/system_design.dart index 6c5c04d..f53eb75 100644 --- a/lib/presentation/pages/system_design/system_design.dart +++ b/lib/presentation/pages/system_design/system_design.dart @@ -1,16 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; -import 'package:rasadyar_app/presentation/utils/color_utils.dart'; -import 'package:rasadyar_app/presentation/widget/buttons/elevated.dart'; -import 'package:rasadyar_app/presentation/widget/buttons/fab.dart'; -import 'package:rasadyar_app/presentation/widget/buttons/fab_outlined.dart'; -import 'package:rasadyar_app/presentation/widget/buttons/outline_elevated.dart'; -import 'package:rasadyar_app/presentation/widget/buttons/text_button.dart'; -import 'package:rasadyar_app/presentation/widget/inputs/r_input.dart'; -import 'package:rasadyar_app/presentation/widget/pagination/pagination_from_until.dart'; -import 'package:rasadyar_app/presentation/widget/pagination/show_more.dart'; -import 'package:rasadyar_app/presentation/widget/tabs/tab.dart'; +import 'package:rasadyar_core/core.dart'; + class SystemDesignPage extends StatefulWidget { const SystemDesignPage({super.key}); diff --git a/lib/presentation/widget/buttons/elevated.dart b/lib/presentation/widget/buttons/elevated.dart deleted file mode 100644 index 934bf4f..0000000 --- a/lib/presentation/widget/buttons/elevated.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; - -class RElevated extends StatefulWidget { - RElevated({ - super.key, - required this.text, - required this.onPressed, - foregroundColor, - backgroundColor, - disabledBackgroundColor, - disabledForegroundColor, - radius, - textStyle, - this.width = 150.0, - this.height = 56.0, - }); - - final String text; - final VoidCallback? onPressed; - final double width; - final double height; - Color? foregroundColor; - Color? backgroundColor; - Color? disabledForegroundColor; - Color? disabledBackgroundColor; - double? radius; - TextStyle? textStyle; - - @override - State createState() => _RElevatedState(); -} - -class _RElevatedState extends State { - @override - Widget build(BuildContext context) { - return ElevatedButton( - onPressed: widget.onPressed, - style: ElevatedButton.styleFrom( - backgroundColor: widget.backgroundColor ?? AppColor.blueNormal, - foregroundColor: widget.foregroundColor ?? Colors.white, - disabledBackgroundColor: - widget.disabledBackgroundColor ?? AppColor.blueNormal.withAlpha(38), - disabledForegroundColor: widget.disabledForegroundColor ?? Colors.white, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(widget.radius ?? 8), - ), - fixedSize: Size(widget.width, widget.height), - padding: EdgeInsets.zero, - textStyle: widget.textStyle ?? AppFonts.yekan24, - ), - child: Text(widget.text), - ); - } -} diff --git a/lib/presentation/widget/buttons/fab.dart b/lib/presentation/widget/buttons/fab.dart deleted file mode 100644 index 360b850..0000000 --- a/lib/presentation/widget/buttons/fab.dart +++ /dev/null @@ -1,234 +0,0 @@ -/* -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/assets.dart'; -import 'package:rasadyar_app/presentation/utils/color_utils.dart'; -import 'package:rasadyar_app/presentation/widget/vec_widget.dart'; - -class RFab extends StatefulWidget { - - - final VoidCallback? onPressed; - Color? foregroundColor; - Color? backgroundColor; - Color? disabledForegroundColor; - Color? disabledBackgroundColor; - double? radius; - ShapeBorder? shapeBorder; - Widget? icon; - - @override - State createState() => _RFabState(); - - //region Add - RFab.smallAdd({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecAddSvg), - backgroundColor: AppColor.greenNormal, - key: key, - ); - - RFab.add({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecAddSvg), - backgroundColor: AppColor.greenNormal, - key: key, - ); - - //endregion - - //region Edit - RFab.smallEdit({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecEditSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - RFab.edit({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecEditSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - //endregion - - //region delete - RFab.smallDelete({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecTrashSvg), - backgroundColor: AppColor.redNormal, - key: key, - ); - - RFab.delete({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecTrashSvg), - backgroundColor: AppColor.redNormal, - key: key, - ); - - //endregion - - //region action - RFab.smallAction({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecScanSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - RFab.action({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecScanSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - //endregion - - //region filter - RFab.smallFilter({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecFilterSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - RFab.filter({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecFilterSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - //endregion - - //region download - RFab.smallDownload({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecDownloadSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - RFab.download({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecDownloadSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - //endregion - - //region Excel - RFab.smallExcel({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecDownloadSvg), - backgroundColor: AppColor.greenDark, - key: key, - ); - - RFab.excel({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecDownloadSvg), - backgroundColor: AppColor.greenDark, - key: key, - ); - - //endregion - - //region Back - RFab.smallBack({required VoidCallback? onPressed, Key? key}) - : this.small( - onPressed: onPressed, - icon: vecWidget(Assets.vecArrowLeftSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - RFab.back({required VoidCallback? onPressed, Key? key}) - : this( - onPressed: onPressed, - icon: vecWidget(Assets.vecArrowLeftSvg), - backgroundColor: AppColor.blueNormal, - key: key, - ); - - //endregion - - //region General - RFab.small({ - required this.onPressed, - required this.icon, - required this.backgroundColor, - super.key, - }) : radius = 40.0, - foregroundColor = Colors.white; - - RFab({ - required this.onPressed, - required this.icon, - required this.backgroundColor, - super.key, - }) : radius = 56.0, - foregroundColor = Colors.white; - - //endregion -} - -class _RFabState extends State { - @override - Widget build(BuildContext context) { - return ElevatedButton( - onPressed: widget.onPressed, - style: ButtonStyle( - side: WidgetStateProperty.all(BorderSide.none), - backgroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return widget.backgroundColor?.pressedColor ?? - AppColor.blueNormalActive; - } else if (states.contains(WidgetState.hovered)) { - return widget.backgroundColor?.hoverColor ?? - AppColor.blueNormalHover; - } else if (states.contains(WidgetState.disabled)) { - return widget.backgroundColor?.disabledColor ?? - AppColor.blueNormal.disabledColor; - } - return widget.backgroundColor ?? AppColor.blueNormal; - }), - foregroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.disabled)) { - return widget.foregroundColor?.disabledColor; - } - return widget.foregroundColor; - }), - - shape: WidgetStatePropertyAll( - CircleBorder(side: BorderSide(width: 1, color: Colors.transparent)), - ), - fixedSize: WidgetStatePropertyAll( - Size(widget.radius ?? 56, widget.radius ?? 56), - ), - padding: WidgetStatePropertyAll(EdgeInsets.zero), - ), - child: widget.icon, - ); - } -} -*/ diff --git a/lib/presentation/widget/buttons/fab_outlined.dart b/lib/presentation/widget/buttons/fab_outlined.dart deleted file mode 100644 index ab6a1ba..0000000 --- a/lib/presentation/widget/buttons/fab_outlined.dart +++ /dev/null @@ -1,607 +0,0 @@ -/* -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/assets.dart'; -import 'package:rasadyar_app/presentation/utils/color_utils.dart'; -import 'package:rasadyar_app/presentation/widget/vec_widget.dart'; - -class RFabOutlined extends StatefulWidget { - final Widget icon; - VoidCallback? onPressed; - final Color backgroundColor; - final Color? borderColor; - final double? radius; - OutlinedBorder? shapeBorder; - - @override - State createState() => _RFabOutlinedState(); - - //region General - RFabOutlined({ - required this.icon, - required this.onPressed, - required this.backgroundColor, - required this.borderColor, - this.radius = 56.0, - super.key, - }) : shapeBorder = CircleBorder( - side: BorderSide(color: borderColor ?? Colors.transparent), - ); - - RFabOutlined.noBorder({ - required this.icon, - required this.onPressed, - required this.backgroundColor, - super.key, - }) : borderColor = Colors.transparent, - radius = 56.0, - shapeBorder = CircleBorder( - side: BorderSide(color: Colors.transparent, width: 1), - ); - - RFabOutlined.small({ - required this.icon, - required this.onPressed, - required this.backgroundColor, - required this.borderColor, - super.key, - }) : radius = 40.0, - shapeBorder = CircleBorder( - side: BorderSide(color: borderColor ?? Colors.transparent, width: 1), - ); - - RFabOutlined.smallNoBorder({ - required this.icon, - required this.onPressed, - required this.backgroundColor, - super.key, - }) : borderColor = Colors.transparent, - radius = 40.0, - shapeBorder = CircleBorder( - side: BorderSide(color: Colors.transparent, width: 1), - ); - - //endregion - - //region Add - RFabOutlined.smallAdd({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenNormal, - borderColor: AppColor.greenNormal, - icon: vecWidget2( - Assets.vecAddSvg, - - color: AppColor.greenNormal, - ), - ); - - RFabOutlined.smallAddNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenNormal, - icon: vecWidget( - Assets.vecAddSvg, - color: - onPressed != null - ? AppColor.greenNormal - : AppColor.greenNormal.disabledColor, - ), - ); - - RFabOutlined.add({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenNormal, - borderColor: AppColor.greenNormal, - icon: vecWidget( - Assets.vecAddSvg, - color: - onPressed != null - ? AppColor.greenNormal - : AppColor.greenNormal.disabledColor, - ), - ); - - RFabOutlined.addNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenNormal, - icon: vecWidget( - Assets.vecAddSvg, - color: - onPressed != null - ? AppColor.greenNormal - : AppColor.greenNormal.disabledColor, - ), - ); - - //endregion - - //region Edit - RFabOutlined.smallEdit({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecEditSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.smallEditNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecEditSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.edit({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecEditSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.editNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecEditSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - //endregion - - //region Delete - RFabOutlined.smallDelete({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.redNormal, - borderColor: AppColor.redNormal, - icon: vecWidget( - Assets.vecTrashSvg, - color: - onPressed != null - ? AppColor.redNormal - : AppColor.redNormal.disabledColor, - ), - ); - - RFabOutlined.smallDeleteNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.redNormal, - icon: vecWidget( - Assets.vecTrashSvg, - color: - onPressed != null - ? AppColor.redNormal - : AppColor.redNormal.disabledColor, - ), - ); - - RFabOutlined.delete({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.redNormal, - borderColor: AppColor.redNormal, - icon: vecWidget( - Assets.vecTrashSvg, - color: - onPressed != null - ? AppColor.redNormal - : AppColor.redNormal.disabledColor, - ), - ); - - RFabOutlined.deleteNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.redNormal, - icon: vecWidget( - Assets.vecTrashSvg, - color: - onPressed != null - ? AppColor.redNormal - : AppColor.redNormal.disabledColor, - ), - ); - - //endregion - - //region Action - RFabOutlined.smallAction({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecScanSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.smallActionNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecScanSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.action({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecScanSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.actionNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecScanSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - //endregion - - //region Filter - RFabOutlined.smallFilter({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecFilterSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.smallFilterNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecFilterSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.filter({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecFilterSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.filterNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecFilterSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - //endregion - - //region Download - RFabOutlined.smallDownload({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - RFabOutlined.smallDownloadNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - RFabOutlined.download({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - RFabOutlined.downloadNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - //endregion - - //region Excel - RFabOutlined.smallExcel({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenDark, - borderColor: AppColor.greenDark, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - RFabOutlined.smallExcelNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenDark, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - RFabOutlined.excel({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenDark, - borderColor: AppColor.greenDark, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - RFabOutlined.excelNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.greenDark, - icon: vecWidget( - Assets.vecDownloadSvg, - color: - onPressed != null - ? AppColor.greenDark - : AppColor.greenDark.disabledColor, - ), - ); - - //endregion - - //region Back - RFabOutlined.smallBack({VoidCallback? onPressed, Key? key}) - : this.small( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecArrowLeftSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.smallBackNoBorder({VoidCallback? onPressed, Key? key}) - : this.smallNoBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecArrowLeftSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.back({VoidCallback? onPressed, Key? key}) - : this( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - borderColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecArrowLeftSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - RFabOutlined.backNoBorder({VoidCallback? onPressed, Key? key}) - : this.noBorder( - key: key, - onPressed: onPressed, - backgroundColor: AppColor.blueNormal, - icon: vecWidget( - Assets.vecArrowLeftSvg, - color: - onPressed != null - ? AppColor.blueNormal - : AppColor.blueNormal.disabledColor, - ), - ); - - //endregion -} - -class _RFabOutlinedState extends State { - bool isOnPressed =false; - @override - Widget build(BuildContext context) { - return OutlinedButton( - onPressed:widget.onPressed , - style: ButtonStyle( - side: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.disabled)) { - return BorderSide( - color: - widget.borderColor?.disabledColor ?? - AppColor.blueNormal.disabledColor, - width: 2, - ); - } - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal, - width: 2, - ); - }), - backgroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return widget.backgroundColor; - } else if (states.contains(WidgetState.hovered)) { - return widget.backgroundColor.hoverColor ?? - AppColor.blueNormal.hoverColor; - } else if (states.contains(WidgetState.disabled)) { - return widget.backgroundColor.disabledColor ?? - AppColor.blueNormal.disabledColor; - } - return Colors.transparent; - }), - foregroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return Colors.white; - } else if (states.contains(WidgetState.disabled)) { - return widget.backgroundColor.disabledColor ?? - AppColor.blueNormal.disabledColor; - } - return widget.backgroundColor; - }), - - shape: WidgetStatePropertyAll(widget.shapeBorder), - fixedSize: WidgetStatePropertyAll( - Size(widget.radius ?? 56, widget.radius ?? 56), - ), - padding: WidgetStatePropertyAll(EdgeInsets.zero), - ), - child: widget.icon - ); - } -} - -*/ diff --git a/lib/presentation/widget/buttons/outline_elevated.dart b/lib/presentation/widget/buttons/outline_elevated.dart deleted file mode 100644 index db7b7bb..0000000 --- a/lib/presentation/widget/buttons/outline_elevated.dart +++ /dev/null @@ -1,101 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; -import 'package:rasadyar_app/presentation/utils/color_utils.dart'; - -class ROutlinedElevated extends StatefulWidget { - ROutlinedElevated({ - super.key, - required this.text, - required this.onPressed, - this.foregroundColor, - this.backgroundColor, - this.borderColor, - this.disabledBackgroundColor, - this.pressedBackgroundColor, - this.radius, - this.textStyle, - this.width = 150.0, - this.height = 56.0, - }); - - final String text; - final VoidCallback? onPressed; - final double width; - final double height; - Color? foregroundColor; - Color? backgroundColor; - - Color? borderColor; - - Color? disabledBackgroundColor; - Color? pressedBackgroundColor; - double? radius; - TextStyle? textStyle; - - @override - State createState() => _ROutlinedElevatedState(); -} - -class _ROutlinedElevatedState extends State { - @override - Widget build(BuildContext context) { - return OutlinedButton( - onPressed: widget.onPressed, - style: ButtonStyle( - side: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal, - width: 2, - ); - } else if (states.contains(WidgetState.disabled)) { - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal.withAlpha(38), - width: 2, - ); - } - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal, - width: 2, - ); - }), - backgroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - if (widget.pressedBackgroundColor != null) { - return widget.pressedBackgroundColor; - } - return widget.backgroundColor?.pressedColor ?? AppColor.blueNormal; - } else if (states.contains(WidgetState.hovered)) { - return widget.backgroundColor?.hoverColor ?? - AppColor.blueNormal.hoverColor; - } else if (states.contains(WidgetState.disabled)) { - return widget.backgroundColor?.disabledColor ?? Colors.transparent; - } - return widget.backgroundColor; - }), - foregroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return Colors.white; - } else if (states.contains(WidgetState.disabled)) { - return AppColor.blueNormal.withAlpha(38); - } - return AppColor.blueNormal; - }), - - shape: WidgetStatePropertyAll( - RoundedRectangleBorder( - borderRadius: BorderRadius.circular(widget.radius ?? 8), - ), - ), - fixedSize: WidgetStatePropertyAll(Size(widget.width, widget.height)), - padding: WidgetStatePropertyAll(EdgeInsets.zero), - textStyle: WidgetStatePropertyAll( - widget.textStyle ?? - AppFonts.yekan24.copyWith(color: AppColor.blueNormal), - ), - ), - child: Text(widget.text), - ); - } -} diff --git a/lib/presentation/widget/buttons/outline_elevated_icon.dart b/lib/presentation/widget/buttons/outline_elevated_icon.dart deleted file mode 100644 index 8753779..0000000 --- a/lib/presentation/widget/buttons/outline_elevated_icon.dart +++ /dev/null @@ -1,103 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; -import 'package:rasadyar_app/presentation/utils/color_utils.dart'; - -class ROutlinedElevatedIcon extends StatefulWidget { - ROutlinedElevatedIcon({ - super.key, - required this.text, - required this.onPressed, - this.foregroundColor, - this.backgroundColor, - this.borderColor, - this.disabledBackgroundColor, - this.pressedBackgroundColor, - this.radius, - this.textStyle, - this.width = 150.0, - this.height = 56.0, - }); - - final String text; - final VoidCallback? onPressed; - final double width; - final double height; - Color? foregroundColor; - Color? backgroundColor; - - Color? borderColor; - - Color? disabledBackgroundColor; - Color? pressedBackgroundColor; - double? radius; - TextStyle? textStyle; - Widget? icon; - - @override - State createState() => _ROutlinedElevatedStateIcon(); -} - -class _ROutlinedElevatedStateIcon extends State { - @override - Widget build(BuildContext context) { - return OutlinedButton.icon( - icon: widget.icon, - label: Text(widget.text), - onPressed: widget.onPressed, - style: ButtonStyle( - side: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal, - width: 2, - ); - } else if (states.contains(WidgetState.disabled)) { - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal.withAlpha(38), - width: 2, - ); - } - return BorderSide( - color: widget.borderColor ?? AppColor.blueNormal, - width: 2, - ); - }), - backgroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - if (widget.pressedBackgroundColor != null) { - return widget.pressedBackgroundColor; - } - return widget.backgroundColor?.pressedColor ?? AppColor.blueNormal; - } else if (states.contains(WidgetState.hovered)) { - return widget.backgroundColor?.hoverColor ?? - AppColor.blueNormal.hoverColor; - } else if (states.contains(WidgetState.disabled)) { - return widget.backgroundColor?.disabledColor ?? Colors.transparent; - } - return widget.backgroundColor; - }), - foregroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return Colors.white; - } else if (states.contains(WidgetState.disabled)) { - return AppColor.blueNormal.withAlpha(38); - } - return AppColor.blueNormal; - }), - - shape: WidgetStatePropertyAll( - RoundedRectangleBorder( - borderRadius: BorderRadius.circular(widget.radius ?? 8), - ), - ), - fixedSize: WidgetStatePropertyAll(Size(widget.width, widget.height)), - padding: WidgetStatePropertyAll(EdgeInsets.zero), - textStyle: WidgetStatePropertyAll( - widget.textStyle ?? - AppFonts.yekan24.copyWith(color: AppColor.blueNormal), - ), - ), - ); - } -} diff --git a/lib/presentation/widget/buttons/text_button.dart b/lib/presentation/widget/buttons/text_button.dart deleted file mode 100644 index ba67892..0000000 --- a/lib/presentation/widget/buttons/text_button.dart +++ /dev/null @@ -1,77 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; - -class RTextButton extends StatefulWidget { - RTextButton({ - super.key, - required this.text, - required this.onPressed, - this.foregroundColor, - this.backgroundColor, - this.borderColor, - this.disabledBackgroundColor, - this.radius, - this.textStyle, - this.width = 150.0, - this.height = 56.0, - }); - - final String text; - final VoidCallback? onPressed; - final double width; - final double height; - Color? foregroundColor; - Color? backgroundColor; - Color? borderColor; - - Color? disabledBackgroundColor; - double? radius; - TextStyle? textStyle; - - @override - State createState() => _RTextButtonState(); -} - -class _RTextButtonState extends State { - @override - Widget build(BuildContext context) { - return TextButton( - style: ButtonStyle( - side: WidgetStatePropertyAll(BorderSide.none), - backgroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return widget.backgroundColor ?? AppColor.blueNormal; - } else if (states.contains(WidgetState.hovered)) { - return widget.backgroundColor?.withAlpha(38) ?? AppColor.blueNormal.withAlpha(38); - } else if (states.contains(WidgetState.disabled)) { - return widget.disabledBackgroundColor ?? Colors.transparent; - } - return Colors.transparent; - }), - foregroundColor: WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return Colors.white; - } else if (states.contains(WidgetState.disabled)) { - return AppColor.blueNormal.withAlpha(38); - } - return AppColor.blueNormal; - }), - - shape: WidgetStatePropertyAll( - RoundedRectangleBorder( - borderRadius: BorderRadius.circular(widget.radius ?? 8), - ), - ), - fixedSize: WidgetStatePropertyAll(Size(widget.width, widget.height)), - padding: WidgetStatePropertyAll(EdgeInsets.zero), - textStyle: WidgetStatePropertyAll( - widget.textStyle ?? - AppFonts.yekan24.copyWith(color: AppColor.blueNormal), - ), - ), - onPressed:widget.onPressed, - child: Text(widget.text), - ); - } -} diff --git a/lib/presentation/widget/captcha/captcha_widget.dart b/lib/presentation/widget/captcha/captcha_widget.dart deleted file mode 100644 index 55b85f3..0000000 --- a/lib/presentation/widget/captcha/captcha_widget.dart +++ /dev/null @@ -1,266 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; - -class CaptchaController { - int? captchaCode; - TextEditingController textController = TextEditingController(); - GlobalKey formKey = GlobalKey(); - - late Function() refreshCaptcha; - - bool validate() { - if (formKey.currentState?.validate() == true) { - return true; - } - return false; - } - - String get enteredText => textController.text; - - bool isCorrect() { - return textController.text == captchaCode.toString(); - } - - void clear() { - textController.clear(); - } -} - -class RandomLinePainter extends CustomPainter { - final Random random = Random(); - final Paint linePaint; - final List points; - - RandomLinePainter({ - required this.points, - required Color lineColor, - double strokeWidth = 2.0, - }) : linePaint = - Paint() - ..color = lineColor - ..strokeWidth = strokeWidth - ..strokeCap = StrokeCap.round - ..style = PaintingStyle.stroke; - - @override - void paint(Canvas canvas, Size size) { - final path = Path(); - - if (points.isNotEmpty) { - path.moveTo(points[0].dx, points[0].dy); - - for (int i = 1; i < points.length; i++) { - path.lineTo(points[i].dx, points[i].dy); - } - - canvas.drawPath(path, linePaint); - } - } - - @override - bool shouldRepaint(RandomLinePainter oldDelegate) => true; -} - -class CaptchaWidget extends StatefulWidget { - final CaptchaController controller; - final bool autoValidateMode; - - const CaptchaWidget({ - required this.controller, - this.autoValidateMode = false, - super.key, - }); - - @override - _CaptchaWidgetState createState() => _CaptchaWidgetState(); -} - -class _CaptchaWidgetState extends State { - late List points; - late List points1; - late List points2; - bool isOnError = false; - - @override - void initState() { - super.initState(); - generateLines(); - getRandomSixDigitNumber(); - - // Set the refresh function in the controller - widget.controller.refreshCaptcha = () { - getRandomSixDigitNumber(); - generateLines(); - setState(() {}); - }; - } - - void generateLines() { - points = generateRandomLine(); - points1 = generateRandomLine(); - points2 = generateRandomLine(); - setState(() {}); - } - - List generateRandomLine() { - final random = Random(); - int pointCount = random.nextInt(10) + 5; - List points = []; - - double previousY = 0; - - for (int i = 0; i < pointCount; i++) { - double x = (i / (pointCount - 1)) * 135; - - if (i == 0) { - previousY = 24; - } else { - double change = (random.nextDouble() * 20) - 10; - previousY = max(5, min(43, previousY + change)); - } - - points.add(Offset(x, previousY)); - } - - return points; - } - - void getRandomSixDigitNumber() { - final random = Random(); - widget.controller.captchaCode = random.nextInt(900000) + 100000; - setState(() {}); - } - - @override - Widget build(BuildContext context) { - return Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Container( - width: 135, - height: 48, - decoration: BoxDecoration( - color: AppColor.whiteNormalHover, - border: Border.all(color: Colors.grey.shade300), - borderRadius: BorderRadius.circular(8), - ), - child: Stack( - alignment: AlignmentDirectional.center, - children: [ - CustomPaint( - painter: RandomLinePainter( - points: points, - lineColor: Colors.blue, - strokeWidth: 1.0, - ), - size: const Size(double.infinity, double.infinity), - ), - CustomPaint( - painter: RandomLinePainter( - points: points1, - lineColor: Colors.green, - strokeWidth: 1.0, - ), - size: const Size(double.infinity, double.infinity), - ), - CustomPaint( - painter: RandomLinePainter( - points: points2, - lineColor: Colors.red, - strokeWidth: 1.0, - ), - size: const Size(double.infinity, double.infinity), - ), - Text( - widget.controller.captchaCode.toString(), - style: AppFonts.yekan24, - ), - ], - ), - ), - const SizedBox(height: 20), - IconButton( - padding: EdgeInsets.zero, - onPressed: widget.controller.refreshCaptcha, - icon: Icon(CupertinoIcons.refresh, size: 16), - ), - Expanded( - child: Form( - key: widget.controller.formKey, - autovalidateMode: - widget.autoValidateMode - ? AutovalidateMode.onUserInteraction - : AutovalidateMode.disabled, - child: TextFormField( - controller: widget.controller.textController, - decoration: InputDecoration( - border: OutlineInputBorder( - borderRadius: BorderRadius.circular(8), - gapPadding: 11, - ), - labelText: 'کد امنیتی', - labelStyle: AppFonts.yekan13, - errorStyle: AppFonts.yekan10.copyWith( - color: AppColor.redNormal, - fontSize: 8, - ), - suffixIconConstraints: BoxConstraints( - maxHeight: 24, - minHeight: 24, - maxWidth: 24, - minWidth: 24, - ), - - suffix: - widget.controller.textController.text.trim().isNotEmpty - ? clearButton(() { - widget.controller.textController.clear(); - setState(() {}); - }) - : null, - counterText: '', - ), - keyboardType: TextInputType.numberWithOptions( - decimal: false, - signed: false, - ), - maxLines: 1, - maxLength: 6, - onChanged: (value) { - if (isOnError) { - isOnError = !isOnError; - widget.controller.formKey.currentState?.reset(); - widget.controller.textController.text = value; - } - setState(() {}); - }, - validator: (value) { - if (value == null || value.isEmpty) { - isOnError = true; - return 'کد امنیتی را وارد کنید'; - } - if (value != widget.controller.captchaCode.toString()) { - isOnError = true; - return '⚠️کد امنیتی وارد شده اشتباه است'; - } - return null; - }, - style: AppFonts.yekan13, - ), - ), - ), - ], - ); - } - - Widget clearButton(VoidCallback onTap) { - return GestureDetector( - onTap: onTap, - child: Icon(CupertinoIcons.multiply_circle, size: 18), - ); - } -} diff --git a/lib/presentation/widget/inputs/r_input.dart b/lib/presentation/widget/inputs/r_input.dart deleted file mode 100644 index 07edc2b..0000000 --- a/lib/presentation/widget/inputs/r_input.dart +++ /dev/null @@ -1,216 +0,0 @@ - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; - -@immutable -class RTextField extends StatefulWidget { - RTextField( - {super.key, - this.maxLines, - this.maxLength, - this.hintText, - this.padding, - this.onChanged, - this.onSubmitted, - this.keyboardType, - this.showCounter = false, - this.isDense, - this.initText, - this.isForNumber = false, - this.style, - this.hintStyle, - this.suffixIcon, - this.prefixIcon, - this.validator, - this.readonly = false, - this.boxConstraints, - this.minLines, - this.radius, - this.filled, - this.enabled, - this.errorStyle, - this.labelStyle, - this.label}) { - filled = filled ?? false; - obscure = false; - _inputBorder = OutlineInputBorder( - borderSide: BorderSide(color: Colors.grey.shade300), - borderRadius: BorderRadius.circular(radius ?? 16)); - } - - RTextField.noBorder( - {super.key, - this.maxLines, - this.maxLength, - this.hintText, - this.padding, - this.onChanged, - this.onSubmitted, - this.keyboardType, - this.showCounter = false, - this.isDense, - this.initText, - this.style, - this.hintStyle, - this.suffixIcon, - this.radius, - this.validator, - this.boxConstraints, - this.minLines, - this.isForNumber = false, - this.readonly = false, - this.label, - this.filled, - this.errorStyle, - this.labelStyle, - this.enabled}) { - _inputBorder = OutlineInputBorder( - borderSide: BorderSide.none, - borderRadius: BorderRadius.circular(radius ?? 16)); - obscure = false; - filled = filled ?? true; - } - - RTextField.password( - {super.key, - this.maxLines = 1, - this.maxLength, - this.hintText, - this.padding, - this.onChanged, - this.onSubmitted, - this.keyboardType, - this.showCounter = false, - this.isDense, - this.initText, - this.style, - this.hintStyle, - this.suffixIcon, - this.prefixIcon, - this.radius, - this.validator, - this.boxConstraints, - this.minLines, - this.isForNumber = false, - this.readonly = false, - this.label, - this.filled, - this.errorStyle, - this.labelStyle, - this.enabled}) { - _inputBorder = OutlineInputBorder( - borderSide: BorderSide.none, - borderRadius: BorderRadius.circular(radius ?? 16)); - filled = filled ?? true; - obscure = true; - _isPassword = true; - prefixIcon = prefixIcon ?? const Icon(CupertinoIcons.person); - } - - final int? maxLines; - final int? minLines; - final int? maxLength; - final String? hintText; - final String? label; - final EdgeInsets? padding; - final TextStyle? style; - final TextStyle? errorStyle; - final TextStyle? hintStyle; - final TextStyle? labelStyle; - final bool showCounter; - final bool? isDense; - final bool? isForNumber; - final bool readonly; - bool? obscure; - final bool? enabled; - final double? radius; - final TextInputType? keyboardType; - final Function(String)? onChanged; - final Function(String)? onSubmitted; - final FormFieldValidator? validator; - final String? initText; - Widget? suffixIcon; - Widget? prefixIcon; - bool? filled; - bool _isPassword = false; - - final BoxConstraints? boxConstraints; - late final InputBorder? _inputBorder; - - @override - State createState() => _RTextFieldState(); -} - -class _RTextFieldState extends State { - final TextEditingController _controller = TextEditingController(); - bool? obscure; - - @override - void initState() { - super.initState(); - if (widget.initText != null) { - _controller.text = widget.initText!; - } - obscure = widget.obscure; - } - - @override - void didUpdateWidget(covariant RTextField oldWidget) { - super.didUpdateWidget(oldWidget); - if (widget.initText != oldWidget.initText) { - _controller.text = widget.initText ?? ''; - } - } - - @override - Widget build(BuildContext context) { - return Padding( - padding: widget.padding ?? const EdgeInsets.symmetric(vertical: 6.0), - child: TextFormField( - controller: _controller, - readOnly: widget.readonly, - minLines: widget.minLines, - maxLines: widget.maxLines, - onChanged: widget.onChanged, - validator: widget.validator, - enabled: widget.enabled, - obscureText: obscure ?? false, - onTapOutside: (event) { - FocusScope.of(context).unfocus(); - }, - onFieldSubmitted: widget.onSubmitted, - maxLength: widget.maxLength, - textDirection: TextDirection.rtl, - style: widget.style , - keyboardType: widget.keyboardType, - decoration: InputDecoration( - errorStyle: widget.errorStyle, - errorMaxLines: 1, - isDense: widget.isDense, - suffixIcon: widget.suffixIcon ?? - (widget._isPassword - ? IconButton( - onPressed: () { - setState(() { - obscure = !obscure!; - }); - }, - icon: Icon(!obscure! - ? CupertinoIcons.eye_slash - : CupertinoIcons.eye)) - : null), - suffixIconConstraints: widget.boxConstraints, - prefixIcon: widget.prefixIcon, - prefixIconConstraints: widget.boxConstraints, - hintText: widget.hintText, - labelText: widget.label, - labelStyle: widget.labelStyle, - filled: widget.filled, - counter: widget.showCounter ? null : const SizedBox(), - hintStyle: widget.hintStyle, - enabledBorder: widget._inputBorder, - focusedBorder: widget._inputBorder, - border: widget._inputBorder), - )); - } -} \ No newline at end of file diff --git a/lib/presentation/widget/pagination/pagination_from_until.dart b/lib/presentation/widget/pagination/pagination_from_until.dart deleted file mode 100644 index 88d7429..0000000 --- a/lib/presentation/widget/pagination/pagination_from_until.dart +++ /dev/null @@ -1,255 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; - -class PaginationFromUntil extends StatefulWidget { - const PaginationFromUntil({super.key}); - - @override - State createState() => _PaginationFromUntilState(); -} - -class _PaginationFromUntilState extends State { - int current = 1; - int total = 10; - - @override - Widget build(BuildContext context) { - return Container( - width: 164, - height: 47, - clipBehavior: Clip.antiAlias, - decoration: ShapeDecoration( - color: const Color(0xFFEAEFFF), - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(50)), - ), - child: Row( - children: [ - FloatingActionButton.small( - onPressed: () { - if(current>1){ - setState(() { - current--; - }); - } - - }, - shape: CircleBorder(), - elevation: 0, - backgroundColor: Colors.white, - child: Icon(CupertinoIcons.arrow_left, color: AppColor.blueNormal), - ), - Expanded( - child: Text( - '$current از $total', - textAlign: TextAlign.center, - textDirection: TextDirection.rtl, - style: AppFonts.yekan16.copyWith( - color: AppColor.blueNormal, - ), - ), - ), - FloatingActionButton.small( - - onPressed:() { - if (current < total) { - setState(() { - current++; - }); - } - }, - shape: CircleBorder(), - elevation: 0, - backgroundColor: AppColor.blueNormal, - child: Icon(CupertinoIcons.arrow_right, color: Colors.white), - ), - ], - ), - ); - } - - Stack buildStack() { - return Stack( - children: [ - Positioned( - left: 4, - top: 4, - child: Container( - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 40, - top: 40, - child: Container( - transform: - Matrix4.identity() - ..translate(0.0, 0.0) - ..rotateZ(-3.14), - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 0, - top: 0, - child: Container( - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 0, - top: 0, - child: Container( - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 0, - top: 0, - child: Container( - width: 40, - height: 40, - clipBehavior: Clip.antiAlias, - decoration: ShapeDecoration( - color: - Colors.white /* Secondary */, - shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, - color: - Colors - .white /* Secondary */, - ), - borderRadius: - BorderRadius.circular(50), - ), - ), - child: Stack(), - ), - ), - ], - ), - ), - ), - ], - ), - ), - ), - ], - ), - ), - ), - Positioned( - left: 8, - top: 8, - child: Container(width: 24, height: 24, child: Stack()), - ), - ], - ), - ), - ), - Positioned( - left: 120, - top: 3, - child: Container( - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 40, - top: 40, - child: Container( - transform: - Matrix4.identity() - ..translate(0.0, 0.0) - ..rotateZ(-3.14), - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 0, - top: 0, - child: Container( - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 0, - top: 0, - child: Container( - width: 40, - height: 40, - child: Stack( - children: [ - Positioned( - left: 0, - top: 0, - child: Container( - width: 40, - height: 40, - clipBehavior: Clip.antiAlias, - decoration: ShapeDecoration( - color: const Color( - 0xFF2D5FFF, - ) /* Primary */, - shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, - color: const Color( - 0xFF2D5FFF, - ) /* Primary */, - ), - borderRadius: - BorderRadius.circular(50), - ), - ), - child: Stack(), - ), - ), - ], - ), - ), - ), - ], - ), - ), - ), - ], - ), - ), - ), - Positioned( - left: 8, - top: 8, - child: Container(width: 24, height: 24, child: Stack()), - ), - ], - ), - ), - ), - Positioned( - left: 63, - top: 9, - child: Text( - '1 از 17', - style: TextStyle( - color: const Color(0xFF2D5FFF) /* Primary */, - fontSize: 16, - fontFamily: 'IRANYekanFN', - fontWeight: FontWeight.w400, - height: 1.75, - ), - ), - ), - ], - ); - } -} diff --git a/lib/presentation/widget/pagination/show_more.dart b/lib/presentation/widget/pagination/show_more.dart deleted file mode 100644 index bdaf713..0000000 --- a/lib/presentation/widget/pagination/show_more.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; - -class RShowMore extends StatefulWidget { - const RShowMore({super.key}); - - @override - State createState() => _RShowMoreState(); -} - -class _RShowMoreState extends State - with SingleTickerProviderStateMixin { - bool _toggled = false; - late final AnimationController _controller; - late final Animation _iconRotation; - - @override - void initState() { - super.initState(); - - _controller = AnimationController( - vsync: this, - duration: const Duration(milliseconds: 500), - ); - _iconRotation = Tween( - begin: 0, - end: 0.50, - ) // 90 degrees (quarter turn) - .animate(CurvedAnimation(parent: _controller, curve: Curves.easeInOut)); - } - - void _toggle() { - setState(() => _toggled = !_toggled); - _toggled ? _controller.forward() : _controller.reverse(); - } - - @override - void dispose() { - _controller.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: _toggle, - behavior: HitTestBehavior.opaque, - child: Row( - mainAxisSize: MainAxisSize.min, - spacing: 8, - children: [ - RotationTransition( - turns: _iconRotation, - child: const Icon(CupertinoIcons.chevron_down, size: 12,color:AppColor.blueNormal ,), - ), - - AnimatedSwitcher( - duration: const Duration(milliseconds: 500), - transitionBuilder: - (child, animation) => - FadeTransition(opacity: animation, child: child), - child: Text( - _toggled ? 'کمتر' : 'مشاهده بیشتر', - key: ValueKey(_toggled), - style: AppFonts.yekan10.copyWith(color: AppColor.blueNormal), - ), - ), - SizedBox(height: 50,) - ], - - - - ), - ); - } -} diff --git a/lib/presentation/widget/tabs/new_tab.dart b/lib/presentation/widget/tabs/new_tab.dart deleted file mode 100644 index c6e73c4..0000000 --- a/lib/presentation/widget/tabs/new_tab.dart +++ /dev/null @@ -1,784 +0,0 @@ -// Copyright 2014 The Flutter Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -/// @docImport 'switch.dart'; -library; - -import 'dart:collection'; -import 'dart:math' as math; - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/rendering.dart'; - -// Minimum padding from edges of the segmented control to edges of -// encompassing widget. -const EdgeInsetsGeometry _kHorizontalItemPadding = EdgeInsets.symmetric( - horizontal: 16.0, -); - -// Minimum height of the segmented control. -const double _kMinSegmentedControlHeight = 28.0; - -// The default color used for the text of the disabled segment. -const Color _kDisableTextColor = Color.fromARGB(115, 122, 122, 122); - -// The duration of the fade animation used to transition when a new widget -// is selected. -const Duration _kFadeDuration = Duration(milliseconds: 165); - -class NewCupertinoSegmentedControl extends StatefulWidget { - /// Creates an iOS-style segmented control bar. - /// - /// The [children] argument must be an ordered [Map] such as a - /// [LinkedHashMap]. Further, the length of the [children] list must be - /// greater than one. - /// - /// Each widget value in the map of [children] must have an associated key - /// that uniquely identifies this widget. This key is what will be returned - /// in the [onValueChanged] callback when a new value from the [children] map - /// is selected. - /// - /// The [groupValue] is the currently selected value for the segmented control. - /// If no [groupValue] is provided, or the [groupValue] is null, no widget will - /// appear as selected. The [groupValue] must be either null or one of the keys - /// in the [children] map. - NewCupertinoSegmentedControl({ - super.key, - required this.children, - required this.onValueChanged, - this.groupValue, - this.unselectedColor, - this.selectedColor, - this.borderColor, - this.pressedColor, - this.disabledColor, - this.disabledTextColor, - this.padding, - this.disabledChildren = const {}, - }) : assert(children.length >= 2), - assert( - groupValue == null || - children.keys.any((T child) => child == groupValue), - 'The groupValue must be either null or one of the keys in the children map.', - ); - - /// The identifying keys and corresponding widget values in the - /// segmented control. - /// - /// The map must have more than one entry. - /// This attribute must be an ordered [Map] such as a [LinkedHashMap]. - final Map children; - - /// The identifier of the widget that is currently selected. - /// - /// This must be one of the keys in the [Map] of [children]. - /// If this attribute is null, no widget will be initially selected. - final T? groupValue; - - /// The callback that is called when a new option is tapped. - /// - /// The segmented control passes the newly selected widget's associated key - /// to the callback but does not actually change state until the parent - /// widget rebuilds the segmented control with the new [groupValue]. - final ValueChanged onValueChanged; - - /// The color used to fill the backgrounds of unselected widgets and as the - /// text color of the selected widget. - /// - /// Defaults to [CupertinoTheme]'s `primaryContrastingColor` if null. - final Color? unselectedColor; - - /// The color used to fill the background of the selected widget and as the text - /// color of unselected widgets. - /// - /// Defaults to [CupertinoTheme]'s `primaryColor` if null. - final Color? selectedColor; - - /// The color used as the border around each widget. - /// - /// Defaults to [CupertinoTheme]'s `primaryColor` if null. - final Color? borderColor; - - /// The color used to fill the background of the widget the user is - /// temporarily interacting with through a long press or drag. - /// - /// Defaults to the selectedColor at 20% opacity if null. - final Color? pressedColor; - - /// The color used to fill the background of the segment when it is disabled. - /// - /// If null, this color will be 50% opacity of the [selectedColor] when - /// the segment is selected. If the segment is unselected, this color will be - /// set to [unselectedColor]. - final Color? disabledColor; - - /// The color used for the text of the segment when it is disabled. - final Color? disabledTextColor; - - /// The CupertinoSegmentedControl will be placed inside this padding. - /// - /// Defaults to EdgeInsets.symmetric(horizontal: 16.0) - final EdgeInsetsGeometry? padding; - - /// The set of identifying keys that correspond to the segments that should be disabled. - /// - /// All segments are enabled by default. - final Set disabledChildren; - - @override - State> createState() => - _SegmentedControlState(); -} - -class _SegmentedControlState - extends State> - with TickerProviderStateMixin> { - T? _pressedKey; - - final List _selectionControllers = - []; - final List _childTweens = []; - - late ColorTween _forwardBackgroundColorTween; - late ColorTween _reverseBackgroundColorTween; - late ColorTween _textColorTween; - - Color? _selectedColor; - Color? _unselectedColor; - Color? _borderColor; - Color? _pressedColor; - Color? _selectedDisabledColor; - Color? _unselectedDisabledColor; - Color? _disabledTextColor; - - AnimationController createAnimationController() { - return AnimationController(duration: _kFadeDuration, vsync: this) - ..addListener(() { - setState(() { - // State of background/text colors has changed - }); - }); - } - - bool _updateColors() { - assert(mounted, 'This should only be called after didUpdateDependencies'); - bool changed = false; - final Color disabledTextColor = - widget.disabledTextColor ?? _kDisableTextColor; - if (_disabledTextColor != disabledTextColor) { - changed = true; - _disabledTextColor = disabledTextColor; - } - final Color selectedColor = - widget.selectedColor ?? CupertinoTheme.of(context).primaryColor; - if (_selectedColor != selectedColor) { - changed = true; - _selectedColor = selectedColor; - } - final Color unselectedColor = - widget.unselectedColor ?? - CupertinoTheme.of(context).primaryContrastingColor; - if (_unselectedColor != unselectedColor) { - changed = true; - _unselectedColor = unselectedColor; - } - final Color selectedDisabledColor = - widget.disabledColor ?? selectedColor.withOpacity(0.5); - final Color unselectedDisabledColor = - widget.disabledColor ?? unselectedColor; - if (_selectedDisabledColor != selectedDisabledColor || - _unselectedDisabledColor != unselectedDisabledColor) { - changed = true; - _selectedDisabledColor = selectedDisabledColor; - _unselectedDisabledColor = unselectedDisabledColor; - } - final Color borderColor = - widget.borderColor ?? CupertinoTheme.of(context).primaryColor; - if (_borderColor != borderColor) { - changed = true; - _borderColor = borderColor; - } - final Color pressedColor = - widget.pressedColor ?? - CupertinoTheme.of(context).primaryColor.withOpacity(0.2); - if (_pressedColor != pressedColor) { - changed = true; - _pressedColor = pressedColor; - } - - _forwardBackgroundColorTween = ColorTween( - begin: _pressedColor, - end: _selectedColor, - ); - _reverseBackgroundColorTween = ColorTween( - begin: _unselectedColor, - end: _selectedColor, - ); - _textColorTween = ColorTween(begin: _selectedColor, end: _unselectedColor); - return changed; - } - - void _updateAnimationControllers() { - assert(mounted, 'This should only be called after didUpdateDependencies'); - for (final AnimationController controller in _selectionControllers) { - controller.dispose(); - } - _selectionControllers.clear(); - _childTweens.clear(); - - for (final T key in widget.children.keys) { - final AnimationController animationController = - createAnimationController(); - if (widget.groupValue == key) { - _childTweens.add(_reverseBackgroundColorTween); - animationController.value = 1.0; - } else { - _childTweens.add(_forwardBackgroundColorTween); - } - _selectionControllers.add(animationController); - } - } - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - - if (_updateColors()) { - _updateAnimationControllers(); - } - } - - @override - void didUpdateWidget(NewCupertinoSegmentedControl oldWidget) { - super.didUpdateWidget(oldWidget); - - if (_updateColors() || - oldWidget.children.length != widget.children.length) { - _updateAnimationControllers(); - } - - if (oldWidget.groupValue != widget.groupValue) { - int index = 0; - for (final T key in widget.children.keys) { - if (widget.groupValue == key) { - _childTweens[index] = _forwardBackgroundColorTween; - _selectionControllers[index].forward(); - } else { - _childTweens[index] = _reverseBackgroundColorTween; - _selectionControllers[index].reverse(); - } - index += 1; - } - } - } - - @override - void dispose() { - for (final AnimationController animationController - in _selectionControllers) { - animationController.dispose(); - } - super.dispose(); - } - - void _onTapDown(T currentKey) { - if (_pressedKey == null && currentKey != widget.groupValue) { - setState(() { - _pressedKey = currentKey; - }); - } - } - - void _onTapCancel() { - setState(() { - _pressedKey = null; - }); - } - - void _onTap(T currentKey) { - if (currentKey != _pressedKey) { - return; - } - if (!widget.disabledChildren.contains(currentKey)) { - if (currentKey != widget.groupValue) { - widget.onValueChanged(currentKey); - } - } - _pressedKey = null; - } - - Color? getTextColor(int index, T currentKey) { - if (widget.disabledChildren.contains(currentKey)) { - return _disabledTextColor; - } - if (_selectionControllers[index].isAnimating) { - return _textColorTween.evaluate(_selectionControllers[index]); - } - if (widget.groupValue == currentKey) { - return _unselectedColor; - } - return _selectedColor; - } - - Color? getBackgroundColor(int index, T currentKey) { - if (widget.disabledChildren.contains(currentKey)) { - return widget.groupValue == currentKey - ? _selectedDisabledColor - : _unselectedDisabledColor; - } - if (_selectionControllers[index].isAnimating) { - return _childTweens[index].evaluate(_selectionControllers[index]); - } - if (widget.groupValue == currentKey) { - return _selectedColor; - } - if (_pressedKey == currentKey) { - return _pressedColor; - } - return _unselectedColor; - } - - @override - Widget build(BuildContext context) { - final List gestureChildren = []; - final List backgroundColors = []; - int index = 0; - int? selectedIndex; - int? pressedIndex; - for (final T currentKey in widget.children.keys) { - selectedIndex = (widget.groupValue == currentKey) ? index : selectedIndex; - pressedIndex = (_pressedKey == currentKey) ? index : pressedIndex; - - final TextStyle textStyle = DefaultTextStyle.of( - context, - ).style.copyWith(color: getTextColor(index, currentKey)); - final IconThemeData iconTheme = IconThemeData( - color: getTextColor(index, currentKey), - ); - - Widget child = Center(child: widget.children[currentKey]); - - child = MouseRegion( - cursor: kIsWeb ? SystemMouseCursors.click : MouseCursor.defer, - child: GestureDetector( - behavior: HitTestBehavior.opaque, - onTapDown: - widget.disabledChildren.contains(currentKey) - ? null - : (TapDownDetails event) { - _onTapDown(currentKey); - }, - onTapCancel: - widget.disabledChildren.contains(currentKey) - ? null - : _onTapCancel, - onTap: () { - _onTap(currentKey); - }, - child: IconTheme( - data: iconTheme, - child: DefaultTextStyle( - style: textStyle, - child: Semantics( - button: true, - inMutuallyExclusiveGroup: true, - selected: widget.groupValue == currentKey, - child: child, - ), - ), - ), - ), - ); - - backgroundColors.add(getBackgroundColor(index, currentKey)!); - gestureChildren.add(child); - index += 1; - } - - final Widget box = _SegmentedControlRenderWidget( - selectedIndex: selectedIndex, - pressedIndex: pressedIndex, - backgroundColors: backgroundColors, - borderColor: _borderColor!, - children: gestureChildren, - ); - - return Padding( - padding: widget.padding ?? _kHorizontalItemPadding, - child: UnconstrainedBox(constrainedAxis: Axis.horizontal, child: box), - ); - } -} - -class _SegmentedControlRenderWidget extends MultiChildRenderObjectWidget { - const _SegmentedControlRenderWidget({ - super.key, - super.children, - required this.selectedIndex, - required this.pressedIndex, - required this.backgroundColors, - required this.borderColor, - }); - - final int? selectedIndex; - final int? pressedIndex; - final List backgroundColors; - final Color borderColor; - - @override - RenderObject createRenderObject(BuildContext context) { - return _RenderSegmentedControl( - textDirection: Directionality.of(context), - selectedIndex: selectedIndex, - pressedIndex: pressedIndex, - backgroundColors: backgroundColors, - borderColor: borderColor, - ); - } - - @override - void updateRenderObject( - BuildContext context, - _RenderSegmentedControl renderObject, - ) { - renderObject - ..textDirection = Directionality.of(context) - ..selectedIndex = selectedIndex - ..pressedIndex = pressedIndex - ..backgroundColors = backgroundColors - ..borderColor = borderColor; - } -} - -class _SegmentedControlContainerBoxParentData - extends ContainerBoxParentData { - RRect? surroundingRect; -} - -typedef _NextChild = RenderBox? Function(RenderBox child); - -class _RenderSegmentedControl extends RenderBox - with - ContainerRenderObjectMixin< - RenderBox, - ContainerBoxParentData - >, - RenderBoxContainerDefaultsMixin< - RenderBox, - ContainerBoxParentData - > { - _RenderSegmentedControl({ - required int? selectedIndex, - required int? pressedIndex, - required TextDirection textDirection, - required List backgroundColors, - required Color borderColor, - }) : _textDirection = textDirection, - _selectedIndex = selectedIndex, - _pressedIndex = pressedIndex, - _backgroundColors = backgroundColors, - _borderColor = borderColor; - - int? get selectedIndex => _selectedIndex; - int? _selectedIndex; - - set selectedIndex(int? value) { - if (_selectedIndex == value) { - return; - } - _selectedIndex = value; - markNeedsPaint(); - } - - int? get pressedIndex => _pressedIndex; - int? _pressedIndex; - - set pressedIndex(int? value) { - if (_pressedIndex == value) { - return; - } - _pressedIndex = value; - markNeedsPaint(); - } - - TextDirection get textDirection => _textDirection; - TextDirection _textDirection; - - set textDirection(TextDirection value) { - if (_textDirection == value) { - return; - } - _textDirection = value; - markNeedsLayout(); - } - - List get backgroundColors => _backgroundColors; - List _backgroundColors; - - set backgroundColors(List value) { - if (_backgroundColors == value) { - return; - } - _backgroundColors = value; - markNeedsPaint(); - } - - Color get borderColor => _borderColor; - Color _borderColor; - - set borderColor(Color value) { - if (_borderColor == value) { - return; - } - _borderColor = value; - markNeedsPaint(); - } - - @override - double computeMinIntrinsicWidth(double height) { - RenderBox? child = firstChild; - double minWidth = 0.0; - while (child != null) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - final double childWidth = child.getMinIntrinsicWidth(height); - minWidth = math.max(minWidth, childWidth); - child = childParentData.nextSibling; - } - return minWidth * childCount; - } - - @override - double computeMaxIntrinsicWidth(double height) { - RenderBox? child = firstChild; - double maxWidth = 0.0; - while (child != null) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - final double childWidth = child.getMaxIntrinsicWidth(height); - maxWidth = math.max(maxWidth, childWidth); - child = childParentData.nextSibling; - } - return maxWidth * childCount; - } - - @override - double computeMinIntrinsicHeight(double width) { - RenderBox? child = firstChild; - double minHeight = 0.0; - while (child != null) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - final double childHeight = child.getMinIntrinsicHeight(width); - minHeight = math.max(minHeight, childHeight); - child = childParentData.nextSibling; - } - return minHeight; - } - - @override - double computeMaxIntrinsicHeight(double width) { - RenderBox? child = firstChild; - double maxHeight = 0.0; - while (child != null) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - final double childHeight = child.getMaxIntrinsicHeight(width); - maxHeight = math.max(maxHeight, childHeight); - child = childParentData.nextSibling; - } - return maxHeight; - } - - @override - double? computeDistanceToActualBaseline(TextBaseline baseline) { - return defaultComputeDistanceToHighestActualBaseline(baseline); - } - - @override - void setupParentData(RenderBox child) { - if (child.parentData is! _SegmentedControlContainerBoxParentData) { - child.parentData = _SegmentedControlContainerBoxParentData(); - } - } - - void _layoutRects( - _NextChild nextChild, - RenderBox? leftChild, - RenderBox? rightChild, - ) { - RenderBox? child = leftChild; - double start = 0.0; - while (child != null) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - final Offset childOffset = Offset(start, 0.0); - childParentData.offset = childOffset; - final Rect childRect = Rect.fromLTWH( - start, - 0.0, - child.size.width, - child.size.height, - ); - final RRect rChildRect; - if (child == leftChild) { - rChildRect = RRect.fromRectAndCorners( - childRect, - topLeft: const Radius.circular(10.0), - bottomLeft: const Radius.circular(10.0), - ); - } else if (child == rightChild) { - rChildRect = RRect.fromRectAndCorners( - childRect, - topRight: const Radius.circular(10.0), - bottomRight: const Radius.circular(10.0), - ); - } else { - rChildRect = RRect.fromRectAndCorners(childRect); - } - childParentData.surroundingRect = rChildRect; - start += child.size.width; - child = nextChild(child); - } - } - - Size _calculateChildSize(BoxConstraints constraints) { - double maxHeight = _kMinSegmentedControlHeight; - double childWidth = constraints.minWidth / childCount; - RenderBox? child = firstChild; - while (child != null) { - childWidth = math.max( - childWidth, - child.getMaxIntrinsicWidth(double.infinity), - ); - child = childAfter(child); - } - childWidth = math.min(childWidth, constraints.maxWidth / childCount); - child = firstChild; - while (child != null) { - final double boxHeight = child.getMaxIntrinsicHeight(childWidth); - maxHeight = math.max(maxHeight, boxHeight); - child = childAfter(child); - } - return Size(childWidth, maxHeight); - } - - Size _computeOverallSizeFromChildSize(Size childSize) { - return constraints.constrain( - Size(childSize.width * childCount, childSize.height), - ); - } - - @override - double? computeDryBaseline( - covariant BoxConstraints constraints, - TextBaseline baseline, - ) { - final Size childSize = _calculateChildSize(constraints); - final BoxConstraints childConstraints = BoxConstraints.tight(childSize); - - BaselineOffset baselineOffset = BaselineOffset.noBaseline; - for ( - RenderBox? child = firstChild; - child != null; - child = childAfter(child) - ) { - baselineOffset = baselineOffset.minOf( - BaselineOffset(child.getDryBaseline(childConstraints, baseline)), - ); - } - return baselineOffset.offset; - } - - @override - Size computeDryLayout(BoxConstraints constraints) { - final Size childSize = _calculateChildSize(constraints); - return _computeOverallSizeFromChildSize(childSize); - } - - @override - void performLayout() { - final BoxConstraints constraints = this.constraints; - final Size childSize = _calculateChildSize(constraints); - - final BoxConstraints childConstraints = BoxConstraints.tightFor( - width: childSize.width, - height: childSize.height, - ); - - RenderBox? child = firstChild; - while (child != null) { - child.layout(childConstraints, parentUsesSize: true); - child = childAfter(child); - } - - switch (textDirection) { - case TextDirection.rtl: - _layoutRects(childBefore, lastChild, firstChild); - case TextDirection.ltr: - _layoutRects(childAfter, firstChild, lastChild); - } - - size = _computeOverallSizeFromChildSize(childSize); - } - - @override - void paint(PaintingContext context, Offset offset) { - RenderBox? child = firstChild; - int index = 0; - while (child != null) { - _paintChild(context, offset, child, index); - child = childAfter(child); - index += 1; - } - } - - void _paintChild( - PaintingContext context, - Offset offset, - RenderBox child, - int childIndex, - ) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - - context.canvas.drawRRect( - childParentData.surroundingRect!.shift(offset), - Paint() - ..color = backgroundColors[childIndex] - ..style = PaintingStyle.fill, - ); - context.canvas.drawRRect( - childParentData.surroundingRect!.shift(offset), - Paint() - ..color = borderColor - ..strokeWidth = 1.0 - ..style = PaintingStyle.stroke, - ); - - context.paintChild(child, childParentData.offset + offset); - } - - @override - bool hitTestChildren(BoxHitTestResult result, {required Offset position}) { - RenderBox? child = lastChild; - while (child != null) { - final _SegmentedControlContainerBoxParentData childParentData = - child.parentData! as _SegmentedControlContainerBoxParentData; - if (childParentData.surroundingRect!.contains(position)) { - return result.addWithPaintOffset( - offset: childParentData.offset, - position: position, - hitTest: (BoxHitTestResult result, Offset localOffset) { - assert(localOffset == position - childParentData.offset); - return child!.hitTest(result, position: localOffset); - }, - ); - } - child = childParentData.previousSibling; - } - return false; - } -} diff --git a/lib/presentation/widget/tabs/tab.dart b/lib/presentation/widget/tabs/tab.dart deleted file mode 100644 index 4b961ad..0000000 --- a/lib/presentation/widget/tabs/tab.dart +++ /dev/null @@ -1,115 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:rasadyar_app/presentation/common/app_fonts.dart'; - -import 'new_tab.dart'; - -class CupertinoSegmentedControlDemo extends StatefulWidget { - const CupertinoSegmentedControlDemo({super.key}); - - @override - State createState() => - _CupertinoSegmentedControlDemoState(); -} - -class _CupertinoSegmentedControlDemoState - extends State { - int _selectedSegment = 0; - - // The data for the segments - final Map _segments = const { - 0: Text('Segment 1'), - 1: Text('Segment 2'), - 2: Text('Segment 3'), - }; - - @override - Widget build(BuildContext context) { - return SafeArea( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - CupertinoSlidingSegmentedControl( - children: _segments, - groupValue: _selectedSegment, - - onValueChanged: (int? value) { - setState(() { - _selectedSegment = value!; - }); - }, - ), - const SizedBox(height: 20), - Text( - 'Selected Segment: ${_selectedSegment + 1}', - style: const TextStyle(fontSize: 24), - ), - ], - ), - ); - } -} - -class CupertinoSegmentedControlDemo2 extends StatefulWidget { - const CupertinoSegmentedControlDemo2({super.key}); - - @override - State createState() => - _CupertinoSegmentedControlDemoState2(); -} - -class _CupertinoSegmentedControlDemoState2 - extends State { - int _selectedSegment = 0; - - // The data for the segments - final Map _segments = { - 0:Container( - padding: EdgeInsets.all(10), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(50) - ), - child: Text('لاشه', style: AppFonts.yekan13), - ), - 1: Container( - padding: EdgeInsets.all(10), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(50) - ), - child: Text('زنده', style: AppFonts.yekan13), - ), - }; - - @override - Widget build(BuildContext context) { - return SafeArea( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - NewCupertinoSegmentedControl( - padding: EdgeInsetsDirectional.symmetric( - horizontal: 20, - vertical: 10, - ), - children: _segments, - groupValue: _selectedSegment, - selectedColor: AppColor.blueNormal, - unselectedColor: Colors.white, - borderColor: Colors.grey.shade300, - onValueChanged: (int value) { - setState(() { - _selectedSegment = value; - }); - }, - ), - const SizedBox(height: 20), - Text( - 'Selected Segment: ${_selectedSegment + 1}', - style: const TextStyle(fontSize: 24), - ), - ], - ), - ); - } -} diff --git a/lib/presentation/widget/vec_widget.dart b/lib/presentation/widget/vec_widget.dart deleted file mode 100644 index a85e527..0000000 --- a/lib/presentation/widget/vec_widget.dart +++ /dev/null @@ -1,133 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:rasadyar_app/presentation/common/app_color.dart'; -import 'package:vector_graphics/vector_graphics.dart'; - -SvgPicture vecWidget( - String assets, { - double? width, - double? height, - BoxFit? fit, - Color? color, -}) { - return SvgPicture( - AssetBytesLoader(assets), - width: width, - height: height, - fit: fit ?? BoxFit.contain, - colorFilter: - color != null ? ColorFilter.mode(color, BlendMode.srcIn) : null, - ); -} - -SvgPicture svgWidget( - String assets, { - double? width, - double? height, - BoxFit? fit, - Color? color, - }) { - return SvgPicture.asset( - assets, - width: width, - height: height, - fit: fit ?? BoxFit.contain, - colorFilter: - color != null ? ColorFilter.mode(color, BlendMode.srcIn) : null, - ); -} - - -Widget vecWidget2( - String assets, { - double? width, - double? height, - BoxFit? fit, - Color? color, - }) { - final resolvedColor = WidgetStateProperty.resolveWith((states) { - if (states.contains(WidgetState.pressed)) { - return Colors.white; - } - return color; - }).resolve({}); // You can pass actual states if needed - - return IconTheme( - data: IconThemeData(color: resolvedColor), - child: SvgPicture( - AssetBytesLoader(assets), - width: width, - height: height, - fit: fit ?? BoxFit.contain, - colorFilter: resolvedColor != null - ? ColorFilter.mode(resolvedColor, BlendMode.srcIn) - : null, - ), - ); -} - - -class ColoredSvgButton extends StatefulWidget { - final String svgPath; - final String text; - final VoidCallback? onPressed; - - const ColoredSvgButton({ - required this.svgPath, - required this.text, - this.onPressed, - super.key, - }); - - @override - State createState() => _ColoredSvgButtonState(); -} - -class _ColoredSvgButtonState extends State { - bool _isPressed = false; - bool _isHovered = false; - - Color _getIconColor() { - if (_isPressed) return Colors.white; - if (_isHovered) return AppColor.blueNormal.withAlpha(50); - return AppColor.blueNormal; - } - - @override - Widget build(BuildContext context) { - return MouseRegion( - onEnter: (_) => setState(() => _isHovered = true), - onExit: (_) => setState(() { - _isHovered = false; - _isPressed = false; - }), - child: GestureDetector( - onTapDown: (_) => setState(() => _isPressed = true), - onTapUp: (_) => setState(() => _isPressed = false), - onTapCancel: () => setState(() => _isPressed = false), - child: OutlinedButton.icon( - icon: SvgPicture.asset( - widget.svgPath, - width: 24, - height: 24, - color: _getIconColor(), - ), - label: Text(widget.text), - onPressed: widget.onPressed, - style: OutlinedButton.styleFrom( - side: BorderSide( - color: AppColor.blueNormal, - width: 2, - ), - foregroundColor: AppColor.blueNormal, - backgroundColor: _isPressed ? AppColor.blueNormal : null, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(8), - ), - ), - ), - ), - ); - } -} - diff --git a/packages/core/lib/presentation/utils/utils.dart b/packages/core/lib/presentation/utils/utils.dart index 7eb0ee4..1a49d0f 100644 --- a/packages/core/lib/presentation/utils/utils.dart +++ b/packages/core/lib/presentation/utils/utils.dart @@ -1 +1 @@ -import 'color_utils.dart'; \ No newline at end of file +export 'color_utils.dart'; \ No newline at end of file diff --git a/packages/core/lib/presentation/widget/widget.dart b/packages/core/lib/presentation/widget/widget.dart index ec3894b..0df4a98 100644 --- a/packages/core/lib/presentation/widget/widget.dart +++ b/packages/core/lib/presentation/widget/widget.dart @@ -4,5 +4,15 @@ export 'draggable_bottom_sheet/draggable_bottom_sheet.dart'; export 'draggable_bottom_sheet/draggable_bottom_sheet_controller.dart'; export 'buttons/outline_elevated_icon.dart'; export 'buttons/outline_elevated.dart'; +export 'buttons/text_button.dart'; export 'app_bar/r_app_bar.dart'; +export 'captcha/captcha_widget.dart'; +export 'buttons/elevated.dart'; +export 'inputs/r_input.dart'; +export 'tabs/new_tab.dart'; +export 'tabs/tab.dart'; +export 'pagination/pagination_from_until.dart'; +export 'pagination/show_more.dart'; + + diff --git a/pubspec.lock b/pubspec.lock index edfdacd..24a9efa 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,22 +1,6 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 - url: "https://pub.dev" - source: hosted - version: "80.0.0" - analyzer: - dependency: transitive - description: - name: analyzer - sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" - url: "https://pub.dev" - source: hosted - version: "7.3.0" args: dependency: transitive description: @@ -41,70 +25,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" - build: - dependency: transitive - description: - name: build - sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 - url: "https://pub.dev" - source: hosted - version: "2.4.2" - build_config: - dependency: transitive - description: - name: build_config - sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" - url: "https://pub.dev" - source: hosted - version: "1.1.2" - build_daemon: - dependency: transitive - description: - name: build_daemon - sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa" - url: "https://pub.dev" - source: hosted - version: "4.0.4" - build_resolvers: - dependency: transitive - description: - name: build_resolvers - sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0 - url: "https://pub.dev" - source: hosted - version: "2.4.4" - build_runner: - dependency: "direct dev" - description: - name: build_runner - sha256: "058fe9dce1de7d69c4b84fada934df3e0153dd000758c4d65964d0166779aa99" - url: "https://pub.dev" - source: hosted - version: "2.4.15" - build_runner_core: - dependency: transitive - description: - name: build_runner_core - sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021" - url: "https://pub.dev" - source: hosted - version: "8.0.0" - built_collection: - dependency: transitive - description: - name: built_collection - sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://pub.dev" - source: hosted - version: "5.1.1" - built_value: - dependency: transitive - description: - name: built_value - sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4 - url: "https://pub.dev" - source: hosted - version: "8.9.5" characters: dependency: transitive description: @@ -113,14 +33,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.4.0" - checked_yaml: - dependency: transitive - description: - name: checked_yaml - sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff - url: "https://pub.dev" - source: hosted - version: "2.0.3" clock: dependency: transitive description: @@ -129,14 +41,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.2" - code_builder: - dependency: transitive - description: - name: code_builder - sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" - url: "https://pub.dev" - source: hosted - version: "4.10.1" collection: dependency: transitive description: @@ -145,14 +49,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.19.1" - convert: - dependency: transitive - description: - name: convert - sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 - url: "https://pub.dev" - source: hosted - version: "3.1.2" crypto: dependency: transitive description: @@ -177,16 +73,8 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.0" - dart_style: - dependency: transitive - description: - name: dart_style - sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" - url: "https://pub.dev" - source: hosted - version: "3.0.1" dartx: - dependency: "direct main" + dependency: transitive description: name: dartx sha256: "8b25435617027257d43e6508b5fe061012880ddfdaa75a71d607c3de2a13d244" @@ -292,7 +180,7 @@ packages: source: hosted version: "4.0.0" flutter_svg: - dependency: "direct main" + dependency: transitive description: name: flutter_svg sha256: c200fd79c918a40c5cd50ea0877fa13f81bdaf6f0a5d3dbcc2a13e3285d6aa1b @@ -317,14 +205,6 @@ packages: url: "https://pub.dev" source: hosted version: "10.8.0" - freezed: - dependency: "direct dev" - description: - name: freezed - sha256: "6022db4c7bfa626841b2a10f34dd1e1b68e8f8f9650db6112dcdeeca45ca793c" - url: "https://pub.dev" - source: hosted - version: "3.0.6" freezed_annotation: dependency: "direct overridden" description: @@ -333,14 +213,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.4.4" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 - url: "https://pub.dev" - source: hosted - version: "4.0.0" geolocator: dependency: transitive description: @@ -390,7 +262,7 @@ packages: source: hosted version: "0.2.5" get: - dependency: "direct main" + dependency: transitive description: name: get sha256: c79eeb4339f1f3deffd9ec912f8a923834bec55f7b49c9e882b8fef2c139d425 @@ -398,39 +270,15 @@ packages: source: hosted version: "4.7.2" get_it: - dependency: "direct main" + dependency: transitive description: name: get_it sha256: f126a3e286b7f5b578bf436d5592968706c4c1de28a228b870ce375d9f743103 url: "https://pub.dev" source: hosted version: "8.0.3" - get_test: - dependency: "direct dev" - description: - name: get_test - sha256: "558c39cb35fb37bd501f337dc143de60a4314d5ef3b75f4b0551d6741634995b" - url: "https://pub.dev" - source: hosted - version: "4.0.1" - glob: - dependency: transitive - description: - name: glob - sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de - url: "https://pub.dev" - source: hosted - version: "2.1.3" - graphs: - dependency: transitive - description: - name: graphs - sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" - url: "https://pub.dev" - source: hosted - version: "2.3.2" hive_ce: - dependency: "direct main" + dependency: transitive description: name: hive_ce sha256: ac66daee46ad46486a1ed12cf91e9d7479c875fb46889be8d2c96b557406647f @@ -438,21 +286,13 @@ packages: source: hosted version: "2.10.1" hive_ce_flutter: - dependency: "direct main" + dependency: transitive description: name: hive_ce_flutter sha256: "74c1d5f10d803446b4e7913bb272137e2724ba8a56465444f9e7713aeb60a877" url: "https://pub.dev" source: hosted version: "2.2.0" - hive_ce_generator: - dependency: "direct dev" - description: - name: hive_ce_generator - sha256: "0b1c750e2d10c55a14cde16d479ada42704be6cef43c54b728ed0e4e02f7d808" - url: "https://pub.dev" - source: hosted - version: "1.8.2" http: dependency: transitive description: @@ -461,14 +301,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.0" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 - url: "https://pub.dev" - source: hosted - version: "3.2.2" http_parser: dependency: transitive description: @@ -492,22 +324,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.19.0" - io: - dependency: transitive - description: - name: io - sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b - url: "https://pub.dev" - source: hosted - version: "1.0.5" - js: - dependency: transitive - description: - name: js - sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" - url: "https://pub.dev" - source: hosted - version: "0.7.2" json_annotation: dependency: transitive description: @@ -516,14 +332,6 @@ packages: url: "https://pub.dev" source: hosted version: "4.9.0" - json_serializable: - dependency: "direct dev" - description: - name: json_serializable - sha256: "81f04dee10969f89f604e1249382d46b97a1ccad53872875369622b5bfc9e58a" - url: "https://pub.dev" - source: hosted - version: "6.9.4" latlong2: dependency: transitive description: @@ -597,21 +405,13 @@ packages: source: hosted version: "6.0.0" logger: - dependency: "direct main" + dependency: transitive description: name: logger sha256: be4b23575aac7ebf01f225a241eb7f6b5641eeaf43c6a8613510fc2f8cf187d1 url: "https://pub.dev" source: hosted version: "2.5.0" - logging: - dependency: transitive - description: - name: logging - sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 - url: "https://pub.dev" - source: hosted - version: "1.3.0" matcher: dependency: transitive description: @@ -644,30 +444,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.0" - mime: - dependency: transitive - description: - name: mime - sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" - url: "https://pub.dev" - source: hosted - version: "2.0.0" - mockito: - dependency: transitive - description: - name: mockito - sha256: f99d8d072e249f719a5531735d146d8cf04c580d93920b04de75bef6dfb2daf6 - url: "https://pub.dev" - source: hosted - version: "5.4.5" - mocktail: - dependency: "direct dev" - description: - name: mocktail - sha256: "890df3f9688106f25755f26b1c60589a92b3ab91a22b8b224947ad041bf172d8" - url: "https://pub.dev" - source: hosted - version: "1.0.4" nested: dependency: transitive description: @@ -676,14 +452,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.0" - package_config: - dependency: transitive - description: - name: package_config - sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc - url: "https://pub.dev" - source: hosted - version: "2.2.0" path: dependency: transitive description: @@ -796,6 +564,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.2.1" + persian_datetime_picker: + dependency: transitive + description: + name: persian_datetime_picker + sha256: "7ccbfd3a68dc89d405550f624e9fa590c914fed2aa2d48973c4f4400baab2e06" + url: "https://pub.dev" + source: hosted + version: "3.1.0" petitparser: dependency: transitive description: @@ -828,14 +604,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.1" - pool: - dependency: transitive - description: - name: pool - sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" - url: "https://pub.dev" - source: hosted - version: "1.5.1" proj4dart: dependency: transitive description: @@ -852,22 +620,6 @@ packages: url: "https://pub.dev" source: hosted version: "6.1.4" - pub_semver: - dependency: transitive - description: - name: pub_semver - sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" - url: "https://pub.dev" - source: hosted - version: "2.2.0" - pubspec_parse: - dependency: transitive - description: - name: pubspec_parse - sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" - url: "https://pub.dev" - source: hosted - version: "1.5.0" rasadyar_core: dependency: "direct main" description: @@ -876,13 +628,21 @@ packages: source: path version: "1.0.0+1" rxdart: - dependency: "direct main" + dependency: transitive description: name: rxdart sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" url: "https://pub.dev" source: hosted version: "0.28.0" + shamsi_date: + dependency: transitive + description: + name: shamsi_date + sha256: "4614789ed11bfffe5ba0aa157a20f2857ab6328528401766e0d924e453c866bd" + url: "https://pub.dev" + source: hosted + version: "1.0.4" shared_preferences: dependency: transitive description: @@ -939,43 +699,11 @@ packages: url: "https://pub.dev" source: hosted version: "2.4.1" - shelf: - dependency: transitive - description: - name: shelf - sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 - url: "https://pub.dev" - source: hosted - version: "1.4.2" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" - url: "https://pub.dev" - source: hosted - version: "3.0.0" sky_engine: dependency: transitive description: flutter source: sdk version: "0.0.0" - source_gen: - dependency: transitive - description: - name: source_gen - sha256: "35c8150ece9e8c8d263337a265153c3329667640850b9304861faea59fc98f6b" - url: "https://pub.dev" - source: hosted - version: "2.0.0" - source_helper: - dependency: transitive - description: - name: source_helper - sha256: "86d247119aedce8e63f4751bd9626fc9613255935558447569ad42f9f5b48b3c" - url: "https://pub.dev" - source: hosted - version: "1.3.5" source_span: dependency: transitive description: @@ -1008,14 +736,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.4" - stream_transform: - dependency: transitive - description: - name: stream_transform - sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 - url: "https://pub.dev" - source: hosted - version: "2.1.1" string_scanner: dependency: transitive description: @@ -1048,14 +768,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.5" - timing: - dependency: transitive - description: - name: timing - sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe" - url: "https://pub.dev" - source: hosted - version: "1.0.2" typed_data: dependency: transitive description: @@ -1120,14 +832,6 @@ packages: url: "https://pub.dev" source: hosted version: "14.3.1" - watcher: - dependency: transitive - description: - name: watcher - sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" - url: "https://pub.dev" - source: hosted - version: "1.1.1" web: dependency: transitive description: @@ -1136,22 +840,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.1" - web_socket: - dependency: transitive - description: - name: web_socket - sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" - url: "https://pub.dev" - source: hosted - version: "0.1.6" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5" - url: "https://pub.dev" - source: hosted - version: "3.0.2" wkt_parser: dependency: transitive description: @@ -1176,22 +864,6 @@ packages: url: "https://pub.dev" source: hosted version: "6.5.0" - yaml: - dependency: transitive - description: - name: yaml - sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce - url: "https://pub.dev" - source: hosted - version: "3.1.3" - yaml_writer: - dependency: transitive - description: - name: yaml_writer - sha256: "69651cd7238411179ac32079937d4aa9a2970150d6b2ae2c6fe6de09402a5dc5" - url: "https://pub.dev" - source: hosted - version: "2.1.0" sdks: dart: ">=3.7.0 <4.0.0" flutter: ">=3.27.0" diff --git a/pubspec.yaml b/pubspec.yaml index 51aeb2e..c2725ef 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -10,32 +10,8 @@ dependencies: flutter: sdk: flutter - cupertino_icons: ^1.0.8 - ##Log - logger: ^2.5.0 - - ## reactive - dartx: ^1.2.0 - rxdart: ^0.28.0 - - ## local storage - hive_ce: ^2.10.1 - hive_ce_flutter: ^2.2.0 - - - - #SVG - flutter_svg: ^2.0.17 - - ##state manger - get: ^4.7.2 - - ##Di - get_it: ^8.0.3 - - inspection: path: ./features/inspection @@ -51,19 +27,6 @@ dev_dependencies: flutter_test: sdk: flutter flutter_lints: ^5.0.0 - ##code generation - build_runner: ^2.4.15 - hive_ce_generator: ^1.8.2 - freezed: ^3.0.3 - json_serializable: ^6.9.4 - - ##test - mocktail: ^1.0.4 - get_test: ^4.0.1 - - - - flutter: