UBERF-5781 (#4809)

Signed-off-by: Denis Bykhov <bykhov.denis@gmail.com>
This commit is contained in:
Denis Bykhov
2024-02-28 22:06:24 +07:00
committed by GitHub
parent 42ded3093d
commit bdebc4f8a9
6 changed files with 27 additions and 15 deletions
@@ -15,7 +15,7 @@
<script lang="ts">
import { PersonAccount } from '@hcengineering/contact'
import { AccountRole, getCurrentAccount, roleOrder } from '@hcengineering/core'
import { createQuery } from '@hcengineering/presentation'
import presentation, { createQuery, decodeTokenPayload } from '@hcengineering/presentation'
import setting, { SettingsCategory } from '@hcengineering/setting'
import {
Component,
@@ -27,6 +27,7 @@
} from '@hcengineering/ui'
import { onDestroy } from 'svelte'
import { clearSettingsStore } from '../store'
import { getMetadata } from '@hcengineering/platform'
export let kind: 'navigation' | 'content' | undefined
export let categoryName: string
@@ -38,12 +39,17 @@
let categories: SettingsCategory[] = []
const account = getCurrentAccount() as PersonAccount
const admin = decodeTokenPayload(getMetadata(presentation.metadata.Token) ?? '').admin === 'true'
const settingsQuery = createQuery()
settingsQuery.query(
setting.class.WorkspaceSettingCategory,
{},
(res) => {
categories = roleOrder[account.role] > roleOrder[AccountRole.User] ? res : res.filter((p) => !p.secured)
if (!admin) {
categories = categories.filter((p) => !p.adminOnly)
}
category = findCategory(categoryId)
},
{ sort: { order: 1 } }