diff --git a/src/components/PermissionsDialog.vue b/src/components/PermissionsDialog.vue index aa525b2..9130259 100644 --- a/src/components/PermissionsDialog.vue +++ b/src/components/PermissionsDialog.vue @@ -215,6 +215,7 @@ import type { import { RoleLevel, } from '@/utils/permissions'; +import { useRoute } from 'vue-router/composables'; export interface UserPermissionSpec { role: Role; @@ -237,7 +238,10 @@ export default defineComponent({ }, }, setup(props) { - const permDialog = ref(false); + const workspacePermissionsEditable = computed(() => store.getters.permissionLevel >= RoleLevel.maintainer); + + const route = useRoute(); + const permDialog = ref(workspacePermissionsEditable.value && route.query.permissions === 'true'); const mutablePermissions: Ref = ref(null); const userSearchString: Ref = ref(null); const userSearchResults: Ref = ref([]); @@ -308,8 +312,6 @@ export default defineComponent({ } const throttledUserSearch = debounce(searchUsers, 200); - const workspacePermissionsEditable = computed(() => store.getters.permissionLevel >= RoleLevel.maintainer); - function initMutableData(permissions: WorkspacePermissionsSpec) { mutablePermissions.value = cloneDeep(permissions); publicToggle.value = permissions.public; diff --git a/src/components/WorkspaceOptionMenu.vue b/src/components/WorkspaceOptionMenu.vue index ed54acf..977afe0 100644 --- a/src/components/WorkspaceOptionMenu.vue +++ b/src/components/WorkspaceOptionMenu.vue @@ -5,6 +5,7 @@ offset-y origin="center center" transition="scale-transition" + eager >