@momentum-design/components 0.129.13 → 0.129.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,23 +1,27 @@
1
1
  import { CSSResult } from 'lit';
2
2
  import { Component } from '../../models';
3
3
  /**
4
- * The `mdc-appheader` component provides a structured and accessible app header layout.
5
- * It consists of three primary sections: leading, center, and trailing.
4
+ * The `mdc-appheader` component provides a structured and accessible app header layout with three sections: leading, center, and trailing.
6
5
  *
7
- * - The **leading section** typically holds a **brand logo**, **brand name** or **menu icon**.
8
- * - The **center section** can contain a **search bar**, **icons** or action controls.
9
- * - The **trailing section** generally includes a **profile avatar**, **additional icons** or **action controls**.
6
+ * ## Layout sections
7
+ * - **Leading** - Typically holds brand logo, brand name, or menu icon
8
+ * - **Center** - Can contain search bar, icons, navigation links, or action controls
9
+ * - **Trailing** - Generally includes profile avatar, icons, settings, or additional action controls
10
+ *
11
+ * Each section automatically handles flex alignment: leading aligns left, center aligns center, trailing aligns right.
10
12
  *
11
13
  * @tagname mdc-appheader
12
14
  *
13
- * @slot leading - Slot for the leading section (e.g., brand logo, brand name).
14
- * @slot center - Slot for the center section (e.g., search bar, icons).
15
- * @slot trailing - Slot for the trailing section (e.g., profile avatar, icons).
15
+ * @slot leading - Content for the leading section (left-aligned).
16
+ * @slot center - Content for the center section (center-aligned).
17
+ * @slot trailing - Content for the trailing section (right-aligned).
18
+ *
19
+ * @cssproperty --mdc-appheader-height - Height of the app header. Default is 4rem (64px).
16
20
  *
17
- * @csspart container - The main container for styling the header.
18
- * @csspart leading-section - The leading section of the header.
19
- * @csspart center-section - The center section of the header.
20
- * @csspart trailing-section - The trailing section of the header.
21
+ * @csspart container - The main header container.
22
+ * @csspart leading-section - The leading section wrapper (left side).
23
+ * @csspart center-section - The center section wrapper (middle).
24
+ * @csspart trailing-section - The trailing section wrapper (right side).
21
25
  */
