import 'dart:ui';

import 'package:diplomaticquarterapp/Constants.dart';
import 'package:flutter/material.dart';

/// ----  Default Theme  ----
///

//final projectProvider = Provider.of(AppGlobal.context);
final bluePrimary = Color(0xFF00000);
final blueAccent = Color(0xFFFF9800);
final blueBackground = Color(0xFFFFFFFF);

defaultTheme({fontName}) {
  return ThemeData(
    fontFamily: fontName,
    //projectProvider.isArabic ? 'Cairo' : 'WorkSans',
    primarySwatch: Colors.red,
    visualDensity: VisualDensity.adaptivePlatformDensity,
    brightness: Brightness.light,
    pageTransitionsTheme: const PageTransitionsTheme(
      builders: {
        TargetPlatform.android: ZoomPageTransitionsBuilder(),
        TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
      },
    ),
    hintColor: Colors.grey[400],
    disabledColor: Colors.grey[300],
    errorColor: Color.fromRGBO(235, 80, 60, 1.0),
    scaffoldBackgroundColor: Color(0xffF8F8F8),
    // Colors.grey[100],
    textSelectionColor: Color.fromRGBO(80, 100, 253, 0.5),
    textSelectionHandleColor: Colors.grey,
    canvasColor: Colors.white,
    backgroundColor: Color.fromRGBO(255, 255, 255, 1),
    highlightColor: Colors.grey[100].withOpacity(0.4),
    splashColor: Colors.transparent,
    primaryColor: Color(0xff515A5D),
    buttonColor: Colors.black,
    toggleableActiveColor: secondaryColor,
    indicatorColor: secondaryColor,
    bottomSheetTheme: BottomSheetThemeData(backgroundColor: Color(0xFFE0E0E0)),
    cursorColor: Colors.grey,
    primaryTextTheme: TextTheme(bodyText2: TextStyle(color: Colors.white)),
    iconTheme: IconThemeData(),
    textTheme: TextTheme(
      bodyText1: TextStyle(color: Colors.black, letterSpacing: 0.6),
      headline1: TextStyle(color: Colors.white, letterSpacing: 0.6),
      headline2: TextStyle(color: Colors.white, letterSpacing: 0.6),
    ),
    floatingActionButtonTheme: FloatingActionButtonThemeData(highlightElevation: 2, disabledElevation: 0, elevation: 2),

    appBarTheme: AppBarTheme(
      color: Color(0xff515A5D),
      brightness: Brightness.light,
      elevation: 0.0,
      actionsIconTheme: IconThemeData(
        color: Colors.grey[800],
      ),
    ),
  );
}

invertThemes({fontName}) {
  return ThemeData(
    fontFamily: fontName,
    //projectProvider.isArabic ? 'Cairo' : 'WorkSans',
    primarySwatch: Colors.red,

    visualDensity: VisualDensity.adaptivePlatformDensity,
    brightness: Brightness.dark,
    pageTransitionsTheme: const PageTransitionsTheme(
      builders: {
        TargetPlatform.android: ZoomPageTransitionsBuilder(),
        TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
      },
    ),
    hintColor: Colors.grey[400],
    textTheme: TextTheme(bodyText1: TextStyle(color: Colors.white), headline1: TextStyle(color: Colors.white), headline2: TextStyle(color: Colors.white)),
    disabledColor: Colors.grey[800],
    errorColor: Color.fromRGBO(235, 80, 60, 1.0),
    scaffoldBackgroundColor: Color(0xff000000),
    // Colors.grey[100],
    textSelectionColor: Color.fromRGBO(80, 100, 253, 0.5),
    textSelectionHandleColor: Colors.grey,
    canvasColor: Colors.black,
    backgroundColor: Color.fromRGBO(255, 255, 255, 1),
    highlightColor: Colors.grey[100].withOpacity(0.4),
    splashColor: Colors.transparent,
    primaryColor: Color(0xff515A5D),
    buttonColor: Colors.black,
    toggleableActiveColor: secondaryColor,
    indicatorColor: secondaryColor,
    bottomSheetTheme: BottomSheetThemeData(backgroundColor: Color(0xFFE0E0E0)),
    cursorColor: Colors.black,
    iconTheme: IconThemeData(),
    appBarTheme: AppBarTheme(
      color: Color(0xff000000),
      brightness: Brightness.dark,
      elevation: 0.0,
      actionsIconTheme: IconThemeData(
        color: Colors.grey[800],
      ),
    ),
  );
}

