import 'dart:convert';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:mohem_flutter_app/api/dashboard_api_client.dart';
import 'package:mohem_flutter_app/api/eit_api_client.dart';
import 'package:mohem_flutter_app/classes/utils.dart';
import 'package:mohem_flutter_app/main.dart';
import 'package:mohem_flutter_app/models/dashboard/get_attendance_tracking_list_model.dart';
import 'package:mohem_flutter_app/models/dashboard/itg_forms_model.dart';
import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart';
import 'package:mohem_flutter_app/models/dashboard/menus.dart';
import 'package:mohem_flutter_app/models/eit/get_eit_transaction_model.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/widgets/Updater.dart';

/// Mix-in [DiagnosticableTreeMixin] to have access to [debugFillProperties] for the devtool
// ignore: prefer_mixin
class EITProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
  List<CollectionTransaction>? eitTransactionList;
  late bool isEitLoaded = false;
  void getEITList(String functionName) async {
    try {
      eitTransactionList = await EITApiClient().getEITTransactions(functionName);
      isEitLoaded = true;

      notifyListeners();
    } catch (ex) {
      isEitLoaded = false;
      logger.wtf(ex);
      notifyListeners();
      Utils.handleException(ex, null, (ts) {
        print(ts);
      });
    }
  }
}
