Skip to content

User Handler, der den typischen Umgang mit einem eingeloggten bzw. sich einloggenden Phoenix-User erleichtert

Notifications You must be signed in to change notification settings

phoenixreisen/user

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Phoenix Reisen User

User Handler, der den typischen Umgang mit einem eingeloggten bzw. sich einloggenden Phoenix-User erleichtert.

API

export type UserData = {
    [key: string]: any,
}

export const enum UserTypes {
    'Mitarbeiter' = 'Mitarbeiter',
    'Buchung' = 'Buchung',
    'Agentur' = 'Agentur',
}

export interface UserProps {
    online: boolean,
    data: UserData | null,
    jwt: string | undefined,

    setJWTKey: (key: string) => void,
    setUserKey: (key: string) => void,
    setSessionOnly: (sessionOnly: boolean) => void,
    
    load: () => UserProps,
    persist: () => void,

    getType: () => string | null,
    getAgencyNr: () => number | null,
    getPhxUsername: () => string | null,
    hasRole: (role: string) => boolean,
    
    isPhx: () => boolean,
    isAdmin: () => boolean,
    isAgency: () => boolean,
    isLoggedIn: () => boolean,
    isSessionOnly: () => boolean,
    isServiceProvider: () => boolean,
    isPasswordAuthenticated: () => boolean,
    isInPrivileged: (names: Array<string>) => boolean,
    
    logout: () => void,
    login: (jwt: string, data?: UserData) => void,
}

Installation

npm install --save @phoenixreisen/user

Test

npm run test

Deployment

[npm install]                       # Abhängigkeiten installieren
npm version [major|minor|patch]     # increase version x.x.x => major.minor.patch
npm publish                         # upload to npm
git push

About

User Handler, der den typischen Umgang mit einem eingeloggten bzw. sich einloggenden Phoenix-User erleichtert

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published