@leafygreen-ui/combobox 8.1.2 → 8.1.4
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.
- package/CHANGELOG.md +35 -0
- package/dist/Combobox/Combobox.d.ts +2 -2
- package/dist/Combobox/Combobox.types.d.ts +3 -3
- package/dist/Combobox/Combobox.types.d.ts.map +1 -1
- package/dist/ComboboxGroup/ComboboxGroup.d.ts +1 -1
- package/dist/ComboboxMenu/ComboboxMenu.d.ts +1 -1
- package/dist/ComboboxMenu/ComboboxMenu.d.ts.map +1 -1
- package/dist/ComboboxOption/ComboboxOption.types.d.ts +4 -4
- package/dist/ComboboxOption/ComboboxOption.types.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types/Combobox.types.d.ts +7 -7
- package/dist/types/Combobox.types.d.ts.map +1 -1
- package/dist/utils/ComboboxTestUtils.d.ts +2 -2
- package/dist/utils/ComboboxTestUtils.d.ts.map +1 -1
- package/package.json +17 -17
- package/src/Combobox.stories.tsx +5 -5
- package/src/ComboboxChip/ComboboxChip.stories.tsx +1 -1
- package/src/ComboboxGroup/ComboboxGroup.stories.tsx +1 -1
- package/src/ComboboxMenu/ComboboxMenu.stories.tsx +1 -1
- package/src/ComboboxOption/ComboboxOption.stories.tsx +1 -1
- package/stories.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
# @leafygreen-ui/combobox
|
|
2
2
|
|
|
3
|
+
## 8.1.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [dfd6972c]
|
|
8
|
+
- Updated dependencies [1ec45a7e]
|
|
9
|
+
- @leafygreen-ui/typography@19.0.0
|
|
10
|
+
- @leafygreen-ui/checkbox@13.1.0
|
|
11
|
+
- @leafygreen-ui/input-option@1.1.3
|
|
12
|
+
|
|
13
|
+
## 8.1.3
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- 15185af0: Imports Storybook utilities from `@lg-tools/storybook-utils` (previously imported from `@leafygreen-ui/lib`)
|
|
18
|
+
- 356a53fd: Update TS builds to use `typescript@4.9.5`
|
|
19
|
+
- Updated dependencies [7a0ff1be]
|
|
20
|
+
- Updated dependencies [15185af0]
|
|
21
|
+
- Updated dependencies [356a53fd]
|
|
22
|
+
- Updated dependencies [66df9ab8]
|
|
23
|
+
- Updated dependencies [7a0ff1be]
|
|
24
|
+
- @leafygreen-ui/typography@18.3.0
|
|
25
|
+
- @leafygreen-ui/leafygreen-provider@3.1.12
|
|
26
|
+
- @leafygreen-ui/icon-button@15.0.21
|
|
27
|
+
- @leafygreen-ui/checkbox@13.0.0
|
|
28
|
+
- @leafygreen-ui/popover@11.3.1
|
|
29
|
+
- @leafygreen-ui/chip@1.0.2
|
|
30
|
+
- @leafygreen-ui/icon@12.0.1
|
|
31
|
+
- @leafygreen-ui/lib@13.3.0
|
|
32
|
+
- @leafygreen-ui/emotion@4.0.8
|
|
33
|
+
- @leafygreen-ui/hooks@8.1.3
|
|
34
|
+
- @leafygreen-ui/input-option@1.1.2
|
|
35
|
+
- @leafygreen-ui/palette@4.0.9
|
|
36
|
+
- @leafygreen-ui/tokens@2.5.2
|
|
37
|
+
|
|
3
38
|
## 8.1.2
|
|
4
39
|
|
|
5
40
|
### Patch Changes
|
|
@@ -10,8 +10,8 @@ export declare function Combobox<M extends boolean>({ children, label, descripti
|
|
|
10
10
|
export declare namespace Combobox {
|
|
11
11
|
var propTypes: {
|
|
12
12
|
multiselect: PropTypes.Requireable<boolean>;
|
|
13
|
-
value: PropTypes.Requireable<string | (string | null | undefined)[]
|
|
14
|
-
initialValue: PropTypes.Requireable<string | (string | null | undefined)[]
|
|
13
|
+
value: PropTypes.Requireable<NonNullable<string | (string | null | undefined)[] | null | undefined>>;
|
|
14
|
+
initialValue: PropTypes.Requireable<NonNullable<string | (string | null | undefined)[] | null | undefined>>;
|
|
15
15
|
overflow: PropTypes.Requireable<"expand-y" | "scroll-x" | "expand-x">;
|
|
16
16
|
darkMode: PropTypes.Requireable<boolean>;
|
|
17
17
|
label: PropTypes.Requireable<string>;
|
|
@@ -41,8 +41,8 @@ export interface ComboboxMultiselectProps<M extends boolean> {
|
|
|
41
41
|
*/
|
|
42
42
|
overflow?: M extends true ? Overflow : undefined;
|
|
43
43
|
}
|
|
44
|
-
|
|
45
|
-
export
|
|
44
|
+
type PartialChipProps = Pick<ChipProps, 'chipTruncationLocation' | 'chipCharacterLimit' | 'popoverZIndex'>;
|
|
45
|
+
export type BaseComboboxProps = Omit<HTMLElementProps<'div'>, 'onChange'> & PortalControlProps & PartialChipProps & {
|
|
46
46
|
/**
|
|
47
47
|
* Defines the Combobox Options by passing children. Must be `ComboboxOption` or `ComboboxGroup`
|
|
48
48
|
*/
|
|
@@ -128,6 +128,6 @@ export declare type BaseComboboxProps = Omit<HTMLElementProps<'div'>, 'onChange'
|
|
|
128
128
|
*/
|
|
129
129
|
inputValue?: string;
|
|
130
130
|
};
|
|
131
|
-
export
|
|
131
|
+
export type ComboboxProps<M extends boolean> = Either<BaseComboboxProps & ComboboxMultiselectProps<M>, 'label' | 'aria-label'>;
|
|
132
132
|
export {};
|
|
133
133
|
//# sourceMappingURL=Combobox.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.types.d.ts","sourceRoot":"","sources":["../../src/Combobox/Combobox.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,eAAe,EACf,KAAK,EACN,MAAM,UAAU,CAAC;AAElB;;GAEG;AAEH,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,OAAO;IACzD;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAE3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,CAAC,SAAS,IAAI,GAAG,QAAQ,GAAG,SAAS,CAAC;CAClD;AAED,
|
|
1
|
+
{"version":3,"file":"Combobox.types.d.ts","sourceRoot":"","sources":["../../src/Combobox/Combobox.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,eAAe,EACf,KAAK,EACN,MAAM,UAAU,CAAC;AAElB;;GAEG;AAEH,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,OAAO;IACzD;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAE3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,CAAC,SAAS,IAAI,GAAG,QAAQ,GAAG,SAAS,CAAC;CAClD;AAED,KAAK,gBAAgB,GAAG,IAAI,CAC1B,SAAS,EACT,wBAAwB,GAAG,oBAAoB,GAAG,eAAe,CAClE,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GACvE,kBAAkB,GAClB,gBAAgB,GAAG;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;IAEvE;;;OAGG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEhC;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IAE3D;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEJ,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,OAAO,IAAI,MAAM,CACnD,iBAAiB,GAAG,wBAAwB,CAAC,CAAC,CAAC,EAC/C,OAAO,GAAG,YAAY,CACvB,CAAC"}
|
|
@@ -10,7 +10,7 @@ export declare namespace ComboboxGroup {
|
|
|
10
10
|
var displayName: string;
|
|
11
11
|
var propTypes: {
|
|
12
12
|
className: PropTypes.Requireable<string>;
|
|
13
|
-
children: PropTypes.Validator<
|
|
13
|
+
children: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
|
|
14
14
|
label: PropTypes.Validator<string>;
|
|
15
15
|
};
|
|
16
16
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { PortalControlProps } from '@leafygreen-ui/popover';
|
|
3
3
|
import { ComboboxProps } from '../Combobox';
|
|
4
|
-
|
|
4
|
+
type ComboboxMenuProps = {
|
|
5
5
|
children?: React.ReactNode;
|
|
6
6
|
refEl: React.RefObject<HTMLDivElement>;
|
|
7
7
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxMenu.d.ts","sourceRoot":"","sources":["../../src/ComboboxMenu/ComboboxMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAQnD,OAAgB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAGrE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAe5C,
|
|
1
|
+
{"version":3,"file":"ComboboxMenu.d.ts","sourceRoot":"","sources":["../../src/ComboboxMenu/ComboboxMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAQnD,OAAgB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAGrE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAe5C,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,kBAAkB,GACpB,IAAI,CACF,aAAa,CAAC,GAAG,CAAC,EAChB,sBAAsB,GACtB,oBAAoB,GACpB,oBAAoB,GACpB,eAAe,CAClB,CAAC;AAEJ,eAAO,MAAM,YAAY,0FA2HxB,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { Either } from '@leafygreen-ui/lib';
|
|
|
3
3
|
/**
|
|
4
4
|
* Combobox Option Props
|
|
5
5
|
*/
|
|
6
|
-
|
|
6
|
+
type ListItemProps = Omit<ComponentPropsWithoutRef<'li'>, 'onClick' | 'value'>;
|
|
7
7
|
interface SharedComboboxOptionProps {
|
|
8
8
|
/**
|
|
9
9
|
* The internal value of the option. Used as the identifier in Combobox `initialValue`, value and filteredOptions.
|
|
@@ -37,9 +37,9 @@ interface SharedComboboxOptionProps {
|
|
|
37
37
|
*/
|
|
38
38
|
onClick?: (event: React.SyntheticEvent<HTMLLIElement, Event>, value: string) => void;
|
|
39
39
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
export
|
|
40
|
+
type RequiredComboboxOptionProps = Required<Pick<SharedComboboxOptionProps, 'value' | 'displayName'>>;
|
|
41
|
+
type BaseComboboxOptionProps = ListItemProps & SharedComboboxOptionProps;
|
|
42
|
+
export type ComboboxOptionProps = Either<BaseComboboxOptionProps, 'value' | 'displayName'>;
|
|
43
43
|
export interface OptionObject extends Pick<SharedComboboxOptionProps, 'description' | 'onClick'>, RequiredComboboxOptionProps {
|
|
44
44
|
isDisabled: boolean;
|
|
45
45
|
hasGlyph?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxOption.types.d.ts","sourceRoot":"","sources":["../../src/ComboboxOption/ComboboxOption.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C;;GAEG;AAEH,
|
|
1
|
+
{"version":3,"file":"ComboboxOption.types.d.ts","sourceRoot":"","sources":["../../src/ComboboxOption/ComboboxOption.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C;;GAEG;AAEH,KAAK,aAAa,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC;AAE/E,UAAU,yBAAyB;IACjC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,CACR,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,EACjD,KAAK,EAAE,MAAM,KACV,IAAI,CAAC;CACX;AAED,KAAK,2BAA2B,GAAG,QAAQ,CACzC,IAAI,CAAC,yBAAyB,EAAE,OAAO,GAAG,aAAa,CAAC,CACzD,CAAC;AAEF,KAAK,uBAAuB,GAAG,aAAa,GAAG,yBAAyB,CAAC;AAEzE,MAAM,MAAM,mBAAmB,GAAG,MAAM,CACtC,uBAAuB,EACvB,OAAO,GAAG,aAAa,CACxB,CAAC;AAEF,MAAM,WAAW,YACf,SAAQ,IAAI,CAAC,yBAAyB,EAAE,aAAa,GAAG,SAAS,CAAC,EAChE,2BAA2B;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,2BACf,SAAQ,aAAa,EACnB,IAAI,CAAC,yBAAyB,EAAE,OAAO,GAAG,aAAa,CAAC,EACxD,2BAA2B;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACf"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{createContext as n,useContext as r,useEffect as t,useMemo as a,useCallback as o,useRef as i,useState as l}from"react";import c from"lodash/clone";import s from"lodash/debounce";import u from"lodash/isArray";import d from"lodash/isEqual";import p from"lodash/isNull";import f from"lodash/isString";import h from"lodash/isUndefined";import g from"prop-types";import{css as m,cx as b,keyframes as v}from"@leafygreen-ui/emotion";import{useForwardedRef as y,useIdAllocator as x,useAvailableSpace as k,useDynamicRefs as w,usePrevious as C,useAutoScroll as E,useBackdropClick as L}from"@leafygreen-ui/hooks";import S,{isComponentGlyph as N}from"@leafygreen-ui/icon";import O from"@leafygreen-ui/icon-button";import D,{useDarkMode as M}from"@leafygreen-ui/leafygreen-provider";import{createUniqueClassName as j,keyMap as I,Theme as z,isComponentType as T,consoleOnce as P}from"@leafygreen-ui/lib";import{Error as A,Label as F,Description as W}from"@leafygreen-ui/typography";import{chipTextClassName as X,TruncationLocation as R,Chip as G,BaseFontSize as H,Variant as V}from"@leafygreen-ui/chip";import{typeScales as Z,spacing as K,fontWeights as Y,fontFamilies as q,transitionDuration as B,focusRing as U}from"@leafygreen-ui/tokens";import{palette as $}from"@leafygreen-ui/palette";import J from"@leafygreen-ui/popover";import{transparentize as Q}from"polished";import{leftGlyphClassName as _,InputOption as ee,InputOptionContent as ne}from"@leafygreen-ui/input-option";import re from"lodash/kebabCase";import te from"lodash/escapeRegExp";import ae from"@leafygreen-ui/checkbox";function oe(e,n){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n&&(t=t.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),r.push.apply(r,t)}return r}function ie(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?oe(Object(r),!0).forEach((function(n){ce(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oe(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}function le(e){return le="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},le(e)}function ce(e,n,r){return(n=function(e){var n=function(e,n){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var t=r.call(e,n||"default");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==typeof n?n:String(n)}(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function se(){return se=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},se.apply(this,arguments)}function ue(e,n){if(null==e)return{};var r,t,a=function(e,n){if(null==e)return{};var r,t,a={},o=Object.keys(e);for(t=0;t<o.length;t++)r=o[t],n.indexOf(r)>=0||(a[r]=e[r]);return a}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(t=0;t<o.length;t++)r=o[t],n.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function de(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function pe(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var t,a,o,i,l=[],c=!0,s=!1;try{if(o=(r=r.call(e)).next,0===n){if(Object(r)!==r)return;c=!1}else for(;!(c=(t=o.call(r)).done)&&(l.push(t.value),l.length!==n);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(e,n)||he(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fe(e){return function(e){if(Array.isArray(e))return ge(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||he(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function he(e,n){if(e){if("string"==typeof e)return ge(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ge(e,n):void 0}}function ge(e,n){(null==n||n>e.length)&&(n=e.length);for(var r=0,t=new Array(n);r<n;r++)t[r]=e[r];return t}var me="Input",be="ClearButton",ve="FirstChip",ye="LastChip",xe="MiddleChip",ke="Combobox",we="Menu",Ce={XSmall:"xsmall",Small:"small",Default:"default",Large:"large"},Ee={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},Le={none:"none",error:"error"},Se={unset:"unset",error:"error",loading:"loading"};var Ne,Oe,De,Me,je,Ie,ze,Te,Pe,Ae,Fe,We,Xe,Re,Ge,He=n({multiselect:!1,size:Ce.Default,withIcons:!1,disabled:!1,isOpen:!1,state:Le.none,searchState:Se.unset,overflow:Ee.expandY}),Ve=j("combobox-chip"),Ze=(ce(Ne={},Ce.XSmall,16),ce(Ne,Ce.Small,Z.body1.lineHeight),ce(Ne,Ce.Default,Z.body1.lineHeight),ce(Ne,Ce.Large,Z.body2.lineHeight),Ne),Ke=(ce(Oe={},Ce.XSmall,Z.body1.fontSize),ce(Oe,Ce.Small,Z.body1.fontSize),ce(Oe,Ce.Default,Z.body1.fontSize),ce(Oe,Ce.Large,Z.body2.fontSize),Oe),Ye=(ce(De={},Ce.XSmall,1),ce(De,Ce.Small,0),ce(De,Ce.Default,2),ce(De,Ce.Large,4),De),qe=(ce(Te={},Ce.XSmall,m(Me||(Me=de(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Ke[Ce.XSmall],Ze[Ce.XSmall],X,Ye[Ce.XSmall])),ce(Te,Ce.Small,m(je||(je=de(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Ke[Ce.Small],Ze[Ce.Small],X,Ye[Ce.Small])),ce(Te,Ce.Default,m(Ie||(Ie=de(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Ke[Ce.Default],Ze[Ce.Default],X,Ye[Ce.Default])),ce(Te,Ce.Large,m(ze||(ze=de(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-inline-end: 10px;\n padding-block: ","px;\n }\n "])),Ke[Ce.Large],Ze[Ce.Large],X,Ye[Ce.Large])),Te),Be=e.forwardRef((function(n,a){var o,i=n.displayName,l=n.isFocused,c=n.onRemove,s=n.onFocus,u=r(He),d=u.size,p=u.disabled,f=u.overflow,h=u.chipTruncationLocation,g=void 0===h?R.End:h,m=u.chipCharacterLimit,v=void 0===m?12:m,x=u.popoverZIndex,k=f===Ee.scrollX?R.None:g,w=y(a,null),C=null===(o=w.current)||void 0===o?void 0:o.querySelector("button");t((function(){l&&!p&&(null==C||C.focus())}),[p,C,l]);return e.createElement(G,{label:i,className:b(Ve,qe[d]),role:"option","aria-selected":l,"data-testid":"lg-combobox-chip",onClick:function(e){null!=C&&C.contains(e.target)||s()},onKeyDown:function(e){p||e.key!==I.Delete&&e.key!==I.Backspace&&e.key!==I.Enter&&e.key!==I.Space||c()},onDismiss:function(){p||c()},baseFontSize:H.Body1,chipCharacterLimit:v,chipTruncationLocation:k,popoverZIndex:x,variant:V.Gray,ref:w,disabled:p,tabIndex:-1})}));Be.displayName="ComboboxChip";var Ue,$e,Je,Qe,_e,en,nn,rn,tn,an,on,ln,cn,sn,un,dn,pn,fn=(ce(Fe={},z.Light,m(Pe||(Pe=de(["\n padding-top: ","px;\n "])),K[2])),ce(Fe,z.Dark,m(Ae||(Ae=de(["\n padding-top: ","px;\n "])),K[2])),Fe),hn=m(We||(We=de(["\n cursor: default;\n width: 100%;\n padding: 0 12px 2px;\n outline: none;\n overflow-wrap: anywhere;\n font-size: 12px;\n line-height: 16px;\n font-weight: ",";\n text-transform: uppercase;\n letter-spacing: 0.4px;\n"])),Y.bold),gn=(ce(Ge={},z.Light,m(Xe||(Xe=de(["\n color: ",";\n "])),$.gray.dark1)),ce(Ge,z.Dark,m(Re||(Re=de(["\n color: ",";\n "])),$.gray.light1)),Ge);function mn(n){var r=n.label,t=n.className,a=n.children,o=M().theme,i=x({prefix:"combobox-group"});return e.Children.count(a)>0?e.createElement("div",{className:b(fn[o],t)},e.createElement("div",{className:b(hn,gn[o]),id:i},r),e.createElement("div",{role:"group","aria-labelledby":i},a)):e.createElement(e.Fragment,null)}function bn(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}bn.displayName="ComboboxGroup",bn.propTypes={className:g.string,children:g.node.isRequired,label:g.string.isRequired};var vn,yn=(ce(Ue={},Ce.XSmall,{x:12,y:8}),ce(Ue,Ce.Small,{x:12,y:8}),ce(Ue,Ce.Default,{x:12,y:8}),ce(Ue,Ce.Large,{x:12,y:8}),Ue),xn=function(e){return Ze[e]+2*yn[e].y},kn=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return m($e||($e=de(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},wn=(ce(_e={},z.Light,m(Je||(Je=de(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),Q(.85,$.black),$.gray.light2)),ce(_e,z.Dark,m(Qe||(Qe=de(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),Q(.85,$.black),$.gray.dark2)),_e),Cn=m(en||(en=de(["\n position: relative;\n width: 100%;\n margin: 0;\n padding: ","px 0;\n font-family: ",";\n border-radius: inherit;\n overflow-y: auto;\n scroll-behavior: smooth;\n"])),K[2],q.default),En=(ce(tn={},z.Light,m(nn||(nn=de(["\n color: ",";\n background-color: ",";\n "])),$.black,$.white)),ce(tn,z.Dark,m(rn||(rn=de(["\n color: ",";\n background-color: ",";\n "])),$.gray.light1,$.gray.dark3)),tn),Ln=m(an||(an=de(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),Sn=m(on||(on=de(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),Nn=(ce(sn={},z.Light,m(ln||(ln=de(["\n color: ",";\n "])),$.gray.dark3)),ce(sn,z.Dark,m(cn||(cn=de(["\n color: ",";\n "])),$.gray.light3)),sn),On=function(e){return m(un||(un=de(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px ","px;\n"])),Ke[e],Ze[e],yn[e].y,yn[e].x)},Dn=v(dn||(dn=de(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Mn=m(pn||(pn=de(["\n animation: "," 1.5s linear infinite;\n"])),Dn),jn=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],In=e.forwardRef((function(n,t){var o=n.children,i=n.id,l=n.refEl,c=n.labelId,s=n.menuWidth,u=n.searchLoadingMessage,d=n.searchErrorMessage,p=n.searchEmptyMessage,f=ue(n,jn),g=M(),v=g.darkMode,x=g.theme,w=r(He),C=w.disabled,E=w.size,L=w.isOpen,N=w.searchState,O=y(t,null),D=k(l),j=h(D)?"unset":"".concat(Math.min(D,256),"px"),I=a((function(){var n=b(Sn,Nn[x],On(E)),r=b(Sn,On(E));switch(N){case"loading":return e.createElement("span",{className:n},e.createElement(S,{glyph:"Refresh",color:v?$.blue.light1:$.blue.base,className:Mn}),u);case"error":return e.createElement(A,{className:r},e.createElement(S,{glyph:"Warning",color:v?$.red.light1:$.red.base}),e.createElement("span",null,d));default:return o&&"object"===le(o)&&"length"in o&&o.length>0?e.createElement("ul",{className:Ln},o):e.createElement("span",{className:n},p)}}),[x,E,N,v,u,d,o,p]);return e.createElement(J,se({active:L&&!C,spacing:4,align:"bottom",justify:"middle",refEl:l,adjustOnMutation:!0,className:b(kn(s),wn[x])},f),e.createElement("div",{ref:O,id:i,role:"listbox","aria-labelledby":c,"aria-expanded":L,className:b(Cn,En[x],m(vn||(vn=de(["\n max-height: ",";\n "])),j)),onMouseDownCapture:function(e){return e.preventDefault()}},I))}));In.displayName="ComboboxMenu";var zn,Tn,Pn,An,Fn,Wn,Xn,Rn,Gn,Hn,Vn,Zn,Kn,Yn,qn,Bn,Un,$n,Jn,Qn,_n,er,nr,rr,tr,ar,or=function(e){var n=e.scrollHeight;return e.scrollTop<n-e.clientHeight},ir=function(e){var n,r=e.value,t=e.displayName;return{value:null!=r?r:re(t),displayName:null!==(n=null!=t?t:r)&&void 0!==n?n:""}},lr=function n(r){return e.Children.toArray(r).reduce((function(e,r){if(T(r,"ComboboxOption")){var t=ir(r.props),a=t.value,o=t.displayName,i=r.props,l=i.glyph,c=i.disabled;return[].concat(fe(e),[{value:a,displayName:o,isDisabled:!!c,hasGlyph:!!l}])}if(T(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(fe(e),fe(n(s)))}}),[])},cr=function(e,n){if(e)return n.find((function(n){return n.value===e}))},sr=function(e,n){var r,t;return e?null!==(r=null===(t=cr(e,n))||void 0===t?void 0:t.displayName)&&void 0!==r?r:e:""},ur=function(e){return m(zn||(zn=de(["\n font-size: ","px;\n line-height: ","px;\n min-height: ","px;\n padding: ","px ","px;\n gap: ","px;\n\n &:before {\n max-height: ","px;\n }\n"])),Ke[e],Ze[e],xn(e),yn[e].y,yn[e].x,K[1],xn(e))},dr=(ce(Wn={},Ce.XSmall,m(Tn||(Tn=de(["\n min-width: ","px;\n "])),K[3])),ce(Wn,Ce.Small,m(Pn||(Pn=de(["\n min-width: ","px;\n "])),K[3])),ce(Wn,Ce.Default,m(An||(An=de(["\n min-width: ","px;\n "])),K[3])),ce(Wn,Ce.Large,m(Fn||(Fn=de(["\n min-width: ","px;\n "])),K[4])),Wn),pr=m(Xn||(Xn=de(["\n pointer-events: none;\n gap: 0;\n\n label {\n gap: 0;\n align-items: center;\n }\n"])));m(Rn||(Rn=de(["\n pointer-events: none;\n"])));var fr=function(e){return m(Gn||(Gn=de(["\n font-weight: ",";\n"])),e?Y.bold:Y.regular)},hr=(ce(Zn={},z.Light,m(Hn||(Hn=de(["\n color: ",";\n "])),$.gray.dark1)),ce(Zn,z.Dark,m(Vn||(Vn=de(["\n color: ",";\n "])),$.gray.base)),Zn),gr=(ce(qn={},z.Light,m(Kn||(Kn=de(["\n color: ",";\n "])),$.blue.dark1)),ce(qn,z.Dark,m(Yn||(Yn=de(["\n color: ",";\n "])),$.blue.light3)),qn),mr=(ce($n={},z.Light,m(Bn||(Bn=de(["\n color: ",";\n "])),$.gray.light1)),ce($n,z.Dark,m(Un||(Un=de(["\n color: ",";\n "])),$.gray.dark1)),$n),br=(ce(_n={},z.Light,m(Jn||(Jn=de(["\n color: ",";\n "])),$.blue.base)),ce(_n,z.Dark,m(Qn||(Qn=de(["\n color: ",";\n "])),$.blue.light1)),_n),vr=(ce(rr={},z.Light,m(er||(er=de(["\n color: ",";\n "])),$.gray.light1)),ce(rr,z.Dark,m(nr||(nr=de(["\n color: ",";\n "])),$.gray.dark1)),rr),yr=m(tr||(tr=de(["\n ."," {\n align-self: baseline;\n }\n"])),_),xr=m(ar||(ar=de(["\n ."," {\n height: 28px;\n }\n"])),_),kr=["glyph","isSelected","displayName","isFocused","setSelected","className","description","value","onClick","disabled"],wr=e.forwardRef((function(n,t){var i,l=n.glyph,c=n.isSelected,s=n.displayName,u=n.isFocused,d=n.setSelected,p=n.className,f=n.description,h=n.value,g=n.onClick,m=n.disabled,v=void 0!==m&&m,k=ue(n,kr),w=M(),C=w.darkMode,E=w.theme,L=r(He),O=L.multiselect,D=L.size,j=L.withIcons,I=L.inputValue,z=y(t,null),T=x({prefix:"combobox-option-text"}),P=o((function(e){e.stopPropagation(),v||(d(),null==g||g(e,h))}),[v,g,d,h]),A=a((function(){return function(n){var r,t=n.withIcons,a=n.isSelected,o=n.glyph,i=n.optionTextId,l=n.disabled,c=n.darkMode,s=n.size,u=n.multiselect,d=n.theme,p=n.isFocused;o&&!N(o)&&console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",o);var f=o&&N(o)?e.cloneElement(o,ie(ie({},o.props),{},{className:b(hr[d],(r={},ce(r,gr[d],p),ce(r,mr[d],l),r),o.props.className)})):e.createElement(e.Fragment,null),h=e.createElement(ae,{"aria-labelledby":i,checked:a,tabIndex:-1,disabled:l,darkMode:c,className:pr}),g=e.createElement(S,{glyph:"Checkmark",className:b(dr[s],br[d],ce({},vr[d],l))});return{leftGlyph:u?t?f:h:t?f:a?g:null,rightGlyph:u?t&&h:t&&a&&g}}({withIcons:j,isSelected:c,glyph:l,theme:E,darkMode:C,size:D,disabled:v,multiselect:O,optionTextId:T,isFocused:u})}),[C,v,l,c,O,T,D,E,j,u]),F=A.leftGlyph,W=A.rightGlyph,X=O&&!j;return e.createElement(ee,se({},k,{as:"li",ref:z,highlighted:u,disabled:v,"aria-label":s,darkMode:C,className:b(ur(D),(i={},ce(i,yr,X),ce(i,xr,X&&D===Ce.Large),i),p),onClick:P,onKeyDown:P}),e.createElement(ne,{leftGlyph:F,rightGlyph:W,description:f},e.createElement("span",{id:T,className:fr(c)},function(n,r,t){if(r&&t){var a=te(r),o=new RegExp(a,"gi"),i=n.matchAll(o);if(i){for(var l=n.split(""),c=0,s=Array.from(i);c<s.length;c++){var u,d=s[c],p=null!==(u=d.index)&&void 0!==u?u:-1,f=d[0],h=f.length,g=p+f+h,m=new Array(h).fill("");m[0]=e.createElement(t,{key:g},f),l.splice.apply(l,[p,h].concat(fe(m)))}return e.createElement(e.Fragment,null,l)}return e.createElement(e.Fragment,null,n)}return e.createElement(e.Fragment,null,n)}(s,I,"strong"))))}));function Cr(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}wr.displayName="ComboboxOption",Cr.displayName="ComboboxOption",Cr.propTypes={displayName:g.string,value:g.string,glyph:g.node,disabled:g.bool,className:g.string,description:g.string,onClick:g.func};var Er,Lr,Sr,Nr,Or,Dr,Mr,jr,Ir,zr,Tr,Pr,Ar,Fr,Wr,Xr,Rr,Gr,Hr,Vr,Zr,Kr,Yr,qr,Br,Ur,$r,Jr,Qr,_r,et,nt,rt,tt,at,ot,it,lt,ct,st,ut,dt,pt,ft,ht,gt,mt,bt,vt,yt,xt=function(e){return!h(e)&&!p(e)&&(f(e)||u(e)&&e.length>0)},kt=function(e){return Ze[e]+2*Ye[e]},wt=(ce(Er={},Ce.XSmall,22),ce(Er,Ce.Small,28),ce(Er,Ce.Default,36),ce(Er,Ce.Large,48),Er),Ct=function(e){return(wt[e]-kt(e)-2)/2},Et=(ce(Lr={},Ce.XSmall,{y:Ct(Ce.XSmall),xLeftWithChip:1,xLeftWithoutChip:10,xRight:4}),ce(Lr,Ce.Small,{y:Ct(Ce.Small),xLeftWithChip:4,xLeftWithoutChip:10,xRight:8}),ce(Lr,Ce.Default,{y:Ct(Ce.Default),xLeftWithChip:6,xLeftWithoutChip:12,xRight:12}),ce(Lr,Ce.Large,{y:Ct(Ce.Large),xLeftWithChip:K[2]-1,xLeftWithoutChip:K[2]-1,xRight:K[2]-1}),Lr),Lt=K[3],St=function(e){return m(Sr||(Sr=de(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),q.default,Ke[e]+2*Et[e].xLeftWithChip+Lt+2)},Nt=m(Nr||(Nr=de(["\n display: flex;\n align-items: center;\n gap: ","px;\n cursor: text;\n transition: ","ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: 100%;\n max-width: 100%;\n border-radius: 6px;\n position: relative;\n overflow: hidden;\n\n // Overflow shadow\n ::after {\n content: '';\n position: absolute;\n width: 100%;\n height: 20px;\n bottom: -21px;\n left: 50%;\n translate: -50% 0%;\n border-radius: 20%;\n box-shadow: 0 0 0 0 rgb(255 255 255 / 0%);\n transition: ","ms linear;\n transition-property: box-shadow;\n }\n"])),K[2],B.default,B.default),Ot=(ce(Mr={},z.Light,m(Or||(Or=de(["\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.dark3,$.white,$.gray.base)),ce(Mr,z.Dark,m(Dr||(Dr=de(["\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.light2,$.gray.dark4,$.gray.base)),Mr),Dt=function(e,n){return m(jr||(jr=de(["\n padding-top: ","px;\n padding-bottom: ","px;\n padding-left: ",";\n padding-right: ","px;\n"])),Et[e].y,Et[e].y,"".concat(n?Et[e].xLeftWithChip:Et[e].xLeftWithoutChip,"px"),Et[e].xRight)},Mt=(ce(Tr={},z.Light,m(Ir||(Ir=de(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.dark1,$.gray.light2,$.gray.light1)),ce(Tr,z.Dark,m(zr||(zr=de(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.dark1,$.gray.dark3,$.gray.dark2)),Tr),jt=(ce(Fr={},z.Light,m(Pr||(Pr=de(["\n border-color: ",";\n "])),$.red.base)),ce(Fr,z.Dark,m(Ar||(Ar=de(["\n border-color: ",";\n "])),$.red.light1)),Fr),It=(ce(Rr={},z.Light,m(Wr||(Wr=de(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),U[z.Light].input)),ce(Rr,z.Dark,m(Xr||(Xr=de(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),U[z.Dark].input)),Rr),zt=m(Gr||(Gr=de(["\n display: flex;\n align-items: center;\n"]))),Tt=(ce(Yr={},Ce.XSmall,m(Hr||(Hr=de(["\n gap: ","px;\n "])),K[1])),ce(Yr,Ce.Small,m(Vr||(Vr=de(["\n gap: ","px;\n "])),K[2])),ce(Yr,Ce.Default,m(Zr||(Zr=de(["\n gap: ","px;\n "])),K[2])),ce(Yr,Ce.Large,m(Kr||(Kr=de(["\n gap: ","px;\n "])),K[2])),Yr),Pt=function(e){var n=e.overflow,r=e.size,t=m(qr||(qr=de(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case Ee.scrollX:return m(Br||(Br=de(["\n ","\n display: block;\n height: ","px;\n white-space: nowrap;\n overflow-x: scroll;\n scroll-behavior: smooth;\n scrollbar-width: none;\n line-height: 1;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n & > ."," {\n margin-inline: 2px;\n\n &:first-child {\n margin-inline-start: 0;\n }\n\n &:last-child {\n margin-inline-end: 0;\n }\n }\n "])),t,kt(r),Ve);case Ee.expandY:return m(Ur||(Ur=de(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: ","px;\n overflow-x: hidden;\n min-height: ","px;\n max-height: calc((","px) + (","px * 2));\n "])),t,4,kt(r),3*kt(r),4)}},At=m($r||($r=de(["\n font-family: ",";\n width: 100%;\n border: none;\n cursor: inherit;\n background-color: inherit;\n color: inherit;\n box-sizing: content-box;\n padding: 0;\n margin: 0;\n text-overflow: ellipsis;\n vertical-align: top;\n\n // Only add padding if there are chips\n &:not(:first-child) {\n padding-left: ","px;\n }\n\n &:placeholder-shown {\n min-width: 100%;\n }\n &:focus {\n outline: none;\n }\n"])),q.default,K[1]),Ft=(ce(_r={},z.Light,m(Jr||(Jr=de(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.dark1)),ce(_r,z.Dark,m(Qr||(Qr=de(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.light1)),_r),Wt=(ce(rt={},z.Light,m(et||(et=de(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.dark1)),ce(rt,z.Dark,m(nt||(nt=de(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.dark1)),rt),Xt=function(e){return m(tt||(tt=de(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n"])),kt(e),Ke[e],Ze[e],Ke[e])},Rt=function(e){return m(at||(at=de(["\n /*\n * Immediate transition in, slow transition out. \n * '-in' transition is handled by `scroll-behavior` \n */\n transition: width ease-in-out ",";\n"],["\n /*\n * Immediate transition in, slow transition out. \n * '-in' transition is handled by \\`scroll-behavior\\` \n */\n transition: width ease-in-out ",";\n"])),e?"0s":"100ms")},Gt=function(e,n){var r,t=null!==(r=null==n?void 0:n.length)&&void 0!==r?r:0;return m(ot||(ot=de(["\n width: ","px;\n max-width: 100%;\n "])),t*Ke[e])},Ht=m(it||(it=de(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n margin-inline: -6px;\n"])),Lt/2),Vt=m(lt||(lt=de(["\n height: ","px;\n width: ","px;\n"])),Lt,Lt),Zt=(ce(ut={},z.Light,m(ct||(ct=de(["\n color: ",";\n "])),$.red.base)),ce(ut,z.Dark,m(st||(st=de(["\n color: ",";\n "])),$.red.light1)),ut),Kt=function(e){return m(dt||(dt=de(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n"])),Ke[e],Ze[e],Et[e].y)},Yt=m(pt||(pt=de(["\n margin-bottom: ","px;\n display: flex;\n flex-direction: column;\n"])),K[1]),qt=m(ft||(ft=de(["\n font-size: ","px;\n line-height: ","px;\n"])),Z.large.fontSize,Z.large.lineHeight),Bt=(ce(mt={},z.Light,m(ht||(ht=de(["\n ::after {\n box-shadow: 0px 0px 7px 5px ",";\n }\n "])),Q(.85,$.black))),ce(mt,z.Dark,m(gt||(gt=de(["\n ::after {\n width: 95%;\n box-shadow: 0px -7px 12px 5px rgb(0 0 0 / 50%);\n }\n "])))),mt),Ut=(ce(bt={},z.Light,$.red.base),ce(bt,z.Dark,$.red.light1),bt),$t=(ce(vt={},z.Light,$.gray.dark2),ce(vt,z.Dark,$.gray.light1),vt),Jt=(ce(yt={},z.Light,$.gray.base),ce(yt,z.Dark,$.gray.dark1),yt),Qt=["children","label","description","placeholder","aria-label","disabled","size","darkMode","state","errorMessage","searchState","searchEmptyMessage","searchErrorMessage","searchLoadingMessage","filteredOptions","onFilter","clearable","onClear","overflow","multiselect","initialValue","inputValue","onInputChange","onChange","value","chipTruncationLocation","chipCharacterLimit","className","usePortal","portalClassName","portalContainer","scrollContainer","popoverZIndex"],_t=["className","glyph","disabled"];function ea(n){var r,g,m,v=n.children,y=n.label,k=n.description,N=n.placeholder,j=void 0===N?"Select":N,z=n["aria-label"],A=n.disabled,X=void 0!==A&&A,R=n.size,G=void 0===R?Ce.Default:R,H=n.darkMode,V=n.state,Z=void 0===V?"none":V,K=n.errorMessage,Y=n.searchState,q=void 0===Y?"unset":Y,B=n.searchEmptyMessage,U=void 0===B?"No results found":B,$=n.searchErrorMessage,J=void 0===$?"Could not get results!":$,Q=n.searchLoadingMessage,_=void 0===Q?"Loading results...":Q,ee=n.filteredOptions,ne=n.onFilter,re=n.clearable,te=void 0===re||re,ae=n.onClear,oe=n.overflow,de=void 0===oe?Ee.expandY:oe,fe=n.multiselect,he=void 0!==fe&&fe,ge=n.initialValue,Se=n.inputValue,Ne=n.onInputChange,Oe=n.onChange,De=n.value,Me=n.chipTruncationLocation,je=n.chipCharacterLimit,Ie=void 0===je?12:je,ze=n.className,Te=n.usePortal,Pe=void 0===Te||Te,Ae=n.portalClassName,Fe=n.portalContainer,We=n.scrollContainer,Xe=n.popoverZIndex,Re=ue(n,Qt),Ge=M(H),Ve=Ge.darkMode,Ze=Ge.theme,Ke=w({prefix:"option"}),Ye=w({prefix:"chip"}),qe=x({prefix:"combobox-input"}),Ue=x({prefix:"combobox-label"}),$e=x({prefix:"combobox-menu"}),Je=i(null),Qe=i(null),_e=i(null),en=i(null),nn=i(null),rn=pe(l(!1),2),tn=rn[0],an=rn[1],on=C(tn),ln=pe(l(null),2),cn=ln[0],sn=ln[1],un=pe(l(null),2),dn=un[0],pn=un[1],fn=C(dn),hn=pe(l(null!=Se?Se:""),2),gn=hn[0],bn=hn[1];t((function(){h(Se)||bn(Se)}),[Se]);var vn=function(e){bn(e)},yn=C(gn),xn=pe(l(null),2),kn=xn[0],wn=xn[1],Cn=pe(l(!1),2),En=Cn[0],Ln=Cn[1],Sn=he&&u(dn)&&dn.length>0?void 0:j,Nn=function(){return an(!1)},On=function(){return an(!0)},Dn=a((function(){return lr(v)}),[v]),Mn=o((function(e){return!he||"string"!=typeof e&&"number"!=typeof e?!he&&u(e)&&P.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):P.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(le(e),' value: "').concat(e,'"')),he&&u(e)}),[he]),jn=o((function(e){!X&&en&&en.current&&(en.current.focus(),h(e)||en.current.setSelectionRange(e,e))}),[X]),zn=o((function(e){if(Mn(dn)){var n=c(dn),r=Oe,t={diffType:"delete",value:null!=e?e:dn};p(e)?n.length=0:dn.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),t.diffType="insert",vn("")),pn(n),null==r||r(n,t)}else{var a=e,o=Oe;pn(a),null==o||o(a)}}),[Mn,Oe,dn]),Tn=o((function(e){var n,r,t,a;return function(e,n){return Array.isArray(n)?n.includes(e):e===n}((r=Dn,(n=e)?null!==(t=null===(a=r.find((function(e){return e.displayName===n})))||void 0===a?void 0:a.value)&&void 0!==t?t:n:""),dn)}),[Dn,dn]),Pn=o((function(e){var n="string"==typeof e?e:e.value;return ee&&ee.length>0?ee.includes(n):!!Tn(gn)||("string"==typeof e?sr(n,Dn):e.displayName).toLowerCase().includes(gn.toLowerCase())}),[ee,Tn,gn,Dn]),An=a((function(){return Dn.filter(Pn)}),[Dn,Pn]),Fn=o((function(e){return!!e&&!!Dn.find((function(n){return n.value===e}))}),[Dn]),Wn=o((function(e){return An?An.findIndex((function(n){return n.value===e})):-1}),[An]),Xn=o((function(e){if(An&&An.length>=e){var n=An[e];return n?n.value:void 0}}),[An]),Rn=o((function(){return Mn(dn)?dn.findIndex((function(e){var n,r;return null===(n=Ye(e))||void 0===n||null===(r=n.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[Ye,Mn,dn]),Gn=pe(l(),2),Hn=Gn[0],Vn=Gn[1],Zn=o((function(e){var n,r=null!==(n=null==An?void 0:An.length)&&void 0!==n?n:0,t=r-1>0?r-1:0,a=Wn(cn);switch(e&&tn&&(wn(null),jn()),e){case"next":var o=Xn(a+1<r?a+1:0);sn(null!=o?o:null);break;case"prev":var i=Xn(a-1>=0?a-1:t);sn(null!=i?i:null);break;case"last":var l=Xn(t);sn(null!=l?l:null);break;default:var c=Xn(0);sn(null!=c?c:null)}}),[cn,Wn,Xn,tn,jn,null==An?void 0:An.length]),Kn=o((function(e,n){if(Mn(dn))switch(e){case"next":var r=null!=n?n:Rn(),t=r+1<dn.length?r+1:dn.length-1,a=dn[t];wn(a);break;case"prev":var o=null!=n?n:Rn(),i=o>0?o-1:o<0?dn.length-1:0,l=dn[i];wn(l);break;case"first":var c=dn[0];wn(c);break;case"last":var s=dn[dn.length-1];wn(s);break;default:wn(null)}}),[Rn,Mn,dn]),Yn=o((function(e,n){switch(e&&sn(null),e){case"right":switch(Hn){case me:var r,t,a;if((null===(r=en.current)||void 0===r?void 0:r.selectionEnd)===(null===(t=en.current)||void 0===t?void 0:t.value.length))null===(a=Qe.current)||void 0===a||a.focus();break;case ve:case xe:case ye:if(Hn===ye||1===(null==dn?void 0:dn.length)){jn(0),Kn(null),n.preventDefault();break}Kn("next")}break;case"left":switch(Hn){case be:var o;n.preventDefault(),jn(null==en||null===(o=en.current)||void 0===o?void 0:o.value.length);break;case me:case xe:case ye:if(Mn(dn)){var i;if(Hn===me&&0!==(null===(i=en.current)||void 0===i?void 0:i.selectionStart))break;Kn("prev")}}break;default:Kn(null)}}),[Hn,Mn,dn,jn,Kn]);t((function(){gn!==yn&&Zn("first")}),[gn,tn,yn,Zn]),E(cn?Ke(cn):void 0,nn);var qn=o((function(n){if(T(n,"ComboboxOption")){var r=ir(n.props),t=r.value,a=r.displayName;if(Pn(t)){var o=n.props,i=o.className,l=o.glyph,c=o.disabled,s=ue(o,_t),u=Dn.findIndex((function(e){return e.value===t})),d=cn===t,p=Mn(dn)?dn.includes(t):dn===t,f=Ke(t);return e.createElement(wr,se({},s,{value:t,displayName:a,isFocused:d,isSelected:p,disabled:c,setSelected:function(){sn(t),zn(t),jn(),t===dn&&Nn()},glyph:l,className:i,index:u,ref:f}))}}else if(T(n,"ComboboxGroup")){var h=e.Children.map(n.props.children,qn);if(h&&(null==h?void 0:h.length)>0)return e.createElement(mn,{label:n.props.label,className:n.props.className},e.Children.map(h,qn))}}),[Dn,Ke,cn,Mn,dn,jn,Pn,zn]),Bn=a((function(){return e.Children.map(v,qn)}),[v,qn]),Un=a((function(){if(Mn(dn))return dn.filter(Fn).map((function(n,r){var t=sr(n,Dn),a=kn===n,o=Ye(n),i=r>=dn.length-1;return e.createElement(Be,{key:n,displayName:t,isFocused:a,onRemove:function(){i?(jn(),Kn(null)):Kn("next",r),zn(n)},onFocus:function(){wn(n)},ref:o})}))}),[Mn,dn,Fn,Dn,kn,Ye,zn,jn,Kn]),$n=a((function(){return Dn.some((function(e){return e.hasGlyph}))}),[Dn]),Jn=o((function(){var e=An.find((function(e){return e.displayName===gn||e.value===gn}));if(!De&&e)zn(e.value);else if(!Mn(dn)){var n,r=null!==(n=sr(dn,Dn))&&void 0!==n?n:fn;vn(r)}}),[Dn,gn,Mn,fn,dn,zn,De,An]),Qn=o((function(){if(xt(dn)){if(Mn(dn))pr(de);else if(!Mn(dn)){var e,n=null!==(e=sr(dn,Dn))&&void 0!==e?e:"";vn(n),Nn()}}else vn("")}),[Dn,Mn,dn,de]);t((function(){if(ge)if(u(ge)){var e,n=null!==(e=ge.filter((function(e){return Fn(e)})))&&void 0!==e?e:[];pn(n)}else Fn(ge)&&pn(ge);else pn(function(e){return e?[]:null}(he))}),[]),t((function(){if(!h(De)&&De!==yn)if(p(De))pn(null);else if(Mn(De)){var e=De.filter(Fn);pn(e)}else pn(Fn(De)?De:null)}),[Mn,Fn,yn,De]),t((function(){!h(fn)&&(u(dn)&&!p(fn)||f(dn)||p(dn))&&!d(dn,fn)&&Qn()}),[Qn,fn,dn]),t((function(){!tn&&on&&Jn()}),[tn,on,Jn]);var _n=pe(l(0),2),er=_n[0],nr=_n[1];t((function(){var e,n;nr(null!==(e=null===(n=Je.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[Je,tn,cn,dn]);L(Nn,[nn,Je],tn);var rr=Mn(dn)&&!!dn.length,tr=s((function(e){Ln(or(e.target))}),50,{leading:!0}),ar=o((function(e){de===Ee.expandY&&tr(e)}),[tr,de]);t((function(){_e.current&&Ln(or(_e.current))}),[]);var ur,dr=ie({popoverZIndex:Xe},Pe?{usePortal:Pe,portalClassName:Ae,portalContainer:Fe,scrollContainer:We}:{usePortal:Pe});return e.createElement(D,{darkMode:Ve},e.createElement(He.Provider,{value:{multiselect:he,size:G,withIcons:$n,disabled:X,isOpen:tn,state:Z,searchState:q,chipTruncationLocation:Me,chipCharacterLimit:Ie,inputValue:gn,overflow:de,popoverZIndex:Xe}},e.createElement("div",se({className:b(St(G),ze)},Re),(y||k)&&e.createElement("div",{className:Yt},y&&e.createElement(F,{id:Ue,htmlFor:qe,darkMode:Ve,disabled:X,className:b(ce({},qt,G===Ce.Large))},y),k&&e.createElement(W,{darkMode:Ve,disabled:X,className:b(ce({},qt,G===Ce.Large))},k)),e.createElement("div",{ref:Je,role:"combobox","aria-expanded":tn,"aria-controls":$e,"aria-owns":$e,tabIndex:-1,onMouseDown:function(e){X&&e.preventDefault()},onClick:function(e){if(e.target!==en.current){var n=0;if(en.current)n=e.nativeEvent.offsetX>en.current.offsetLeft+en.current.clientWidth?gn.length:0;jn(n)}On()},onFocus:function(e){pr(de),Vn(function(e){var n,r,t,a;if(!e)return;if(null!==(n=en.current)&&void 0!==n&&n.contains(e))return me;if(null!==(r=Qe.current)&&void 0!==r&&r.contains(e))return be;var o=Mn(dn)?dn.findIndex((function(n){var r,t;return null===(r=Ye(n))||void 0===r||null===(t=r.current)||void 0===t?void 0:t.contains(e)})):-1;if(Mn(dn)){if(0===o)return ve;if(o===dn.length-1)return ye;if(o>0)return xe}if(null!==(t=nn.current)&&void 0!==t&&t.contains(e))return we;if(null!==(a=Je.current)&&void 0!==a&&a.contains(e))return ke}(e.target))},onKeyDown:function(e){var n,r,t=null===(n=nn.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(r=Je.current)||void 0===r?void 0:r.contains(document.activeElement))||t){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.key){case I.Tab:switch(Hn){case"Input":xt(dn)||(Nn(),Zn("first"),Kn(null));break;case"LastChip":Kn(null)}break;case I.Escape:Nn(),Zn("first");break;case I.Enter:tn?!tn||Hn!==me||p(cn)||function(e){if("string"==typeof e){var n=cr(e,Dn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(cn)?Hn===be&&(zn(null),jn()):zn(cn):On();break;case I.Backspace:var a;if(Mn(dn))"Input"===Hn&&0===(null===(a=en.current)||void 0===a?void 0:a.selectionStart)&&Kn("last");On();break;case I.ArrowDown:tn?(e.preventDefault(),Zn("next")):On();break;case I.ArrowUp:tn?(e.preventDefault(),Zn("prev")):On();break;case I.ArrowRight:Yn("right",e);break;case I.ArrowLeft:Yn("left",e);break;default:tn||On()}}},onTransitionEnd:function(){var e,n;nr(null!==(e=null===(n=Je.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:b(Nt,Ot[Ze],Dt(G,rr),(r={},ce(r,Mt[Ze],X),ce(r,jt[Ze],Z===Le.error),ce(r,It[Ze],(ur=me,ur===Hn)),ce(r,Bt[Ze],En),r))},e.createElement("div",{onScroll:ar,ref:_e,className:Pt({size:G,overflow:de})},Un,e.createElement("input",{"aria-label":null!=z?z:y,"aria-autocomplete":"list","aria-controls":$e,"aria-labelledby":Ue,ref:en,id:qe,className:b(At,Xt(G),Ft[Ze],Rt(tn),(g={},ce(g,Gt(G,gn),Mn(dn)),ce(g,Wt[Ze],X),g)),placeholder:Sn,disabled:null!=X?X:void 0,onChange:function(e){vn(e.target.value),null==ne||ne(e.target.value),null==Ne||Ne(e)},value:gn,autoComplete:"off"})),e.createElement("div",{className:b(zt,Tt[G])},"error"===Z&&e.createElement(S,{glyph:"Warning",fill:Ut[Ze],className:Vt}),te&&xt(dn)&&!X&&e.createElement(O,{"aria-label":"Clear selection","aria-disabled":X,disabled:X,ref:Qe,onClick:function(e){X||(e.stopPropagation(),zn(null),null==ae||ae(e),null==ne||ne(""),jn())},onFocus:function(){sn(null)},className:b(Ht),darkMode:Ve},e.createElement(S,{glyph:"XWithCircle"})),e.createElement(S,{glyph:"CaretDown",className:Vt,fill:b((m={},ce(m,$t[Ze],!X),ce(m,Jt[Ze],X),m))}))),"error"===Z&&K&&e.createElement("div",{className:b(Zt[Ze],Kt(G))},K),e.createElement(In,se({id:$e,labelId:Ue,refEl:Je,ref:nn,menuWidth:er,searchLoadingMessage:_,searchErrorMessage:J,searchEmptyMessage:U},dr),Bn))));function pr(e){_e&&_e.current&&(e===Ee.scrollX&&(_e.current.scrollLeft=_e.current.scrollWidth),e===Ee.expandY&&(_e.current.scrollTop=_e.current.scrollHeight))}}ea.propTypes={multiselect:g.bool,value:g.oneOfType([g.string,g.arrayOf(g.string)]),initialValue:g.oneOfType([g.string,g.arrayOf(g.string)]),overflow:g.oneOf(Object.values(Ee)),darkMode:g.bool,label:g.string,"aria-label":g.string,children:g.node,onChange:g.func,chipCharacterLimit:g.number,chipTruncationLocation:g.oneOf(Object.values(R)),onClear:g.func,onFilter:g.func,clearable:g.bool,searchLoadingMessage:g.string,searchErrorMessage:g.string,searchEmptyMessage:g.string,searchState:g.oneOf(Object.values(Se)),errorMessage:g.string,state:g.oneOf(Object.values(Le)),size:g.oneOf(Object.values(Ce)),disabled:g.bool,description:g.string,placeholder:g.string,filteredOptions:g.arrayOf(g.string),popoverZIndex:g.number,usePortal:g.bool,scrollContainer:g.elementType,portalContainer:g.elementType,portalClassName:g.string};export{ea as Combobox,bn as ComboboxGroup,Cr as ComboboxOption};
|
|
1
|
+
import e,{createContext as n,useContext as r,useEffect as t,useMemo as a,useCallback as o,useRef as i,useState as l}from"react";import c from"lodash/clone";import s from"lodash/debounce";import u from"lodash/isArray";import d from"lodash/isEqual";import p from"lodash/isNull";import f from"lodash/isString";import h from"lodash/isUndefined";import g from"prop-types";import{css as m,cx as b,keyframes as v}from"@leafygreen-ui/emotion";import{useForwardedRef as y,useIdAllocator as x,useAvailableSpace as k,useDynamicRefs as w,usePrevious as C,useAutoScroll as E,useBackdropClick as L}from"@leafygreen-ui/hooks";import S,{isComponentGlyph as N}from"@leafygreen-ui/icon";import O from"@leafygreen-ui/icon-button";import D,{useDarkMode as M}from"@leafygreen-ui/leafygreen-provider";import{createUniqueClassName as j,keyMap as I,Theme as z,isComponentType as T,consoleOnce as P}from"@leafygreen-ui/lib";import{Error as A,Label as F,Description as W}from"@leafygreen-ui/typography";import{chipTextClassName as X,TruncationLocation as R,Chip as G,BaseFontSize as H,Variant as V}from"@leafygreen-ui/chip";import{typeScales as Z,spacing as K,fontWeights as Y,fontFamilies as q,transitionDuration as B,focusRing as U}from"@leafygreen-ui/tokens";import{palette as $}from"@leafygreen-ui/palette";import J from"@leafygreen-ui/popover";import{transparentize as Q}from"polished";import{leftGlyphClassName as _,InputOption as ee,InputOptionContent as ne}from"@leafygreen-ui/input-option";import re from"lodash/kebabCase";import te from"lodash/escapeRegExp";import ae from"@leafygreen-ui/checkbox";function oe(e,n){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n&&(t=t.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),r.push.apply(r,t)}return r}function ie(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?oe(Object(r),!0).forEach((function(n){se(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oe(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}function le(e){var n=function(e,n){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var t=r.call(e,n||"default");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==typeof n?n:n+""}function ce(e){return ce="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ce(e)}function se(e,n,r){return(n=le(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function ue(){return ue=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},ue.apply(this,arguments)}function de(e,n){if(null==e)return{};var r,t,a=function(e,n){if(null==e)return{};var r,t,a={},o=Object.keys(e);for(t=0;t<o.length;t++)r=o[t],n.indexOf(r)>=0||(a[r]=e[r]);return a}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(t=0;t<o.length;t++)r=o[t],n.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function pe(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function fe(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var t,a,o,i,l=[],c=!0,s=!1;try{if(o=(r=r.call(e)).next,0===n){if(Object(r)!==r)return;c=!1}else for(;!(c=(t=o.call(r)).done)&&(l.push(t.value),l.length!==n);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(e,n)||ge(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function he(e){return function(e){if(Array.isArray(e))return me(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ge(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ge(e,n){if(e){if("string"==typeof e)return me(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?me(e,n):void 0}}function me(e,n){(null==n||n>e.length)&&(n=e.length);for(var r=0,t=new Array(n);r<n;r++)t[r]=e[r];return t}var be="Input",ve="ClearButton",ye="FirstChip",xe="LastChip",ke="MiddleChip",we="Combobox",Ce="Menu",Ee={XSmall:"xsmall",Small:"small",Default:"default",Large:"large"},Le={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},Se={none:"none",error:"error"},Ne={unset:"unset",error:"error",loading:"loading"};var Oe,De,Me,je,Ie,ze,Te,Pe,Ae,Fe=n({multiselect:!1,size:Ee.Default,withIcons:!1,disabled:!1,isOpen:!1,state:Se.none,searchState:Ne.unset,overflow:Le.expandY}),We=j("combobox-chip"),Xe=se(se(se(se({},Ee.XSmall,16),Ee.Small,Z.body1.lineHeight),Ee.Default,Z.body1.lineHeight),Ee.Large,Z.body2.lineHeight),Re=se(se(se(se({},Ee.XSmall,Z.body1.fontSize),Ee.Small,Z.body1.fontSize),Ee.Default,Z.body1.fontSize),Ee.Large,Z.body2.fontSize),Ge=se(se(se(se({},Ee.XSmall,1),Ee.Small,0),Ee.Default,2),Ee.Large,4),He=se(se(se(se({},Ee.XSmall,m(Oe||(Oe=pe(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Re[Ee.XSmall],Xe[Ee.XSmall],X,Ge[Ee.XSmall])),Ee.Small,m(De||(De=pe(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Re[Ee.Small],Xe[Ee.Small],X,Ge[Ee.Small])),Ee.Default,m(Me||(Me=pe(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Re[Ee.Default],Xe[Ee.Default],X,Ge[Ee.Default])),Ee.Large,m(je||(je=pe(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-inline-end: 10px;\n padding-block: ","px;\n }\n "])),Re[Ee.Large],Xe[Ee.Large],X,Ge[Ee.Large])),Ve=e.forwardRef((function(n,a){var o,i=n.displayName,l=n.isFocused,c=n.onRemove,s=n.onFocus,u=r(Fe),d=u.size,p=u.disabled,f=u.overflow,h=u.chipTruncationLocation,g=void 0===h?R.End:h,m=u.chipCharacterLimit,v=void 0===m?12:m,x=u.popoverZIndex,k=f===Le.scrollX?R.None:g,w=y(a,null),C=null===(o=w.current)||void 0===o?void 0:o.querySelector("button");t((function(){l&&!p&&(null==C||C.focus())}),[p,C,l]);return e.createElement(G,{label:i,className:b(We,He[d]),role:"option","aria-selected":l,"data-testid":"lg-combobox-chip",onClick:function(e){null!=C&&C.contains(e.target)||s()},onKeyDown:function(e){p||e.key!==I.Delete&&e.key!==I.Backspace&&e.key!==I.Enter&&e.key!==I.Space||c()},onDismiss:function(){p||c()},baseFontSize:H.Body1,chipCharacterLimit:v,chipTruncationLocation:k,popoverZIndex:x,variant:V.Gray,ref:w,disabled:p,tabIndex:-1})}));Ve.displayName="ComboboxChip";var Ze,Ke,Ye,qe,Be,Ue,$e,Je,Qe,_e,en,nn,rn,tn=se(se({},z.Light,m(Ie||(Ie=pe(["\n padding-top: ","px;\n "])),K[2])),z.Dark,m(ze||(ze=pe(["\n padding-top: ","px;\n "])),K[2])),an=m(Te||(Te=pe(["\n cursor: default;\n width: 100%;\n padding: 0 12px 2px;\n outline: none;\n overflow-wrap: anywhere;\n font-size: 12px;\n line-height: 16px;\n font-weight: ",";\n text-transform: uppercase;\n letter-spacing: 0.4px;\n"])),Y.bold),on=se(se({},z.Light,m(Pe||(Pe=pe(["\n color: ",";\n "])),$.gray.dark1)),z.Dark,m(Ae||(Ae=pe(["\n color: ",";\n "])),$.gray.light1));function ln(n){var r=n.label,t=n.className,a=n.children,o=M().theme,i=x({prefix:"combobox-group"});return e.Children.count(a)>0?e.createElement("div",{className:b(tn[o],t)},e.createElement("div",{className:b(an,on[o]),id:i},r),e.createElement("div",{role:"group","aria-labelledby":i},a)):e.createElement(e.Fragment,null)}function cn(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}cn.displayName="ComboboxGroup",cn.propTypes={className:g.string,children:g.node.isRequired,label:g.string.isRequired};var sn,un=se(se(se(se({},Ee.XSmall,{x:12,y:8}),Ee.Small,{x:12,y:8}),Ee.Default,{x:12,y:8}),Ee.Large,{x:12,y:8}),dn=function(e){return Xe[e]+2*un[e].y},pn=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return m(Ze||(Ze=pe(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},fn=se(se({},z.Light,m(Ke||(Ke=pe(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),Q(.85,$.black),$.gray.light2)),z.Dark,m(Ye||(Ye=pe(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),Q(.85,$.black),$.gray.dark2)),hn=m(qe||(qe=pe(["\n position: relative;\n width: 100%;\n margin: 0;\n padding: ","px 0;\n font-family: ",";\n border-radius: inherit;\n overflow-y: auto;\n scroll-behavior: smooth;\n"])),K[2],q.default),gn=se(se({},z.Light,m(Be||(Be=pe(["\n color: ",";\n background-color: ",";\n "])),$.black,$.white)),z.Dark,m(Ue||(Ue=pe(["\n color: ",";\n background-color: ",";\n "])),$.gray.light1,$.gray.dark3)),mn=m($e||($e=pe(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),bn=m(Je||(Je=pe(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),vn=se(se({},z.Light,m(Qe||(Qe=pe(["\n color: ",";\n "])),$.gray.dark3)),z.Dark,m(_e||(_e=pe(["\n color: ",";\n "])),$.gray.light3)),yn=function(e){return m(en||(en=pe(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px ","px;\n"])),Re[e],Xe[e],un[e].y,un[e].x)},xn=v(nn||(nn=pe(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),kn=m(rn||(rn=pe(["\n animation: "," 1.5s linear infinite;\n"])),xn),wn=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Cn=e.forwardRef((function(n,t){var o=n.children,i=n.id,l=n.refEl,c=n.labelId,s=n.menuWidth,u=n.searchLoadingMessage,d=n.searchErrorMessage,p=n.searchEmptyMessage,f=de(n,wn),g=M(),v=g.darkMode,x=g.theme,w=r(Fe),C=w.disabled,E=w.size,L=w.isOpen,N=w.searchState,O=y(t,null),D=k(l),j=h(D)?"unset":"".concat(Math.min(D,256),"px"),I=a((function(){var n=b(bn,vn[x],yn(E)),r=b(bn,yn(E));switch(N){case"loading":return e.createElement("span",{className:n},e.createElement(S,{glyph:"Refresh",color:v?$.blue.light1:$.blue.base,className:kn}),u);case"error":return e.createElement(A,{className:r},e.createElement(S,{glyph:"Warning",color:v?$.red.light1:$.red.base}),e.createElement("span",null,d));default:return o&&"object"===ce(o)&&"length"in o&&o.length>0?e.createElement("ul",{className:mn},o):e.createElement("span",{className:n},p)}}),[x,E,N,v,u,d,o,p]);return e.createElement(J,ue({active:L&&!C,spacing:4,align:"bottom",justify:"middle",refEl:l,adjustOnMutation:!0,className:b(pn(s),fn[x])},f),e.createElement("div",{ref:O,id:i,role:"listbox","aria-labelledby":c,"aria-expanded":L,className:b(hn,gn[x],m(sn||(sn=pe(["\n max-height: ",";\n "])),j)),onMouseDownCapture:function(e){return e.preventDefault()}},I))}));Cn.displayName="ComboboxMenu";var En,Ln,Sn,Nn,On,Dn,Mn,jn,In,zn,Tn,Pn,An,Fn,Wn,Xn,Rn,Gn,Hn,Vn,Zn=function(e){var n=e.scrollHeight;return e.scrollTop<n-e.clientHeight},Kn=function(e){var n,r=e.value,t=e.displayName;return{value:null!=r?r:re(t),displayName:null!==(n=null!=t?t:r)&&void 0!==n?n:""}},Yn=function n(r){return e.Children.toArray(r).reduce((function(e,r){if(T(r,"ComboboxOption")){var t=Kn(r.props),a=t.value,o=t.displayName,i=r.props,l=i.glyph,c=i.disabled;return[].concat(he(e),[{value:a,displayName:o,isDisabled:!!c,hasGlyph:!!l}])}if(T(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(he(e),he(n(s)))}}),[])},qn=function(e,n){if(e)return n.find((function(n){return n.value===e}))},Bn=function(e,n){var r,t;return e?null!==(r=null===(t=qn(e,n))||void 0===t?void 0:t.displayName)&&void 0!==r?r:e:""},Un=function(e){return m(En||(En=pe(["\n font-size: ","px;\n line-height: ","px;\n min-height: ","px;\n padding: ","px ","px;\n gap: ","px;\n\n &:before {\n max-height: ","px;\n }\n"])),Re[e],Xe[e],dn(e),un[e].y,un[e].x,K[1],dn(e))},$n=se(se(se(se({},Ee.XSmall,m(Ln||(Ln=pe(["\n min-width: ","px;\n "])),K[3])),Ee.Small,m(Sn||(Sn=pe(["\n min-width: ","px;\n "])),K[3])),Ee.Default,m(Nn||(Nn=pe(["\n min-width: ","px;\n "])),K[3])),Ee.Large,m(On||(On=pe(["\n min-width: ","px;\n "])),K[4])),Jn=m(Dn||(Dn=pe(["\n pointer-events: none;\n gap: 0;\n\n label {\n gap: 0;\n align-items: center;\n }\n"])));m(Mn||(Mn=pe(["\n pointer-events: none;\n"])));var Qn=function(e){return m(jn||(jn=pe(["\n font-weight: ",";\n"])),e?Y.bold:Y.regular)},_n=se(se({},z.Light,m(In||(In=pe(["\n color: ",";\n "])),$.gray.dark1)),z.Dark,m(zn||(zn=pe(["\n color: ",";\n "])),$.gray.base)),er=se(se({},z.Light,m(Tn||(Tn=pe(["\n color: ",";\n "])),$.blue.dark1)),z.Dark,m(Pn||(Pn=pe(["\n color: ",";\n "])),$.blue.light3)),nr=se(se({},z.Light,m(An||(An=pe(["\n color: ",";\n "])),$.gray.light1)),z.Dark,m(Fn||(Fn=pe(["\n color: ",";\n "])),$.gray.dark1)),rr=se(se({},z.Light,m(Wn||(Wn=pe(["\n color: ",";\n "])),$.blue.base)),z.Dark,m(Xn||(Xn=pe(["\n color: ",";\n "])),$.blue.light1)),tr=se(se({},z.Light,m(Rn||(Rn=pe(["\n color: ",";\n "])),$.gray.light1)),z.Dark,m(Gn||(Gn=pe(["\n color: ",";\n "])),$.gray.dark1)),ar=m(Hn||(Hn=pe(["\n ."," {\n align-self: baseline;\n }\n"])),_),or=m(Vn||(Vn=pe(["\n ."," {\n height: 28px;\n }\n"])),_),ir=["glyph","isSelected","displayName","isFocused","setSelected","className","description","value","onClick","disabled"],lr=e.forwardRef((function(n,t){var i=n.glyph,l=n.isSelected,c=n.displayName,s=n.isFocused,u=n.setSelected,d=n.className,p=n.description,f=n.value,h=n.onClick,g=n.disabled,m=void 0!==g&&g,v=de(n,ir),k=M(),w=k.darkMode,C=k.theme,E=r(Fe),L=E.multiselect,O=E.size,D=E.withIcons,j=E.inputValue,I=y(t,null),z=x({prefix:"combobox-option-text"}),T=o((function(e){e.stopPropagation(),m||(u(),null==h||h(e,f))}),[m,h,u,f]),P=a((function(){return function(n){var r=n.withIcons,t=n.isSelected,a=n.glyph,o=n.optionTextId,i=n.disabled,l=n.darkMode,c=n.size,s=n.multiselect,u=n.theme,d=n.isFocused;a&&!N(a)&&console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",a);var p=a&&N(a)?e.cloneElement(a,ie(ie({},a.props),{},{className:b(_n[u],se(se({},er[u],d),nr[u],i),a.props.className)})):e.createElement(e.Fragment,null),f=e.createElement(ae,{"aria-labelledby":o,checked:t,tabIndex:-1,disabled:i,darkMode:l,className:Jn}),h=e.createElement(S,{glyph:"Checkmark",className:b($n[c],rr[u],se({},tr[u],i))});return{leftGlyph:s?r?p:f:r?p:t?h:null,rightGlyph:s?r&&f:r&&t&&h}}({withIcons:D,isSelected:l,glyph:i,theme:C,darkMode:w,size:O,disabled:m,multiselect:L,optionTextId:z,isFocused:s})}),[w,m,i,l,L,z,O,C,D,s]),A=P.leftGlyph,F=P.rightGlyph,W=L&&!D;return e.createElement(ee,ue({},v,{as:"li",ref:I,highlighted:s,disabled:m,"aria-label":c,darkMode:w,className:b(Un(O),se(se({},ar,W),or,W&&O===Ee.Large),d),onClick:T,onKeyDown:T}),e.createElement(ne,{leftGlyph:A,rightGlyph:F,description:p},e.createElement("span",{id:z,className:Qn(l)},function(n,r,t){if(r&&t){var a=te(r),o=new RegExp(a,"gi"),i=n.matchAll(o);if(i){for(var l=n.split(""),c=0,s=Array.from(i);c<s.length;c++){var u,d=s[c],p=null!==(u=d.index)&&void 0!==u?u:-1,f=d[0],h=f.length,g=p+f+h,m=new Array(h).fill("");m[0]=e.createElement(t,{key:g},f),l.splice.apply(l,[p,h].concat(he(m)))}return e.createElement(e.Fragment,null,l)}return e.createElement(e.Fragment,null,n)}return e.createElement(e.Fragment,null,n)}(c,j,"strong"))))}));function cr(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}lr.displayName="ComboboxOption",cr.displayName="ComboboxOption",cr.propTypes={displayName:g.string,value:g.string,glyph:g.node,disabled:g.bool,className:g.string,description:g.string,onClick:g.func};var sr,ur,dr,pr,fr,hr,gr,mr,br,vr,yr,xr,kr,wr,Cr,Er,Lr,Sr,Nr,Or,Dr,Mr,jr,Ir,zr,Tr,Pr,Ar,Fr,Wr,Xr,Rr,Gr,Hr,Vr,Zr,Kr=function(e){return!h(e)&&!p(e)&&(f(e)||u(e)&&e.length>0)},Yr=function(e){return Xe[e]+2*Ge[e]},qr=se(se(se(se({},Ee.XSmall,22),Ee.Small,28),Ee.Default,36),Ee.Large,48),Br=function(e){return(qr[e]-Yr(e)-2)/2},Ur=se(se(se(se({},Ee.XSmall,{y:Br(Ee.XSmall),xLeftWithChip:1,xLeftWithoutChip:10,xRight:4}),Ee.Small,{y:Br(Ee.Small),xLeftWithChip:4,xLeftWithoutChip:10,xRight:8}),Ee.Default,{y:Br(Ee.Default),xLeftWithChip:6,xLeftWithoutChip:12,xRight:12}),Ee.Large,{y:Br(Ee.Large),xLeftWithChip:K[2]-1,xLeftWithoutChip:K[2]-1,xRight:K[2]-1}),$r=K[3],Jr=function(e){return m(sr||(sr=pe(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),q.default,Re[e]+2*Ur[e].xLeftWithChip+$r+2)},Qr=m(ur||(ur=pe(["\n display: flex;\n align-items: center;\n gap: ","px;\n cursor: text;\n transition: ","ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: 100%;\n max-width: 100%;\n border-radius: 6px;\n position: relative;\n overflow: hidden;\n\n // Overflow shadow\n ::after {\n content: '';\n position: absolute;\n width: 100%;\n height: 20px;\n bottom: -21px;\n left: 50%;\n translate: -50% 0%;\n border-radius: 20%;\n box-shadow: 0 0 0 0 rgb(255 255 255 / 0%);\n transition: ","ms linear;\n transition-property: box-shadow;\n }\n"])),K[2],B.default,B.default),_r=se(se({},z.Light,m(dr||(dr=pe(["\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.dark3,$.white,$.gray.base)),z.Dark,m(pr||(pr=pe(["\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.light2,$.gray.dark4,$.gray.base)),et=function(e,n){return m(fr||(fr=pe(["\n padding-top: ","px;\n padding-bottom: ","px;\n padding-left: ",";\n padding-right: ","px;\n"])),Ur[e].y,Ur[e].y,"".concat(n?Ur[e].xLeftWithChip:Ur[e].xLeftWithoutChip,"px"),Ur[e].xRight)},nt=se(se({},z.Light,m(hr||(hr=pe(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.dark1,$.gray.light2,$.gray.light1)),z.Dark,m(gr||(gr=pe(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),$.gray.dark1,$.gray.dark3,$.gray.dark2)),rt=se(se({},z.Light,m(mr||(mr=pe(["\n border-color: ",";\n "])),$.red.base)),z.Dark,m(br||(br=pe(["\n border-color: ",";\n "])),$.red.light1)),tt=se(se({},z.Light,m(vr||(vr=pe(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),U[z.Light].input)),z.Dark,m(yr||(yr=pe(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),U[z.Dark].input)),at=m(xr||(xr=pe(["\n display: flex;\n align-items: center;\n"]))),ot=se(se(se(se({},Ee.XSmall,m(kr||(kr=pe(["\n gap: ","px;\n "])),K[1])),Ee.Small,m(wr||(wr=pe(["\n gap: ","px;\n "])),K[2])),Ee.Default,m(Cr||(Cr=pe(["\n gap: ","px;\n "])),K[2])),Ee.Large,m(Er||(Er=pe(["\n gap: ","px;\n "])),K[2])),it=function(e){var n=e.overflow,r=e.size,t=m(Lr||(Lr=pe(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case Le.scrollX:return m(Sr||(Sr=pe(["\n ","\n display: block;\n height: ","px;\n white-space: nowrap;\n overflow-x: scroll;\n scroll-behavior: smooth;\n scrollbar-width: none;\n line-height: 1;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n & > ."," {\n margin-inline: 2px;\n\n &:first-child {\n margin-inline-start: 0;\n }\n\n &:last-child {\n margin-inline-end: 0;\n }\n }\n "])),t,Yr(r),We);case Le.expandY:return m(Nr||(Nr=pe(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: ","px;\n overflow-x: hidden;\n min-height: ","px;\n max-height: calc((","px) + (","px * 2));\n "])),t,4,Yr(r),3*Yr(r),4)}},lt=m(Or||(Or=pe(["\n font-family: ",";\n width: 100%;\n border: none;\n cursor: inherit;\n background-color: inherit;\n color: inherit;\n box-sizing: content-box;\n padding: 0;\n margin: 0;\n text-overflow: ellipsis;\n vertical-align: top;\n\n // Only add padding if there are chips\n &:not(:first-child) {\n padding-left: ","px;\n }\n\n &:placeholder-shown {\n min-width: 100%;\n }\n &:focus {\n outline: none;\n }\n"])),q.default,K[1]),ct=se(se({},z.Light,m(Dr||(Dr=pe(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.dark1)),z.Dark,m(Mr||(Mr=pe(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.light1)),st=se(se({},z.Light,m(jr||(jr=pe(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.dark1)),z.Dark,m(Ir||(Ir=pe(["\n &::placeholder {\n color: ",";\n }\n "])),$.gray.dark1)),ut=function(e){return m(zr||(zr=pe(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n"])),Yr(e),Re[e],Xe[e],Re[e])},dt=function(e){return m(Tr||(Tr=pe(["\n /*\n * Immediate transition in, slow transition out. \n * '-in' transition is handled by `scroll-behavior` \n */\n transition: width ease-in-out ",";\n"],["\n /*\n * Immediate transition in, slow transition out. \n * '-in' transition is handled by \\`scroll-behavior\\` \n */\n transition: width ease-in-out ",";\n"])),e?"0s":"100ms")},pt=function(e,n){var r,t=null!==(r=null==n?void 0:n.length)&&void 0!==r?r:0;return m(Pr||(Pr=pe(["\n width: ","px;\n max-width: 100%;\n "])),t*Re[e])},ft=m(Ar||(Ar=pe(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n margin-inline: -6px;\n"])),$r/2),ht=m(Fr||(Fr=pe(["\n height: ","px;\n width: ","px;\n"])),$r,$r),gt=se(se({},z.Light,m(Wr||(Wr=pe(["\n color: ",";\n "])),$.red.base)),z.Dark,m(Xr||(Xr=pe(["\n color: ",";\n "])),$.red.light1)),mt=function(e){return m(Rr||(Rr=pe(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n"])),Re[e],Xe[e],Ur[e].y)},bt=m(Gr||(Gr=pe(["\n margin-bottom: ","px;\n display: flex;\n flex-direction: column;\n"])),K[1]),vt=m(Hr||(Hr=pe(["\n font-size: ","px;\n line-height: ","px;\n"])),Z.large.fontSize,Z.large.lineHeight),yt=se(se({},z.Light,m(Vr||(Vr=pe(["\n ::after {\n box-shadow: 0px 0px 7px 5px ",";\n }\n "])),Q(.85,$.black))),z.Dark,m(Zr||(Zr=pe(["\n ::after {\n width: 95%;\n box-shadow: 0px -7px 12px 5px rgb(0 0 0 / 50%);\n }\n "])))),xt=se(se({},z.Light,$.red.base),z.Dark,$.red.light1),kt=se(se({},z.Light,$.gray.dark2),z.Dark,$.gray.light1),wt=se(se({},z.Light,$.gray.base),z.Dark,$.gray.dark1),Ct=["children","label","description","placeholder","aria-label","disabled","size","darkMode","state","errorMessage","searchState","searchEmptyMessage","searchErrorMessage","searchLoadingMessage","filteredOptions","onFilter","clearable","onClear","overflow","multiselect","initialValue","inputValue","onInputChange","onChange","value","chipTruncationLocation","chipCharacterLimit","className","usePortal","portalClassName","portalContainer","scrollContainer","popoverZIndex"],Et=["className","glyph","disabled"];function Lt(n){var r=n.children,g=n.label,m=n.description,v=n.placeholder,y=void 0===v?"Select":v,k=n["aria-label"],N=n.disabled,j=void 0!==N&&N,z=n.size,A=void 0===z?Ee.Default:z,X=n.darkMode,R=n.state,G=void 0===R?"none":R,H=n.errorMessage,V=n.searchState,Z=void 0===V?"unset":V,K=n.searchEmptyMessage,Y=void 0===K?"No results found":K,q=n.searchErrorMessage,B=void 0===q?"Could not get results!":q,U=n.searchLoadingMessage,$=void 0===U?"Loading results...":U,J=n.filteredOptions,Q=n.onFilter,_=n.clearable,ee=void 0===_||_,ne=n.onClear,re=n.overflow,te=void 0===re?Le.expandY:re,ae=n.multiselect,oe=void 0!==ae&&ae,le=n.initialValue,pe=n.inputValue,he=n.onInputChange,ge=n.onChange,me=n.value,Ne=n.chipTruncationLocation,Oe=n.chipCharacterLimit,De=void 0===Oe?12:Oe,Me=n.className,je=n.usePortal,Ie=void 0===je||je,ze=n.portalClassName,Te=n.portalContainer,Pe=n.scrollContainer,Ae=n.popoverZIndex,We=de(n,Ct),Xe=M(X),Re=Xe.darkMode,Ge=Xe.theme,He=w({prefix:"option"}),Ze=w({prefix:"chip"}),Ke=x({prefix:"combobox-input"}),Ye=x({prefix:"combobox-label"}),qe=x({prefix:"combobox-menu"}),Be=i(null),Ue=i(null),$e=i(null),Je=i(null),Qe=i(null),_e=fe(l(!1),2),en=_e[0],nn=_e[1],rn=C(en),tn=fe(l(null),2),an=tn[0],on=tn[1],cn=fe(l(null),2),sn=cn[0],un=cn[1],dn=C(sn),pn=fe(l(null!=pe?pe:""),2),fn=pn[0],hn=pn[1];t((function(){h(pe)||hn(pe)}),[pe]);var gn=function(e){hn(e)},mn=C(fn),bn=fe(l(null),2),vn=bn[0],yn=bn[1],xn=fe(l(!1),2),kn=xn[0],wn=xn[1],En=oe&&u(sn)&&sn.length>0?void 0:y,Ln=function(){return nn(!1)},Sn=function(){return nn(!0)},Nn=a((function(){return Yn(r)}),[r]),On=o((function(e){return!oe||"string"!=typeof e&&"number"!=typeof e?!oe&&u(e)&&P.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):P.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(ce(e),' value: "').concat(e,'"')),oe&&u(e)}),[oe]),Dn=o((function(e){!j&&Je&&Je.current&&(Je.current.focus(),h(e)||Je.current.setSelectionRange(e,e))}),[j]),Mn=o((function(e){if(On(sn)){var n=c(sn),r=ge,t={diffType:"delete",value:null!=e?e:sn};p(e)?n.length=0:sn.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),t.diffType="insert",gn("")),un(n),null==r||r(n,t)}else{var a=e,o=ge;un(a),null==o||o(a)}}),[On,ge,sn]),jn=o((function(e){var n,r,t,a;return function(e,n){return Array.isArray(n)?n.includes(e):e===n}((r=Nn,(n=e)?null!==(t=null===(a=r.find((function(e){return e.displayName===n})))||void 0===a?void 0:a.value)&&void 0!==t?t:n:""),sn)}),[Nn,sn]),In=o((function(e){var n="string"==typeof e?e:e.value;return J&&J.length>0?J.includes(n):!!jn(fn)||("string"==typeof e?Bn(n,Nn):e.displayName).toLowerCase().includes(fn.toLowerCase())}),[J,jn,fn,Nn]),zn=a((function(){return Nn.filter(In)}),[Nn,In]),Tn=o((function(e){return!!e&&!!Nn.find((function(n){return n.value===e}))}),[Nn]),Pn=o((function(e){return zn?zn.findIndex((function(n){return n.value===e})):-1}),[zn]),An=o((function(e){if(zn&&zn.length>=e){var n=zn[e];return n?n.value:void 0}}),[zn]),Fn=o((function(){return On(sn)?sn.findIndex((function(e){var n;return null===(n=Ze(e))||void 0===n||null===(n=n.current)||void 0===n?void 0:n.contains(document.activeElement)})):-1}),[Ze,On,sn]),Wn=fe(l(),2),Xn=Wn[0],Rn=Wn[1],Gn=o((function(e){var n,r=null!==(n=null==zn?void 0:zn.length)&&void 0!==n?n:0,t=r-1>0?r-1:0,a=Pn(an);switch(e&&en&&(yn(null),Dn()),e){case"next":var o=An(a+1<r?a+1:0);on(null!=o?o:null);break;case"prev":var i=An(a-1>=0?a-1:t);on(null!=i?i:null);break;case"last":var l=An(t);on(null!=l?l:null);break;default:var c=An(0);on(null!=c?c:null)}}),[an,Pn,An,en,Dn,null==zn?void 0:zn.length]),Hn=o((function(e,n){if(On(sn))switch(e){case"next":var r=null!=n?n:Fn(),t=r+1<sn.length?r+1:sn.length-1,a=sn[t];yn(a);break;case"prev":var o=null!=n?n:Fn(),i=o>0?o-1:o<0?sn.length-1:0,l=sn[i];yn(l);break;case"first":var c=sn[0];yn(c);break;case"last":var s=sn[sn.length-1];yn(s);break;default:yn(null)}}),[Fn,On,sn]),Vn=o((function(e,n){switch(e&&on(null),e){case"right":switch(Xn){case be:var r,t,a;if((null===(r=Je.current)||void 0===r?void 0:r.selectionEnd)===(null===(t=Je.current)||void 0===t?void 0:t.value.length))null===(a=Ue.current)||void 0===a||a.focus();break;case ye:case ke:case xe:if(Xn===xe||1===(null==sn?void 0:sn.length)){Dn(0),Hn(null),n.preventDefault();break}Hn("next")}break;case"left":switch(Xn){case ve:var o;n.preventDefault(),Dn(null==Je||null===(o=Je.current)||void 0===o?void 0:o.value.length);break;case be:case ke:case xe:if(On(sn)){var i;if(Xn===be&&0!==(null===(i=Je.current)||void 0===i?void 0:i.selectionStart))break;Hn("prev")}}break;default:Hn(null)}}),[Xn,On,sn,Dn,Hn]);t((function(){fn!==mn&&Gn("first")}),[fn,en,mn,Gn]),E(an?He(an):void 0,Qe);var Un=o((function(n){if(T(n,"ComboboxOption")){var r=Kn(n.props),t=r.value,a=r.displayName;if(In(t)){var o=n.props,i=o.className,l=o.glyph,c=o.disabled,s=de(o,Et),u=Nn.findIndex((function(e){return e.value===t})),d=an===t,p=On(sn)?sn.includes(t):sn===t,f=He(t);return e.createElement(lr,ue({},s,{value:t,displayName:a,isFocused:d,isSelected:p,disabled:c,setSelected:function(){on(t),Mn(t),Dn(),t===sn&&Ln()},glyph:l,className:i,index:u,ref:f}))}}else if(T(n,"ComboboxGroup")){var h=e.Children.map(n.props.children,Un);if(h&&(null==h?void 0:h.length)>0)return e.createElement(ln,{label:n.props.label,className:n.props.className},e.Children.map(h,Un))}}),[Nn,He,an,On,sn,Dn,In,Mn]),$n=a((function(){return e.Children.map(r,Un)}),[r,Un]),Jn=a((function(){if(On(sn))return sn.filter(Tn).map((function(n,r){var t=Bn(n,Nn),a=vn===n,o=Ze(n),i=r>=sn.length-1;return e.createElement(Ve,{key:n,displayName:t,isFocused:a,onRemove:function(){i?(Dn(),Hn(null)):Hn("next",r),Mn(n)},onFocus:function(){yn(n)},ref:o})}))}),[On,sn,Tn,Nn,vn,Ze,Mn,Dn,Hn]),Qn=a((function(){return Nn.some((function(e){return e.hasGlyph}))}),[Nn]),_n=o((function(){var e=zn.find((function(e){return e.displayName===fn||e.value===fn}));if(!me&&e)Mn(e.value);else if(!On(sn)){var n,r=null!==(n=Bn(sn,Nn))&&void 0!==n?n:dn;gn(r)}}),[Nn,fn,On,dn,sn,Mn,me,zn]),er=o((function(){if(Kr(sn)){if(On(sn))ur(te);else if(!On(sn)){var e,n=null!==(e=Bn(sn,Nn))&&void 0!==e?e:"";gn(n),Ln()}}else gn("")}),[Nn,On,sn,te]);t((function(){if(le)if(u(le)){var e,n=null!==(e=le.filter((function(e){return Tn(e)})))&&void 0!==e?e:[];un(n)}else Tn(le)&&un(le);else un(function(e){return e?[]:null}(oe))}),[]),t((function(){if(!h(me)&&me!==mn)if(p(me))un(null);else if(On(me)){var e=me.filter(Tn);un(e)}else un(Tn(me)?me:null)}),[On,Tn,mn,me]),t((function(){!h(dn)&&(u(sn)&&!p(dn)||f(sn)||p(sn))&&!d(sn,dn)&&er()}),[er,dn,sn]),t((function(){!en&&rn&&_n()}),[en,rn,_n]);var nr=fe(l(0),2),rr=nr[0],tr=nr[1];t((function(){var e,n;tr(null!==(e=null===(n=Be.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[Be,en,an,sn]);L(Ln,[Qe,Be],en);var ar=On(sn)&&!!sn.length,or=s((function(e){wn(Zn(e.target))}),50,{leading:!0}),ir=o((function(e){te===Le.expandY&&or(e)}),[or,te]);t((function(){$e.current&&wn(Zn($e.current))}),[]);var cr,sr=ie({popoverZIndex:Ae},Ie?{usePortal:Ie,portalClassName:ze,portalContainer:Te,scrollContainer:Pe}:{usePortal:Ie});return e.createElement(D,{darkMode:Re},e.createElement(Fe.Provider,{value:{multiselect:oe,size:A,withIcons:Qn,disabled:j,isOpen:en,state:G,searchState:Z,chipTruncationLocation:Ne,chipCharacterLimit:De,inputValue:fn,overflow:te,popoverZIndex:Ae}},e.createElement("div",ue({className:b(Jr(A),Me)},We),(g||m)&&e.createElement("div",{className:bt},g&&e.createElement(F,{id:Ye,htmlFor:Ke,darkMode:Re,disabled:j,className:b(se({},vt,A===Ee.Large))},g),m&&e.createElement(W,{darkMode:Re,disabled:j,className:b(se({},vt,A===Ee.Large))},m)),e.createElement("div",{ref:Be,role:"combobox","aria-expanded":en,"aria-controls":qe,"aria-owns":qe,tabIndex:-1,onMouseDown:function(e){j&&e.preventDefault()},onClick:function(e){if(e.target!==Je.current){var n=0;if(Je.current)n=e.nativeEvent.offsetX>Je.current.offsetLeft+Je.current.clientWidth?fn.length:0;Dn(n)}Sn()},onFocus:function(e){ur(te),Rn(function(e){var n,r,t,a;if(!e)return;if(null!==(n=Je.current)&&void 0!==n&&n.contains(e))return be;if(null!==(r=Ue.current)&&void 0!==r&&r.contains(e))return ve;var o=On(sn)?sn.findIndex((function(n){var r;return null===(r=Ze(n))||void 0===r||null===(r=r.current)||void 0===r?void 0:r.contains(e)})):-1;if(On(sn)){if(0===o)return ye;if(o===sn.length-1)return xe;if(o>0)return ke}if(null!==(t=Qe.current)&&void 0!==t&&t.contains(e))return Ce;if(null!==(a=Be.current)&&void 0!==a&&a.contains(e))return we}(e.target))},onKeyDown:function(e){var n,r,t=null===(n=Qe.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(r=Be.current)||void 0===r?void 0:r.contains(document.activeElement))||t){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.key){case I.Tab:switch(Xn){case"Input":Kr(sn)||(Ln(),Gn("first"),Hn(null));break;case"LastChip":Hn(null)}break;case I.Escape:Ln(),Gn("first");break;case I.Enter:en?!en||Xn!==be||p(an)||function(e){if("string"==typeof e){var n=qn(e,Nn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(an)?Xn===ve&&(Mn(null),Dn()):Mn(an):Sn();break;case I.Backspace:var a;if(On(sn))"Input"===Xn&&0===(null===(a=Je.current)||void 0===a?void 0:a.selectionStart)&&Hn("last");Sn();break;case I.ArrowDown:en?(e.preventDefault(),Gn("next")):Sn();break;case I.ArrowUp:en?(e.preventDefault(),Gn("prev")):Sn();break;case I.ArrowRight:Vn("right",e);break;case I.ArrowLeft:Vn("left",e);break;default:en||Sn()}}},onTransitionEnd:function(){var e,n;tr(null!==(e=null===(n=Be.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:b(Qr,_r[Ge],et(A,ar),se(se(se(se({},nt[Ge],j),rt[Ge],G===Se.error),tt[Ge],(cr=be,cr===Xn)),yt[Ge],kn))},e.createElement("div",{onScroll:ir,ref:$e,className:it({size:A,overflow:te})},Jn,e.createElement("input",{"aria-label":null!=k?k:g,"aria-autocomplete":"list","aria-controls":qe,"aria-labelledby":Ye,ref:Je,id:Ke,className:b(lt,ut(A),ct[Ge],dt(en),se(se({},pt(A,fn),On(sn)),st[Ge],j)),placeholder:En,disabled:null!=j?j:void 0,onChange:function(e){gn(e.target.value),null==Q||Q(e.target.value),null==he||he(e)},value:fn,autoComplete:"off"})),e.createElement("div",{className:b(at,ot[A])},"error"===G&&e.createElement(S,{glyph:"Warning",fill:xt[Ge],className:ht}),ee&&Kr(sn)&&!j&&e.createElement(O,{"aria-label":"Clear selection","aria-disabled":j,disabled:j,ref:Ue,onClick:function(e){j||(e.stopPropagation(),Mn(null),null==ne||ne(e),null==Q||Q(""),Dn())},onFocus:function(){on(null)},className:b(ft),darkMode:Re},e.createElement(S,{glyph:"XWithCircle"})),e.createElement(S,{glyph:"CaretDown",className:ht,fill:b(se(se({},kt[Ge],!j),wt[Ge],j))}))),"error"===G&&H&&e.createElement("div",{className:b(gt[Ge],mt(A))},H),e.createElement(Cn,ue({id:qe,labelId:Ye,refEl:Be,ref:Qe,menuWidth:rr,searchLoadingMessage:$,searchErrorMessage:B,searchEmptyMessage:Y},sr),$n))));function ur(e){$e&&$e.current&&(e===Le.scrollX&&($e.current.scrollLeft=$e.current.scrollWidth),e===Le.expandY&&($e.current.scrollTop=$e.current.scrollHeight))}}Lt.propTypes={multiselect:g.bool,value:g.oneOfType([g.string,g.arrayOf(g.string)]),initialValue:g.oneOfType([g.string,g.arrayOf(g.string)]),overflow:g.oneOf(Object.values(Le)),darkMode:g.bool,label:g.string,"aria-label":g.string,children:g.node,onChange:g.func,chipCharacterLimit:g.number,chipTruncationLocation:g.oneOf(Object.values(R)),onClear:g.func,onFilter:g.func,clearable:g.bool,searchLoadingMessage:g.string,searchErrorMessage:g.string,searchEmptyMessage:g.string,searchState:g.oneOf(Object.values(Ne)),errorMessage:g.string,state:g.oneOf(Object.values(Se)),size:g.oneOf(Object.values(Ee)),disabled:g.bool,description:g.string,placeholder:g.string,filteredOptions:g.arrayOf(g.string),popoverZIndex:g.number,usePortal:g.bool,scrollContainer:g.elementType,portalContainer:g.elementType,portalClassName:g.string};export{Lt as Combobox,cn as ComboboxGroup,cr as ComboboxOption};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|