diff --git a/packages/nc-gui/middleware/01.security.global.ts b/packages/nc-gui/middleware/01.security.global.ts index 8b40f26861..20ce34a8d0 100644 --- a/packages/nc-gui/middleware/01.security.global.ts +++ b/packages/nc-gui/middleware/01.security.global.ts @@ -6,11 +6,16 @@ export default defineNuxtRouteMiddleware(async (to) => { return } - // allow for shared views + // allow for shared views based on page layout if (to.meta?.layout === 'shared-view') { return } + // allow for shared views based on pageType meta prop + if (to.meta?.pageType === 'shared-view') { + return + } + // throw for all other pages throw createError({ statusCode: 403, message: 'Not allowed' }) } diff --git a/packages/nc-gui/pages/index/[typeOrId]/form/[viewId].vue b/packages/nc-gui/pages/index/[typeOrId]/form/[viewId].vue index 11d3a72576..5152cf8bc7 100644 --- a/packages/nc-gui/pages/index/[typeOrId]/form/[viewId].vue +++ b/packages/nc-gui/pages/index/[typeOrId]/form/[viewId].vue @@ -22,6 +22,7 @@ import { definePageMeta({ public: true, + pageType: 'shared-view', }) useSidebar('nc-left-sidebar', { hasSidebar: false })