refactor: move components to own subdirs

This commit is contained in:
2026-01-05 18:27:17 +02:00
parent 57642efc7b
commit a07c8e452f
76 changed files with 139 additions and 85 deletions

View File

@@ -23,7 +23,7 @@ import { defineComponent } from 'vue'
import NcContent from '@nextcloud/vue/components/NcContent'
import NcAppContent from '@nextcloud/vue/components/NcAppContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import AppNavigation from '@/components/AppNavigation.vue'
import AppNavigation from '@/components/AppNavigation'
import { isDarkTheme } from '@nextcloud/vue/functions/isDarkTheme'
export default defineComponent({

View File

@@ -0,0 +1,2 @@
import AdminTable from './AdminTable.vue'
export default AdminTable

View File

@@ -193,7 +193,7 @@ import NcAppNavigationItem from '@nextcloud/vue/components/NcAppNavigationItem'
import NcAppNavigationSearch from '@nextcloud/vue/components/NcAppNavigationSearch'
import NcActionButton from '@nextcloud/vue/components/NcActionButton'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import UserInfo from '@/components/UserInfo.vue'
import UserInfo from '@/components/UserInfo'
import HomeIcon from '@icons/Home.vue'
import ForumIcon from '@icons/Forum.vue'
import FolderIcon from '@icons/Folder.vue'

View File

@@ -0,0 +1,2 @@
import AppNavigation from './AppNavigation.vue'
export default AppNavigation

View File

@@ -0,0 +1,2 @@
import AppToolbar from './AppToolbar.vue'
export default AppToolbar

View File

@@ -43,7 +43,7 @@
import { defineComponent, type PropType } from 'vue'
import NcRichContenteditable from '@nextcloud/vue/components/NcRichContenteditable'
import NcNoteCard from '@nextcloud/vue/components/NcNoteCard'
import BBCodeToolbar from './BBCodeToolbar.vue'
import BBCodeToolbar from '@/components/BBCodeToolbar'
import UploadIcon from '@icons/Upload.vue'
import { t } from '@nextcloud/l10n'
import { ocs } from '@/axios'

View File

@@ -0,0 +1,2 @@
import BBCodeEditor from './BBCodeEditor.vue'
export default BBCodeEditor

View File

@@ -0,0 +1,2 @@
import BBCodeHelpDialog from './BBCodeHelpDialog.vue'
export default BBCodeHelpDialog

View File

@@ -122,7 +122,7 @@ import PaperclipIcon from '@icons/Paperclip.vue'
import UploadIcon from '@icons/Upload.vue'
import EmoticonIcon from '@icons/Emoticon.vue'
import HelpCircleIcon from '@icons/HelpCircle.vue'
import BBCodeHelpDialog from './BBCodeHelpDialog.vue'
import BBCodeHelpDialog from '@/components/BBCodeHelpDialog'
import { t } from '@nextcloud/l10n'
import { webDav, ocs } from '@/axios'

View File

@@ -0,0 +1,2 @@
import BBCodeToolbar from './BBCodeToolbar.vue'
export default BBCodeToolbar

View File

@@ -0,0 +1,2 @@
import CategoryCard from './CategoryCard.vue'
export default CategoryCard

View File

@@ -0,0 +1,2 @@
import HeaderEditDialog from './HeaderEditDialog.vue'
export default HeaderEditDialog

View File

@@ -0,0 +1,2 @@
import LazyEmojiPicker from './LazyEmojiPicker'
export default LazyEmojiPicker

View File

@@ -0,0 +1,2 @@
import MoveCategoryDialog from './MoveCategoryDialog.vue'
export default MoveCategoryDialog

View File

@@ -0,0 +1,2 @@
import NotFoundPage from './NotFoundPage.vue'
export default NotFoundPage

View File

@@ -13,7 +13,7 @@
<script lang="ts">
import { defineComponent } from 'vue'
import Skeleton from './Skeleton.vue'
import Skeleton from '@/components/Skeleton'
export default defineComponent({
name: 'PageHeader',

View File

@@ -0,0 +1,2 @@
import PageHeader from './PageHeader.vue'
export default PageHeader

View File

@@ -0,0 +1,2 @@
import PageWrapper from './PageWrapper.vue'
export default PageWrapper

View File

@@ -0,0 +1,2 @@
import Pagination from './Pagination.vue'
export default Pagination

View File

@@ -96,10 +96,10 @@ import ReplyIcon from '@icons/Reply.vue'
import PencilIcon from '@icons/Pencil.vue'
import DeleteIcon from '@icons/Delete.vue'
import HistoryIcon from '@icons/History.vue'
import UserInfo from './UserInfo.vue'
import PostReactions from './PostReactions.vue'
import PostEditForm from './PostEditForm.vue'
import PostHistoryDialog from './PostHistoryDialog.vue'
import UserInfo from '@/components/UserInfo'
import PostReactions from '@/components/PostReactions'
import PostEditForm from '@/components/PostEditForm'
import PostHistoryDialog from '@/components/PostHistoryDialog'
import { t } from '@nextcloud/l10n'
import { getCurrentUser } from '@nextcloud/auth'
import { useUserRole } from '@/composables/useUserRole'

View File

@@ -0,0 +1,2 @@
import PostCard from './PostCard.vue'
export default PostCard

View File

@@ -29,7 +29,7 @@
import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import BBCodeEditor from './BBCodeEditor.vue'
import BBCodeEditor from '@/components/BBCodeEditor'
import { t } from '@nextcloud/l10n'
export default defineComponent({

View File

@@ -0,0 +1,2 @@
import PostEditForm from './PostEditForm.vue'
export default PostEditForm

View File

@@ -75,7 +75,7 @@ import NcButton from '@nextcloud/vue/components/NcButton'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import HistoryIcon from '@icons/History.vue'
import UserInfo from '@/components/UserInfo.vue'
import UserInfo from '@/components/UserInfo'
import { t, n } from '@nextcloud/l10n'
import { ocs } from '@/axios'
import type { PostHistoryResponse } from '@/types'

View File

@@ -0,0 +1,2 @@
import PostHistoryDialog from './PostHistoryDialog.vue'
export default PostHistoryDialog

View File

@@ -0,0 +1,2 @@
import PostReactions from './PostReactions.vue'
export default PostReactions

View File

@@ -42,8 +42,8 @@ import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import SendIcon from '@icons/Send.vue'
import UserInfo from './UserInfo.vue'
import BBCodeEditor from './BBCodeEditor.vue'
import UserInfo from '@/components/UserInfo'
import BBCodeEditor from '@/components/BBCodeEditor'
import { t } from '@nextcloud/l10n'
import { useCurrentUser } from '@/composables/useCurrentUser'

View File

@@ -0,0 +1,2 @@
import PostReplyForm from './PostReplyForm.vue'
export default PostReplyForm

View File

@@ -0,0 +1,2 @@
import RoleBadge from './RoleBadge.vue'
export default RoleBadge

View File

@@ -0,0 +1,2 @@
import SearchPostResult from './SearchPostResult.vue'
export default SearchPostResult

View File

@@ -0,0 +1,2 @@
import SearchThreadResult from './SearchThreadResult.vue'
export default SearchThreadResult

View File

@@ -0,0 +1,2 @@
import Skeleton from './Skeleton.vue'
export default Skeleton

View File

@@ -58,7 +58,7 @@
<script lang="ts">
import { defineComponent, type PropType } from 'vue'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import UserInfo from '@/components/UserInfo.vue'
import UserInfo from '@/components/UserInfo'
import PinIcon from '@icons/Pin.vue'
import LockIcon from '@icons/Lock.vue'
import CommentIcon from '@icons/Comment.vue'

View File

@@ -0,0 +1,2 @@
import ThreadCard from './ThreadCard.vue'
export default ThreadCard

View File

@@ -61,8 +61,8 @@ import CheckIcon from '@icons/Check.vue'
import ContentSaveIcon from '@icons/ContentSave.vue'
import ContentSaveCheckIcon from '@icons/ContentSaveCheck.vue'
import ContentSaveAlertIcon from '@icons/ContentSaveAlert.vue'
import UserInfo from './UserInfo.vue'
import BBCodeEditor from './BBCodeEditor.vue'
import UserInfo from '@/components/UserInfo'
import BBCodeEditor from '@/components/BBCodeEditor'
import { t } from '@nextcloud/l10n'
import { useCurrentUser } from '@/composables/useCurrentUser'

View File

@@ -0,0 +1,2 @@
import ThreadCreateForm from './ThreadCreateForm.vue'
export default ThreadCreateForm

View File

@@ -0,0 +1,2 @@
import UserAvatar from './UserAvatar.vue'
export default UserAvatar

View File

@@ -37,8 +37,8 @@
<script lang="ts">
import { defineComponent, type PropType } from 'vue'
import UserAvatar from './UserAvatar.vue'
import RoleBadge from './RoleBadge.vue'
import UserAvatar from '@/components/UserAvatar'
import RoleBadge from '@/components/RoleBadge'
import type { Role } from '@/types'
import { isAdminRole, isModeratorRole, isCustomRole } from '@/constants'

View File

@@ -0,0 +1,2 @@
import UserInfo from './UserInfo.vue'
export default UserInfo

View File

@@ -115,11 +115,11 @@ import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import ThreadCard from '@/components/ThreadCard.vue'
import Pagination from '@/components/Pagination.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import ThreadCard from '@/components/ThreadCard'
import Pagination from '@/components/Pagination'
import ArrowLeftIcon from '@icons/ArrowLeft.vue'
import RefreshIcon from '@icons/Refresh.vue'
import BookmarkIcon from '@icons/Bookmark.vue'

View File

@@ -62,10 +62,10 @@ import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import CategoryCard from '@/components/CategoryCard.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import CategoryCard from '@/components/CategoryCard'
import RefreshIcon from '@icons/Refresh.vue'
import { useCategories } from '@/composables/useCategories'
import { usePublicSettings } from '@/composables/usePublicSettings'

View File

@@ -10,7 +10,7 @@
<script setup lang="ts">
import { t } from '@nextcloud/l10n'
import NotFoundPage from '../components/NotFoundPage.vue'
import NotFoundPage from '@/components/NotFoundPage'
import FolderAlertIcon from '@icons/FolderAlert.vue'
const strings = {

View File

@@ -129,11 +129,11 @@ import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import ThreadCard from '@/components/ThreadCard.vue'
import Pagination from '@/components/Pagination.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import ThreadCard from '@/components/ThreadCard'
import Pagination from '@/components/Pagination'
import CategoryNotFound from '@/views/CategoryNotFound.vue'
import ArrowLeftIcon from '@icons/ArrowLeft.vue'
import RefreshIcon from '@icons/Refresh.vue'

View File

@@ -64,10 +64,10 @@ import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import ThreadCreateForm, { type DraftStatus } from '@/components/ThreadCreateForm.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import ThreadCreateForm, { type DraftStatus } from '@/components/ThreadCreateForm'
import ArrowLeftIcon from '@icons/ArrowLeft.vue'
import type { Category, Thread, Draft } from '@/types'
import { ocs } from '@/axios'

View File

@@ -12,8 +12,8 @@
<script setup lang="ts">
import { t } from '@nextcloud/l10n'
import NotFoundPage from '../components/NotFoundPage.vue'
import PageWrapper from '../components/PageWrapper.vue'
import NotFoundPage from '@/components/NotFoundPage'
import PageWrapper from '@/components/PageWrapper'
import AlertCircleIcon from '@icons/AlertCircle.vue'
const strings = {

View File

@@ -165,9 +165,9 @@ import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcAvatar from '@nextcloud/vue/components/NcAvatar'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import ThreadCard from '@/components/ThreadCard.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import ThreadCard from '@/components/ThreadCard'
import ArrowLeftIcon from '@icons/ArrowLeft.vue'
import RefreshIcon from '@icons/Refresh.vue'
import type { ForumUser, Thread, Post } from '@/types'

View File

@@ -137,11 +137,11 @@ import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcCheckboxRadioSwitch from '@nextcloud/vue/components/NcCheckboxRadioSwitch'
import PageWrapper from '@/components/PageWrapper.vue'
import PageWrapper from '@/components/PageWrapper'
import MagnifyIcon from '@icons/Magnify.vue'
import HelpCircleIcon from '@icons/HelpCircle.vue'
import SearchThreadResult from '@/components/SearchThreadResult.vue'
import SearchPostResult from '@/components/SearchPostResult.vue'
import SearchThreadResult from '@/components/SearchThreadResult'
import SearchPostResult from '@/components/SearchPostResult'
import type { Thread, Post } from '@/types'
import { ocs } from '@/axios'
import { t, n } from '@nextcloud/l10n'

View File

@@ -10,7 +10,7 @@
<script setup lang="ts">
import { t } from '@nextcloud/l10n'
import NotFoundPage from '../components/NotFoundPage.vue'
import NotFoundPage from '@/components/NotFoundPage'
import MessageAlertIcon from '@icons/MessageAlert.vue'
const strings = {

View File

@@ -323,13 +323,13 @@ import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import NcNoteCard from '@nextcloud/vue/components/NcNoteCard'
import NcTextField from '@nextcloud/vue/components/NcTextField'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PostCard from '@/components/PostCard.vue'
import PostReplyForm from '@/components/PostReplyForm.vue'
import Pagination from '@/components/Pagination.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import PostCard from '@/components/PostCard'
import PostReplyForm from '@/components/PostReplyForm'
import Pagination from '@/components/Pagination'
import ThreadNotFound from '@/views/ThreadNotFound.vue'
import MoveCategoryDialog from '@/components/MoveCategoryDialog.vue'
import MoveCategoryDialog from '@/components/MoveCategoryDialog'
import PinIcon from '@icons/Pin.vue'
import PinOffIcon from '@icons/PinOff.vue'
import LockIcon from '@icons/Lock.vue'

View File

@@ -121,10 +121,10 @@ import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcCheckboxRadioSwitch from '@nextcloud/vue/components/NcCheckboxRadioSwitch'
import NcTextField from '@nextcloud/vue/components/NcTextField'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import BBCodeEditor from '@/components/BBCodeEditor.vue'
import AppToolbar from '@/components/AppToolbar'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import BBCodeEditor from '@/components/BBCodeEditor'
import ArrowLeftIcon from '@icons/ArrowLeft.vue'
import CheckIcon from '@icons/Check.vue'
import FolderIcon from '@icons/Folder.vue'

View File

@@ -269,10 +269,10 @@ import DeleteIcon from '@icons/Delete.vue'
import EyeIcon from '@icons/Eye.vue'
import EyeOffIcon from '@icons/EyeOff.vue'
import HelpCircleIcon from '@icons/HelpCircle.vue'
import BBCodeHelpDialog from '@/components/BBCodeHelpDialog.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import AppToolbar from '@/components/AppToolbar.vue'
import BBCodeHelpDialog from '@/components/BBCodeHelpDialog'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import AppToolbar from '@/components/AppToolbar'
import { ocs } from '@/axios'
import { t } from '@nextcloud/l10n'

View File

@@ -177,9 +177,9 @@
<script lang="ts">
import { defineComponent } from 'vue'
import PageWrapper from '@/components/PageWrapper.vue'
import AppToolbar from '@/components/AppToolbar.vue'
import HeaderEditDialog from '@/components/HeaderEditDialog.vue'
import PageWrapper from '@/components/PageWrapper'
import AppToolbar from '@/components/AppToolbar'
import HeaderEditDialog from '@/components/HeaderEditDialog'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcDialog from '@nextcloud/vue/components/NcDialog'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'

View File

@@ -321,10 +321,10 @@
<script lang="ts">
import { defineComponent } from 'vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import AppToolbar from '@/components/AppToolbar.vue'
import HeaderEditDialog from '@/components/HeaderEditDialog.vue'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import AppToolbar from '@/components/AppToolbar'
import HeaderEditDialog from '@/components/HeaderEditDialog'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcCheckboxRadioSwitch from '@nextcloud/vue/components/NcCheckboxRadioSwitch'
import NcDialog from '@nextcloud/vue/components/NcDialog'

View File

@@ -174,9 +174,9 @@ import { defineComponent } from 'vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import UserInfo from '@/components/UserInfo.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import UserInfo from '@/components/UserInfo'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import AccountMultipleIcon from '@icons/AccountMultiple.vue'
import AccountPlusIcon from '@icons/AccountPlus.vue'
import ForumIcon from '@icons/Forum.vue'

View File

@@ -95,8 +95,8 @@ import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcTextField from '@nextcloud/vue/components/NcTextField'
import NcTextArea from '@nextcloud/vue/components/NcTextArea'
import NcCheckboxRadioSwitch from '@nextcloud/vue/components/NcCheckboxRadioSwitch'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import CheckIcon from '@icons/Check.vue'
import { ocs } from '@/axios'
import { t } from '@nextcloud/l10n'

View File

@@ -268,9 +268,9 @@ import NcNoteCard from '@nextcloud/vue/components/NcNoteCard'
import NcTextField from '@nextcloud/vue/components/NcTextField'
import NcTextArea from '@nextcloud/vue/components/NcTextArea'
import ArrowLeftIcon from '@icons/ArrowLeft.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import AppToolbar from '@/components/AppToolbar'
import { ocs } from '@/axios'
import { t } from '@nextcloud/l10n'
import { isAdminRole, isGuestRole, isDefaultRole } from '@/constants'

View File

@@ -106,14 +106,14 @@ import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import NcActions from '@nextcloud/vue/components/NcActions'
import NcActionButton from '@nextcloud/vue/components/NcActionButton'
import AdminTable, { type TableColumn } from '@/components/AdminTable.vue'
import RoleBadge from '@/components/RoleBadge.vue'
import AdminTable, { type TableColumn } from '@/components/AdminTable'
import RoleBadge from '@/components/RoleBadge'
import PlusIcon from '@icons/Plus.vue'
import PencilIcon from '@icons/Pencil.vue'
import DeleteIcon from '@icons/Delete.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import AppToolbar from '@/components/AppToolbar.vue'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import AppToolbar from '@/components/AppToolbar'
import { ocs } from '@/axios'
import { t } from '@nextcloud/l10n'
import type { Role } from '@/types'

View File

@@ -140,12 +140,12 @@ import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import NcSelect from '@nextcloud/vue/components/NcSelect'
import NcDialog from '@nextcloud/vue/components/NcDialog'
import UserInfo from '@/components/UserInfo.vue'
import RoleBadge from '@/components/RoleBadge.vue'
import AdminTable, { type TableColumn } from '@/components/AdminTable.vue'
import UserInfo from '@/components/UserInfo'
import RoleBadge from '@/components/RoleBadge'
import AdminTable, { type TableColumn } from '@/components/AdminTable'
import PencilIcon from '@icons/Pencil.vue'
import PageWrapper from '@/components/PageWrapper.vue'
import PageHeader from '@/components/PageHeader.vue'
import PageWrapper from '@/components/PageWrapper'
import PageHeader from '@/components/PageHeader'
import { ocs } from '@/axios'
import { t } from '@nextcloud/l10n'
import { isGuestRole } from '@/constants'