22
26
  declare class Appheader extends Component {
23
27
  /**
@@ -2,23 +2,27 @@ import { html } from 'lit';
2
2
  import { Component } from '../../models';
3
3
  import styles from './appheader.styles';
4
4
  /**
5
- * The `mdc-appheader` component provides a structured and accessible app header layout.
6
- * It consists of three primary sections: leading, center, and trailing.
5
+ * The `mdc-appheader` component provides a structured and accessible app header layout with three sections: leading, center, and trailing.
7
6
  *
8
- * - The **leading section** typically holds a **brand logo**, **brand name** or **menu icon**.
9
- * - The **center section** can contain a **search bar**, **icons** or action controls.
10
- * - The **trailing section** generally includes a **profile avatar**, **additional icons** or **action controls**.
7
+ * ## Layout sections
8
+ * - **Leading** - Typically holds brand logo, brand name, or menu icon
9
+ * - **Center** - Can contain search bar, icons, navigation links, or action controls
10
+ * - **Trailing** - Generally includes profile avatar, icons, settings, or additional action controls
11
+ *
12
+ * Each section automatically handles flex alignment: leading aligns left, center aligns center, trailing aligns right.
11
13
  *
12
14
  * @tagname mdc-appheader
13
15
  *
14
- * @slot leading - Slot for the leading section (e.g., brand logo, brand name).
15
- * @slot center - Slot for the center section (e.g., search bar, icons).
16
- * @slot trailing - Slot for the trailing section (e.g., profile avatar, icons).
16
+ * @slot leading - Content for the leading section (left-aligned).
17
+ * @slot center - Content for the center section (center-aligned).
18
+ * @slot trailing - Content for the trailing section (right-aligned).
19
+ *
20
+ * @cssproperty --mdc-appheader-height - Height of the app header. Default is 4rem (64px).
17
21
  *
18
- * @csspart container - The main container for styling the header.
19
- * @csspart leading-section - The leading section of the header.
20
- * @csspart center-section - The center section of the header.
21
- * @csspart trailing-section - The trailing section of the header.
22
+ * @csspart container - The main header container.
23
+ * @csspart leading-section - The leading section wrapper (left side).
24
+ * @csspart center-section - The center section wrapper (middle).
25
+ * @csspart trailing-section - The trailing section wrapper (right side).
22
26
  */
23
27
  class Appheader extends Component {
24
28
  /**
@@ -3,24 +3,31 @@ import { CSSResult } from 'lit';
3
3
  import { Component } from '../../models';
4
4
  declare const Avatar_base: import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/AvatarComponentMixin").AvatarComponentMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/IconNameMixin").IconNameMixinInterface> & typeof Component;
5
5
  /**
6
- * The `mdc-avatar` component is used to represent a person or a space.
7
- * An avatar can be an icon, initials, counter and photo.
6
+ * The `mdc-avatar` component represents a person or a space. It displays as a photo, initials, icon, or counter.
8
7
  *
9
- * To set the photo of an avatar,
10
- * you need to set "src" attribute.
8
+ * ## Display Priority
11
9
  *
12
- * While the avatar image is loading, as a placeholder,
13
- * we will show the initials text.
14
- * If the initials are not specified then,
15
- * we will show `user-regular` icon as a placeholder.
10
+ * When multiple attributes are provided, the component determines what to display based on this priority:
11
+ * 1. **Photo** (`src`) - Takes highest priority
12
+ * - While loading: Shows `initials` as placeholder if provided (instant), otherwise shows icon (requires loading)
13
+ * - After loading: Shows the photo
14
+ * - On error: Placeholder remains visible (initials or icon)
15
+ * 2. **Icon** (`icon-name`) - Takes priority if no `src` is provided
16
+ * - Shows custom icon if `icon-name` is set (requires icon library to load)
17
+ * - **Note:** If both `icon-name` and `initials` are provided (without `src`), icon takes precedence and initials are ignored.
18
+ * This means users may see a delay while the icon loads, even though initials render instantly.
19
+ * - Defaults to `user-regular` icon if no other content is available
20
+ * 3. **Initials** (`initials`) - Displayed only if no `src` or `icon-name` is provided
21
+ * - Shows first two characters, converted to uppercase
22
+ * - Renders instantly (no loading required)
23
+ * 4. **Counter** (`counter`) - Displayed only if none of the above are provided
24
+ * - Shows numeric value (max 99+)
25
+ * - Negative values display as 0
16
26
  *
17
- * By default, if there are no attributes specified,
18
- * then the default avatar will be an icon with `user-regular` name.
19
- *
20
- * The avatar component is non clickable and non interactive/focusable component.
21
- * If the avatar is typing, then the loading indicator will be displayed.
22
- * If the counter type avatar is set to a negative number, then we will display 0.
23
- * The presence indicator will be hidden when the counter property is set.
27
+ * ## Behavior
28
+ * - Non-interactive and non-focusable component (use `mdc-avatarbutton` for clickable avatars)
29
+ * - Shows loading indicator overlay when `is-typing` is true (displays on top of existing content)
30
+ * - Presence indicator hidden when counter is set or when typing
24
31
  *
25
32
  * @dependency mdc-icon
26
33
  * @dependency mdc-presence
@@ -17,24 +17,31 @@ import { AVATAR_TYPE, DEFAULTS, MAX_COUNTER } from './avatar.constants';
17
17
  import styles from './avatar.styles';
18
18
  import { getAvatarIconSize, getAvatarTextFontSize, getPresenceSize } from './avatar.utils';
19
19
  /**
20
- * The `mdc-avatar` component is used to represent a person or a space.
21
- * An avatar can be an icon, initials, counter and photo.
20
+ * The `mdc-avatar` component represents a person or a space. It displays as a photo, initials, icon, or counter.
22
21
  *
23
- * To set the photo of an avatar,
24
- * you need to set "src" attribute.
22
+ * ## Display Priority
25
23
  *
26
- * While the avatar image is loading, as a placeholder,
27
- * we will show the initials text.
28
- * If the initials are not specified then,
29
- * we will show `user-regular` icon as a placeholder.
24
+ * When multiple attributes are provided, the component determines what to display based on this priority:
25
+ * 1. **Photo** (`src`) - Takes highest priority
26
+ * - While loading: Shows `initials` as placeholder if provided (instant), otherwise shows icon (requires loading)
27
+ * - After loading: Shows the photo
28
+ * - On error: Placeholder remains visible (initials or icon)
29
+ * 2. **Icon** (`icon-name`) - Takes priority if no `src` is provided
30
+ * - Shows custom icon if `icon-name` is set (requires icon library to load)
31
+ * - **Note:** If both `icon-name` and `initials` are provided (without `src`), icon takes precedence and initials are ignored.
32
+ * This means users may see a delay while the icon loads, even though initials render instantly.
33
+ * - Defaults to `user-regular` icon if no other content is available
34
+ * 3. **Initials** (`initials`) - Displayed only if no `src` or `icon-name` is provided
35
+ * - Shows first two characters, converted to uppercase
36
+ * - Renders instantly (no loading required)
37
+ * 4. **Counter** (`counter`) - Displayed only if none of the above are provided
38
+ * - Shows numeric value (max 99+)
39
+ * - Negative values display as 0
30
40
  *
31
- * By default, if there are no attributes specified,
32
- * then the default avatar will be an icon with `user-regular` name.
33
- *
34
- * The avatar component is non clickable and non interactive/focusable component.
35
- * If the avatar is typing, then the loading indicator will be displayed.
36
- * If the counter type avatar is set to a negative number, then we will display 0.
37
- * The presence indicator will be hidden when the counter property is set.
41
+ * ## Behavior
42
+ * - Non-interactive and non-focusable component (use `mdc-avatarbutton` for clickable avatars)
43
+ * - Shows loading indicator overlay when `is-typing` is true (displays on top of existing content)
44
+ * - Presence indicator hidden when counter is set or when typing
38
45
  *
39
46
  * @dependency mdc-icon
40
47
  * @dependency mdc-presence
@@ -3,25 +3,27 @@ import { CSSResult } from 'lit';
3
3
  import Buttonsimple from '../buttonsimple/buttonsimple.component';
4
4
  declare const AvatarButton_base: import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/AvatarComponentMixin").AvatarComponentMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/IconNameMixin").IconNameMixinInterface> & typeof Buttonsimple;
5
5
  /**
6
- * The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.
6
+ * The `mdc-avatarbutton` component is an interactive, clickable version of `mdc-avatar`.
7
+ * It wraps the avatar component in a button, making it focusable and actionable.
7
8
  *
8
- * This component is made by extending `buttonsimple` class.
9
- * The button component acts as a wrapper for the avatar component.
9
+ * This component extends `buttonsimple` and includes all avatar display features (photo, initials, icon, counter, presence).
10
+ * Use CSS parts to customize the avatar's appearance inside the button.
10
11
  *
11
- * To override styles of the avatar inside, use the specified css parts.
12
+ * ## Accessibility
13
+ * - Always provide an `aria-label` attribute to describe the button's purpose
12
14
  *
13
15
  * @dependency mdc-avatar
14
16
  *
15
- * @event click - (React: onClick) This event is dispatched when the avatarbutton is clicked.
16
- * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the avatarbutton.
17
- * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the avatarbutton.
18
- * @event focus - (React: onFocus) This event is dispatched when the avatarbutton receives focus.
17
+ * @event click - (React: onClick) Dispatched when the avatar button is clicked.
18
+ * @event keydown - (React: onKeyDown) Dispatched when a key is pressed on the avatar button.
19
+ * @event keyup - (React: onKeyUp) Dispatched when a key is released on the avatar button.
20
+ * @event focus - (React: onFocus) Dispatched when the avatar button receives focus.
19
21
  *
20
22
  * @tagname mdc-avatarbutton
21
23
  *
22
- * @cssproperty --mdc-avatarbutton-overlay-background-color-rest - Background color of the overlay in rest state
23
- * @cssproperty --mdc-avatarbutton-overlay-background-color-hover - Background color of the overlay in hover state
24
- * @cssproperty --mdc-avatarbutton-overlay-background-color-active - Background color of the overlay in active state
24
+ * @cssproperty --mdc-avatarbutton-overlay-background-color-rest - Background color of the overlay in rest state.
25
+ * @cssproperty --mdc-avatarbutton-overlay-background-color-hover - Background color of the overlay in hover state.
26
+ * @cssproperty --mdc-avatarbutton-overlay-background-color-active - Background color of the overlay in active state.
25
27
  *
26
28
  * @csspart overlay - The overlay part of the avatar button.
27
29
  * @csspart content - The main content of the avatar.
@@ -18,25 +18,27 @@ import { DEFAULTS as BUTTON_DEFAULTS } from '../button/button.constants';
18
18
  import Buttonsimple from '../buttonsimple/buttonsimple.component';
19
19
  import styles from './avatarbutton.styles';
20
20
  /**
21
- * The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.
21
+ * The `mdc-avatarbutton` component is an interactive, clickable version of `mdc-avatar`.
22
+ * It wraps the avatar component in a button, making it focusable and actionable.
22
23
  *
23
- * This component is made by extending `buttonsimple` class.
24
- * The button component acts as a wrapper for the avatar component.
24
+ * This component extends `buttonsimple` and includes all avatar display features (photo, initials, icon, counter, presence).
25
+ * Use CSS parts to customize the avatar's appearance inside the button.
25
26
  *
26
- * To override styles of the avatar inside, use the specified css parts.
27
+ * ## Accessibility
28
+ * - Always provide an `aria-label` attribute to describe the button's purpose
27
29
  *
28
30
  * @dependency mdc-avatar
29
31
  *
30
- * @event click - (React: onClick) This event is dispatched when the avatarbutton is clicked.
31
- * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the avatarbutton.
32
- * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the avatarbutton.
33
- * @event focus - (React: onFocus) This event is dispatched when the avatarbutton receives focus.
32
+ * @event click - (React: onClick) Dispatched when the avatar button is clicked.
33
+ * @event keydown - (React: onKeyDown) Dispatched when a key is pressed on the avatar button.
34
+ * @event keyup - (React: onKeyUp) Dispatched when a key is released on the avatar button.
35
+ * @event focus - (React: onFocus) Dispatched when the avatar button receives focus.
34
36
  *
35
37
  * @tagname mdc-avatarbutton
36
38
  *
37
- * @cssproperty --mdc-avatarbutton-overlay-background-color-rest - Background color of the overlay in rest state
38
- * @cssproperty --mdc-avatarbutton-overlay-background-color-hover - Background color of the overlay in hover state
39
- * @cssproperty --mdc-avatarbutton-overlay-background-color-active - Background color of the overlay in active state
39
+ * @cssproperty --mdc-avatarbutton-overlay-background-color-rest - Background color of the overlay in rest state.
40
+ * @cssproperty --mdc-avatarbutton-overlay-background-color-hover - Background color of the overlay in hover state.
41
+ * @cssproperty --mdc-avatarbutton-overlay-background-color-active - Background color of the overlay in active state.
40
42
  *
41
43
  * @csspart overlay - The overlay part of the avatar button.
42
44
  * @csspart content - The main content of the avatar.
@@ -3267,37 +3267,43 @@
3267
3267
  "declarations": [
3268
3268
  {
3269
3269
  "kind": "class",
3270
- "description": "The `mdc-appheader` component provides a structured and accessible app header layout.\nIt consists of three primary sections: leading, center, and trailing.\n\n- The **leading section** typically holds a **brand logo**, **brand name** or **menu icon**.\n- The **center section** can contain a **search bar**, **icons** or action controls.\n- The **trailing section** generally includes a **profile avatar**, **additional icons** or **action controls**.",
3270
+ "description": "The `mdc-appheader` component provides a structured and accessible app header layout with three sections: leading, center, and trailing.\n\n## Layout sections\n- **Leading** - Typically holds brand logo, brand name, or menu icon\n- **Center** - Can contain search bar, icons, navigation links, or action controls\n- **Trailing** - Generally includes profile avatar, icons, settings, or additional action controls\n\nEach section automatically handles flex alignment: leading aligns left, center aligns center, trailing aligns right.",
3271
3271
  "name": "Appheader",
3272
+ "cssProperties": [
3273
+ {
3274
+ "description": "Height of the app header. Default is 4rem (64px).",
3275
+ "name": "--mdc-appheader-height"
3276
+ }
3277
+ ],
3272
3278
  "cssParts": [
3273
3279
  {
3274
- "description": "The main container for styling the header.",
3280
+ "description": "The main header container.",
3275
3281
  "name": "container"
3276
3282
  },
3277
3283
  {
3278
- "description": "The leading section of the header.",
3284
+ "description": "The leading section wrapper (left side).",
3279
3285
  "name": "leading-section"
3280
3286
  },
3281
3287
  {
3282
- "description": "The center section of the header.",
3288
+ "description": "The center section wrapper (middle).",
3283
3289
  "name": "center-section"
3284
3290
  },
3285
3291
  {
3286
- "description": "The trailing section of the header.",
3292
+ "description": "The trailing section wrapper (right side).",
3287
3293
  "name": "trailing-section"
3288
3294
  }
3289
3295
  ],
3290
3296
  "slots": [
3291
3297
  {
3292
- "description": "Slot for the leading section (e.g., brand logo, brand name).",
3298
+ "description": "Content for the leading section (left-aligned).",
3293
3299
  "name": "leading"
3294
3300
  },
3295
3301
  {
3296
- "description": "Slot for the center section (e.g., search bar, icons).",
3302
+ "description": "Content for the center section (center-aligned).",
3297
3303
  "name": "center"
3298
3304
  },
3299
3305
  {
3300
- "description": "Slot for the trailing section (e.g., profile avatar, icons).",
3306
+ "description": "Content for the trailing section (right-aligned).",
3301
3307
  "name": "trailing"
3302
3308
  }
3303
3309
  ],
@@ -3307,7 +3313,7 @@
3307
3313
  "module": "/src/models"
3308
3314
  },
3309
3315
  "tagName": "mdc-appheader",
3310
- "jsDoc": "/**\n * The `mdc-appheader` component provides a structured and accessible app header layout.\n * It consists of three primary sections: leading, center, and trailing.\n *\n * - The **leading section** typically holds a **brand logo**, **brand name** or **menu icon**.\n * - The **center section** can contain a **search bar**, **icons** or action controls.\n * - The **trailing section** generally includes a **profile avatar**, **additional icons** or **action controls**.\n *\n * @tagname mdc-appheader\n *\n * @slot leading - Slot for the leading section (e.g., brand logo, brand name).\n * @slot center - Slot for the center section (e.g., search bar, icons).\n * @slot trailing - Slot for the trailing section (e.g., profile avatar, icons).\n *\n * @csspart container - The main container for styling the header.\n * @csspart leading-section - The leading section of the header.\n * @csspart center-section - The center section of the header.\n * @csspart trailing-section - The trailing section of the header.\n */",
3316
+ "jsDoc": "/**\n * The `mdc-appheader` component provides a structured and accessible app header layout with three sections: leading, center, and trailing.\n *\n * ## Layout sections\n * - **Leading** - Typically holds brand logo, brand name, or menu icon\n * - **Center** - Can contain search bar, icons, navigation links, or action controls\n * - **Trailing** - Generally includes profile avatar, icons, settings, or additional action controls\n *\n * Each section automatically handles flex alignment: leading aligns left, center aligns center, trailing aligns right.\n *\n * @tagname mdc-appheader\n *\n * @slot leading - Content for the leading section (left-aligned).\n * @slot center - Content for the center section (center-aligned).\n * @slot trailing - Content for the trailing section (right-aligned).\n *\n * @cssproperty --mdc-appheader-height - Height of the app header. Default is 4rem (64px).\n *\n * @csspart container - The main header container.\n * @csspart leading-section - The leading section wrapper (left side).\n * @csspart center-section - The center section wrapper (middle).\n * @csspart trailing-section - The trailing section wrapper (right side).\n */",
3311
3317
  "customElement": true
3312
3318
  }
3313
3319
  ],
