@momentum-design/components 0.117.1 → 0.117.3

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.
Files changed (98) hide show
  1. package/dist/browser/index.js +275 -269
  2. package/dist/browser/index.js.map +3 -3
  3. package/dist/components/accordionbutton/accordionbutton.constants.d.ts +3 -2
  4. package/dist/components/animation/animation.component.js +1 -1
  5. package/dist/components/badge/badge.component.d.ts +1 -1
  6. package/dist/components/cardcheckbox/cardcheckbox.constants.d.ts +3 -2
  7. package/dist/components/checkbox/checkbox.component.d.ts +1 -1
  8. package/dist/components/checkbox/checkbox.constants.d.ts +3 -2
  9. package/dist/components/checkbox/checkbox.styles.js +5 -0
  10. package/dist/components/combobox/combobox.component.d.ts +1 -1
  11. package/dist/components/combobox/combobox.constants.d.ts +3 -2
  12. package/dist/components/dialog/dialog.constants.d.ts +2 -1
  13. package/dist/components/filterchip/filterchip.constants.d.ts +4 -2
  14. package/dist/components/formfieldwrapper/formfieldwrapper.component.js +1 -0
  15. package/dist/components/formfieldwrapper/formfieldwrapper.constants.d.ts +2 -1
  16. package/dist/components/formfieldwrapper/formfieldwrapper.styles.js +4 -0
  17. package/dist/components/formfieldwrapper/formfieldwrapper.utils.d.ts +1 -1
  18. package/dist/components/input/input.component.d.ts +1 -1
  19. package/dist/components/input/input.constants.d.ts +2 -1
  20. package/dist/components/inputchip/inputchip.constants.d.ts +2 -1
  21. package/dist/components/menuitem/menuitem.constants.d.ts +3 -2
  22. package/dist/components/navmenuitem/navmenuitem.constants.d.ts +2 -1
  23. package/dist/components/option/option.component.js +4 -7
  24. package/dist/components/password/password.constants.d.ts +3 -2
  25. package/dist/components/presence/presence.utils.d.ts +1 -1
  26. package/dist/components/progressspinner/progressspinner.constants.d.ts +3 -2
  27. package/dist/components/progressspinner/progressspinner.constants.js +2 -2
  28. package/dist/components/radio/radio.component.d.ts +1 -1
  29. package/dist/components/radio/radio.styles.js +3 -0
  30. package/dist/components/searchfield/searchfield.constants.d.ts +2 -1
  31. package/dist/components/select/select.component.d.ts +39 -46
  32. package/dist/components/select/select.component.js +155 -156
  33. package/dist/components/select/select.constants.d.ts +3 -2
  34. package/dist/components/statictoggle/statictoggle.constants.d.ts +3 -2
  35. package/dist/components/stepperitem/stepperitem.constants.d.ts +4 -3
  36. package/dist/components/textarea/textarea.component.d.ts +1 -1
  37. package/dist/components/textarea/textarea.styles.js +1 -0
  38. package/dist/components/toast/toast.component.js +16 -21
  39. package/dist/components/toast/toast.constants.d.ts +7 -6
  40. package/dist/components/toggle/toggle.component.d.ts +1 -1
  41. package/dist/components/toggle/toggle.constants.d.ts +3 -2
  42. package/dist/components/toggle/toggle.styles.js +5 -0
  43. package/dist/custom-elements.json +116 -84
  44. package/dist/react/accordion/index.d.ts +2 -3
  45. package/dist/react/accordionbutton/index.d.ts +2 -3
  46. package/dist/react/alertchip/index.d.ts +5 -4
  47. package/dist/react/animation/index.d.ts +4 -9
  48. package/dist/react/avatarbutton/index.d.ts +5 -4
  49. package/dist/react/brandvisual/index.d.ts +3 -6
  50. package/dist/react/button/index.d.ts +5 -4
  51. package/dist/react/buttonlink/index.d.ts +5 -4
  52. package/dist/react/buttonsimple/index.d.ts +5 -4
  53. package/dist/react/cardbutton/index.d.ts +5 -4
  54. package/dist/react/cardcheckbox/index.d.ts +6 -7
  55. package/dist/react/cardradio/index.d.ts +6 -7
  56. package/dist/react/checkbox/index.d.ts +3 -2
  57. package/dist/react/chip/index.d.ts +5 -4
  58. package/dist/react/coachmark/index.d.ts +5 -12
  59. package/dist/react/combobox/index.d.ts +6 -15
  60. package/dist/react/dialog/index.d.ts +6 -15
  61. package/dist/react/filterchip/index.d.ts +5 -4
  62. package/dist/react/input/index.d.ts +6 -5
  63. package/dist/react/inputchip/index.d.ts +2 -1
  64. package/dist/react/link/index.d.ts +5 -4
  65. package/dist/react/linkbutton/index.d.ts +5 -4
  66. package/dist/react/linksimple/index.d.ts +5 -4
  67. package/dist/react/listbox/index.d.ts +2 -1
  68. package/dist/react/listitem/index.d.ts +9 -8
  69. package/dist/react/menuitem/index.d.ts +9 -8
  70. package/dist/react/menuitemcheckbox/index.d.ts +11 -9
  71. package/dist/react/menuitemradio/index.d.ts +11 -9
  72. package/dist/react/menupopover/index.d.ts +8 -14
  73. package/dist/react/menusection/index.d.ts +3 -2
  74. package/dist/react/navmenuitem/index.d.ts +11 -12
  75. package/dist/react/option/index.d.ts +9 -8
  76. package/dist/react/password/index.d.ts +6 -5
  77. package/dist/react/popover/index.d.ts +5 -12
  78. package/dist/react/radio/index.d.ts +3 -2
  79. package/dist/react/searchfield/index.d.ts +6 -5
  80. package/dist/react/select/index.d.ts +7 -5
  81. package/dist/react/select/index.js +1 -0
  82. package/dist/react/sidenavigation/index.d.ts +3 -11
  83. package/dist/react/slider/index.d.ts +3 -4
  84. package/dist/react/stepperitem/index.d.ts +4 -3
  85. package/dist/react/tab/index.d.ts +7 -8
  86. package/dist/react/tablist/index.d.ts +2 -3
  87. package/dist/react/textarea/index.d.ts +6 -5
  88. package/dist/react/toast/index.d.ts +2 -1
  89. package/dist/react/toggle/index.d.ts +3 -2
  90. package/dist/react/toggletip/index.d.ts +5 -12
  91. package/dist/react/tooltip/index.d.ts +5 -12
  92. package/dist/react/typewriter/index.d.ts +3 -2
  93. package/dist/react/virtualizedlist/index.d.ts +2 -1
  94. package/dist/utils/controllers/ElementStore.d.ts +1 -1
  95. package/dist/utils/mixins/ListNavigationMixin.js +2 -1
  96. package/dist/utils/provider/index.d.ts +2 -4
  97. package/dist/utils/tag-name/index.d.ts +3 -1
  98. package/package.json +1 -1
