로그인 및 유저 정보를 관리하는 store입니다.

interface AuthState<T> {
    accessToken?: string;
    accessTokenExpireAt?: string;
    changePassword: ((password, newPassword) => Promise<ResultResponse<boolean>>);
    initial: (() => Promise<void>);
    loadMe: (() => Promise<null | T>);
    loaded: boolean;
    login: ((prefix, username, password, root?) => Promise<{
        data: T;
        model?: string;
    }>);
    logout: (() => void);
    model?: string;
    prefix: "";
    refreshToken?: string;
    refreshTokenExpireAt?: string;
    root: boolean;
    setUser: ((userData, data?) => void);
    signIn: ((signIn) => void);
    signedAt?: string;
    tokenType?: string;
    updateSignInDate: ((day?) => void);
    user?: T;
}

Type Parameters

  • T

Properties

accessToken?: string
accessTokenExpireAt?: string
changePassword: ((password, newPassword) => Promise<ResultResponse<boolean>>)

Type declaration

initial: (() => Promise<void>)

Type declaration

loadMe: (() => Promise<null | T>)

Type declaration

loaded: boolean
login: ((prefix, username, password, root?) => Promise<{
    data: T;
    model?: string;
}>)

로그인을 진행합니다. 직접 사용보다는 LoginForm 컴포넌트를 사용하는 것을 권장합니다.

Type declaration

    • (prefix, username, password, root?): Promise<{
          data: T;
          model?: string;
      }>
    • 로그인을 진행합니다. 직접 사용보다는 LoginForm 컴포넌트를 사용하는 것을 권장합니다.

      Parameters

      • prefix: ""

        로그인을 진행할 API의 prefix입니다. 기본적으로 서버에서 생성됩니다.

      • username: string

        로그인할 유저의 유저명입니다.

      • password: string

        로그인할 유저의 비밀번호입니다.

      • Optional root: T

        root 로 로그인을 했을 경우 유저의 정보입니다. root 계정의 정보는 서버가 갖고 있지 않으므로, 클라이언트에서 관리합니다.

      Returns Promise<{
          data: T;
          model?: string;
      }>

Param: prefix

로그인을 진행할 API의 prefix입니다. 기본적으로 서버에서 생성됩니다.

Param: username

로그인할 유저의 유저명입니다.

Param: password

로그인할 유저의 비밀번호입니다.

Param: root

root 로 로그인을 했을 경우 유저의 정보입니다. root 계정의 정보는 서버가 갖고 있지 않으므로, 클라이언트에서 관리합니다.

logout: (() => void)

Type declaration

    • (): void
    • Returns void

model?: string
prefix: ""
refreshToken?: string
refreshTokenExpireAt?: string
root: boolean
setUser: ((userData, data?) => void)

유저 정보를 강제로 업데이트합니다.

Type declaration

    • (userData, data?): void
    • 유저 정보를 강제로 업데이트합니다.

      Parameters

      • userData: T

        유저 정보

      • Optional data: Partial<SignInResponse>

        추가로 업데이트할 정보, model 등의 추가 정보를 업데이트할 수 있습니다.

      Returns void

Param: userData

유저 정보

Param: data

추가로 업데이트할 정보, model 등의 추가 정보를 업데이트할 수 있습니다.

signIn: ((signIn) => void)

Type declaration

signedAt?: string
tokenType?: string
updateSignInDate: ((day?) => void)

Type declaration

    • (day?): void
    • Parameters

      Returns void

user?: T

유저 정보

Generated using TypeDoc