@@ -3328,7 +3334,7 @@
3328
3334
  "declarations": [
3329
3335
  {
3330
3336
  "kind": "class",
3331
- "description": "The `mdc-avatar` component is used to represent a person or a space.\nAn avatar can be an icon, initials, counter and photo.\n\nTo set the photo of an avatar,\nyou need to set \"src\" attribute.\n\nWhile the avatar image is loading, as a placeholder,\nwe will show the initials text.\nIf the initials are not specified then,\nwe will show `user-regular` icon as a placeholder.\n\nBy default, if there are no attributes specified,\nthen the default avatar will be an icon with `user-regular` name.\n\nThe avatar component is non clickable and non interactive/focusable component.\nIf the avatar is typing, then the loading indicator will be displayed.\nIf the counter type avatar is set to a negative number, then we will display 0.\nThe presence indicator will be hidden when the counter property is set.",
3337
+ "description": "The `mdc-avatar` component represents a person or a space. It displays as a photo, initials, icon, or counter.\n\n## Display Priority\n\nWhen multiple attributes are provided, the component determines what to display based on this priority:\n1. **Photo** (`src`) - Takes highest priority\n - While loading: Shows `initials` as placeholder if provided (instant), otherwise shows icon (requires loading)\n - After loading: Shows the photo\n - On error: Placeholder remains visible (initials or icon)\n2. **Icon** (`icon-name`) - Takes priority if no `src` is provided\n - Shows custom icon if `icon-name` is set (requires icon library to load)\n - **Note:** If both `icon-name` and `initials` are provided (without `src`), icon takes precedence and initials are ignored.\n This means users may see a delay while the icon loads, even though initials render instantly.\n - Defaults to `user-regular` icon if no other content is available\n3. **Initials** (`initials`) - Displayed only if no `src` or `icon-name` is provided\n - Shows first two characters, converted to uppercase\n - Renders instantly (no loading required)\n4. **Counter** (`counter`) - Displayed only if none of the above are provided\n - Shows numeric value (max 99+)\n - Negative values display as 0\n\n## Behavior\n- Non-interactive and non-focusable component (use `mdc-avatarbutton` for clickable avatars)\n- Shows loading indicator overlay when `is-typing` is true (displays on top of existing content)\n- Presence indicator hidden when counter is set or when typing",
3332
3338
  "name": "Avatar",
3333
3339
  "cssProperties": [
3334
3340
  {
@@ -3481,7 +3487,7 @@
3481
3487
  "module": "/src/models"
3482
3488
  },
3483
3489
  "tagName": "mdc-avatar",
3484
- "jsDoc": "/**\n * The `mdc-avatar` component is used to represent a person or a space.\n * An avatar can be an icon, initials, counter and photo.\n *\n * To set the photo of an avatar,\n * you need to set \"src\" attribute.\n *\n * While the avatar image is loading, as a placeholder,\n * we will show the initials text.\n * If the initials are not specified then,\n * we will show `user-regular` icon as a placeholder.\n *\n * By default, if there are no attributes specified,\n * then the default avatar will be an icon with `user-regular` name.\n *\n * The avatar component is non clickable and non interactive/focusable component.\n * If the avatar is typing, then the loading indicator will be displayed.\n * If the counter type avatar is set to a negative number, then we will display 0.\n * The presence indicator will be hidden when the counter property is set.\n *\n * @dependency mdc-icon\n * @dependency mdc-presence\n * @dependency mdc-text\n *\n * @tagname mdc-avatar\n *\n * @cssproperty --mdc-avatar-default-background-color - Allows customization of the default background color.\n * @cssproperty --mdc-avatar-default-foreground-color - Allows customization of the default foreground color.\n * @cssproperty --mdc-avatar-loading-indicator-background-color -\n * Allows customization of the loading indicator background color.\n * @cssproperty --mdc-avatar-loading-indicator-foreground-color -\n * Allows customization of the loading indicator foreground color.\n * @cssproperty --mdc-avatar-loading-overlay-background-color -\n * Allows customization of the loading overlay background color.\n *\n * @csspart photo - The photo of the avatar.\n * @csspart presence - The presence indicator of the avatar.\n * @csspart loading-wrapper - The wrapper for the loading indicator.\n * @csspart loader - The loading indicator of the avatar.\n */",
3490
+ "jsDoc": "/**\n * The `mdc-avatar` component represents a person or a space. It displays as a photo, initials, icon, or counter.\n *\n * ## Display Priority\n *\n * When multiple attributes are provided, the component determines what to display based on this priority:\n * 1. **Photo** (`src`) - Takes highest priority\n * - While loading: Shows `initials` as placeholder if provided (instant), otherwise shows icon (requires loading)\n * - After loading: Shows the photo\n * - On error: Placeholder remains visible (initials or icon)\n * 2. **Icon** (`icon-name`) - Takes priority if no `src` is provided\n * - Shows custom icon if `icon-name` is set (requires icon library to load)\n * - **Note:** If both `icon-name` and `initials` are provided (without `src`), icon takes precedence and initials are ignored.\n * This means users may see a delay while the icon loads, even though initials render instantly.\n * - Defaults to `user-regular` icon if no other content is available\n * 3. **Initials** (`initials`) - Displayed only if no `src` or `icon-name` is provided\n * - Shows first two characters, converted to uppercase\n * - Renders instantly (no loading required)\n * 4. **Counter** (`counter`) - Displayed only if none of the above are provided\n * - Shows numeric value (max 99+)\n * - Negative values display as 0\n *\n * ## Behavior\n * - Non-interactive and non-focusable component (use `mdc-avatarbutton` for clickable avatars)\n * - Shows loading indicator overlay when `is-typing` is true (displays on top of existing content)\n * - Presence indicator hidden when counter is set or when typing\n *\n * @dependency mdc-icon\n * @dependency mdc-presence\n * @dependency mdc-text\n *\n * @tagname mdc-avatar\n *\n * @cssproperty --mdc-avatar-default-background-color - Allows customization of the default background color.\n * @cssproperty --mdc-avatar-default-foreground-color - Allows customization of the default foreground color.\n * @cssproperty --mdc-avatar-loading-indicator-background-color -\n * Allows customization of the loading indicator background color.\n * @cssproperty --mdc-avatar-loading-indicator-foreground-color -\n * Allows customization of the loading indicator foreground color.\n * @cssproperty --mdc-avatar-loading-overlay-background-color -\n * Allows customization of the loading overlay background color.\n *\n * @csspart photo - The photo of the avatar.\n * @csspart presence - The presence indicator of the avatar.\n * @csspart loading-wrapper - The wrapper for the loading indicator.\n * @csspart loader - The loading indicator of the avatar.\n */",
3485
3491
  "customElement": true,
3486
3492
  "attributes": [
3487
3493
  {
@@ -3590,19 +3596,19 @@
3590
3596
  "declarations": [
3591
3597
  {
3592
3598
  "kind": "class",
3593
- "description": "The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.\n\nThis component is made by extending `buttonsimple` class.\nThe button component acts as a wrapper for the avatar component.\n\nTo override styles of the avatar inside, use the specified css parts.",
3599
+ "description": "The `mdc-avatarbutton` component is an interactive, clickable version of `mdc-avatar`.\nIt wraps the avatar component in a button, making it focusable and actionable.\n\nThis component extends `buttonsimple` and includes all avatar display features (photo, initials, icon, counter, presence).\nUse CSS parts to customize the avatar's appearance inside the button.\n\n## Accessibility\n- Always provide an `aria-label` attribute to describe the button's purpose",
3594
3600
  "name": "AvatarButton",
3595
3601
  "cssProperties": [
3596
3602
  {
3597
- "description": "Background color of the overlay in rest state",
3603
+ "description": "Background color of the overlay in rest state.",
3598
3604
  "name": "--mdc-avatarbutton-overlay-background-color-rest"
3599
3605
  },
3600
3606
  {
3601
- "description": "Background color of the overlay in hover state",
3607
+ "description": "Background color of the overlay in hover state.",
3602
3608
  "name": "--mdc-avatarbutton-overlay-background-color-hover"
3603
3609
  },
3604
3610
  {
3605
- "description": "Background color of the overlay in active state",
3611
+ "description": "Background color of the overlay in active state.",
3606
3612
  "name": "--mdc-avatarbutton-overlay-background-color-active"
3607
3613
  },
3608
3614
  {
@@ -4079,7 +4085,7 @@
4079
4085
  ],
4080
4086
  "events": [
4081
4087
  {
4082
- "description": "(React: onClick) This event is dispatched when the avatarbutton is clicked.",
4088
+ "description": "(React: onClick) Dispatched when the avatar button is clicked.",
4083
4089
  "name": "click",
4084
4090
  "reactName": "onClick",
4085
4091
  "inheritedFrom": {
@@ -4088,7 +4094,7 @@
4088
4094
  }
4089
4095
  },
4090
4096
  {
4091
- "description": "(React: onKeyDown) This event is dispatched when a key is pressed down on the avatarbutton.",
4097
+ "description": "(React: onKeyDown) Dispatched when a key is pressed on the avatar button.",
4092
4098
  "name": "keydown",
4093
4099
  "reactName": "onKeyDown",
4094
4100
  "inheritedFrom": {
@@ -4097,7 +4103,7 @@
4097
4103
  }
4098
4104
  },
4099
4105
  {
4100
- "description": "(React: onKeyUp) This event is dispatched when a key is released on the avatarbutton.",
4106
+ "description": "(React: onKeyUp) Dispatched when a key is released on the avatar button.",
4101
4107
  "name": "keyup",
4102
4108
  "reactName": "onKeyUp",
4103
4109
  "inheritedFrom": {
@@ -4106,7 +4112,7 @@
4106
4112
  }
4107
4113
  },
4108
4114
  {
4109
- "description": "(React: onFocus) This event is dispatched when the avatarbutton receives focus.",
4115
+ "description": "(React: onFocus) Dispatched when the avatar button receives focus.",
4110
4116
  "name": "focus",
4111
4117
  "reactName": "onFocus",
4112
4118
  "inheritedFrom": {
@@ -4355,7 +4361,7 @@
4355
4361
  "module": "/src/components/buttonsimple/buttonsimple.component"
4356
4362
  },
4357
4363
  "tagName": "mdc-avatarbutton",
4358
- "jsDoc": "/**\n * The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.\n *\n * This component is made by extending `buttonsimple` class.\n * The button component acts as a wrapper for the avatar component.\n *\n * To override styles of the avatar inside, use the specified css parts.\n *\n * @dependency mdc-avatar\n *\n * @event click - (React: onClick) This event is dispatched when the avatarbutton is clicked.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the avatarbutton.\n * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the avatarbutton.\n * @event focus - (React: onFocus) This event is dispatched when the avatarbutton receives focus.\n *\n * @tagname mdc-avatarbutton\n *\n * @cssproperty --mdc-avatarbutton-overlay-background-color-rest - Background color of the overlay in rest state\n * @cssproperty --mdc-avatarbutton-overlay-background-color-hover - Background color of the overlay in hover state\n * @cssproperty --mdc-avatarbutton-overlay-background-color-active - Background color of the overlay in active state\n *\n * @csspart overlay - The overlay part of the avatar button.\n * @csspart content - The main content of the avatar.\n * @csspart photo - The photo part of the avatar.\n * @csspart presence - The presence indicator part of the avatar.\n * @csspart loading-wrapper - The wrapper for the loading indicator of the avatar.\n * @csspart loader - The loading indicator part of the avatar.\n */",
4364
+ "jsDoc": "/**\n * The `mdc-avatarbutton` component is an interactive, clickable version of `mdc-avatar`.\n * It wraps the avatar component in a button, making it focusable and actionable.\n *\n * This component extends `buttonsimple` and includes all avatar display features (photo, initials, icon, counter, presence).\n * Use CSS parts to customize the avatar's appearance inside the button.\n *\n * ## Accessibility\n * - Always provide an `aria-label` attribute to describe the button's purpose\n *\n * @dependency mdc-avatar\n *\n * @event click - (React: onClick) Dispatched when the avatar button is clicked.\n * @event keydown - (React: onKeyDown) Dispatched when a key is pressed on the avatar button.\n * @event keyup - (React: onKeyUp) Dispatched when a key is released on the avatar button.\n * @event focus - (React: onFocus) Dispatched when the avatar button receives focus.\n *\n * @tagname mdc-avatarbutton\n *\n * @cssproperty --mdc-avatarbutton-overlay-background-color-rest - Background color of the overlay in rest state.\n * @cssproperty --mdc-avatarbutton-overlay-background-color-hover - Background color of the overlay in hover state.\n * @cssproperty --mdc-avatarbutton-overlay-background-color-active - Background color of the overlay in active state.\n *\n * @csspart overlay - The overlay part of the avatar button.\n * @csspart content - The main content of the avatar.\n * @csspart photo - The photo part of the avatar.\n * @csspart presence - The presence indicator part of the avatar.\n * @csspart loading-wrapper - The wrapper for the loading indicator of the avatar.\n * @csspart loader - The loading indicator part of the avatar.\n */",
4359
4365
  "customElement": true
4360
4366
  }
4361
4367
  ],
@@ -1,22 +1,26 @@
1
1
  import Component from '../../components/appheader';
2
2
  /**
3
- * The `mdc-appheader` component provides a structured and accessible app header layout.
4
- * It consists of three primary sections: leading, center, and trailing.
3
+ * The `mdc-appheader` component provides a structured and accessible app header layout with three sections: leading, center, and trailing.
5
4
  *
6
- * - The **leading section** typically holds a **brand logo**, **brand name** or **menu icon**.
7
- * - The **center section** can contain a **search bar**, **icons** or action controls.
8
- * - The **trailing section** generally includes a **profile avatar**, **additional icons** or **action controls**.
5
+ * ## Layout sections
6
+ * - **Leading** - Typically holds brand logo, brand name, or menu icon
7
+ * - **Center** - Can contain search bar, icons, navigation links, or action controls
8
+ * - **Trailing** - Generally includes profile avatar, icons, settings, or additional action controls
9
+ *
10
+ * Each section automatically handles flex alignment: leading aligns left, center aligns center, trailing aligns right.
9
11
  *
10
12
  * @tagname mdc-appheader
11
13
  *
12
- * @slot leading - Slot for the leading section (e.g., brand logo, brand name).
13
- * @slot center - Slot for the center section (e.g., search bar, icons).
14
- * @slot trailing - Slot for the trailing section (e.g., profile avatar, icons).
14
+ * @slot leading - Content for the leading section (left-aligned).
15
+ * @slot center - Content for the center section (center-aligned).
16
+ * @slot trailing - Content for the trailing section (right-aligned).
17
+ *
18
+ * @cssproperty --mdc-appheader-height - Height of the app header. Default is 4rem (64px).
15
19
  *
16
- * @csspart container - The main container for styling the header.
17
- * @csspart leading-section - The leading section of the header.
18
- * @csspart center-section - The center section of the header.
19
- * @csspart trailing-section - The trailing section of the header.
20
+ * @csspart container - The main header container.
21
+ * @csspart leading-section - The leading section wrapper (left side).
22
+ * @csspart center-section - The center section wrapper (middle).
23
+ * @csspart trailing-section - The trailing section wrapper (right side).
20
24
  */
21
25
  declare const reactWrapper: import("@lit/react").ReactWebComponent<Component, {}>;
22
26
  export default reactWrapper;
@@ -3,23 +3,27 @@ import { createComponent } from '@lit/react';
3
3
  import Component from '../../components/appheader';
4
4
  import { TAG_NAME } from '../../components/appheader/appheader.constants';
5
5
  /**
6
- * The `mdc-appheader` component provides a structured and accessible app header layout.
7
- * It consists of three primary sections: leading, center, and trailing.
6
+ * The `mdc-appheader` component provides a structured and accessible app header layout with three sections: leading, center, and trailing.
8
7
  *
9
- * - The **leading section** typically holds a **brand logo**, **brand name** or **menu icon**.
10
- * - The **center section** can contain a **search bar**, **icons** or action controls.
11
- * - The **trailing section** generally includes a **profile avatar**, **additional icons** or **action controls**.
8
+ * ## Layout sections
9
+ * - **Leading** - Typically holds brand logo, brand name, or menu icon
10
+ * - **Center** - Can contain search bar, icons, navigation links, or action controls
11
+ * - **Trailing** - Generally includes profile avatar, icons, settings, or additional action controls
12
+ *
13
+ * Each section automatically handles flex alignment: leading aligns left, center aligns center, trailing aligns right.
12
14
  *
13
15
  * @tagname mdc-appheader
14
16
  *
15
- * @slot leading - Slot for the leading section (e.g., brand logo, brand name).
16
- * @slot center - Slot for the center section (e.g., search bar, icons).
17
- * @slot trailing - Slot for the trailing section (e.g., profile avatar, icons).
17
+ * @slot leading - Content for the leading section (left-aligned).
18
+ * @slot center - Content for the center section (center-aligned).
19
+ * @slot trailing - Content for the trailing section (right-aligned).
20
+ *
21
+ * @cssproperty --mdc-appheader-height - Height of the app header. Default is 4rem (64px).
18
22
  *
19
- * @csspart container - The main container for styling the header.
20
- * @csspart leading-section - The leading section of the header.
21
- * @csspart center-section - The center section of the header.
22
- * @csspart trailing-section - The trailing section of the header.
23
+ * @csspart container - The main header container.
24
+ * @csspart leading-section - The leading section wrapper (left side).
25
+ * @csspart center-section - The center section wrapper (middle).
26
+ * @csspart trailing-section - The trailing section wrapper (right side).
23
27
  */
24
28
  const reactWrapper = createComponent({
25
29
  tagName: TAG_NAME,
@@ -1,23 +1,30 @@
1
1
  import Component from '../../components/avatar';
2
2
  /**
3
- * The `mdc-avatar` component is used to represent a person or a space.
4
- * An avatar can be an icon, initials, counter and photo.
5
- *
6
- * To set the photo of an avatar,
7
- * you need to set "src" attribute.
8
- *
9
- * While the avatar image is loading, as a placeholder,
10
- * we will show the initials text.
11
- * If the initials are not specified then,
12
- * we will show `user-regular` icon as a placeholder.
13
- *
14
- * By default, if there are no attributes specified,
15
- * then the default avatar will be an icon with `user-regular` name.
16
- *
17
- * The avatar component is non clickable and non interactive/focusable component.
18
- * If the avatar is typing, then the loading indicator will be displayed.
19
- * If the counter type avatar is set to a negative number, then we will display 0.
20
- * The presence indicator will be hidden when the counter property is set.
3
+ * The `mdc-avatar` component represents a person or a space. It displays as a photo, initials, icon, or counter.
4
+ *
5
+ * ## Display Priority
6
+ *
7
+ * When multiple attributes are provided, the component determines what to display based on this priority:
8
+ * 1. **Photo** (`src`) - Takes highest priority
9
+ * - While loading: Shows `initials` as placeholder if provided (instant), otherwise shows icon (requires loading)
10
+ * - After loading: Shows the photo
11
+ * - On error: Placeholder remains visible (initials or icon)
12
+ * 2. **Icon** (`icon-name`) - Takes priority if no `src` is provided
13
+ * - Shows custom icon if `icon-name` is set (requires icon library to load)
14
+ * - **Note:** If both `icon-name` and `initials` are provided (without `src`), icon takes precedence and initials are ignored.
15
+ * This means users may see a delay while the icon loads, even though initials render instantly.
16
+ * - Defaults to `user-regular` icon if no other content is available
17
+ * 3. **Initials** (`initials`) - Displayed only if no `src` or `icon-name` is provided
18
+ * - Shows first two characters, converted to uppercase
19
+ * - Renders instantly (no loading required)
20
+ * 4. **Counter** (`counter`) - Displayed only if none of the above are provided
21
+ * - Shows numeric value (max 99+)
22
+ * - Negative values display as 0
23
+ *
24
+ * ## Behavior
25
+ * - Non-interactive and non-focusable component (use `mdc-avatarbutton` for clickable avatars)
26
+ * - Shows loading indicator overlay when `is-typing` is true (displays on top of existing content)
27
+ * - Presence indicator hidden when counter is set or when typing
21
28
  *
22
29
  * @dependency mdc-icon
23
30
  * @dependency mdc-presence