@leafygreen-ui/combobox 3.0.1 → 3.1.0-next.1
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 +47 -0
- package/dist/Combobox.d.ts +1 -1
- package/dist/Combobox.d.ts.map +1 -1
- package/dist/ComboboxGroup.d.ts +2 -3
- package/dist/ComboboxGroup.d.ts.map +1 -1
- package/dist/ComboboxMenu/ComboboxMenu.d.ts.map +1 -1
- package/dist/ComboboxOption.d.ts +2 -3
- package/dist/ComboboxOption.d.ts.map +1 -1
- package/dist/ComboboxTestUtils.d.ts +0 -1
- package/dist/ComboboxTestUtils.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/OptionObjectUtils.d.ts +18 -0
- package/dist/utils/OptionObjectUtils.d.ts.map +1 -1
- package/dist/utils/flattenChildren.d.ts +1 -0
- package/dist/utils/flattenChildren.d.ts.map +1 -1
- package/dist/utils/getNameAndValue.d.ts +1 -0
- package/dist/utils/getNameAndValue.d.ts.map +1 -1
- package/dist/utils/wrapJSX.d.ts +1 -1
- package/dist/utils/wrapJSX.d.ts.map +1 -1
- package/package.json +14 -14
- package/src/Combobox.tsx +13 -11
- package/src/ComboboxGroup.tsx +1 -1
- package/src/ComboboxMenu/ComboboxMenu.tsx +2 -2
- package/src/ComboboxOption.tsx +1 -1
- package/src/index.ts +3 -3
- package/src/utils/ComboboxUtils.spec.tsx +2 -2
- package/src/utils/OptionObjectUtils.ts +18 -1
- package/src/utils/flattenChildren.tsx +1 -0
- package/src/utils/getNameAndValue.ts +1 -0
- package/src/utils/wrapJSX.tsx +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/yarn-error.log +19618 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,52 @@
|
|
|
1
1
|
# @leafygreen-ui/combobox
|
|
2
2
|
|
|
3
|
+
## 3.1.0-next.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 87a90f46: Update tsdoc gen and storybook
|
|
8
|
+
- Updated dependencies [87a90f46]
|
|
9
|
+
- @leafygreen-ui/checkbox@10.1.0-next.1
|
|
10
|
+
- @leafygreen-ui/emotion@4.0.2-next.1
|
|
11
|
+
- @leafygreen-ui/hooks@7.3.2-next.1
|
|
12
|
+
- @leafygreen-ui/icon@11.11.0-next.1
|
|
13
|
+
- @leafygreen-ui/icon-button@13.2.0-next.1
|
|
14
|
+
- @leafygreen-ui/inline-definition@4.1.0-next.1
|
|
15
|
+
- @leafygreen-ui/leafygreen-provider@2.3.4-next.1
|
|
16
|
+
- @leafygreen-ui/lib@9.5.0-next.1
|
|
17
|
+
- @leafygreen-ui/palette@3.4.3-next.1
|
|
18
|
+
- @leafygreen-ui/popover@9.1.0-next.1
|
|
19
|
+
- @leafygreen-ui/tokens@1.3.3-next.1
|
|
20
|
+
- @leafygreen-ui/tooltip@7.1.2-next.1
|
|
21
|
+
- @leafygreen-ui/typography@13.2.0-next.1
|
|
22
|
+
|
|
23
|
+
## 3.1.0-next.0
|
|
24
|
+
|
|
25
|
+
### Minor Changes
|
|
26
|
+
|
|
27
|
+
- b70fe564: Updates TypeScript annotations, type structures and export format of some components
|
|
28
|
+
|
|
29
|
+
### Patch Changes
|
|
30
|
+
|
|
31
|
+
- Updated dependencies [b70fe564]
|
|
32
|
+
- Updated dependencies [00a2a281]
|
|
33
|
+
- Updated dependencies [00a2a281]
|
|
34
|
+
- Updated dependencies [00a2a281]
|
|
35
|
+
- Updated dependencies [b70fe564]
|
|
36
|
+
- @leafygreen-ui/checkbox@10.1.0-next.0
|
|
37
|
+
- @leafygreen-ui/icon@11.11.0-next.0
|
|
38
|
+
- @leafygreen-ui/icon-button@13.2.0-next.0
|
|
39
|
+
- @leafygreen-ui/inline-definition@4.1.0-next.0
|
|
40
|
+
- @leafygreen-ui/popover@9.1.0-next.0
|
|
41
|
+
- @leafygreen-ui/typography@13.2.0-next.0
|
|
42
|
+
- @leafygreen-ui/lib@9.5.0-next.0
|
|
43
|
+
- @leafygreen-ui/tooltip@7.1.2-next.0
|
|
44
|
+
- @leafygreen-ui/emotion@4.0.2-next.0
|
|
45
|
+
- @leafygreen-ui/hooks@7.3.2-next.0
|
|
46
|
+
- @leafygreen-ui/leafygreen-provider@2.3.4-next.0
|
|
47
|
+
- @leafygreen-ui/palette@3.4.3-next.0
|
|
48
|
+
- @leafygreen-ui/tokens@1.3.3-next.0
|
|
49
|
+
|
|
3
50
|
## 3.0.1
|
|
4
51
|
|
|
5
52
|
### Patch Changes
|
package/dist/Combobox.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { ComboboxProps } from './Combobox.types';
|
|
|
5
5
|
* allowing the user to either type a value directly or select a value from the list.
|
|
6
6
|
* Can be configured to select a single or multiple options.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export declare function Combobox<M extends boolean>({ children, label, description, placeholder, 'aria-label': ariaLabel, 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, ...rest }: ComboboxProps<M>): JSX.Element;
|
|
9
9
|
/**
|
|
10
10
|
* Why'd you have to go and make things so complicated?
|
|
11
11
|
* - Avril; and also me to myself about this component
|
package/dist/Combobox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../src/Combobox.tsx"],"names":[],"mappings":";AAyBA,OAAO,EACL,aAAa,EAQd,MAAM,kBAAkB,CAAC;AAkC1B;;;;GAIG;AACH,
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../src/Combobox.tsx"],"names":[],"mappings":";AAyBA,OAAO,EACL,aAAa,EAQd,MAAM,kBAAkB,CAAC;AAkC1B;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,EAC1C,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAsB,EACtB,YAAY,EAAE,SAAS,EACvB,QAAgB,EAChB,IAA2B,EAC3B,QAAgB,EAChB,KAAc,EACd,YAAY,EACZ,WAAqB,EACrB,kBAAuC,EACvC,kBAA6C,EAC7C,oBAA2C,EAC3C,eAAe,EACf,QAAQ,EACR,SAAgB,EAChB,OAAO,EACP,QAAqB,EACrB,WAAwB,EACxB,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,sBAAsB,EACtB,kBAAuB,EACvB,SAAS,EACT,SAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,EACf,aAAa,EACb,GAAG,IAAI,EACR,EAAE,aAAa,CAAC,CAAC,CAAC,eA8tClB;AACD;;;GAGG"}
|
package/dist/ComboboxGroup.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComboboxGroupProps } from './Combobox.types';
|
|
3
3
|
export declare function InternalComboboxGroup({ label, className, children, }: ComboboxGroupProps): JSX.Element;
|
|
4
|
-
declare function ComboboxGroup(_: ComboboxGroupProps): JSX.Element;
|
|
5
|
-
declare namespace ComboboxGroup {
|
|
4
|
+
export declare function ComboboxGroup(_: ComboboxGroupProps): JSX.Element;
|
|
5
|
+
export declare namespace ComboboxGroup {
|
|
6
6
|
var displayName: string;
|
|
7
7
|
}
|
|
8
|
-
export default ComboboxGroup;
|
|
9
8
|
//# sourceMappingURL=ComboboxGroup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxGroup.d.ts","sourceRoot":"","sources":["../src/ComboboxGroup.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAS,MAAM,kBAAkB,CAAC;AAkC7D,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAsBlC;AAID,
|
|
1
|
+
{"version":3,"file":"ComboboxGroup.d.ts","sourceRoot":"","sources":["../src/ComboboxGroup.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAS,MAAM,kBAAkB,CAAC;AAkC7D,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAsBlC;AAID,wBAAgB,aAAa,CAAC,CAAC,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAEhE;yBAFe,aAAa"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxMenu.d.ts","sourceRoot":"","sources":["../../src/ComboboxMenu/ComboboxMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ComboboxMenu.d.ts","sourceRoot":"","sources":["../../src/ComboboxMenu/ComboboxMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAiB/D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAsBlD,eAAO,MAAM,YAAY;eAjBZ,MAAM,SAAS;WACnB,MAAM,SAAS,CAAC,cAAc,CAAC;QAClC,MAAM;aACD,MAAM;eACJ,MAAM;qOAoIlB,CAAC"}
|
package/dist/ComboboxOption.d.ts
CHANGED
|
@@ -5,9 +5,8 @@ import { ComboboxOptionProps, InternalComboboxOptionProps } from './Combobox.typ
|
|
|
5
5
|
*/
|
|
6
6
|
declare const InternalComboboxOption: React.ForwardRefExoticComponent<InternalComboboxOptionProps & React.RefAttributes<HTMLLIElement>>;
|
|
7
7
|
export { InternalComboboxOption };
|
|
8
|
-
declare function ComboboxOption(_: ComboboxOptionProps): JSX.Element;
|
|
9
|
-
declare namespace ComboboxOption {
|
|
8
|
+
export declare function ComboboxOption(_: ComboboxOptionProps): JSX.Element;
|
|
9
|
+
export declare namespace ComboboxOption {
|
|
10
10
|
var displayName: string;
|
|
11
11
|
}
|
|
12
|
-
export default ComboboxOption;
|
|
13
12
|
//# sourceMappingURL=ComboboxOption.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxOption.d.ts","sourceRoot":"","sources":["../src/ComboboxOption.tsx"],"names":[],"mappings":"AACA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAMhE,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAG5B,MAAM,kBAAkB,CAAC;AAyJ1B;;GAEG;AACH,QAAA,MAAM,sBAAsB,mGA8I3B,CAAC;AAGF,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAClC,
|
|
1
|
+
{"version":3,"file":"ComboboxOption.d.ts","sourceRoot":"","sources":["../src/ComboboxOption.tsx"],"names":[],"mappings":"AACA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAMhE,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAG5B,MAAM,kBAAkB,CAAC;AAyJ1B;;GAEG;AACH,QAAA,MAAM,sBAAsB,mGA8I3B,CAAC;AAGF,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAClC,wBAAgB,cAAc,CAAC,CAAC,EAAE,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAElE;yBAFe,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxTestUtils.d.ts","sourceRoot":"","sources":["../src/ComboboxTestUtils.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ComboboxTestUtils.d.ts","sourceRoot":"","sources":["../src/ComboboxTestUtils.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,YAAY,EACb,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;CACxC;AAED,oBAAY,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAC3C,aAAK,mBAAmB,GAAG;IACzB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC;CACvD,GAAG,iBAAiB,GACnB,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAEpC,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,YAAY,CAgB9C,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,YAAY,CA+B9C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,0DAyC1B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,EAC7C,MAAM,GAAE,CAAiB,EACzB,KAAK,CAAC,EAAE,mBAAmB;iCAsDS,mBAAmB;;gBAetB,MAAM,GAAG,WAAW,GAAG,IAAI;gBAC3B,MAAM,MAAM,CAAC,GAAG,MAAM,WAAW,CAAC,GAAG,IAAI;;;gBAgBxC,MAAM,GAAG,WAAW,GAAG,IAAI;gBAC3B,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,IAAI;gBACrC,MAAM,MAAM,CAAC,GAAG,MAAM,WAAW,CAAC,GAAG,IAAI;;yBA5BjD,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6D7C;AAED;;;;GAIG;AACH,eAAO,MAAM,MAAM,cAAe,OAAO,YAAmC,CAAC;AA8B7E,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,IAAI,CAAC;QACb,UAAU,QAAQ,CAAC,CAAC;YAClB,cAAc,IAAI,CAAC,CAAC;SACrB;KACF;CACF"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import n from"lodash/clone";import e from"lodash/isArray";import r from"lodash/isEqual";import o from"lodash/isNull";import t from"lodash/isString";import i from"lodash/isUndefined";import a,{createContext as l,useContext as c,useCallback as s,useMemo as u,useRef as d,useEffect as f,useState as p}from"react";import{Label as h,Description as b}from"@leafygreen-ui/typography";import{useIdAllocator as g,useForwardedRef as m,useAvailableSpace as v,useDynamicRefs as y,usePrevious as x,useEventListener as w}from"@leafygreen-ui/hooks";import k,{isComponentGlyph as C}from"@leafygreen-ui/icon";import N from"@leafygreen-ui/icon-button";import{css as O,cx as S,keyframes as z}from"@leafygreen-ui/emotion";import{palette as M}from"@leafygreen-ui/palette";import{isComponentType as E,createUniqueClassName as j,keyMap as I,consoleOnce as D}from"@leafygreen-ui/lib";import P from"lodash/escapeRegExp";import{jsx as L}from"@emotion/react";import A from"lodash/kebabCase";import F from"@leafygreen-ui/checkbox";import{typeScales as T,spacing as H,fontFamilies as R,hoverRing as W,focusRing as G}from"@leafygreen-ui/tokens";import{transparentize as K}from"polished";import U from"@leafygreen-ui/inline-definition";import V from"@leafygreen-ui/popover";function B(n,e){var r=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.push.apply(r,o)}return r}function X(n){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},X(n)}function Z(n,e,r){return e in n?Object.defineProperty(n,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[e]=r,n}function q(){return q=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(n[o]=r[o])}return n},q.apply(this,arguments)}function Y(n,e){if(null==n)return{};var r,o,t=function(n,e){if(null==n)return{};var r,o,t={},i=Object.keys(n);for(o=0;o<i.length;o++)r=i[o],e.indexOf(r)>=0||(t[r]=n[r]);return t}(n,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);for(o=0;o<i.length;o++)r=i[o],e.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function $(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function J(n,e){return function(n){if(Array.isArray(n))return n}(n)||function(n,e){var r=null==n?null:"undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(null==r)return;var o,t,i=[],a=!0,l=!1;try{for(r=r.call(n);!(a=(o=r.next()).done)&&(i.push(o.value),!e||i.length!==e);a=!0);}catch(n){l=!0,t=n}finally{try{a||null==r.return||r.return()}finally{if(l)throw t}}return i}(n,e)||_(n,e)||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 Q(n){return function(n){if(Array.isArray(n))return nn(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||_(n)||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 _(n,e){if(n){if("string"==typeof n)return nn(n,e);var r=Object.prototype.toString.call(n).slice(8,-1);return"Object"===r&&n.constructor&&(r=n.constructor.name),"Map"===r||"Set"===r?Array.from(n):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?nn(n,e):void 0}}function nn(n,e){(null==e||e>n.length)&&(e=n.length);for(var r=0,o=new Array(e);r<e;r++)o[r]=n[r];return o}var en="dark",rn="light",on="Input",tn="ClearButton",an="FirstChip",ln="LastChip",cn="MiddleChip",sn="Combobox",un="Menu",dn="default",fn="large",pn="expand-y",hn="scroll-x",bn="error";var gn,mn,vn,yn,xn,wn,kn,Cn,Nn,On,Sn,zn,Mn,En,jn,In,Dn,Pn,Ln,An,Fn,Tn,Hn,Rn,Wn,Gn,Kn,Un,Vn,Bn,Xn,Zn,qn,Yn=function(n,e,r){if(e&&r){var o=P(e),t=new RegExp(o,"gi"),i=n.matchAll(t);if(i){for(var l=n.split(""),c=0,s=Array.from(i);c<s.length;c++){var u,d=s[c],f=null!==(u=d.index)&&void 0!==u?u:-1,p=d[0],h=p.length,b=f+p+h,g=new Array(h).fill("");g[0]=a.createElement(r,{key:b},p),l.splice.apply(l,[f,h].concat(Q(g)))}return L(a.Fragment,null,l)}return L(a.Fragment,null,n)}return L(a.Fragment,null,n)},$n=function(n){var e,r=n.value,o=n.displayName;return{value:null!=r?r:A(o),displayName:null!==(e=null!=o?o:r)&&void 0!==e?e:""}},Jn=function(n,e){if(n)return e.find((function(e){return e.value===n}))},Qn=function(n,e){var r,o;return n?null!==(r=null===(o=Jn(n,e))||void 0===o?void 0:o.displayName)&&void 0!==r?r:n:""},_n=function n(e){return a.Children.toArray(e).reduce((function(e,r){if(E(r,"ComboboxOption")){var o=$n(r.props),t=o.value,i=o.displayName,a=r.props,l=a.glyph,c=a.disabled;return[].concat(Q(e),[{value:t,displayName:i,isDisabled:!!c,hasGlyph:!!l}])}if(E(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(Q(e),Q(n(s)))}}),[])},ne=l({multiselect:!1,darkMode:!1,size:dn,withIcons:!1,disabled:!1,isOpen:!1,state:"none",searchState:"unset"}),ee=function(n){return n?en:rn},re=(Z(vn={},rn,O(gn||(gn=$(["\n padding-top: 8px;\n "])))),Z(vn,en,O(mn||(mn=$(["\n padding-top: 8px;\n "])))),vn),oe=O(yn||(yn=$(["\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: bold;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n"]))),te=(Z(kn={},rn,O(xn||(xn=$(["\n color: ",";\n "])),M.gray.dark1)),Z(kn,en,O(wn||(wn=$(["\n color: ",";\n "])),M.gray.light1)),kn);function ie(n){var e=n.label,r=n.className,o=n.children,t=c(ne).darkMode,i=ee(t),l=g({prefix:"combobox-group"});return a.Children.count(o)>0?L("div",{className:S(re[i],r)},L("div",{className:S(oe,te[i]),id:l},e),L("div",{role:"group","aria-labelledby":l},o)):L(a.Fragment,null)}function ae(n){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}ae.displayName="ComboboxGroup";var le=(Z(Cn={},dn,{x:12,y:8}),Z(Cn,fn,{x:12,y:8}),Cn),ce=(Z(Nn={},dn,T.body1.lineHeight+2*le[dn].y),Z(Nn,fn,T.body2.lineHeight+2*le[fn].y),Nn),se=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return O(On||(On=$(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),n)},ue=(Z(Mn={},rn,O(Sn||(Sn=$(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),K(.85,M.black),M.gray.light2)),Z(Mn,en,O(zn||(zn=$(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),K(.85,M.black),M.gray.dark3)),Mn),de=O(En||(En=$(["\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"])),H[2],R.default),fe=(Z(Dn={},rn,O(jn||(jn=$(["\n color: ",";\n background-color: ",";\n "])),M.black,M.white)),Z(Dn,en,O(In||(In=$(["\n color: ",";\n background-color: ",";\n "])),M.gray.light1,M.gray.dark3)),Dn);Z(An={},dn,O(Pn||(Pn=$(["\n min-height: ","px;\n "])),ce[dn])),Z(An,fn,O(Ln||(Ln=$(["\n min-height: ","px;\n "])),ce[fn]));var pe=O(Fn||(Fn=$(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),he=O(Tn||(Tn=$(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),be=(Z(Wn={},rn,O(Hn||(Hn=$(["\n color: ",";\n "])),M.gray.dark3)),Z(Wn,en,O(Rn||(Rn=$(["\n color: ",";\n "])),M.gray.light3)),Wn),ge=(Z(Un={},dn,O(Gn||(Gn=$(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),T.body1.fontSize,T.body1.lineHeight,le[dn].y,le[dn].x)),Z(Un,fn,O(Kn||(Kn=$(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),T.body2.fontSize,T.body2.lineHeight,le[fn].y,le[fn].x)),Un);Z(Xn={},dn,O(Vn||(Vn=$(["\n height: ","px;\n width: ","px;\n "])),T.body1.fontSize,T.body1.fontSize)),Z(Xn,fn,O(Bn||(Bn=$(["\n height: ","px;\n width: ","px;\n "])),T.body2.fontSize,T.body2.fontSize));var me,ve,ye,xe,we,ke,Ce,Ne,Oe,Se,ze,Me,Ee,je,Ie,De,Pe,Le,Ae,Fe,Te,He,Re,We,Ge,Ke,Ue,Ve,Be,Xe,Ze,qe,Ye,$e,Je,Qe,_e,nr,er,rr,or,tr,ir,ar,lr,cr,sr,ur,dr,fr,pr,hr,br,gr,mr,vr,yr,xr,wr,kr,Cr,Nr,Or,Sr=z(Zn||(Zn=$(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),zr=O(qn||(qn=$(["\n animation: "," 1.5s linear infinite;\n"])),Sr),Mr=O(me||(me=$(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-between;\n list-style: none;\n color: inherit;\n cursor: pointer;\n overflow: hidden;\n font-family: ",";\n\n // Left wedge\n &:before {\n content: '';\n position: absolute;\n left: 0;\n width: 4px;\n height: calc(100% - 14px);\n background-color: rgba(255, 255, 255, 0);\n border-radius: 0 6px 6px 0;\n transform: scale3d(0, 0.3, 0);\n transition: 200ms ease-in-out;\n transition-property: transform, background-color;\n }\n"])),R.default),Er=(Z(xe={},rn,O(ve||(ve=$(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),M.gray.light2)),Z(xe,en,O(ye||(ye=$(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),M.gray.dark4)),xe),jr=(Z(Ce={},dn,O(we||(we=$(["\n font-size: ","px;\n line-height: ","px;\n min-height: ","px;\n padding: ","px\n ","px;\n gap: ","px;\n\n &:before {\n max-height: ","px;\n }\n "])),T.body1.fontSize,T.body1.lineHeight,ce[dn],le[dn].y,le[dn].x,H[1],ce[dn])),Z(Ce,fn,O(ke||(ke=$(["\n font-size: ","px;\n line-height: ","px;\n min-height: ","px;\n padding: ","px\n ","px;\n gap: ","px;\n\n &:before {\n max-height: ","px;\n }\n "])),T.body2.fontSize,T.body2.lineHeight,ce[fn],le[fn].y,le[fn].x,H[2],ce[fn])),Ce),Ir=O(Ne||(Ne=$(["\n outline: none;\n\n &:before {\n transform: scaleY(1);\n }\n"]))),Dr=(Z(ze={},rn,O(Oe||(Oe=$(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Ir,M.blue.light3,M.blue.base)),Z(ze,en,O(Se||(Se=$(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Ir,M.blue.dark3,M.blue.light1)),ze),Pr=O(Me||(Me=$(["\n cursor: not-allowed;\n\n &:hover {\n background-color: inherit;\n }\n\n &:before {\n content: unset;\n }\n"]))),Lr=(Z(Ie={},rn,O(Ee||(Ee=$(["\n ",";\n color: ",";\n "])),Pr,M.gray.light1)),Z(Ie,en,O(je||(je=$(["\n ",";\n color: ",";\n "])),Pr,M.gray.dark1)),Ie),Ar=(Z(Le={},dn,O(De||(De=$(["\n min-width: ","px;\n "])),H[3])),Z(Le,fn,O(Pe||(Pe=$(["\n min-width: ","px;\n "])),H[4])),Le),Fr=O(Ae||(Ae=$(["\n display: inline-flex;\n gap: 8px;\n justify-content: start;\n align-items: inherit;\n overflow-wrap: anywhere;\n"]))),Tr=O(Fe||(Fe=$(["\n pointer-events: none;\n"]))),Hr=function(n){return O(Te||(Te=$(["\n font-weight: ",";\n"])),n?"bold":"normal")},Rr=a.forwardRef((function(n,e){var r,o=n.displayName,t=n.glyph,i=n.isSelected,l=n.isFocused,d=n.disabled,f=n.setSelected,p=n.className,h=c(ne),b=h.multiselect,v=h.darkMode,y=h.withIcons,x=h.inputValue,w=h.size,N=ee(v),z=g({prefix:"combobox-option-text"}),j=m(e,null),I=s((function(n){n.stopPropagation(),d||n.target!==j.current&&"INPUT"!==n.target.tagName||f()}),[d,j,f]),D=u((function(){if(t){if(C(t)||E(t,"Icon"))return t;console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",t)}}),[t]),P=u((function(){if(b){var n=L(F,{"aria-labelledby":z,checked:i,tabIndex:-1,disabled:d,darkMode:v,className:O(He||(He=$(["\n // TODO: Remove when this is resolved:\n // https://jira.mongodb.org/browse/PD-2171\n & > label > div {\n margin-top: 0;\n }\n "])))});return L(a.Fragment,null,L("span",{className:S(Fr,Tr)},y?D:n,L("span",{id:z,className:Hr(i)},Yn(o,x,"strong"))),y&&n)}return L(a.Fragment,null,L("span",{className:S(Fr,Tr)},D,L("span",{className:Hr(i)},Yn(o,x,"strong"))),i&&L(k,{glyph:"Checkmark",className:Ar[w],color:v?M.blue.light1:M.blue.base}))}),[b,D,i,o,x,w,v,z,d,y]);return L("li",{ref:j,role:"option","aria-selected":l,"aria-label":o,tabIndex:-1,className:S(Mr,jr[w],Er[N],(r={},Z(r,Dr[N],l),Z(r,Lr[N],d),r),p),onClick:I,onKeyDown:I},P)}));function Wr(n){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}Rr.displayName="ComboboxOption",Wr.displayName="ComboboxOption";var Gr,Kr,Ur,Vr,Br,Xr,Zr,qr,Yr,$r,Jr,Qr,_r,no,eo,ro,oo,to,io,ao,lo,co,so,uo,fo=(Z(Re={},dn,T.body1.fontSize),Z(Re,fn,T.body2.fontSize),Re),po=(Z(We={},dn,2),Z(We,fn,4),We),ho=(Z(Ge={},dn,T.body1.lineHeight+2*po[dn]),Z(Ge,fn,T.body2.lineHeight+2*po[fn]),Ge),bo=(Z(Ke={},dn,{y:(36-ho[dn]-2)/2,x:H[2]-1}),Z(Ke,fn,{y:(48-ho[fn]-2)/2,x:H[2]-1}),Ke),go=H[3],mo=(Z(Ue={},dn,fo[dn]+2*bo[dn].x+go+2),Z(Ue,fn,fo[fn]+2*bo[fn].x+go+2),Ue),vo=j("combobox-chip"),yo=function(n){return O(Ve||(Ve=$(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),R.default,mo[n])},xo=O(Be||(Be=$(["\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n cursor: text;\n transition: 150ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: inherit;\n border-radius: 6px;\n"]))),wo=(Z(qe={},rn,O(Xe||(Xe=$(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),M.gray.dark3,M.white,M.gray.base,W[rn].gray)),Z(qe,en,O(Ze||(Ze=$(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),M.gray.light2,M.gray.dark4,M.gray.base,W[en].gray)),qe),ko=function(n){return O(Ye||(Ye=$(["\n padding: ","px ","px;\n"])),bo[n].y,bo[n].x)},Co=(Z(Qe={},rn,O($e||($e=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),M.gray.dark1,M.gray.light2,M.gray.light1)),Z(Qe,en,O(Je||(Je=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),M.gray.dark1,M.gray.dark3,M.gray.dark2)),Qe),No=(Z(er={},rn,O(_e||(_e=$(["\n border-color: ",";\n "])),M.red.base)),Z(er,en,O(nr||(nr=$(["\n border-color: ",";\n "])),M.red.light1)),er),Oo=(Z(tr={},rn,O(rr||(rr=$(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),M.white,G[rn].input)),Z(tr,en,O(or||(or=$(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),M.gray.dark4,G[en].input)),tr),So=function(n){var e=n.overflow,r=n.size,o=O(ir||(ir=$(["\n flex-grow: 1;\n width: inherit;\n "])));switch(e){case hn:return O(ar||(ar=$(["\n ","\n display: block;\n height: ","px;\n white-space: nowrap;\n overflow-x: scroll;\n scroll-behavior: smooth;\n scrollbar-width: none;\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 "])),o,ho[r],vo);case pn:return O(lr||(lr=$(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n overflow-x: visible;\n min-height: ","px;\n "])),o,ho[r])}},zo=O(cr||(cr=$(["\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\n &:placeholder-shown {\n min-width: 100%;\n }\n &:focus {\n outline: none;\n }\n"])),R.default),Mo=(Z(dr={},rn,O(sr||(sr=$(["\n &::placeholder {\n color: ",";\n }\n "])),M.gray.dark1)),Z(dr,en,O(ur||(ur=$(["\n &::placeholder {\n color: ",";\n }\n "])),M.gray.light1)),dr),Eo=(Z(hr={},dn,O(fr||(fr=$(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n // Only add padding if there are chips\n &:not(:first-child) {\n padding-left: 4px;\n }\n "])),ho[dn],T.body1.fontSize,T.body1.lineHeight,fo[dn])),Z(hr,fn,O(pr||(pr=$(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n &:not(:first-child) {\n padding-left: 6px;\n }\n "])),ho[fn],T.body2.fontSize,T.body2.lineHeight,fo[fn])),hr),jo=function(n){return O(br||(br=$(["\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"])),n?"0s":"100ms")},Io=function(n,e){var r,o=null!==(r=null==e?void 0:e.length)&&void 0!==r?r:0;return O(gr||(gr=$(["\n max-width: 100%;\n width: ","px;\n // TODO: This doesn't quite work. Fix this\n max-width: calc(100% - ","px);\n "])),o*fo[n],2*go)},Do=O(mr||(mr=$(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n"])),go/2),Po=function(n){return O(vr||(vr=$(["\n height: ","px;\n width: ","px;\n margin-inline-end: calc(","px / 2);\n"])),go,go,bo[n].x)},Lo=(Z(wr={},rn,O(yr||(yr=$(["\n color: ",";\n "])),M.red.base)),Z(wr,en,O(xr||(xr=$(["\n color: ",";\n "])),M.red.light1)),wr),Ao=(Z(Nr={},dn,O(kr||(kr=$(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),T.body1.fontSize,T.body1.lineHeight,bo[dn].y)),Z(Nr,fn,O(Cr||(Cr=$(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),T.body2.fontSize,T.body2.lineHeight,bo[fn].y)),Nr),Fo=O(Or||(Or=$(["\n margin-bottom: 2px;\n"]))),To=O(Gr||(Gr=$(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n"]))),Ho=(Z(Vr={},dn,O(Kr||(Kr=$(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),T.body1.fontSize,T.body1.lineHeight)),Z(Vr,fn,O(Ur||(Ur=$(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),T.body2.fontSize,T.body2.lineHeight)),Vr),Ro=(Z(Zr={},rn,O(Br||(Br=$(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),M.black,M.gray.light2,M.blue.light2)),Z(Zr,en,O(Xr||(Xr=$(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),M.gray.light2,M.gray.dark2,M.blue.dark2)),Zr),Wo=(Z($r={},rn,O(qr||(qr=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n "])),M.gray.base,M.gray.light3)),Z($r,en,O(Yr||(Yr=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ","; ;\n "])),M.gray.dark2,M.gray.dark4,M.gray.dark2)),$r),Go=(Z(_r={},dn,O(Jr||(Jr=$(["\n padding-inline: 6px;\n padding-block: ","px;\n "])),po[dn])),Z(_r,fn,O(Qr||(Qr=$(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),po[fn])),_r),Ko=O(no||(no=$(["\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 100ms ease-in-out;\n"]))),Uo=(Z(oo={},dn,O(eo||(eo=$(["\n height: ","px;\n "])),ho[dn])),Z(oo,fn,O(ro||(ro=$(["\n height: ","px;\n "])),ho[fn])),oo),Vo=(Z(ao={},rn,O(to||(to=$(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),M.gray.dark2,M.black,M.gray.light1)),Z(ao,en,O(io||(io=$(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),M.gray.light1,M.gray.light3,M.gray.dark1)),ao),Bo=(Z(so={},rn,O(lo||(lo=$(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),M.gray.dark2)),Z(so,en,O(co||(co=$(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),M.gray.dark2)),so),Xo=a.forwardRef((function(n,e){var r=n.displayName,o=n.isFocused,t=n.onRemove,i=n.onFocus,a=c(ne),l=a.darkMode,s=a.size,p=a.disabled,h=a.chipTruncationLocation,b=void 0===h?"end":h,g=a.chipCharacterLimit,m=void 0===g?12:g,v=ee(l),y=!!m&&!!b&&"none"!==b&&r.length>m,x=d(null),w=u((function(){if(y){var n=m-3;switch(b){case"start":return"…"+r.substring(r.length-n).trim();case"middle":return r.substring(0,n/2).trim()+"…"+r.substring(r.length-n/2).trim();case"end":return r.substring(0,n).trim()+"…";default:return r}}return!1}),[m,b,r,y]);f((function(){var n;o&&!p&&(null==x||null===(n=x.current)||void 0===n||n.focus())}),[p,e,o]);return L("span",{role:"option","aria-selected":o,"data-testid":"lg-combobox-chip",ref:e,className:S(vo,To,Ro[v],Ho[s],Z({},Wo[v],p)),onClick:function(n){var e;null!==(e=x.current)&&void 0!==e&&e.contains(n.target)||i()},onKeyDown:function(n){p||n.keyCode!==I.Delete&&n.keyCode!==I.Backspace&&n.keyCode!==I.Enter&&n.keyCode!==I.Space||t()},tabIndex:-1},L("span",{className:S(Go[s])},w?L(U,{darkMode:l,definition:r,align:"bottom"},w):r),L("button",{"aria-label":"Deselect ".concat(r),"aria-disabled":p,disabled:p,ref:x,className:S(Ko,Vo[v],Uo[s],Z({},Bo[v],p)),onClick:function(){p||t()}},L(k,{glyph:"X"})))}));Xo.displayName="Chip";var Zo=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],qo=a.forwardRef((function(n,e){var r=n.children,o=n.id,t=n.refEl,a=n.labelId,l=n.menuWidth,s=n.searchLoadingMessage,d=n.searchErrorMessage,f=n.searchEmptyMessage,p=Y(n,Zo),h=c(ne),b=h.disabled,g=h.darkMode,y=h.size,x=h.isOpen,w=h.searchState,C=m(e,null),N=ee(g),z=v(t),E=i(z)?"unset":"".concat(Math.min(z,256),"px"),j=u((function(){var n=S(he,be[N],ge[y]);switch(w){case"loading":return L("span",{className:n},L(k,{glyph:"Refresh",color:g?M.blue.light1:M.blue.base,className:zr}),s);case"error":return L("span",{className:n},L(k,{glyph:"Warning",color:g?M.red.light1:M.red.base}),d);default:return r&&"object"===X(r)&&"length"in r&&r.length>0?L("ul",{className:pe},r):L("span",{className:n},f)}}),[N,y,w,g,s,d,r,f]);return L(V,q({active:x&&!b,spacing:4,align:"bottom",justify:"middle",refEl:t,adjustOnMutation:!0,className:S(se(l),ue[N])},p),L("div",{ref:C,id:o,role:"listbox","aria-labelledby":a,"aria-expanded":x,className:S(de,fe[N],O(uo||(uo=$(["\n max-height: ",";\n "])),E)),onMouseDownCapture:function(n){return n.preventDefault()}},j))}));qo.displayName="ComboboxMenu";var Yo=["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"];function $o(l){var c,m=l.children,v=l.label,C=l.description,O=l.placeholder,z=void 0===O?"Select":O,j=l["aria-label"],P=l.disabled,A=void 0!==P&&P,F=l.size,T=void 0===F?dn:F,H=l.darkMode,R=void 0!==H&&H,W=l.state,G=void 0===W?"none":W,K=l.errorMessage,U=l.searchState,V=void 0===U?"unset":U,$=l.searchEmptyMessage,Q=void 0===$?"No results found":$,_=l.searchErrorMessage,nn=void 0===_?"Could not get results!":_,en=l.searchLoadingMessage,rn=void 0===en?"Loading results...":en,fn=l.filteredOptions,pn=l.onFilter,hn=l.clearable,gn=void 0===hn||hn,mn=l.onClear,vn=l.overflow,yn=void 0===vn?"expand-y":vn,xn=l.multiselect,wn=void 0!==xn&&xn,kn=l.initialValue,Cn=l.onChange,Nn=l.value,On=l.chipTruncationLocation,Sn=l.chipCharacterLimit,zn=void 0===Sn?12:Sn,Mn=l.className,En=l.usePortal,jn=void 0===En||En,In=l.portalClassName,Dn=l.portalContainer,Pn=l.scrollContainer,Ln=l.popoverZIndex,An=Y(l,Yo),Fn=ee(R),Tn=y({prefix:"option"}),Hn=y({prefix:"chip"}),Rn=g({prefix:"combobox-input"}),Wn=g({prefix:"combobox-label"}),Gn=g({prefix:"combobox-menu"}),Kn=d(null),Un=d(null),Vn=d(null),Bn=d(null),Xn=d(null),Zn=J(p(!1),2),qn=Zn[0],Yn=Zn[1],re=x(qn),oe=J(p(null),2),te=oe[0],ae=oe[1],le=J(p(null),2),ce=le[0],se=le[1],ue=x(ce),de=J(p(""),2),fe=de[0],pe=de[1],he=x(fe),be=J(p(null),2),ge=be[0],me=be[1],ve=!o(ce)&&(e(ce)&&ce.length>0||t(ce)),ye=wn&&e(ce)&&ce.length>0?void 0:z,xe=function(){return Yn(!1)},we=function(){return Yn(!0)},ke=u((function(){return _n(m)}),[m]),Ce=s((function(n){return!wn||"string"!=typeof n&&"number"!=typeof n?!wn&&e(n)&&D.error("Error in Combobox: multiselect is set to `false`, but recieved an Array value"):D.error("Error in Combobox: multiselect is set to `true`, but recieved a ".concat(X(n),' value: "').concat(n,'"')),wn&&e(n)}),[wn]),Ne=s((function(n){!A&&Bn&&Bn.current&&(Bn.current.focus(),i(n)||Bn.current.setSelectionRange(n,n))}),[A]),Oe=s((function(e){if(Ce(ce)){var r=n(ce);o(e)?r.length=0:ce.includes(e)?r.splice(r.indexOf(e),1):(r.push(e),pe("")),se(r),null==Cn||Cn(r)}else{var t=e;se(t),null==Cn||Cn(t)}}),[Ce,Cn,ce]),Se=s((function(n){return Ce(ce)?ce.includes(n):n===ce}),[Ce,ce]),ze=s((function(n){var e,r,o,t,i=(r=ke,(e=n)?null!==(o=null===(t=r.find((function(n){return n.displayName===e})))||void 0===t?void 0:t.value)&&void 0!==o?o:e:"");return Se(i)}),[ke,Se]),Me=s((function(n){var e="string"==typeof n?n:n.value;return fn&&fn.length>0?fn.includes(e):!!ze(fe)||("string"==typeof n?Qn(e,ke):n.displayName).toLowerCase().includes(fe.toLowerCase())}),[fn,ze,fe,ke]),Ee=u((function(){return ke.filter(Me)}),[ke,Me]),je=s((function(n){return!!n&&!!ke.find((function(e){return e.value===n}))}),[ke]),Ie=s((function(n){return Ee?Ee.findIndex((function(e){return e.value===n})):-1}),[Ee]),De=s((function(n){if(Ee&&Ee.length>=n){var e=Ee[n];return e?e.value:void 0}}),[Ee]),Pe=s((function(){return Ce(ce)?ce.findIndex((function(n){var e,r;return null===(e=Hn(n))||void 0===e||null===(r=e.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[Hn,Ce,ce]),Le=J(p(),2),Ae=Le[0],Fe=Le[1],Te=s((function(n){var e,r=null!==(e=null==Ee?void 0:Ee.length)&&void 0!==e?e:0,o=r-1>0?r-1:0,t=Ie(te);switch(n&&qn&&(me(null),Ne()),n){case"next":var i=De(t+1<r?t+1:0);ae(null!=i?i:null);break;case"prev":var a=De(t-1>=0?t-1:o);ae(null!=a?a:null);break;case"last":var l=De(o);ae(null!=l?l:null);break;default:var c=De(0);ae(null!=c?c:null)}}),[te,Ie,De,qn,Ne,null==Ee?void 0:Ee.length]),He=s((function(n,e){if(Ce(ce))switch(n){case"next":var r=null!=e?e:Pe(),o=r+1<ce.length?r+1:ce.length-1,t=ce[o];me(t);break;case"prev":var i=null!=e?e:Pe(),a=i>0?i-1:i<0?ce.length-1:0,l=ce[a];me(l);break;case"first":var c=ce[0];me(c);break;case"last":var s=ce[ce.length-1];me(s);break;default:me(null)}}),[Pe,Ce,ce]),Re=s((function(n,e){switch(n&&ae(null),n){case"right":switch(Ae){case on:var r,o,t;if((null===(r=Bn.current)||void 0===r?void 0:r.selectionEnd)===(null===(o=Bn.current)||void 0===o?void 0:o.value.length))null===(t=Un.current)||void 0===t||t.focus();break;case an:case cn:case ln:if(Ae===ln||1===(null==ce?void 0:ce.length)){Ne(0),He(null),e.preventDefault();break}He("next")}break;case"left":switch(Ae){case tn:var i;e.preventDefault(),Ne(null==Bn||null===(i=Bn.current)||void 0===i?void 0:i.value.length);break;case on:case cn:case ln:if(Ce(ce)){var a;if(Ae===on&&0!==(null===(a=Bn.current)||void 0===a?void 0:a.selectionStart))break;He("prev")}}break;default:He(null)}}),[Ae,Ce,ce,Ne,He]);f((function(){fe!==he&&Te("first")}),[fe,qn,he,Te]),f((function(){if(te){var n=Tn(te);if(n&&n.current&&Xn.current){var e=n.current.offsetTop,r=Xn.current,o=r.scrollTop;(e>r.offsetHeight||e<o)&&(Xn.current.scrollTop=e)}}}),[te,Tn]);var We=s((function(n){if(E(n,"ComboboxOption")){var e=$n(n.props),r=e.value,o=e.displayName;if(Me(r)){var t=n.props,i=t.className,l=t.glyph,c=t.disabled,s=ke.findIndex((function(n){return n.value===r})),u=te===r,d=Ce(ce)?ce.includes(r):ce===r,f=Tn(r);return L(Rr,{value:r,displayName:o,isFocused:u,isSelected:d,disabled:c,setSelected:function(){ae(r),Oe(r),Ne(),r===ce&&xe()},glyph:l,className:i,index:s,ref:f})}}else if(E(n,"ComboboxGroup")){var p=a.Children.map(n.props.children,We);if(p&&(null==p?void 0:p.length)>0)return L(ie,{label:n.props.label,className:n.props.className},a.Children.map(p,We))}}),[ke,Tn,te,Ce,ce,Ne,Me,Oe]),Ge=u((function(){return a.Children.map(m,We)}),[m,We]),Ke=u((function(){if(Ce(ce))return ce.filter(je).map((function(n,e){var r=Qn(n,ke),o=ge===n,t=Hn(n),i=e>=ce.length-1;return L(Xo,{key:n,displayName:r,isFocused:o,onRemove:function(){i?(Ne(),He(null)):He("next",e),Oe(n)},onFocus:function(){me(n)},ref:t})}))}),[Ce,ce,je,ke,ge,Hn,Oe,Ne,He]),Ue=u((function(){return L(a.Fragment,null,gn&&ve&&L(N,{"aria-label":"Clear selection","aria-disabled":A,disabled:A,ref:Un,onClick:function(n){A||(Oe(null),null==mn||mn(n),null==pn||pn(""),qn||we())},onFocus:$e,className:S(Do),darkMode:R},L(k,{glyph:"XWithCircle"})),L(k,"error"===G?{glyph:"Warning",color:R?M.red.light1:M.red.base,className:Po(T)}:{glyph:"CaretDown",className:Po(T)}))}),[gn,ve,A,G,R,T,Oe,mn,pn,qn]),Ve=u((function(){return ke.some((function(n){return n.hasGlyph}))}),[ke]),Be=s((function(){if(!Ce(ce)&&ce===ue){var n=Ee.find((function(n){return n.displayName===fe||n.value===fe}));if(n&&!Nn)se(n.value);else{var e,r=null!==(e=Qn(ce,ke))&&void 0!==e?e:"";pe(r)}}}),[ke,fe,Ce,ue,ce,Nn,Ee]),Xe=s((function(){if(ve){if(Ce(ce))nr();else if(!Ce(ce)){var n,e=null!==(n=Qn(ce,ke))&&void 0!==n?n:"";pe(e),xe()}}else pe("")}),[ve,ke,Ce,ce]);f((function(){if(kn)if(e(kn)){var n,r=null!==(n=kn.filter((function(n){return je(n)})))&&void 0!==n?n:[];se(r)}else je(kn)&&se(kn);else se(function(n){return n?[]:null}(wn))}),[]),f((function(){if(!i(Nn)&&Nn!==he)if(o(Nn))se(null);else if(Ce(Nn)){var n=Nn.filter(je);se(n)}else se(je(Nn)?Nn:null)}),[Ce,je,he,Nn]),f((function(){r(ce,ue)||Xe()}),[Xe,ue,ce]),f((function(){!qn&&re&&Be()}),[qn,re,Be]);var Ze=J(p(0),2),qe=Ze[0],Ye=Ze[1];f((function(){var n,e;Ye(null!==(n=null===(e=Kn.current)||void 0===e?void 0:e.clientWidth)&&void 0!==n?n:0)}),[Kn,qn,te,ce]);var $e=function(){ae(null)};w("mousedown",(function(n){_e(n)||(n.preventDefault(),n.stopPropagation())}),{enabled:qn}),w("click",(function(n){_e(n)||(n.stopPropagation(),xe())}),{options:{capture:!0},enabled:qn});var Je,Qe=function(n){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?B(Object(r),!0).forEach((function(e){Z(n,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):B(Object(r)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}))}return n}({popoverZIndex:Ln},jn?{usePortal:jn,portalClassName:In,portalContainer:Dn,scrollContainer:Pn}:{usePortal:jn});return L(ne.Provider,{value:{multiselect:wn,darkMode:R,size:T,withIcons:Ve,disabled:A,isOpen:qn,state:G,searchState:V,chipTruncationLocation:On,chipCharacterLimit:zn,inputValue:fe}},L("div",q({className:S(yo(T),Mn)},An),L("div",{className:Fo},v&&L(h,{id:Wn,htmlFor:Rn,darkMode:R},v),C&&L(b,{darkMode:R},C)),L("div",{ref:Kn,role:"combobox","aria-expanded":qn,"aria-controls":Gn,"aria-owns":Gn,tabIndex:-1,onMouseDown:function(n){A&&n.preventDefault()},onClick:function(n){if(n.target!==Bn.current){var e=0;if(Bn.current)e=n.nativeEvent.offsetX>Bn.current.offsetLeft+Bn.current.clientWidth?fe.length:0;Ne(e)}},onFocus:function(n){nr(),we(),Fe(function(n){var e,r,o,t;if(!n)return;if(null!==(e=Bn.current)&&void 0!==e&&e.contains(n))return on;if(null!==(r=Un.current)&&void 0!==r&&r.contains(n))return tn;var i=Ce(ce)?ce.findIndex((function(e){var r,o;return null===(r=Hn(e))||void 0===r||null===(o=r.current)||void 0===o?void 0:o.contains(n)})):-1;if(Ce(ce)){if(0===i)return an;if(i===ce.length-1)return ln;if(i>0)return cn}if(null!==(o=Xn.current)&&void 0!==o&&o.contains(n))return un;if(null!==(t=Kn.current)&&void 0!==t&&t.contains(n))return sn}(n.target))},onKeyDown:function(n){var e,r,t=null===(e=Xn.current)||void 0===e?void 0:e.contains(document.activeElement);if((null===(r=Kn.current)||void 0===r?void 0:r.contains(document.activeElement))||t){if(n.ctrlKey||n.shiftKey||n.altKey)return;switch(n.keyCode){case I.Tab:switch(Ae){case"Input":ve||(xe(),Te("first"),He(null));break;case"LastChip":He(null)}break;case I.Escape:xe(),Te("first");break;case I.Enter:!qn||Ae!==on||o(te)||function(n){if("string"==typeof n){var e=Jn(n,ke);return!(null==e||!e.isDisabled)}return!!n.isDisabled}(te)?Ae===tn&&(Oe(null),Ne()):Oe(te);break;case I.Backspace:var i;if(Ce(ce))"Input"===Ae&&0===(null===(i=Bn.current)||void 0===i?void 0:i.selectionStart)&&He("last");we();break;case I.ArrowDown:qn?(n.preventDefault(),Te("next")):we();break;case I.ArrowUp:qn?(n.preventDefault(),Te("prev")):we();break;case I.ArrowRight:Re("right",n);break;case I.ArrowLeft:Re("left",n);break;default:qn||we()}}},onTransitionEnd:function(){var n,e;Ye(null!==(n=null===(e=Kn.current)||void 0===e?void 0:e.clientWidth)&&void 0!==n?n:0)},className:S(xo,wo[Fn],ko(T),(c={},Z(c,Co[Fn],A),Z(c,No[Fn],G===bn),Z(c,Oo[Fn],(Je=on,Je===Ae)),c))},L("div",{ref:Vn,className:So({size:T,overflow:yn})},Ke,L("input",{"aria-label":null!=j?j:v,"aria-autocomplete":"list","aria-controls":Gn,"aria-labelledby":Wn,ref:Bn,id:Rn,className:S(zo,Eo[T],Mo[Fn],jo(qn),Z({},Io(T,fe),Ce(ce))),placeholder:ye,disabled:null!=A?A:void 0,onChange:function(n){var e=n.target.value;pe(e),null==pn||pn(e)},value:fe,autoComplete:"off"})),Ue),"error"===G&&K&&L("div",{className:S(Lo[Fn],Ao[T])},K),L(qo,q({id:Gn,labelId:Wn,refEl:Kn,ref:Xn,menuWidth:qe,searchLoadingMessage:rn,searchErrorMessage:nn,searchEmptyMessage:Q},Qe),Ge)));function _e(n){var e,r,o=n.target;return(null===(e=Xn.current)||void 0===e?void 0:e.contains(o))||(null===(r=Kn.current)||void 0===r?void 0:r.contains(o))||!1}function nr(){Vn&&Vn.current&&(Vn.current.scrollLeft=Vn.current.scrollWidth)}}export{$o as Combobox,ae as ComboboxGroup,Wr as ComboboxOption};
|
|
1
|
+
import n from"lodash/clone";import e from"lodash/isArray";import r from"lodash/isEqual";import o from"lodash/isNull";import t from"lodash/isString";import i from"lodash/isUndefined";import a,{createContext as l,useContext as c,useCallback as s,useMemo as u,useRef as d,useEffect as p,forwardRef as f,useState as h}from"react";import{Label as b,Description as g}from"@leafygreen-ui/typography";import{useIdAllocator as m,useForwardedRef as v,useAvailableSpace as y,useDynamicRefs as x,usePrevious as w,useEventListener as k}from"@leafygreen-ui/hooks";import C,{isComponentGlyph as N}from"@leafygreen-ui/icon";import O from"@leafygreen-ui/icon-button";import{css as S,cx as z,keyframes as M}from"@leafygreen-ui/emotion";import{palette as E}from"@leafygreen-ui/palette";import{isComponentType as j,createUniqueClassName as I,keyMap as D,consoleOnce as P}from"@leafygreen-ui/lib";import L from"lodash/escapeRegExp";import{jsx as A}from"@emotion/react";import F from"lodash/kebabCase";import T from"@leafygreen-ui/checkbox";import{typeScales as H,spacing as R,fontFamilies as W,hoverRing as G,focusRing as K}from"@leafygreen-ui/tokens";import{transparentize as U}from"polished";import V from"@leafygreen-ui/inline-definition";import B from"@leafygreen-ui/popover";function X(n,e){var r=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.push.apply(r,o)}return r}function Z(n){return Z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Z(n)}function q(n,e,r){return e in n?Object.defineProperty(n,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[e]=r,n}function Y(){return Y=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(n[o]=r[o])}return n},Y.apply(this,arguments)}function $(n,e){if(null==n)return{};var r,o,t=function(n,e){if(null==n)return{};var r,o,t={},i=Object.keys(n);for(o=0;o<i.length;o++)r=i[o],e.indexOf(r)>=0||(t[r]=n[r]);return t}(n,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);for(o=0;o<i.length;o++)r=i[o],e.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function J(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Q(n,e){return function(n){if(Array.isArray(n))return n}(n)||function(n,e){var r=null==n?null:"undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(null==r)return;var o,t,i=[],a=!0,l=!1;try{for(r=r.call(n);!(a=(o=r.next()).done)&&(i.push(o.value),!e||i.length!==e);a=!0);}catch(n){l=!0,t=n}finally{try{a||null==r.return||r.return()}finally{if(l)throw t}}return i}(n,e)||nn(n,e)||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 _(n){return function(n){if(Array.isArray(n))return en(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||nn(n)||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 nn(n,e){if(n){if("string"==typeof n)return en(n,e);var r=Object.prototype.toString.call(n).slice(8,-1);return"Object"===r&&n.constructor&&(r=n.constructor.name),"Map"===r||"Set"===r?Array.from(n):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?en(n,e):void 0}}function en(n,e){(null==e||e>n.length)&&(e=n.length);for(var r=0,o=new Array(e);r<e;r++)o[r]=n[r];return o}var rn="dark",on="light",tn="Input",an="ClearButton",ln="FirstChip",cn="LastChip",sn="MiddleChip",un="Combobox",dn="Menu",pn="default",fn="large",hn="expand-y",bn="scroll-x",gn="error";var mn,vn,yn,xn,wn,kn,Cn,Nn,On,Sn,zn,Mn,En,jn,In,Dn,Pn,Ln,An,Fn,Tn,Hn,Rn,Wn,Gn,Kn,Un,Vn,Bn,Xn,Zn,qn,Yn,$n=function(n,e,r){if(e&&r){var o=L(e),t=new RegExp(o,"gi"),i=n.matchAll(t);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,b=p+f+h,g=new Array(h).fill("");g[0]=a.createElement(r,{key:b},f),l.splice.apply(l,[p,h].concat(_(g)))}return A(a.Fragment,null,l)}return A(a.Fragment,null,n)}return A(a.Fragment,null,n)},Jn=function(n){var e,r=n.value,o=n.displayName;return{value:null!=r?r:F(o),displayName:null!==(e=null!=o?o:r)&&void 0!==e?e:""}},Qn=function(n,e){if(n)return e.find((function(e){return e.value===n}))},_n=function(n,e){var r,o;return n?null!==(r=null===(o=Qn(n,e))||void 0===o?void 0:o.displayName)&&void 0!==r?r:n:""},ne=function n(e){return a.Children.toArray(e).reduce((function(e,r){if(j(r,"ComboboxOption")){var o=Jn(r.props),t=o.value,i=o.displayName,a=r.props,l=a.glyph,c=a.disabled;return[].concat(_(e),[{value:t,displayName:i,isDisabled:!!c,hasGlyph:!!l}])}if(j(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(_(e),_(n(s)))}}),[])},ee=l({multiselect:!1,darkMode:!1,size:pn,withIcons:!1,disabled:!1,isOpen:!1,state:"none",searchState:"unset"}),re=function(n){return n?rn:on},oe=(q(yn={},on,S(mn||(mn=J(["\n padding-top: 8px;\n "])))),q(yn,rn,S(vn||(vn=J(["\n padding-top: 8px;\n "])))),yn),te=S(xn||(xn=J(["\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: bold;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n"]))),ie=(q(Cn={},on,S(wn||(wn=J(["\n color: ",";\n "])),E.gray.dark1)),q(Cn,rn,S(kn||(kn=J(["\n color: ",";\n "])),E.gray.light1)),Cn);function ae(n){var e=n.label,r=n.className,o=n.children,t=c(ee).darkMode,i=re(t),l=m({prefix:"combobox-group"});return a.Children.count(o)>0?A("div",{className:z(oe[i],r)},A("div",{className:z(te,ie[i]),id:l},e),A("div",{role:"group","aria-labelledby":l},o)):A(a.Fragment,null)}function le(n){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}le.displayName="ComboboxGroup";var ce=(q(Nn={},pn,{x:12,y:8}),q(Nn,fn,{x:12,y:8}),Nn),se=(q(On={},pn,H.body1.lineHeight+2*ce[pn].y),q(On,fn,H.body2.lineHeight+2*ce[fn].y),On),ue=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return S(Sn||(Sn=J(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),n)},de=(q(En={},on,S(zn||(zn=J(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),U(.85,E.black),E.gray.light2)),q(En,rn,S(Mn||(Mn=J(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),U(.85,E.black),E.gray.dark3)),En),pe=S(jn||(jn=J(["\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"])),R[2],W.default),fe=(q(Pn={},on,S(In||(In=J(["\n color: ",";\n background-color: ",";\n "])),E.black,E.white)),q(Pn,rn,S(Dn||(Dn=J(["\n color: ",";\n background-color: ",";\n "])),E.gray.light1,E.gray.dark3)),Pn);q(Fn={},pn,S(Ln||(Ln=J(["\n min-height: ","px;\n "])),se[pn])),q(Fn,fn,S(An||(An=J(["\n min-height: ","px;\n "])),se[fn]));var he=S(Tn||(Tn=J(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),be=S(Hn||(Hn=J(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),ge=(q(Gn={},on,S(Rn||(Rn=J(["\n color: ",";\n "])),E.gray.dark3)),q(Gn,rn,S(Wn||(Wn=J(["\n color: ",";\n "])),E.gray.light3)),Gn),me=(q(Vn={},pn,S(Kn||(Kn=J(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),H.body1.fontSize,H.body1.lineHeight,ce[pn].y,ce[pn].x)),q(Vn,fn,S(Un||(Un=J(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),H.body2.fontSize,H.body2.lineHeight,ce[fn].y,ce[fn].x)),Vn);q(Zn={},pn,S(Bn||(Bn=J(["\n height: ","px;\n width: ","px;\n "])),H.body1.fontSize,H.body1.fontSize)),q(Zn,fn,S(Xn||(Xn=J(["\n height: ","px;\n width: ","px;\n "])),H.body2.fontSize,H.body2.fontSize));var ve,ye,xe,we,ke,Ce,Ne,Oe,Se,ze,Me,Ee,je,Ie,De,Pe,Le,Ae,Fe,Te,He,Re,We,Ge,Ke,Ue,Ve,Be,Xe,Ze,qe,Ye,$e,Je,Qe,_e,nr,er,rr,or,tr,ir,ar,lr,cr,sr,ur,dr,pr,fr,hr,br,gr,mr,vr,yr,xr,wr,kr,Cr,Nr,Or,Sr,zr=M(qn||(qn=J(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Mr=S(Yn||(Yn=J(["\n animation: "," 1.5s linear infinite;\n"])),zr),Er=S(ve||(ve=J(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-between;\n list-style: none;\n color: inherit;\n cursor: pointer;\n overflow: hidden;\n font-family: ",";\n\n // Left wedge\n &:before {\n content: '';\n position: absolute;\n left: 0;\n width: 4px;\n height: calc(100% - 14px);\n background-color: rgba(255, 255, 255, 0);\n border-radius: 0 6px 6px 0;\n transform: scale3d(0, 0.3, 0);\n transition: 200ms ease-in-out;\n transition-property: transform, background-color;\n }\n"])),W.default),jr=(q(we={},on,S(ye||(ye=J(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),E.gray.light2)),q(we,rn,S(xe||(xe=J(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),E.gray.dark4)),we),Ir=(q(Ne={},pn,S(ke||(ke=J(["\n font-size: ","px;\n line-height: ","px;\n min-height: ","px;\n padding: ","px\n ","px;\n gap: ","px;\n\n &:before {\n max-height: ","px;\n }\n "])),H.body1.fontSize,H.body1.lineHeight,se[pn],ce[pn].y,ce[pn].x,R[1],se[pn])),q(Ne,fn,S(Ce||(Ce=J(["\n font-size: ","px;\n line-height: ","px;\n min-height: ","px;\n padding: ","px\n ","px;\n gap: ","px;\n\n &:before {\n max-height: ","px;\n }\n "])),H.body2.fontSize,H.body2.lineHeight,se[fn],ce[fn].y,ce[fn].x,R[2],se[fn])),Ne),Dr=S(Oe||(Oe=J(["\n outline: none;\n\n &:before {\n transform: scaleY(1);\n }\n"]))),Pr=(q(Me={},on,S(Se||(Se=J(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Dr,E.blue.light3,E.blue.base)),q(Me,rn,S(ze||(ze=J(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Dr,E.blue.dark3,E.blue.light1)),Me),Lr=S(Ee||(Ee=J(["\n cursor: not-allowed;\n\n &:hover {\n background-color: inherit;\n }\n\n &:before {\n content: unset;\n }\n"]))),Ar=(q(De={},on,S(je||(je=J(["\n ",";\n color: ",";\n "])),Lr,E.gray.light1)),q(De,rn,S(Ie||(Ie=J(["\n ",";\n color: ",";\n "])),Lr,E.gray.dark1)),De),Fr=(q(Ae={},pn,S(Pe||(Pe=J(["\n min-width: ","px;\n "])),R[3])),q(Ae,fn,S(Le||(Le=J(["\n min-width: ","px;\n "])),R[4])),Ae),Tr=S(Fe||(Fe=J(["\n display: inline-flex;\n gap: 8px;\n justify-content: start;\n align-items: inherit;\n overflow-wrap: anywhere;\n"]))),Hr=S(Te||(Te=J(["\n pointer-events: none;\n"]))),Rr=function(n){return S(He||(He=J(["\n font-weight: ",";\n"])),n?"bold":"normal")},Wr=a.forwardRef((function(n,e){var r,o=n.displayName,t=n.glyph,i=n.isSelected,l=n.isFocused,d=n.disabled,p=n.setSelected,f=n.className,h=c(ee),b=h.multiselect,g=h.darkMode,y=h.withIcons,x=h.inputValue,w=h.size,k=re(g),O=m({prefix:"combobox-option-text"}),M=v(e,null),I=s((function(n){n.stopPropagation(),d||n.target!==M.current&&"INPUT"!==n.target.tagName||p()}),[d,M,p]),D=u((function(){if(t){if(N(t)||j(t,"Icon"))return t;console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",t)}}),[t]),P=u((function(){if(b){var n=A(T,{"aria-labelledby":O,checked:i,tabIndex:-1,disabled:d,darkMode:g,className:S(Re||(Re=J(["\n // TODO: Remove when this is resolved:\n // https://jira.mongodb.org/browse/PD-2171\n & > label > div {\n margin-top: 0;\n }\n "])))});return A(a.Fragment,null,A("span",{className:z(Tr,Hr)},y?D:n,A("span",{id:O,className:Rr(i)},$n(o,x,"strong"))),y&&n)}return A(a.Fragment,null,A("span",{className:z(Tr,Hr)},D,A("span",{className:Rr(i)},$n(o,x,"strong"))),i&&A(C,{glyph:"Checkmark",className:Fr[w],color:g?E.blue.light1:E.blue.base}))}),[b,D,i,o,x,w,g,O,d,y]);return A("li",{ref:M,role:"option","aria-selected":l,"aria-label":o,tabIndex:-1,className:z(Er,Ir[w],jr[k],(r={},q(r,Pr[k],l),q(r,Ar[k],d),r),f),onClick:I,onKeyDown:I},P)}));function Gr(n){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}Wr.displayName="ComboboxOption",Gr.displayName="ComboboxOption";var Kr,Ur,Vr,Br,Xr,Zr,qr,Yr,$r,Jr,Qr,_r,no,eo,ro,oo,to,io,ao,lo,co,so,uo,po,fo=(q(We={},pn,H.body1.fontSize),q(We,fn,H.body2.fontSize),We),ho=(q(Ge={},pn,2),q(Ge,fn,4),Ge),bo=(q(Ke={},pn,H.body1.lineHeight+2*ho[pn]),q(Ke,fn,H.body2.lineHeight+2*ho[fn]),Ke),go=(q(Ue={},pn,{y:(36-bo[pn]-2)/2,x:R[2]-1}),q(Ue,fn,{y:(48-bo[fn]-2)/2,x:R[2]-1}),Ue),mo=R[3],vo=(q(Ve={},pn,fo[pn]+2*go[pn].x+mo+2),q(Ve,fn,fo[fn]+2*go[fn].x+mo+2),Ve),yo=I("combobox-chip"),xo=function(n){return S(Be||(Be=J(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),W.default,vo[n])},wo=S(Xe||(Xe=J(["\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n cursor: text;\n transition: 150ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: inherit;\n border-radius: 6px;\n"]))),ko=(q(Ye={},on,S(Ze||(Ze=J(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),E.gray.dark3,E.white,E.gray.base,G[on].gray)),q(Ye,rn,S(qe||(qe=J(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),E.gray.light2,E.gray.dark4,E.gray.base,G[rn].gray)),Ye),Co=function(n){return S($e||($e=J(["\n padding: ","px ","px;\n"])),go[n].y,go[n].x)},No=(q(_e={},on,S(Je||(Je=J(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),E.gray.dark1,E.gray.light2,E.gray.light1)),q(_e,rn,S(Qe||(Qe=J(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),E.gray.dark1,E.gray.dark3,E.gray.dark2)),_e),Oo=(q(rr={},on,S(nr||(nr=J(["\n border-color: ",";\n "])),E.red.base)),q(rr,rn,S(er||(er=J(["\n border-color: ",";\n "])),E.red.light1)),rr),So=(q(ir={},on,S(or||(or=J(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),E.white,K[on].input)),q(ir,rn,S(tr||(tr=J(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),E.gray.dark4,K[rn].input)),ir),zo=function(n){var e=n.overflow,r=n.size,o=S(ar||(ar=J(["\n flex-grow: 1;\n width: inherit;\n "])));switch(e){case bn:return S(lr||(lr=J(["\n ","\n display: block;\n height: ","px;\n white-space: nowrap;\n overflow-x: scroll;\n scroll-behavior: smooth;\n scrollbar-width: none;\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 "])),o,bo[r],yo);case hn:return S(cr||(cr=J(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n overflow-x: visible;\n min-height: ","px;\n "])),o,bo[r])}},Mo=S(sr||(sr=J(["\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\n &:placeholder-shown {\n min-width: 100%;\n }\n &:focus {\n outline: none;\n }\n"])),W.default),Eo=(q(pr={},on,S(ur||(ur=J(["\n &::placeholder {\n color: ",";\n }\n "])),E.gray.dark1)),q(pr,rn,S(dr||(dr=J(["\n &::placeholder {\n color: ",";\n }\n "])),E.gray.light1)),pr),jo=(q(br={},pn,S(fr||(fr=J(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n // Only add padding if there are chips\n &:not(:first-child) {\n padding-left: 4px;\n }\n "])),bo[pn],H.body1.fontSize,H.body1.lineHeight,fo[pn])),q(br,fn,S(hr||(hr=J(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n &:not(:first-child) {\n padding-left: 6px;\n }\n "])),bo[fn],H.body2.fontSize,H.body2.lineHeight,fo[fn])),br),Io=function(n){return S(gr||(gr=J(["\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"])),n?"0s":"100ms")},Do=function(n,e){var r,o=null!==(r=null==e?void 0:e.length)&&void 0!==r?r:0;return S(mr||(mr=J(["\n max-width: 100%;\n width: ","px;\n // TODO: This doesn't quite work. Fix this\n max-width: calc(100% - ","px);\n "])),o*fo[n],2*mo)},Po=S(vr||(vr=J(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n"])),mo/2),Lo=function(n){return S(yr||(yr=J(["\n height: ","px;\n width: ","px;\n margin-inline-end: calc(","px / 2);\n"])),mo,mo,go[n].x)},Ao=(q(kr={},on,S(xr||(xr=J(["\n color: ",";\n "])),E.red.base)),q(kr,rn,S(wr||(wr=J(["\n color: ",";\n "])),E.red.light1)),kr),Fo=(q(Or={},pn,S(Cr||(Cr=J(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),H.body1.fontSize,H.body1.lineHeight,go[pn].y)),q(Or,fn,S(Nr||(Nr=J(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),H.body2.fontSize,H.body2.lineHeight,go[fn].y)),Or),To=S(Sr||(Sr=J(["\n margin-bottom: 2px;\n"]))),Ho=S(Kr||(Kr=J(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n"]))),Ro=(q(Br={},pn,S(Ur||(Ur=J(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),H.body1.fontSize,H.body1.lineHeight)),q(Br,fn,S(Vr||(Vr=J(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),H.body2.fontSize,H.body2.lineHeight)),Br),Wo=(q(qr={},on,S(Xr||(Xr=J(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),E.black,E.gray.light2,E.blue.light2)),q(qr,rn,S(Zr||(Zr=J(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),E.gray.light2,E.gray.dark2,E.blue.dark2)),qr),Go=(q(Jr={},on,S(Yr||(Yr=J(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n "])),E.gray.base,E.gray.light3)),q(Jr,rn,S($r||($r=J(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ","; ;\n "])),E.gray.dark2,E.gray.dark4,E.gray.dark2)),Jr),Ko=(q(no={},pn,S(Qr||(Qr=J(["\n padding-inline: 6px;\n padding-block: ","px;\n "])),ho[pn])),q(no,fn,S(_r||(_r=J(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),ho[fn])),no),Uo=S(eo||(eo=J(["\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 100ms ease-in-out;\n"]))),Vo=(q(to={},pn,S(ro||(ro=J(["\n height: ","px;\n "])),bo[pn])),q(to,fn,S(oo||(oo=J(["\n height: ","px;\n "])),bo[fn])),to),Bo=(q(lo={},on,S(io||(io=J(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),E.gray.dark2,E.black,E.gray.light1)),q(lo,rn,S(ao||(ao=J(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),E.gray.light1,E.gray.light3,E.gray.dark1)),lo),Xo=(q(uo={},on,S(co||(co=J(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),E.gray.dark2)),q(uo,rn,S(so||(so=J(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),E.gray.dark2)),uo),Zo=a.forwardRef((function(n,e){var r=n.displayName,o=n.isFocused,t=n.onRemove,i=n.onFocus,a=c(ee),l=a.darkMode,s=a.size,f=a.disabled,h=a.chipTruncationLocation,b=void 0===h?"end":h,g=a.chipCharacterLimit,m=void 0===g?12:g,v=re(l),y=!!m&&!!b&&"none"!==b&&r.length>m,x=d(null),w=u((function(){if(y){var n=m-3;switch(b){case"start":return"…"+r.substring(r.length-n).trim();case"middle":return r.substring(0,n/2).trim()+"…"+r.substring(r.length-n/2).trim();case"end":return r.substring(0,n).trim()+"…";default:return r}}return!1}),[m,b,r,y]);p((function(){var n;o&&!f&&(null==x||null===(n=x.current)||void 0===n||n.focus())}),[f,e,o]);return A("span",{role:"option","aria-selected":o,"data-testid":"lg-combobox-chip",ref:e,className:z(yo,Ho,Wo[v],Ro[s],q({},Go[v],f)),onClick:function(n){var e;null!==(e=x.current)&&void 0!==e&&e.contains(n.target)||i()},onKeyDown:function(n){f||n.keyCode!==D.Delete&&n.keyCode!==D.Backspace&&n.keyCode!==D.Enter&&n.keyCode!==D.Space||t()},tabIndex:-1},A("span",{className:z(Ko[s])},w?A(V,{darkMode:l,definition:r,align:"bottom"},w):r),A("button",{"aria-label":"Deselect ".concat(r),"aria-disabled":f,disabled:f,ref:x,className:z(Uo,Bo[v],Vo[s],q({},Xo[v],f)),onClick:function(){f||t()}},A(C,{glyph:"X"})))}));Zo.displayName="Chip";var qo=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Yo=f((function(n,e){var r=n.children,o=n.id,t=n.refEl,a=n.labelId,l=n.menuWidth,s=n.searchLoadingMessage,d=n.searchErrorMessage,p=n.searchEmptyMessage,f=$(n,qo),h=c(ee),b=h.disabled,g=h.darkMode,m=h.size,x=h.isOpen,w=h.searchState,k=v(e,null),N=re(g),O=y(t),M=i(O)?"unset":"".concat(Math.min(O,256),"px"),j=u((function(){var n=z(be,ge[N],me[m]);switch(w){case"loading":return A("span",{className:n},A(C,{glyph:"Refresh",color:g?E.blue.light1:E.blue.base,className:Mr}),s);case"error":return A("span",{className:n},A(C,{glyph:"Warning",color:g?E.red.light1:E.red.base}),d);default:return r&&"object"===Z(r)&&"length"in r&&r.length>0?A("ul",{className:he},r):A("span",{className:n},p)}}),[N,m,w,g,s,d,r,p]);return A(B,Y({active:x&&!b,spacing:4,align:"bottom",justify:"middle",refEl:t,adjustOnMutation:!0,className:z(ue(l),de[N])},f),A("div",{ref:k,id:o,role:"listbox","aria-labelledby":a,"aria-expanded":x,className:z(pe,fe[N],S(po||(po=J(["\n max-height: ",";\n "])),M)),onMouseDownCapture:function(n){return n.preventDefault()}},j))}));Yo.displayName="ComboboxMenu";var $o=["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"];function Jo(l){var c,f=l.children,v=l.label,y=l.description,N=l.placeholder,S=void 0===N?"Select":N,M=l["aria-label"],I=l.disabled,L=void 0!==I&&I,F=l.size,T=void 0===F?pn:F,H=l.darkMode,R=void 0!==H&&H,W=l.state,G=void 0===W?"none":W,K=l.errorMessage,U=l.searchState,V=void 0===U?"unset":U,B=l.searchEmptyMessage,J=void 0===B?"No results found":B,_=l.searchErrorMessage,nn=void 0===_?"Could not get results!":_,en=l.searchLoadingMessage,rn=void 0===en?"Loading results...":en,on=l.filteredOptions,fn=l.onFilter,hn=l.clearable,bn=void 0===hn||hn,mn=l.onClear,vn=l.overflow,yn=void 0===vn?"expand-y":vn,xn=l.multiselect,wn=void 0!==xn&&xn,kn=l.initialValue,Cn=l.onChange,Nn=l.value,On=l.chipTruncationLocation,Sn=l.chipCharacterLimit,zn=void 0===Sn?12:Sn,Mn=l.className,En=l.usePortal,jn=void 0===En||En,In=l.portalClassName,Dn=l.portalContainer,Pn=l.scrollContainer,Ln=l.popoverZIndex,An=$(l,$o),Fn=re(R),Tn=x({prefix:"option"}),Hn=x({prefix:"chip"}),Rn=m({prefix:"combobox-input"}),Wn=m({prefix:"combobox-label"}),Gn=m({prefix:"combobox-menu"}),Kn=d(null),Un=d(null),Vn=d(null),Bn=d(null),Xn=d(null),Zn=Q(h(!1),2),qn=Zn[0],Yn=Zn[1],$n=w(qn),oe=Q(h(null),2),te=oe[0],ie=oe[1],le=Q(h(null),2),ce=le[0],se=le[1],ue=w(ce),de=Q(h(""),2),pe=de[0],fe=de[1],he=w(pe),be=Q(h(null),2),ge=be[0],me=be[1],ve=!o(ce)&&(e(ce)&&ce.length>0||t(ce)),ye=wn&&e(ce)&&ce.length>0?void 0:S,xe=function(){return Yn(!1)},we=function(){return Yn(!0)},ke=u((function(){return ne(f)}),[f]),Ce=s((function(n){return!wn||"string"!=typeof n&&"number"!=typeof n?!wn&&e(n)&&P.error("Error in Combobox: multiselect is set to `false`, but recieved an Array value"):P.error("Error in Combobox: multiselect is set to `true`, but recieved a ".concat(Z(n),' value: "').concat(n,'"')),wn&&e(n)}),[wn]),Ne=s((function(n){!L&&Bn&&Bn.current&&(Bn.current.focus(),i(n)||Bn.current.setSelectionRange(n,n))}),[L]),Oe=s((function(e){if(Ce(ce)){var r=n(ce);o(e)?r.length=0:ce.includes(e)?r.splice(r.indexOf(e),1):(r.push(e),fe("")),se(r),null==Cn||Cn(r)}else{var t=e;se(t),null==Cn||Cn(t)}}),[Ce,Cn,ce]),Se=s((function(n){return Ce(ce)?ce.includes(n):n===ce}),[Ce,ce]),ze=s((function(n){var e,r,o,t,i=(r=ke,(e=n)?null!==(o=null===(t=r.find((function(n){return n.displayName===e})))||void 0===t?void 0:t.value)&&void 0!==o?o:e:"");return Se(i)}),[ke,Se]),Me=s((function(n){var e="string"==typeof n?n:n.value;return on&&on.length>0?on.includes(e):!!ze(pe)||("string"==typeof n?_n(e,ke):n.displayName).toLowerCase().includes(pe.toLowerCase())}),[on,ze,pe,ke]),Ee=u((function(){return ke.filter(Me)}),[ke,Me]),je=s((function(n){return!!n&&!!ke.find((function(e){return e.value===n}))}),[ke]),Ie=s((function(n){return Ee?Ee.findIndex((function(e){return e.value===n})):-1}),[Ee]),De=s((function(n){if(Ee&&Ee.length>=n){var e=Ee[n];return e?e.value:void 0}}),[Ee]),Pe=s((function(){return Ce(ce)?ce.findIndex((function(n){var e,r;return null===(e=Hn(n))||void 0===e||null===(r=e.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[Hn,Ce,ce]),Le=Q(h(),2),Ae=Le[0],Fe=Le[1],Te=s((function(n){var e,r=null!==(e=null==Ee?void 0:Ee.length)&&void 0!==e?e:0,o=r-1>0?r-1:0,t=Ie(te);switch(n&&qn&&(me(null),Ne()),n){case"next":var i=De(t+1<r?t+1:0);ie(null!=i?i:null);break;case"prev":var a=De(t-1>=0?t-1:o);ie(null!=a?a:null);break;case"last":var l=De(o);ie(null!=l?l:null);break;default:var c=De(0);ie(null!=c?c:null)}}),[te,Ie,De,qn,Ne,null==Ee?void 0:Ee.length]),He=s((function(n,e){if(Ce(ce))switch(n){case"next":var r=null!=e?e:Pe(),o=r+1<ce.length?r+1:ce.length-1,t=ce[o];me(t);break;case"prev":var i=null!=e?e:Pe(),a=i>0?i-1:i<0?ce.length-1:0,l=ce[a];me(l);break;case"first":var c=ce[0];me(c);break;case"last":var s=ce[ce.length-1];me(s);break;default:me(null)}}),[Pe,Ce,ce]),Re=s((function(n,e){switch(n&&ie(null),n){case"right":switch(Ae){case tn:var r,o,t;if((null===(r=Bn.current)||void 0===r?void 0:r.selectionEnd)===(null===(o=Bn.current)||void 0===o?void 0:o.value.length))null===(t=Un.current)||void 0===t||t.focus();break;case ln:case sn:case cn:if(Ae===cn||1===(null==ce?void 0:ce.length)){Ne(0),He(null),e.preventDefault();break}He("next")}break;case"left":switch(Ae){case an:var i;e.preventDefault(),Ne(null==Bn||null===(i=Bn.current)||void 0===i?void 0:i.value.length);break;case tn:case sn:case cn:if(Ce(ce)){var a;if(Ae===tn&&0!==(null===(a=Bn.current)||void 0===a?void 0:a.selectionStart))break;He("prev")}}break;default:He(null)}}),[Ae,Ce,ce,Ne,He]);p((function(){pe!==he&&Te("first")}),[pe,qn,he,Te]),p((function(){if(te){var n=Tn(te);if(n&&n.current&&Xn.current){var e=n.current.offsetTop,r=Xn.current,o=r.scrollTop;(e>r.offsetHeight||e<o)&&(Xn.current.scrollTop=e)}}}),[te,Tn]);var We=s((function(n){if(j(n,"ComboboxOption")){var e=Jn(n.props),r=e.value,o=e.displayName;if(Me(r)){var t=n.props,i=t.className,l=t.glyph,c=t.disabled,s=ke.findIndex((function(n){return n.value===r})),u=te===r,d=Ce(ce)?ce.includes(r):ce===r,p=Tn(r);return A(Wr,{value:r,displayName:o,isFocused:u,isSelected:d,disabled:c,setSelected:function(){ie(r),Oe(r),Ne(),r===ce&&xe()},glyph:l,className:i,index:s,ref:p})}}else if(j(n,"ComboboxGroup")){var f=a.Children.map(n.props.children,We);if(f&&(null==f?void 0:f.length)>0)return A(ae,{label:n.props.label,className:n.props.className},a.Children.map(f,We))}}),[ke,Tn,te,Ce,ce,Ne,Me,Oe]),Ge=u((function(){return a.Children.map(f,We)}),[f,We]),Ke=u((function(){if(Ce(ce))return ce.filter(je).map((function(n,e){var r=_n(n,ke),o=ge===n,t=Hn(n),i=e>=ce.length-1;return A(Zo,{key:n,displayName:r,isFocused:o,onRemove:function(){i?(Ne(),He(null)):He("next",e),Oe(n)},onFocus:function(){me(n)},ref:t})}))}),[Ce,ce,je,ke,ge,Hn,Oe,Ne,He]),Ue=u((function(){return A(a.Fragment,null,bn&&ve&&A(O,{"aria-label":"Clear selection","aria-disabled":L,disabled:L,ref:Un,onClick:function(n){L||(Oe(null),null==mn||mn(n),null==fn||fn(""),qn||we())},onFocus:$e,className:z(Po),darkMode:R},A(C,{glyph:"XWithCircle"})),A(C,"error"===G?{glyph:"Warning",color:R?E.red.light1:E.red.base,className:Lo(T)}:{glyph:"CaretDown",className:Lo(T)}))}),[bn,ve,L,G,R,T,Oe,mn,fn,qn]),Ve=u((function(){return ke.some((function(n){return n.hasGlyph}))}),[ke]),Be=s((function(){if(!Ce(ce)&&ce===ue){var n=Ee.find((function(n){return n.displayName===pe||n.value===pe}));if(n&&!Nn)se(n.value);else{var e,r=null!==(e=_n(ce,ke))&&void 0!==e?e:"";fe(r)}}}),[ke,pe,Ce,ue,ce,Nn,Ee]),Xe=s((function(){if(ve){if(Ce(ce))nr();else if(!Ce(ce)){var n,e=null!==(n=_n(ce,ke))&&void 0!==n?n:"";fe(e),xe()}}else fe("")}),[ve,ke,Ce,ce]);p((function(){if(kn)if(e(kn)){var n,r=null!==(n=kn.filter((function(n){return je(n)})))&&void 0!==n?n:[];se(r)}else je(kn)&&se(kn);else se(function(n){return n?[]:null}(wn))}),[]),p((function(){if(!i(Nn)&&Nn!==he)if(o(Nn))se(null);else if(Ce(Nn)){var n=Nn.filter(je);se(n)}else se(je(Nn)?Nn:null)}),[Ce,je,he,Nn]),p((function(){r(ce,ue)||Xe()}),[Xe,ue,ce]),p((function(){!qn&&$n&&Be()}),[qn,$n,Be]);var Ze=Q(h(0),2),qe=Ze[0],Ye=Ze[1];p((function(){var n,e;Ye(null!==(n=null===(e=Kn.current)||void 0===e?void 0:e.clientWidth)&&void 0!==n?n:0)}),[Kn,qn,te,ce]);var $e=function(){ie(null)};k("mousedown",(function(n){_e(n)||(n.preventDefault(),n.stopPropagation())}),{enabled:qn}),k("click",(function(n){_e(n)||(n.stopPropagation(),xe())}),{options:{capture:!0},enabled:qn});var Je,Qe=function(n){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?X(Object(r),!0).forEach((function(e){q(n,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):X(Object(r)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}))}return n}({popoverZIndex:Ln},jn?{usePortal:jn,portalClassName:In,portalContainer:Dn,scrollContainer:Pn}:{usePortal:jn});return A(ee.Provider,{value:{multiselect:wn,darkMode:R,size:T,withIcons:Ve,disabled:L,isOpen:qn,state:G,searchState:V,chipTruncationLocation:On,chipCharacterLimit:zn,inputValue:pe}},A("div",Y({className:z(xo(T),Mn)},An),(v||y)&&A("div",{className:To},v&&A(b,{id:Wn,htmlFor:Rn,darkMode:R},v),y&&A(g,{darkMode:R},y)),A("div",{ref:Kn,role:"combobox","aria-expanded":qn,"aria-controls":Gn,"aria-owns":Gn,tabIndex:-1,onMouseDown:function(n){L&&n.preventDefault()},onClick:function(n){if(n.target!==Bn.current){var e=0;if(Bn.current)e=n.nativeEvent.offsetX>Bn.current.offsetLeft+Bn.current.clientWidth?pe.length:0;Ne(e)}},onFocus:function(n){nr(),we(),Fe(function(n){var e,r,o,t;if(!n)return;if(null!==(e=Bn.current)&&void 0!==e&&e.contains(n))return tn;if(null!==(r=Un.current)&&void 0!==r&&r.contains(n))return an;var i=Ce(ce)?ce.findIndex((function(e){var r,o;return null===(r=Hn(e))||void 0===r||null===(o=r.current)||void 0===o?void 0:o.contains(n)})):-1;if(Ce(ce)){if(0===i)return ln;if(i===ce.length-1)return cn;if(i>0)return sn}if(null!==(o=Xn.current)&&void 0!==o&&o.contains(n))return dn;if(null!==(t=Kn.current)&&void 0!==t&&t.contains(n))return un}(n.target))},onKeyDown:function(n){var e,r,t=null===(e=Xn.current)||void 0===e?void 0:e.contains(document.activeElement);if((null===(r=Kn.current)||void 0===r?void 0:r.contains(document.activeElement))||t){if(n.ctrlKey||n.shiftKey||n.altKey)return;switch(n.keyCode){case D.Tab:switch(Ae){case"Input":ve||(xe(),Te("first"),He(null));break;case"LastChip":He(null)}break;case D.Escape:xe(),Te("first");break;case D.Enter:!qn||Ae!==tn||o(te)||function(n){if("string"==typeof n){var e=Qn(n,ke);return!(null==e||!e.isDisabled)}return!!n.isDisabled}(te)?Ae===an&&(Oe(null),Ne()):Oe(te);break;case D.Backspace:var i;if(Ce(ce))"Input"===Ae&&0===(null===(i=Bn.current)||void 0===i?void 0:i.selectionStart)&&He("last");we();break;case D.ArrowDown:qn?(n.preventDefault(),Te("next")):we();break;case D.ArrowUp:qn?(n.preventDefault(),Te("prev")):we();break;case D.ArrowRight:Re("right",n);break;case D.ArrowLeft:Re("left",n);break;default:qn||we()}}},onTransitionEnd:function(){var n,e;Ye(null!==(n=null===(e=Kn.current)||void 0===e?void 0:e.clientWidth)&&void 0!==n?n:0)},className:z(wo,ko[Fn],Co(T),(c={},q(c,No[Fn],L),q(c,Oo[Fn],G===gn),q(c,So[Fn],(Je=tn,Je===Ae)),c))},A("div",{ref:Vn,className:zo({size:T,overflow:yn})},Ke,A("input",{"aria-label":null!=M?M:v,"aria-autocomplete":"list","aria-controls":Gn,"aria-labelledby":Wn,ref:Bn,id:Rn,className:z(Mo,jo[T],Eo[Fn],Io(qn),q({},Do(T,pe),Ce(ce))),placeholder:ye,disabled:null!=L?L:void 0,onChange:function(n){var e=n.target.value;fe(e),null==fn||fn(e)},value:pe,autoComplete:"off"})),Ue),"error"===G&&K&&A("div",{className:z(Ao[Fn],Fo[T])},K),A(Yo,Y({id:Gn,labelId:Wn,refEl:Kn,ref:Xn,menuWidth:qe,searchLoadingMessage:rn,searchErrorMessage:nn,searchEmptyMessage:J},Qe),Ge)));function _e(n){var e,r,o=n.target;return(null===(e=Xn.current)||void 0===e?void 0:e.contains(o))||(null===(r=Kn.current)||void 0===r?void 0:r.contains(o))||!1}function nr(){Vn&&Vn.current&&(Vn.current.scrollLeft=Vn.current.scrollWidth)}}export{Jo as Combobox,le as ComboboxGroup,Gr as ComboboxOption};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|