package Ġcom . github . mo h amed wa el . login . base Ċ Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġcom . github . mo h amed wa el . login . config . Input Validation Provider Ċ Ċ open Ġclass ĠUsername Base ViewModel ( input Validation Provider : ĠInput Validation Provider ) Ġ: ĊĠĠĠ ĠBase Login ViewModel ( input Validation Provider ) Ġ{ ĊĠĠĠ Ġopen Ġval ĠuserName Ġ= ĠMutable LiveData < String >() ĊĠĠĠ Ġopen Ġval ĠuserName Error Ġ= ĠMutable LiveData < Int ?> () ĊĊĠĠĠ Ġopen Ġfun Ġis Username Valid () Ġ= Ġinput Validation Provider . is Email Valid ( userName . value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ|| Ġinput Validation Provider . is Username Valid ( userName . value ) Ċ Ċ }