@iress-oss/ids-components 5.17.0 → 5.19.0

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 (186) hide show
  1. package/dist/{AutocompleteNoResults-Z4L_A4F_.js → AutocompleteNoResults-D_adOX6J.js} +1 -1
  2. package/dist/{ComboboxHiddenInput-gJl1k-Vp.js → ComboboxHiddenInput-DgbYej-J.js} +5 -5
  3. package/dist/{FieldAppendToLabel-CNMj7tRY.js → FieldAppendToLabel-B-8fGGeb.js} +3 -3
  4. package/dist/{InputBase-Dt3vHG19.js → InputBase-Bn5cQ5z1.js} +1 -1
  5. package/dist/Loading.module-DV-X9MgR.js +13 -0
  6. package/dist/{LoadingSuspense-BjzbePWa.js → LoadingSuspense-U4UZBhSB.js} +2018 -1971
  7. package/dist/LogoFromSrc-CpUGDF0Z.js +59 -0
  8. package/dist/MenuItem.module-CEkjIjoS.js +24 -0
  9. package/dist/Popover.module-CVRr72JE.js +11 -0
  10. package/dist/PopoverProvider-BCmddfo7.js +142 -0
  11. package/dist/{SelectControl-IZ6Sl4ap.js → SelectControl-3oO2h0ri.js} +1 -1
  12. package/dist/{SliderTicks-8ffd5McY.js → SliderTicks-BkIFXa6K.js} +1 -1
  13. package/dist/TabSet.module-BRO3CmMd.js +13 -0
  14. package/dist/Table.module-fgDgW5gS.js +32 -0
  15. package/dist/components/Alert/Alert.js +1 -1
  16. package/dist/components/Alert/index.js +1 -1
  17. package/dist/components/Autocomplete/Autocomplete.js +3 -3
  18. package/dist/components/Autocomplete/components/AutocompleteNoResults.js +1 -1
  19. package/dist/components/Autocomplete/index.js +1 -1
  20. package/dist/components/Badge/Badge.js +4 -4
  21. package/dist/components/Button/Button.js +2 -2
  22. package/dist/components/Button/CloseButton/CloseButton.js +1 -1
  23. package/dist/components/Button/index.js +1 -1
  24. package/dist/components/ButtonGroup/ButtonGroup.js +2 -2
  25. package/dist/components/ButtonGroup/hooks/useIDSButtonGroupItem.js +1 -1
  26. package/dist/components/ButtonGroup/index.js +1 -1
  27. package/dist/components/Checkbox/Checkbox.js +1 -1
  28. package/dist/components/Checkbox/helpers/mapCheckboxGroupOptions.js +1 -1
  29. package/dist/components/Checkbox/index.js +1 -1
  30. package/dist/components/CheckboxGroup/CheckboxGroup.js +6 -6
  31. package/dist/components/CheckboxMark/CheckboxMark.types.js +2 -2
  32. package/dist/components/Combobox/Combobox.js +3 -3
  33. package/dist/components/Combobox/MultiCombobox/MultiCombobox.js +3 -3
  34. package/dist/components/Combobox/components/ComboboxHiddenInput.js +1 -1
  35. package/dist/components/Combobox/components/ComboboxResults.js +4 -4
  36. package/dist/components/Combobox/components/ComboboxResultsDescriptor.js +2 -2
  37. package/dist/components/Combobox/index.js +1 -1
  38. package/dist/components/Expander/Expander.js +1 -1
  39. package/dist/components/Field/Field.js +1 -1
  40. package/dist/components/Field/FieldGroup/FieldGroup.js +2 -2
  41. package/dist/components/Field/components/FieldAppendToLabel.js +3 -3
  42. package/dist/components/Filter/Filter.js +3 -3
  43. package/dist/components/Filter/components/FilterResetButton.js +2 -2
  44. package/dist/components/Filter/components/FilterSearch.js +2 -2
  45. package/dist/components/Filter/index.js +1 -1
  46. package/dist/components/Form/Form.js +1 -1
  47. package/dist/components/Form/FormField/FormField.js +42 -38
  48. package/dist/components/Form/FormField/FormFieldset.js +2 -2
  49. package/dist/components/Form/HookForm/HookForm.js +1 -1
  50. package/dist/components/Form/index.js +1 -1
  51. package/dist/components/Hide/Hide.js +1 -1
  52. package/dist/components/Hide/helpers/composeHideClasses.js +2 -2
  53. package/dist/components/Hide/index.js +1 -1
  54. package/dist/components/Icon/Icon.js +2 -2
  55. package/dist/components/Icon/index.js +1 -1
  56. package/dist/components/Inline/Inline.js +2 -2
  57. package/dist/components/Inline/index.js +1 -1
  58. package/dist/components/Input/ClearButton/ClearButton.js +1 -1
  59. package/dist/components/Input/Input.js +2 -2
  60. package/dist/components/Input/InputBase/InputBase.js +1 -1
  61. package/dist/components/Input/index.js +1 -1
  62. package/dist/components/InputCurrency/InputCurrency.js +1 -1
  63. package/dist/components/InputCurrency/index.js +1 -1
  64. package/dist/components/Label/LabelBase/LabelBase.js +1 -1
  65. package/dist/components/Menu/MenuDivider/MenuDivider.js +2 -2
  66. package/dist/components/Menu/MenuHeading/MenuHeading.js +2 -2
  67. package/dist/components/Menu/MenuItem/MenuItem.js +1 -1
  68. package/dist/components/Menu/MenuItem/hooks/useMenuItemButtonProps.js +1 -1
  69. package/dist/components/Menu/MenuItem/hooks/useMenuItemComposite.js +1 -1
  70. package/dist/components/Menu/MenuItem/hooks/useMenuItemInteractions.js +41 -41
  71. package/dist/components/Menu/MenuText/MenuText.js +3 -3
  72. package/dist/components/Menu/helpers/mapMenuItems.js +1 -1
  73. package/dist/components/Menu/hooks/useMenuStyles.js +3 -3
  74. package/dist/components/Menu/index.js +1 -1
  75. package/dist/components/Modal/Modal.js +1 -1
  76. package/dist/components/Modal/index.js +1 -1
  77. package/dist/components/Navbar/Navbar.js +2 -2
  78. package/dist/components/Navbar/components/HomeLinkContent.js +2 -2
  79. package/dist/components/Navbar/components/LogoFromSrc.js +1 -1
  80. package/dist/components/Navbar/components/NavbarLogo.js +2 -2
  81. package/dist/components/Navbar/index.js +1 -1
  82. package/dist/components/Placeholder/Placeholder.js +1 -1
  83. package/dist/components/Popover/InputPopover/InputPopover.js +1 -1
  84. package/dist/components/Popover/InputPopover/InputPopoverActivator.js +1 -1
  85. package/dist/components/Popover/InputPopover/InputPopoverProvider.js +65 -61
  86. package/dist/components/Popover/Popover.js +2 -2
  87. package/dist/components/Popover/PopoverProvider.js +1 -1
  88. package/dist/components/Popover/components/PopoverActivator.js +1 -1
  89. package/dist/components/Popover/components/PopoverContent.js +1 -1
  90. package/dist/components/Popover/helpers/handlePopoverTabKey.js +1 -1
  91. package/dist/components/Popover/hooks/usePopover.js +1 -1
  92. package/dist/components/Popover/hooks/usePopoverActivatorInteractions.js +1 -1
  93. package/dist/components/Progress/Progress.js +1 -1
  94. package/dist/components/Provider/Provider.js +1 -1
  95. package/dist/components/Radio/Radio.js +1 -1
  96. package/dist/components/Radio/helpers/mapRadioGroupOptions.js +1 -1
  97. package/dist/components/Radio/index.js +1 -1
  98. package/dist/components/RadioGroup/RadioGroup.js +3 -3
  99. package/dist/components/Readonly/Readonly.js +3 -3
  100. package/dist/components/Readonly/index.js +1 -1
  101. package/dist/components/RichSelect/RichSelect.js +2 -2
  102. package/dist/components/RichSelect/SelectBody/SelectBody.js +2 -2
  103. package/dist/components/RichSelect/SelectCreate/SelectCreate.js +2 -2
  104. package/dist/components/RichSelect/SelectHeading/SelectHeading.js +2 -2
  105. package/dist/components/RichSelect/SelectLabel/SelectLabel.js +1 -1
  106. package/dist/components/RichSelect/SelectMenu/SelectMenu.js +2 -2
  107. package/dist/components/RichSelect/SelectMenu/SelectMenuItem.js +2 -2
  108. package/dist/components/RichSelect/SelectSearch/SelectSearch.js +1 -1
  109. package/dist/components/RichSelect/SelectSearchInput/SelectSearchInput.js +1 -1
  110. package/dist/components/RichSelect/SelectTags/SelectTags.js +1 -1
  111. package/dist/components/RichSelect/components/SelectActivator.js +1 -1
  112. package/dist/components/RichSelect/components/SelectOptions.js +2 -2
  113. package/dist/components/RichSelect/index.js +1 -1
  114. package/dist/components/Row/Row.js +2 -2
  115. package/dist/components/Row/index.js +1 -1
  116. package/dist/components/Select/Select.js +2 -2
  117. package/dist/components/Select/components/SelectControl.js +1 -1
  118. package/dist/components/Select/components/SelectReadonly.js +2 -2
  119. package/dist/components/Select/helpers/mapSelectOptions.js +1 -1
  120. package/dist/components/Select/helpers/nodesToSelectOptions.js +1 -1
  121. package/dist/components/Select/index.js +1 -1
  122. package/dist/components/Skeleton/Skeleton.js +2 -2
  123. package/dist/components/SkipLink/SkipLink.js +1 -1
  124. package/dist/components/Slideout/Slideout.js +2 -2
  125. package/dist/components/Slideout/components/SlideoutInner.js +2 -2
  126. package/dist/components/Slideout/index.js +1 -1
  127. package/dist/components/Slider/Slider.js +2 -2
  128. package/dist/components/Slider/components/SliderTicks.js +1 -1
  129. package/dist/components/Slider/index.js +1 -1
  130. package/dist/components/Spinner/Spinner.js +1 -1
  131. package/dist/components/Spinner/index.js +1 -1
  132. package/dist/components/TabSet/Tab/Tab.js +14 -13
  133. package/dist/components/TabSet/TabSet.js +1 -1
  134. package/dist/components/TabSet/components/TabSetItem.js +1 -1
  135. package/dist/components/Table/Table.js +2 -2
  136. package/dist/components/Table/TableBody/TableBody.js +2 -2
  137. package/dist/components/Table/components/TableEmpty.js +1 -1
  138. package/dist/components/Table/components/TableHeader.js +1 -1
  139. package/dist/components/Table/components/TableHeaderCell.js +1 -1
  140. package/dist/components/Table/components/TableSortButton.js +2 -2
  141. package/dist/components/Table/hooks/useIDSTableColumnStyles.js +1 -1
  142. package/dist/components/Table/index.js +1 -1
  143. package/dist/components/Tag/Tag.js +1 -1
  144. package/dist/components/Tag/TagInput/TagInput.js +1 -1
  145. package/dist/components/Tag/components/TagListInput/TagListInput.js +1 -1
  146. package/dist/components/Tag/index.js +1 -1
  147. package/dist/components/Toaster/Toast/Toast.js +1 -1
  148. package/dist/components/Toaster/Toast/ToastAnimated.js +1 -1
  149. package/dist/components/Toaster/Toast/ToastIcon.js +1 -1
  150. package/dist/components/Toaster/Toaster.js +1 -1
  151. package/dist/components/Toaster/ToasterProvider.js +1 -1
  152. package/dist/components/Toaster/hooks/useToaster.js +1 -1
  153. package/dist/components/Toaster/index.js +1 -1
  154. package/dist/components/Toggle/Toggle.js +3 -3
  155. package/dist/components/Tooltip/Tooltip.js +1 -1
  156. package/dist/components/ValidationMessage/ValidationBase/ValidationBase.js +1 -1
  157. package/dist/components/ValidationMessage/ValidationSummary/ValidationSummary.js +1 -1
  158. package/dist/constants.js +1 -1
  159. package/dist/helpers/label-value/highlightQueryInLabelValue.js +6 -5
  160. package/dist/main.js +2 -2
  161. package/dist/patterns/Loading/Loading.js +1 -1
  162. package/dist/patterns/Loading/LoadingSuspense.js +1 -1
  163. package/dist/patterns/Loading/components/ComponentLoading.js +2 -2
  164. package/dist/patterns/Loading/components/DefaultLoading.js +2 -2
  165. package/dist/patterns/Loading/components/LongLoading.js +2 -2
  166. package/dist/patterns/Loading/components/PageLoading.js +2 -2
  167. package/dist/patterns/Loading/components/StartUpLoading.js +2 -2
  168. package/dist/patterns/Loading/components/ValidateLoading.js +2 -2
  169. package/dist/patterns/Loading/index.js +1 -1
  170. package/dist/src/components/Form/FormField/FormField.d.ts +1 -1
  171. package/dist/src/components/Form/FormField/FormField.types.d.ts +8 -2
  172. package/dist/src/components/Popover/Popover.types.d.ts +2 -1
  173. package/dist/src/components/RichSelect/RichSelect.types.d.ts +13 -1
  174. package/dist/src/components/RichSelect/SelectMenu/SelectMenuItem.d.ts +1 -1
  175. package/dist/src/components/RichSelect/components/SelectOptions.d.ts +2 -2
  176. package/dist/src/interfaces.d.ts +1 -0
  177. package/dist/style.css +1 -1
  178. package/dist/{useIDSButtonGroupItem-NdNvcZnJ.js → useIDSButtonGroupItem-DmWrryOR.js} +1 -1
  179. package/package.json +1 -1
  180. package/dist/Loading.module-PM8ehb0Z.js +0 -13
  181. package/dist/LogoFromSrc-Dr3xwNJa.js +0 -59
  182. package/dist/MenuItem.module-xNOwGiI0.js +0 -24
  183. package/dist/Popover.module-BzjyEvrY.js +0 -11
  184. package/dist/PopoverProvider-BqnPfQtY.js +0 -138
  185. package/dist/TabSet.module-p87tRckl.js +0 -13
  186. package/dist/Table.module-CdZFi754.js +0 -32
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "./components/StartUpLoading.js";
3
- import { P as s } from "../../LoadingSuspense-BjzbePWa.js";
3
+ import { P as s } from "../../LoadingSuspense-U4UZBhSB.js";
4
4
  import "./hooks/useShouldRenderLoading.js";
