UNPKG

@atlassian/aui

Version:

Atlassian User Interface library

172 lines (144 loc) 4.73 kB
@import (reference) './imports/global'; @import (reference) './imports/aui-theme/core/colors.less'; .aui-avatar-size(@type, @size) { &.aui-avatar-@{type} { --aui-avatar-size: @size; } } .aui-avatar-border-size(@type, @size, @border-radius: (@size * @aui-avatar-border-radius-ratio)) { &.aui-avatar-@{type} { --aui-avatar-radius: @border-radius; } } .aui-avatar-group-size(@type, @size) { &.aui-avatar-group-@{type} { --aui-avatar-size: calc(@size + 3px); } } // AUI avatar component .aui-avatar { --aui-avatar-size: @aui-avatar-size-medium; box-sizing: border-box; display: inline-block; position: relative; vertical-align: text-bottom; &-inner { display: flex; justify-content: center; align-content: center; height: var(--aui-avatar-size); max-width: var(--aui-avatar-size); max-height: var(--aui-avatar-size); width: var(--aui-avatar-size); border-radius: 100%; overflow: hidden; } & img { display: block; height: 100%; margin: auto; width: 100%; } .aui-avatar-size(xsmall, @aui-avatar-size-xsmall); .aui-avatar-size(small, @aui-avatar-size-small); .aui-avatar-size(medium, @aui-avatar-size-medium); .aui-avatar-size(large, @aui-avatar-size-large); .aui-avatar-size(xlarge, @aui-avatar-size-xlarge); .aui-avatar-size(xxlarge, @aui-avatar-size-xxlarge); .aui-avatar-size(xxxlarge, @aui-avatar-size-xxxlarge); // Project avatars - circular and different sizes &-project { --aui-avatar-radius: 3px; border-radius: var(--aui-avatar-radius); .aui-avatar-inner { border-radius: var(--aui-avatar-radius); } .aui-avatar-border-size(xxxlarge, @aui-avatar-size-xxxlarge, 12px); .aui-avatar-border-size(xxlarge, @aui-avatar-size-xxlarge, 6px); .aui-avatar-border-size(xlarge, @aui-avatar-size-xlarge, 6px); .aui-avatar-border-size(large, @aui-avatar-size-large, 3px); .aui-avatar-border-size(medium, @aui-avatar-size-medium, 3px); .aui-avatar-border-size(small, @aui-avatar-size-small, 2px); .aui-avatar-border-size(xsmall, @aui-avatar-size-xsmall, 2px); } &-badged { --aui-avatar-badged-size: calc(var(--aui-avatar-size) / 4); position: absolute; font-size: 0; line-height: 0; width: var(--aui-avatar-badged-size); height: var(--aui-avatar-badged-size); overflow: hidden; border: 3px solid var(--aui-avatar-outline); border-radius: 100%; &-top-start { top: 0; left: 0; } &-top-end { top: 0; right: 0; } &-bottom-start { bottom: 0; left: 0; } &-bottom-end { bottom: 0; right: 0; } } } // AUI avatars group component .aui-avatar-group { --aui-avatar-size: @aui-avatar-size-medium; position: relative; margin-top: calc(var(--aui-avatar-size) / 4); display: block; height: var(--aui-avatar-size); &-item { position: absolute; bottom: 0; &-hidden { display: none !important; } } &-badged { position: absolute; bottom: 0; background-color: var(--aui-body-background); z-index: 1; font-size: calc(var(--aui-avatar-size) / 3); align-items: center; border: 0; cursor: pointer; color: var(--aui-avatar-text); } &-dropdown { box-sizing: border-box; min-width: 160px; max-width: 300px; padding: @aui-dropdown-group-spacing 0; display: none; box-shadow: 0 4px 8px var(--aui-shadow2), 0 0 1px var(--aui-shadow2); background: var(--aui-dropdown-bg-color); border: 0 solid var(--aui-dropdown-border-color); border-radius: 3px; position: absolute; top: var(--aui-avatar-size); z-index: 3000; &-show { display: block; } } & > .aui-avatar > .aui-avatar > .aui-avatar-inner { box-shadow: 0 0 0 3px var(--aui-avatar-outline); } .aui-avatar-group-size(xsmall, @aui-avatar-size-xsmall); .aui-avatar-group-size(small, @aui-avatar-size-small); .aui-avatar-group-size(medium, @aui-avatar-size-medium); .aui-avatar-group-size(large, @aui-avatar-size-large); .aui-avatar-group-size(xlarge, @aui-avatar-size-xlarge); .aui-avatar-group-size(xxlarge, @aui-avatar-size-xxlarge); .aui-avatar-group-size(xxxlarge, @aui-avatar-size-xxxlarge); }