mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-19 02:51:14 +00:00
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:
@@ -379,7 +379,8 @@ import { useRootStore } from '@/stores/n8nRoot.store';
|
||||
import { useWorkflowsEEStore } from '@/stores/workflows.ee.store';
|
||||
import { useWorkflowsStore } from '@/stores/workflows.store';
|
||||
import { createEventBus } from 'n8n-design-system/utils';
|
||||
import type { IPermissions } from '@/permissions';
|
||||
import type { PermissionsMap } from '@/permissions';
|
||||
import type { WorkflowScope } from '@n8n/permissions';
|
||||
import { getWorkflowPermissions } from '@/permissions';
|
||||
import { useExternalHooks } from '@/composables/useExternalHooks';
|
||||
import { useSourceControlStore } from '@/stores/sourceControl.store';
|
||||
@@ -472,7 +473,7 @@ export default defineComponent({
|
||||
return this.workflowsStore.workflowId;
|
||||
},
|
||||
workflow(): IWorkflowDb {
|
||||
return this.workflowsStore.workflow;
|
||||
return this.workflowsStore.getWorkflowById(this.workflowId);
|
||||
},
|
||||
currentUser(): IUser | null {
|
||||
return this.usersStore.currentUser;
|
||||
@@ -482,13 +483,13 @@ export default defineComponent({
|
||||
},
|
||||
workflowOwnerName(): string {
|
||||
const fallback = this.$locale.baseText(
|
||||
'workflowSettings.callerPolicy.options.workflowsFromSameOwner.fallback',
|
||||
'workflowSettings.callerPolicy.options.workflowsFromSameProject',
|
||||
);
|
||||
|
||||
return this.workflowsEEStore.getWorkflowOwnerName(`${this.workflowId}`, fallback);
|
||||
},
|
||||
workflowPermissions(): IPermissions {
|
||||
return getWorkflowPermissions(this.currentUser, this.workflow);
|
||||
workflowPermissions(): PermissionsMap<WorkflowScope> {
|
||||
return getWorkflowPermissions(this.workflow);
|
||||
},
|
||||
},
|
||||
async mounted() {
|
||||
@@ -603,14 +604,12 @@ export default defineComponent({
|
||||
{
|
||||
key: 'workflowsFromSameOwner',
|
||||
value: this.$locale.baseText(
|
||||
'workflowSettings.callerPolicy.options.workflowsFromSameOwner',
|
||||
this.workflow.homeProject?.type === 'personal'
|
||||
? 'workflowSettings.callerPolicy.options.workflowsFromPersonalProject'
|
||||
: 'workflowSettings.callerPolicy.options.workflowsFromTeamProject',
|
||||
{
|
||||
interpolate: {
|
||||
owner: this.workflowPermissions.isOwner
|
||||
? this.$locale.baseText(
|
||||
'workflowSettings.callerPolicy.options.workflowsFromSameOwner.owner',
|
||||
)
|
||||
: this.workflowOwnerName,
|
||||
projectName: this.workflowOwnerName,
|
||||
},
|
||||
},
|
||||
),
|
||||
@@ -762,7 +761,9 @@ export default defineComponent({
|
||||
}
|
||||
},
|
||||
async loadWorkflows() {
|
||||
const workflows = (await this.workflowsStore.fetchAllWorkflows()) as IWorkflowShortResponse[];
|
||||
const workflows = (await this.workflowsStore.fetchAllWorkflows(
|
||||
this.workflow.homeProject?.id,
|
||||
)) as IWorkflowShortResponse[];
|
||||
workflows.sort((a, b) => {
|
||||
if (a.name.toLowerCase() < b.name.toLowerCase()) {
|
||||
return -1;
|
||||
|
||||
Reference in New Issue
Block a user