bwThemes({fontName}) {
  return ThemeData(
    fontFamily: fontName,
    //projectProvider.isArabic ? 'Cairo' : 'WorkSans',
    primarySwatch: Colors.red,

    visualDensity: VisualDensity.adaptivePlatformDensity,
    brightness: Brightness.dark,
    unselectedWidgetColor: Colors.red,

    pageTransitionsTheme: const PageTransitionsTheme(
      builders: {
        TargetPlatform.android: ZoomPageTransitionsBuilder(),
        TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
      },
    ),
    hintColor: Colors.grey[400],

    textTheme: TextTheme(
      bodyText1: TextStyle(color: Colors.red[900]),
      headline1: TextStyle(color: Colors.red[900]),
      headline2: TextStyle(color: Colors.white),
      bodyText2: TextStyle(color: Colors.red[900]),
      subtitle1: TextStyle(color: Colors.red[900]),
    ),

    tabBarTheme: TabBarTheme(labelColor: Colors.red[900]),

    disabledColor: Colors.grey[800],
    errorColor: Color.fromRGBO(235, 80, 60, 1.0),
    scaffoldBackgroundColor: Color(0xffffffe4),
    // Colors.grey[100],
    textSelectionColor: Color.fromRGBO(80, 100, 253, 0.5),
    textSelectionHandleColor: Colors.grey,
    canvasColor: Colors.black,
    backgroundColor: Color(0xffffffe4),
    highlightColor: Colors.grey[100].withOpacity(0.4),
    splashColor: Colors.transparent,
    primaryColor: Color(0xfffffff4),
    toggleableActiveColor: secondaryColor,
    indicatorColor: secondaryColor,
    bottomSheetTheme: BottomSheetThemeData(backgroundColor: Color(0xFFE0E0E0)),
    cursorColor: Colors.black,
    iconTheme: IconThemeData(),
    appBarTheme: AppBarTheme(
      color: Color(0xffffffe4),
      brightness: Brightness.dark,
      elevation: 0.0,
      actionsIconTheme: IconThemeData(
        color: Colors.grey[800],
      ),
    ),
  );
}

dimTheme({fontName}) {
  return ThemeData(
    fontFamily: fontName,
    //projectProvider.isArabic ? 'Cairo' : 'WorkSans',
    primarySwatch: Colors.red,
    visualDensity: VisualDensity.adaptivePlatformDensity,
    brightness: Brightness.dark,

    pageTransitionsTheme: const PageTransitionsTheme(
      builders: {
        TargetPlatform.android: ZoomPageTransitionsBuilder(),
        TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
      },
    ),
    hintColor: Colors.grey[400],
    disabledColor: Colors.grey[300],
    errorColor: Color.fromRGBO(235, 80, 60, 1.0),
    scaffoldBackgroundColor: Color(0xffEEEEEE),
    textSelectionColor: Color.fromRGBO(80, 100, 253, 0.5),
    textSelectionHandleColor: Colors.grey,
    canvasColor: Colors.white,
    backgroundColor: Color.fromRGBO(255, 255, 255, 1),
    highlightColor: Colors.grey[100].withOpacity(0.4),
    splashColor: Colors.transparent,
    primaryColor: Color(0xff40ACC9),
    bottomSheetTheme: BottomSheetThemeData(backgroundColor: Color(0xffE0E0E0)),
    cursorColor: Colors.grey,
    iconTheme: IconThemeData(),
    appBarTheme: AppBarTheme(
      color: Color(0xff40ACC9),
      brightness: Brightness.dark,
      elevation: 10.0,
      actionsIconTheme: IconThemeData(
        color: Color(0xff40ACC9),
      ),
    ),
  );
}
