feat: sale out of the province

This commit is contained in:
2025-06-17 11:46:09 +03:30
parent 4c40bfa43e
commit f5088027ba
5 changed files with 286 additions and 101 deletions

View File

@@ -45,3 +45,4 @@ export 'utils/safe_call_utils.dart';
export 'utils/date_time_utils.dart';
export 'utils/num_utils.dart';
export 'utils/map_utils.dart';
export 'utils/route_utils.dart';

View File

@@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
import 'package:rasadyar_core/core.dart';
class RAppBar extends StatelessWidget implements PreferredSizeWidget {
final String title;
final String? title;
final String? iconTitle;
final Color backgroundColor;
final Color iconColor;
@@ -18,7 +18,7 @@ class RAppBar extends StatelessWidget implements PreferredSizeWidget {
const RAppBar({
super.key,
required this.title,
this.title,
this.iconTitle,
this.backgroundColor = AppColor.blueNormal,
this.iconColor = Colors.white,
@@ -43,15 +43,15 @@ class RAppBar extends StatelessWidget implements PreferredSizeWidget {
centerTitle: centerTitle,
titleTextStyle: titleTextStyle ?? AppFonts.yekan16.copyWith(color: Colors.white),
title: Row(
title:title != null ? Row(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: [
Text(title),
Text(title!),
if (iconTitle != null) ...{const SizedBox(width: 8)},
if (iconTitle != null) ...{SvgGenImage.vec(iconTitle!).svg(width: 24, height: 24)},
],
),
): null,
leadingWidth: leadingWidth?.toDouble(),
leading: leading != null ? Padding(padding: const EdgeInsets.only(right: 6), child: leading) : null,
titleSpacing: 8,

View File

@@ -0,0 +1,24 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
GetPageRoute<dynamic> buildRouteFromGetPage(GetPage page) {
return GetPageRoute(
page: page.page,
settings: RouteSettings(name: page.name),
transition: page.transition,
curve: page.curve,
binding: page.binding,
bindings: page.bindings,
routeName: page.name,
title: page.title,
gestureWidth: page.gestureWidth,
alignment: page.alignment,
maintainState: page.maintainState,
customTransition: page.customTransition,
transitionDuration: page.transitionDuration ?? const Duration(milliseconds: 300),
fullscreenDialog: page.fullscreenDialog,
opaque: page.opaque,
popGesture: page.popGesture,
showCupertinoParallax: page.showCupertinoParallax,
);
}