Browse Source

fix: use basesUser state for getting user count

Signed-off-by: mertmit <mertmit99@gmail.com>
pull/7202/head
mertmit 12 months ago
parent
commit
d8485196af
  1. 4
      packages/nc-gui/components/account/UsersModal.vue
  2. 35
      packages/nc-gui/components/project/View.vue
  3. 3
      packages/nc-gui/store/bases.ts

4
packages/nc-gui/components/account/UsersModal.vue

@ -34,6 +34,8 @@ const { copy } = useCopy()
const { dashboardUrl } = useDashboard() const { dashboardUrl } = useDashboard()
const { clearBasesUser } = useBases()
const usersData = ref<Users>({ emails: '', role: OrgUserRoles.VIEWER, invitationToken: undefined }) const usersData = ref<Users>({ emails: '', role: OrgUserRoles.VIEWER, invitationToken: undefined })
const formRef = ref() const formRef = ref()
@ -64,6 +66,8 @@ const saveUser = async () => {
// Successfully updated the user details // Successfully updated the user details
message.success(t('msg.success.userAdded')) message.success(t('msg.success.userAdded'))
clearBasesUser()
} catch (e: any) { } catch (e: any) {
console.error(e) console.error(e)
message.error(await extractSdkResponseErrorMsg(e)) message.error(await extractSdkResponseErrorMsg(e))

35
packages/nc-gui/components/project/View.vue

@ -5,9 +5,7 @@ import { isEeUI } from '#imports'
const basesStore = useBases() const basesStore = useBases()
const { getBaseUsers } = basesStore const { openedProject, activeProjectId, basesUser } = storeToRefs(basesStore)
const { openedProject, activeProjectId, baseUserCount } = storeToRefs(basesStore)
const { activeTables } = storeToRefs(useTablesStore()) const { activeTables } = storeToRefs(useTablesStore())
const { activeWorkspace, workspaceUserCount } = storeToRefs(useWorkspace()) const { activeWorkspace, workspaceUserCount } = storeToRefs(useWorkspace())
@ -32,24 +30,9 @@ const { isMobileMode } = useGlobal()
const baseSettingsState = ref('') const baseSettingsState = ref('')
const userCount = isEeUI ? workspaceUserCount : baseUserCount const userCount = computed(() =>
isEeUI ? workspaceUserCount : activeProjectId.value ? basesUser.value.get(activeProjectId.value)?.length : 0,
const updateBaseUserCount = async () => { )
if (!baseUserCount || !isUIAllowed('newUser')) return
try {
const { totalRows } = await getBaseUsers({
baseId: activeProjectId.value!,
page: 1,
searchText: undefined,
limit: 20,
})
baseUserCount.value = totalRows
} catch (e: any) {
message.error(await extractSdkResponseErrorMsg(e))
}
}
watch( watch(
() => route.value.query?.page, () => route.value.query?.page,
@ -82,16 +65,6 @@ watch(projectPageTab, () => {
} }
}) })
watch(
() => route.value.params.baseId,
(newVal, oldVal) => {
if (newVal && oldVal === undefined) {
updateBaseUserCount()
}
},
{ immediate: true },
)
watch( watch(
() => openedProject.value?.title, () => openedProject.value?.title,
() => { () => {

3
packages/nc-gui/store/bases.ts

@ -14,8 +14,6 @@ export const useBases = defineStore('basesStore', () => {
const basesList = computed<NcProject[]>(() => Array.from(bases.value.values()).sort((a, b) => a.updated_at - b.updated_at)) const basesList = computed<NcProject[]>(() => Array.from(bases.value.values()).sort((a, b) => a.updated_at - b.updated_at))
const basesUser = ref<Map<string, User[]>>(new Map()) const basesUser = ref<Map<string, User[]>>(new Map())
const baseUserCount = ref<number | undefined>(undefined)
const router = useRouter() const router = useRouter()
const route = router.currentRoute const route = router.currentRoute
@ -299,7 +297,6 @@ export const useBases = defineStore('basesStore', () => {
return { return {
bases, bases,
basesList, basesList,
baseUserCount,
loadProjects, loadProjects,
loadProject, loadProject,
getSqlUi, getSqlUi,

Loading…
Cancel
Save