LCOV - code coverage report
Current view: top level - src/ui/client - helper_factory.dart (source / functions) Hit Total Coverage
Test: lcov.info Lines: 0 48 0.0 %
Date: 2020-12-04 18:41:24 Functions: 0 0 -

          Line data    Source code
       1             : import 'package:flutter/material.dart';
       2             : import 'package:pal/src/database/entity/helper/helper_entity.dart';
       3             : import 'package:pal/src/database/entity/helper/helper_type.dart';
       4             : import 'package:pal/src/ui/client/helpers/simple_helper/simple_helper.dart';
       5             : import 'package:pal/src/ui/client/helpers/user_fullscreen_helper/user_fullscreen_helper.dart';
       6             : import 'package:pal/src/ui/client/helpers/user_update_helper/user_update_helper.dart';
       7             : import 'package:pal/src/ui/shared/helper_shared_factory.dart';
       8             : 
       9             : import 'helpers/simple_helper/widget/simple_helper_layout.dart';
      10             : 
      11             : class HelperFactory {
      12           0 :   static Widget build(final HelperEntity helper,
      13             :       {final Function(bool positiveFeedBack) onTrigger}) {
      14           0 :     switch (helper.type) {
      15           0 :       case HelperType.HELPER_FULL_SCREEN:
      16           0 :         return _createHelperFullScreen(helper, onTrigger);
      17           0 :       case HelperType.SIMPLE_HELPER:
      18           0 :         return _createSimpleHelper(helper, onTrigger);
      19           0 :       case HelperType.UPDATE_HELPER:
      20           0 :         return _createUpdateHelper(helper, onTrigger);
      21           0 :       case HelperType.ANCHORED_OVERLAYED_HELPER:
      22             :         break;
      23             :     }
      24             :     return null;
      25             :   }
      26             : 
      27           0 :   static Widget _createHelperFullScreen(
      28             :     final HelperEntity helper,
      29             :     final Function onTrigger,
      30             :   ) {
      31           0 :     return UserFullScreenHelperPage(
      32           0 :       titleLabel: HelperSharedFactory.parseTextLabel(
      33             :         FullscreenHelperKeys.TITLE_KEY,
      34           0 :         helper.helperTexts,
      35             :       ),
      36           0 :       headerImageViewModel: HelperSharedFactory.parseImageUrl(
      37             :         FullscreenHelperKeys.IMAGE_KEY,
      38           0 :         helper.helperImages,
      39             :       ),
      40           0 :       helperBoxViewModel: HelperSharedFactory.parseBoxBackground(
      41             :         FullscreenHelperKeys.BACKGROUND_KEY,
      42           0 :         helper.helperBoxes,
      43             :       ),
      44           0 :       positivLabel: HelperSharedFactory.parseTextLabel(
      45             :         FullscreenHelperKeys.POSITIV_KEY,
      46           0 :         helper.helperTexts,
      47             :       ),
      48           0 :       negativLabel: HelperSharedFactory.parseTextLabel(
      49             :         FullscreenHelperKeys.NEGATIV_KEY,
      50           0 :         helper.helperTexts,
      51             :       ),
      52           0 :       onPositivButtonTap: () => onTrigger(true),
      53           0 :       onNegativButtonTap: () => onTrigger(false),
      54             :     );
      55             :   }
      56             : 
      57             :   // static CustomLabel _parseTextLabel(
      58             :   //   final String key,
      59             :   //   final List<HelperTextEntity> helperTexts,
      60             :   // ) {
      61             :   //   for (HelperTextEntity helperText in helperTexts) {
      62             :   //     if (key == helperText?.key) {
      63             :   //       return CustomLabel(
      64             :   //         text: helperText?.value,
      65             :   //         fontColor: HexColor.fromHex(helperText?.fontColor),
      66             :   //         fontSize: helperText?.fontSize?.toDouble(),
      67             :   //         fontFamily: helperText?.fontFamily,
      68             :   //         fontWeight: FontWeightMapper.toFontWeight(helperText?.fontWeight),
      69             :   //       );
      70             :   //     }
      71             :   //   }
      72             :   //   return null;
      73             :   // }
      74             : 
      75             :   // static String _parseImageUrl(
      76             :   //   final String key,
      77             :   //   final List<HelperImageEntity> helperImages,
      78             :   // ) {
      79             :   //   for (HelperImageEntity helperImage in helperImages) {
      80             :   //     if (key == helperImage?.key) {
      81             :   //       return helperImage?.url;
      82             :   //     }
      83             :   //   }
      84             :   //   return null;
      85             :   // }
      86             : 
      87             :   // static Color _parseBoxBackground(
      88             :   //   final String key,
      89             :   //   final List<HelperBoxEntity> helperBoxes,
      90             :   // ) {
      91             :   //   for (HelperBoxEntity helperBox in helperBoxes) {
      92             :   //     if (key == helperBox?.key) {
      93             :   //       return HexColor.fromHex(helperBox?.backgroundColor);
      94             :   //     }
      95             :   //   }
      96             :   //   return null;
      97             :   // }
      98             : 
      99             :   // static Color _parseBorder(
     100             :   //   final String key,
     101             :   //   final List<HelperBorderEntity> helperBorders,
     102             :   // ) {
     103             :   //   for (HelperBorderEntity helperBorder in helperBorders) {
     104             :   //     if (key == helperBorder?.key) {
     105             :   //       return HexColor.fromHex(helperBorder?.color);
     106             :   //     }
     107             :   //   }
     108             :   //   return null;
     109             :   // }
     110             : 
     111           0 :   static Widget _createSimpleHelper(
     112             :     final HelperEntity helper,
     113             :     final Function onTrigger,
     114             :   ) {
     115           0 :     GlobalKey<SimpleHelperLayoutState> _simpleHelperLayoutKey = GlobalKey();
     116           0 :     return SimpleHelperLayout(
     117             :       key: _simpleHelperLayoutKey,
     118           0 :       toaster: SimpleHelperPage(
     119           0 :         descriptionLabel: HelperSharedFactory.parseTextLabel(
     120             :           SimpleHelperKeys.CONTENT_KEY,
     121           0 :           helper.helperTexts,
     122             :         ),
     123           0 :         helperBoxViewModel: HelperSharedFactory.parseBoxBackground(
     124             :           SimpleHelperKeys.BACKGROUND_KEY,
     125           0 :           helper.helperBoxes,
     126             :         ),
     127             :       ),
     128           0 :       onDismissed: (res) async {
     129           0 :         await _simpleHelperLayoutKey.currentState.reverseAnimations();
     130           0 :         onTrigger(res == DismissDirection.startToEnd);
     131             :       },
     132             :     );
     133             :   }
     134             : 
     135           0 :   static Widget _createUpdateHelper(
     136             :       final HelperEntity helper, final Function onTrigger) {
     137           0 :     return UserUpdateHelperPage(
     138           0 :       onPositivButtonTap: () {
     139           0 :         onTrigger(true);
     140             :       },
     141           0 :       helperBoxViewModel: HelperSharedFactory.parseBoxBackground(
     142             :         UpdatescreenHelperKeys.BACKGROUND_KEY,
     143           0 :         helper.helperBoxes,
     144             :       ),
     145           0 :       thanksButtonLabel: HelperSharedFactory.parseTextLabel(
     146             :         UpdatescreenHelperKeys.POSITIV_KEY,
     147           0 :         helper.helperTexts,
     148             :       ),
     149           0 :       titleLabel: HelperSharedFactory.parseTextLabel(
     150             :         UpdatescreenHelperKeys.TITLE_KEY,
     151           0 :         helper.helperTexts,
     152             :       ),
     153           0 :       changelogLabels: HelperSharedFactory.parseTextsLabel(
     154             :         UpdatescreenHelperKeys.LINES_KEY,
     155           0 :         helper.helperTexts,
     156             :       ),
     157           0 :       helperImageViewModel: HelperSharedFactory.parseImageUrl(
     158             :         UpdatescreenHelperKeys.IMAGE_KEY,
     159           0 :         helper.helperImages,
     160             :       ),
     161             :     );
     162             :   }
     163             : }

Generated by: LCOV version 1.14