feat: add Admin layout
This commit is contained in:
@@ -96,7 +96,7 @@ const toast = useToast()
|
||||
const confirm = useConfirm()
|
||||
const auth = useAuthStore()
|
||||
|
||||
const projectId = String(route.params.id)
|
||||
const projectId = ref(String(route.params.id))
|
||||
const tree = ref<DocumentNode[]>([])
|
||||
const loading = ref(false)
|
||||
const selectedId = ref<string | null>(null)
|
||||
@@ -149,7 +149,7 @@ const folderOptions = computed(() => {
|
||||
|
||||
async function loadTree() {
|
||||
try {
|
||||
tree.value = searchMode.value ? await searchDocuments(searchTerm.value) : await getDocumentTree(projectId)
|
||||
tree.value = searchMode.value ? await searchDocuments(searchTerm.value) : await getDocumentTree(projectId.value)
|
||||
} catch (e) {
|
||||
toast.add({ severity: 'error', summary: 'Error', detail: errorMessage(e), life: 4000 })
|
||||
}
|
||||
@@ -157,7 +157,7 @@ async function loadTree() {
|
||||
|
||||
async function loadMembers() {
|
||||
try {
|
||||
const res = await getMembers(projectId, 1, 100)
|
||||
const res = await getMembers(projectId.value, 1, 100)
|
||||
members.value = res.items
|
||||
} catch (e) {
|
||||
toast.add({ severity: 'error', summary: 'Error', detail: errorMessage(e), life: 4000 })
|
||||
@@ -263,7 +263,7 @@ async function onCreate() {
|
||||
if (existing) {
|
||||
nodes = existing.children
|
||||
} else {
|
||||
const created = await createDocument(projectId, {
|
||||
const created = await createDocument(projectId.value, {
|
||||
title: seg,
|
||||
type: 'Folder',
|
||||
parentId,
|
||||
@@ -274,7 +274,7 @@ async function onCreate() {
|
||||
}
|
||||
}
|
||||
|
||||
const created = await createDocument(projectId, {
|
||||
const created = await createDocument(projectId.value, {
|
||||
title: createTitle.value,
|
||||
type: createType.value,
|
||||
parentId,
|
||||
@@ -357,4 +357,24 @@ onMounted(() => {
|
||||
loading.value = false
|
||||
})
|
||||
})
|
||||
|
||||
watch(
|
||||
() => route.params.id,
|
||||
async (id) => {
|
||||
if (!id) return
|
||||
projectId.value = String(id)
|
||||
selectedId.value = null
|
||||
doc.value = null
|
||||
viewerVisible.value = false
|
||||
editing.value = false
|
||||
searchTerm.value = ''
|
||||
searchMode.value = false
|
||||
loading.value = true
|
||||
try {
|
||||
await Promise.all([loadTree(), loadMembers()])
|
||||
} finally {
|
||||
loading.value = false
|
||||
}
|
||||
},
|
||||
)
|
||||
</script>
|
||||
Reference in New Issue
Block a user