medora-provider/lib/common/custom_style.dart
DhanshCOSQ 66c3b2fb9c Patient registration complete with authentication flow fixed (#3)
Patient registration complete with authentication flow fixed

Co-authored-by: Benoy Bose <benoybose@gmail.com>
Co-authored-by: Jipson George <152465898+Jipson-cosq@users.noreply.github.com>
Reviewed-on: cosqnet/telemednet#3
Reviewed-by: Benoy Bose <benoybose@cosq.net>
Co-authored-by: DhanshCOSQ <dhanshas@cosq.net>
Co-committed-by: DhanshCOSQ <dhanshas@cosq.net>
2024-10-31 14:20:35 +00:00

125 lines
4.5 KiB
Dart

import 'package:flutter/material.dart';
import 'package:gap/gap.dart';
class CustomStyles {
final BuildContext context;
final ButtonStyle primaryButtonStyle;
final ButtonStyle secondaryButtonStyle;
static const double gutter = 24;
static const double smallGutter = 12;
static const double pagePadding = 16;
static const double snackBarMargin = 16;
static const double snackBarBorderRadius = 8;
static const double horizontalPadding = 24;
static const double minimumButtonHeight = 46;
static const double minimumButtonWidth = 92;
static const double verticalPadding = 12;
static const double defaultButtonCornerRadius = 6;
static const double defaultInputFieldCornerRadius = 6;
static const double defaultInputContentPadding = 12;
static const double paddingLarge = 32;
static const EdgeInsets listPadding = EdgeInsets.all(12);
static const double defaultMarginVertical = 4;
static const double defaultMarginHorizontal = 5;
static const double defaultCardCornerRadius = 12;
static const double defaultContentPaddingHorizontal = 8;
static const double defaultContentPadding = 12;
static const double defaultWrapSpacing = 4;
static const double defaultCornerRadious = 8;
static const double defaultBottomAppbarPreferedSize = 4;
static const int defaultNumberOfAdults = 1;
static const int defaultNumberOfMaxResults = 10;
static const double defaultBottomPadding = 16;
static const double defaultCardElevation = 3;
static const double defaultAppBarElevation = 4;
static const int defaultmaxLines = 2;
static const double defaultlineXY = 0.23;
static const double defaultRightPadding = 16;
static const double defaultSizedBoxWidth = 8;
static const double defaultMapZoom = 16;
static const int defaultPolylineWidth = 3;
static const double defaultCameraUpdatePadding = 100;
static const int defaultPageControllerDuration = 300;
static const double defaultCarouselOptionsAspectRatio = 16 / 9;
static const double defaultPageMaxWidth = 360;
static const double packageCoverimageHeightRatio = .18;
static const double coverImaageHeightRatio = 0.25;
static const double itenaryImageHeightRatio = 0.20;
static const double nonSightseeingMapHeightRatio = 0.4;
static const double chatCardMaxWidthRatio = 0.7;
CustomStyles({required this.context})
: primaryButtonStyle = ElevatedButton.styleFrom(
backgroundColor: Theme.of(context).colorScheme.primary,
foregroundColor: Theme.of(context).colorScheme.onPrimary,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(defaultButtonCornerRadius),
),
),
secondaryButtonStyle = OutlinedButton.styleFrom(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(defaultButtonCornerRadius),
),
);
}
void showErrorSnackBar(BuildContext context, String message) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(message),
backgroundColor: Colors.red,
behavior: SnackBarBehavior.floating,
margin: const EdgeInsets.all(CustomStyles.snackBarMargin),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(CustomStyles.snackBarBorderRadius),
),
),
);
}
void showSuccessSnackBar(BuildContext context, String message) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(message),
backgroundColor: Colors.green,
behavior: SnackBarBehavior.floating,
margin: const EdgeInsets.all(CustomStyles.snackBarMargin),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(CustomStyles.snackBarBorderRadius),
),
),
);
}
void showInfoSnackBar(BuildContext context, String message) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(message),
backgroundColor: Colors.blue,
behavior: SnackBarBehavior.floating,
margin: const EdgeInsets.all(CustomStyles.snackBarMargin),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(CustomStyles.snackBarBorderRadius),
),
),
);
}
class Gutter extends Gap {
const Gutter({super.key}) : super(CustomStyles.gutter);
}
class SmallGutter extends Gap {
const SmallGutter({super.key}) : super(CustomStyles.smallGutter);
}
class ListTileColor {
static Color of(BuildContext context, int index) {
return index.isOdd
? Theme.of(context).colorScheme.surface.withAlpha(255)
: Theme.of(context).colorScheme.surface.withAlpha(125);
}
}