diff --git a/frontend/src/components/ProgressBar.vue b/frontend/src/components/ProgressBar.vue index bd4f75d482..de9d67b12a 100644 --- a/frontend/src/components/ProgressBar.vue +++ b/frontend/src/components/ProgressBar.vue @@ -1,6 +1,3 @@ - - diff --git a/frontend/src/components/Shell.vue b/frontend/src/components/Shell.vue index b1b6f6b704..c6f4fa461d 100644 --- a/frontend/src/components/Shell.vue +++ b/frontend/src/components/Shell.vue @@ -2,13 +2,13 @@
@@ -39,13 +39,15 @@
- diff --git a/frontend/src/components/Sidebar.vue b/frontend/src/components/Sidebar.vue index 5bbf884792..b0eebaab7f 100644 --- a/frontend/src/components/Sidebar.vue +++ b/frontend/src/components/Sidebar.vue @@ -4,7 +4,7 @@ - diff --git a/frontend/src/components/prompts/Copy.vue b/frontend/src/components/prompts/Copy.vue index 9b5e4c638c..eb760e3954 100644 --- a/frontend/src/components/prompts/Copy.vue +++ b/frontend/src/components/prompts/Copy.vue @@ -8,7 +8,7 @@

{{ $t("prompts.copyMessage") }}

@@ -17,10 +17,10 @@ class="card-action" style="display: flex; align-items: center; justify-content: space-between" > - - diff --git a/frontend/src/components/prompts/FileList.vue b/frontend/src/components/prompts/FileList.vue index 694787349c..e2a82922cf 100644 --- a/frontend/src/components/prompts/FileList.vue +++ b/frontend/src/components/prompts/FileList.vue @@ -24,8 +24,10 @@
- diff --git a/frontend/src/components/prompts/Help.vue b/frontend/src/components/prompts/Help.vue index 1d99eeed8b..6d6bf150b8 100644 --- a/frontend/src/components/prompts/Help.vue +++ b/frontend/src/components/prompts/Help.vue @@ -34,14 +34,8 @@ - diff --git a/frontend/src/components/prompts/Info.vue b/frontend/src/components/prompts/Info.vue index 0722a4a7f4..5103c513ae 100644 --- a/frontend/src/components/prompts/Info.vue +++ b/frontend/src/components/prompts/Info.vue @@ -29,10 +29,10 @@ @@ -99,98 +99,100 @@ - diff --git a/frontend/src/components/prompts/Move.vue b/frontend/src/components/prompts/Move.vue index d30aca7bbd..db10338c8c 100644 --- a/frontend/src/components/prompts/Move.vue +++ b/frontend/src/components/prompts/Move.vue @@ -7,7 +7,7 @@
@@ -17,10 +17,10 @@ class="card-action" style="display: flex; align-items: center; justify-content: space-between" > - - diff --git a/frontend/src/components/prompts/Replace.vue b/frontend/src/components/prompts/Replace.vue index 3a83ac9e8e..e4e3f4d119 100644 --- a/frontend/src/components/prompts/Replace.vue +++ b/frontend/src/components/prompts/Replace.vue @@ -20,7 +20,7 @@
- diff --git a/frontend/src/components/prompts/ShareDelete.vue b/frontend/src/components/prompts/ShareDelete.vue index a01f634319..3799f95e17 100644 --- a/frontend/src/components/prompts/ShareDelete.vue +++ b/frontend/src/components/prompts/ShareDelete.vue @@ -27,20 +27,15 @@ - diff --git a/frontend/src/components/settings/Commands.vue b/frontend/src/components/settings/Commands.vue index 73799fcee4..b8a6585302 100644 --- a/frontend/src/components/settings/Commands.vue +++ b/frontend/src/components/settings/Commands.vue @@ -8,23 +8,27 @@ - diff --git a/frontend/src/components/settings/Languages.vue b/frontend/src/components/settings/Languages.vue index f4e4090eb6..7900cd9ec7 100644 --- a/frontend/src/components/settings/Languages.vue +++ b/frontend/src/components/settings/Languages.vue @@ -6,61 +6,50 @@ - diff --git a/frontend/src/components/settings/Permissions.vue b/frontend/src/components/settings/Permissions.vue index 13d2b93660..8fb704c847 100644 --- a/frontend/src/components/settings/Permissions.vue +++ b/frontend/src/components/settings/Permissions.vue @@ -39,27 +39,28 @@ - diff --git a/frontend/src/components/settings/Rules.vue b/frontend/src/components/settings/Rules.vue index e1e82b3fde..d61ee48488 100644 --- a/frontend/src/components/settings/Rules.vue +++ b/frontend/src/components/settings/Rules.vue @@ -32,32 +32,44 @@ - diff --git a/frontend/src/components/settings/UserForm.vue b/frontend/src/components/settings/UserForm.vue index c4f0e0c698..8be95e74ca 100644 --- a/frontend/src/components/settings/UserForm.vue +++ b/frontend/src/components/settings/UserForm.vue @@ -80,12 +80,20 @@ const { t } = useI18n(); const createUserDirData = ref(null); const originalUserScope = ref(null); -const props = defineProps<{ - user: IUserForm; - isNew: boolean; - isDefault: boolean; - createUserDir?: boolean; -}>(); +const props = defineProps< + | { + user: IUserForm; + isNew: boolean; + isDefault: false; + createUserDir?: boolean; + } + | { + user: SettingsDefaults; + isNew: boolean; + isDefault: true; + createUserDir?: boolean; + } +>(); onMounted(() => { if (props.user.scope) { @@ -108,6 +116,7 @@ watch( () => props.user, () => { if (!props.user?.perm?.admin) return; + if (props.isDefault) return; props.user.lockPassword = false; } ); diff --git a/frontend/src/types/settings.d.ts b/frontend/src/types/settings.d.ts index ba56c6128a..b74148be04 100644 --- a/frontend/src/types/settings.d.ts +++ b/frontend/src/types/settings.d.ts @@ -17,7 +17,7 @@ interface SettingsDefaults { viewMode: ViewModeType; singleClick: boolean; sorting: Sorting; - perm: Permissions; + perm: UserPermissions; commands: any[]; hideDotfiles: boolean; dateFormat: boolean; diff --git a/frontend/src/types/user.d.ts b/frontend/src/types/user.d.ts index 40c453c502..bae48cd70e 100644 --- a/frontend/src/types/user.d.ts +++ b/frontend/src/types/user.d.ts @@ -4,7 +4,7 @@ interface IUser { password: string; scope: string; locale: string; - perm: Permissions; + perm: UserPermissions; commands: string[]; rules: IRule[]; lockPassword: boolean; @@ -20,20 +20,20 @@ type ViewModeType = "list" | "mosaic" | "mosaic gallery"; interface IUserForm { id?: number; - username?: string; - password?: string; - scope?: string; - locale?: string; - perm?: Permissions; - commands?: string[]; - rules?: IRule[]; - lockPassword?: boolean; - hideDotfiles?: boolean; - singleClick?: boolean; - dateFormat?: boolean; + username: string; + password: string; + scope: string; + locale: string; + perm: UserPermissions; + commands: string[]; + rules: IRule[]; + lockPassword: boolean; + hideDotfiles: boolean; + singleClick: boolean; + dateFormat: boolean; } -interface Permissions { +interface UserPermissions { admin: boolean; copy: boolean; create: boolean;