/** * This file defines authentication related models. */ // NPM imports import Immutable from "immutable"; /** Record to store token parameters */ export const tokenRecord = Immutable.Record({ token: null, /** Token string */ expires: null, /** Token expiration date */ }); /** Record to store the full auth state */ export const stateRecord = new Immutable.Record({ token: new tokenRecord(), /** Auth token */ username: null, /** Username */ endpoint: null, /** Ampache server base URL */ rememberMe: false, /** Whether to remember me or not */ isAuthenticated: false, /** Whether authentication is ok or not */ isAuthenticating: false, /** Whether authentication is in progress or not */ error: null, /** An error string */ info: null, /** An info string */ timerID: null, /** Timer ID for setInterval calls to revive API session */ });