UNPKG

cheetah-framework

Version:

Cheetah Framework JS used in all our applications

40 lines (31 loc) 925 B
import { LaravelModel, LaravelBackendPromise } from './LaravelModel' import config from '@cheetah/config' class User extends LaravelModel { static get resourceName () { return 'users' } get defaultValue () { return { name: '', email: '', username: '', password: '' } } static check () { return LaravelBackendPromise('get', route(_.get(config, 'auth.routes.check.name', 'check'))) } static login (formData) { return LaravelBackendPromise('post', route(_.get(config, 'auth.routes.login.name', 'login')), formData) } static logout () { return LaravelBackendPromise('post', route(_.get(config, 'auth.routes.logout.name', 'logout'))) } can (...permissions) { return permissions.every(permission => !!this.permissions?.includes(permission)) } is (...roles) { return roles.some(role => !!this.roles?.includes(role)) } } export default User