@leafygreen-ui/combobox 6.0.4 → 6.0.6
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 +31 -0
- package/dist/Chip/Chip.stories.d.ts +7 -0
- package/dist/Chip/Chip.stories.d.ts.map +1 -0
- package/dist/Combobox.types.d.ts +1 -1
- package/dist/ComboboxContext/ComboboxContext.d.ts +11 -2
- package/dist/ComboboxContext/ComboboxContext.d.ts.map +1 -1
- package/dist/ComboboxGroup/ComboboxGroup.stories.d.ts +7 -0
- package/dist/ComboboxGroup/ComboboxGroup.stories.d.ts.map +1 -0
- package/dist/ComboboxOption/ComboboxOption.stories.d.ts +7 -0
- package/dist/ComboboxOption/ComboboxOption.stories.d.ts.map +1 -0
- 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/test-utils/getTestOptions.testutils.d.ts +3 -0
- package/dist/test-utils/getTestOptions.testutils.d.ts.map +1 -0
- package/package.json +12 -12
- package/src/Chip/Chip.stories.tsx +35 -0
- package/src/Combobox.story.tsx +94 -196
- package/src/Combobox.types.ts +1 -1
- package/src/ComboboxContext/ComboboxContext.tsx +5 -3
- package/src/ComboboxGroup/ComboboxGroup.stories.tsx +47 -0
- package/src/ComboboxOption/ComboboxOption.stories.tsx +70 -0
- package/src/test-utils/getTestOptions.testutils.tsx +83 -0
- package/stories.js +1 -1
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,36 @@
|
|
|
1
1
|
# @leafygreen-ui/combobox
|
|
2
2
|
|
|
3
|
+
## 6.0.6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 76161cf0: Updates stories for Chromatic testing
|
|
8
|
+
- Updated dependencies [76161cf0]
|
|
9
|
+
- Updated dependencies [76161cf0]
|
|
10
|
+
- Updated dependencies [735342e9]
|
|
11
|
+
- Updated dependencies [95f5107a]
|
|
12
|
+
- Updated dependencies [76161cf0]
|
|
13
|
+
- Updated dependencies [76161cf0]
|
|
14
|
+
- Updated dependencies [76161cf0]
|
|
15
|
+
- @leafygreen-ui/lib@10.4.0
|
|
16
|
+
- @leafygreen-ui/hooks@7.7.5
|
|
17
|
+
- @leafygreen-ui/icon@11.17.0
|
|
18
|
+
- @leafygreen-ui/popover@11.0.12
|
|
19
|
+
- @leafygreen-ui/checkbox@12.0.12
|
|
20
|
+
- @leafygreen-ui/icon-button@15.0.12
|
|
21
|
+
- @leafygreen-ui/inline-definition@6.0.7
|
|
22
|
+
- @leafygreen-ui/input-option@1.0.5
|
|
23
|
+
- @leafygreen-ui/tokens@2.1.1
|
|
24
|
+
- @leafygreen-ui/typography@16.5.1
|
|
25
|
+
|
|
26
|
+
## 6.0.5
|
|
27
|
+
|
|
28
|
+
### Patch Changes
|
|
29
|
+
|
|
30
|
+
- 63b2deb0b: Upgrade button to v20.1.1
|
|
31
|
+
- Updated dependencies [63b2deb0b]
|
|
32
|
+
- @leafygreen-ui/popover@11.0.11
|
|
33
|
+
|
|
3
34
|
## 6.0.4
|
|
4
35
|
|
|
5
36
|
### Patch Changes
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { StoryMetaType } from '@leafygreen-ui/lib';
|
|
3
|
+
import { Chip } from './Chip';
|
|
4
|
+
declare const meta: StoryMetaType<typeof Chip>;
|
|
5
|
+
export default meta;
|
|
6
|
+
export declare const Generated: () => JSX.Element;
|
|
7
|
+
//# sourceMappingURL=Chip.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chip.stories.d.ts","sourceRoot":"","sources":["../../src/Chip/Chip.stories.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,QAAA,MAAM,IAAI,EAAE,aAAa,CAAC,OAAO,IAAI,CAuBpC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,SAAS,mBAAc,CAAC"}
|
package/dist/Combobox.types.d.ts
CHANGED
|
@@ -46,8 +46,8 @@ export declare const Overflow: {
|
|
|
46
46
|
};
|
|
47
47
|
export declare type Overflow = typeof Overflow[keyof typeof Overflow];
|
|
48
48
|
export declare const State: {
|
|
49
|
-
readonly error: "error";
|
|
50
49
|
readonly none: "none";
|
|
50
|
+
readonly error: "error";
|
|
51
51
|
};
|
|
52
52
|
export declare type State = typeof State[keyof typeof State];
|
|
53
53
|
export declare const SearchState: {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComboboxSize, Overflow, SearchState, State, TruncationLocation } from '../Combobox.types';
|
|
3
|
-
interface ComboboxData {
|
|
3
|
+
export interface ComboboxData {
|
|
4
4
|
multiselect: boolean;
|
|
5
5
|
size: ComboboxSize;
|
|
6
6
|
withIcons: boolean;
|
|
@@ -14,6 +14,15 @@ interface ComboboxData {
|
|
|
14
14
|
inputValue?: string;
|
|
15
15
|
popoverZIndex?: number;
|
|
16
16
|
}
|
|
17
|
+
export declare const defaultContext: {
|
|
18
|
+
multiselect: boolean;
|
|
19
|
+
size: "default";
|
|
20
|
+
withIcons: boolean;
|
|
21
|
+
disabled: boolean;
|
|
22
|
+
isOpen: boolean;
|
|
23
|
+
state: "none";
|
|
24
|
+
searchState: "unset";
|
|
25
|
+
overflow: "expand-y";
|
|
26
|
+
};
|
|
17
27
|
export declare const ComboboxContext: import("react").Context<ComboboxData>;
|
|
18
|
-
export {};
|
|
19
28
|
//# sourceMappingURL=ComboboxContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxContext.d.ts","sourceRoot":"","sources":["../../src/ComboboxContext/ComboboxContext.tsx"],"names":[],"mappings":";AAEA,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAE3B,
|
|
1
|
+
{"version":3,"file":"ComboboxContext.d.ts","sourceRoot":"","sources":["../../src/ComboboxContext/ComboboxContext.tsx"],"names":[],"mappings":";AAEA,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,sBAAsB,CAAC,EAAE,kBAAkB,CAAC;IAC5C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,cAAc;;;;;;;;;CAS1B,CAAC;AAEF,eAAO,MAAM,eAAe,uCAA8C,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { StoryMetaType } from '@leafygreen-ui/lib';
|
|
3
|
+
import { InternalComboboxGroup } from './ComboboxGroup';
|
|
4
|
+
declare const meta: StoryMetaType<typeof InternalComboboxGroup>;
|
|
5
|
+
export default meta;
|
|
6
|
+
export declare const Generated: () => JSX.Element;
|
|
7
|
+
//# sourceMappingURL=ComboboxGroup.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxGroup.stories.d.ts","sourceRoot":"","sources":["../../src/ComboboxGroup/ComboboxGroup.stories.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,QAAA,MAAM,IAAI,EAAE,aAAa,CAAC,OAAO,qBAAqB,CAiCrD,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,SAAS,mBAAc,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { StoryMetaType, StoryType } from '@leafygreen-ui/lib';
|
|
2
|
+
import { InternalComboboxOption } from './ComboboxOption';
|
|
3
|
+
declare const meta: StoryMetaType<typeof InternalComboboxOption>;
|
|
4
|
+
export default meta;
|
|
5
|
+
export declare const WithoutIcons: StoryType<typeof InternalComboboxOption>;
|
|
6
|
+
export declare const WithIcons: StoryType<typeof InternalComboboxOption>;
|
|
7
|
+
//# sourceMappingURL=ComboboxOption.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxOption.stories.d.ts","sourceRoot":"","sources":["../../src/ComboboxOption/ComboboxOption.stories.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAK9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,QAAA,MAAM,IAAI,EAAE,aAAa,CAAC,OAAO,sBAAsB,CA+BtD,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,YAAY,EAAE,SAAS,CAAC,OAAO,sBAAsB,CAEjE,CAAC;AAWF,eAAO,MAAM,SAAS,EAAE,SAAS,CAAC,OAAO,sBAAsB,CAAe,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{createContext as n,useContext as r,useRef as t,useMemo as o,useEffect as a,useCallback 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 g from"lodash/isUndefined";import h from"prop-types";import{css as m,cx as b,keyframes as v}from"@leafygreen-ui/emotion";import{useIdAllocator as y,useForwardedRef as x,useAvailableSpace as k,useDynamicRefs as w,usePrevious as E,useAutoScroll as C,useBackdropClick as L}from"@leafygreen-ui/hooks";import O,{isComponentGlyph as S}from"@leafygreen-ui/icon";import N from"@leafygreen-ui/icon-button";import D,{useDarkMode as M}from"@leafygreen-ui/leafygreen-provider";import{Theme as j,createUniqueClassName as I,keyMap as z,isComponentType as P,consoleOnce as T}from"@leafygreen-ui/lib";import{Error as F,Label as W,Description as A}from"@leafygreen-ui/typography";import X from"@leafygreen-ui/inline-definition";import{transparentize as R}from"polished";import{palette as G}from"@leafygreen-ui/palette";import{typeScales as H,transitionDuration as Z,spacing as K,hoverRing as Y,focusRing as V,fontFamilies as q,fontWeights as B}from"@leafygreen-ui/tokens";import U from"@leafygreen-ui/popover";import{leftGlyphClassName as $,InputOption as J,InputOptionContent as Q}from"@leafygreen-ui/input-option";import _ from"lodash/kebabCase";import ee from"lodash/escapeRegExp";import ne from"@leafygreen-ui/checkbox";function re(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 te(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?re(Object(r),!0).forEach((function(n){ae(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):re(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}function oe(e){return oe="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},oe(e)}function ae(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 ie(){return ie=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},ie.apply(this,arguments)}function le(e,n){if(null==e)return{};var r,t,o=function(e,n){if(null==e)return{};var r,t,o={},a=Object.keys(e);for(t=0;t<a.length;t++)r=a[t],n.indexOf(r)>=0||(o[r]=e[r]);return o}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(t=0;t<a.length;t++)r=a[t],n.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function ce(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function se(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,o,a,i,l=[],c=!0,s=!1;try{if(a=(r=r.call(e)).next,0===n){if(Object(r)!==r)return;c=!1}else for(;!(c=(t=a.call(r)).done)&&(l.push(t.value),l.length!==n);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw o}}return l}}(e,n)||de(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 ue(e){return function(e){if(Array.isArray(e))return pe(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||de(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 de(e,n){if(e){if("string"==typeof e)return pe(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)?pe(e,n):void 0}}function pe(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 fe,ge,he,me,be,ve,ye,xe,ke,we,Ee,Ce,Le,Oe,Se,Ne,De,Me,je,Ie,ze,Pe,Te,Fe,We,Ae,Xe="Input",Re="ClearButton",Ge="FirstChip",He="LastChip",Ze="MiddleChip",Ke="Combobox",Ye="Menu",Ve={XSmall:"xsmall",Small:"small",Default:"default",Large:"large"},qe={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},Be={error:"error",none:"none"},Ue={unset:"unset",error:"error",loading:"loading"};var $e,Je,Qe,_e,en,nn,rn,tn,on,an,ln,cn,sn,un,dn,pn,fn,gn,hn,mn,bn,vn,yn,xn,kn,wn,En,Cn,Ln,On,Sn,Nn,Dn,Mn,jn,In,zn,Pn,Tn,Fn,Wn,An,Xn,Rn,Gn,Hn,Zn,Kn,Yn,Vn,qn,Bn,Un,$n,Jn,Qn,_n,er=(ae(fe={},Ve.XSmall,16),ae(fe,Ve.Small,H.body1.lineHeight),ae(fe,Ve.Default,H.body1.lineHeight),ae(fe,Ve.Large,H.body2.lineHeight),fe),nr=(ae(ge={},Ve.XSmall,H.body1.fontSize),ae(ge,Ve.Small,H.body1.fontSize),ae(ge,Ve.Default,H.body1.fontSize),ae(ge,Ve.Large,H.body2.fontSize),ge),rr=(ae(he={},Ve.XSmall,1),ae(he,Ve.Small,0),ae(he,Ve.Default,2),ae(he,Ve.Large,4),he),tr=function(e){return er[e]+2*rr[e]},or=m(me||(me=ce(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n border-radius: 4px;\n"]))),ar=function(e){return m(be||(be=ce(["\n font-size: ","px;\n line-height: ","px;\n"])),nr[e],er[e])},ir=(ae(xe={},j.Light,m(ve||(ve=ce(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),G.black,G.gray.light2,G.blue.light2)),ae(xe,j.Dark,m(ye||(ye=ce(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),G.gray.light2,G.gray.dark2,G.blue.dark2)),xe),lr=m(ke||(ke=ce(["\n cursor: not-allowed;\n pointer-events: none;\n"]))),cr=(ae(Ce={},j.Light,m(we||(we=ce(["\n color: ",";\n background-color: ",";\n "])),G.gray.base,G.gray.light3)),ae(Ce,j.Dark,m(Ee||(Ee=ce(["\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ",";\n "])),G.gray.dark2,G.gray.dark4,G.gray.dark2)),Ce),sr=(ae(De={},Ve.XSmall,m(Le||(Le=ce(["\n padding-inline-start: 6px;\n padding-inline-end: 2px;\n padding-block: ","px;\n "])),rr[Ve.XSmall])),ae(De,Ve.Small,m(Oe||(Oe=ce(["\n padding-inline-start: 6px;\n padding-inline-end: 2px;\n padding-block: ","px;\n "])),rr[Ve.Small])),ae(De,Ve.Default,m(Se||(Se=ce(["\n padding-inline-start: 6px;\n padding-inline-end: 2px;\n padding-block: ","px;\n "])),rr[Ve.Default])),ae(De,Ve.Large,m(Ne||(Ne=ce(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),rr[Ve.Large])),De),ur=m(Me||(Me=ce(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n outline: none;\n border: none;\n background-color: transparent;\n cursor: pointer;\n transition: background-color ","ms ease-in-out;\n padding: 0 2px;\n"])),Z.faster),dr=function(e){return m(je||(je=ce(["\n height: ","px;\n"])),tr(e))},pr=(ae(Pe={},j.Light,m(Ie||(Ie=ce(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),G.gray.dark2,G.black,G.gray.light1)),ae(Pe,j.Dark,m(ze||(ze=ce(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),G.gray.light1,G.gray.light3,G.gray.dark1)),Pe),fr=m(Te||(Te=ce(["\n cursor: not-allowed;\n &:hover {\n color: inherit;\n background-color: unset;\n }\n"]))),gr=(ae(Ae={},j.Light,m(Fe||(Fe=ce(["\n color: ",";\n "])),G.gray.light1)),ae(Ae,j.Dark,m(We||(We=ce(["\n color: ",";\n "])),G.gray.dark2)),Ae),hr=tr,mr=(ae($e={},Ve.XSmall,22),ae($e,Ve.Small,28),ae($e,Ve.Default,36),ae($e,Ve.Large,48),$e),br=function(e){return(mr[e]-hr(e)-2)/2},vr=(ae(Je={},Ve.XSmall,{y:br(Ve.XSmall),xLeftWithChip:1,xLeftWithoutChip:10,xRight:4}),ae(Je,Ve.Small,{y:br(Ve.Small),xLeftWithChip:4,xLeftWithoutChip:10,xRight:8}),ae(Je,Ve.Default,{y:br(Ve.Default),xLeftWithChip:6,xLeftWithoutChip:12,xRight:12}),ae(Je,Ve.Large,{y:br(Ve.Large),xLeftWithChip:K[2]-1,xLeftWithoutChip:K[2]-1,xRight:K[2]-1}),Je),yr=K[3],xr=I("combobox-chip"),kr=function(e){return m(Qe||(Qe=ce(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),q.default,nr[e]+2*vr[e].xLeftWithChip+yr+2)},wr=m(_e||(_e=ce(["\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],Z.default,Z.default),Er=(ae(rn={},j.Light,m(en||(en=ce(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),G.gray.dark3,G.white,G.gray.base,Y[j.Light].gray)),ae(rn,j.Dark,m(nn||(nn=ce(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),G.gray.light2,G.gray.dark4,G.gray.base,Y[j.Dark].gray)),rn),Cr=function(e,n){return m(tn||(tn=ce(["\n padding-top: ","px;\n padding-bottom: ","px;\n padding-left: ",";\n padding-right: ","px;\n"])),vr[e].y,vr[e].y,"".concat(n?vr[e].xLeftWithChip:vr[e].xLeftWithoutChip,"px"),vr[e].xRight)},Lr=(ae(ln={},j.Light,m(on||(on=ce(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),G.gray.dark1,G.gray.light2,G.gray.light1)),ae(ln,j.Dark,m(an||(an=ce(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),G.gray.dark1,G.gray.dark3,G.gray.dark2)),ln),Or=(ae(un={},j.Light,m(cn||(cn=ce(["\n border-color: ",";\n "])),G.red.base)),ae(un,j.Dark,m(sn||(sn=ce(["\n border-color: ",";\n "])),G.red.light1)),un),Sr=(ae(fn={},j.Light,m(dn||(dn=ce(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),V[j.Light].input)),ae(fn,j.Dark,m(pn||(pn=ce(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),V[j.Dark].input)),fn),Nr=m(gn||(gn=ce(["\n display: flex;\n align-items: center;\n"]))),Dr=(ae(yn={},Ve.XSmall,m(hn||(hn=ce(["\n gap: ","px;\n "])),K[1])),ae(yn,Ve.Small,m(mn||(mn=ce(["\n gap: ","px;\n "])),K[2])),ae(yn,Ve.Default,m(bn||(bn=ce(["\n gap: ","px;\n "])),K[2])),ae(yn,Ve.Large,m(vn||(vn=ce(["\n gap: ","px;\n "])),K[2])),yn),Mr=function(e){var n=e.overflow,r=e.size,t=m(xn||(xn=ce(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case qe.scrollX:return m(kn||(kn=ce(["\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,hr(r),xr);case qe.expandY:return m(wn||(wn=ce(["\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,hr(r),3*tr(r),4)}},jr=m(En||(En=ce(["\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]),Ir=(ae(On={},j.Light,m(Cn||(Cn=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.dark1)),ae(On,j.Dark,m(Ln||(Ln=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.light1)),On),zr=(ae(Dn={},j.Light,m(Sn||(Sn=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.dark1)),ae(Dn,j.Dark,m(Nn||(Nn=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.dark1)),Dn),Pr=function(e){return m(Mn||(Mn=ce(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n"])),hr(e),nr[e],er[e],nr[e])},Tr=function(e){return m(jn||(jn=ce(["\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")},Fr=function(e,n){var r,t=null!==(r=null==n?void 0:n.length)&&void 0!==r?r:0;return m(In||(In=ce(["\n width: ","px;\n max-width: 100%;\n "])),t*nr[e])},Wr=m(zn||(zn=ce(["\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"])),yr/2),Ar=m(Pn||(Pn=ce(["\n height: ","px;\n width: ","px;\n"])),yr,yr),Xr=(ae(Wn={},j.Light,m(Tn||(Tn=ce(["\n color: ",";\n "])),G.red.base)),ae(Wn,j.Dark,m(Fn||(Fn=ce(["\n color: ",";\n "])),G.red.light1)),Wn),Rr=function(e){return m(An||(An=ce(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n"])),nr[e],er[e],vr[e].y)},Gr=m(Xn||(Xn=ce(["\n margin-bottom: ","px;\n display: flex;\n flex-direction: column;\n"])),K[1]),Hr=m(Rn||(Rn=ce(["\n font-size: ","px;\n line-height: ","px;\n"])),H.large.fontSize,H.large.lineHeight),Zr=(ae(Zn={},j.Light,m(Gn||(Gn=ce(["\n ::after {\n box-shadow: 0px 0px 7px 5px ",";\n }\n "])),R(.85,G.black))),ae(Zn,j.Dark,m(Hn||(Hn=ce(["\n ::after {\n width: 95%;\n box-shadow: 0px -7px 12px 5px rgb(0 0 0 / 50%);\n }\n "])))),Zn),Kr=(ae(Kn={},j.Light,G.red.base),ae(Kn,j.Dark,G.red.light1),Kn),Yr=(ae(Yn={},j.Light,G.gray.dark2),ae(Yn,j.Dark,G.gray.light1),Yn),Vr=(ae(Vn={},j.Light,G.gray.base),ae(Vn,j.Dark,G.gray.dark2),Vn),qr=n({multiselect:!1,size:Ve.Default,withIcons:!1,disabled:!1,isOpen:!1,state:Be.none,searchState:Ue.unset,overflow:qe.expandY}),Br=e.forwardRef((function(n,i){var l=n.displayName,c=n.isFocused,s=n.onRemove,u=n.onFocus,d=M(),p=d.darkMode,f=d.theme,g=r(qr),h=g.size,m=g.disabled,v=g.overflow,y=g.chipTruncationLocation,x=void 0===y?"end":y,k=g.chipCharacterLimit,w=void 0===k?12:k,E=g.popoverZIndex,C=v!==qe.scrollX&&!!w&&!!x&&"none"!==x&&l.length>w,L=t(null),S=o((function(){if(C){var e=w-3;switch(x){case"start":return"…"+l.substring(l.length-e).trim();case"middle":return l.substring(0,e/2).trim()+"…"+l.substring(l.length-e/2).trim();case"end":return l.substring(0,e).trim()+"…";default:return l}}return!1}),[w,x,l,C]);a((function(){var e;c&&!m&&(null==L||null===(e=L.current)||void 0===e||e.focus())}),[m,i,c]);return e.createElement("span",{role:"option","aria-selected":c,"data-testid":"lg-combobox-chip",ref:i,className:b(xr,or,ir[f],ar(h),ae({},b(cr[f],lr),m)),onClick:function(e){var n;null!==(n=L.current)&&void 0!==n&&n.contains(e.target)||u()},onKeyDown:function(e){m||e.keyCode!==z.Delete&&e.keyCode!==z.Backspace&&e.keyCode!==z.Enter&&e.keyCode!==z.Space||s()},tabIndex:-1},e.createElement("span",{className:b(sr[h])},S?e.createElement(X,{darkMode:p,definition:l,align:"bottom",popoverZIndex:E},S):l),e.createElement("button",{"aria-label":"Deselect ".concat(l),"aria-disabled":m,disabled:m,ref:L,className:b(ur,pr[f],dr(h),ae({},b(gr[f],fr),m)),onClick:function(){m||s()}},e.createElement(O,{glyph:"X"})))}));Br.displayName="Chip";var Ur,$r,Jr,Qr,_r,et,nt,rt,tt,ot,at,it,lt,ct,st,ut,dt,pt=(ae(Un={},j.Light,m(qn||(qn=ce(["\n padding-top: ","px;\n "])),K[2])),ae(Un,j.Dark,m(Bn||(Bn=ce(["\n padding-top: ","px;\n "])),K[2])),Un),ft=m($n||($n=ce(["\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"])),B.bold),gt=(ae(_n={},j.Light,m(Jn||(Jn=ce(["\n color: ",";\n "])),G.gray.dark1)),ae(_n,j.Dark,m(Qn||(Qn=ce(["\n color: ",";\n "])),G.gray.light1)),_n);function ht(n){var r=n.label,t=n.className,o=n.children,a=M().theme,i=y({prefix:"combobox-group"});return e.Children.count(o)>0?e.createElement("div",{className:b(pt[a],t)},e.createElement("div",{className:b(ft,gt[a]),id:i},r),e.createElement("div",{role:"group","aria-labelledby":i},o)):e.createElement(e.Fragment,null)}function mt(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}mt.displayName="ComboboxGroup",mt.propTypes={className:h.string,children:h.node.isRequired,label:h.string.isRequired};var bt,vt=(ae(Ur={},Ve.XSmall,{x:12,y:8}),ae(Ur,Ve.Small,{x:12,y:8}),ae(Ur,Ve.Default,{x:12,y:8}),ae(Ur,Ve.Large,{x:12,y:8}),Ur),yt=function(e){return er[e]+2*vt[e].y},xt=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return m($r||($r=ce(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},kt=(ae(_r={},j.Light,m(Jr||(Jr=ce(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),R(.85,G.black),G.gray.light2)),ae(_r,j.Dark,m(Qr||(Qr=ce(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),R(.85,G.black),G.gray.dark3)),_r),wt=m(et||(et=ce(["\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),Et=(ae(tt={},j.Light,m(nt||(nt=ce(["\n color: ",";\n background-color: ",";\n "])),G.black,G.white)),ae(tt,j.Dark,m(rt||(rt=ce(["\n color: ",";\n background-color: ",";\n "])),G.gray.light1,G.gray.dark3)),tt),Ct=m(ot||(ot=ce(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),Lt=m(at||(at=ce(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),Ot=(ae(ct={},j.Light,m(it||(it=ce(["\n color: ",";\n "])),G.gray.dark3)),ae(ct,j.Dark,m(lt||(lt=ce(["\n color: ",";\n "])),G.gray.light3)),ct),St=function(e){return m(st||(st=ce(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px ","px;\n"])),nr[e],er[e],vt[e].y,vt[e].x)},Nt=v(ut||(ut=ce(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Dt=m(dt||(dt=ce(["\n animation: "," 1.5s linear infinite;\n"])),Nt),Mt=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],jt=e.forwardRef((function(n,t){var a=n.children,i=n.id,l=n.refEl,c=n.labelId,s=n.menuWidth,u=n.searchLoadingMessage,d=n.searchErrorMessage,p=n.searchEmptyMessage,f=le(n,Mt),h=M(),v=h.darkMode,y=h.theme,w=r(qr),E=w.disabled,C=w.size,L=w.isOpen,S=w.searchState,N=x(t,null),D=k(l),j=g(D)?"unset":"".concat(Math.min(D,256),"px"),I=o((function(){var n=b(Lt,Ot[y],St(C)),r=b(Lt,St(C));switch(S){case"loading":return e.createElement("span",{className:n},e.createElement(O,{glyph:"Refresh",color:v?G.blue.light1:G.blue.base,className:Dt}),u);case"error":return e.createElement(F,{className:r},e.createElement(O,{glyph:"Warning",color:v?G.red.light1:G.red.base}),e.createElement("span",null,d));default:return a&&"object"===oe(a)&&"length"in a&&a.length>0?e.createElement("ul",{className:Ct},a):e.createElement("span",{className:n},p)}}),[y,C,S,v,u,d,a,p]);return e.createElement(U,ie({active:L&&!E,spacing:4,align:"bottom",justify:"middle",refEl:l,adjustOnMutation:!0,className:b(xt(s),kt[y])},f),e.createElement("div",{ref:N,id:i,role:"listbox","aria-labelledby":c,"aria-expanded":L,className:b(wt,Et[y],m(bt||(bt=ce(["\n max-height: ",";\n "])),j)),onMouseDownCapture:function(e){return e.preventDefault()}},I))}));jt.displayName="ComboboxMenu";var It,zt,Pt,Tt,Ft,Wt,At,Xt,Rt,Gt,Ht,Zt,Kt,Yt,Vt,qt,Bt,Ut,$t,Jt,Qt,_t,eo,no,ro,to,oo=function(e){var n=e.scrollHeight;return e.scrollTop<n-e.clientHeight},ao=function(e){var n,r=e.value,t=e.displayName;return{value:null!=r?r:_(t),displayName:null!==(n=null!=t?t:r)&&void 0!==n?n:""}},io=function n(r){return e.Children.toArray(r).reduce((function(e,r){if(P(r,"ComboboxOption")){var t=ao(r.props),o=t.value,a=t.displayName,i=r.props,l=i.glyph,c=i.disabled;return[].concat(ue(e),[{value:o,displayName:a,isDisabled:!!c,hasGlyph:!!l}])}if(P(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(ue(e),ue(n(s)))}}),[])},lo=function(e,n){if(e)return n.find((function(n){return n.value===e}))},co=function(e,n){var r,t;return e?null!==(r=null===(t=lo(e,n))||void 0===t?void 0:t.displayName)&&void 0!==r?r:e:""},so=function(e){return m(It||(It=ce(["\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"])),nr[e],er[e],yt(e),vt[e].y,vt[e].x,K[1],yt(e))},uo=(ae(Wt={},Ve.XSmall,m(zt||(zt=ce(["\n min-width: ","px;\n "])),K[3])),ae(Wt,Ve.Small,m(Pt||(Pt=ce(["\n min-width: ","px;\n "])),K[3])),ae(Wt,Ve.Default,m(Tt||(Tt=ce(["\n min-width: ","px;\n "])),K[3])),ae(Wt,Ve.Large,m(Ft||(Ft=ce(["\n min-width: ","px;\n "])),K[4])),Wt),po=m(At||(At=ce(["\n pointer-events: none;\n gap: 0;\n\n label {\n gap: 0;\n align-items: center;\n }\n"])));m(Xt||(Xt=ce(["\n pointer-events: none;\n"])));var fo=function(e){return m(Rt||(Rt=ce(["\n font-weight: ",";\n"])),e?B.bold:B.regular)},go=(ae(Zt={},j.Light,m(Gt||(Gt=ce(["\n color: ",";\n "])),G.gray.dark1)),ae(Zt,j.Dark,m(Ht||(Ht=ce(["\n color: ",";\n "])),G.gray.base)),Zt),ho=(ae(Vt={},j.Light,m(Kt||(Kt=ce(["\n color: ",";\n "])),G.blue.dark1)),ae(Vt,j.Dark,m(Yt||(Yt=ce(["\n color: ",";\n "])),G.blue.light3)),Vt),mo=(ae(Ut={},j.Light,m(qt||(qt=ce(["\n color: ",";\n "])),G.gray.light1)),ae(Ut,j.Dark,m(Bt||(Bt=ce(["\n color: ",";\n "])),G.gray.dark1)),Ut),bo=(ae(Qt={},j.Light,m($t||($t=ce(["\n color: ",";\n "])),G.blue.base)),ae(Qt,j.Dark,m(Jt||(Jt=ce(["\n color: ",";\n "])),G.blue.light1)),Qt),vo=(ae(no={},j.Light,m(_t||(_t=ce(["\n color: ",";\n "])),G.gray.light1)),ae(no,j.Dark,m(eo||(eo=ce(["\n color: ",";\n "])),G.gray.dark1)),no),yo=m(ro||(ro=ce(["\n ."," {\n align-self: baseline;\n }\n"])),$),xo=m(to||(to=ce(["\n ."," {\n height: 28px;\n }\n"])),$),ko=["glyph","isSelected","displayName","isFocused","setSelected","className","description","value","onClick","disabled"],wo=e.forwardRef((function(n,t){var a,l=n.glyph,c=n.isSelected,s=n.displayName,u=n.isFocused,d=n.setSelected,p=n.className,f=n.description,g=n.value,h=n.onClick,m=n.disabled,v=void 0!==m&&m,k=le(n,ko),w=M(),E=w.darkMode,C=w.theme,L=r(qr),N=L.multiselect,D=L.size,j=L.withIcons,I=L.inputValue,z=x(t,null),P=y({prefix:"combobox-option-text"}),T=i((function(e){e.stopPropagation(),v||(d(),null==h||h(e,g))}),[v,h,d,g]),F=o((function(){return function(n){var r,t=n.withIcons,o=n.isSelected,a=n.glyph,i=n.optionTextId,l=n.disabled,c=n.darkMode,s=n.size,u=n.multiselect,d=n.theme,p=n.isFocused;a&&!S(a)&&console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",a);var f=a&&S(a)?e.cloneElement(a,te(te({},a.props),{},{className:b(go[d],(r={},ae(r,ho[d],p),ae(r,mo[d],l),r),a.props.className)})):e.createElement(e.Fragment,null),g=e.createElement(ne,{"aria-labelledby":i,checked:o,tabIndex:-1,disabled:l,darkMode:c,className:po}),h=e.createElement(O,{glyph:"Checkmark",className:b(uo[s],bo[d],ae({},vo[d],l))});return{leftGlyph:u?t?f:g:t?f:o?h:null,rightGlyph:u?t&&g:t&&o&&h}}({withIcons:j,isSelected:c,glyph:l,theme:C,darkMode:E,size:D,disabled:v,multiselect:N,optionTextId:P,isFocused:u})}),[E,v,l,c,N,P,D,C,j,u]),W=F.leftGlyph,A=F.rightGlyph,X=N&&!j;return e.createElement(J,ie({},k,{as:"li",ref:z,highlighted:u,disabled:v,"aria-label":s,darkMode:E,className:b(so(D),(a={},ae(a,yo,X),ae(a,xo,X&&D===Ve.Large),a),p),onClick:T,onKeyDown:T}),e.createElement(Q,{leftGlyph:W,rightGlyph:A,description:f},e.createElement("span",{id:P,className:fo(c)},function(n,r,t){if(r&&t){var o=ee(r),a=new RegExp(o,"gi"),i=n.matchAll(a);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],g=f.length,h=p+f+g,m=new Array(g).fill("");m[0]=e.createElement(t,{key:h},f),l.splice.apply(l,[p,g].concat(ue(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 Eo(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}wo.displayName="ComboboxOption",Eo.displayName="ComboboxOption",Eo.propTypes={displayName:h.string,value:h.string,glyph:h.node,disabled:h.bool,className:h.string,description:h.string,onClick:h.func};var Co=["children","label","description","placeholder","aria-label","disabled","size","darkMode","state","errorMessage","searchState","searchEmptyMessage","searchErrorMessage","searchLoadingMessage","filteredOptions","onFilter","clearable","onClear","overflow","multiselect","initialValue","onChange","value","chipTruncationLocation","chipCharacterLimit","className","usePortal","portalClassName","portalContainer","scrollContainer","popoverZIndex"],Lo=["className","glyph","disabled"];function Oo(n){var r,h,m,v=n.children,x=n.label,k=n.description,S=n.placeholder,j=void 0===S?"Select":S,I=n["aria-label"],F=n.disabled,X=void 0!==F&&F,R=n.size,G=void 0===R?Ve.Default:R,H=n.darkMode,Z=n.state,K=void 0===Z?"none":Z,Y=n.errorMessage,V=n.searchState,q=void 0===V?"unset":V,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,ce=void 0===re||re,ue=n.onClear,de=n.overflow,pe=void 0===de?qe.expandY:de,fe=n.multiselect,ge=void 0!==fe&&fe,he=n.initialValue,me=n.onChange,be=n.value,ve=n.chipTruncationLocation,ye=n.chipCharacterLimit,xe=void 0===ye?12:ye,ke=n.className,we=n.usePortal,Ee=void 0===we||we,Ce=n.portalClassName,Le=n.portalContainer,Oe=n.scrollContainer,Se=n.popoverZIndex,Ne=le(n,Co),De=M(H),Me=De.darkMode,je=De.theme,Ie=w({prefix:"option"}),ze=w({prefix:"chip"}),Pe=y({prefix:"combobox-input"}),Te=y({prefix:"combobox-label"}),Fe=y({prefix:"combobox-menu"}),We=t(null),Ae=t(null),Ue=t(null),$e=t(null),Je=t(null),Qe=se(l(!1),2),_e=Qe[0],en=Qe[1],nn=E(_e),rn=se(l(null),2),tn=rn[0],on=rn[1],an=se(l(null),2),ln=an[0],cn=an[1],sn=E(ln),un=se(l(""),2),dn=un[0],pn=un[1],fn=E(dn),gn=se(l(null),2),hn=gn[0],mn=gn[1],bn=se(l(!1),2),vn=bn[0],yn=bn[1],xn=!p(ln)&&(u(ln)&&ln.length>0||f(ln)),kn=ge&&u(ln)&&ln.length>0?void 0:j,wn=function(){return en(!1)},En=function(){return en(!0)},Cn=o((function(){return io(v)}),[v]),Ln=i((function(e){return!ge||"string"!=typeof e&&"number"!=typeof e?!ge&&u(e)&&T.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):T.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(oe(e),' value: "').concat(e,'"')),ge&&u(e)}),[ge]),On=i((function(e){!X&&$e&&$e.current&&($e.current.focus(),g(e)||$e.current.setSelectionRange(e,e))}),[X]),Sn=i((function(e){if(Ln(ln)){var n=c(ln);p(e)?n.length=0:ln.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),pn("")),cn(n),null==me||me(n)}else{var r=e;cn(r),null==me||me(r)}}),[Ln,me,ln]),Nn=i((function(e){return Ln(ln)?ln.includes(e):e===ln}),[Ln,ln]),Dn=i((function(e){var n,r,t,o,a=(r=Cn,(n=e)?null!==(t=null===(o=r.find((function(e){return e.displayName===n})))||void 0===o?void 0:o.value)&&void 0!==t?t:n:"");return Nn(a)}),[Cn,Nn]),Mn=i((function(e){var n="string"==typeof e?e:e.value;return ee&&ee.length>0?ee.includes(n):!!Dn(dn)||("string"==typeof e?co(n,Cn):e.displayName).toLowerCase().includes(dn.toLowerCase())}),[ee,Dn,dn,Cn]),jn=o((function(){return Cn.filter(Mn)}),[Cn,Mn]),In=i((function(e){return!!e&&!!Cn.find((function(n){return n.value===e}))}),[Cn]),zn=i((function(e){return jn?jn.findIndex((function(n){return n.value===e})):-1}),[jn]),Pn=i((function(e){if(jn&&jn.length>=e){var n=jn[e];return n?n.value:void 0}}),[jn]),Tn=i((function(){return Ln(ln)?ln.findIndex((function(e){var n,r;return null===(n=ze(e))||void 0===n||null===(r=n.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[ze,Ln,ln]),Fn=se(l(),2),Wn=Fn[0],An=Fn[1],Xn=i((function(e){var n,r=null!==(n=null==jn?void 0:jn.length)&&void 0!==n?n:0,t=r-1>0?r-1:0,o=zn(tn);switch(e&&_e&&(mn(null),On()),e){case"next":var a=Pn(o+1<r?o+1:0);on(null!=a?a:null);break;case"prev":var i=Pn(o-1>=0?o-1:t);on(null!=i?i:null);break;case"last":var l=Pn(t);on(null!=l?l:null);break;default:var c=Pn(0);on(null!=c?c:null)}}),[tn,zn,Pn,_e,On,null==jn?void 0:jn.length]),Rn=i((function(e,n){if(Ln(ln))switch(e){case"next":var r=null!=n?n:Tn(),t=r+1<ln.length?r+1:ln.length-1,o=ln[t];mn(o);break;case"prev":var a=null!=n?n:Tn(),i=a>0?a-1:a<0?ln.length-1:0,l=ln[i];mn(l);break;case"first":var c=ln[0];mn(c);break;case"last":var s=ln[ln.length-1];mn(s);break;default:mn(null)}}),[Tn,Ln,ln]),Gn=i((function(e,n){switch(e&&on(null),e){case"right":switch(Wn){case Xe:var r,t,o;if((null===(r=$e.current)||void 0===r?void 0:r.selectionEnd)===(null===(t=$e.current)||void 0===t?void 0:t.value.length))null===(o=Ae.current)||void 0===o||o.focus();break;case Ge:case Ze:case He:if(Wn===He||1===(null==ln?void 0:ln.length)){On(0),Rn(null),n.preventDefault();break}Rn("next")}break;case"left":switch(Wn){case Re:var a;n.preventDefault(),On(null==$e||null===(a=$e.current)||void 0===a?void 0:a.value.length);break;case Xe:case Ze:case He:if(Ln(ln)){var i;if(Wn===Xe&&0!==(null===(i=$e.current)||void 0===i?void 0:i.selectionStart))break;Rn("prev")}}break;default:Rn(null)}}),[Wn,Ln,ln,On,Rn]);a((function(){dn!==fn&&Xn("first")}),[dn,_e,fn,Xn]),C(tn?Ie(tn):void 0,Je);var Hn=i((function(n){if(P(n,"ComboboxOption")){var r=ao(n.props),t=r.value,o=r.displayName;if(Mn(t)){var a=n.props,i=a.className,l=a.glyph,c=a.disabled,s=le(a,Lo),u=Cn.findIndex((function(e){return e.value===t})),d=tn===t,p=Ln(ln)?ln.includes(t):ln===t,f=Ie(t);return e.createElement(wo,ie({},s,{value:t,displayName:o,isFocused:d,isSelected:p,disabled:c,setSelected:function(){on(t),Sn(t),On(),t===ln&&wn()},glyph:l,className:i,index:u,ref:f}))}}else if(P(n,"ComboboxGroup")){var g=e.Children.map(n.props.children,Hn);if(g&&(null==g?void 0:g.length)>0)return e.createElement(ht,{label:n.props.label,className:n.props.className},e.Children.map(g,Hn))}}),[Cn,Ie,tn,Ln,ln,On,Mn,Sn]),Zn=o((function(){return e.Children.map(v,Hn)}),[v,Hn]),Kn=o((function(){if(Ln(ln))return ln.filter(In).map((function(n,r){var t=co(n,Cn),o=hn===n,a=ze(n),i=r>=ln.length-1;return e.createElement(Br,{key:n,displayName:t,isFocused:o,onRemove:function(){i?(On(),Rn(null)):Rn("next",r),Sn(n)},onFocus:function(){mn(n)},ref:a})}))}),[Ln,ln,In,Cn,hn,ze,Sn,On,Rn]),Yn=o((function(){return Cn.some((function(e){return e.hasGlyph}))}),[Cn]),Vn=i((function(){if(!Ln(ln)&&ln===sn){var e=jn.find((function(e){return e.displayName===dn||e.value===dn}));if(e&&!be)cn(e.value);else{var n,r=null!==(n=co(ln,Cn))&&void 0!==n?n:"";pn(r)}}}),[Cn,dn,Ln,sn,ln,be,jn]),qn=i((function(){if(xn){if(Ln(ln))rr(pe);else if(!Ln(ln)){var e,n=null!==(e=co(ln,Cn))&&void 0!==e?e:"";pn(n),wn()}}else pn("")}),[xn,Cn,Ln,ln,pe]);a((function(){if(he)if(u(he)){var e,n=null!==(e=he.filter((function(e){return In(e)})))&&void 0!==e?e:[];cn(n)}else In(he)&&cn(he);else cn(function(e){return e?[]:null}(ge))}),[]),a((function(){if(!g(be)&&be!==fn)if(p(be))cn(null);else if(Ln(be)){var e=be.filter(In);cn(e)}else cn(In(be)?be:null)}),[Ln,In,fn,be]),a((function(){d(ln,sn)||qn()}),[qn,sn,ln]),a((function(){!_e&&nn&&Vn()}),[_e,nn,Vn]);var Bn=se(l(0),2),Un=Bn[0],$n=Bn[1];a((function(){var e,n;$n(null!==(e=null===(n=We.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[We,_e,tn,ln]);L(wn,[Je,We],_e);var Jn=Ln(ln)&&!!ln.length,Qn=s((function(e){yn(oo(e.target))}),50,{leading:!0}),_n=i((function(e){pe===qe.expandY&&Qn(e)}),[Qn,pe]);a((function(){Ue.current&&yn(oo(Ue.current))}),[]);var er,nr=te({popoverZIndex:Se},Ee?{usePortal:Ee,portalClassName:Ce,portalContainer:Le,scrollContainer:Oe}:{usePortal:Ee});return e.createElement(D,{darkMode:Me},e.createElement(qr.Provider,{value:{multiselect:ge,size:G,withIcons:Yn,disabled:X,isOpen:_e,state:K,searchState:q,chipTruncationLocation:ve,chipCharacterLimit:xe,inputValue:dn,overflow:pe,popoverZIndex:Se}},e.createElement("div",ie({className:b(kr(G),ke)},Ne),(x||k)&&e.createElement("div",{className:Gr},x&&e.createElement(W,{id:Te,htmlFor:Pe,darkMode:Me,disabled:X,className:b(ae({},Hr,G===Ve.Large))},x),k&&e.createElement(A,{darkMode:Me,disabled:X,className:b(ae({},Hr,G===Ve.Large))},k)),e.createElement("div",{ref:We,role:"combobox","aria-expanded":_e,"aria-controls":Fe,"aria-owns":Fe,tabIndex:-1,onMouseDown:function(e){X&&e.preventDefault()},onClick:function(e){if(e.target!==$e.current){var n=0;if($e.current)n=e.nativeEvent.offsetX>$e.current.offsetLeft+$e.current.clientWidth?dn.length:0;On(n)}En()},onFocus:function(e){rr(pe),An(function(e){var n,r,t,o;if(!e)return;if(null!==(n=$e.current)&&void 0!==n&&n.contains(e))return Xe;if(null!==(r=Ae.current)&&void 0!==r&&r.contains(e))return Re;var a=Ln(ln)?ln.findIndex((function(n){var r,t;return null===(r=ze(n))||void 0===r||null===(t=r.current)||void 0===t?void 0:t.contains(e)})):-1;if(Ln(ln)){if(0===a)return Ge;if(a===ln.length-1)return He;if(a>0)return Ze}if(null!==(t=Je.current)&&void 0!==t&&t.contains(e))return Ye;if(null!==(o=We.current)&&void 0!==o&&o.contains(e))return Ke}(e.target))},onKeyDown:function(e){var n,r,t=null===(n=Je.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(r=We.current)||void 0===r?void 0:r.contains(document.activeElement))||t){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.keyCode){case z.Tab:switch(Wn){case"Input":xn||(wn(),Xn("first"),Rn(null));break;case"LastChip":Rn(null)}break;case z.Escape:wn(),Xn("first");break;case z.Enter:Wn!==Xe||p(tn)||function(e){if("string"==typeof e){var n=lo(e,Cn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(tn)?Wn===Re&&(Sn(null),On()):Sn(tn);break;case z.Backspace:var o;if(Ln(ln))"Input"===Wn&&0===(null===(o=$e.current)||void 0===o?void 0:o.selectionStart)&&Rn("last");En();break;case z.ArrowDown:_e?(e.preventDefault(),Xn("next")):En();break;case z.ArrowUp:_e?(e.preventDefault(),Xn("prev")):En();break;case z.ArrowRight:Gn("right",e);break;case z.ArrowLeft:Gn("left",e);break;default:_e||En()}}},onTransitionEnd:function(){var e,n;$n(null!==(e=null===(n=We.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:b(wr,Er[je],Cr(G,Jn),(r={},ae(r,Lr[je],X),ae(r,Or[je],K===Be.error),ae(r,Sr[je],(er=Xe,er===Wn)),ae(r,Zr[je],vn),r))},e.createElement("div",{onScroll:_n,ref:Ue,className:Mr({size:G,overflow:pe})},Kn,e.createElement("input",{"aria-label":null!=I?I:x,"aria-autocomplete":"list","aria-controls":Fe,"aria-labelledby":Te,ref:$e,id:Pe,className:b(jr,Pr(G),Ir[je],Tr(_e),(h={},ae(h,Fr(G,dn),Ln(ln)),ae(h,zr[je],X),h)),placeholder:kn,disabled:null!=X?X:void 0,onChange:function(e){var n=e.target.value;pn(n),null==ne||ne(n)},value:dn,autoComplete:"off"})),e.createElement("div",{className:b(Nr,Dr[G])},"error"===K&&e.createElement(O,{glyph:"Warning",fill:Kr[je],className:Ar}),ce&&xn&&!X&&e.createElement(N,{"aria-label":"Clear selection","aria-disabled":X,disabled:X,ref:Ae,onClick:function(e){X||(e.stopPropagation(),Sn(null),null==ue||ue(e),null==ne||ne(""),On())},onFocus:function(){on(null)},className:b(Wr),darkMode:Me},e.createElement(O,{glyph:"XWithCircle"})),e.createElement(O,{glyph:"CaretDown",className:Ar,fill:b((m={},ae(m,Yr[je],!X),ae(m,Vr[je],X),m))}))),"error"===K&&Y&&e.createElement("div",{className:b(Xr[je],Rr(G))},Y),e.createElement(jt,ie({id:Fe,labelId:Te,refEl:We,ref:Je,menuWidth:Un,searchLoadingMessage:_,searchErrorMessage:J,searchEmptyMessage:U},nr),Zn))));function rr(e){Ue&&Ue.current&&(e===qe.scrollX&&(Ue.current.scrollLeft=Ue.current.scrollWidth),e===qe.expandY&&(Ue.current.scrollTop=Ue.current.scrollHeight))}}Oo.propTypes={multiselect:h.bool,value:h.oneOfType([h.string,h.arrayOf(h.string)]),initialValue:h.oneOfType([h.string,h.arrayOf(h.string)]),overflow:h.oneOf(Object.values(qe)),darkMode:h.bool,label:h.string,"aria-label":h.string,children:h.node,onChange:h.func,chipCharacterLimit:h.number,chipTruncationLocation:h.oneOf(Object.values({start:"start",middle:"middle",end:"end",none:"none"})),onClear:h.func,onFilter:h.func,clearable:h.bool,searchLoadingMessage:h.string,searchErrorMessage:h.string,searchEmptyMessage:h.string,searchState:h.oneOf(Object.values(Ue)),errorMessage:h.string,state:h.oneOf(Object.values(Be)),size:h.oneOf(Object.values(Ve)),disabled:h.bool,description:h.string,placeholder:h.string,filteredOptions:h.arrayOf(h.string),popoverZIndex:h.number,usePortal:h.bool,scrollContainer:h.elementType,portalContainer:h.elementType,portalClassName:h.string};export{Oo as Combobox,mt as ComboboxGroup,Eo as ComboboxOption};
|
|
1
|
+
import e,{createContext as n,useContext as r,useRef as t,useMemo as o,useEffect as a,useCallback 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 g from"lodash/isUndefined";import h from"prop-types";import{css as m,cx as b,keyframes as v}from"@leafygreen-ui/emotion";import{useIdAllocator as y,useForwardedRef as x,useAvailableSpace as k,useDynamicRefs as w,usePrevious as E,useAutoScroll as C,useBackdropClick as L}from"@leafygreen-ui/hooks";import O,{isComponentGlyph as S}from"@leafygreen-ui/icon";import N from"@leafygreen-ui/icon-button";import D,{useDarkMode as M}from"@leafygreen-ui/leafygreen-provider";import{Theme as j,createUniqueClassName as I,keyMap as z,isComponentType as P,consoleOnce as T}from"@leafygreen-ui/lib";import{Error as F,Label as W,Description as A}from"@leafygreen-ui/typography";import X from"@leafygreen-ui/inline-definition";import{transparentize as R}from"polished";import{palette as G}from"@leafygreen-ui/palette";import{typeScales as H,transitionDuration as Z,spacing as K,hoverRing as Y,focusRing as V,fontFamilies as q,fontWeights as B}from"@leafygreen-ui/tokens";import U from"@leafygreen-ui/popover";import{leftGlyphClassName as $,InputOption as J,InputOptionContent as Q}from"@leafygreen-ui/input-option";import _ from"lodash/kebabCase";import ee from"lodash/escapeRegExp";import ne from"@leafygreen-ui/checkbox";function re(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 te(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?re(Object(r),!0).forEach((function(n){ae(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):re(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}function oe(e){return oe="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},oe(e)}function ae(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 ie(){return ie=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},ie.apply(this,arguments)}function le(e,n){if(null==e)return{};var r,t,o=function(e,n){if(null==e)return{};var r,t,o={},a=Object.keys(e);for(t=0;t<a.length;t++)r=a[t],n.indexOf(r)>=0||(o[r]=e[r]);return o}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(t=0;t<a.length;t++)r=a[t],n.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function ce(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function se(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,o,a,i,l=[],c=!0,s=!1;try{if(a=(r=r.call(e)).next,0===n){if(Object(r)!==r)return;c=!1}else for(;!(c=(t=a.call(r)).done)&&(l.push(t.value),l.length!==n);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw o}}return l}}(e,n)||de(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 ue(e){return function(e){if(Array.isArray(e))return pe(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||de(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 de(e,n){if(e){if("string"==typeof e)return pe(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)?pe(e,n):void 0}}function pe(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 fe,ge,he,me,be,ve,ye,xe,ke,we,Ee,Ce,Le,Oe,Se,Ne,De,Me,je,Ie,ze,Pe,Te,Fe,We,Ae,Xe="Input",Re="ClearButton",Ge="FirstChip",He="LastChip",Ze="MiddleChip",Ke="Combobox",Ye="Menu",Ve={XSmall:"xsmall",Small:"small",Default:"default",Large:"large"},qe={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},Be={none:"none",error:"error"},Ue={unset:"unset",error:"error",loading:"loading"};var $e,Je,Qe,_e,en,nn,rn,tn,on,an,ln,cn,sn,un,dn,pn,fn,gn,hn,mn,bn,vn,yn,xn,kn,wn,En,Cn,Ln,On,Sn,Nn,Dn,Mn,jn,In,zn,Pn,Tn,Fn,Wn,An,Xn,Rn,Gn,Hn,Zn,Kn,Yn,Vn,qn,Bn,Un,$n,Jn,Qn,_n,er=(ae(fe={},Ve.XSmall,16),ae(fe,Ve.Small,H.body1.lineHeight),ae(fe,Ve.Default,H.body1.lineHeight),ae(fe,Ve.Large,H.body2.lineHeight),fe),nr=(ae(ge={},Ve.XSmall,H.body1.fontSize),ae(ge,Ve.Small,H.body1.fontSize),ae(ge,Ve.Default,H.body1.fontSize),ae(ge,Ve.Large,H.body2.fontSize),ge),rr=(ae(he={},Ve.XSmall,1),ae(he,Ve.Small,0),ae(he,Ve.Default,2),ae(he,Ve.Large,4),he),tr=function(e){return er[e]+2*rr[e]},or=m(me||(me=ce(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n border-radius: 4px;\n"]))),ar=function(e){return m(be||(be=ce(["\n font-size: ","px;\n line-height: ","px;\n"])),nr[e],er[e])},ir=(ae(xe={},j.Light,m(ve||(ve=ce(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),G.black,G.gray.light2,G.blue.light2)),ae(xe,j.Dark,m(ye||(ye=ce(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),G.gray.light2,G.gray.dark2,G.blue.dark2)),xe),lr=m(ke||(ke=ce(["\n cursor: not-allowed;\n pointer-events: none;\n"]))),cr=(ae(Ce={},j.Light,m(we||(we=ce(["\n color: ",";\n background-color: ",";\n "])),G.gray.base,G.gray.light3)),ae(Ce,j.Dark,m(Ee||(Ee=ce(["\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ",";\n "])),G.gray.dark2,G.gray.dark4,G.gray.dark2)),Ce),sr=(ae(De={},Ve.XSmall,m(Le||(Le=ce(["\n padding-inline-start: 6px;\n padding-inline-end: 2px;\n padding-block: ","px;\n "])),rr[Ve.XSmall])),ae(De,Ve.Small,m(Oe||(Oe=ce(["\n padding-inline-start: 6px;\n padding-inline-end: 2px;\n padding-block: ","px;\n "])),rr[Ve.Small])),ae(De,Ve.Default,m(Se||(Se=ce(["\n padding-inline-start: 6px;\n padding-inline-end: 2px;\n padding-block: ","px;\n "])),rr[Ve.Default])),ae(De,Ve.Large,m(Ne||(Ne=ce(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),rr[Ve.Large])),De),ur=m(Me||(Me=ce(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n outline: none;\n border: none;\n background-color: transparent;\n cursor: pointer;\n transition: background-color ","ms ease-in-out;\n padding: 0 2px;\n"])),Z.faster),dr=function(e){return m(je||(je=ce(["\n height: ","px;\n"])),tr(e))},pr=(ae(Pe={},j.Light,m(Ie||(Ie=ce(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),G.gray.dark2,G.black,G.gray.light1)),ae(Pe,j.Dark,m(ze||(ze=ce(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),G.gray.light1,G.gray.light3,G.gray.dark1)),Pe),fr=m(Te||(Te=ce(["\n cursor: not-allowed;\n &:hover {\n color: inherit;\n background-color: unset;\n }\n"]))),gr=(ae(Ae={},j.Light,m(Fe||(Fe=ce(["\n color: ",";\n "])),G.gray.light1)),ae(Ae,j.Dark,m(We||(We=ce(["\n color: ",";\n "])),G.gray.dark2)),Ae),hr=tr,mr=(ae($e={},Ve.XSmall,22),ae($e,Ve.Small,28),ae($e,Ve.Default,36),ae($e,Ve.Large,48),$e),br=function(e){return(mr[e]-hr(e)-2)/2},vr=(ae(Je={},Ve.XSmall,{y:br(Ve.XSmall),xLeftWithChip:1,xLeftWithoutChip:10,xRight:4}),ae(Je,Ve.Small,{y:br(Ve.Small),xLeftWithChip:4,xLeftWithoutChip:10,xRight:8}),ae(Je,Ve.Default,{y:br(Ve.Default),xLeftWithChip:6,xLeftWithoutChip:12,xRight:12}),ae(Je,Ve.Large,{y:br(Ve.Large),xLeftWithChip:K[2]-1,xLeftWithoutChip:K[2]-1,xRight:K[2]-1}),Je),yr=K[3],xr=I("combobox-chip"),kr=function(e){return m(Qe||(Qe=ce(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),q.default,nr[e]+2*vr[e].xLeftWithChip+yr+2)},wr=m(_e||(_e=ce(["\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],Z.default,Z.default),Er=(ae(rn={},j.Light,m(en||(en=ce(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),G.gray.dark3,G.white,G.gray.base,Y[j.Light].gray)),ae(rn,j.Dark,m(nn||(nn=ce(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),G.gray.light2,G.gray.dark4,G.gray.base,Y[j.Dark].gray)),rn),Cr=function(e,n){return m(tn||(tn=ce(["\n padding-top: ","px;\n padding-bottom: ","px;\n padding-left: ",";\n padding-right: ","px;\n"])),vr[e].y,vr[e].y,"".concat(n?vr[e].xLeftWithChip:vr[e].xLeftWithoutChip,"px"),vr[e].xRight)},Lr=(ae(ln={},j.Light,m(on||(on=ce(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),G.gray.dark1,G.gray.light2,G.gray.light1)),ae(ln,j.Dark,m(an||(an=ce(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),G.gray.dark1,G.gray.dark3,G.gray.dark2)),ln),Or=(ae(un={},j.Light,m(cn||(cn=ce(["\n border-color: ",";\n "])),G.red.base)),ae(un,j.Dark,m(sn||(sn=ce(["\n border-color: ",";\n "])),G.red.light1)),un),Sr=(ae(fn={},j.Light,m(dn||(dn=ce(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),V[j.Light].input)),ae(fn,j.Dark,m(pn||(pn=ce(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),V[j.Dark].input)),fn),Nr=m(gn||(gn=ce(["\n display: flex;\n align-items: center;\n"]))),Dr=(ae(yn={},Ve.XSmall,m(hn||(hn=ce(["\n gap: ","px;\n "])),K[1])),ae(yn,Ve.Small,m(mn||(mn=ce(["\n gap: ","px;\n "])),K[2])),ae(yn,Ve.Default,m(bn||(bn=ce(["\n gap: ","px;\n "])),K[2])),ae(yn,Ve.Large,m(vn||(vn=ce(["\n gap: ","px;\n "])),K[2])),yn),Mr=function(e){var n=e.overflow,r=e.size,t=m(xn||(xn=ce(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case qe.scrollX:return m(kn||(kn=ce(["\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,hr(r),xr);case qe.expandY:return m(wn||(wn=ce(["\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,hr(r),3*tr(r),4)}},jr=m(En||(En=ce(["\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]),Ir=(ae(On={},j.Light,m(Cn||(Cn=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.dark1)),ae(On,j.Dark,m(Ln||(Ln=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.light1)),On),zr=(ae(Dn={},j.Light,m(Sn||(Sn=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.dark1)),ae(Dn,j.Dark,m(Nn||(Nn=ce(["\n &::placeholder {\n color: ",";\n }\n "])),G.gray.dark1)),Dn),Pr=function(e){return m(Mn||(Mn=ce(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n"])),hr(e),nr[e],er[e],nr[e])},Tr=function(e){return m(jn||(jn=ce(["\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")},Fr=function(e,n){var r,t=null!==(r=null==n?void 0:n.length)&&void 0!==r?r:0;return m(In||(In=ce(["\n width: ","px;\n max-width: 100%;\n "])),t*nr[e])},Wr=m(zn||(zn=ce(["\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"])),yr/2),Ar=m(Pn||(Pn=ce(["\n height: ","px;\n width: ","px;\n"])),yr,yr),Xr=(ae(Wn={},j.Light,m(Tn||(Tn=ce(["\n color: ",";\n "])),G.red.base)),ae(Wn,j.Dark,m(Fn||(Fn=ce(["\n color: ",";\n "])),G.red.light1)),Wn),Rr=function(e){return m(An||(An=ce(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n"])),nr[e],er[e],vr[e].y)},Gr=m(Xn||(Xn=ce(["\n margin-bottom: ","px;\n display: flex;\n flex-direction: column;\n"])),K[1]),Hr=m(Rn||(Rn=ce(["\n font-size: ","px;\n line-height: ","px;\n"])),H.large.fontSize,H.large.lineHeight),Zr=(ae(Zn={},j.Light,m(Gn||(Gn=ce(["\n ::after {\n box-shadow: 0px 0px 7px 5px ",";\n }\n "])),R(.85,G.black))),ae(Zn,j.Dark,m(Hn||(Hn=ce(["\n ::after {\n width: 95%;\n box-shadow: 0px -7px 12px 5px rgb(0 0 0 / 50%);\n }\n "])))),Zn),Kr=(ae(Kn={},j.Light,G.red.base),ae(Kn,j.Dark,G.red.light1),Kn),Yr=(ae(Yn={},j.Light,G.gray.dark2),ae(Yn,j.Dark,G.gray.light1),Yn),Vr=(ae(Vn={},j.Light,G.gray.base),ae(Vn,j.Dark,G.gray.dark2),Vn),qr=n({multiselect:!1,size:Ve.Default,withIcons:!1,disabled:!1,isOpen:!1,state:Be.none,searchState:Ue.unset,overflow:qe.expandY}),Br=e.forwardRef((function(n,i){var l=n.displayName,c=n.isFocused,s=n.onRemove,u=n.onFocus,d=M(),p=d.darkMode,f=d.theme,g=r(qr),h=g.size,m=g.disabled,v=g.overflow,y=g.chipTruncationLocation,x=void 0===y?"end":y,k=g.chipCharacterLimit,w=void 0===k?12:k,E=g.popoverZIndex,C=v!==qe.scrollX&&!!w&&!!x&&"none"!==x&&l.length>w,L=t(null),S=o((function(){if(C){var e=w-3;switch(x){case"start":return"…"+l.substring(l.length-e).trim();case"middle":return l.substring(0,e/2).trim()+"…"+l.substring(l.length-e/2).trim();case"end":return l.substring(0,e).trim()+"…";default:return l}}return!1}),[w,x,l,C]);a((function(){var e;c&&!m&&(null==L||null===(e=L.current)||void 0===e||e.focus())}),[m,i,c]);return e.createElement("span",{role:"option","aria-selected":c,"data-testid":"lg-combobox-chip",ref:i,className:b(xr,or,ir[f],ar(h),ae({},b(cr[f],lr),m)),onClick:function(e){var n;null!==(n=L.current)&&void 0!==n&&n.contains(e.target)||u()},onKeyDown:function(e){m||e.keyCode!==z.Delete&&e.keyCode!==z.Backspace&&e.keyCode!==z.Enter&&e.keyCode!==z.Space||s()},tabIndex:-1},e.createElement("span",{className:b(sr[h])},S?e.createElement(X,{darkMode:p,definition:l,align:"bottom",popoverZIndex:E},S):l),e.createElement("button",{"aria-label":"Deselect ".concat(l),"aria-disabled":m,disabled:m,ref:L,className:b(ur,pr[f],dr(h),ae({},b(gr[f],fr),m)),onClick:function(){m||s()}},e.createElement(O,{glyph:"X"})))}));Br.displayName="Chip";var Ur,$r,Jr,Qr,_r,et,nt,rt,tt,ot,at,it,lt,ct,st,ut,dt,pt=(ae(Un={},j.Light,m(qn||(qn=ce(["\n padding-top: ","px;\n "])),K[2])),ae(Un,j.Dark,m(Bn||(Bn=ce(["\n padding-top: ","px;\n "])),K[2])),Un),ft=m($n||($n=ce(["\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"])),B.bold),gt=(ae(_n={},j.Light,m(Jn||(Jn=ce(["\n color: ",";\n "])),G.gray.dark1)),ae(_n,j.Dark,m(Qn||(Qn=ce(["\n color: ",";\n "])),G.gray.light1)),_n);function ht(n){var r=n.label,t=n.className,o=n.children,a=M().theme,i=y({prefix:"combobox-group"});return e.Children.count(o)>0?e.createElement("div",{className:b(pt[a],t)},e.createElement("div",{className:b(ft,gt[a]),id:i},r),e.createElement("div",{role:"group","aria-labelledby":i},o)):e.createElement(e.Fragment,null)}function mt(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}mt.displayName="ComboboxGroup",mt.propTypes={className:h.string,children:h.node.isRequired,label:h.string.isRequired};var bt,vt=(ae(Ur={},Ve.XSmall,{x:12,y:8}),ae(Ur,Ve.Small,{x:12,y:8}),ae(Ur,Ve.Default,{x:12,y:8}),ae(Ur,Ve.Large,{x:12,y:8}),Ur),yt=function(e){return er[e]+2*vt[e].y},xt=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return m($r||($r=ce(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},kt=(ae(_r={},j.Light,m(Jr||(Jr=ce(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),R(.85,G.black),G.gray.light2)),ae(_r,j.Dark,m(Qr||(Qr=ce(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),R(.85,G.black),G.gray.dark3)),_r),wt=m(et||(et=ce(["\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),Et=(ae(tt={},j.Light,m(nt||(nt=ce(["\n color: ",";\n background-color: ",";\n "])),G.black,G.white)),ae(tt,j.Dark,m(rt||(rt=ce(["\n color: ",";\n background-color: ",";\n "])),G.gray.light1,G.gray.dark3)),tt),Ct=m(ot||(ot=ce(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),Lt=m(at||(at=ce(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),Ot=(ae(ct={},j.Light,m(it||(it=ce(["\n color: ",";\n "])),G.gray.dark3)),ae(ct,j.Dark,m(lt||(lt=ce(["\n color: ",";\n "])),G.gray.light3)),ct),St=function(e){return m(st||(st=ce(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px ","px;\n"])),nr[e],er[e],vt[e].y,vt[e].x)},Nt=v(ut||(ut=ce(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Dt=m(dt||(dt=ce(["\n animation: "," 1.5s linear infinite;\n"])),Nt),Mt=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],jt=e.forwardRef((function(n,t){var a=n.children,i=n.id,l=n.refEl,c=n.labelId,s=n.menuWidth,u=n.searchLoadingMessage,d=n.searchErrorMessage,p=n.searchEmptyMessage,f=le(n,Mt),h=M(),v=h.darkMode,y=h.theme,w=r(qr),E=w.disabled,C=w.size,L=w.isOpen,S=w.searchState,N=x(t,null),D=k(l),j=g(D)?"unset":"".concat(Math.min(D,256),"px"),I=o((function(){var n=b(Lt,Ot[y],St(C)),r=b(Lt,St(C));switch(S){case"loading":return e.createElement("span",{className:n},e.createElement(O,{glyph:"Refresh",color:v?G.blue.light1:G.blue.base,className:Dt}),u);case"error":return e.createElement(F,{className:r},e.createElement(O,{glyph:"Warning",color:v?G.red.light1:G.red.base}),e.createElement("span",null,d));default:return a&&"object"===oe(a)&&"length"in a&&a.length>0?e.createElement("ul",{className:Ct},a):e.createElement("span",{className:n},p)}}),[y,C,S,v,u,d,a,p]);return e.createElement(U,ie({active:L&&!E,spacing:4,align:"bottom",justify:"middle",refEl:l,adjustOnMutation:!0,className:b(xt(s),kt[y])},f),e.createElement("div",{ref:N,id:i,role:"listbox","aria-labelledby":c,"aria-expanded":L,className:b(wt,Et[y],m(bt||(bt=ce(["\n max-height: ",";\n "])),j)),onMouseDownCapture:function(e){return e.preventDefault()}},I))}));jt.displayName="ComboboxMenu";var It,zt,Pt,Tt,Ft,Wt,At,Xt,Rt,Gt,Ht,Zt,Kt,Yt,Vt,qt,Bt,Ut,$t,Jt,Qt,_t,eo,no,ro,to,oo=function(e){var n=e.scrollHeight;return e.scrollTop<n-e.clientHeight},ao=function(e){var n,r=e.value,t=e.displayName;return{value:null!=r?r:_(t),displayName:null!==(n=null!=t?t:r)&&void 0!==n?n:""}},io=function n(r){return e.Children.toArray(r).reduce((function(e,r){if(P(r,"ComboboxOption")){var t=ao(r.props),o=t.value,a=t.displayName,i=r.props,l=i.glyph,c=i.disabled;return[].concat(ue(e),[{value:o,displayName:a,isDisabled:!!c,hasGlyph:!!l}])}if(P(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(ue(e),ue(n(s)))}}),[])},lo=function(e,n){if(e)return n.find((function(n){return n.value===e}))},co=function(e,n){var r,t;return e?null!==(r=null===(t=lo(e,n))||void 0===t?void 0:t.displayName)&&void 0!==r?r:e:""},so=function(e){return m(It||(It=ce(["\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"])),nr[e],er[e],yt(e),vt[e].y,vt[e].x,K[1],yt(e))},uo=(ae(Wt={},Ve.XSmall,m(zt||(zt=ce(["\n min-width: ","px;\n "])),K[3])),ae(Wt,Ve.Small,m(Pt||(Pt=ce(["\n min-width: ","px;\n "])),K[3])),ae(Wt,Ve.Default,m(Tt||(Tt=ce(["\n min-width: ","px;\n "])),K[3])),ae(Wt,Ve.Large,m(Ft||(Ft=ce(["\n min-width: ","px;\n "])),K[4])),Wt),po=m(At||(At=ce(["\n pointer-events: none;\n gap: 0;\n\n label {\n gap: 0;\n align-items: center;\n }\n"])));m(Xt||(Xt=ce(["\n pointer-events: none;\n"])));var fo=function(e){return m(Rt||(Rt=ce(["\n font-weight: ",";\n"])),e?B.bold:B.regular)},go=(ae(Zt={},j.Light,m(Gt||(Gt=ce(["\n color: ",";\n "])),G.gray.dark1)),ae(Zt,j.Dark,m(Ht||(Ht=ce(["\n color: ",";\n "])),G.gray.base)),Zt),ho=(ae(Vt={},j.Light,m(Kt||(Kt=ce(["\n color: ",";\n "])),G.blue.dark1)),ae(Vt,j.Dark,m(Yt||(Yt=ce(["\n color: ",";\n "])),G.blue.light3)),Vt),mo=(ae(Ut={},j.Light,m(qt||(qt=ce(["\n color: ",";\n "])),G.gray.light1)),ae(Ut,j.Dark,m(Bt||(Bt=ce(["\n color: ",";\n "])),G.gray.dark1)),Ut),bo=(ae(Qt={},j.Light,m($t||($t=ce(["\n color: ",";\n "])),G.blue.base)),ae(Qt,j.Dark,m(Jt||(Jt=ce(["\n color: ",";\n "])),G.blue.light1)),Qt),vo=(ae(no={},j.Light,m(_t||(_t=ce(["\n color: ",";\n "])),G.gray.light1)),ae(no,j.Dark,m(eo||(eo=ce(["\n color: ",";\n "])),G.gray.dark1)),no),yo=m(ro||(ro=ce(["\n ."," {\n align-self: baseline;\n }\n"])),$),xo=m(to||(to=ce(["\n ."," {\n height: 28px;\n }\n"])),$),ko=["glyph","isSelected","displayName","isFocused","setSelected","className","description","value","onClick","disabled"],wo=e.forwardRef((function(n,t){var a,l=n.glyph,c=n.isSelected,s=n.displayName,u=n.isFocused,d=n.setSelected,p=n.className,f=n.description,g=n.value,h=n.onClick,m=n.disabled,v=void 0!==m&&m,k=le(n,ko),w=M(),E=w.darkMode,C=w.theme,L=r(qr),N=L.multiselect,D=L.size,j=L.withIcons,I=L.inputValue,z=x(t,null),P=y({prefix:"combobox-option-text"}),T=i((function(e){e.stopPropagation(),v||(d(),null==h||h(e,g))}),[v,h,d,g]),F=o((function(){return function(n){var r,t=n.withIcons,o=n.isSelected,a=n.glyph,i=n.optionTextId,l=n.disabled,c=n.darkMode,s=n.size,u=n.multiselect,d=n.theme,p=n.isFocused;a&&!S(a)&&console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",a);var f=a&&S(a)?e.cloneElement(a,te(te({},a.props),{},{className:b(go[d],(r={},ae(r,ho[d],p),ae(r,mo[d],l),r),a.props.className)})):e.createElement(e.Fragment,null),g=e.createElement(ne,{"aria-labelledby":i,checked:o,tabIndex:-1,disabled:l,darkMode:c,className:po}),h=e.createElement(O,{glyph:"Checkmark",className:b(uo[s],bo[d],ae({},vo[d],l))});return{leftGlyph:u?t?f:g:t?f:o?h:null,rightGlyph:u?t&&g:t&&o&&h}}({withIcons:j,isSelected:c,glyph:l,theme:C,darkMode:E,size:D,disabled:v,multiselect:N,optionTextId:P,isFocused:u})}),[E,v,l,c,N,P,D,C,j,u]),W=F.leftGlyph,A=F.rightGlyph,X=N&&!j;return e.createElement(J,ie({},k,{as:"li",ref:z,highlighted:u,disabled:v,"aria-label":s,darkMode:E,className:b(so(D),(a={},ae(a,yo,X),ae(a,xo,X&&D===Ve.Large),a),p),onClick:T,onKeyDown:T}),e.createElement(Q,{leftGlyph:W,rightGlyph:A,description:f},e.createElement("span",{id:P,className:fo(c)},function(n,r,t){if(r&&t){var o=ee(r),a=new RegExp(o,"gi"),i=n.matchAll(a);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],g=f.length,h=p+f+g,m=new Array(g).fill("");m[0]=e.createElement(t,{key:h},f),l.splice.apply(l,[p,g].concat(ue(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 Eo(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}wo.displayName="ComboboxOption",Eo.displayName="ComboboxOption",Eo.propTypes={displayName:h.string,value:h.string,glyph:h.node,disabled:h.bool,className:h.string,description:h.string,onClick:h.func};var Co=["children","label","description","placeholder","aria-label","disabled","size","darkMode","state","errorMessage","searchState","searchEmptyMessage","searchErrorMessage","searchLoadingMessage","filteredOptions","onFilter","clearable","onClear","overflow","multiselect","initialValue","onChange","value","chipTruncationLocation","chipCharacterLimit","className","usePortal","portalClassName","portalContainer","scrollContainer","popoverZIndex"],Lo=["className","glyph","disabled"];function Oo(n){var r,h,m,v=n.children,x=n.label,k=n.description,S=n.placeholder,j=void 0===S?"Select":S,I=n["aria-label"],F=n.disabled,X=void 0!==F&&F,R=n.size,G=void 0===R?Ve.Default:R,H=n.darkMode,Z=n.state,K=void 0===Z?"none":Z,Y=n.errorMessage,V=n.searchState,q=void 0===V?"unset":V,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,ce=void 0===re||re,ue=n.onClear,de=n.overflow,pe=void 0===de?qe.expandY:de,fe=n.multiselect,ge=void 0!==fe&&fe,he=n.initialValue,me=n.onChange,be=n.value,ve=n.chipTruncationLocation,ye=n.chipCharacterLimit,xe=void 0===ye?12:ye,ke=n.className,we=n.usePortal,Ee=void 0===we||we,Ce=n.portalClassName,Le=n.portalContainer,Oe=n.scrollContainer,Se=n.popoverZIndex,Ne=le(n,Co),De=M(H),Me=De.darkMode,je=De.theme,Ie=w({prefix:"option"}),ze=w({prefix:"chip"}),Pe=y({prefix:"combobox-input"}),Te=y({prefix:"combobox-label"}),Fe=y({prefix:"combobox-menu"}),We=t(null),Ae=t(null),Ue=t(null),$e=t(null),Je=t(null),Qe=se(l(!1),2),_e=Qe[0],en=Qe[1],nn=E(_e),rn=se(l(null),2),tn=rn[0],on=rn[1],an=se(l(null),2),ln=an[0],cn=an[1],sn=E(ln),un=se(l(""),2),dn=un[0],pn=un[1],fn=E(dn),gn=se(l(null),2),hn=gn[0],mn=gn[1],bn=se(l(!1),2),vn=bn[0],yn=bn[1],xn=!p(ln)&&(u(ln)&&ln.length>0||f(ln)),kn=ge&&u(ln)&&ln.length>0?void 0:j,wn=function(){return en(!1)},En=function(){return en(!0)},Cn=o((function(){return io(v)}),[v]),Ln=i((function(e){return!ge||"string"!=typeof e&&"number"!=typeof e?!ge&&u(e)&&T.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):T.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(oe(e),' value: "').concat(e,'"')),ge&&u(e)}),[ge]),On=i((function(e){!X&&$e&&$e.current&&($e.current.focus(),g(e)||$e.current.setSelectionRange(e,e))}),[X]),Sn=i((function(e){if(Ln(ln)){var n=c(ln);p(e)?n.length=0:ln.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),pn("")),cn(n),null==me||me(n)}else{var r=e;cn(r),null==me||me(r)}}),[Ln,me,ln]),Nn=i((function(e){return Ln(ln)?ln.includes(e):e===ln}),[Ln,ln]),Dn=i((function(e){var n,r,t,o,a=(r=Cn,(n=e)?null!==(t=null===(o=r.find((function(e){return e.displayName===n})))||void 0===o?void 0:o.value)&&void 0!==t?t:n:"");return Nn(a)}),[Cn,Nn]),Mn=i((function(e){var n="string"==typeof e?e:e.value;return ee&&ee.length>0?ee.includes(n):!!Dn(dn)||("string"==typeof e?co(n,Cn):e.displayName).toLowerCase().includes(dn.toLowerCase())}),[ee,Dn,dn,Cn]),jn=o((function(){return Cn.filter(Mn)}),[Cn,Mn]),In=i((function(e){return!!e&&!!Cn.find((function(n){return n.value===e}))}),[Cn]),zn=i((function(e){return jn?jn.findIndex((function(n){return n.value===e})):-1}),[jn]),Pn=i((function(e){if(jn&&jn.length>=e){var n=jn[e];return n?n.value:void 0}}),[jn]),Tn=i((function(){return Ln(ln)?ln.findIndex((function(e){var n,r;return null===(n=ze(e))||void 0===n||null===(r=n.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[ze,Ln,ln]),Fn=se(l(),2),Wn=Fn[0],An=Fn[1],Xn=i((function(e){var n,r=null!==(n=null==jn?void 0:jn.length)&&void 0!==n?n:0,t=r-1>0?r-1:0,o=zn(tn);switch(e&&_e&&(mn(null),On()),e){case"next":var a=Pn(o+1<r?o+1:0);on(null!=a?a:null);break;case"prev":var i=Pn(o-1>=0?o-1:t);on(null!=i?i:null);break;case"last":var l=Pn(t);on(null!=l?l:null);break;default:var c=Pn(0);on(null!=c?c:null)}}),[tn,zn,Pn,_e,On,null==jn?void 0:jn.length]),Rn=i((function(e,n){if(Ln(ln))switch(e){case"next":var r=null!=n?n:Tn(),t=r+1<ln.length?r+1:ln.length-1,o=ln[t];mn(o);break;case"prev":var a=null!=n?n:Tn(),i=a>0?a-1:a<0?ln.length-1:0,l=ln[i];mn(l);break;case"first":var c=ln[0];mn(c);break;case"last":var s=ln[ln.length-1];mn(s);break;default:mn(null)}}),[Tn,Ln,ln]),Gn=i((function(e,n){switch(e&&on(null),e){case"right":switch(Wn){case Xe:var r,t,o;if((null===(r=$e.current)||void 0===r?void 0:r.selectionEnd)===(null===(t=$e.current)||void 0===t?void 0:t.value.length))null===(o=Ae.current)||void 0===o||o.focus();break;case Ge:case Ze:case He:if(Wn===He||1===(null==ln?void 0:ln.length)){On(0),Rn(null),n.preventDefault();break}Rn("next")}break;case"left":switch(Wn){case Re:var a;n.preventDefault(),On(null==$e||null===(a=$e.current)||void 0===a?void 0:a.value.length);break;case Xe:case Ze:case He:if(Ln(ln)){var i;if(Wn===Xe&&0!==(null===(i=$e.current)||void 0===i?void 0:i.selectionStart))break;Rn("prev")}}break;default:Rn(null)}}),[Wn,Ln,ln,On,Rn]);a((function(){dn!==fn&&Xn("first")}),[dn,_e,fn,Xn]),C(tn?Ie(tn):void 0,Je);var Hn=i((function(n){if(P(n,"ComboboxOption")){var r=ao(n.props),t=r.value,o=r.displayName;if(Mn(t)){var a=n.props,i=a.className,l=a.glyph,c=a.disabled,s=le(a,Lo),u=Cn.findIndex((function(e){return e.value===t})),d=tn===t,p=Ln(ln)?ln.includes(t):ln===t,f=Ie(t);return e.createElement(wo,ie({},s,{value:t,displayName:o,isFocused:d,isSelected:p,disabled:c,setSelected:function(){on(t),Sn(t),On(),t===ln&&wn()},glyph:l,className:i,index:u,ref:f}))}}else if(P(n,"ComboboxGroup")){var g=e.Children.map(n.props.children,Hn);if(g&&(null==g?void 0:g.length)>0)return e.createElement(ht,{label:n.props.label,className:n.props.className},e.Children.map(g,Hn))}}),[Cn,Ie,tn,Ln,ln,On,Mn,Sn]),Zn=o((function(){return e.Children.map(v,Hn)}),[v,Hn]),Kn=o((function(){if(Ln(ln))return ln.filter(In).map((function(n,r){var t=co(n,Cn),o=hn===n,a=ze(n),i=r>=ln.length-1;return e.createElement(Br,{key:n,displayName:t,isFocused:o,onRemove:function(){i?(On(),Rn(null)):Rn("next",r),Sn(n)},onFocus:function(){mn(n)},ref:a})}))}),[Ln,ln,In,Cn,hn,ze,Sn,On,Rn]),Yn=o((function(){return Cn.some((function(e){return e.hasGlyph}))}),[Cn]),Vn=i((function(){if(!Ln(ln)&&ln===sn){var e=jn.find((function(e){return e.displayName===dn||e.value===dn}));if(e&&!be)cn(e.value);else{var n,r=null!==(n=co(ln,Cn))&&void 0!==n?n:"";pn(r)}}}),[Cn,dn,Ln,sn,ln,be,jn]),qn=i((function(){if(xn){if(Ln(ln))rr(pe);else if(!Ln(ln)){var e,n=null!==(e=co(ln,Cn))&&void 0!==e?e:"";pn(n),wn()}}else pn("")}),[xn,Cn,Ln,ln,pe]);a((function(){if(he)if(u(he)){var e,n=null!==(e=he.filter((function(e){return In(e)})))&&void 0!==e?e:[];cn(n)}else In(he)&&cn(he);else cn(function(e){return e?[]:null}(ge))}),[]),a((function(){if(!g(be)&&be!==fn)if(p(be))cn(null);else if(Ln(be)){var e=be.filter(In);cn(e)}else cn(In(be)?be:null)}),[Ln,In,fn,be]),a((function(){d(ln,sn)||qn()}),[qn,sn,ln]),a((function(){!_e&&nn&&Vn()}),[_e,nn,Vn]);var Bn=se(l(0),2),Un=Bn[0],$n=Bn[1];a((function(){var e,n;$n(null!==(e=null===(n=We.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[We,_e,tn,ln]);L(wn,[Je,We],_e);var Jn=Ln(ln)&&!!ln.length,Qn=s((function(e){yn(oo(e.target))}),50,{leading:!0}),_n=i((function(e){pe===qe.expandY&&Qn(e)}),[Qn,pe]);a((function(){Ue.current&&yn(oo(Ue.current))}),[]);var er,nr=te({popoverZIndex:Se},Ee?{usePortal:Ee,portalClassName:Ce,portalContainer:Le,scrollContainer:Oe}:{usePortal:Ee});return e.createElement(D,{darkMode:Me},e.createElement(qr.Provider,{value:{multiselect:ge,size:G,withIcons:Yn,disabled:X,isOpen:_e,state:K,searchState:q,chipTruncationLocation:ve,chipCharacterLimit:xe,inputValue:dn,overflow:pe,popoverZIndex:Se}},e.createElement("div",ie({className:b(kr(G),ke)},Ne),(x||k)&&e.createElement("div",{className:Gr},x&&e.createElement(W,{id:Te,htmlFor:Pe,darkMode:Me,disabled:X,className:b(ae({},Hr,G===Ve.Large))},x),k&&e.createElement(A,{darkMode:Me,disabled:X,className:b(ae({},Hr,G===Ve.Large))},k)),e.createElement("div",{ref:We,role:"combobox","aria-expanded":_e,"aria-controls":Fe,"aria-owns":Fe,tabIndex:-1,onMouseDown:function(e){X&&e.preventDefault()},onClick:function(e){if(e.target!==$e.current){var n=0;if($e.current)n=e.nativeEvent.offsetX>$e.current.offsetLeft+$e.current.clientWidth?dn.length:0;On(n)}En()},onFocus:function(e){rr(pe),An(function(e){var n,r,t,o;if(!e)return;if(null!==(n=$e.current)&&void 0!==n&&n.contains(e))return Xe;if(null!==(r=Ae.current)&&void 0!==r&&r.contains(e))return Re;var a=Ln(ln)?ln.findIndex((function(n){var r,t;return null===(r=ze(n))||void 0===r||null===(t=r.current)||void 0===t?void 0:t.contains(e)})):-1;if(Ln(ln)){if(0===a)return Ge;if(a===ln.length-1)return He;if(a>0)return Ze}if(null!==(t=Je.current)&&void 0!==t&&t.contains(e))return Ye;if(null!==(o=We.current)&&void 0!==o&&o.contains(e))return Ke}(e.target))},onKeyDown:function(e){var n,r,t=null===(n=Je.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(r=We.current)||void 0===r?void 0:r.contains(document.activeElement))||t){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.keyCode){case z.Tab:switch(Wn){case"Input":xn||(wn(),Xn("first"),Rn(null));break;case"LastChip":Rn(null)}break;case z.Escape:wn(),Xn("first");break;case z.Enter:Wn!==Xe||p(tn)||function(e){if("string"==typeof e){var n=lo(e,Cn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(tn)?Wn===Re&&(Sn(null),On()):Sn(tn);break;case z.Backspace:var o;if(Ln(ln))"Input"===Wn&&0===(null===(o=$e.current)||void 0===o?void 0:o.selectionStart)&&Rn("last");En();break;case z.ArrowDown:_e?(e.preventDefault(),Xn("next")):En();break;case z.ArrowUp:_e?(e.preventDefault(),Xn("prev")):En();break;case z.ArrowRight:Gn("right",e);break;case z.ArrowLeft:Gn("left",e);break;default:_e||En()}}},onTransitionEnd:function(){var e,n;$n(null!==(e=null===(n=We.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:b(wr,Er[je],Cr(G,Jn),(r={},ae(r,Lr[je],X),ae(r,Or[je],K===Be.error),ae(r,Sr[je],(er=Xe,er===Wn)),ae(r,Zr[je],vn),r))},e.createElement("div",{onScroll:_n,ref:Ue,className:Mr({size:G,overflow:pe})},Kn,e.createElement("input",{"aria-label":null!=I?I:x,"aria-autocomplete":"list","aria-controls":Fe,"aria-labelledby":Te,ref:$e,id:Pe,className:b(jr,Pr(G),Ir[je],Tr(_e),(h={},ae(h,Fr(G,dn),Ln(ln)),ae(h,zr[je],X),h)),placeholder:kn,disabled:null!=X?X:void 0,onChange:function(e){var n=e.target.value;pn(n),null==ne||ne(n)},value:dn,autoComplete:"off"})),e.createElement("div",{className:b(Nr,Dr[G])},"error"===K&&e.createElement(O,{glyph:"Warning",fill:Kr[je],className:Ar}),ce&&xn&&!X&&e.createElement(N,{"aria-label":"Clear selection","aria-disabled":X,disabled:X,ref:Ae,onClick:function(e){X||(e.stopPropagation(),Sn(null),null==ue||ue(e),null==ne||ne(""),On())},onFocus:function(){on(null)},className:b(Wr),darkMode:Me},e.createElement(O,{glyph:"XWithCircle"})),e.createElement(O,{glyph:"CaretDown",className:Ar,fill:b((m={},ae(m,Yr[je],!X),ae(m,Vr[je],X),m))}))),"error"===K&&Y&&e.createElement("div",{className:b(Xr[je],Rr(G))},Y),e.createElement(jt,ie({id:Fe,labelId:Te,refEl:We,ref:Je,menuWidth:Un,searchLoadingMessage:_,searchErrorMessage:J,searchEmptyMessage:U},nr),Zn))));function rr(e){Ue&&Ue.current&&(e===qe.scrollX&&(Ue.current.scrollLeft=Ue.current.scrollWidth),e===qe.expandY&&(Ue.current.scrollTop=Ue.current.scrollHeight))}}Oo.propTypes={multiselect:h.bool,value:h.oneOfType([h.string,h.arrayOf(h.string)]),initialValue:h.oneOfType([h.string,h.arrayOf(h.string)]),overflow:h.oneOf(Object.values(qe)),darkMode:h.bool,label:h.string,"aria-label":h.string,children:h.node,onChange:h.func,chipCharacterLimit:h.number,chipTruncationLocation:h.oneOf(Object.values({start:"start",middle:"middle",end:"end",none:"none"})),onClear:h.func,onFilter:h.func,clearable:h.bool,searchLoadingMessage:h.string,searchErrorMessage:h.string,searchEmptyMessage:h.string,searchState:h.oneOf(Object.values(Ue)),errorMessage:h.string,state:h.oneOf(Object.values(Be)),size:h.oneOf(Object.values(Ve)),disabled:h.bool,description:h.string,placeholder:h.string,filteredOptions:h.arrayOf(h.string),popoverZIndex:h.number,usePortal:h.bool,scrollContainer:h.elementType,portalContainer:h.elementType,portalClassName:h.string};export{Oo as Combobox,mt as ComboboxGroup,Eo as ComboboxOption};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|