@leafygreen-ui/combobox 3.1.1 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/Combobox.d.ts.map +1 -1
- package/dist/Combobox.styles.d.ts +3 -0
- package/dist/Combobox.styles.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
- package/src/Combobox.story.tsx +0 -1
- package/src/Combobox.styles.ts +15 -8
- package/src/Combobox.tsx +2 -0
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @leafygreen-ui/combobox
|
|
2
2
|
|
|
3
|
+
## 4.0.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- d51afee1: Fixes a bug where the combobox Text Input content would overflow the container
|
|
8
|
+
- Updated dependencies [e399f1b9]
|
|
9
|
+
- Updated dependencies [e399f1b9]
|
|
10
|
+
- @leafygreen-ui/leafygreen-provider@3.0.0
|
|
11
|
+
- @leafygreen-ui/checkbox@11.0.0
|
|
12
|
+
- @leafygreen-ui/icon-button@14.0.0
|
|
13
|
+
- @leafygreen-ui/inline-definition@5.0.0
|
|
14
|
+
- @leafygreen-ui/popover@10.0.0
|
|
15
|
+
- @leafygreen-ui/typography@14.0.0
|
|
16
|
+
|
|
3
17
|
## 3.1.1
|
|
4
18
|
|
|
5
19
|
### Patch Changes
|
package/dist/Combobox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../src/Combobox.tsx"],"names":[],"mappings":";AAaA,OAAO,SAAS,MAAM,YAAY,CAAC;AAanC,OAAO,EACL,aAAa,EAWd,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../src/Combobox.tsx"],"names":[],"mappings":";AAaA,OAAO,SAAS,MAAM,YAAY,CAAC;AAanC,OAAO,EACL,aAAa,EAWd,MAAM,kBAAkB,CAAC;AAmC1B;;;;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,eAouClB;yBArwCe,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkzCxB;;;GAGG"}
|
|
@@ -21,6 +21,8 @@ export declare const comboboxPadding: Record<Size, {
|
|
|
21
21
|
x: number;
|
|
22
22
|
y: number;
|
|
23
23
|
}>;
|
|
24
|
+
/** Width of the clear icon (in px) */
|
|
25
|
+
export declare const clearButtonIconSize = 28;
|
|
24
26
|
/** Width of the dropdown caret icon (in px) */
|
|
25
27
|
export declare const caretIconSize: 16;
|
|
26
28
|
export declare const chipClassName: string;
|
|
@@ -31,6 +33,7 @@ export declare const comboboxSizeStyles: (size: Size) => string;
|
|
|
31
33
|
export declare const comboboxDisabledStyles: Record<Theme, string>;
|
|
32
34
|
export declare const comboboxErrorStyles: Record<Theme, string>;
|
|
33
35
|
export declare const comboboxFocusStyle: Record<Theme, string>;
|
|
36
|
+
export declare const comboboxSelectionStyles: string;
|
|
34
37
|
export declare const inputWrapperStyle: ({ overflow, size, }: {
|
|
35
38
|
overflow: Overflow;
|
|
36
39
|
size: Size;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.styles.d.ts","sourceRoot":"","sources":["../src/Combobox.styles.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAG7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAK5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CASlE,CAAC;AAEF,+CAA+C;AAC/C,eAAO,MAAM,aAAa,IAAa,CAAC;AAexC,eAAO,MAAM,aAAa,QAAyC,CAAC;AAEpE,eAAO,MAAM,mBAAmB,SAAU,IAAI,KAAG,MAMhD,CAAC;AAEF,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"Combobox.styles.d.ts","sourceRoot":"","sources":["../src/Combobox.styles.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAG7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAK5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CASlE,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,+CAA+C;AAC/C,eAAO,MAAM,aAAa,IAAa,CAAC;AAexC,eAAO,MAAM,aAAa,QAAyC,CAAC;AAEpE,eAAO,MAAM,mBAAmB,SAAU,IAAI,KAAG,MAMhD,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAY9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAmBrD,CAAC;AAEF,eAAO,MAAM,kBAAkB,SAAU,IAAI,WAE5C,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAaxD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAOrD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAepD,CAAC;AAEF,eAAO,MAAM,uBAAuB,QAEnC,CAAC;AAEF,eAAO,MAAM,iBAAiB;cAIlB,QAAQ;UACZ,IAAI;wBAgDX,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAkBjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAWxD,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAoBtD,CAAC;AAEF,eAAO,MAAM,4BAA4B,WAAY,OAAO,WAM3D,CAAC;AAGF,8CAA8C;AAC9C,eAAO,MAAM,4BAA4B,SACjC,IAAI,4CAQX,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAG5B,CAAC;AAEF,eAAO,MAAM,YAAY,SAAU,IAAI,WAItC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAOxD,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAWtD,CAAC;AACF,eAAO,MAAM,8BAA8B,QAE1C,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"lodash/clone";import n from"lodash/isArray";import r from"lodash/isEqual";import t from"lodash/isNull";import o from"lodash/isString";import a from"lodash/isUndefined";import i,{createContext as l,useContext as c,useCallback as s,useMemo as u,useRef as d,useEffect as f,useState as p}from"react";import g from"prop-types";import{Label as h,Description as b}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 E,{isComponentGlyph as C}from"@leafygreen-ui/icon";import O from"@leafygreen-ui/icon-button";import{css as D,cx as N,keyframes as L}from"@leafygreen-ui/emotion";import{palette as S}from"@leafygreen-ui/palette";import{isComponentType as M,createUniqueClassName as z,keyMap as j,consoleOnce as I}from"@leafygreen-ui/lib";import P from"lodash/escapeRegExp";import T from"lodash/kebabCase";import F from"@leafygreen-ui/checkbox";import{typeScales as A,spacing as H,fontFamilies as R,hoverRing as W,focusRing as G}from"@leafygreen-ui/tokens";import{transparentize as K}from"polished";import X from"@leafygreen-ui/inline-definition";import V from"@leafygreen-ui/popover";function q(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 U(e){return U="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},U(e)}function Z(e,n,r){return n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function B(){return B=Object.assign||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},B.apply(this,arguments)}function Y(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 $(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function J(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)return;var t,o,a=[],i=!0,l=!1;try{for(r=r.call(e);!(i=(t=r.next()).done)&&(a.push(t.value),!n||a.length!==n);i=!0);}catch(e){l=!0,o=e}finally{try{i||null==r.return||r.return()}finally{if(l)throw o}}return a}(e,n)||_(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 Q(e){return function(e){if(Array.isArray(e))return ee(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_(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 _(e,n){if(e){if("string"==typeof e)return ee(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)?ee(e,n):void 0}}function ee(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 ne="dark",re="light",te="Input",oe="ClearButton",ae="FirstChip",ie="LastChip",le="MiddleChip",ce="Combobox",se="Menu",ue={Default:"default",Large:"large"},de={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},fe={error:"error",none:"none"},pe={unset:"unset",error:"error",loading:"loading"};var ge,he,be,me,ve,ye,xe,we,ke,Ee,Ce,Oe,De,Ne,Le,Se,Me,ze,je,Ie,Pe,Te,Fe,Ae,He,Re,We,Ge,Ke,Xe,Ve,qe,Ue,Ze=function(e,n,r){if(n&&r){var t=P(n),o=new RegExp(t,"gi"),a=e.matchAll(o);if(a){for(var l=e.split(""),c=0,s=Array.from(a);c<s.length;c++){var u,d=s[c],f=null!==(u=d.index)&&void 0!==u?u:-1,p=d[0],g=p.length,h=f+p+g,b=new Array(g).fill("");b[0]=i.createElement(r,{key:h},p),l.splice.apply(l,[f,g].concat(Q(b)))}return i.createElement(i.Fragment,null,l)}return i.createElement(i.Fragment,null,e)}return i.createElement(i.Fragment,null,e)},Be=function(e){var n,r=e.value,t=e.displayName;return{value:null!=r?r:T(t),displayName:null!==(n=null!=t?t:r)&&void 0!==n?n:""}},Ye=function(e,n){if(e)return n.find((function(n){return n.value===e}))},$e=function(e,n){var r,t;return e?null!==(r=null===(t=Ye(e,n))||void 0===t?void 0:t.displayName)&&void 0!==r?r:e:""},Je=function e(n){return i.Children.toArray(n).reduce((function(n,r){if(M(r,"ComboboxOption")){var t=Be(r.props),o=t.value,a=t.displayName,i=r.props,l=i.glyph,c=i.disabled;return[].concat(Q(n),[{value:o,displayName:a,isDisabled:!!c,hasGlyph:!!l}])}if(M(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(Q(n),Q(e(s)))}}),[])},Qe=l({multiselect:!1,darkMode:!1,size:ue.Default,withIcons:!1,disabled:!1,isOpen:!1,state:fe.none,searchState:pe.unset}),_e=function(e){return e?ne:re},en=(Z(be={},re,D(ge||(ge=$(["\n padding-top: 8px;\n "])))),Z(be,ne,D(he||(he=$(["\n padding-top: 8px;\n "])))),be),nn=D(me||(me=$(["\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"]))),rn=(Z(xe={},re,D(ve||(ve=$(["\n color: ",";\n "])),S.gray.dark1)),Z(xe,ne,D(ye||(ye=$(["\n color: ",";\n "])),S.gray.light1)),xe);function tn(e){var n=e.label,r=e.className,t=e.children,o=c(Qe).darkMode,a=_e(o),l=m({prefix:"combobox-group"});return i.Children.count(t)>0?i.createElement("div",{className:N(en[a],r)},i.createElement("div",{className:N(nn,rn[a]),id:l},n),i.createElement("div",{role:"group","aria-labelledby":l},t)):i.createElement(i.Fragment,null)}function on(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}on.displayName="ComboboxGroup",on.propTypes={className:g.string,children:g.node.isRequired,label:g.string.isRequired};var an=(Z(we={},ue.Default,{x:12,y:8}),Z(we,ue.Large,{x:12,y:8}),we),ln=(Z(ke={},ue.Default,A.body1.lineHeight+2*an[ue.Default].y),Z(ke,ue.Large,A.body2.lineHeight+2*an[ue.Large].y),ke),cn=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return D(Ee||(Ee=$(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},sn=(Z(De={},re,D(Ce||(Ce=$(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),K(.85,S.black),S.gray.light2)),Z(De,ne,D(Oe||(Oe=$(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),K(.85,S.black),S.gray.dark3)),De),un=D(Ne||(Ne=$(["\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),dn=(Z(Me={},re,D(Le||(Le=$(["\n color: ",";\n background-color: ",";\n "])),S.black,S.white)),Z(Me,ne,D(Se||(Se=$(["\n color: ",";\n background-color: ",";\n "])),S.gray.light1,S.gray.dark3)),Me);Z(Ie={},ue.Default,D(ze||(ze=$(["\n min-height: ","px;\n "])),ln[ue.Default])),Z(Ie,ue.Large,D(je||(je=$(["\n min-height: ","px;\n "])),ln[ue.Large]));var fn=D(Pe||(Pe=$(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),pn=D(Te||(Te=$(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),gn=(Z(He={},re,D(Fe||(Fe=$(["\n color: ",";\n "])),S.gray.dark3)),Z(He,ne,D(Ae||(Ae=$(["\n color: ",";\n "])),S.gray.light3)),He),hn=(Z(Ge={},ue.Default,D(Re||(Re=$(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),A.body1.fontSize,A.body1.lineHeight,an[ue.Default].y,an[ue.Default].x)),Z(Ge,ue.Large,D(We||(We=$(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),A.body2.fontSize,A.body2.lineHeight,an[ue.Large].y,an[ue.Large].x)),Ge);Z(Ve={},ue.Default,D(Ke||(Ke=$(["\n height: ","px;\n width: ","px;\n "])),A.body1.fontSize,A.body1.fontSize)),Z(Ve,ue.Large,D(Xe||(Xe=$(["\n height: ","px;\n width: ","px;\n "])),A.body2.fontSize,A.body2.fontSize));var bn,mn,vn,yn,xn,wn,kn,En,Cn,On,Dn,Nn,Ln,Sn,Mn,zn,jn,In,Pn,Tn,Fn,An,Hn,Rn,Wn,Gn,Kn,Xn,Vn,qn,Un,Zn,Bn,Yn,$n,Jn,Qn,_n,er,nr,rr,tr,or,ar,ir,lr,cr,sr,ur,dr,fr,pr,gr,hr,br,mr,vr,yr,xr,wr,kr,Er,Cr,Or=L(qe||(qe=$(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Dr=D(Ue||(Ue=$(["\n animation: "," 1.5s linear infinite;\n"])),Or),Nr=D(bn||(bn=$(["\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),Lr=(Z(yn={},re,D(mn||(mn=$(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),S.gray.light2)),Z(yn,ne,D(vn||(vn=$(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),S.gray.dark4)),yn),Sr=(Z(kn={},ue.Default,D(xn||(xn=$(["\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 "])),A.body1.fontSize,A.body1.lineHeight,ln[ue.Default],an[ue.Default].y,an[ue.Default].x,H[1],ln[ue.Default])),Z(kn,ue.Large,D(wn||(wn=$(["\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 "])),A.body2.fontSize,A.body2.lineHeight,ln[ue.Large],an[ue.Large].y,an[ue.Large].x,H[2],ln[ue.Large])),kn),Mr=D(En||(En=$(["\n outline: none;\n\n &:before {\n transform: scaleY(1);\n }\n"]))),zr=(Z(Dn={},re,D(Cn||(Cn=$(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Mr,S.blue.light3,S.blue.base)),Z(Dn,ne,D(On||(On=$(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Mr,S.blue.dark3,S.blue.light1)),Dn),jr=D(Nn||(Nn=$(["\n cursor: not-allowed;\n\n &:hover {\n background-color: inherit;\n }\n\n &:before {\n content: unset;\n }\n"]))),Ir=(Z(Mn={},re,D(Ln||(Ln=$(["\n ",";\n color: ",";\n "])),jr,S.gray.light1)),Z(Mn,ne,D(Sn||(Sn=$(["\n ",";\n color: ",";\n "])),jr,S.gray.dark1)),Mn),Pr=(Z(In={},ue.Default,D(zn||(zn=$(["\n min-width: ","px;\n "])),H[3])),Z(In,ue.Large,D(jn||(jn=$(["\n min-width: ","px;\n "])),H[4])),In),Tr=D(Pn||(Pn=$(["\n display: inline-flex;\n gap: 8px;\n justify-content: start;\n align-items: inherit;\n overflow-wrap: anywhere;\n"]))),Fr=D(Tn||(Tn=$(["\n pointer-events: none;\n"]))),Ar=function(e){return D(Fn||(Fn=$(["\n font-weight: ",";\n"])),e?"bold":"normal")},Hr=i.forwardRef((function(e,n){var r,t=e.displayName,o=e.glyph,a=e.isSelected,l=e.isFocused,d=e.disabled,f=e.setSelected,p=e.className,g=c(Qe),h=g.multiselect,b=g.darkMode,y=g.withIcons,x=g.inputValue,w=g.size,k=_e(b),O=m({prefix:"combobox-option-text"}),L=v(n,null),z=s((function(e){e.stopPropagation(),d||e.target!==L.current&&"INPUT"!==e.target.tagName||f()}),[d,L,f]),j=u((function(){if(o){if(C(o)||M(o,"Icon"))return o;console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",o)}}),[o]),I=u((function(){if(h){var e=i.createElement(F,{"aria-labelledby":O,checked:a,tabIndex:-1,disabled:d,darkMode:b,className:D(An||(An=$(["\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 i.createElement(i.Fragment,null,i.createElement("span",{className:N(Tr,Fr)},y?j:e,i.createElement("span",{id:O,className:Ar(a)},Ze(t,x,"strong"))),y&&e)}return i.createElement(i.Fragment,null,i.createElement("span",{className:N(Tr,Fr)},j,i.createElement("span",{className:Ar(a)},Ze(t,x,"strong"))),a&&i.createElement(E,{glyph:"Checkmark",className:Pr[w],color:b?S.blue.light1:S.blue.base}))}),[h,j,a,t,x,w,b,O,d,y]);return i.createElement("li",{ref:L,role:"option","aria-selected":l,"aria-label":t,tabIndex:-1,className:N(Nr,Sr[w],Lr[k],(r={},Z(r,zr[k],l),Z(r,Ir[k],d),r),p),onClick:z,onKeyDown:z},I)}));function Rr(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}Hr.displayName="ComboboxOption",Rr.displayName="ComboboxOption",Rr.propTypes={displayName:g.string,value:g.string,glyph:g.node,disabled:g.bool,className:g.string};var Wr,Gr,Kr,Xr,Vr,qr,Ur,Zr,Br,Yr,$r,Jr,Qr,_r,et,nt,rt,tt,ot,at,it,lt,ct,st,ut=(Z(Hn={},ue.Default,A.body1.fontSize),Z(Hn,ue.Large,A.body2.fontSize),Hn),dt=(Z(Rn={},ue.Default,2),Z(Rn,ue.Large,4),Rn),ft=(Z(Wn={},ue.Default,A.body1.lineHeight+2*dt[ue.Default]),Z(Wn,ue.Large,A.body2.lineHeight+2*dt[ue.Large]),Wn),pt=(Z(Gn={},ue.Default,{y:(36-ft[ue.Default]-2)/2,x:H[2]-1}),Z(Gn,ue.Large,{y:(48-ft[ue.Large]-2)/2,x:H[2]-1}),Gn),gt=H[3],ht=(Z(Kn={},ue.Default,ut[ue.Default]+2*pt[ue.Default].x+gt+2),Z(Kn,ue.Large,ut[ue.Large]+2*pt[ue.Large].x+gt+2),Kn),bt=z("combobox-chip"),mt=function(e){return D(Xn||(Xn=$(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),R.default,ht[e])},vt=D(Vn||(Vn=$(["\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"]))),yt=(Z(Zn={},re,D(qn||(qn=$(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),S.gray.dark3,S.white,S.gray.base,W[re].gray)),Z(Zn,ne,D(Un||(Un=$(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),S.gray.light2,S.gray.dark4,S.gray.base,W[ne].gray)),Zn),xt=function(e){return D(Bn||(Bn=$(["\n padding: ","px ","px;\n"])),pt[e].y,pt[e].x)},wt=(Z(Jn={},re,D(Yn||(Yn=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),S.gray.dark1,S.gray.light2,S.gray.light1)),Z(Jn,ne,D($n||($n=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),S.gray.dark1,S.gray.dark3,S.gray.dark2)),Jn),kt=(Z(er={},re,D(Qn||(Qn=$(["\n border-color: ",";\n "])),S.red.base)),Z(er,ne,D(_n||(_n=$(["\n border-color: ",";\n "])),S.red.light1)),er),Et=(Z(tr={},re,D(nr||(nr=$(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),S.white,G[re].input)),Z(tr,ne,D(rr||(rr=$(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),S.gray.dark4,G[ne].input)),tr),Ct=function(e){var n=e.overflow,r=e.size,t=D(or||(or=$(["\n flex-grow: 1;\n width: inherit;\n "])));switch(n){case de.scrollX:return D(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 "])),t,ft[r],bt);case de.expandY:return D(ir||(ir=$(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n overflow-x: visible;\n min-height: ","px;\n "])),t,ft[r])}},Ot=D(lr||(lr=$(["\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),Dt=(Z(ur={},re,D(cr||(cr=$(["\n &::placeholder {\n color: ",";\n }\n "])),S.gray.dark1)),Z(ur,ne,D(sr||(sr=$(["\n &::placeholder {\n color: ",";\n }\n "])),S.gray.light1)),ur),Nt=(Z(pr={},ue.Default,D(dr||(dr=$(["\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 "])),ft[ue.Default],A.body1.fontSize,A.body1.lineHeight,ut[ue.Default])),Z(pr,ue.Large,D(fr||(fr=$(["\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 "])),ft[ue.Large],A.body2.fontSize,A.body2.lineHeight,ut[ue.Large])),pr),Lt=function(e){return D(gr||(gr=$(["\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")},St=function(e,n){var r,t=null!==(r=null==n?void 0:n.length)&&void 0!==r?r:0;return D(hr||(hr=$(["\n max-width: 100%;\n width: ","px;\n // TODO: This doesn't quite work. Fix this\n max-width: calc(100% - ","px);\n "])),t*ut[e],2*gt)},Mt=D(br||(br=$(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n"])),gt/2),zt=function(e){return D(mr||(mr=$(["\n height: ","px;\n width: ","px;\n margin-inline-end: calc(","px / 2);\n"])),gt,gt,pt[e].x)},jt=(Z(xr={},re,D(vr||(vr=$(["\n color: ",";\n "])),S.red.base)),Z(xr,ne,D(yr||(yr=$(["\n color: ",";\n "])),S.red.light1)),xr),It=(Z(Er={},ue.Default,D(wr||(wr=$(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),A.body1.fontSize,A.body1.lineHeight,pt[ue.Default].y)),Z(Er,ue.Large,D(kr||(kr=$(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),A.body2.fontSize,A.body2.lineHeight,pt[ue.Large].y)),Er),Pt=D(Cr||(Cr=$(["\n margin-bottom: 2px;\n"]))),Tt=D(Wr||(Wr=$(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n"]))),Ft=(Z(Xr={},ue.Default,D(Gr||(Gr=$(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),A.body1.fontSize,A.body1.lineHeight)),Z(Xr,ue.Large,D(Kr||(Kr=$(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),A.body2.fontSize,A.body2.lineHeight)),Xr),At=(Z(Ur={},re,D(Vr||(Vr=$(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),S.black,S.gray.light2,S.blue.light2)),Z(Ur,ne,D(qr||(qr=$(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),S.gray.light2,S.gray.dark2,S.blue.dark2)),Ur),Ht=(Z(Yr={},re,D(Zr||(Zr=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n "])),S.gray.base,S.gray.light3)),Z(Yr,ne,D(Br||(Br=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ","; ;\n "])),S.gray.dark2,S.gray.dark4,S.gray.dark2)),Yr),Rt=(Z(Qr={},ue.Default,D($r||($r=$(["\n padding-inline: 6px;\n padding-block: ","px;\n "])),dt[ue.Default])),Z(Qr,ue.Large,D(Jr||(Jr=$(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),dt[ue.Large])),Qr),Wt=D(_r||(_r=$(["\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"]))),Gt=(Z(rt={},ue.Default,D(et||(et=$(["\n height: ","px;\n "])),ft[ue.Default])),Z(rt,ue.Large,D(nt||(nt=$(["\n height: ","px;\n "])),ft[ue.Large])),rt),Kt=(Z(at={},re,D(tt||(tt=$(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),S.gray.dark2,S.black,S.gray.light1)),Z(at,ne,D(ot||(ot=$(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),S.gray.light1,S.gray.light3,S.gray.dark1)),at),Xt=(Z(ct={},re,D(it||(it=$(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),S.gray.dark2)),Z(ct,ne,D(lt||(lt=$(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),S.gray.dark2)),ct),Vt=i.forwardRef((function(e,n){var r=e.displayName,t=e.isFocused,o=e.onRemove,a=e.onFocus,l=c(Qe),s=l.darkMode,p=l.size,g=l.disabled,h=l.chipTruncationLocation,b=void 0===h?"end":h,m=l.chipCharacterLimit,v=void 0===m?12:m,y=_e(s),x=!!v&&!!b&&"none"!==b&&r.length>v,w=d(null),k=u((function(){if(x){var e=v-3;switch(b){case"start":return"…"+r.substring(r.length-e).trim();case"middle":return r.substring(0,e/2).trim()+"…"+r.substring(r.length-e/2).trim();case"end":return r.substring(0,e).trim()+"…";default:return r}}return!1}),[v,b,r,x]);f((function(){var e;t&&!g&&(null==w||null===(e=w.current)||void 0===e||e.focus())}),[g,n,t]);return i.createElement("span",{role:"option","aria-selected":t,"data-testid":"lg-combobox-chip",ref:n,className:N(bt,Tt,At[y],Ft[p],Z({},Ht[y],g)),onClick:function(e){var n;null!==(n=w.current)&&void 0!==n&&n.contains(e.target)||a()},onKeyDown:function(e){g||e.keyCode!==j.Delete&&e.keyCode!==j.Backspace&&e.keyCode!==j.Enter&&e.keyCode!==j.Space||o()},tabIndex:-1},i.createElement("span",{className:N(Rt[p])},k?i.createElement(X,{darkMode:s,definition:r,align:"bottom"},k):r),i.createElement("button",{"aria-label":"Deselect ".concat(r),"aria-disabled":g,disabled:g,ref:w,className:N(Wt,Kt[y],Gt[p],Z({},Xt[y],g)),onClick:function(){g||o()}},i.createElement(E,{glyph:"X"})))}));Vt.displayName="Chip";var qt=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Ut=i.forwardRef((function(e,n){var r=e.children,t=e.id,o=e.refEl,l=e.labelId,s=e.menuWidth,d=e.searchLoadingMessage,f=e.searchErrorMessage,p=e.searchEmptyMessage,g=Y(e,qt),h=c(Qe),b=h.disabled,m=h.darkMode,x=h.size,w=h.isOpen,k=h.searchState,C=v(n,null),O=_e(m),L=y(o),M=a(L)?"unset":"".concat(Math.min(L,256),"px"),z=u((function(){var e=N(pn,gn[O],hn[x]);switch(k){case"loading":return i.createElement("span",{className:e},i.createElement(E,{glyph:"Refresh",color:m?S.blue.light1:S.blue.base,className:Dr}),d);case"error":return i.createElement("span",{className:e},i.createElement(E,{glyph:"Warning",color:m?S.red.light1:S.red.base}),f);default:return r&&"object"===U(r)&&"length"in r&&r.length>0?i.createElement("ul",{className:fn},r):i.createElement("span",{className:e},p)}}),[O,x,k,m,d,f,r,p]);return i.createElement(V,B({active:w&&!b,spacing:4,align:"bottom",justify:"middle",refEl:o,adjustOnMutation:!0,className:N(cn(s),sn[O])},g),i.createElement("div",{ref:C,id:t,role:"listbox","aria-labelledby":l,"aria-expanded":w,className:N(un,dn[O],D(st||(st=$(["\n max-height: ",";\n "])),M)),onMouseDownCapture:function(e){return e.preventDefault()}},z))}));Ut.displayName="ComboboxMenu";var Zt=["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 Bt(l){var c,g=l.children,v=l.label,y=l.description,C=l.placeholder,D=void 0===C?"Select":C,L=l["aria-label"],z=l.disabled,P=void 0!==z&&z,T=l.size,F=void 0===T?ue.Default:T,A=l.darkMode,H=void 0!==A&&A,R=l.state,W=void 0===R?"none":R,G=l.errorMessage,K=l.searchState,X=void 0===K?"unset":K,V=l.searchEmptyMessage,$=void 0===V?"No results found":V,Q=l.searchErrorMessage,_=void 0===Q?"Could not get results!":Q,ee=l.searchLoadingMessage,ne=void 0===ee?"Loading results...":ee,re=l.filteredOptions,de=l.onFilter,pe=l.clearable,ge=void 0===pe||pe,he=l.onClear,be=l.overflow,me=void 0===be?"expand-y":be,ve=l.multiselect,ye=void 0!==ve&&ve,xe=l.initialValue,we=l.onChange,ke=l.value,Ee=l.chipTruncationLocation,Ce=l.chipCharacterLimit,Oe=void 0===Ce?12:Ce,De=l.className,Ne=l.usePortal,Le=void 0===Ne||Ne,Se=l.portalClassName,Me=l.portalContainer,ze=l.scrollContainer,je=l.popoverZIndex,Ie=Y(l,Zt),Pe=_e(H),Te=x({prefix:"option"}),Fe=x({prefix:"chip"}),Ae=m({prefix:"combobox-input"}),He=m({prefix:"combobox-label"}),Re=m({prefix:"combobox-menu"}),We=d(null),Ge=d(null),Ke=d(null),Xe=d(null),Ve=d(null),qe=J(p(!1),2),Ue=qe[0],Ze=qe[1],en=w(Ue),nn=J(p(null),2),rn=nn[0],on=nn[1],an=J(p(null),2),ln=an[0],cn=an[1],sn=w(ln),un=J(p(""),2),dn=un[0],fn=un[1],pn=w(dn),gn=J(p(null),2),hn=gn[0],bn=gn[1],mn=!t(ln)&&(n(ln)&&ln.length>0||o(ln)),vn=ye&&n(ln)&&ln.length>0?void 0:D,yn=function(){return Ze(!1)},xn=function(){return Ze(!0)},wn=u((function(){return Je(g)}),[g]),kn=s((function(e){return!ye||"string"!=typeof e&&"number"!=typeof e?!ye&&n(e)&&I.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):I.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(U(e),' value: "').concat(e,'"')),ye&&n(e)}),[ye]),En=s((function(e){!P&&Xe&&Xe.current&&(Xe.current.focus(),a(e)||Xe.current.setSelectionRange(e,e))}),[P]),Cn=s((function(n){if(kn(ln)){var r=e(ln);t(n)?r.length=0:ln.includes(n)?r.splice(r.indexOf(n),1):(r.push(n),fn("")),cn(r),null==we||we(r)}else{var o=n;cn(o),null==we||we(o)}}),[kn,we,ln]),On=s((function(e){return kn(ln)?ln.includes(e):e===ln}),[kn,ln]),Dn=s((function(e){var n,r,t,o,a=(r=wn,(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 On(a)}),[wn,On]),Nn=s((function(e){var n="string"==typeof e?e:e.value;return re&&re.length>0?re.includes(n):!!Dn(dn)||("string"==typeof e?$e(n,wn):e.displayName).toLowerCase().includes(dn.toLowerCase())}),[re,Dn,dn,wn]),Ln=u((function(){return wn.filter(Nn)}),[wn,Nn]),Sn=s((function(e){return!!e&&!!wn.find((function(n){return n.value===e}))}),[wn]),Mn=s((function(e){return Ln?Ln.findIndex((function(n){return n.value===e})):-1}),[Ln]),zn=s((function(e){if(Ln&&Ln.length>=e){var n=Ln[e];return n?n.value:void 0}}),[Ln]),jn=s((function(){return kn(ln)?ln.findIndex((function(e){var n,r;return null===(n=Fe(e))||void 0===n||null===(r=n.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[Fe,kn,ln]),In=J(p(),2),Pn=In[0],Tn=In[1],Fn=s((function(e){var n,r=null!==(n=null==Ln?void 0:Ln.length)&&void 0!==n?n:0,t=r-1>0?r-1:0,o=Mn(rn);switch(e&&Ue&&(bn(null),En()),e){case"next":var a=zn(o+1<r?o+1:0);on(null!=a?a:null);break;case"prev":var i=zn(o-1>=0?o-1:t);on(null!=i?i:null);break;case"last":var l=zn(t);on(null!=l?l:null);break;default:var c=zn(0);on(null!=c?c:null)}}),[rn,Mn,zn,Ue,En,null==Ln?void 0:Ln.length]),An=s((function(e,n){if(kn(ln))switch(e){case"next":var r=null!=n?n:jn(),t=r+1<ln.length?r+1:ln.length-1,o=ln[t];bn(o);break;case"prev":var a=null!=n?n:jn(),i=a>0?a-1:a<0?ln.length-1:0,l=ln[i];bn(l);break;case"first":var c=ln[0];bn(c);break;case"last":var s=ln[ln.length-1];bn(s);break;default:bn(null)}}),[jn,kn,ln]),Hn=s((function(e,n){switch(e&&on(null),e){case"right":switch(Pn){case te:var r,t,o;if((null===(r=Xe.current)||void 0===r?void 0:r.selectionEnd)===(null===(t=Xe.current)||void 0===t?void 0:t.value.length))null===(o=Ge.current)||void 0===o||o.focus();break;case ae:case le:case ie:if(Pn===ie||1===(null==ln?void 0:ln.length)){En(0),An(null),n.preventDefault();break}An("next")}break;case"left":switch(Pn){case oe:var a;n.preventDefault(),En(null==Xe||null===(a=Xe.current)||void 0===a?void 0:a.value.length);break;case te:case le:case ie:if(kn(ln)){var i;if(Pn===te&&0!==(null===(i=Xe.current)||void 0===i?void 0:i.selectionStart))break;An("prev")}}break;default:An(null)}}),[Pn,kn,ln,En,An]);f((function(){dn!==pn&&Fn("first")}),[dn,Ue,pn,Fn]),f((function(){if(rn){var e=Te(rn);if(e&&e.current&&Ve.current){var n=e.current.offsetTop,r=Ve.current,t=r.scrollTop;(n>r.offsetHeight||n<t)&&(Ve.current.scrollTop=n)}}}),[rn,Te]);var Rn=s((function(e){if(M(e,"ComboboxOption")){var n=Be(e.props),r=n.value,t=n.displayName;if(Nn(r)){var o=e.props,a=o.className,l=o.glyph,c=o.disabled,s=wn.findIndex((function(e){return e.value===r})),u=rn===r,d=kn(ln)?ln.includes(r):ln===r,f=Te(r);return i.createElement(Hr,{value:r,displayName:t,isFocused:u,isSelected:d,disabled:c,setSelected:function(){on(r),Cn(r),En(),r===ln&&yn()},glyph:l,className:a,index:s,ref:f})}}else if(M(e,"ComboboxGroup")){var p=i.Children.map(e.props.children,Rn);if(p&&(null==p?void 0:p.length)>0)return i.createElement(tn,{label:e.props.label,className:e.props.className},i.Children.map(p,Rn))}}),[wn,Te,rn,kn,ln,En,Nn,Cn]),Wn=u((function(){return i.Children.map(g,Rn)}),[g,Rn]),Gn=u((function(){if(kn(ln))return ln.filter(Sn).map((function(e,n){var r=$e(e,wn),t=hn===e,o=Fe(e),a=n>=ln.length-1;return i.createElement(Vt,{key:e,displayName:r,isFocused:t,onRemove:function(){a?(En(),An(null)):An("next",n),Cn(e)},onFocus:function(){bn(e)},ref:o})}))}),[kn,ln,Sn,wn,hn,Fe,Cn,En,An]),Kn=u((function(){return i.createElement(i.Fragment,null,ge&&mn&&i.createElement(O,{"aria-label":"Clear selection","aria-disabled":P,disabled:P,ref:Ge,onClick:function(e){P||(Cn(null),null==he||he(e),null==de||de(""),Ue||xn())},onFocus:Yn,className:N(Mt),darkMode:H},i.createElement(E,{glyph:"XWithCircle"})),"error"===W?i.createElement(E,{glyph:"Warning",color:H?S.red.light1:S.red.base,className:zt(F)}):i.createElement(E,{glyph:"CaretDown",className:zt(F)}))}),[ge,mn,P,W,H,F,Cn,he,de,Ue]),Xn=u((function(){return wn.some((function(e){return e.hasGlyph}))}),[wn]),Vn=s((function(){if(!kn(ln)&&ln===sn){var e=Ln.find((function(e){return e.displayName===dn||e.value===dn}));if(e&&!ke)cn(e.value);else{var n,r=null!==(n=$e(ln,wn))&&void 0!==n?n:"";fn(r)}}}),[wn,dn,kn,sn,ln,ke,Ln]),qn=s((function(){if(mn){if(kn(ln))_n();else if(!kn(ln)){var e,n=null!==(e=$e(ln,wn))&&void 0!==e?e:"";fn(n),yn()}}else fn("")}),[mn,wn,kn,ln]);f((function(){if(xe)if(n(xe)){var e,r=null!==(e=xe.filter((function(e){return Sn(e)})))&&void 0!==e?e:[];cn(r)}else Sn(xe)&&cn(xe);else cn(function(e){return e?[]:null}(ye))}),[]),f((function(){if(!a(ke)&&ke!==pn)if(t(ke))cn(null);else if(kn(ke)){var e=ke.filter(Sn);cn(e)}else cn(Sn(ke)?ke:null)}),[kn,Sn,pn,ke]),f((function(){r(ln,sn)||qn()}),[qn,sn,ln]),f((function(){!Ue&&en&&Vn()}),[Ue,en,Vn]);var Un=J(p(0),2),Zn=Un[0],Bn=Un[1];f((function(){var e,n;Bn(null!==(e=null===(n=We.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[We,Ue,rn,ln]);var Yn=function(){on(null)};k("mousedown",(function(e){Qn(e)||(e.preventDefault(),e.stopPropagation())}),{enabled:Ue}),k("click",(function(e){Qn(e)||(e.stopPropagation(),yn())}),{options:{capture:!0},enabled:Ue});var $n,Jn=function(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?q(Object(r),!0).forEach((function(n){Z(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):q(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}({popoverZIndex:je},Le?{usePortal:Le,portalClassName:Se,portalContainer:Me,scrollContainer:ze}:{usePortal:Le});return i.createElement(Qe.Provider,{value:{multiselect:ye,darkMode:H,size:F,withIcons:Xn,disabled:P,isOpen:Ue,state:W,searchState:X,chipTruncationLocation:Ee,chipCharacterLimit:Oe,inputValue:dn}},i.createElement("div",B({className:N(mt(F),De)},Ie),(v||y)&&i.createElement("div",{className:Pt},v&&i.createElement(h,{id:He,htmlFor:Ae,darkMode:H},v),y&&i.createElement(b,{darkMode:H},y)),i.createElement("div",{ref:We,role:"combobox","aria-expanded":Ue,"aria-controls":Re,"aria-owns":Re,tabIndex:-1,onMouseDown:function(e){P&&e.preventDefault()},onClick:function(e){if(e.target!==Xe.current){var n=0;if(Xe.current)n=e.nativeEvent.offsetX>Xe.current.offsetLeft+Xe.current.clientWidth?dn.length:0;En(n)}xn()},onFocus:function(e){_n(),Tn(function(e){var n,r,t,o;if(!e)return;if(null!==(n=Xe.current)&&void 0!==n&&n.contains(e))return te;if(null!==(r=Ge.current)&&void 0!==r&&r.contains(e))return oe;var a=kn(ln)?ln.findIndex((function(n){var r,t;return null===(r=Fe(n))||void 0===r||null===(t=r.current)||void 0===t?void 0:t.contains(e)})):-1;if(kn(ln)){if(0===a)return ae;if(a===ln.length-1)return ie;if(a>0)return le}if(null!==(t=Ve.current)&&void 0!==t&&t.contains(e))return se;if(null!==(o=We.current)&&void 0!==o&&o.contains(e))return ce}(e.target))},onKeyDown:function(e){var n,r,o=null===(n=Ve.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(r=We.current)||void 0===r?void 0:r.contains(document.activeElement))||o){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.keyCode){case j.Tab:switch(Pn){case"Input":mn||(yn(),Fn("first"),An(null));break;case"LastChip":An(null)}break;case j.Escape:yn(),Fn("first");break;case j.Enter:Ue?Pn!==te||t(rn)||function(e){if("string"==typeof e){var n=Ye(e,wn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(rn)?Pn===oe&&(Cn(null),En()):Cn(rn):xn();break;case j.Backspace:var a;if(kn(ln))"Input"===Pn&&0===(null===(a=Xe.current)||void 0===a?void 0:a.selectionStart)&&An("last");xn();break;case j.ArrowDown:Ue?(e.preventDefault(),Fn("next")):xn();break;case j.ArrowUp:Ue?(e.preventDefault(),Fn("prev")):xn();break;case j.ArrowRight:Hn("right",e);break;case j.ArrowLeft:Hn("left",e);break;default:Ue||xn()}}},onTransitionEnd:function(){var e,n;Bn(null!==(e=null===(n=We.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:N(vt,yt[Pe],xt(F),(c={},Z(c,wt[Pe],P),Z(c,kt[Pe],W===fe.error),Z(c,Et[Pe],($n=te,$n===Pn)),c))},i.createElement("div",{ref:Ke,className:Ct({size:F,overflow:me})},Gn,i.createElement("input",{"aria-label":null!=L?L:v,"aria-autocomplete":"list","aria-controls":Re,"aria-labelledby":He,ref:Xe,id:Ae,className:N(Ot,Nt[F],Dt[Pe],Lt(Ue),Z({},St(F,dn),kn(ln))),placeholder:vn,disabled:null!=P?P:void 0,onChange:function(e){var n=e.target.value;fn(n),null==de||de(n)},value:dn,autoComplete:"off"})),Kn),"error"===W&&G&&i.createElement("div",{className:N(jt[Pe],It[F])},G),i.createElement(Ut,B({id:Re,labelId:He,refEl:We,ref:Ve,menuWidth:Zn,searchLoadingMessage:ne,searchErrorMessage:_,searchEmptyMessage:$},Jn),Wn)));function Qn(e){var n,r,t=e.target;return(null===(n=Ve.current)||void 0===n?void 0:n.contains(t))||(null===(r=We.current)||void 0===r?void 0:r.contains(t))||!1}function _n(){Ke&&Ke.current&&(Ke.current.scrollLeft=Ke.current.scrollWidth)}}Bt.propTypes={multiselect:g.bool,value:g.oneOf([g.string,g.arrayOf(g.string)]),initialValue:g.oneOf([g.string,g.arrayOf(g.string)]),overflow:g.oneOf(Object.values(de)),darkMode:g.bool,label:g.string,"aria-label":g.string,children:g.node,onChange:g.func,chipCharacterLimit:g.number,chipTruncationLocation:g.oneOf(Object.values({start:"start",middle:"middle",end:"end",none:"none"})),onClear:g.func,onFilter:g.func,clearable:g.bool,searchLoadingMessage:g.string,searchErrorMessage:g.string,searchEmptyMessage:g.string,searchState:g.oneOf(Object.values(pe)),errorMessage:g.string,state:g.oneOf(Object.values(fe)),size:g.oneOf(Object.values(ue)),disabled:g.bool,description:g.string,placeholder:g.string,filteredOptions:g.arrayOf(g.string),popoverZIndex:g.number,usePortal:g.bool,scrollContainer:g.elementType,portalContainer:g.elementType,portalClassName:g.string};export{Bt as Combobox,on as ComboboxGroup,Rr as ComboboxOption};
|
|
1
|
+
import n from"lodash/clone";import e from"lodash/isArray";import r from"lodash/isEqual";import t from"lodash/isNull";import o from"lodash/isString";import a from"lodash/isUndefined";import i,{createContext as l,useContext as c,useCallback as s,useMemo as u,useRef as d,useEffect as f,useState as p}from"react";import g from"prop-types";import{Label as h,Description as b}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 E,{isComponentGlyph as C}from"@leafygreen-ui/icon";import O from"@leafygreen-ui/icon-button";import{css as N,cx as D,keyframes as L}from"@leafygreen-ui/emotion";import{palette as S}from"@leafygreen-ui/palette";import{isComponentType as M,createUniqueClassName as z,keyMap as j,consoleOnce as I}from"@leafygreen-ui/lib";import P from"lodash/escapeRegExp";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 X from"@leafygreen-ui/inline-definition";import V from"@leafygreen-ui/popover";function U(n,e){var r=Object.keys(n);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(n);e&&(t=t.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.push.apply(r,t)}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 B(){return B=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(n[t]=r[t])}return n},B.apply(this,arguments)}function Y(n,e){if(null==n)return{};var r,t,o=function(n,e){if(null==n)return{};var r,t,o={},a=Object.keys(n);for(t=0;t<a.length;t++)r=a[t],e.indexOf(r)>=0||(o[r]=n[r]);return o}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(t=0;t<a.length;t++)r=a[t],e.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(n,r)&&(o[r]=n[r])}return o}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 t,o,a=[],i=!0,l=!1;try{for(r=r.call(n);!(i=(t=r.next()).done)&&(a.push(t.value),!e||a.length!==e);i=!0);}catch(n){l=!0,o=n}finally{try{i||null==r.return||r.return()}finally{if(l)throw o}}return a}(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,t=new Array(e);r<e;r++)t[r]=n[r];return t}var en="dark",rn="light",tn="Input",on="ClearButton",an="FirstChip",ln="LastChip",cn="MiddleChip",sn="Combobox",un="Menu",dn={Default:"default",Large:"large"},fn={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},pn={error:"error",none:"none"},gn={unset:"unset",error:"error",loading:"loading"};var hn,bn,mn,vn,yn,xn,wn,kn,En,Cn,On,Nn,Dn,Ln,Sn,Mn,zn,jn,In,Pn,An,Fn,Tn,Hn,Rn,Wn,Gn,Kn,Xn,Vn,Un,Zn,qn,Bn=function(n,e,r){if(e&&r){var t=P(e),o=new RegExp(t,"gi"),a=n.matchAll(o);if(a){for(var l=n.split(""),c=0,s=Array.from(a);c<s.length;c++){var u,d=s[c],f=null!==(u=d.index)&&void 0!==u?u:-1,p=d[0],g=p.length,h=f+p+g,b=new Array(g).fill("");b[0]=i.createElement(r,{key:h},p),l.splice.apply(l,[f,g].concat(Q(b)))}return i.createElement(i.Fragment,null,l)}return i.createElement(i.Fragment,null,n)}return i.createElement(i.Fragment,null,n)},Yn=function(n){var e,r=n.value,t=n.displayName;return{value:null!=r?r:A(t),displayName:null!==(e=null!=t?t:r)&&void 0!==e?e:""}},$n=function(n,e){if(n)return e.find((function(e){return e.value===n}))},Jn=function(n,e){var r,t;return n?null!==(r=null===(t=$n(n,e))||void 0===t?void 0:t.displayName)&&void 0!==r?r:n:""},Qn=function n(e){return i.Children.toArray(e).reduce((function(e,r){if(M(r,"ComboboxOption")){var t=Yn(r.props),o=t.value,a=t.displayName,i=r.props,l=i.glyph,c=i.disabled;return[].concat(Q(e),[{value:o,displayName:a,isDisabled:!!c,hasGlyph:!!l}])}if(M(r,"ComboboxGroup")){var s=r.props.children;if(s)return[].concat(Q(e),Q(n(s)))}}),[])},_n=l({multiselect:!1,darkMode:!1,size:dn.Default,withIcons:!1,disabled:!1,isOpen:!1,state:pn.none,searchState:gn.unset}),ne=function(n){return n?en:rn},ee=(q(mn={},rn,N(hn||(hn=$(["\n padding-top: 8px;\n "])))),q(mn,en,N(bn||(bn=$(["\n padding-top: 8px;\n "])))),mn),re=N(vn||(vn=$(["\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=(q(wn={},rn,N(yn||(yn=$(["\n color: ",";\n "])),S.gray.dark1)),q(wn,en,N(xn||(xn=$(["\n color: ",";\n "])),S.gray.light1)),wn);function oe(n){var e=n.label,r=n.className,t=n.children,o=c(_n).darkMode,a=ne(o),l=m({prefix:"combobox-group"});return i.Children.count(t)>0?i.createElement("div",{className:D(ee[a],r)},i.createElement("div",{className:D(re,te[a]),id:l},e),i.createElement("div",{role:"group","aria-labelledby":l},t)):i.createElement(i.Fragment,null)}function ae(n){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}ae.displayName="ComboboxGroup",ae.propTypes={className:g.string,children:g.node.isRequired,label:g.string.isRequired};var ie=(q(kn={},dn.Default,{x:12,y:8}),q(kn,dn.Large,{x:12,y:8}),kn),le=(q(En={},dn.Default,T.body1.lineHeight+2*ie[dn.Default].y),q(En,dn.Large,T.body2.lineHeight+2*ie[dn.Large].y),En),ce=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return N(Cn||(Cn=$(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),n)},se=(q(Dn={},rn,N(On||(On=$(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),K(.85,S.black),S.gray.light2)),q(Dn,en,N(Nn||(Nn=$(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),K(.85,S.black),S.gray.dark3)),Dn),ue=N(Ln||(Ln=$(["\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),de=(q(zn={},rn,N(Sn||(Sn=$(["\n color: ",";\n background-color: ",";\n "])),S.black,S.white)),q(zn,en,N(Mn||(Mn=$(["\n color: ",";\n background-color: ",";\n "])),S.gray.light1,S.gray.dark3)),zn);q(Pn={},dn.Default,N(jn||(jn=$(["\n min-height: ","px;\n "])),le[dn.Default])),q(Pn,dn.Large,N(In||(In=$(["\n min-height: ","px;\n "])),le[dn.Large]));var fe=N(An||(An=$(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),pe=N(Fn||(Fn=$(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),ge=(q(Rn={},rn,N(Tn||(Tn=$(["\n color: ",";\n "])),S.gray.dark3)),q(Rn,en,N(Hn||(Hn=$(["\n color: ",";\n "])),S.gray.light3)),Rn),he=(q(Kn={},dn.Default,N(Wn||(Wn=$(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),T.body1.fontSize,T.body1.lineHeight,ie[dn.Default].y,ie[dn.Default].x)),q(Kn,dn.Large,N(Gn||(Gn=$(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),T.body2.fontSize,T.body2.lineHeight,ie[dn.Large].y,ie[dn.Large].x)),Kn);q(Un={},dn.Default,N(Xn||(Xn=$(["\n height: ","px;\n width: ","px;\n "])),T.body1.fontSize,T.body1.fontSize)),q(Un,dn.Large,N(Vn||(Vn=$(["\n height: ","px;\n width: ","px;\n "])),T.body2.fontSize,T.body2.fontSize));var be,me,ve,ye,xe,we,ke,Ee,Ce,Oe,Ne,De,Le,Se,Me,ze,je,Ie,Pe,Ae,Fe,Te,He,Re,We,Ge,Ke,Xe,Ve,Ue,Ze,qe,Be,Ye,$e,Je,Qe,_e,nr,er,rr,tr,or,ar,ir,lr,cr,sr,ur,dr,fr,pr,gr,hr,br,mr,vr,yr,xr,wr,kr,Er,Cr,Or,Nr=L(Zn||(Zn=$(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Dr=N(qn||(qn=$(["\n animation: "," 1.5s linear infinite;\n"])),Nr),Lr=N(be||(be=$(["\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),Sr=(q(ye={},rn,N(me||(me=$(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),S.gray.light2)),q(ye,en,N(ve||(ve=$(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),S.gray.dark4)),ye),Mr=(q(ke={},dn.Default,N(xe||(xe=$(["\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,le[dn.Default],ie[dn.Default].y,ie[dn.Default].x,H[1],le[dn.Default])),q(ke,dn.Large,N(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.body2.fontSize,T.body2.lineHeight,le[dn.Large],ie[dn.Large].y,ie[dn.Large].x,H[2],le[dn.Large])),ke),zr=N(Ee||(Ee=$(["\n outline: none;\n\n &:before {\n transform: scaleY(1);\n }\n"]))),jr=(q(Ne={},rn,N(Ce||(Ce=$(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),zr,S.blue.light3,S.blue.base)),q(Ne,en,N(Oe||(Oe=$(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),zr,S.blue.dark3,S.blue.light1)),Ne),Ir=N(De||(De=$(["\n cursor: not-allowed;\n\n &:hover {\n background-color: inherit;\n }\n\n &:before {\n content: unset;\n }\n"]))),Pr=(q(Me={},rn,N(Le||(Le=$(["\n ",";\n color: ",";\n "])),Ir,S.gray.light1)),q(Me,en,N(Se||(Se=$(["\n ",";\n color: ",";\n "])),Ir,S.gray.dark1)),Me),Ar=(q(Ie={},dn.Default,N(ze||(ze=$(["\n min-width: ","px;\n "])),H[3])),q(Ie,dn.Large,N(je||(je=$(["\n min-width: ","px;\n "])),H[4])),Ie),Fr=N(Pe||(Pe=$(["\n display: inline-flex;\n gap: 8px;\n justify-content: start;\n align-items: inherit;\n overflow-wrap: anywhere;\n"]))),Tr=N(Ae||(Ae=$(["\n pointer-events: none;\n"]))),Hr=function(n){return N(Fe||(Fe=$(["\n font-weight: ",";\n"])),n?"bold":"normal")},Rr=i.forwardRef((function(n,e){var r,t=n.displayName,o=n.glyph,a=n.isSelected,l=n.isFocused,d=n.disabled,f=n.setSelected,p=n.className,g=c(_n),h=g.multiselect,b=g.darkMode,y=g.withIcons,x=g.inputValue,w=g.size,k=ne(b),O=m({prefix:"combobox-option-text"}),L=v(e,null),z=s((function(n){n.stopPropagation(),d||n.target!==L.current&&"INPUT"!==n.target.tagName||f()}),[d,L,f]),j=u((function(){if(o){if(C(o)||M(o,"Icon"))return o;console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",o)}}),[o]),I=u((function(){if(h){var n=i.createElement(F,{"aria-labelledby":O,checked:a,tabIndex:-1,disabled:d,darkMode:b,className:N(Te||(Te=$(["\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 i.createElement(i.Fragment,null,i.createElement("span",{className:D(Fr,Tr)},y?j:n,i.createElement("span",{id:O,className:Hr(a)},Bn(t,x,"strong"))),y&&n)}return i.createElement(i.Fragment,null,i.createElement("span",{className:D(Fr,Tr)},j,i.createElement("span",{className:Hr(a)},Bn(t,x,"strong"))),a&&i.createElement(E,{glyph:"Checkmark",className:Ar[w],color:b?S.blue.light1:S.blue.base}))}),[h,j,a,t,x,w,b,O,d,y]);return i.createElement("li",{ref:L,role:"option","aria-selected":l,"aria-label":t,tabIndex:-1,className:D(Lr,Mr[w],Sr[k],(r={},q(r,jr[k],l),q(r,Pr[k],d),r),p),onClick:z,onKeyDown:z},I)}));function Wr(n){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}Rr.displayName="ComboboxOption",Wr.displayName="ComboboxOption",Wr.propTypes={displayName:g.string,value:g.string,glyph:g.node,disabled:g.bool,className:g.string};var Gr,Kr,Xr,Vr,Ur,Zr,qr,Br,Yr,$r,Jr,Qr,_r,nt,et,rt,tt,ot,at,it,lt,ct,st,ut,dt=(q(He={},dn.Default,T.body1.fontSize),q(He,dn.Large,T.body2.fontSize),He),ft=(q(Re={},dn.Default,2),q(Re,dn.Large,4),Re),pt=(q(We={},dn.Default,T.body1.lineHeight+2*ft[dn.Default]),q(We,dn.Large,T.body2.lineHeight+2*ft[dn.Large]),We),gt=(q(Ge={},dn.Default,{y:(36-pt[dn.Default]-2)/2,x:H[2]-1}),q(Ge,dn.Large,{y:(48-pt[dn.Large]-2)/2,x:H[2]-1}),Ge),ht=H[3],bt=(q(Ke={},dn.Default,dt[dn.Default]+2*gt[dn.Default].x+ht+2),q(Ke,dn.Large,dt[dn.Large]+2*gt[dn.Large].x+ht+2),Ke),mt=z("combobox-chip"),vt=function(n){return N(Xe||(Xe=$(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),R.default,bt[n])},yt=N(Ve||(Ve=$(["\n display: grid;\n grid-auto-flow: column;\n grid-template-columns: 1fr ","px;\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: 100%;\n max-width: 100%;\n border-radius: 6px;\n"])),ht),xt=(q(qe={},rn,N(Ue||(Ue=$(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),S.gray.dark3,S.white,S.gray.base,W[rn].gray)),q(qe,en,N(Ze||(Ze=$(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),S.gray.light2,S.gray.dark4,S.gray.base,W[en].gray)),qe),wt=function(n){return N(Be||(Be=$(["\n padding: ","px ","px;\n"])),gt[n].y,gt[n].x)},kt=(q(Je={},rn,N(Ye||(Ye=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),S.gray.dark1,S.gray.light2,S.gray.light1)),q(Je,en,N($e||($e=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),S.gray.dark1,S.gray.dark3,S.gray.dark2)),Je),Et=(q(nr={},rn,N(Qe||(Qe=$(["\n border-color: ",";\n "])),S.red.base)),q(nr,en,N(_e||(_e=$(["\n border-color: ",";\n "])),S.red.light1)),nr),Ct=(q(tr={},rn,N(er||(er=$(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),S.white,G[rn].input)),q(tr,en,N(rr||(rr=$(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),S.gray.dark4,G[en].input)),tr),Ot=N(or||(or=$(["\n grid-template-columns: 1fr ","px ","px;\n"])),28,ht),Nt=function(n){var e=n.overflow,r=n.size,t=N(ar||(ar=$(["\n flex-grow: 1;\n width: 100%;\n "])));switch(e){case fn.scrollX:return N(ir||(ir=$(["\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 "])),t,pt[r],mt);case fn.expandY:return N(lr||(lr=$(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n overflow-x: hidden;\n min-height: ","px;\n "])),t,pt[r])}},Dt=N(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),Lt=(q(dr={},rn,N(sr||(sr=$(["\n &::placeholder {\n color: ",";\n }\n "])),S.gray.dark1)),q(dr,en,N(ur||(ur=$(["\n &::placeholder {\n color: ",";\n }\n "])),S.gray.light1)),dr),St=(q(gr={},dn.Default,N(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 "])),pt[dn.Default],T.body1.fontSize,T.body1.lineHeight,dt[dn.Default])),q(gr,dn.Large,N(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 "])),pt[dn.Large],T.body2.fontSize,T.body2.lineHeight,dt[dn.Large])),gr),Mt=function(n){return N(hr||(hr=$(["\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")},zt=function(n,e){var r,t=null!==(r=null==e?void 0:e.length)&&void 0!==r?r:0;return N(br||(br=$(["\n width: ","px;\n max-width: 100%;\n "])),t*dt[n])},jt=N(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"])),ht/2),It=function(n){return N(vr||(vr=$(["\n height: ","px;\n width: ","px;\n margin-inline-end: calc(","px / 2);\n"])),ht,ht,gt[n].x)},Pt=(q(wr={},rn,N(yr||(yr=$(["\n color: ",";\n "])),S.red.base)),q(wr,en,N(xr||(xr=$(["\n color: ",";\n "])),S.red.light1)),wr),At=(q(Cr={},dn.Default,N(kr||(kr=$(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),T.body1.fontSize,T.body1.lineHeight,gt[dn.Default].y)),q(Cr,dn.Large,N(Er||(Er=$(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),T.body2.fontSize,T.body2.lineHeight,gt[dn.Large].y)),Cr),Ft=N(Or||(Or=$(["\n margin-bottom: 2px;\n"]))),Tt=N(Gr||(Gr=$(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n"]))),Ht=(q(Vr={},dn.Default,N(Kr||(Kr=$(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),T.body1.fontSize,T.body1.lineHeight)),q(Vr,dn.Large,N(Xr||(Xr=$(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),T.body2.fontSize,T.body2.lineHeight)),Vr),Rt=(q(qr={},rn,N(Ur||(Ur=$(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),S.black,S.gray.light2,S.blue.light2)),q(qr,en,N(Zr||(Zr=$(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),S.gray.light2,S.gray.dark2,S.blue.dark2)),qr),Wt=(q($r={},rn,N(Br||(Br=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n "])),S.gray.base,S.gray.light3)),q($r,en,N(Yr||(Yr=$(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ","; ;\n "])),S.gray.dark2,S.gray.dark4,S.gray.dark2)),$r),Gt=(q(_r={},dn.Default,N(Jr||(Jr=$(["\n padding-inline: 6px;\n padding-block: ","px;\n "])),ft[dn.Default])),q(_r,dn.Large,N(Qr||(Qr=$(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),ft[dn.Large])),_r),Kt=N(nt||(nt=$(["\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"]))),Xt=(q(tt={},dn.Default,N(et||(et=$(["\n height: ","px;\n "])),pt[dn.Default])),q(tt,dn.Large,N(rt||(rt=$(["\n height: ","px;\n "])),pt[dn.Large])),tt),Vt=(q(it={},rn,N(ot||(ot=$(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),S.gray.dark2,S.black,S.gray.light1)),q(it,en,N(at||(at=$(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),S.gray.light1,S.gray.light3,S.gray.dark1)),it),Ut=(q(st={},rn,N(lt||(lt=$(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),S.gray.dark2)),q(st,en,N(ct||(ct=$(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),S.gray.dark2)),st),Zt=i.forwardRef((function(n,e){var r=n.displayName,t=n.isFocused,o=n.onRemove,a=n.onFocus,l=c(_n),s=l.darkMode,p=l.size,g=l.disabled,h=l.chipTruncationLocation,b=void 0===h?"end":h,m=l.chipCharacterLimit,v=void 0===m?12:m,y=ne(s),x=!!v&&!!b&&"none"!==b&&r.length>v,w=d(null),k=u((function(){if(x){var n=v-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}),[v,b,r,x]);f((function(){var n;t&&!g&&(null==w||null===(n=w.current)||void 0===n||n.focus())}),[g,e,t]);return i.createElement("span",{role:"option","aria-selected":t,"data-testid":"lg-combobox-chip",ref:e,className:D(mt,Tt,Rt[y],Ht[p],q({},Wt[y],g)),onClick:function(n){var e;null!==(e=w.current)&&void 0!==e&&e.contains(n.target)||a()},onKeyDown:function(n){g||n.keyCode!==j.Delete&&n.keyCode!==j.Backspace&&n.keyCode!==j.Enter&&n.keyCode!==j.Space||o()},tabIndex:-1},i.createElement("span",{className:D(Gt[p])},k?i.createElement(X,{darkMode:s,definition:r,align:"bottom"},k):r),i.createElement("button",{"aria-label":"Deselect ".concat(r),"aria-disabled":g,disabled:g,ref:w,className:D(Kt,Vt[y],Xt[p],q({},Ut[y],g)),onClick:function(){g||o()}},i.createElement(E,{glyph:"X"})))}));Zt.displayName="Chip";var qt=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Bt=i.forwardRef((function(n,e){var r=n.children,t=n.id,o=n.refEl,l=n.labelId,s=n.menuWidth,d=n.searchLoadingMessage,f=n.searchErrorMessage,p=n.searchEmptyMessage,g=Y(n,qt),h=c(_n),b=h.disabled,m=h.darkMode,x=h.size,w=h.isOpen,k=h.searchState,C=v(e,null),O=ne(m),L=y(o),M=a(L)?"unset":"".concat(Math.min(L,256),"px"),z=u((function(){var n=D(pe,ge[O],he[x]);switch(k){case"loading":return i.createElement("span",{className:n},i.createElement(E,{glyph:"Refresh",color:m?S.blue.light1:S.blue.base,className:Dr}),d);case"error":return i.createElement("span",{className:n},i.createElement(E,{glyph:"Warning",color:m?S.red.light1:S.red.base}),f);default:return r&&"object"===Z(r)&&"length"in r&&r.length>0?i.createElement("ul",{className:fe},r):i.createElement("span",{className:n},p)}}),[O,x,k,m,d,f,r,p]);return i.createElement(V,B({active:w&&!b,spacing:4,align:"bottom",justify:"middle",refEl:o,adjustOnMutation:!0,className:D(ce(s),se[O])},g),i.createElement("div",{ref:C,id:t,role:"listbox","aria-labelledby":l,"aria-expanded":w,className:D(ue,de[O],N(ut||(ut=$(["\n max-height: ",";\n "])),M)),onMouseDownCapture:function(n){return n.preventDefault()}},z))}));Bt.displayName="ComboboxMenu";var Yt=["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 $t(l){var c,g=l.children,v=l.label,y=l.description,C=l.placeholder,N=void 0===C?"Select":C,L=l["aria-label"],z=l.disabled,P=void 0!==z&&z,A=l.size,F=void 0===A?dn.Default:A,T=l.darkMode,H=void 0!==T&&T,R=l.state,W=void 0===R?"none":R,G=l.errorMessage,K=l.searchState,X=void 0===K?"unset":K,V=l.searchEmptyMessage,$=void 0===V?"No results found":V,Q=l.searchErrorMessage,_=void 0===Q?"Could not get results!":Q,nn=l.searchLoadingMessage,en=void 0===nn?"Loading results...":nn,rn=l.filteredOptions,fn=l.onFilter,gn=l.clearable,hn=void 0===gn||gn,bn=l.onClear,mn=l.overflow,vn=void 0===mn?"expand-y":mn,yn=l.multiselect,xn=void 0!==yn&&yn,wn=l.initialValue,kn=l.onChange,En=l.value,Cn=l.chipTruncationLocation,On=l.chipCharacterLimit,Nn=void 0===On?12:On,Dn=l.className,Ln=l.usePortal,Sn=void 0===Ln||Ln,Mn=l.portalClassName,zn=l.portalContainer,jn=l.scrollContainer,In=l.popoverZIndex,Pn=Y(l,Yt),An=ne(H),Fn=x({prefix:"option"}),Tn=x({prefix:"chip"}),Hn=m({prefix:"combobox-input"}),Rn=m({prefix:"combobox-label"}),Wn=m({prefix:"combobox-menu"}),Gn=d(null),Kn=d(null),Xn=d(null),Vn=d(null),Un=d(null),Zn=J(p(!1),2),qn=Zn[0],Bn=Zn[1],ee=w(qn),re=J(p(null),2),te=re[0],ae=re[1],ie=J(p(null),2),le=ie[0],ce=ie[1],se=w(le),ue=J(p(""),2),de=ue[0],fe=ue[1],pe=w(de),ge=J(p(null),2),he=ge[0],be=ge[1],me=!t(le)&&(e(le)&&le.length>0||o(le)),ve=xn&&e(le)&&le.length>0?void 0:N,ye=function(){return Bn(!1)},xe=function(){return Bn(!0)},we=u((function(){return Qn(g)}),[g]),ke=s((function(n){return!xn||"string"!=typeof n&&"number"!=typeof n?!xn&&e(n)&&I.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):I.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(Z(n),' value: "').concat(n,'"')),xn&&e(n)}),[xn]),Ee=s((function(n){!P&&Vn&&Vn.current&&(Vn.current.focus(),a(n)||Vn.current.setSelectionRange(n,n))}),[P]),Ce=s((function(e){if(ke(le)){var r=n(le);t(e)?r.length=0:le.includes(e)?r.splice(r.indexOf(e),1):(r.push(e),fe("")),ce(r),null==kn||kn(r)}else{var o=e;ce(o),null==kn||kn(o)}}),[ke,kn,le]),Oe=s((function(n){return ke(le)?le.includes(n):n===le}),[ke,le]),Ne=s((function(n){var e,r,t,o,a=(r=we,(e=n)?null!==(t=null===(o=r.find((function(n){return n.displayName===e})))||void 0===o?void 0:o.value)&&void 0!==t?t:e:"");return Oe(a)}),[we,Oe]),De=s((function(n){var e="string"==typeof n?n:n.value;return rn&&rn.length>0?rn.includes(e):!!Ne(de)||("string"==typeof n?Jn(e,we):n.displayName).toLowerCase().includes(de.toLowerCase())}),[rn,Ne,de,we]),Le=u((function(){return we.filter(De)}),[we,De]),Se=s((function(n){return!!n&&!!we.find((function(e){return e.value===n}))}),[we]),Me=s((function(n){return Le?Le.findIndex((function(e){return e.value===n})):-1}),[Le]),ze=s((function(n){if(Le&&Le.length>=n){var e=Le[n];return e?e.value:void 0}}),[Le]),je=s((function(){return ke(le)?le.findIndex((function(n){var e,r;return null===(e=Tn(n))||void 0===e||null===(r=e.current)||void 0===r?void 0:r.contains(document.activeElement)})):-1}),[Tn,ke,le]),Ie=J(p(),2),Pe=Ie[0],Ae=Ie[1],Fe=s((function(n){var e,r=null!==(e=null==Le?void 0:Le.length)&&void 0!==e?e:0,t=r-1>0?r-1:0,o=Me(te);switch(n&&qn&&(be(null),Ee()),n){case"next":var a=ze(o+1<r?o+1:0);ae(null!=a?a:null);break;case"prev":var i=ze(o-1>=0?o-1:t);ae(null!=i?i:null);break;case"last":var l=ze(t);ae(null!=l?l:null);break;default:var c=ze(0);ae(null!=c?c:null)}}),[te,Me,ze,qn,Ee,null==Le?void 0:Le.length]),Te=s((function(n,e){if(ke(le))switch(n){case"next":var r=null!=e?e:je(),t=r+1<le.length?r+1:le.length-1,o=le[t];be(o);break;case"prev":var a=null!=e?e:je(),i=a>0?a-1:a<0?le.length-1:0,l=le[i];be(l);break;case"first":var c=le[0];be(c);break;case"last":var s=le[le.length-1];be(s);break;default:be(null)}}),[je,ke,le]),He=s((function(n,e){switch(n&&ae(null),n){case"right":switch(Pe){case tn:var r,t,o;if((null===(r=Vn.current)||void 0===r?void 0:r.selectionEnd)===(null===(t=Vn.current)||void 0===t?void 0:t.value.length))null===(o=Kn.current)||void 0===o||o.focus();break;case an:case cn:case ln:if(Pe===ln||1===(null==le?void 0:le.length)){Ee(0),Te(null),e.preventDefault();break}Te("next")}break;case"left":switch(Pe){case on:var a;e.preventDefault(),Ee(null==Vn||null===(a=Vn.current)||void 0===a?void 0:a.value.length);break;case tn:case cn:case ln:if(ke(le)){var i;if(Pe===tn&&0!==(null===(i=Vn.current)||void 0===i?void 0:i.selectionStart))break;Te("prev")}}break;default:Te(null)}}),[Pe,ke,le,Ee,Te]);f((function(){de!==pe&&Fe("first")}),[de,qn,pe,Fe]),f((function(){if(te){var n=Fn(te);if(n&&n.current&&Un.current){var e=n.current.offsetTop,r=Un.current,t=r.scrollTop;(e>r.offsetHeight||e<t)&&(Un.current.scrollTop=e)}}}),[te,Fn]);var Re=s((function(n){if(M(n,"ComboboxOption")){var e=Yn(n.props),r=e.value,t=e.displayName;if(De(r)){var o=n.props,a=o.className,l=o.glyph,c=o.disabled,s=we.findIndex((function(n){return n.value===r})),u=te===r,d=ke(le)?le.includes(r):le===r,f=Fn(r);return i.createElement(Rr,{value:r,displayName:t,isFocused:u,isSelected:d,disabled:c,setSelected:function(){ae(r),Ce(r),Ee(),r===le&&ye()},glyph:l,className:a,index:s,ref:f})}}else if(M(n,"ComboboxGroup")){var p=i.Children.map(n.props.children,Re);if(p&&(null==p?void 0:p.length)>0)return i.createElement(oe,{label:n.props.label,className:n.props.className},i.Children.map(p,Re))}}),[we,Fn,te,ke,le,Ee,De,Ce]),We=u((function(){return i.Children.map(g,Re)}),[g,Re]),Ge=u((function(){if(ke(le))return le.filter(Se).map((function(n,e){var r=Jn(n,we),t=he===n,o=Tn(n),a=e>=le.length-1;return i.createElement(Zt,{key:n,displayName:r,isFocused:t,onRemove:function(){a?(Ee(),Te(null)):Te("next",e),Ce(n)},onFocus:function(){be(n)},ref:o})}))}),[ke,le,Se,we,he,Tn,Ce,Ee,Te]),Ke=u((function(){return i.createElement(i.Fragment,null,hn&&me&&i.createElement(O,{"aria-label":"Clear selection","aria-disabled":P,disabled:P,ref:Kn,onClick:function(n){P||(Ce(null),null==bn||bn(n),null==fn||fn(""),qn||xe())},onFocus:Ye,className:D(jt),darkMode:H},i.createElement(E,{glyph:"XWithCircle"})),"error"===W?i.createElement(E,{glyph:"Warning",color:H?S.red.light1:S.red.base,className:It(F)}):i.createElement(E,{glyph:"CaretDown",className:It(F)}))}),[hn,me,P,W,H,F,Ce,bn,fn,qn]),Xe=u((function(){return we.some((function(n){return n.hasGlyph}))}),[we]),Ve=s((function(){if(!ke(le)&&le===se){var n=Le.find((function(n){return n.displayName===de||n.value===de}));if(n&&!En)ce(n.value);else{var e,r=null!==(e=Jn(le,we))&&void 0!==e?e:"";fe(r)}}}),[we,de,ke,se,le,En,Le]),Ue=s((function(){if(me){if(ke(le))_e();else if(!ke(le)){var n,e=null!==(n=Jn(le,we))&&void 0!==n?n:"";fe(e),ye()}}else fe("")}),[me,we,ke,le]);f((function(){if(wn)if(e(wn)){var n,r=null!==(n=wn.filter((function(n){return Se(n)})))&&void 0!==n?n:[];ce(r)}else Se(wn)&&ce(wn);else ce(function(n){return n?[]:null}(xn))}),[]),f((function(){if(!a(En)&&En!==pe)if(t(En))ce(null);else if(ke(En)){var n=En.filter(Se);ce(n)}else ce(Se(En)?En:null)}),[ke,Se,pe,En]),f((function(){r(le,se)||Ue()}),[Ue,se,le]),f((function(){!qn&&ee&&Ve()}),[qn,ee,Ve]);var Ze=J(p(0),2),qe=Ze[0],Be=Ze[1];f((function(){var n,e;Be(null!==(n=null===(e=Gn.current)||void 0===e?void 0:e.clientWidth)&&void 0!==n?n:0)}),[Gn,qn,te,le]);var Ye=function(){ae(null)};k("mousedown",(function(n){Qe(n)||(n.preventDefault(),n.stopPropagation())}),{enabled:qn}),k("click",(function(n){Qe(n)||(n.stopPropagation(),ye())}),{options:{capture:!0},enabled:qn});var $e,Je=function(n){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?U(Object(r),!0).forEach((function(e){q(n,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):U(Object(r)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}))}return n}({popoverZIndex:In},Sn?{usePortal:Sn,portalClassName:Mn,portalContainer:zn,scrollContainer:jn}:{usePortal:Sn});return i.createElement(_n.Provider,{value:{multiselect:xn,darkMode:H,size:F,withIcons:Xe,disabled:P,isOpen:qn,state:W,searchState:X,chipTruncationLocation:Cn,chipCharacterLimit:Nn,inputValue:de}},i.createElement("div",B({className:D(vt(F),Dn)},Pn),(v||y)&&i.createElement("div",{className:Ft},v&&i.createElement(h,{id:Rn,htmlFor:Hn,darkMode:H},v),y&&i.createElement(b,{darkMode:H},y)),i.createElement("div",{ref:Gn,role:"combobox","aria-expanded":qn,"aria-controls":Wn,"aria-owns":Wn,tabIndex:-1,onMouseDown:function(n){P&&n.preventDefault()},onClick:function(n){if(n.target!==Vn.current){var e=0;if(Vn.current)e=n.nativeEvent.offsetX>Vn.current.offsetLeft+Vn.current.clientWidth?de.length:0;Ee(e)}xe()},onFocus:function(n){_e(),Ae(function(n){var e,r,t,o;if(!n)return;if(null!==(e=Vn.current)&&void 0!==e&&e.contains(n))return tn;if(null!==(r=Kn.current)&&void 0!==r&&r.contains(n))return on;var a=ke(le)?le.findIndex((function(e){var r,t;return null===(r=Tn(e))||void 0===r||null===(t=r.current)||void 0===t?void 0:t.contains(n)})):-1;if(ke(le)){if(0===a)return an;if(a===le.length-1)return ln;if(a>0)return cn}if(null!==(t=Un.current)&&void 0!==t&&t.contains(n))return un;if(null!==(o=Gn.current)&&void 0!==o&&o.contains(n))return sn}(n.target))},onKeyDown:function(n){var e,r,o=null===(e=Un.current)||void 0===e?void 0:e.contains(document.activeElement);if((null===(r=Gn.current)||void 0===r?void 0:r.contains(document.activeElement))||o){if(n.ctrlKey||n.shiftKey||n.altKey)return;switch(n.keyCode){case j.Tab:switch(Pe){case"Input":me||(ye(),Fe("first"),Te(null));break;case"LastChip":Te(null)}break;case j.Escape:ye(),Fe("first");break;case j.Enter:qn?Pe!==tn||t(te)||function(n){if("string"==typeof n){var e=$n(n,we);return!(null==e||!e.isDisabled)}return!!n.isDisabled}(te)?Pe===on&&(Ce(null),Ee()):Ce(te):xe();break;case j.Backspace:var a;if(ke(le))"Input"===Pe&&0===(null===(a=Vn.current)||void 0===a?void 0:a.selectionStart)&&Te("last");xe();break;case j.ArrowDown:qn?(n.preventDefault(),Fe("next")):xe();break;case j.ArrowUp:qn?(n.preventDefault(),Fe("prev")):xe();break;case j.ArrowRight:He("right",n);break;case j.ArrowLeft:He("left",n);break;default:qn||xe()}}},onTransitionEnd:function(){var n,e;Be(null!==(n=null===(e=Gn.current)||void 0===e?void 0:e.clientWidth)&&void 0!==n?n:0)},className:D(yt,xt[An],wt(F),(c={},q(c,Ot,hn&&me),q(c,kt[An],P),q(c,Et[An],W===pn.error),q(c,Ct[An],($e=tn,$e===Pe)),c))},i.createElement("div",{ref:Xn,className:Nt({size:F,overflow:vn})},Ge,i.createElement("input",{"aria-label":null!=L?L:v,"aria-autocomplete":"list","aria-controls":Wn,"aria-labelledby":Rn,ref:Vn,id:Hn,className:D(Dt,St[F],Lt[An],Mt(qn),q({},zt(F,de),ke(le))),placeholder:ve,disabled:null!=P?P:void 0,onChange:function(n){var e=n.target.value;fe(e),null==fn||fn(e)},value:de,autoComplete:"off"})),Ke),"error"===W&&G&&i.createElement("div",{className:D(Pt[An],At[F])},G),i.createElement(Bt,B({id:Wn,labelId:Rn,refEl:Gn,ref:Un,menuWidth:qe,searchLoadingMessage:en,searchErrorMessage:_,searchEmptyMessage:$},Je),We)));function Qe(n){var e,r,t=n.target;return(null===(e=Un.current)||void 0===e?void 0:e.contains(t))||(null===(r=Gn.current)||void 0===r?void 0:r.contains(t))||!1}function _e(){Xn&&Xn.current&&(Xn.current.scrollLeft=Xn.current.scrollWidth)}}$t.propTypes={multiselect:g.bool,value:g.oneOf([g.string,g.arrayOf(g.string)]),initialValue:g.oneOf([g.string,g.arrayOf(g.string)]),overflow:g.oneOf(Object.values(fn)),darkMode:g.bool,label:g.string,"aria-label":g.string,children:g.node,onChange:g.func,chipCharacterLimit:g.number,chipTruncationLocation:g.oneOf(Object.values({start:"start",middle:"middle",end:"end",none:"none"})),onClear:g.func,onFilter:g.func,clearable:g.bool,searchLoadingMessage:g.string,searchErrorMessage:g.string,searchEmptyMessage:g.string,searchState:g.oneOf(Object.values(gn)),errorMessage:g.string,state:g.oneOf(Object.values(pn)),size:g.oneOf(Object.values(dn)),disabled:g.bool,description:g.string,placeholder:g.string,filteredOptions:g.arrayOf(g.string),popoverZIndex:g.number,usePortal:g.bool,scrollContainer:g.elementType,portalContainer:g.elementType,portalClassName:g.string};export{$t as Combobox,ae as ComboboxGroup,Wr as ComboboxOption};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|