lead_management 0.4.1 copy "lead_management: ^0.4.1" to clipboard
lead_management: ^0.4.1 copied to clipboard

A new Flutter project.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:lead_management/presentation/pages/helpdesk_dashboard.dart';
import 'package:lead_management/presentation/utils/colors.dart';
import 'package:lead_management/presentation/utils/hexColors.dart';
import 'package:lead_management/presentation/utils/localization.dart';
import 'package:lead_management/presentation/utils/locator.dart';
import 'package:responsive_framework/responsive_wrapper.dart';
import 'package:responsive_framework/utils/scroll_behavior.dart';



void main() {
  runApp( MainApp());
  setupRewardsLocator();
}



class MainApp extends StatefulWidget {

  static Future<void> setLocale(BuildContext context, Locale locale) async {
    MyApp state = context.findAncestorStateOfType<MyApp>()!;
    state.setLocale(locale);
  }

  MyApp createState() => MyApp();
}



class MyApp extends State<MainApp> {

  Locale? _locale;
  void setLocale(Locale locale) {
    setState(() {
      _locale = locale;
    });
  }

  @override
  initState() {
    super.initState();
    if (_locale == null) {
      setLocale(const Locale("en",
          "IN"));
    }
  }
  @override
  Widget build(BuildContext context) {
    SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
        statusBarColor: HexColor(AppColors.appColorTransparent),
        statusBarBrightness: Brightness.dark,
        statusBarIconBrightness: Brightness.dark));


    return MaterialApp(
      home:  MyHomePage(),
      builder: (context, widget) => ResponsiveWrapper.builder(
        BouncingScrollWrapper.builder(context, widget!),
        maxWidth: 1200,
        minWidth: 450,
        defaultScale: true,
        breakpoints: [
          ResponsiveBreakpoint.resize(450, name: MOBILE),
          ResponsiveBreakpoint.autoScale(800, name: TABLET),
          ResponsiveBreakpoint.autoScale(1000, name: TABLET),
          ResponsiveBreakpoint.resize(1200, name: DESKTOP),
          ResponsiveBreakpoint.autoScale(2460, name: "4K"),
        ],
        background: Container(
          color: HexColor(AppColors.appColorBlack35),
        ),
      ),
      locale: _locale,
      themeMode: ThemeMode.light,
      supportedLocales: const [
        Locale("en", "US"),
        Locale("hi", "IN"),
        Locale("ta", "IN"),
        Locale("te", "IN"),
        Locale("ur", "IN"),
      ],
      localizationsDelegates: const [
        LeadsLocalizations.delegate,

      ],
      localeResolutionCallback: (locale, supportedLocales) {
        for (var supportedLocale in supportedLocales) {
          if (supportedLocale.languageCode == locale!.languageCode &&
              supportedLocale.countryCode == locale.countryCode) {
            return supportedLocale;
          }
        }
        return supportedLocales.first;
      },
      debugShowCheckedModeBanner: false,
    );


  }
}

class MyHomePage extends StatefulWidget {


  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  @override
  Widget build(BuildContext context) {

    return Scaffold(

      body:HelpdeskDashboard(


        appLanguageCode: "en",
        googleMapKey:"",
        mainColor: "#FF4CAF50",
        dateFormat: 'dd-MMM-yyyy',
        timeFormat: "HH:mm",
        currencySymbol: "₹",
        baseUrlWithoutHttp: "test.foop.com",
        googleTranslationKey: "key",
        businessId: 0,
        userImage: "/media/person/profile/1638510631340/1646897564696_2927.jpg",
        userName: "Lava International",
        slug: "slug",
        userId: 8,
        token: "2ff980e1d1ab3e0a3f50867f984cb42db8229151be4ee22e229d2b3409006bf5",
        baseUrl:"https://test.foop.com",
      )

    );
  }
}