fromEntityPlus static method

Future<AppBarModel?> fromEntityPlus(
  1. String documentID,
  2. AppBarEntity? entity, {
  3. String? appId,
})

Implementation

static Future<AppBarModel?> fromEntityPlus(
    String documentID, AppBarEntity? entity,
    {String? appId}) async {
  if (entity == null) return null;

  MemberMediumModel? imageHolder;
  if (entity.imageId != null) {
    try {
      imageHolder =
          await memberMediumRepository(appId: appId)!.get(entity.imageId);
    } on Exception catch (e) {
      print('Error whilst trying to initialise image');
      print('Error whilst retrieving memberMedium with id ${entity.imageId}');
      print('Exception: $e');
    }
  }

  MenuDefModel? iconMenuHolder;
  if (entity.iconMenuId != null) {
    try {
      iconMenuHolder =
          await menuDefRepository(appId: appId)!.get(entity.iconMenuId);
    } on Exception catch (e) {
      print('Error whilst trying to initialise iconMenu');
      print('Error whilst retrieving menuDef with id ${entity.iconMenuId}');
      print('Exception: $e');
    }
  }

  return AppBarModel(
    documentID: documentID,
    appId: entity.appId ?? '',
    title: entity.title,
    header: toHeaderSelection(entity.header),
    icon: await IconModel.fromEntityPlus(entity.icon, appId: appId),
    image: imageHolder,
    iconMenu: iconMenuHolder,
    backgroundOverride: await BackgroundModel.fromEntityPlus(
        entity.backgroundOverride,
        appId: appId),
    iconColorOverride:
        await RgbModel.fromEntityPlus(entity.iconColorOverride, appId: appId),
    selectedIconColorOverride: await RgbModel.fromEntityPlus(
        entity.selectedIconColorOverride,
        appId: appId),
    menuBackgroundColorOverride: await RgbModel.fromEntityPlus(
        entity.menuBackgroundColorOverride,
        appId: appId),
  );
}