diff --git a/src/components/color_input/color_input.vue b/src/components/color_input/color_input.vue index bcdf435fc..266ad4d4e 100644 --- a/src/components/color_input/color_input.vue +++ b/src/components/color_input/color_input.vue @@ -19,7 +19,7 @@ />
* { min-width: 0; @@ -123,19 +158,42 @@ --_avatarShadowFilter: var(--avatarShadowFilter); --_avatarShadowInset: var(--avatarShadowInset); - width: 56px; - height: 56px; + min-width: 6em; + height: 6em; object-fit: cover; } } + .other-actions { + position: absolute; + top: 0; + right: 0; + display: grid; + grid-auto-flow: column; + grid-gap: 0.6em; + + a, button { + text-align: center; + width: 2em; + height: 2em; + line-height: 2em; + + &:not(:hover) .icon { + color: var(--lightText); + } + } + } + &-avatar { position: relative; cursor: pointer; + margin-right: 0.6em; &.-overlay { position: absolute; - inset: 0; + inset: -0.6em; + left: -0.6em; + right: -1.2em; background-color: rgb(0 0 0 / 30%); display: flex; justify-content: center; @@ -154,22 +212,9 @@ } } - .external-link-button, - .edit-profile-button { - cursor: pointer; - width: 2.5em; - text-align: center; - margin: -0.5em 0; - padding: 0.5em 0; - - &:not(:hover) .icon { - color: var(--lightText); - } - } - .bottom-line { font-weight: lighter; - font-size: 1.1em; + font-size: 0.9em; align-items: baseline; .lock-icon { @@ -184,16 +229,9 @@ overflow: hidden; } - .dailyAvg { - min-width: 1px; - flex: 0 0 auto; - margin-left: 1em; - font-size: 0.7em; - color: var(--text); - } - .user-role { flex: none; + align-self: baseline; } } @@ -216,9 +254,16 @@ --link: var(--text) !important; } - .top-line, + .top-line, { + display: flex; + line-height: 2; + font-weight: 600; + } + .bottom-line { display: flex; + font-weight: 500; + line-height: 1.5; } } @@ -230,9 +275,8 @@ font-size: 1.1em; } - .user-meta { - margin-bottom: 0.15em; - display: flex; + .highlighter { + margin: 5em; align-items: baseline; line-height: 22px; flex-wrap: wrap; @@ -279,23 +323,17 @@ .user-interactions { position: relative; - display: flex; - flex-flow: row wrap; - margin-right: -0.75em; + display: grid; + grid-template-columns: repeat(auto-fill, minmax(17%, 7em)); + grid-gap: 0.6em; - > * { - margin: 0 0.75em 0.6em 0; + .popover-trigger-button, .moderation-tools-button { + width: 100%; + } + + > .btn-group, > button { white-space: nowrap; - min-width: 95px; } - - button { - margin: 0; - } - } - - .user-note { - margin: 0 0.75em 0.6em 0; } } @@ -303,24 +341,92 @@ display: none; } -.user-counts { - display: flex; - line-height: 16px; - padding: 0.5em 1.5em 0; - text-align: center; +.user-extras { + display: grid; + place-items: center baseline; justify-content: space-between; - flex-wrap: wrap; + grid-template-columns: minmax(max-content, 1fr); + grid-auto-columns: 1fr; + grid-auto-flow: column; + padding: 1.2em 0.6em; } -.user-count { - flex: 1 0 auto; - padding: 0.5em 0; +.birthday { + width: 100%; + text-align: right; +} + +.user-birthday { + margin: 0 0.75em 0.5em; +} + +.user-profile-fields { margin: 0 0.5em; - h5 { - font-size: 1em; + img { + object-fit: contain; + vertical-align: middle; + max-width: 100%; + max-height: 400px; + + &.emoji { + width: 18px; + height: 18px; + } + } + + .user-profile-field { + display: flex; + margin: 0.25em; + border: 1px solid var(--border); + border-radius: var(--roundness); + + .user-profile-field-name, + .user-profile-field-value { + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + box-sizing: border-box; + line-height: 2em; + } + + .user-profile-field-name { + flex: 0 1 50%; + font-weight: 600; + text-align: right; + color: var(--lightText); + min-width: 9em; + border-right: 1px solid var(--border); + padding-left: 1.2em; + padding-right: 0.6em; + } + + .user-profile-field-value { + flex: 1 1 55%; + color: var(--text); + padding-left: 0.6em; + margin: 0; + } + } +} + +.user-stats { + display: block; + text-align: center; + width: 100%; + + dl { + display: inline; + margin-right: 1em; + } + + dd { font-weight: bolder; - margin: 0 0 0.25em; + margin: 0; + } + + dd, dt { + display: inline } /* stylelint-disable-next-line no-descending-specificity */ diff --git a/src/components/user_card/user_card.vue b/src/components/user_card/user_card.vue index e51a16271..be5aa4bcd 100644 --- a/src/components/user_card/user_card.vue +++ b/src/components/user_card/user_card.vue @@ -3,14 +3,65 @@ class="user-card" :class="classes" > -
-
+
@@ -279,51 +233,132 @@ >
- +
+
+ +
+

{{ $t('user_card.highlight_header') }}

+ + +
-
+