mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-19 11:01:15 +00:00
- Fix autofixable violations - Remove unused directives - Allow for PascalCased variables - needed for dynamically imported or assigned classes, decorators, routers, etc.
28 lines
815 B
TypeScript
28 lines
815 B
TypeScript
import type { IPermissions } from '@/Interface';
|
|
import { isAuthorized } from '@/utils';
|
|
import { useUsersStore } from '@/stores/users.store';
|
|
import { defineComponent } from 'vue';
|
|
import type { RouteLocation } from 'vue-router';
|
|
|
|
export const userHelpers = defineComponent({
|
|
methods: {
|
|
canUserAccessRouteByName(name: string): boolean {
|
|
const route = this.$router.resolve({ name });
|
|
|
|
return this.canUserAccessRoute(route);
|
|
},
|
|
|
|
canUserAccessCurrentRoute(): boolean {
|
|
return this.canUserAccessRoute(this.$route);
|
|
},
|
|
|
|
canUserAccessRoute(route: RouteLocation): boolean {
|
|
const permissions: IPermissions = route.meta?.permissions;
|
|
const usersStore = useUsersStore();
|
|
const currentUser = usersStore.currentUser;
|
|
|
|
return permissions && isAuthorized(permissions, currentUser);
|
|
},
|
|
},
|
|
});
|