feat(editor): Implement 'Shared with you' section in the main navigation (#15140)

This commit is contained in:
Milorad FIlipović
2025-05-08 09:24:32 +02:00
committed by GitHub
parent abdbe50907
commit 1c65e82b38
23 changed files with 537 additions and 174 deletions

View File

@@ -23,7 +23,6 @@ const settingsStore = useSettingsStore();
const isCreatingProject = computed(() => globalEntityCreation.isCreatingProject.value);
const displayProjects = computed(() => globalEntityCreation.displayProjects.value);
// TODO: Once we remove the feature flag, we can remove this computed property
const isFoldersFeatureEnabled = computed(() => settingsStore.isFoldersFeatureEnabled);
const home = computed<IMenuItem>(() => ({
@@ -35,6 +34,15 @@ const home = computed<IMenuItem>(() => ({
},
}));
const shared = computed<IMenuItem>(() => ({
id: 'shared',
label: locale.baseText('projects.menu.shared'),
icon: 'share',
route: {
to: { name: VIEWS.SHARED_WITH_ME },
},
}));
const getProjectMenuItem = (project: ProjectListItem) => ({
id: project.id,
label: project.name,
@@ -74,6 +82,22 @@ const showAddFirstProject = computed(
mode="tabs"
data-test-id="project-home-menu-item"
/>
<N8nMenuItem
v-if="projectsStore.isTeamProjectFeatureEnabled || isFoldersFeatureEnabled"
:item="personalProject"
:compact="props.collapsed"
:active-tab="projectsStore.projectNavActiveId"
mode="tabs"
data-test-id="project-personal-menu-item"
/>
<N8nMenuItem
v-if="projectsStore.isTeamProjectFeatureEnabled || isFoldersFeatureEnabled"
:item="shared"
:compact="props.collapsed"
:active-tab="projectsStore.projectNavActiveId"
mode="tabs"
data-test-id="project-shared-menu-item"
/>
</ElMenu>
<hr v-if="projectsStore.isTeamProjectFeatureEnabled" class="mt-m mb-m" />
<N8nText
@@ -104,13 +128,6 @@ const showAddFirstProject = computed(
:collapse="props.collapsed"
:class="$style.projectItems"
>
<N8nMenuItem
:item="personalProject"
:compact="props.collapsed"
:active-tab="projectsStore.projectNavActiveId"
mode="tabs"
data-test-id="project-personal-menu-item"
/>
<N8nMenuItem
v-for="project in displayProjects"
:key="project.id"