import { ObservableSignInScreen } from '@ulangi/ulangi-observable' ; import { AuthDelegate } from '../../delegates/auth/AuthDelegate' ; import { SignInScreenDelegate } from '../../delegates/auth/SignInScreenDelegate' ; import { FetchSetDelegate } from '../../delegates/set/FetchSetDelegate' ; import { SetListDelegate } from '../../delegates/set/SetListDelegate' ; import { PrimaryScreenStyle } from '../../styles/PrimaryScreenStyle' ; import { ScreenFactory } from '../ScreenFactory' ; export class SignInScreenFactory extends ScreenFactory { public createSignInScreenDelegate ( observableScreen ) { const rootScreenDelegate = this . createRootScreenDelegate ( ) ; const navigatorDelegate = this . createNavigatorDelegate ( ) ; const dialogDelegate = this . createDialogDelegate ( PrimaryScreenStyle . LIGHT_BOX_SCREEN_STYLES ) ; const authDelegate = new AuthDelegate ( this . eventBus ) ; const setListDelegate = new SetListDelegate ( this . eventBus ) ; const fetchSetDelegate = new FetchSetDelegate ( this . eventBus ) ; return new SignInScreenDelegate ( this . eventBus , this . observer , this . props . observableKeyboard , observableScreen , authDelegate , setListDelegate , fetchSetDelegate , rootScreenDelegate , dialogDelegate , navigatorDelegate ) ; } }