5
5
  import "./components/LongLoading.js";
6
6
  export {
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { Q as i } from "../../LoadingSuspense-BjzbePWa.js";
3
+ import { Q as i } from "../../LoadingSuspense-U4UZBhSB.js";
4
4
  import "./hooks/useSuspenseResource.js";
5
5
  export {
6
6
  i as IressLoadingSuspense
@@ -1,8 +1,8 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../../components/Skeleton/Skeleton.js";
4
- import { ag as e } from "../../../LoadingSuspense-BjzbePWa.js";
5
- import "../../../Loading.module-PM8ehb0Z.js";
4
+ import { ag as e } from "../../../LoadingSuspense-U4UZBhSB.js";
5
+ import "../../../Loading.module-DV-X9MgR.js";
6
6
  import "../../../index-2QXL0WYc.js";
7
7
  import "../../../components/Text/Text.js";
8
8
  export {
@@ -1,9 +1,9 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { ae as e } from "../../../LoadingSuspense-BjzbePWa.js";
3
+ import { ae as e } from "../../../LoadingSuspense-U4UZBhSB.js";
4
4
  import "../../../components/Text/Text.js";
5
5
  import "../../../index-2QXL0WYc.js";
6
- import "../../../Loading.module-PM8ehb0Z.js";
6
+ import "../../../Loading.module-DV-X9MgR.js";
7
7
  export {
8
8
  e as DefaultLoading
9
9
  };
@@ -2,7 +2,7 @@ import { jsx as c, jsxs as g } from "react/jsx-runtime";
2
2
  import { IressStack as w } from "../../../components/Stack/Stack.js";
3
3
  import { useMemo as f, useId as y } from "react";
4
4
  import { c as h } from "../../../index-2QXL0WYc.js";
5
- import { l as m } from "../../../Loading.module-PM8ehb0Z.js";
5
+ import { l as m } from "../../../Loading.module-DV-X9MgR.js";
6
6
  import { IressText as M } from "../../../components/Text/Text.js";
7
7
  import { IressPanel as S } from "../../../components/Panel/Panel.js";
8
8
  import { IressProgress as j } from "../../../components/Progress/Progress.js";
@@ -10,7 +10,7 @@ import { GlobalCSSClass as L } from "../../../enums.js";
10
10
  import { propagateTestid as O } from "../../../helpers/utility/propagateTestid.js";
11
11
  import { useShowIndicator as C } from "../hooks/useShowIndicator.js";
12
12
  import { useEstimatedProgressValue as G } from "../hooks/useEstimatedProgressValue.js";
13
- const P = "ids-long-loading--root-v5170", V = "ids-long-loading--panel-v5170", B = "ids-long-loading--dots-v5170", E = "ids-long-loading--check-list-v5170", R = "ids-long-loading--check-list-item-v5170", T = "ids-long-loading--check-list-item__done-v5170", U = "ids-long-loading--checked-v5170", $ = "ids-long-loading--checked__circle-v5170", q = "ids-long-loading--checked__check-v5170", s = {
13
+ const P = "ids-long-loading--root-v5190", V = "ids-long-loading--panel-v5190", B = "ids-long-loading--dots-v5190", E = "ids-long-loading--check-list-v5190", R = "ids-long-loading--check-list-item-v5190", T = "ids-long-loading--check-list-item__done-v5190", U = "ids-long-loading--checked-v5190", $ = "ids-long-loading--checked__circle-v5190", q = "ids-long-loading--checked__check-v5190", s = {
14
14
  root: P,
15
15
  panel: V,
16
16
  dots: B,
@@ -3,12 +3,12 @@ import "react";
3
3
  import "../../../components/Stack/Stack.js";
4
4
  import "../../../components/Skeleton/Skeleton.js";
5
5
  import "../../../components/Container/Container.js";
6
- import { ah as n } from "../../../LoadingSuspense-BjzbePWa.js";
6
+ import { ah as n } from "../../../LoadingSuspense-U4UZBhSB.js";
7
7
  import "../../../components/Col/Col.js";
8
8
  import "../../../components/Divider/Divider.js";
9
9
  import "../../../components/Card/Card.js";
10
10
  import "../../../index-2QXL0WYc.js";
11
- import "../../../Loading.module-PM8ehb0Z.js";
11
+ import "../../../Loading.module-DV-X9MgR.js";
12
12
  export {
13
13
  n as PageLoading
14
14
  };
@@ -3,12 +3,12 @@ import { IressStack as j } from "../../../components/Stack/Stack.js";
3
3
  import { useState as y, useEffect as u, useRef as I, useMemo as T } from "react";
4
4
  import { IressProgress as k } from "../../../components/Progress/Progress.js";
5
5
  import { c as M } from "../../../index-2QXL0WYc.js";
6
- import { l as n } from "../../../Loading.module-PM8ehb0Z.js";
6
+ import { l as n } from "../../../Loading.module-DV-X9MgR.js";
7
7
  import { IressText as v } from "../../../components/Text/Text.js";
8
8
  import { propagateTestid as O } from "../../../helpers/utility/propagateTestid.js";
9
9
  import { useShowIndicator as E } from "../hooks/useShowIndicator.js";
10
10
  import { useEstimatedProgressValue as R } from "../hooks/useEstimatedProgressValue.js";
11
- const H = "ids-start-up-loading--root-v5170", P = "ids-start-up-loading--progress-v5170", h = {
11
+ const H = "ids-start-up-loading--root-v5190", P = "ids-start-up-loading--progress-v5190", h = {
12
12
  root: H,
13
13
  progress: P
14
14
  }, U = ({
@@ -1,9 +1,9 @@
1
1
  import "react/jsx-runtime";
2
- import { af as d } from "../../../LoadingSuspense-BjzbePWa.js";
2
+ import { af as d } from "../../../LoadingSuspense-U4UZBhSB.js";
3
3
  import "../../../index-2QXL0WYc.js";
4
4
  import "react";
5
5
  import "../../../components/Text/Text.js";
6
- import "../../../Loading.module-PM8ehb0Z.js";
6
+ import "../../../Loading.module-DV-X9MgR.js";
7
7
  export {
8
8
  d as ValidateLoading
9
9
  };
@@ -1,4 +1,4 @@
1
- import { P as a, Q as o } from "../../LoadingSuspense-BjzbePWa.js";
1
+ import { P as a, Q as o } from "../../LoadingSuspense-U4UZBhSB.js";
2
2
  export {
3
3
  a as IressLoading,
4
4
  o as IressLoadingSuspense
@@ -4,4 +4,4 @@ import { IressFormFieldProps } from './FormField.types';
4
4
  * A `IressField` wrapper that can show error message and label automatically inside an `IressForm`.
5
5
  * It uses the `useController` hook from `react-hook-form` for form management.
6
6
  */
7
- export declare const IressFormField: <TFieldValues extends FieldValues>({ control, defaultValue, name, render, rules: withCustomRules, shouldUnregister, readOnly, ...fieldProps }: IressFormFieldProps<TFieldValues>) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const IressFormField: <TFieldValues extends FieldValues>({ control: controlProp, defaultValue, name, render, rules: withCustomRules, shouldUnregister, readOnly, ...fieldProps }: IressFormFieldProps<TFieldValues>) => import("react/jsx-runtime").JSX.Element;
@@ -11,7 +11,7 @@ export type CustomRules<T extends FieldValues = FieldValues> = UseControllerProp
11
11
  minDate?: Date | CustomRuleWithMessage<Date>;
12
12
  maxDate?: Date | CustomRuleWithMessage<Date>;
13
13
  };
14
- export interface IressFormFieldProps<T extends FieldValues = FieldValues, TName extends FieldPath<T> = FieldPath<T>> extends Omit<IressFieldProps, OmittedFieldProps>, Omit<UseControllerProps<T, FieldPath<T>>, 'disabled'> {
14
+ export interface IressFormFieldProps<T extends FieldValues = FieldValues, TName extends FieldPath<T> = FieldPath<T>> extends Omit<IressFieldProps, OmittedFieldProps>, Omit<UseControllerProps<T, FieldPath<T>>, 'disabled' | 'shouldUnregister'> {
15
15
  /**
16
16
  * React Hook Form control object. It is used to register the field with the form.
17
17
  * It is automatically provided when used inside an `IressForm`, but it can be overridden if you are using a custom form control.
@@ -41,10 +41,16 @@ export interface IressFormFieldProps<T extends FieldValues = FieldValues, TName
41
41
  rules?: CustomRules<T>;
42
42
  /**
43
43
  * Input will be unregistered after unmount and defaultValues will be removed as well (it will not be stored in the form state).
44
+ * You can pass an object to keep some form state available after unregistering, such as dirty fields.
44
45
  *
45
46
  * [Learn more](https://react-hook-form.com/docs/usecontroller)
46
47
  */
47
- shouldUnregister?: boolean;
48
+ shouldUnregister?: boolean | {
49
+ keepDirty?: boolean;
50
+ keepTouched?: boolean;
51
+ keepIsValid?: boolean;
52
+ keepError?: boolean;
53
+ };
48
54
  /**
49
55
  * Text to be displayed instead of input field.
50
56
  */
@@ -142,6 +142,7 @@ export interface PopoverContextValue extends PopoverStateHookReturn, PopoverAria
142
142
  interactions: ReturnType<typeof useInteractions>;
143
143
  list: MutableRefObject<(HTMLElement | null)[]>;
144
144
  type?: PopoverTypes;
145
+ resetActiveIndex: () => void;
145
146
  setActiveIndex: (value: number | null) => void;
146
147
  setShowWithReason: (flag: boolean, e?: Event, reason?: OpenChangeReason) => void;
147
148
  setVirtualFocus?: (node: PopoverVirtualNode | null) => void;
@@ -153,7 +154,7 @@ export interface PopoverRef extends Pick<PopoverContextValue, 'setShow' | 'show'
153
154
  }
154
155
  export interface PopoverVirtualNode {
155
156
  onBlur?: React.KeyboardEventHandler<HTMLElement>;
156
- onKeyDown?: React.KeyboardEventHandler<HTMLElement>;
157
+ onKeyDown?: (e: React.KeyboardEvent<HTMLElement>, popover?: PopoverContextValue) => void;
157
158
  }
158
159
  /** @deprecated PopoverType enum is now deprecated and will be removed in a future version. Please use the PopoverTypes type instead. **/
159
160
  export declare enum PopoverType {
@@ -1,7 +1,7 @@
1
1
  import { AutocompleteSearchHookProps } from '../Autocomplete';
2
2
  import { FloatingUIAligns, FocusableElementRef, FormattedLabelValueMeta, FormElementWidths, IressPopoverProps, LabelValueMeta, PopoverRef, PopoverTypes } from '../../main';
3
3
  import { ChangeEvent, ForwardedRef, ReactElement, ReactNode } from 'react';
4
- export interface IressRichSelectProps extends Omit<AutocompleteSearchHookProps, 'query'>, Omit<IressPopoverProps, 'activator' | 'children' | 'contentClassName' | 'defaultShow' | 'defaultValue' | 'disabledAutoToggle' | 'onChange' | 'matchActivatorWidth' | 'show'> {
4
+ export interface IressRichSelectProps extends Omit<AutocompleteSearchHookProps, 'query'>, Omit<IressPopoverProps, 'activator' | 'children' | 'contentClassName' | 'defaultShow' | 'defaultValue' | 'disabledAutoToggle' | 'onChange' | 'show'> {
5
5
  /**
6
6
  * Sets the alignment of the dropdown relative to the activator element.
7
7
  * @default bottom-start
@@ -21,6 +21,13 @@ export interface IressRichSelectProps extends Omit<AutocompleteSearchHookProps,
21
21
  * Set to true if the user can select multiple options.
22
22
  */
23
23
  multiSelect?: boolean;
24
+ /**
25
+ * Whether the popover should match the width of the activator element.
26
+ * When true, the dropdown will have the same width as the select input.
27
+ * When false, the dropdown will size based on its content.
28
+ * @default true
29
+ */
30
+ matchActivatorWidth?: boolean;
24
31
  /**
25
32
  * Name of the select. Used to pass data when submitted within a form.
26
33
  */
@@ -65,6 +72,11 @@ export interface IressRichSelectProps extends Omit<AutocompleteSearchHookProps,
65
72
  * Completely customise the rendering of the select options.
66
73
  */
67
74
  renderOptions?: (props: SelectOptionsRenderProps) => ReactNode;
75
+ /**
76
+ * Render a custom footer below the default options display.
77
+ * If using `renderOptions`, this render prop will not be called.
78
+ */
79
+ renderOptionsFooter?: (props: SelectOptionsRenderProps) => ReactNode;
68
80
  /**
69
81
  * Whether its required. Will be passed to the hidden input.
70
82
  */
@@ -1,2 +1,2 @@
1
1
  import { IressSelectMenuItemProps } from './SelectMenu.types';
2
- export declare const IressSelectMenuItem: ({ className, divider, formattedLabel, hiddenOnMobile, label, meta, value, append, canToggle, onClick, onKeyDown, prepend, role, selected, "data-testid": dataTestId, "aria-describedby": ariaDescribedBy, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, id, }: IressSelectMenuItemProps) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const IressSelectMenuItem: ({ className, divider, formattedLabel, formattedMeta, hiddenOnMobile, label, meta, value, append, canToggle, onClick, onKeyDown, prepend, role, selected, "data-testid": dataTestId, "aria-describedby": ariaDescribedBy, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, id, }: IressSelectMenuItemProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,8 @@
1
1
  import { IressRichSelectProps, SelectOptionsRenderProps } from '../RichSelect.types';
2
- interface SelectOptionsProps extends Pick<IressRichSelectProps, 'autoHighlight' | 'minSearchLength' | 'multiSelect' | 'onChange' | 'options' | 'renderOptions' | 'value' | 'initialOptions'>, Omit<SelectOptionsRenderProps, 'close'> {
2
+ interface SelectOptionsProps extends Pick<IressRichSelectProps, 'autoHighlight' | 'minSearchLength' | 'multiSelect' | 'onChange' | 'options' | 'renderOptions' | 'renderOptionsFooter' | 'value' | 'initialOptions'>, Omit<SelectOptionsRenderProps, 'close'> {
3
3
  setShow: (show: boolean) => void;
4
4
  shouldShowInstructions?: boolean;
5
5
  shouldShowNoResults?: boolean;
6
6
  }
7
- export declare const SelectOptions: ({ autoHighlight, debouncedQuery, error, initialOptions: initialOptionsProp, loading, minSearchLength, multiSelect, onChange, options, query, renderOptions, results, setQuery, setShow, setValue, show, value, shouldShowInstructions, shouldShowNoResults, }: SelectOptionsProps) => string | number | boolean | Iterable<import('react').ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
7
+ export declare const SelectOptions: ({ autoHighlight, debouncedQuery, error, initialOptions: initialOptionsProp, loading, minSearchLength, multiSelect, onChange, options, query, renderOptions, renderOptionsFooter, results, setQuery, setShow, setValue, show, value, shouldShowInstructions, shouldShowNoResults, }: SelectOptionsProps) => string | number | boolean | Iterable<import('react').ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
8
8
  export {};
@@ -55,6 +55,7 @@ export interface LabelValueMeta extends LabelValue {
55
55
  }
56
56
  export interface FormattedLabelValueMeta extends LabelValueMeta {
57
57
  formattedLabel?: React.ReactNode;
58
+ formattedMeta?: React.ReactNode;
58
59
  }
59
60
  export interface BreakpointDetail {
60
61
  mediaQuery: string;