@@ -1,7 +1,8 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-accordionbutton";
2
3
  declare const ICON_NAME: {
3
- readonly ARROW_UP: "arrow-up-bold";
4
- readonly ARROW_DOWN: "arrow-down-bold";
4
+ readonly ARROW_UP: Extract<IconNames, "arrow-up-bold">;
5
+ readonly ARROW_DOWN: Extract<IconNames, "arrow-down-bold">;
5
6
  };
6
7
  declare const VARIANT: {
7
8
  readonly DEFAULT: "default";
@@ -96,7 +96,7 @@ class Animation extends Component {
96
96
  }
97
97
  if (this.containerRef.value) {
98
98
  this.lottieInstance = lottie.loadAnimation({
99
- container: this.containerRef.value,
99
+ container: this.containerRef.value, // the dom element that will contain the animation
100
100
  renderer: 'svg',
101
101
  loop: this.getLoopValue(),
102
102
  autoplay: this.autoplay,
@@ -113,7 +113,7 @@ declare class Badge extends Badge_base {
113
113
  */
114
114
  private getBadgeContentBasedOnType;
115
115
  update(changedProperties: PropertyValues): void;
116
- render(): TemplateResult<1 | 2 | 3>;
116
+ render(): TemplateResult;
117
117
  static styles: Array<CSSResult>;
118
118
  }
119
119
  export default Badge;
@@ -1,7 +1,8 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-cardcheckbox";
2
3
  declare const CHECK_MARK: {
3
- readonly DEFAULT: "check-circle-bold";
4
- readonly CHECKED: "check-circle-filled";
4
+ readonly DEFAULT: Extract<IconNames, "check-circle-bold">;
5
+ readonly CHECKED: Extract<IconNames, "check-circle-filled">;
5
6
  };
6
7
  declare const SELECTION_TYPE: {
7
8
  readonly CHECK: "check";
@@ -1,7 +1,7 @@
1
1
  import { CSSResult, PropertyValueMap, PropertyValues } from 'lit';
2
2
  import { AssociatedFormControl } from '../../utils/mixins/FormInternalsMixin';
3
3
  import FormfieldWrapper from '../formfieldwrapper/formfieldwrapper.component';
4
- declare const Checkbox_base: import("../../utils/mixins/index.types").Constructor<import("../../models/component/component.component").default & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
4
+ declare const Checkbox_base: import("../../utils/mixins/index.types").Constructor<import("../../models").Component & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
5
5
  /**
6
6
  * Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.
7
7
  * These are often used in forms, settings, and selections in lists.
@@ -1,6 +1,7 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-checkbox";
2
3
  declare const ICON_NAME: {
3
- readonly CHECKED: "check-bold";
4
- readonly INDETERMINATE: "minus-bold";
4
+ readonly CHECKED: Extract<IconNames, "check-bold">;
5
+ readonly INDETERMINATE: Extract<IconNames, "minus-bold">;
5
6
  };
6
7
  export { TAG_NAME, ICON_NAME };
@@ -73,6 +73,11 @@ const styles = [
73
73
  flex-direction: column;
74
74
  gap: 0.25rem;
75
75
  }
76
+
77
+ .mdc-label {
78
+ word-break: break-word;
79
+ white-space: normal;
80
+ }
76
81
  `,
77
82
  ...hostFocusRingStyles(true),
78
83
  ];
@@ -4,7 +4,7 @@ import FormfieldWrapper from '../formfieldwrapper/formfieldwrapper.component';
4
4
  import type Option from '../option/option.component';
5
5
  import type { PopoverStrategy } from '../popover/popover.types';
6
6
  import type { Placement } from './combobox.types';
7
- declare const Combobox_base: import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/lifecycle/CaptureDestroyEventForChildElement").CaptureDestroyEventForChildElementInterface> & import("../../utils/mixins/index.types").Constructor<import("../../models/component/component.component").default & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
7
+ declare const Combobox_base: import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/lifecycle/CaptureDestroyEventForChildElement").CaptureDestroyEventForChildElementInterface> & import("../../utils/mixins/index.types").Constructor<import("../../models").Component & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
8
8
  /**
9
9
  * The Combobox component is a text-based dropdown control that allows users to select an option from a predefined list.
10
10
  * Users can type text to filter the options and select their desired choice.
@@ -1,7 +1,8 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-combobox";
2
3
  declare const ICON_NAME: {
3
- readonly ARROW_UP: "arrow-up-bold";
4
- readonly ARROW_DOWN: "arrow-down-bold";
4
+ readonly ARROW_UP: Extract<IconNames, "arrow-up-bold">;
5
+ readonly ARROW_DOWN: Extract<IconNames, "arrow-down-bold">;
5
6
  };
6
7
  declare const AUTOCOMPLETE_LIST = "list";
7
8
  declare const LISTBOX_ID = "combobox-listbox-id";
@@ -1,3 +1,4 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-dialog";
2
3
  declare const DIALOG_VARIANT: {
3
4
  readonly DEFAULT: "default";
@@ -10,7 +11,7 @@ declare const DEFAULTS: {
10
11
  readonly SIZE: "small";
11
12
  readonly HEADER_TAG_NAME: "h2";
12
13
  readonly DESCRIPTION_TAG_NAME: "p";
13
- readonly CANCEL_ICON: "cancel-bold";
14
+ readonly CANCEL_ICON: Extract<IconNames, "cancel-bold">;
14
15
  readonly VARIANT: "default";
15
16
  readonly DISABLE_ARIA_HAS_POPUP: false;
16
17
  readonly FOCUS_TRAP: true;
@@ -1,6 +1,8 @@
1
+ import type { IconNames } from '../icon/icon.types';
2
+ import { ColorType } from '../chip/chip.types';
1
3
  declare const TAG_NAME: "mdc-filterchip";
2
4
  declare const DEFAULTS: {
3
- readonly ICON_NAME: "check-bold";
4
- readonly COLOR: "default";
5
+ readonly ICON_NAME: Extract<IconNames, "check-bold">;
6
+ readonly COLOR: Extract<ColorType, "default">;
5
7
  };
6
8
  export { TAG_NAME, DEFAULTS };
@@ -129,6 +129,7 @@ class FormfieldWrapper extends DisabledMixin(Component) {
129
129
  size="${DEFAULTS.ICON_SIZE}"
130
130
  variant="${BUTTON_VARIANTS.TERTIARY}"
131
131
  aria-label="${ifDefined(this.infoIconAriaLabel)}"
132
+ ?disabled="${this.disabled}"
132
133
  id="info-icon-id"
133
134
  ></mdc-button>
134
135
  <mdc-toggletip
@@ -1,3 +1,4 @@
1
+ import { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-formfieldwrapper";
2
3
  declare const VALIDATION: {
3
4
  readonly DEFAULT: "default";
@@ -11,7 +12,7 @@ declare const DEFAULTS: {
11
12
  readonly HELPER_TEXT_ID: "helper-text-id";
12
13
  readonly HEADING_ID: "heading-id";
13
14
  readonly ICON_SIZE: 20;
14
- readonly INFO_ICON: "info-badge-filled";
15
+ readonly INFO_ICON: Extract<IconNames, "info-badge-filled">;
15
16
  readonly TOGGLETIP_PLACEMENT: "top";
16
17
  };
17
18
  declare const MDC_TEXT_OPTIONS: {
@@ -49,6 +49,10 @@ const styles = [
49
49
  color: var(--mds-color-theme-text-secondary-normal);
50
50
  }
51
51
 
52
+ :host::part(info-icon-btn) {
53
+ align-self: flex-start;
54
+ }
55
+
52
56
  :host([help-text-type='error']) .mdc-help-text {
53
57
  color: var(--mds-color-theme-text-error-normal);
54
58
  }
@@ -1,3 +1,3 @@
1
1
  import type { HelperIconsList, ValidationType } from './formfieldwrapper.types';
2
- declare const getHelperIcon: (type: ValidationType) => HelperIconsList | '';
2
+ declare const getHelperIcon: (type: ValidationType) => HelperIconsList | "";
3
3
  export { getHelperIcon };
@@ -3,7 +3,7 @@ import FormfieldWrapper from '../formfieldwrapper';
3
3
  import type { IconNames } from '../icon/icon.types';
4
4
  import { AssociatedFormControl } from '../../utils/mixins/FormInternalsMixin';
5
5
  import type { AutoCapitalizeType, AutoCompleteType, InputType } from './input.types';
6
- declare const Input_base: import("../../utils/mixins/index.types").Constructor<import("../../models/component/component.component").default & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
6
+ declare const Input_base: import("../../utils/mixins/index.types").Constructor<import("../../models").Component & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
7
7
  /**
8
8
  * mdc-input is a component that allows users to input text.
9
9
  * It contains:
@@ -1,3 +1,4 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-input";
2
3
  declare const AUTO_CAPITALIZE: {
3
4
  readonly OFF: "off";
@@ -24,7 +25,7 @@ declare const DEFAULTS: {
24
25
  readonly VALIDATION: "default";
25
26
  readonly ICON_SIZE_VALUE: 1;
26
27
  readonly ICON_SIZE_UNIT: "rem";
27
- readonly CLEAR_BUTTON_ICON: "cancel-bold";
28
+ readonly CLEAR_BUTTON_ICON: Extract<IconNames, "cancel-bold">;
28
29
  readonly CLEAR_BUTTON_VARIANT: "tertiary";
29
30
  readonly CLEAR_BUTTON_SIZE: 20;
30
31
  readonly PREFIX_TEXT_TYPE: "body-midsize-regular";
@@ -1,7 +1,8 @@
1
+ import { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-inputchip";
2
3
  declare const DEFAULTS: {
3
4
  readonly TEXT_TYPE: "body-midsize-regular";
4
5
  readonly TAG_NAME: "span";
5
- readonly CLOSE_ICON: "cancel-bold";
6
+ readonly CLOSE_ICON: Extract<IconNames, "cancel-bold">;
6
7
  };
7
8
  export { TAG_NAME, DEFAULTS };
@@ -1,7 +1,8 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-menuitem";
2
3
  declare const ARROW_ICONS: {
3
- readonly LEFT: "arrow-left-bold";
4
- readonly RIGHT: "arrow-right-bold";
4
+ readonly LEFT: Extract<IconNames, "arrow-left-bold">;
5
+ readonly RIGHT: Extract<IconNames, "arrow-right-bold">;
5
6
  };
6
7
  declare const ARROW_DIRECTIONS: {
7
8
  readonly POSITIVE: "positive";
@@ -1,10 +1,11 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-navmenuitem";
2
3
  declare const ALLOWED_BADGE_TYPES: {
3
4
  readonly DOT: "dot";
4
5
  readonly COUNTER: "counter";
5
6
  };
6
7
  declare const ICON_NAME: {
7
- readonly RIGHT_ARROW: "arrow-right-bold";
8
+ readonly RIGHT_ARROW: Extract<IconNames, "arrow-right-bold">;
8
9
  };
9
10
  declare const DEFAULTS: {
10
11
  readonly MAX_COUNTER: 99;
@@ -11,6 +11,7 @@ import { html, nothing } from 'lit';
11
11
  import { property } from 'lit/decorators.js';
12
12
  import { ifDefined } from 'lit/directives/if-defined.js';
13
13
  import { FormInternalsMixin } from '../../utils/mixins/FormInternalsMixin';
14
+ import { ROLE } from '../../utils/roles';
14
15
  import ListItem from '../listitem/listitem.component';
15
16
  import { LISTITEM_VARIANTS } from '../listitem/listitem.constants';
16
17
  import { TYPE } from '../text/text.constants';
@@ -55,7 +56,7 @@ class Option extends FormInternalsMixin(ListItem) {
55
56
  }
56
57
  connectedCallback() {
57
58
  super.connectedCallback();
58
- this.role = 'option';
59
+ this.role = ROLE.OPTION;
59
60
  this.variant = LISTITEM_VARIANTS.INSET_RECTANGLE;
60
61
  this.setAttribute('aria-selected', `${this.selected}`);
61
62
  this.setAttribute('aria-disabled', `${!!this.disabled}`);
@@ -80,9 +81,7 @@ class Option extends FormInternalsMixin(ListItem) {
80
81
  `
81
82
  : nothing;
82
83
  const trailingContent = this.selected
83
- ? html `
84
- <mdc-icon length-unit="rem" slot="trailing-controls" name="${SELECTED_ICON_NAME}"></mdc-icon>
85
- `
84
+ ? html ` <mdc-icon length-unit="rem" slot="trailing-controls" name="${SELECTED_ICON_NAME}"></mdc-icon> `
86
85
  : nothing;
87
86
  return html `
88
87
  ${prefixIconContent}
@@ -90,9 +89,7 @@ class Option extends FormInternalsMixin(ListItem) {
90
89
  ${this.getText('leading-text-primary-label', TYPE.BODY_MIDSIZE_REGULAR, this.label)}
91
90
  ${this.getText('leading-text-secondary-label', TYPE.BODY_SMALL_REGULAR, this.secondaryLabel)}
92
91
  </div>
93
- <div part="trailing">
94
- ${trailingContent}
95
- </div>
92
+ <div part="trailing">${trailingContent}</div>
96
93
  `;
97
94
  }
98
95
  }
@@ -1,5 +1,6 @@
1
+ import { IconNames } from '../icon/icon.types';
1
2
  export declare const PASSWORD_VISIBILITY_ICONS: {
2
- readonly HIDE_BOLD: "hide-bold";
3
- readonly SHOW_BOLD: "show-bold";
3
+ readonly HIDE_BOLD: Extract<IconNames, "hide-bold">;
4
+ readonly SHOW_BOLD: Extract<IconNames, "show-bold">;
4
5
  };
5
6
  export declare const TAG_NAME: "mdc-password";
@@ -1,3 +1,3 @@
1
1
  import type { PresenceSize, PresenceType } from './presence.types';
2
- export declare const getIconValue: (type: PresenceType) => "active-presence-small-filled" | "away-calling-presence-filled" | "busy-presence-bold" | "camera-filled" | "dnd-presence-badge-filled" | "generic-device-video-badge-filled" | "handset-filled" | "meetings-presence-badge-filled" | "pause-badge-filled" | "phone-badge-filled" | "pto-presence-filled" | "quiet-hours-presence-filled" | "recents-presence-badge-filled" | "share-screen-badge-filled";
2
+ export declare const getIconValue: (type: PresenceType) => "dnd-presence-badge-filled" | "recents-presence-badge-filled" | "away-calling-presence-filled" | "busy-presence-bold" | "camera-filled" | "handset-filled" | "generic-device-video-badge-filled" | "phone-badge-filled" | "pause-badge-filled" | "pto-presence-filled" | "share-screen-badge-filled" | "quiet-hours-presence-filled" | "meetings-presence-badge-filled" | "active-presence-small-filled";
3
3
  export declare const getPresenceIconSize: (size: PresenceSize) => number;
@@ -1,3 +1,4 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-progressspinner";
2
3
  declare const DEFAULTS: {
3
4
  readonly RADIUS: 20;
@@ -9,7 +10,7 @@ declare const DEFAULTS: {
9
10
  readonly ICON_LENGTH_UNIT: "em";
10
11
  };
11
12
  declare const ICON_NAME: {
12
- readonly CHECK_CIRCLE_BOLD: "check-circle-bold";
13
- readonly ERROR_LEGACY_FILLED: "error-legacy-filled";
13
+ readonly CHECK_CIRCLE_BOLD: Extract<IconNames, "check-circle-bold">;
14
+ readonly ERROR_LEGACY_FILLED: Extract<IconNames, "error-legacy-filled">;
14
15
  };
15
16
  export { TAG_NAME, DEFAULTS, ICON_NAME };
@@ -3,8 +3,8 @@ const TAG_NAME = utils.constructTagName('progressspinner');
3
3
  const DEFAULTS = {
4
4
  RADIUS: 20,
5
5
  CIRCUMFERENCE: 2 * Math.PI * 20,
6
- STROKE_WIDTH: 4,
7
- GAP_SIZE: 7.5,
6
+ STROKE_WIDTH: 4, // Default stroke width or border width
7
+ GAP_SIZE: 7.5, // Gap size between the spinner and the track
8
8
  ERROR_ICON_SIZE: 2,
9
9
  SUCCESS_ICON_SIZE: 3,
10
10
  ICON_LENGTH_UNIT: 'em',
@@ -1,7 +1,7 @@
1
1
  import { CSSResult, PropertyValueMap, PropertyValues } from 'lit';
2
2
  import FormfieldWrapper from '../formfieldwrapper/formfieldwrapper.component';
3
3
  import { AssociatedFormControl } from '../../utils/mixins/FormInternalsMixin';
4
- declare const Radio_base: import("../../utils/mixins/index.types").Constructor<import("../../models/component/component.component").default & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
4
+ declare const Radio_base: import("../../utils/mixins/index.types").Constructor<import("../../models").Component & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
5
5
  /**
6
6
  * Radio allow users to select single options from a list or turn an item/feature on or off.
7
7
  * These are often used in forms, settings, and selection in lists.
@@ -61,6 +61,8 @@ const styles = [
61
61
 
62
62
  .mdc-label {
63
63
  cursor: pointer;
64
+ word-break: break-word;
65
+ white-space: normal;
64
66
  }
65
67
 
66
68
  :host([disabled]) .mdc-radio__label-text,
@@ -83,6 +85,7 @@ const styles = [
83
85
  flex-direction: column;
84
86
  justify-content: center;
85
87
  gap: 0.25rem;
88
+ flex: 1;
86
89
  }
87
90
  :host::part(required-indicator) {
88
91
  display: none;
@@ -1,7 +1,8 @@
1
+ import type { IconNames } from '../icon/icon.types';
1
2
  declare const TAG_NAME: "mdc-searchfield";
2
3
  declare const DEFAULTS: {
3
4
  readonly TYPE: "search";
4
- readonly ICON: "search-bold";
5
+ readonly ICON: Extract<IconNames, "search-bold">;
5
6
  readonly CLOSE_BTN: true;
6
7
  readonly INPUT_CHIP_TAG: "mdc-inputchip";
7
8
  };
@@ -3,8 +3,9 @@ import { CSSResult } from 'lit';
3
3
  import { AssociatedFormControl } from '../../utils/mixins/FormInternalsMixin';
4
4
  import FormfieldWrapper from '../formfieldwrapper/formfieldwrapper.component';
5
5
  import type Option from '../option/option.component';
6
+ import type { PopoverStrategy } from '../popover/popover.types';
6
7
  import type { Placement } from './select.types';
7
- declare const Select_base: import("../../utils/mixins/index.types").Constructor<import("../../models/component/component.component").default & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
8
+ declare const Select_base: import("../../utils/mixins/index.types").Constructor<import("../../models").Component & import("../../utils/mixins/ListNavigationMixin").ListNavigationMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/lifecycle/CaptureDestroyEventForChildElement").CaptureDestroyEventForChildElementInterface> & import("../../utils/mixins/index.types").Constructor<import("../../models").Component & import("../../utils/mixins/AutoFocusOnMountMixin").AutoFocusOnMountMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/FormInternalsMixin").FormInternalsMixinInterface> & import("../../utils/mixins/index.types").Constructor<import("../../utils/mixins/DataAriaLabelMixin").DataAriaLabelMixinInterface> & typeof FormfieldWrapper;
8
9
  /**
9
10
  * The mdc-select component is a dropdown selection control that allows users to pick an option from a predefined list.
10
11
  * It is designed to work with `mdc-option` for individual options and `mdc-optgroup` for grouping related options.
@@ -12,6 +13,7 @@ declare const Select_base: import("../../utils/mixins/index.types").Constructor<
12
13
  * Every mdc-option should have a `value` attribute set to ensure proper form submission.
13
14
  *
14
15
  * To set a default option, use the `selected` attribute on the `mdc-option` element.
16
+ * You can also set the `value` attribute on the `mdc-select` element to match the value of the desired option. The component will select the corresponding option automatically.
15
17
  *
16
18
  * **Note:** Make sure to add `mdc-selectlistbox` as a child of `mdc-select` and wrap options/optgroup in it to ensure proper accessibility functionality. Read more about it in SelectListBox documentation.
17
19
  *
@@ -60,7 +62,13 @@ declare class Select extends Select_base implements AssociatedFormControl {
60
62
  */
61
63
  readonly: boolean;
62
64
  /**
63
- * The placeholder text which will be shown on the text if provided.
65
+ * The placement of the popover within Select component.
66
+ * This defines the position of the popover relative to the select input field.
67
+ *
68
+ * Possible values:
69
+ * - 'top-start'
70
+ * - 'bottom-start'
71
+ * @default 'bottom-start'
64
72
  */
65
73
  placement: Placement;
66
74
  /**
@@ -96,7 +104,7 @@ declare class Select extends Select_base implements AssociatedFormControl {
96
104
  * @default absolute
97
105
  * @see [Floating UI - strategy](https://floating-ui.com/docs/computePosition#strategy)
98
106
  */
99
- strategy: 'absolute' | 'fixed';
107
+ strategy: PopoverStrategy;
100
108
  /**
101
109
  * The z-index of the popover within Select.
102
110
  *
@@ -111,8 +119,6 @@ declare class Select extends Select_base implements AssociatedFormControl {
111
119
  */
112
120
  backdropAppendTo?: string;
113
121
  /** @internal */
114
- slottedListboxes: Array<HTMLElement>;
115
- /** @internal */
116
122
  private visualCombobox;
117
123
  /** @internal */
118
124
  selectedOption?: Option | null;
@@ -120,10 +126,35 @@ declare class Select extends Select_base implements AssociatedFormControl {
120
126
  displayPopover: boolean;
121
127
  /** @internal */
122
128
  private initialSelectedOption;
123
- private getAllValidOptions;
124
- private getFirstValidOption;
125
- private getLastValidOption;
129
+ /** @internal */
130
+ private itemsStore;
131
+ constructor();
132
+ connectedCallback(): void;
133
+ /** @internal */
134
+ get navItems(): Option[];
135
+ /**
136
+ * This function is called when the value attribute changes.
137
+ * It updates the selected option based on the value attribute.
138
+ *
139
+ * @param name - attribute name
140
+ * @param old - old value
141
+ * @param value - new value
142
+ */
143
+ attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
144
+ /** @internal */
145
+ private onStoreUpdate;
146
+ /** @internal */
147
+ private isValidItem;
148
+ /** @internal */
126
149
  private getFirstSelectedOption;
150
+ /** @internal */
151
+ private getFirstOption;
152
+ /**
153
+ * Update the selected option when an option is modified.
154
+ *
155
+ * @internal
156
+ */
157
+ private handleModifiedEvent;
127
158
  /**
128
159
  * Handles the first updated lifecycle event.
129
160
  * If an option is selected, use that as the value.
@@ -131,15 +162,6 @@ declare class Select extends Select_base implements AssociatedFormControl {
131
162
  */
132
163
  protected firstUpdated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): Promise<void>;
133
164
  updated(changedProperties: PropertyValues): void;
134
- /**
135
- * Modifies the listbox wrapper to ensure it has the correct attributes
136
- * and IDs for accessibility.
137
- *
138
- * Once [ariaOwnsElements](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/ariaOwnsElements) is supported in browsers,
139
- * this an be removed and mdc-option can be used directly in the select component with a listbox in a different
140
- * shadow root and aria-owns attribute to connect them.
141
- */
142
- private modifyListBoxWrapper;
143
165
  /**
144
166
  * A private method which is called when an option is clicked.
145
167
  * It sets the selected option, removes selected from other options, updates the tabindex for all options,
@@ -157,13 +179,6 @@ declare class Select extends Select_base implements AssociatedFormControl {
157
179
  * @param option - The option element in DOM which gets selected.
158
180
  */
159
181
  private setSelectedOption;
160
- /**
161
- * Updates the tabindex of all options.
162
- * Sets the tabindex of the selected option to '0' and others to '-1'.
163
- *
164
- * @param option - The option which tabIndex should be set to 0.
165
- */
166
- private updateTabIndexForAllOptions;
167
182
  /**
168
183
  * Sets selected attribute on the selected option and removes it from all options
169
184
  * @param selectedOption - The option which gets selected
@@ -212,21 +227,6 @@ declare class Select extends Select_base implements AssociatedFormControl {
212
227
  * @param event - The keyboard event.
213
228
  */
214
229
  private handleKeydownCombobox;
215
- /**
216
- * Handles the keydown event on the select element when the popover is open.
217
- * The options are as follows:
218
- * - HOME: Sets focus and tabindex on the first option.
219
- * - END: Sets focus and tabindex on the last option.
220
- * - ARROW_DOWN, ARROW_UP, PAGE_DOWN, PAGE_UP: Handles navigation between options.
221
- * @param event - The keyboard event.
222
- */
223
- private handlePopoverKeydown;
224
- /**
225
- * Focuses the given option and updates the tabindex for all options.
226
- * @param option - The option to focus.
227
- * @internal
228
- */
229
- private focusAndUpdateTabIndexes;
230
230
  /**
231
231
  * If the native input is focused, it will focus the visual combobox.
232
232
  * This is to ensure that the visual combobox is focused when the native input is focused.
@@ -236,13 +236,6 @@ declare class Select extends Select_base implements AssociatedFormControl {
236
236
  * @internal
237
237
  */
238
238
  private handleNativeInputFocus;
239
- /**
240
- * Updates the state of the select component.
241
- * This public method should be fired when the selected on the option components is updated from the outside.
242
- * It ensures that the selected attribute is set correctly on the options
243
- * and that the aria-selected attribute is updated accordingly.
244
- */
245
- updateState(): void;
246
239
  render(): import("lit-html").TemplateResult<1>;
247
240
  static styles: Array<CSSResult>;
248
241
  }