From 8a072b1b4d5c4d81ed616f355eb2d201012d476d Mon Sep 17 00:00:00 2001
From: syuilo <4439005+syuilo@users.noreply.github.com>
Date: Sat, 10 May 2025 17:03:17 +0900
Subject: [PATCH] wip
---
.../frontend/src/components/MkDrive.file.vue | 4 +-
packages/frontend/src/components/MkDrive.vue | 143 ++++++++++--------
.../src/composables/use-pagination.ts | 6 +-
3 files changed, 90 insertions(+), 63 deletions(-)
diff --git a/packages/frontend/src/components/MkDrive.file.vue b/packages/frontend/src/components/MkDrive.file.vue
index 70ab60cfae..388b8b56d7 100644
--- a/packages/frontend/src/components/MkDrive.file.vue
+++ b/packages/frontend/src/components/MkDrive.file.vue
@@ -240,8 +240,8 @@ function onDragend() {
.name {
display: block;
- margin: 4px 0 0 0;
- font-size: 0.8em;
+ margin: 8px 0 0 0;
+ font-size: 85%;
text-align: center;
word-break: break-all;
color: var(--MI_THEME-fg);
diff --git a/packages/frontend/src/components/MkDrive.vue b/packages/frontend/src/components/MkDrive.vue
index 35aed7c202..3407805660 100644
--- a/packages/frontend/src/components/MkDrive.vue
+++ b/packages/frontend/src/components/MkDrive.vue
@@ -35,72 +35,80 @@ SPDX-License-Identifier: AGPL-3.0-only
-
-
-
-
-
-
-
{{ i18n.ts.loadMore }}
-
-
-
-
-
-
- {{ item.date.getFullYear() }}/{{ item.date.getMonth() + 1 }}
-
-
-
-
-
+
+
+
+
+
-
-
{{ i18n.ts.loadMore }}
-
+
{{ i18n.ts.loadMore }}
+
-
-
{{ i18n.ts['empty-draghover'] }}
-
{{ i18n.ts.emptyDrive }}
{{ i18n.ts['empty-drive-description'] }}
-
{{ i18n.ts.emptyFolder }}
+
+
+
+
+ {{ item.date.getFullYear() }}/{{ item.date.getMonth() + 1 }}
+
+
+
+
+
+
+
+
{{ i18n.ts.loadMore }}
+
+
+
+
{{ i18n.ts['empty-draghover'] }}
+
{{ i18n.ts.emptyDrive }}
{{ i18n.ts['empty-drive-description'] }}
+
{{ i18n.ts.emptyFolder }}
+
+
+
-
-
+
+
+
+ {{ i18n.ts.move }}...
+
+
@@ -156,6 +164,8 @@ const draghover = ref(false);
// (自分自身の階層にドロップできないようにするためのフラグ)
const isDragSource = ref(false);
+const isEditMode = ref(false);
+
const fetching = ref(true);
const sortModeSelect = ref
>('+createdAt');
@@ -171,6 +181,7 @@ const filesPaginator = usePagination({
})),
},
autoInit: false,
+ autoReInit: false,
});
const foldersPaginator = usePagination({
@@ -182,6 +193,7 @@ const foldersPaginator = usePagination({
})),
},
autoInit: false,
+ autoReInit: false,
});
const filesTimeline = makeDateGroupedTimelineComputedRef(filesPaginator.items, 'month');
@@ -613,6 +625,11 @@ function getMenu() {
text: i18n.ts.createFolder,
icon: 'ti ti-folder-plus',
action: () => { createFolder(); },
+ }, { type: 'divider' }, {
+ type: 'switch',
+ text: i18n.ts.edit,
+ icon: 'ti ti-pointer',
+ ref: isEditMode,
});
return menu;
@@ -739,6 +756,14 @@ onBeforeUnmount(() => {
background-color: color(from var(--MI_THEME-bg) srgb r g b / 0.85);
}
+.footer {
+ padding: 8px 16px;
+ font-size: 90%;
+ -webkit-backdrop-filter: var(--MI-blur, blur(8px));
+ backdrop-filter: var(--MI-blur, blur(8px));
+ background-color: color(from var(--MI_THEME-bg) srgb r g b / 0.85);
+}
+
.empty {
padding: 16px;
text-align: center;
diff --git a/packages/frontend/src/composables/use-pagination.ts b/packages/frontend/src/composables/use-pagination.ts
index 9325caeadc..cf8543c16a 100644
--- a/packages/frontend/src/composables/use-pagination.ts
+++ b/packages/frontend/src/composables/use-pagination.ts
@@ -40,6 +40,7 @@ export type PagingCtx(props: {
ctx: PagingCtx;
autoInit?: boolean;
+ autoReInit?: boolean;
useShallowRef?: boolean;
}) {
const items = props.useShallowRef ? shallowRef([]) : ref([]);
@@ -50,8 +51,9 @@ export function usePagination [props.ctx.endpoint, props.ctx.params], init, { deep: true });
+ if (props.autoReInit !== false) {
+ watch(() => [props.ctx.endpoint, props.ctx.params], init, { deep: true });
+ }
function getNewestId(): string | null | undefined {
// 様々な要因により並び順は保証されないのでソートが必要