@maggioli-design-system/mds-avatar
v4.1.0
Published
mds-avatar is a web-component from Magma Design System, built with StencilJS, TypeScript, Storybook. It's based on the web-component standard and it's designed to be agnostic from the JavaScript framework you are using.
Downloads
1,002
Readme
mds-avatar
Install
Install the component via npm
by running the following command
npm install @maggioli-design-system/mds-avatar
This package works also with yarn:
yarn add @maggioli-design-system/mds-avatar
Import
Import the component in your project via TypeScript
as follows:
import { defineCustomElements as dceMdsAvatar } from '@maggioli-design-system/mds-avatar/loader'
dceMdsAvatar()
If you need to support older browsers (i.e. IE or early version of Edge), you can wrap the defineCustomElements
in another utility awailable in the same package:
import { applyPolyfills as apMdsAvatar, defineCustomElements as dceMdsAvatar } from '@maggioli-design-system/mds-avatar/loader'
apMdsAvatar().then(dceMdsAvatar())
Use alias for defineCustomElements
method to initialize multiple web components in the same place:
import { defineCustomElements as dceMdsComponentOne } from '@maggioli-design-system/mds-component-one/loader'
import { defineCustomElements as dceMdsComponentTwo } from '@maggioli-design-system/mds-component-two/loader'
dceMdsComponentOne()
dceMdsComponentTwo()
You can check how browser support works at this page.
Integration
How to use it in HTML
MdsAvatar
accepts a path to an image to be displayed via the src
attribute, or if missing accepts the initials to be displayed via the initials
attribute. Beware that the text passed via initials
attribute will be trimmed and truncated up to the second character, so if cya
is the value passed to the attribute, the final result displayed will be CY
(the text will be transformed to uppercase via a css class).
An example follows:
<mds-avatar src="https://placehold.co/80" initials="ap"></mds-avatar>
You can try it out on the component's Storybook website!
This is a web-component from Maggioli Design System Magma, built with StencilJS, TypeScript, Storybook. It's based on the web-component standard and it's designed to be agnostic from the JavaScript framework you are using.
Properties
| Property | Attribute | Description | Type | Default |
| ---------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
| icon
| icon
| Specifies the path to the icon | string \| undefined
| undefined
|
| initials
| initials
| The user's inizials displayed if there's no image available, initials will override tone and variant senttings to keep user recognizable from others | string \| undefined
| undefined
|
| src
| src
| Specifies the path to the image | string \| undefined
| undefined
|
| tone
| tone
| Specifies the color tone of the component | "strong" \| "weak" \| undefined
| undefined
|
| variant
| variant
| Specifies the color variant of the component | "amaranth" \| "aqua" \| "blue" \| "error" \| "green" \| "info" \| "lime" \| "orange" \| "orchid" \| "primary" \| "sky" \| "success" \| "violet" \| "warning" \| "yellow" \| undefined
| undefined
|
Shadow Parts
| Part | Description |
| ----------- | ------------------------------------------ |
| "icon"
| The selected icon of the avatar |
| "wrapper"
| The wrapper which contains media displayed |
CSS Custom Properties
| Name | Description |
| --------------------------------------- | --------------------------------------------- |
| --mds-avatar-background-color
| The background-color of the component |
| --mds-avatar-background-color-pending
| The background-color when an image is loading |
| --mds-avatar-color
| The color of the placeholder icon |
| --mds-avatar-radius
| The border-radius of the element |
Dependencies
Used by
Depends on
Graph
graph TD;
mds-avatar --> mds-img
mds-avatar --> mds-icon
mds-img --> mds-icon
mds-img --> mds-text
mds-img --> mds-button
mds-button --> mds-spinner
mds-button --> mds-icon
mds-button --> mds-text
mds-entity --> mds-avatar
mds-push-notification --> mds-avatar
style mds-avatar fill:#f9f,stroke:#333,stroke-width:4px
Built with love @ Gruppo Maggioli from R&D Department