diff --git a/src/components/Modal/Common/ModalFrame.vue b/src/components/Modal/Common/ModalFrame.vue index 8637f7af9b..d56806dafd 100644 --- a/src/components/Modal/Common/ModalFrame.vue +++ b/src/components/Modal/Common/ModalFrame.vue @@ -28,7 +28,7 @@ import { useModalStore } from '/@/store/ui/modal' withDefaults( defineProps<{ iconMdi?: boolean - iconName: string + iconName?: string title: string subtitle?: string returnButton?: boolean diff --git a/src/components/Modal/Common/ModalHeader.vue b/src/components/Modal/Common/ModalHeader.vue index 314098f4d4..0b892a5810 100644 --- a/src/components/Modal/Common/ModalHeader.vue +++ b/src/components/Modal/Common/ModalHeader.vue @@ -3,11 +3,17 @@

- {{ - title - }} + + {{ title }}

-

+

+ +

@@ -19,7 +25,7 @@ import ModalReturnButton from './ModalReturnButton.vue' withDefaults( defineProps<{ iconMdi?: boolean - iconName: string + iconName?: string title: string subtitle?: string returnButton?: boolean @@ -69,6 +75,9 @@ withDefaults( weight: 500; size: 0.875rem; } + &[data-has-icon] { + padding-left: 0; + } } .icon { margin-right: 16px; diff --git a/src/components/Modal/GroupCreateModal/GroupCreateModal.vue b/src/components/Modal/GroupCreateModal/GroupCreateModal.vue index 0c157361f1..24f2c3032c 100644 --- a/src/components/Modal/GroupCreateModal/GroupCreateModal.vue +++ b/src/components/Modal/GroupCreateModal/GroupCreateModal.vue @@ -22,8 +22,9 @@ + > + 自分自身をメンバーに追加する +
diff --git a/src/components/Modal/ModalContainer.vue b/src/components/Modal/ModalContainer.vue index a30bf2153a..bac8ab0333 100644 --- a/src/components/Modal/ModalContainer.vue +++ b/src/components/Modal/ModalContainer.vue @@ -63,6 +63,7 @@ import GroupCreateModal from './GroupCreateModal/GroupCreateModal.vue' import GroupMemberEditModal from './GroupMemberEditModal/GroupMemberEditModal.vue' import GroupAdminAddModal from './GroupAdminAddModal/GroupAdminAddModal.vue' import GroupMemberAddModal from './GroupMemberAddModal/GroupMemberAddModal.vue' +import SettingsCacheClearModal from './SettingsCacheClearModal/SettingsCacheClearModal.vue' const { shouldShowModal, currentState } = useModalStore() @@ -96,6 +97,8 @@ const component = computed(() => { return GroupAdminAddModal case 'group-member-add': return GroupMemberAddModal + case 'settings-cache-clear': + return SettingsCacheClearModal } // eslint-disable-next-line no-console console.error('Unexpected modal type:', currentState.value) diff --git a/src/components/Modal/SettingsCacheClearModal/SettingsCacheClearModal.vue b/src/components/Modal/SettingsCacheClearModal/SettingsCacheClearModal.vue new file mode 100644 index 0000000000..e87d011a49 --- /dev/null +++ b/src/components/Modal/SettingsCacheClearModal/SettingsCacheClearModal.vue @@ -0,0 +1,227 @@ + + + + + diff --git a/src/components/Settings/BrowserTab/CacheManager.vue b/src/components/Settings/BrowserTab/CacheManager.vue index fd32f080c3..14140cf35b 100644 --- a/src/components/Settings/BrowserTab/CacheManager.vue +++ b/src/components/Settings/BrowserTab/CacheManager.vue @@ -1,32 +1,16 @@ diff --git a/src/components/UI/FormCheckbox.vue b/src/components/UI/FormCheckbox.vue index 86d4914e7f..73eda8d360 100644 --- a/src/components/UI/FormCheckbox.vue +++ b/src/components/UI/FormCheckbox.vue @@ -1,7 +1,7 @@ @@ -12,11 +12,9 @@ import { useModelValueSyncer } from '/@/composables/useModelSyncer' const props = withDefaults( defineProps<{ modelValue?: boolean - label?: string }>(), { - modelValue: false, - label: '' + modelValue: false } ) @@ -28,7 +26,7 @@ const value = useModelValueSyncer(props, emit) diff --git a/src/lib/basic/file.ts b/src/lib/basic/file.ts index 785ee5a82c..3da90d8e52 100644 --- a/src/lib/basic/file.ts +++ b/src/lib/basic/file.ts @@ -59,6 +59,6 @@ const sizePrefix = ['', 'K', 'M', 'G'] /** byteを適当にKBなどに直す */ export const prettifyFileSize = (byte: number) => { - const s = Math.floor(Math.log10(byte) / 3) + const s = byte ? Math.floor(Math.log10(byte) / 3) : 0 return `${Math.round((byte / 1000 ** s) * 100) / 100}${sizePrefix[s]}B` } diff --git a/src/store/ui/modal/states.ts b/src/store/ui/modal/states.ts index 4e105b4829..208542ee86 100644 --- a/src/store/ui/modal/states.ts +++ b/src/store/ui/modal/states.ts @@ -24,6 +24,7 @@ type ModalStateType = | 'group-member-edit' | 'group-admin-add' | 'group-member-add' + | 'settings-cache-clear' export type ModalState = | UserModalState @@ -40,6 +41,7 @@ export type ModalState = | GroupMemberEditModalState | GroupAdminAddModalState | GroupMemberAddModalState + | SettingsCacheClearModalState interface BaseModalState { /** モーダル種別 */ @@ -123,3 +125,7 @@ interface GroupMemberAddModalState extends BaseModalState { type: 'group-member-add' id: UserGroupId } + +interface SettingsCacheClearModalState extends BaseModalState { + type: 'settings-cache-clear' +}