Компонент Avatar для Angular | ng-hub-ui-avatar

Компонент avatar для Angular с инициалами, запасными изображениями, бейджами присутствия и CSS-переменными для переиспользуемых интерфейсов идентификации пользователя.

Справочник API

Вот полный контракт avatar: всё, что можно привязать, прослушать, спроецировать и тематизировать, собрано в одном месте. Подключите то, что нужно, и оформите так, как хотите — это standalone и дружит с сигналами.

Входные свойства

Настройте avatar с помощью 22 входных свойств. Привязывайте их, как любой @Input в Angular.

ИмяТипПо умолчаниюОписание
sizestring | number50Размер аватара: одно число — это пиксели; любая длина CSS (1.75rem, 50%, calc(2rem + 12px)) рисуется как есть
namestring | null—Имя пользователя для генерации инициалов, когда источники изображений недоступны
srcstring | SafeUrl | null—URL основного пользовательского источника изображения для аватара
altstring | null—Альтернативный текст изображения аватара для доступности
roundbooleantrueДолжен ли аватар быть круглым (true) или следовать cornerRadius
interactivebooleanfalseПомечает аватар как интерактивный элемент управления: выставляет role=“button”, делает его фокусируемым и вызывает clickOnAvatar по Enter/Space. Включайте всегда, когда привязываете (clickOnAvatar).
bgColorstring—Цвет фона для текстовых аватаров. Генерируется автоматически, если не указан
autoColorbooleantrueПри `true` (по умолчанию) аватар с инициалами получает фон из хеша имени. Установите `false`, чтобы задать его через переменную `--hub-avatar-bg-color`; явный `bgColor` всегда имеет приоритет.
fgColorstring | undefined—Цвет инициалов и проецируемого содержимого. Если не задан, аватар сам выбирает чёрный или белый по фону — тот, что проходит по WCAG; явно указанное значение всегда побеждает, независимо от контраста.
borderColorstring—Цвет рамки вокруг аватара
cornerRadiusstring | number0Радиус скругления углов, когда round равно false
textSizeRationumber3Коэффициент для расчёта размера текста на основе размера аватара (size / textSizeRatio)
initialsSizestring | number0Ограничивает количество отображаемых инициалов (0 = без ограничения)
facebookIdstring | null—ID пользователя Facebook для изображения профиля (по возможности, могут действовать ограничения API)
githubIdstring | null—Имя пользователя GitHub для получения изображения профиля
gravatarIdstring | null—Email или MD5-хеш Gravatar для получения изображения профиля
valuestring | null—Отображение пользовательского значения в качестве аватара (например, "75%", "+5")
styleRecord<string, string | number | null | undefined> | string—Инлайн-стили, объединяемые с отрисованным содержимым — изображением, инициалами или слотом проецируемого содержимого. Принимает объект стилей или строку CSS; до хост-элемента не доходят
referrerpolicystring | null—Политика referrer для изображения аватара (например, "no-referrer")
placeholderstring—Изображение на крайний случай: показывается, только пока не отрисовано ничего другого — ни один источник не разрешён, ни один не объявлен или один ещё загружается — и инициалов тоже нет. Оно никогда не входит в цепочку запасных вариантов, поэтому не может обойти инициалы, как это сделал бы `src`.
badgestring | number | boolean | nullnullУгловой оверлей: `badge` / `[badge]="true"` → точка; `badge="4k"` → метка; null / отсутствует → ничего.
badgeColorHubAvatarBadgeColor | string | nullnullСемантический цвет бейджа (primary · secondary · success · danger · warning · info · light · dark) → `--hub-sys-color-*`.

События

Реагируйте на то, что делает avatar, — 1 событий, к которым можно подключить вашу логику.

ИмяТипОписание
clickOnAvatarOutputEmitterRef<Source | null>Вызывается при клике, а также по Enter/Space, если задан `interactive`. Возвращает источник, отрисовывающий аватар — его `sourceType`, `sourceId` и `getAvatar(size)` — или null, если ни один не разрешён. `Source` экспортируется из пакета, поэтому обработчик может назвать тип, а не откатываться к any

Методы

Управляйте avatar из кода — 1 методов его программного интерфейса.

ИмяСигнатураВозвращаетОписание
Source.getAvatargetAvatar(size: number): stringstringВозвращает то, что источник рисует в заданном размере: URL картинки для удалённого источника, инициалы или обычный текст для локального. `Source` — полезная нагрузка `clickOnAvatar`, и она экспортируется из пакета.

Шаблоны

Шаблоны пока не задокументированы.