LCOV - code coverage report
Current view: top level - src/ui/editor/pages/helper_editor/helpers/editor_simple_helper - editor_simple_helper_viewmodel.dart (source / functions) Hit Total Coverage
Test: lcov.info Lines: 16 38 42.1 %
Date: 2020-12-04 18:41:24 Functions: 0 0 -

          Line data    Source code
       1             : import 'dart:async';
       2             : 
       3             : import 'package:flutter/material.dart';
       4             : import 'package:mvvm_builder/mvvm_builder.dart';
       5             : import 'package:pal/src/database/entity/helper/helper_entity.dart';
       6             : import 'package:pal/src/database/entity/helper/helper_theme.dart';
       7             : import 'package:pal/src/database/entity/helper/helper_trigger_type.dart';
       8             : import 'package:pal/src/database/entity/helper/helper_type.dart';
       9             : import 'package:pal/src/ui/editor/pages/helper_editor/font_editor/pickers/font_weight_picker/font_weight_picker_loader.dart';
      10             : import 'package:pal/src/ui/editor/pages/helper_editor/helper_editor_notifiers.dart';
      11             : import 'package:pal/src/ui/editor/pages/helper_editor/helper_editor_viewmodel.dart';
      12             : import 'package:pal/src/ui/shared/helper_shared_factory.dart';
      13             : import 'package:pal/src/ui/shared/helper_shared_viewmodels.dart';
      14             : 
      15             : class SimpleHelperViewModel extends HelperViewModel {
      16             : 
      17             :   // form validation boolean
      18             :   ValueNotifier<bool> canValidate;
      19             : 
      20             :   LanguageNotifier language;
      21             :   BoxNotifier bodyBox;
      22             :   TextFormFieldNotifier detailsField;
      23             : 
      24           1 :   SimpleHelperViewModel({
      25             :     String id,
      26             :     @required String name,
      27             :     @required HelperTriggerType triggerType,
      28             :     @required int priority,
      29             :     String minVersionCode,
      30             :     String maxVersionCode,
      31             :     HelperTheme helperTheme,
      32             :     int versionMaxId,
      33             :     int languageId,
      34             :     HelperBoxViewModel helperBoxViewModel,
      35             :     HelperTextViewModel detailsField,
      36           1 :   }) : super(
      37             :     id: id,
      38             :     name: name,
      39             :     triggerType: triggerType,
      40             :     priority: priority,
      41             :     minVersionCode: minVersionCode,
      42             :     maxVersionCode: maxVersionCode,
      43             :     helperType: HelperType.SIMPLE_HELPER,
      44             :     helperTheme: helperTheme,
      45             :   ) {
      46           2 :     this.language = LanguageNotifier(
      47             :       id: languageId ?? 1,
      48             :     );
      49           2 :     this.bodyBox = BoxNotifier(
      50           0 :       id: helperBoxViewModel?.id,
      51           0 :       backgroundColor: helperBoxViewModel?.backgroundColor ?? Colors.black87,
      52             :     );
      53           2 :     this.detailsField = TextFormFieldNotifier(
      54           0 :       id: detailsField?.id,
      55           0 :       fontColor: detailsField?.fontColor ?? Colors.white,
      56           0 :       fontSize: detailsField?.fontSize?.toInt() ?? 14,
      57           0 :       fontFamily: detailsField?.fontFamily,
      58           1 :       fontWeight: FontWeightMapper.toFontKey(detailsField?.fontWeight),
      59           0 :       text: detailsField?.text ?? '',
      60             :     );
      61             :   }
      62             : 
      63           1 :   factory SimpleHelperViewModel.fromHelperViewModel(HelperViewModel model) {
      64           1 :     final simpleHelper = SimpleHelperViewModel(
      65           1 :       id: model?.id,
      66           1 :       name: model.name,
      67           1 :       triggerType: model.triggerType,
      68           1 :       priority: model.priority,
      69           1 :       minVersionCode: model.minVersionCode,
      70           1 :       maxVersionCode: model.maxVersionCode,
      71           1 :       helperTheme: model.helperTheme,
      72             :     );
      73             : 
      74           1 :     if (model is SimpleHelperViewModel) {
      75           0 :       simpleHelper.bodyBox = model?.bodyBox;
      76           0 :       simpleHelper.language = model?.language;
      77           0 :       simpleHelper.detailsField = model?.detailsField;
      78             :     }
      79             :     return simpleHelper;
      80             :   }
      81             : 
      82           0 :   factory SimpleHelperViewModel.fromHelperEntity(HelperEntity helperEntity) {
      83           0 :     return SimpleHelperViewModel(
      84           0 :       id: helperEntity?.id,
      85           0 :       name: helperEntity?.name,
      86           0 :       triggerType: helperEntity?.triggerType,
      87           0 :       priority: helperEntity?.priority,
      88           0 :       minVersionCode: helperEntity?.versionMin,
      89           0 :       maxVersionCode: helperEntity?.versionMax,
      90             :       helperTheme: null,
      91           0 :       helperBoxViewModel: HelperSharedFactory.parseBoxBackground(
      92             :         SimpleHelperKeys.BACKGROUND_KEY,
      93           0 :         helperEntity?.helperBoxes,
      94             :       ),
      95           0 :       detailsField: HelperSharedFactory.parseTextLabel(
      96             :         SimpleHelperKeys.CONTENT_KEY,
      97           0 :         helperEntity?.helperTexts,
      98             :       ),
      99             :     );
     100             :   }
     101             : }

Generated by: LCOV version 1.14