UNPKG

@5calls/react-components

Version:

React component library for 5 Calls webapp

53 lines (52 loc) 1.96 kB
/// <reference types="react" /> import * as React from 'react'; import EventEmitter = require('wolfy87-eventemitter'); import { UserProfile, Auth0Config } from '../shared/model'; export interface CustomLoginUiProps { readonly profile?: UserProfile; readonly auth0Config: Auth0Config; readonly showEmailModal: boolean; readonly eventEmitter: EventEmitter; login: (email?: string, password?: string) => Promise<string>; twitterLogin: () => void; facebookLogin: () => void; logout: () => void; refreshHandler: (email: string, subscribe: boolean) => void; signup: (email?: string, password?: string) => Promise<string>; } export interface CustomLoginUiState { email: string; password: string; errorMessage: string; shouldDisplayLoginModal: boolean; userMenuHidden: boolean; currentEmail: string; emailIsValid?: boolean; emailOptIn: boolean; } export declare class CustomLoginUi extends React.Component<CustomLoginUiProps, CustomLoginUiState> { constructor(props: CustomLoginUiProps); componentDidMount(): void; componentWillUnmount(): void; toggleMenu: () => void; toggleModal: () => void; signup: () => void; login: () => void; validateEmailPassword: (email: string, password: string) => string; twitterLogin: () => void; facebookLogin: () => void; setLoginState: (loginResults?: string | undefined) => void; logout: () => void; changeEmailOpt: (e: React.ChangeEvent<HTMLInputElement>) => void; changeEmail: (e: React.ChangeEvent<HTMLInputElement>) => void; formsubmit: (e: React.FormEvent<HTMLFormElement>) => void; submitEmail: () => void; showLoginModal: () => void; showCampaignLogo: () => boolean; headerPhotoURL: () => string; loginModalMarkup: () => JSX.Element; emailTextOrError: () => String; emailModalMarkup: () => JSX.Element; loginUIMarkup: () => JSX.Element; render(): JSX.Element; }