From e5cb628c9f35bc8717e8d3c74a7ced96bf8ad4be Mon Sep 17 00:00:00 2001 From: rainu Date: Tue, 5 Nov 2024 11:19:50 +0100 Subject: [PATCH] split collection manage tabs into separate views; improve performance for listing collection items --- src/components/layout/Navigation.vue | 42 +++- src/router/index.ts | 15 +- src/views/collection/Manage.vue | 301 --------------------------- src/views/collection/manage/Add.vue | 146 +++++++++++++ src/views/collection/manage/List.vue | 201 ++++++++++++++++++ 5 files changed, 392 insertions(+), 313 deletions(-) delete mode 100644 src/views/collection/Manage.vue create mode 100644 src/views/collection/manage/Add.vue create mode 100644 src/views/collection/manage/List.vue diff --git a/src/components/layout/Navigation.vue b/src/components/layout/Navigation.vue index a76d96f..7ba335e 100644 --- a/src/components/layout/Navigation.vue +++ b/src/components/layout/Navigation.vue @@ -2,7 +2,7 @@ - + - + + + + + + + @@ -79,7 +97,8 @@ import { defineComponent } from "vue" import { RouteCollection, RouteCollectionAnalyse, - RouteCollectionManage, + RouteCollectionManageList, + RouteCollectionManageAdd, RouteCollectionSearch, RouteDirectory, RouteDirectoryAnalyse, @@ -87,8 +106,8 @@ import { RouteExport, RouteHome, RouteImport, - RouteHelp -} from "../../router" + RouteHelp, +} from '../../router' import { mapState } from "pinia" import { useFileStore } from "../../store/file.ts" import { isLocalSupported } from "../../support.ts" @@ -108,7 +127,8 @@ export default defineComponent({ RouteDirectorySearch, RouteCollection, RouteCollectionAnalyse, - RouteCollectionList: RouteCollectionManage, + RouteCollectionManageList, + RouteCollectionManageAdd, RouteCollectionSearch, RouteImport, RouteExport diff --git a/src/router/index.ts b/src/router/index.ts index 7d797eb..a513725 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -19,6 +19,8 @@ export const RouteDirectorySearch = RouteDirectory + '-search' export const RouteCollection = 'collection' export const RouteCollectionAnalyse = RouteCollection + '-analyse' export const RouteCollectionManage = RouteCollection + '-manage' +export const RouteCollectionManageList = RouteCollectionManage + '-list' +export const RouteCollectionManageAdd = RouteCollectionManage + '-add' export const RouteCollectionSearch = RouteCollection + '-search' export const RouteImport = 'import' export const RouteExport = 'export' @@ -87,7 +89,18 @@ export default createRouter({ { name: RouteCollectionManage, path: 'manage', - component: () => import('../views/collection/Manage.vue'), + children: [ + { + name: RouteCollectionManageList, + path: 'list', + component: () => import('../views/collection/manage/List.vue'), + }, + { + name: RouteCollectionManageAdd, + path: 'add', + component: () => import('../views/collection/manage/Add.vue'), + }, + ] }, { name: RouteCollectionSearch, diff --git a/src/views/collection/Manage.vue b/src/views/collection/Manage.vue deleted file mode 100644 index 35cddc4..0000000 --- a/src/views/collection/Manage.vue +++ /dev/null @@ -1,301 +0,0 @@ - - - - - diff --git a/src/views/collection/manage/Add.vue b/src/views/collection/manage/Add.vue new file mode 100644 index 0000000..b04ce38 --- /dev/null +++ b/src/views/collection/manage/Add.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/src/views/collection/manage/List.vue b/src/views/collection/manage/List.vue new file mode 100644 index 0000000..d86a5a2 --- /dev/null +++ b/src/views/collection/manage/List.vue @@ -0,0 +1,201 @@ + + + + +