diff --git a/assets/components/header/menu.vue b/assets/components/header/menu.vue
index bf25e549..07c85a98 100644
--- a/assets/components/header/menu.vue
+++ b/assets/components/header/menu.vue
@@ -21,7 +21,7 @@
class="menu-item"
@click.stop="$store.dispatch('logout')"
>
- Log out
+ Log out
-
@@ -178,6 +206,14 @@ function theme(state) {
return state.ui.theme;
}
+function auth(state) {
+ return state.auth.enabled;
+}
+
+function me(state) {
+ return state.auth.user;
+}
+
function setTheme(newTheme) {
this.$store.dispatch('setTheme', newTheme);
}
@@ -198,6 +234,8 @@ export default {
},
computed: {
...mapState({
+ auth,
+ me,
sfw,
theme,
}),
@@ -312,10 +350,13 @@ export default {
}
}
+.controls {
+ margin: .5rem 0 0 0;
+}
+
.toggles {
flex-shrink: 0;
border-top: solid 1px var(--shadow-hint);
- margin: .5rem 0 0 0;
}
.toggle {
@@ -324,6 +365,10 @@ export default {
color: var(--shadow);
font-weight: bold;
+ &.username {
+ justify-content: center;
+ }
+
.icon {
fill: var(--shadow);
margin: 0 1rem 0 0;
diff --git a/assets/components/users/actor-preview.vue b/assets/components/users/actor-preview.vue
index 48f55f78..e5933f07 100644
--- a/assets/components/users/actor-preview.vue
+++ b/assets/components/users/actor-preview.vue
@@ -82,6 +82,7 @@ export default {
align-items: center;
height: 100%;
padding: 0 .5rem;
+ font-size: .8rem;
font-weight: bold;
}
diff --git a/assets/js/curate.js b/assets/js/curate.js
index b90e2994..e10887d9 100644
--- a/assets/js/curate.js
+++ b/assets/js/curate.js
@@ -148,6 +148,10 @@ function curateStash(stash) {
}
function curateUser(user) {
+ if (!user) {
+ return null;
+ }
+
const curatedUser = user;
if (user.stashes) {
diff --git a/assets/js/users/actions.js b/assets/js/users/actions.js
index 4b1f715c..07f552f3 100644
--- a/assets/js/users/actions.js
+++ b/assets/js/users/actions.js
@@ -55,7 +55,7 @@ function initUsersActions(store, _router) {
}
`, {
hasAuth: !!store.state.auth.user,
- userId: store.state.auth.user?.id,
+ userId: store.state.auth.user?.id || null,
username,
});