feat: RBAC (#8922)

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Val <68596159+valya@users.noreply.github.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Danny Martini <despair.blue@gmail.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: oleg <me@olegivaniv.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: Elias Meire <elias@meire.dev>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Ayato Hayashi <go12limchangyong@gmail.com>
This commit is contained in:
Csaba Tuncsik
2024-05-17 10:53:15 +02:00
committed by GitHub
parent b1f977ebd0
commit 596c472ecc
292 changed files with 14129 additions and 3989 deletions

View File

@@ -0,0 +1,22 @@
import { faker } from '@faker-js/faker';
import type {
ProjectListItem,
ProjectSharingData,
ProjectType,
} from '@/features/projects/projects.types';
export const createProjectSharingData = (projectType?: ProjectType): ProjectSharingData => ({
id: faker.string.uuid(),
name: faker.lorem.words({ min: 1, max: 3 }),
type: projectType || 'personal',
});
export const createProjectListItem = (projectType?: ProjectType): ProjectListItem => {
const project = createProjectSharingData(projectType);
return {
...project,
role: 'project:editor',
createdAt: faker.date.past().toISOString(),
updatedAt: faker.date.recent().toISOString(),
};
};

View File

@@ -0,0 +1,17 @@
import { faker } from '@faker-js/faker';
import type { IUser } from '@/Interface';
import { SignInType } from '@/constants';
export const createUser = (overrides?: Partial<IUser>): IUser => ({
id: faker.string.uuid(),
email: faker.internet.email(),
firstName: faker.person.firstName(),
lastName: faker.person.lastName(),
isDefaultUser: false,
isPending: false,
isPendingUser: false,
hasRecoveryCodesLeft: false,
mfaEnabled: false,
signInType: SignInType.EMAIL,
...overrides,
});