@leafygreen-ui/combobox 5.0.2 → 5.0.3
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 +15 -0
- package/dist/Chip.d.ts.map +1 -1
- package/dist/Combobox.d.ts.map +1 -1
- package/dist/Combobox.styles.d.ts.map +1 -1
- package/dist/Combobox.types.d.ts.map +1 -1
- package/dist/ComboboxContext.d.ts.map +1 -1
- package/dist/ComboboxGroup.d.ts.map +1 -1
- package/dist/ComboboxMenu/ComboboxMenu.d.ts.map +1 -1
- package/dist/ComboboxMenu/Menu.styles.d.ts.map +1 -1
- package/dist/ComboboxOption.d.ts.map +1 -1
- package/dist/ComboboxTestUtils.d.ts.map +1 -1
- package/dist/Menu.styles.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 +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/flattenChildren.d.ts.map +1 -1
- package/dist/utils/getNameAndValue.d.ts.map +1 -1
- package/dist/utils/index.d.ts +3 -3
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +11 -10
- package/src/Chip.tsx +6 -4
- package/src/Combobox.spec.tsx +11 -9
- package/src/Combobox.story.tsx +5 -3
- package/src/Combobox.styles.ts +1 -0
- package/src/Combobox.tsx +45 -43
- package/src/Combobox.types.ts +1 -0
- package/src/ComboboxContext.tsx +3 -1
- package/src/ComboboxGroup.tsx +5 -3
- package/src/ComboboxMenu/ComboboxMenu.tsx +11 -8
- package/src/ComboboxMenu/Menu.styles.ts +3 -1
- package/src/ComboboxOption.tsx +8 -6
- package/src/ComboboxTestUtils.tsx +10 -8
- package/src/Menu.styles.ts +1 -0
- package/src/index.ts +1 -1
- package/src/utils/ComboboxUtils.spec.tsx +6 -3
- package/src/utils/flattenChildren.tsx +3 -0
- package/src/utils/getNameAndValue.ts +1 -0
- package/src/utils/index.ts +3 -3
- package/tsconfig.tsbuildinfo +1 -1
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("lodash/clone"),require("lodash/isArray"),require("lodash/isEqual"),require("lodash/isNull"),require("lodash/isString"),require("lodash/isUndefined"),require("react"),require("prop-types"),require("@leafygreen-ui/typography"),require("@leafygreen-ui/hooks"),require("@leafygreen-ui/icon"),require("@leafygreen-ui/icon-button"),require("@leafygreen-ui/emotion"),require("@leafygreen-ui/palette"),require("@leafygreen-ui/lib"),require("@leafygreen-ui/leafygreen-provider"),require("lodash/escapeRegExp"),require("lodash/kebabCase"),require("@leafygreen-ui/checkbox"),require("@leafygreen-ui/tokens"),require("polished"),require("@leafygreen-ui/inline-definition"),require("@leafygreen-ui/popover")):"function"==typeof define&&define.amd?define(["exports","lodash/clone","lodash/isArray","lodash/isEqual","lodash/isNull","lodash/isString","lodash/isUndefined","react","prop-types","@leafygreen-ui/typography","@leafygreen-ui/hooks","@leafygreen-ui/icon","@leafygreen-ui/icon-button","@leafygreen-ui/emotion","@leafygreen-ui/palette","@leafygreen-ui/lib","@leafygreen-ui/leafygreen-provider","lodash/escapeRegExp","lodash/kebabCase","@leafygreen-ui/checkbox","@leafygreen-ui/tokens","polished","@leafygreen-ui/inline-definition","@leafygreen-ui/popover"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["@leafygreen-ui/combobox"]={},e.clone,e.isArray,e.isEqual,e.isNull,e.isString,e.isUndefined,e.React,e.PropTypes,e["@leafygreen-ui/typography"],e["@leafygreen-ui/hooks"],e["@leafygreen-ui/icon"],e["@leafygreen-ui/icon-button"],e["@leafygreen-ui/emotion"],e["@leafygreen-ui/palette"],e["@leafygreen-ui/lib"],e["@leafygreen-ui/leafygreen-provider"],e.escapeRegExp,e.kebabCase,e["@leafygreen-ui/checkbox"],e["@leafygreen-ui/tokens"],e.polished,e["@leafygreen-ui/inline-definition"],e["@leafygreen-ui/popover"])}(this,(function(e,n,t,a,r,l,o,i,s,u,c,d,f,p,g,h,b,m,y,v,x,k,w,C){"use strict";function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var D=E(n),S=E(t),L=E(a),O=E(r),N=E(l),T=E(o),M=E(i),z=E(s),j=E(d),I=E(f),R=E(m),q=E(y),P=E(v),A=E(w),F=E(C);function H(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function W(e){return W="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},W(e)}function G(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function U(){return U=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e},U.apply(this,arguments)}function K(e,n){if(null==e)return{};var t,a,r=function(e,n){if(null==e)return{};var t,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)t=l[a],n.indexOf(t)>=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)t=l[a],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}function X(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function V(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==t)return;var a,r,l=[],o=!0,i=!1;try{for(t=t.call(e);!(o=(a=t.next()).done)&&(l.push(a.value),!n||l.length!==n);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==t.return||t.return()}finally{if(i)throw r}}return l}(e,n)||B(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 Z(e){return function(e){if(Array.isArray(e))return Y(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||B(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 B(e,n){if(e){if("string"==typeof e)return Y(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Y(e,n):void 0}}function Y(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,a=new Array(n);t<n;t++)a[t]=e[t];return a}var _="Input",$="ClearButton",J="FirstChip",Q="LastChip",ee="MiddleChip",ne="Combobox",te="Menu",ae={Default:"default",Large:"large"},re={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},le={error:"error",none:"none"},oe={unset:"unset",error:"error",loading:"loading"};var ie,se,ue,ce,de,fe,pe,ge,he,be,me,ye,ve,xe,ke,we,Ce,Ee,De,Se,Le,Oe,Ne,Te,Me,ze,je,Ie,Re,qe,Pe,Ae,Fe,He=function(e,n,t){if(n&&t){var a=R.default(n),r=new RegExp(a,"gi"),l=e.matchAll(r);if(l){for(var o=e.split(""),i=0,s=Array.from(l);i<s.length;i++){var u,c=s[i],d=null!==(u=c.index)&&void 0!==u?u:-1,f=c[0],p=f.length,g=d+f+p,h=new Array(p).fill("");h[0]=M.default.createElement(t,{key:g},f),o.splice.apply(o,[d,p].concat(Z(h)))}return M.default.createElement(M.default.Fragment,null,o)}return M.default.createElement(M.default.Fragment,null,e)}return M.default.createElement(M.default.Fragment,null,e)},We=function(e){var n,t=e.value,a=e.displayName;return{value:null!=t?t:q.default(a),displayName:null!==(n=null!=a?a:t)&&void 0!==n?n:""}},Ge=function(e,n){if(e)return n.find((function(n){return n.value===e}))},Ue=function(e,n){var t,a;return e?null!==(t=null===(a=Ge(e,n))||void 0===a?void 0:a.displayName)&&void 0!==t?t:e:""},Ke=function e(n){return M.default.Children.toArray(n).reduce((function(n,t){if(h.isComponentType(t,"ComboboxOption")){var a=We(t.props),r=a.value,l=a.displayName,o=t.props,i=o.glyph,s=o.disabled;return[].concat(Z(n),[{value:r,displayName:l,isDisabled:!!s,hasGlyph:!!i}])}if(h.isComponentType(t,"ComboboxGroup")){var u=t.props.children;if(u)return[].concat(Z(n),Z(e(u)))}}),[])},Xe=i.createContext({multiselect:!1,darkMode:!1,theme:h.Theme.Light,size:ae.Default,withIcons:!1,disabled:!1,isOpen:!1,state:le.none,searchState:oe.unset}),Ve=(G(ue={},h.Theme.Light,p.css(ie||(ie=X(["\n padding-top: 8px;\n "])))),G(ue,h.Theme.Dark,p.css(se||(se=X(["\n padding-top: 8px;\n "])))),ue),Ze=p.css(ce||(ce=X(["\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"]))),Be=(G(pe={},h.Theme.Light,p.css(de||(de=X(["\n color: ",";\n "])),g.palette.gray.dark1)),G(pe,h.Theme.Dark,p.css(fe||(fe=X(["\n color: ",";\n "])),g.palette.gray.light1)),pe);function Ye(e){var n=e.label,t=e.className,a=e.children,r=i.useContext(Xe).theme,l=c.useIdAllocator({prefix:"combobox-group"});return M.default.Children.count(a)>0?M.default.createElement("div",{className:p.cx(Ve[r],t)},M.default.createElement("div",{className:p.cx(Ze,Be[r]),id:l},n),M.default.createElement("div",{role:"group","aria-labelledby":l},a)):M.default.createElement(M.default.Fragment,null)}function _e(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}_e.displayName="ComboboxGroup",_e.propTypes={className:z.default.string,children:z.default.node.isRequired,label:z.default.string.isRequired};var $e=(G(ge={},ae.Default,{x:12,y:8}),G(ge,ae.Large,{x:12,y:8}),ge),Je=(G(he={},ae.Default,x.typeScales.body1.lineHeight+2*$e[ae.Default].y),G(he,ae.Large,x.typeScales.body2.lineHeight+2*$e[ae.Large].y),he),Qe=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return p.css(be||(be=X(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},en=(G(ve={},h.Theme.Light,p.css(me||(me=X(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),k.transparentize(.85,g.palette.black),g.palette.gray.light2)),G(ve,h.Theme.Dark,p.css(ye||(ye=X(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),k.transparentize(.85,g.palette.black),g.palette.gray.dark3)),ve),nn=p.css(xe||(xe=X(["\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"])),x.spacing[2],x.fontFamilies.default),tn=(G(Ce={},h.Theme.Light,p.css(ke||(ke=X(["\n color: ",";\n background-color: ",";\n "])),g.palette.black,g.palette.white)),G(Ce,h.Theme.Dark,p.css(we||(we=X(["\n color: ",";\n background-color: ",";\n "])),g.palette.gray.light1,g.palette.gray.dark3)),Ce);G(Se={},ae.Default,p.css(Ee||(Ee=X(["\n min-height: ","px;\n "])),Je[ae.Default])),G(Se,ae.Large,p.css(De||(De=X(["\n min-height: ","px;\n "])),Je[ae.Large]));var an=p.css(Le||(Le=X(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),rn=p.css(Oe||(Oe=X(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),ln=(G(Me={},h.Theme.Light,p.css(Ne||(Ne=X(["\n color: ",";\n "])),g.palette.gray.dark3)),G(Me,h.Theme.Dark,p.css(Te||(Te=X(["\n color: ",";\n "])),g.palette.gray.light3)),Me),on=(G(Ie={},ae.Default,p.css(ze||(ze=X(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),x.typeScales.body1.fontSize,x.typeScales.body1.lineHeight,$e[ae.Default].y,$e[ae.Default].x)),G(Ie,ae.Large,p.css(je||(je=X(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),x.typeScales.body2.fontSize,x.typeScales.body2.lineHeight,$e[ae.Large].y,$e[ae.Large].x)),Ie);G(Pe={},ae.Default,p.css(Re||(Re=X(["\n height: ","px;\n width: ","px;\n "])),x.typeScales.body1.fontSize,x.typeScales.body1.fontSize)),G(Pe,ae.Large,p.css(qe||(qe=X(["\n height: ","px;\n width: ","px;\n "])),x.typeScales.body2.fontSize,x.typeScales.body2.fontSize));var sn,un,cn,dn,fn,pn,gn,hn,bn,mn,yn,vn,xn,kn,wn,Cn,En,Dn,Sn,Ln,On,Nn,Tn,Mn,zn,jn,In,Rn,qn,Pn,An,Fn,Hn,Wn,Gn,Un,Kn,Xn,Vn,Zn,Bn,Yn,_n,$n,Jn,Qn,et,nt,tt,at,rt,lt,ot,it,st,ut,ct,dt,ft,pt,gt,ht,bt,mt,yt=p.keyframes(Ae||(Ae=X(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),vt=p.css(Fe||(Fe=X(["\n animation: "," 1.5s linear infinite;\n"])),yt),xt=p.css(sn||(sn=X(["\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"])),x.fontFamilies.default),kt=(G(dn={},h.Theme.Light,p.css(un||(un=X(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),g.palette.gray.light2)),G(dn,h.Theme.Dark,p.css(cn||(cn=X(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),g.palette.gray.dark4)),dn),wt=(G(gn={},ae.Default,p.css(fn||(fn=X(["\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 "])),x.typeScales.body1.fontSize,x.typeScales.body1.lineHeight,Je[ae.Default],$e[ae.Default].y,$e[ae.Default].x,x.spacing[1],Je[ae.Default])),G(gn,ae.Large,p.css(pn||(pn=X(["\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 "])),x.typeScales.body2.fontSize,x.typeScales.body2.lineHeight,Je[ae.Large],$e[ae.Large].y,$e[ae.Large].x,x.spacing[2],Je[ae.Large])),gn),Ct=p.css(hn||(hn=X(["\n outline: none;\n\n &:before {\n transform: scaleY(1);\n }\n"]))),Et=(G(yn={},h.Theme.Light,p.css(bn||(bn=X(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Ct,g.palette.blue.light3,g.palette.blue.base)),G(yn,h.Theme.Dark,p.css(mn||(mn=X(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Ct,g.palette.blue.dark3,g.palette.blue.light1)),yn),Dt=p.css(vn||(vn=X(["\n cursor: not-allowed;\n\n &:hover {\n background-color: inherit;\n }\n\n &:before {\n content: unset;\n }\n"]))),St=(G(wn={},h.Theme.Light,p.css(xn||(xn=X(["\n ",";\n color: ",";\n "])),Dt,g.palette.gray.light1)),G(wn,h.Theme.Dark,p.css(kn||(kn=X(["\n ",";\n color: ",";\n "])),Dt,g.palette.gray.dark1)),wn),Lt=(G(Dn={},ae.Default,p.css(Cn||(Cn=X(["\n min-width: ","px;\n "])),x.spacing[3])),G(Dn,ae.Large,p.css(En||(En=X(["\n min-width: ","px;\n "])),x.spacing[4])),Dn),Ot=p.css(Sn||(Sn=X(["\n display: inline-flex;\n gap: 8px;\n justify-content: start;\n align-items: inherit;\n overflow-wrap: anywhere;\n"]))),Nt=p.css(Ln||(Ln=X(["\n pointer-events: none;\n"]))),Tt=function(e){return p.css(On||(On=X(["\n font-weight: ",";\n"])),e?"bold":"normal")},Mt=M.default.forwardRef((function(e,n){var t,a=e.displayName,r=e.glyph,l=e.isSelected,o=e.isFocused,s=e.disabled,u=e.setSelected,f=e.className,h=i.useContext(Xe),b=h.multiselect,m=h.darkMode,y=h.theme,v=h.withIcons,x=h.inputValue,k=h.size,w=c.useIdAllocator({prefix:"combobox-option-text"}),C=c.useForwardedRef(n,null),E=i.useCallback((function(e){e.stopPropagation(),s||e.target!==C.current&&"INPUT"!==e.target.tagName||u()}),[s,C,u]),D=i.useMemo((function(){if(r){if(d.isComponentGlyph(r))return r;console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",r)}}),[r]),S=i.useMemo((function(){if(b){var e=M.default.createElement(P.default,{"aria-labelledby":w,checked:l,tabIndex:-1,disabled:s,darkMode:m,className:p.css(Nn||(Nn=X(["\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 M.default.createElement(M.default.Fragment,null,M.default.createElement("span",{className:p.cx(Ot,Nt)},v?D:e,M.default.createElement("span",{id:w,className:Tt(l)},He(a,x,"strong"))),v&&e)}return M.default.createElement(M.default.Fragment,null,M.default.createElement("span",{className:p.cx(Ot,Nt)},D,M.default.createElement("span",{className:Tt(l)},He(a,x,"strong"))),l&&M.default.createElement(j.default,{glyph:"Checkmark",className:Lt[k],color:m?g.palette.blue.light1:g.palette.blue.base}))}),[b,D,l,a,x,k,m,w,s,v]);return M.default.createElement("li",{ref:C,role:"option","aria-selected":o,"aria-label":a,tabIndex:-1,className:p.cx(xt,wt[k],kt[y],(t={},G(t,Et[y],o),G(t,St[y],s),t),f),onClick:E,onKeyDown:E},S)}));function zt(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}Mt.displayName="ComboboxOption",zt.displayName="ComboboxOption",zt.propTypes={displayName:z.default.string,value:z.default.string,glyph:z.default.node,disabled:z.default.bool,className:z.default.string};var jt,It,Rt,qt,Pt,At,Ft,Ht,Wt,Gt,Ut,Kt,Xt,Vt,Zt,Bt,Yt,_t,$t,Jt,Qt,ea,na,ta,aa=(G(Tn={},ae.Default,x.typeScales.body1.fontSize),G(Tn,ae.Large,x.typeScales.body2.fontSize),Tn),ra=(G(Mn={},ae.Default,2),G(Mn,ae.Large,4),Mn),la=(G(zn={},ae.Default,x.typeScales.body1.lineHeight+2*ra[ae.Default]),G(zn,ae.Large,x.typeScales.body2.lineHeight+2*ra[ae.Large]),zn),oa=(G(jn={},ae.Default,{y:(36-la[ae.Default]-2)/2,x:x.spacing[2]-1}),G(jn,ae.Large,{y:(48-la[ae.Large]-2)/2,x:x.spacing[2]-1}),jn),ia=x.spacing[3],sa=(G(In={},ae.Default,aa[ae.Default]+2*oa[ae.Default].x+ia+2),G(In,ae.Large,aa[ae.Large]+2*oa[ae.Large].x+ia+2),In),ua=h.createUniqueClassName("combobox-chip"),ca=function(e){return p.css(Rn||(Rn=X(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),x.fontFamilies.default,sa[e])},da=p.css(qn||(qn=X(["\n display: grid;\n grid-auto-flow: column;\n grid-template-columns: 1fr ","px;\n align-items: center;\n cursor: text;\n transition: ","ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: 100%;\n max-width: 100%;\n border-radius: 6px;\n"])),ia,x.transitionDuration.default),fa=(G(Fn={},h.Theme.Light,p.css(Pn||(Pn=X(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),g.palette.gray.dark3,g.palette.white,g.palette.gray.base,x.hoverRing[h.Theme.Light].gray)),G(Fn,h.Theme.Dark,p.css(An||(An=X(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),g.palette.gray.light2,g.palette.gray.dark4,g.palette.gray.base,x.hoverRing[h.Theme.Dark].gray)),Fn),pa=function(e){return p.css(Hn||(Hn=X(["\n padding: ","px ","px;\n"])),oa[e].y,oa[e].x)},ga=(G(Un={},h.Theme.Light,p.css(Wn||(Wn=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),g.palette.gray.dark1,g.palette.gray.light2,g.palette.gray.light1)),G(Un,h.Theme.Dark,p.css(Gn||(Gn=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),g.palette.gray.dark1,g.palette.gray.dark3,g.palette.gray.dark2)),Un),ha=(G(Vn={},h.Theme.Light,p.css(Kn||(Kn=X(["\n border-color: ",";\n "])),g.palette.red.base)),G(Vn,h.Theme.Dark,p.css(Xn||(Xn=X(["\n border-color: ",";\n "])),g.palette.red.light1)),Vn),ba=(G(Yn={},h.Theme.Light,p.css(Zn||(Zn=X(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),g.palette.white,x.focusRing[h.Theme.Light].input)),G(Yn,h.Theme.Dark,p.css(Bn||(Bn=X(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),g.palette.gray.dark4,x.focusRing[h.Theme.Dark].input)),Yn),ma=p.css(_n||(_n=X(["\n grid-template-columns: 1fr ","px ","px;\n"])),28,ia),ya=function(e){var n=e.overflow,t=e.size,a=p.css($n||($n=X(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case re.scrollX:return p.css(Jn||(Jn=X(["\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 "])),a,la[t],ua);case re.expandY:return p.css(Qn||(Qn=X(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n overflow-x: hidden;\n min-height: ","px;\n "])),a,la[t])}},va=p.css(et||(et=X(["\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"])),x.fontFamilies.default),xa=(G(at={},h.Theme.Light,p.css(nt||(nt=X(["\n &::placeholder {\n color: ",";\n }\n "])),g.palette.gray.dark1)),G(at,h.Theme.Dark,p.css(tt||(tt=X(["\n &::placeholder {\n color: ",";\n }\n "])),g.palette.gray.light1)),at),ka=(G(ot={},ae.Default,p.css(rt||(rt=X(["\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 "])),la[ae.Default],x.typeScales.body1.fontSize,x.typeScales.body1.lineHeight,aa[ae.Default])),G(ot,ae.Large,p.css(lt||(lt=X(["\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 "])),la[ae.Large],x.typeScales.body2.fontSize,x.typeScales.body2.lineHeight,aa[ae.Large])),ot),wa=function(e){return p.css(it||(it=X(["\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")},Ca=function(e,n){var t,a=null!==(t=null==n?void 0:n.length)&&void 0!==t?t:0;return p.css(st||(st=X(["\n width: ","px;\n max-width: 100%;\n "])),a*aa[e])},Ea=p.css(ut||(ut=X(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n"])),ia/2),Da=function(e){return p.css(ct||(ct=X(["\n height: ","px;\n width: ","px;\n margin-inline-end: calc(","px / 2);\n"])),ia,ia,oa[e].x)},Sa=(G(pt={},h.Theme.Light,p.css(dt||(dt=X(["\n color: ",";\n "])),g.palette.red.base)),G(pt,h.Theme.Dark,p.css(ft||(ft=X(["\n color: ",";\n "])),g.palette.red.light1)),pt),La=(G(bt={},ae.Default,p.css(gt||(gt=X(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),x.typeScales.body1.fontSize,x.typeScales.body1.lineHeight,oa[ae.Default].y)),G(bt,ae.Large,p.css(ht||(ht=X(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),x.typeScales.body2.fontSize,x.typeScales.body2.lineHeight,oa[ae.Large].y)),bt),Oa=p.css(mt||(mt=X(["\n margin-bottom: 2px;\n"]))),Na=p.css(jt||(jt=X(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n"]))),Ta=(G(qt={},ae.Default,p.css(It||(It=X(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),x.typeScales.body1.fontSize,x.typeScales.body1.lineHeight)),G(qt,ae.Large,p.css(Rt||(Rt=X(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),x.typeScales.body2.fontSize,x.typeScales.body2.lineHeight)),qt),Ma=(G(Ft={},h.Theme.Light,p.css(Pt||(Pt=X(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),g.palette.black,g.palette.gray.light2,g.palette.blue.light2)),G(Ft,h.Theme.Dark,p.css(At||(At=X(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),g.palette.gray.light2,g.palette.gray.dark2,g.palette.blue.dark2)),Ft),za=(G(Gt={},h.Theme.Light,p.css(Ht||(Ht=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n "])),g.palette.gray.base,g.palette.gray.light3)),G(Gt,h.Theme.Dark,p.css(Wt||(Wt=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ","; ;\n "])),g.palette.gray.dark2,g.palette.gray.dark4,g.palette.gray.dark2)),Gt),ja=(G(Xt={},ae.Default,p.css(Ut||(Ut=X(["\n padding-inline: 6px;\n padding-block: ","px;\n "])),ra[ae.Default])),G(Xt,ae.Large,p.css(Kt||(Kt=X(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),ra[ae.Large])),Xt),Ia=p.css(Vt||(Vt=X(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n outline: none;\n border: none;\n background-color: transparent;\n cursor: pointer;\n transition: background-color ","ms ease-in-out;\n"])),x.transitionDuration.faster),Ra=(G(Yt={},ae.Default,p.css(Zt||(Zt=X(["\n height: ","px;\n "])),la[ae.Default])),G(Yt,ae.Large,p.css(Bt||(Bt=X(["\n height: ","px;\n "])),la[ae.Large])),Yt),qa=(G(Jt={},h.Theme.Light,p.css(_t||(_t=X(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),g.palette.gray.dark2,g.palette.black,g.palette.gray.light1)),G(Jt,h.Theme.Dark,p.css($t||($t=X(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),g.palette.gray.light1,g.palette.gray.light3,g.palette.gray.dark1)),Jt),Pa=(G(na={},h.Theme.Light,p.css(Qt||(Qt=X(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),g.palette.gray.dark2)),G(na,h.Theme.Dark,p.css(ea||(ea=X(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),g.palette.gray.dark2)),na),Aa=M.default.forwardRef((function(e,n){var t=e.displayName,a=e.isFocused,r=e.onRemove,l=e.onFocus,o=i.useContext(Xe),s=o.darkMode,u=o.theme,c=o.size,d=o.disabled,f=o.chipTruncationLocation,g=void 0===f?"end":f,b=o.chipCharacterLimit,m=void 0===b?12:b,y=!!m&&!!g&&"none"!==g&&t.length>m,v=i.useRef(null),x=i.useMemo((function(){if(y){var e=m-3;switch(g){case"start":return"…"+t.substring(t.length-e).trim();case"middle":return t.substring(0,e/2).trim()+"…"+t.substring(t.length-e/2).trim();case"end":return t.substring(0,e).trim()+"…";default:return t}}return!1}),[m,g,t,y]);i.useEffect((function(){var e;a&&!d&&(null==v||null===(e=v.current)||void 0===e||e.focus())}),[d,n,a]);return M.default.createElement("span",{role:"option","aria-selected":a,"data-testid":"lg-combobox-chip",ref:n,className:p.cx(ua,Na,Ma[u],Ta[c],G({},za[u],d)),onClick:function(e){var n;null!==(n=v.current)&&void 0!==n&&n.contains(e.target)||l()},onKeyDown:function(e){d||e.keyCode!==h.keyMap.Delete&&e.keyCode!==h.keyMap.Backspace&&e.keyCode!==h.keyMap.Enter&&e.keyCode!==h.keyMap.Space||r()},tabIndex:-1},M.default.createElement("span",{className:p.cx(ja[c])},x?M.default.createElement(A.default,{darkMode:s,definition:t,align:"bottom"},x):t),M.default.createElement("button",{"aria-label":"Deselect ".concat(t),"aria-disabled":d,disabled:d,ref:v,className:p.cx(Ia,qa[u],Ra[c],G({},Pa[u],d)),onClick:function(){d||r()}},M.default.createElement(j.default,{glyph:"X"})))}));Aa.displayName="Chip";var Fa=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Ha=M.default.forwardRef((function(e,n){var t=e.children,a=e.id,r=e.refEl,l=e.labelId,o=e.menuWidth,s=e.searchLoadingMessage,u=e.searchErrorMessage,d=e.searchEmptyMessage,f=K(e,Fa),h=i.useContext(Xe),b=h.disabled,m=h.darkMode,y=h.theme,v=h.size,x=h.isOpen,k=h.searchState,w=c.useForwardedRef(n,null),C=c.useAvailableSpace(r),E=T.default(C)?"unset":"".concat(Math.min(C,256),"px"),D=i.useMemo((function(){var e=p.cx(rn,ln[y],on[v]);switch(k){case"loading":return M.default.createElement("span",{className:e},M.default.createElement(j.default,{glyph:"Refresh",color:m?g.palette.blue.light1:g.palette.blue.base,className:vt}),s);case"error":return M.default.createElement("span",{className:e},M.default.createElement(j.default,{glyph:"Warning",color:m?g.palette.red.light1:g.palette.red.base}),u);default:return t&&"object"===W(t)&&"length"in t&&t.length>0?M.default.createElement("ul",{className:an},t):M.default.createElement("span",{className:e},d)}}),[y,v,k,m,s,u,t,d]);return M.default.createElement(F.default,U({active:x&&!b,spacing:4,align:"bottom",justify:"middle",refEl:r,adjustOnMutation:!0,className:p.cx(Qe(o),en[y])},f),M.default.createElement("div",{ref:w,id:a,role:"listbox","aria-labelledby":l,"aria-expanded":x,className:p.cx(nn,tn[y],p.css(ta||(ta=X(["\n max-height: ",";\n "])),E)),onMouseDownCapture:function(e){return e.preventDefault()}},D))}));Ha.displayName="ComboboxMenu";var Wa=["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 Ga(e){var n,t=e.children,a=e.label,r=e.description,l=e.placeholder,o=void 0===l?"Select":l,s=e["aria-label"],d=e.disabled,f=void 0!==d&&d,m=e.size,y=void 0===m?ae.Default:m,v=e.darkMode,x=e.state,k=void 0===x?"none":x,w=e.errorMessage,C=e.searchState,E=void 0===C?"unset":C,z=e.searchEmptyMessage,R=void 0===z?"No results found":z,q=e.searchErrorMessage,P=void 0===q?"Could not get results!":q,A=e.searchLoadingMessage,F=void 0===A?"Loading results...":A,X=e.filteredOptions,Z=e.onFilter,B=e.clearable,Y=void 0===B||B,re=e.onClear,oe=e.overflow,ie=void 0===oe?"expand-y":oe,se=e.multiselect,ue=void 0!==se&&se,ce=e.initialValue,de=e.onChange,fe=e.value,pe=e.chipTruncationLocation,ge=e.chipCharacterLimit,he=void 0===ge?12:ge,be=e.className,me=e.usePortal,ye=void 0===me||me,ve=e.portalClassName,xe=e.portalContainer,ke=e.scrollContainer,we=e.popoverZIndex,Ce=K(e,Wa),Ee=b.useDarkMode(v),De=Ee.darkMode,Se=Ee.theme,Le=c.useDynamicRefs({prefix:"option"}),Oe=c.useDynamicRefs({prefix:"chip"}),Ne=c.useIdAllocator({prefix:"combobox-input"}),Te=c.useIdAllocator({prefix:"combobox-label"}),Me=c.useIdAllocator({prefix:"combobox-menu"}),ze=i.useRef(null),je=i.useRef(null),Ie=i.useRef(null),Re=i.useRef(null),qe=i.useRef(null),Pe=V(i.useState(!1),2),Ae=Pe[0],Fe=Pe[1],He=c.usePrevious(Ae),Ve=V(i.useState(null),2),Ze=Ve[0],Be=Ve[1],_e=V(i.useState(null),2),$e=_e[0],Je=_e[1],Qe=c.usePrevious($e),en=V(i.useState(""),2),nn=en[0],tn=en[1],an=c.usePrevious(nn),rn=V(i.useState(null),2),ln=rn[0],on=rn[1],sn=!O.default($e)&&(S.default($e)&&$e.length>0||N.default($e)),un=ue&&S.default($e)&&$e.length>0?void 0:o,cn=function(){return Fe(!1)},dn=function(){return Fe(!0)},fn=i.useMemo((function(){return Ke(t)}),[t]),pn=i.useCallback((function(e){return!ue||"string"!=typeof e&&"number"!=typeof e?!ue&&S.default(e)&&h.consoleOnce.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):h.consoleOnce.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(W(e),' value: "').concat(e,'"')),ue&&S.default(e)}),[ue]),gn=i.useCallback((function(e){!f&&Re&&Re.current&&(Re.current.focus(),T.default(e)||Re.current.setSelectionRange(e,e))}),[f]),hn=i.useCallback((function(e){if(pn($e)){var n=D.default($e);O.default(e)?n.length=0:$e.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),tn("")),Je(n),null==de||de(n)}else{var t=e;Je(t),null==de||de(t)}}),[pn,de,$e]),bn=i.useCallback((function(e){return pn($e)?$e.includes(e):e===$e}),[pn,$e]),mn=i.useCallback((function(e){var n,t,a,r,l=(t=fn,(n=e)?null!==(a=null===(r=t.find((function(e){return e.displayName===n})))||void 0===r?void 0:r.value)&&void 0!==a?a:n:"");return bn(l)}),[fn,bn]),yn=i.useCallback((function(e){var n="string"==typeof e?e:e.value;return X&&X.length>0?X.includes(n):!!mn(nn)||("string"==typeof e?Ue(n,fn):e.displayName).toLowerCase().includes(nn.toLowerCase())}),[X,mn,nn,fn]),vn=i.useMemo((function(){return fn.filter(yn)}),[fn,yn]),xn=i.useCallback((function(e){return!!e&&!!fn.find((function(n){return n.value===e}))}),[fn]),kn=i.useCallback((function(e){return vn?vn.findIndex((function(n){return n.value===e})):-1}),[vn]),wn=i.useCallback((function(e){if(vn&&vn.length>=e){var n=vn[e];return n?n.value:void 0}}),[vn]),Cn=i.useCallback((function(){return pn($e)?$e.findIndex((function(e){var n,t;return null===(n=Oe(e))||void 0===n||null===(t=n.current)||void 0===t?void 0:t.contains(document.activeElement)})):-1}),[Oe,pn,$e]),En=V(i.useState(),2),Dn=En[0],Sn=En[1],Ln=i.useCallback((function(e){var n,t=null!==(n=null==vn?void 0:vn.length)&&void 0!==n?n:0,a=t-1>0?t-1:0,r=kn(Ze);switch(e&&Ae&&(on(null),gn()),e){case"next":var l=wn(r+1<t?r+1:0);Be(null!=l?l:null);break;case"prev":var o=wn(r-1>=0?r-1:a);Be(null!=o?o:null);break;case"last":var i=wn(a);Be(null!=i?i:null);break;default:var s=wn(0);Be(null!=s?s:null)}}),[Ze,kn,wn,Ae,gn,null==vn?void 0:vn.length]),On=i.useCallback((function(e,n){if(pn($e))switch(e){case"next":var t=null!=n?n:Cn(),a=t+1<$e.length?t+1:$e.length-1,r=$e[a];on(r);break;case"prev":var l=null!=n?n:Cn(),o=l>0?l-1:l<0?$e.length-1:0,i=$e[o];on(i);break;case"first":var s=$e[0];on(s);break;case"last":var u=$e[$e.length-1];on(u);break;default:on(null)}}),[Cn,pn,$e]),Nn=i.useCallback((function(e,n){switch(e&&Be(null),e){case"right":switch(Dn){case _:var t,a,r;if((null===(t=Re.current)||void 0===t?void 0:t.selectionEnd)===(null===(a=Re.current)||void 0===a?void 0:a.value.length))null===(r=je.current)||void 0===r||r.focus();break;case J:case ee:case Q:if(Dn===Q||1===(null==$e?void 0:$e.length)){gn(0),On(null),n.preventDefault();break}On("next")}break;case"left":switch(Dn){case $:var l;n.preventDefault(),gn(null==Re||null===(l=Re.current)||void 0===l?void 0:l.value.length);break;case _:case ee:case Q:if(pn($e)){var o;if(Dn===_&&0!==(null===(o=Re.current)||void 0===o?void 0:o.selectionStart))break;On("prev")}}break;default:On(null)}}),[Dn,pn,$e,gn,On]);i.useEffect((function(){nn!==an&&Ln("first")}),[nn,Ae,an,Ln]),i.useEffect((function(){if(Ze){var e=Le(Ze);if(e&&e.current&&qe.current){var n=e.current.offsetTop,t=qe.current,a=t.scrollTop;(n>t.offsetHeight||n<a)&&(qe.current.scrollTop=n)}}}),[Ze,Le]);var Tn=i.useCallback((function(e){if(h.isComponentType(e,"ComboboxOption")){var n=We(e.props),t=n.value,a=n.displayName;if(yn(t)){var r=e.props,l=r.className,o=r.glyph,i=r.disabled,s=fn.findIndex((function(e){return e.value===t})),u=Ze===t,c=pn($e)?$e.includes(t):$e===t,d=Le(t);return M.default.createElement(Mt,{value:t,displayName:a,isFocused:u,isSelected:c,disabled:i,setSelected:function(){Be(t),hn(t),gn(),t===$e&&cn()},glyph:o,className:l,index:s,ref:d})}}else if(h.isComponentType(e,"ComboboxGroup")){var f=M.default.Children.map(e.props.children,Tn);if(f&&(null==f?void 0:f.length)>0)return M.default.createElement(Ye,{label:e.props.label,className:e.props.className},M.default.Children.map(f,Tn))}}),[fn,Le,Ze,pn,$e,gn,yn,hn]),Mn=i.useMemo((function(){return M.default.Children.map(t,Tn)}),[t,Tn]),zn=i.useMemo((function(){if(pn($e))return $e.filter(xn).map((function(e,n){var t=Ue(e,fn),a=ln===e,r=Oe(e),l=n>=$e.length-1;return M.default.createElement(Aa,{key:e,displayName:t,isFocused:a,onRemove:function(){l?(gn(),On(null)):On("next",n),hn(e)},onFocus:function(){on(e)},ref:r})}))}),[pn,$e,xn,fn,ln,Oe,hn,gn,On]),jn=i.useMemo((function(){return M.default.createElement(M.default.Fragment,null,Y&&sn&&M.default.createElement(I.default,{"aria-label":"Clear selection","aria-disabled":f,disabled:f,ref:je,onClick:function(e){f||(hn(null),null==re||re(e),null==Z||Z(""),Ae||dn())},onFocus:Hn,className:p.cx(Ea),darkMode:De},M.default.createElement(j.default,{glyph:"XWithCircle"})),"error"===k?M.default.createElement(j.default,{glyph:"Warning",color:De?g.palette.red.light1:g.palette.red.base,className:Da(y)}):M.default.createElement(j.default,{glyph:"CaretDown",className:Da(y)}))}),[Y,sn,f,k,De,y,hn,re,Z,Ae]),In=i.useMemo((function(){return fn.some((function(e){return e.hasGlyph}))}),[fn]),Rn=i.useCallback((function(){if(!pn($e)&&$e===Qe){var e=vn.find((function(e){return e.displayName===nn||e.value===nn}));if(e&&!fe)Je(e.value);else{var n,t=null!==(n=Ue($e,fn))&&void 0!==n?n:"";tn(t)}}}),[fn,nn,pn,Qe,$e,fe,vn]),qn=i.useCallback((function(){if(sn){if(pn($e))Kn();else if(!pn($e)){var e,n=null!==(e=Ue($e,fn))&&void 0!==e?e:"";tn(n),cn()}}else tn("")}),[sn,fn,pn,$e]);i.useEffect((function(){if(ce)if(S.default(ce)){var e,n=null!==(e=ce.filter((function(e){return xn(e)})))&&void 0!==e?e:[];Je(n)}else xn(ce)&&Je(ce);else Je(function(e){return e?[]:null}(ue))}),[]),i.useEffect((function(){if(!T.default(fe)&&fe!==an)if(O.default(fe))Je(null);else if(pn(fe)){var e=fe.filter(xn);Je(e)}else Je(xn(fe)?fe:null)}),[pn,xn,an,fe]),i.useEffect((function(){L.default($e,Qe)||qn()}),[qn,Qe,$e]),i.useEffect((function(){!Ae&&He&&Rn()}),[Ae,He,Rn]);var Pn=V(i.useState(0),2),An=Pn[0],Fn=Pn[1];i.useEffect((function(){var e,n;Fn(null!==(e=null===(n=ze.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[ze,Ae,Ze,$e]);var Hn=function(){Be(null)};c.useEventListener("mousedown",(function(e){Un(e)||(e.preventDefault(),e.stopPropagation())}),{enabled:Ae}),c.useEventListener("click",(function(e){Un(e)||(e.stopPropagation(),cn())}),{options:{capture:!0},enabled:Ae});var Wn,Gn=function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?H(Object(t),!0).forEach((function(n){G(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):H(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}({popoverZIndex:we},ye?{usePortal:ye,portalClassName:ve,portalContainer:xe,scrollContainer:ke}:{usePortal:ye});return M.default.createElement(Xe.Provider,{value:{multiselect:ue,darkMode:De,theme:Se,size:y,withIcons:In,disabled:f,isOpen:Ae,state:k,searchState:E,chipTruncationLocation:pe,chipCharacterLimit:he,inputValue:nn}},M.default.createElement("div",U({className:p.cx(ca(y),be)},Ce),(a||r)&&M.default.createElement("div",{className:Oa},a&&M.default.createElement(u.Label,{id:Te,htmlFor:Ne,darkMode:De},a),r&&M.default.createElement(u.Description,{darkMode:De},r)),M.default.createElement("div",{ref:ze,role:"combobox","aria-expanded":Ae,"aria-controls":Me,"aria-owns":Me,tabIndex:-1,onMouseDown:function(e){f&&e.preventDefault()},onClick:function(e){if(e.target!==Re.current){var n=0;if(Re.current)n=e.nativeEvent.offsetX>Re.current.offsetLeft+Re.current.clientWidth?nn.length:0;gn(n)}dn()},onFocus:function(e){Kn(),Sn(function(e){var n,t,a,r;if(!e)return;if(null!==(n=Re.current)&&void 0!==n&&n.contains(e))return _;if(null!==(t=je.current)&&void 0!==t&&t.contains(e))return $;var l=pn($e)?$e.findIndex((function(n){var t,a;return null===(t=Oe(n))||void 0===t||null===(a=t.current)||void 0===a?void 0:a.contains(e)})):-1;if(pn($e)){if(0===l)return J;if(l===$e.length-1)return Q;if(l>0)return ee}if(null!==(a=qe.current)&&void 0!==a&&a.contains(e))return te;if(null!==(r=ze.current)&&void 0!==r&&r.contains(e))return ne}(e.target))},onKeyDown:function(e){var n,t,a=null===(n=qe.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(t=ze.current)||void 0===t?void 0:t.contains(document.activeElement))||a){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.keyCode){case h.keyMap.Tab:switch(Dn){case"Input":sn||(cn(),Ln("first"),On(null));break;case"LastChip":On(null)}break;case h.keyMap.Escape:cn(),Ln("first");break;case h.keyMap.Enter:Ae?Dn!==_||O.default(Ze)||function(e){if("string"==typeof e){var n=Ge(e,fn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(Ze)?Dn===$&&(hn(null),gn()):hn(Ze):dn();break;case h.keyMap.Backspace:var r;if(pn($e))"Input"===Dn&&0===(null===(r=Re.current)||void 0===r?void 0:r.selectionStart)&&On("last");dn();break;case h.keyMap.ArrowDown:Ae?(e.preventDefault(),Ln("next")):dn();break;case h.keyMap.ArrowUp:Ae?(e.preventDefault(),Ln("prev")):dn();break;case h.keyMap.ArrowRight:Nn("right",e);break;case h.keyMap.ArrowLeft:Nn("left",e);break;default:Ae||dn()}}},onTransitionEnd:function(){var e,n;Fn(null!==(e=null===(n=ze.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:p.cx(da,fa[Se],pa(y),(n={},G(n,ma,Y&&sn),G(n,ga[Se],f),G(n,ha[Se],k===le.error),G(n,ba[Se],(Wn=_,Wn===Dn)),n))},M.default.createElement("div",{ref:Ie,className:ya({size:y,overflow:ie})},zn,M.default.createElement("input",{"aria-label":null!=s?s:a,"aria-autocomplete":"list","aria-controls":Me,"aria-labelledby":Te,ref:Re,id:Ne,className:p.cx(va,ka[y],xa[Se],wa(Ae),G({},Ca(y,nn),pn($e))),placeholder:un,disabled:null!=f?f:void 0,onChange:function(e){var n=e.target.value;tn(n),null==Z||Z(n)},value:nn,autoComplete:"off"})),jn),"error"===k&&w&&M.default.createElement("div",{className:p.cx(Sa[Se],La[y])},w),M.default.createElement(Ha,U({id:Me,labelId:Te,refEl:ze,ref:qe,menuWidth:An,searchLoadingMessage:F,searchErrorMessage:P,searchEmptyMessage:R},Gn),Mn)));function Un(e){var n,t,a=e.target;return(null===(n=qe.current)||void 0===n?void 0:n.contains(a))||(null===(t=ze.current)||void 0===t?void 0:t.contains(a))||!1}function Kn(){Ie&&Ie.current&&(Ie.current.scrollLeft=Ie.current.scrollWidth)}}Ga.propTypes={multiselect:z.default.bool,value:z.default.oneOf([z.default.string,z.default.arrayOf(z.default.string)]),initialValue:z.default.oneOf([z.default.string,z.default.arrayOf(z.default.string)]),overflow:z.default.oneOf(Object.values(re)),darkMode:z.default.bool,label:z.default.string,"aria-label":z.default.string,children:z.default.node,onChange:z.default.func,chipCharacterLimit:z.default.number,chipTruncationLocation:z.default.oneOf(Object.values({start:"start",middle:"middle",end:"end",none:"none"})),onClear:z.default.func,onFilter:z.default.func,clearable:z.default.bool,searchLoadingMessage:z.default.string,searchErrorMessage:z.default.string,searchEmptyMessage:z.default.string,searchState:z.default.oneOf(Object.values(oe)),errorMessage:z.default.string,state:z.default.oneOf(Object.values(le)),size:z.default.oneOf(Object.values(ae)),disabled:z.default.bool,description:z.default.string,placeholder:z.default.string,filteredOptions:z.default.arrayOf(z.default.string),popoverZIndex:z.default.number,usePortal:z.default.bool,scrollContainer:z.default.elementType,portalContainer:z.default.elementType,portalClassName:z.default.string},e.Combobox=Ga,e.ComboboxGroup=_e,e.ComboboxOption=zt,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("react"),require("lodash/clone"),require("lodash/isArray"),require("lodash/isEqual"),require("lodash/isNull"),require("lodash/isString"),require("lodash/isUndefined"),require("prop-types"),require("@leafygreen-ui/emotion"),require("@leafygreen-ui/hooks"),require("@leafygreen-ui/icon"),require("@leafygreen-ui/icon-button"),require("@leafygreen-ui/leafygreen-provider"),require("@leafygreen-ui/lib"),require("@leafygreen-ui/palette"),require("@leafygreen-ui/typography"),require("@leafygreen-ui/popover"),require("polished"),require("@leafygreen-ui/tokens"),require("@leafygreen-ui/inline-definition"),require("@leafygreen-ui/checkbox"),require("lodash/kebabCase"),require("lodash/escapeRegExp")):"function"==typeof define&&define.amd?define(["exports","react","lodash/clone","lodash/isArray","lodash/isEqual","lodash/isNull","lodash/isString","lodash/isUndefined","prop-types","@leafygreen-ui/emotion","@leafygreen-ui/hooks","@leafygreen-ui/icon","@leafygreen-ui/icon-button","@leafygreen-ui/leafygreen-provider","@leafygreen-ui/lib","@leafygreen-ui/palette","@leafygreen-ui/typography","@leafygreen-ui/popover","polished","@leafygreen-ui/tokens","@leafygreen-ui/inline-definition","@leafygreen-ui/checkbox","lodash/kebabCase","lodash/escapeRegExp"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["@leafygreen-ui/combobox"]={},e.React,e.clone,e.isArray,e.isEqual,e.isNull,e.isString,e.isUndefined,e.PropTypes,e["@leafygreen-ui/emotion"],e["@leafygreen-ui/hooks"],e["@leafygreen-ui/icon"],e["@leafygreen-ui/icon-button"],e["@leafygreen-ui/leafygreen-provider"],e["@leafygreen-ui/lib"],e["@leafygreen-ui/palette"],e["@leafygreen-ui/typography"],e["@leafygreen-ui/popover"],e.polished,e["@leafygreen-ui/tokens"],e["@leafygreen-ui/inline-definition"],e["@leafygreen-ui/checkbox"],e.kebabCase,e.escapeRegExp)}(this,(function(e,n,t,a,r,l,o,i,s,u,c,d,f,p,g,h,b,m,y,v,x,k,w,C){"use strict";function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var D=E(n),S=E(t),L=E(a),O=E(r),N=E(l),T=E(o),M=E(i),z=E(s),j=E(d),I=E(f),R=E(m),q=E(x),P=E(k),A=E(w),F=E(C);function H(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function W(e){return W="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},W(e)}function G(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function U(){return U=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e},U.apply(this,arguments)}function K(e,n){if(null==e)return{};var t,a,r=function(e,n){if(null==e)return{};var t,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)t=l[a],n.indexOf(t)>=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)t=l[a],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}function X(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function V(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==t)return;var a,r,l=[],o=!0,i=!1;try{for(t=t.call(e);!(o=(a=t.next()).done)&&(l.push(a.value),!n||l.length!==n);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==t.return||t.return()}finally{if(i)throw r}}return l}(e,n)||B(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 Z(e){return function(e){if(Array.isArray(e))return Y(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||B(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 B(e,n){if(e){if("string"==typeof e)return Y(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Y(e,n):void 0}}function Y(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,a=new Array(n);t<n;t++)a[t]=e[t];return a}var _="Input",$="ClearButton",J="FirstChip",Q="LastChip",ee="MiddleChip",ne="Combobox",te="Menu",ae={Default:"default",Large:"large"},re={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},le={error:"error",none:"none"},oe={unset:"unset",error:"error",loading:"loading"};var ie,se,ue,ce,de,fe,pe,ge,he,be,me,ye,ve,xe,ke,we,Ce,Ee,De,Se,Le,Oe,Ne,Te,Me,ze,je=n.createContext({multiselect:!1,darkMode:!1,theme:g.Theme.Light,size:ae.Default,withIcons:!1,disabled:!1,isOpen:!1,state:le.none,searchState:oe.unset}),Ie=(G(ie={},ae.Default,{x:12,y:8}),G(ie,ae.Large,{x:12,y:8}),ie),Re=(G(se={},ae.Default,v.typeScales.body1.lineHeight+2*Ie[ae.Default].y),G(se,ae.Large,v.typeScales.body2.lineHeight+2*Ie[ae.Large].y),se),qe=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return u.css(ue||(ue=X(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},Pe=(G(fe={},g.Theme.Light,u.css(ce||(ce=X(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),y.transparentize(.85,h.palette.black),h.palette.gray.light2)),G(fe,g.Theme.Dark,u.css(de||(de=X(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),y.transparentize(.85,h.palette.black),h.palette.gray.dark3)),fe),Ae=u.css(pe||(pe=X(["\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"])),v.spacing[2],v.fontFamilies.default),Fe=(G(be={},g.Theme.Light,u.css(ge||(ge=X(["\n color: ",";\n background-color: ",";\n "])),h.palette.black,h.palette.white)),G(be,g.Theme.Dark,u.css(he||(he=X(["\n color: ",";\n background-color: ",";\n "])),h.palette.gray.light1,h.palette.gray.dark3)),be);G(ve={},ae.Default,u.css(me||(me=X(["\n min-height: ","px;\n "])),Re[ae.Default])),G(ve,ae.Large,u.css(ye||(ye=X(["\n min-height: ","px;\n "])),Re[ae.Large]));var He=u.css(xe||(xe=X(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),We=u.css(ke||(ke=X(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),Ge=(G(Ee={},g.Theme.Light,u.css(we||(we=X(["\n color: ",";\n "])),h.palette.gray.dark3)),G(Ee,g.Theme.Dark,u.css(Ce||(Ce=X(["\n color: ",";\n "])),h.palette.gray.light3)),Ee),Ue=(G(Le={},ae.Default,u.css(De||(De=X(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),v.typeScales.body1.fontSize,v.typeScales.body1.lineHeight,Ie[ae.Default].y,Ie[ae.Default].x)),G(Le,ae.Large,u.css(Se||(Se=X(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px\n ","px;\n "])),v.typeScales.body2.fontSize,v.typeScales.body2.lineHeight,Ie[ae.Large].y,Ie[ae.Large].x)),Le);G(Te={},ae.Default,u.css(Oe||(Oe=X(["\n height: ","px;\n width: ","px;\n "])),v.typeScales.body1.fontSize,v.typeScales.body1.fontSize)),G(Te,ae.Large,u.css(Ne||(Ne=X(["\n height: ","px;\n width: ","px;\n "])),v.typeScales.body2.fontSize,v.typeScales.body2.fontSize));var Ke,Xe,Ve,Ze,Be,Ye,_e,$e,Je,Qe,en,nn,tn,an,rn,ln,on,sn,un,cn,dn,fn,pn,gn,hn,bn,mn,yn,vn,xn,kn,wn,Cn,En,Dn,Sn,Ln,On,Nn,Tn,Mn,zn,jn,In=u.keyframes(Me||(Me=X(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Rn=u.css(ze||(ze=X(["\n animation: "," 1.5s linear infinite;\n"])),In),qn=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Pn=D.default.forwardRef((function(e,t){var a=e.children,r=e.id,l=e.refEl,o=e.labelId,i=e.menuWidth,s=e.searchLoadingMessage,d=e.searchErrorMessage,f=e.searchEmptyMessage,p=K(e,qn),g=n.useContext(je),b=g.disabled,m=g.darkMode,y=g.theme,v=g.size,x=g.isOpen,k=g.searchState,w=c.useForwardedRef(t,null),C=c.useAvailableSpace(l),E=M.default(C)?"unset":"".concat(Math.min(C,256),"px"),S=n.useMemo((function(){var e=u.cx(We,Ge[y],Ue[v]);switch(k){case"loading":return D.default.createElement("span",{className:e},D.default.createElement(j.default,{glyph:"Refresh",color:m?h.palette.blue.light1:h.palette.blue.base,className:Rn}),s);case"error":return D.default.createElement("span",{className:e},D.default.createElement(j.default,{glyph:"Warning",color:m?h.palette.red.light1:h.palette.red.base}),d);default:return a&&"object"===W(a)&&"length"in a&&a.length>0?D.default.createElement("ul",{className:He},a):D.default.createElement("span",{className:e},f)}}),[y,v,k,m,s,d,a,f]);return D.default.createElement(R.default,U({active:x&&!b,spacing:4,align:"bottom",justify:"middle",refEl:l,adjustOnMutation:!0,className:u.cx(qe(i),Pe[y])},p),D.default.createElement("div",{ref:w,id:r,role:"listbox","aria-labelledby":o,"aria-expanded":x,className:u.cx(Ae,Fe[y],u.css(Ke||(Ke=X(["\n max-height: ",";\n "])),E)),onMouseDownCapture:function(e){return e.preventDefault()}},S))}));Pn.displayName="ComboboxMenu";var An,Fn,Hn,Wn,Gn,Un,Kn,Xn,Vn,Zn,Bn,Yn,_n,$n,Jn,Qn,et,nt,tt,at,rt,lt,ot,it,st,ut,ct,dt,ft,pt,gt=(G(Xe={},ae.Default,v.typeScales.body1.fontSize),G(Xe,ae.Large,v.typeScales.body2.fontSize),Xe),ht=(G(Ve={},ae.Default,2),G(Ve,ae.Large,4),Ve),bt=(G(Ze={},ae.Default,v.typeScales.body1.lineHeight+2*ht[ae.Default]),G(Ze,ae.Large,v.typeScales.body2.lineHeight+2*ht[ae.Large]),Ze),mt=(G(Be={},ae.Default,{y:(36-bt[ae.Default]-2)/2,x:v.spacing[2]-1}),G(Be,ae.Large,{y:(48-bt[ae.Large]-2)/2,x:v.spacing[2]-1}),Be),yt=v.spacing[3],vt=(G(Ye={},ae.Default,gt[ae.Default]+2*mt[ae.Default].x+yt+2),G(Ye,ae.Large,gt[ae.Large]+2*mt[ae.Large].x+yt+2),Ye),xt=g.createUniqueClassName("combobox-chip"),kt=function(e){return u.css(_e||(_e=X(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),v.fontFamilies.default,vt[e])},wt=u.css($e||($e=X(["\n display: grid;\n grid-auto-flow: column;\n grid-template-columns: 1fr ","px;\n align-items: center;\n cursor: text;\n transition: ","ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: 100%;\n max-width: 100%;\n border-radius: 6px;\n"])),yt,v.transitionDuration.default),Ct=(G(en={},g.Theme.Light,u.css(Je||(Je=X(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),h.palette.gray.dark3,h.palette.white,h.palette.gray.base,v.hoverRing[g.Theme.Light].gray)),G(en,g.Theme.Dark,u.css(Qe||(Qe=X(["\n color: ",";\n background-color: ",";\n border-color: ",";\n\n &:hover {\n box-shadow: ",";\n }\n "])),h.palette.gray.light2,h.palette.gray.dark4,h.palette.gray.base,v.hoverRing[g.Theme.Dark].gray)),en),Et=function(e){return u.css(nn||(nn=X(["\n padding: ","px ","px;\n"])),mt[e].y,mt[e].x)},Dt=(G(rn={},g.Theme.Light,u.css(tn||(tn=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),h.palette.gray.dark1,h.palette.gray.light2,h.palette.gray.light1)),G(rn,g.Theme.Dark,u.css(an||(an=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n "])),h.palette.gray.dark1,h.palette.gray.dark3,h.palette.gray.dark2)),rn),St=(G(sn={},g.Theme.Light,u.css(ln||(ln=X(["\n border-color: ",";\n "])),h.palette.red.base)),G(sn,g.Theme.Dark,u.css(on||(on=X(["\n border-color: ",";\n "])),h.palette.red.light1)),sn),Lt=(G(dn={},g.Theme.Light,u.css(un||(un=X(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),h.palette.white,v.focusRing[g.Theme.Light].input)),G(dn,g.Theme.Dark,u.css(cn||(cn=X(["\n &:focus-within {\n border-color: transparent;\n background-color: ",";\n box-shadow: ",";\n }\n "])),h.palette.gray.dark4,v.focusRing[g.Theme.Dark].input)),dn),Ot=u.css(fn||(fn=X(["\n grid-template-columns: 1fr ","px ","px;\n"])),28,yt),Nt=function(e){var n=e.overflow,t=e.size,a=u.css(pn||(pn=X(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case re.scrollX:return u.css(gn||(gn=X(["\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 "])),a,bt[t],xt);case re.expandY:return u.css(hn||(hn=X(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n overflow-x: hidden;\n min-height: ","px;\n "])),a,bt[t])}},Tt=u.css(bn||(bn=X(["\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"])),v.fontFamilies.default),Mt=(G(vn={},g.Theme.Light,u.css(mn||(mn=X(["\n &::placeholder {\n color: ",";\n }\n "])),h.palette.gray.dark1)),G(vn,g.Theme.Dark,u.css(yn||(yn=X(["\n &::placeholder {\n color: ",";\n }\n "])),h.palette.gray.light1)),vn),zt=(G(wn={},ae.Default,u.css(xn||(xn=X(["\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 "])),bt[ae.Default],v.typeScales.body1.fontSize,v.typeScales.body1.lineHeight,gt[ae.Default])),G(wn,ae.Large,u.css(kn||(kn=X(["\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 "])),bt[ae.Large],v.typeScales.body2.fontSize,v.typeScales.body2.lineHeight,gt[ae.Large])),wn),jt=function(e){return u.css(Cn||(Cn=X(["\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")},It=function(e,n){var t,a=null!==(t=null==n?void 0:n.length)&&void 0!==t?t:0;return u.css(En||(En=X(["\n width: ","px;\n max-width: 100%;\n "])),a*gt[e])},Rt=u.css(Dn||(Dn=X(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n"])),yt/2),qt=function(e){return u.css(Sn||(Sn=X(["\n height: ","px;\n width: ","px;\n margin-inline-end: calc(","px / 2);\n"])),yt,yt,mt[e].x)},Pt=(G(Nn={},g.Theme.Light,u.css(Ln||(Ln=X(["\n color: ",";\n "])),h.palette.red.base)),G(Nn,g.Theme.Dark,u.css(On||(On=X(["\n color: ",";\n "])),h.palette.red.light1)),Nn),At=(G(zn={},ae.Default,u.css(Tn||(Tn=X(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),v.typeScales.body1.fontSize,v.typeScales.body1.lineHeight,mt[ae.Default].y)),G(zn,ae.Large,u.css(Mn||(Mn=X(["\n font-size: ","px;\n line-height: ","px;\n padding-top: ","px;\n "])),v.typeScales.body2.fontSize,v.typeScales.body2.lineHeight,mt[ae.Large].y)),zn),Ft=u.css(jn||(jn=X(["\n margin-bottom: 2px;\n"]))),Ht=u.css(An||(An=X(["\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n white-space: nowrap;\n box-sizing: border-box;\n"]))),Wt=(G(Wn={},ae.Default,u.css(Fn||(Fn=X(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),v.typeScales.body1.fontSize,v.typeScales.body1.lineHeight)),G(Wn,ae.Large,u.css(Hn||(Hn=X(["\n font-size: ","px;\n line-height: ","px;\n border-radius: 4px;\n "])),v.typeScales.body2.fontSize,v.typeScales.body2.lineHeight)),Wn),Gt=(G(Kn={},g.Theme.Light,u.css(Gn||(Gn=X(["\n color: ",";\n background-color: ",";\n\n // TODO: - refine these styles with Design\n &:focus-within {\n background-color: ",";\n }\n "])),h.palette.black,h.palette.gray.light2,h.palette.blue.light2)),G(Kn,g.Theme.Dark,u.css(Un||(Un=X(["\n color: ",";\n background-color: ",";\n\n &:focus-within {\n background-color: ",";\n }\n "])),h.palette.gray.light2,h.palette.gray.dark2,h.palette.blue.dark2)),Kn),Ut=(G(Zn={},g.Theme.Light,u.css(Xn||(Xn=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n "])),h.palette.gray.base,h.palette.gray.light3)),G(Zn,g.Theme.Dark,u.css(Vn||(Vn=X(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n box-shadow: inset 0 0 1px 1px ","; ;\n "])),h.palette.gray.dark2,h.palette.gray.dark4,h.palette.gray.dark2)),Zn),Kt=(G(_n={},ae.Default,u.css(Bn||(Bn=X(["\n padding-inline: 6px;\n padding-block: ","px;\n "])),ht[ae.Default])),G(_n,ae.Large,u.css(Yn||(Yn=X(["\n padding-inline: 10px;\n padding-block: ","px;\n "])),ht[ae.Large])),_n),Xt=u.css($n||($n=X(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n outline: none;\n border: none;\n background-color: transparent;\n cursor: pointer;\n transition: background-color ","ms ease-in-out;\n"])),v.transitionDuration.faster),Vt=(G(et={},ae.Default,u.css(Jn||(Jn=X(["\n height: ","px;\n "])),bt[ae.Default])),G(et,ae.Large,u.css(Qn||(Qn=X(["\n height: ","px;\n "])),bt[ae.Large])),et),Zt=(G(at={},g.Theme.Light,u.css(nt||(nt=X(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),h.palette.gray.dark2,h.palette.black,h.palette.gray.light1)),G(at,g.Theme.Dark,u.css(tt||(tt=X(["\n color: ",";\n\n &:hover {\n color: ",";\n background-color: ",";\n }\n "])),h.palette.gray.light1,h.palette.gray.light3,h.palette.gray.dark1)),at),Bt=(G(ot={},g.Theme.Light,u.css(rt||(rt=X(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),h.palette.gray.dark2)),G(ot,g.Theme.Dark,u.css(lt||(lt=X(["\n cursor: not-allowed;\n color: ",";\n &:hover {\n color: inherit;\n background-color: unset;\n }\n "])),h.palette.gray.dark2)),ot),Yt=D.default.forwardRef((function(e,t){var a=e.displayName,r=e.isFocused,l=e.onRemove,o=e.onFocus,i=n.useContext(je),s=i.darkMode,c=i.theme,d=i.size,f=i.disabled,p=i.chipTruncationLocation,h=void 0===p?"end":p,b=i.chipCharacterLimit,m=void 0===b?12:b,y=!!m&&!!h&&"none"!==h&&a.length>m,v=n.useRef(null),x=n.useMemo((function(){if(y){var e=m-3;switch(h){case"start":return"…"+a.substring(a.length-e).trim();case"middle":return a.substring(0,e/2).trim()+"…"+a.substring(a.length-e/2).trim();case"end":return a.substring(0,e).trim()+"…";default:return a}}return!1}),[m,h,a,y]);n.useEffect((function(){var e;r&&!f&&(null==v||null===(e=v.current)||void 0===e||e.focus())}),[f,t,r]);return D.default.createElement("span",{role:"option","aria-selected":r,"data-testid":"lg-combobox-chip",ref:t,className:u.cx(xt,Ht,Gt[c],Wt[d],G({},Ut[c],f)),onClick:function(e){var n;null!==(n=v.current)&&void 0!==n&&n.contains(e.target)||o()},onKeyDown:function(e){f||e.keyCode!==g.keyMap.Delete&&e.keyCode!==g.keyMap.Backspace&&e.keyCode!==g.keyMap.Enter&&e.keyCode!==g.keyMap.Space||l()},tabIndex:-1},D.default.createElement("span",{className:u.cx(Kt[d])},x?D.default.createElement(q.default,{darkMode:s,definition:a,align:"bottom"},x):a),D.default.createElement("button",{"aria-label":"Deselect ".concat(a),"aria-disabled":f,disabled:f,ref:v,className:u.cx(Xt,Zt[c],Vt[d],G({},Bt[c],f)),onClick:function(){f||l()}},D.default.createElement(j.default,{glyph:"X"})))}));Yt.displayName="Chip";var _t=(G(ut={},g.Theme.Light,u.css(it||(it=X(["\n padding-top: 8px;\n "])))),G(ut,g.Theme.Dark,u.css(st||(st=X(["\n padding-top: 8px;\n "])))),ut),$t=u.css(ct||(ct=X(["\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"]))),Jt=(G(pt={},g.Theme.Light,u.css(dt||(dt=X(["\n color: ",";\n "])),h.palette.gray.dark1)),G(pt,g.Theme.Dark,u.css(ft||(ft=X(["\n color: ",";\n "])),h.palette.gray.light1)),pt);function Qt(e){var t=e.label,a=e.className,r=e.children,l=n.useContext(je).theme,o=c.useIdAllocator({prefix:"combobox-group"});return D.default.Children.count(r)>0?D.default.createElement("div",{className:u.cx(_t[l],a)},D.default.createElement("div",{className:u.cx($t,Jt[l]),id:o},t),D.default.createElement("div",{role:"group","aria-labelledby":o},r)):D.default.createElement(D.default.Fragment,null)}function ea(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}ea.displayName="ComboboxGroup",ea.propTypes={className:z.default.string,children:z.default.node.isRequired,label:z.default.string.isRequired};var na,ta,aa,ra,la,oa,ia,sa,ua,ca,da,fa,pa,ga,ha,ba,ma,ya,va,xa,ka,wa,Ca=function(e){var n,t=e.value,a=e.displayName;return{value:null!=t?t:A.default(a),displayName:null!==(n=null!=a?a:t)&&void 0!==n?n:""}},Ea=function e(n){return D.default.Children.toArray(n).reduce((function(n,t){if(g.isComponentType(t,"ComboboxOption")){var a=Ca(t.props),r=a.value,l=a.displayName,o=t.props,i=o.glyph,s=o.disabled;return[].concat(Z(n),[{value:r,displayName:l,isDisabled:!!s,hasGlyph:!!i}])}if(g.isComponentType(t,"ComboboxGroup")){var u=t.props.children;if(u)return[].concat(Z(n),Z(e(u)))}}),[])},Da=function(e,n){if(e)return n.find((function(n){return n.value===e}))},Sa=function(e,n){var t,a;return e?null!==(t=null===(a=Da(e,n))||void 0===a?void 0:a.displayName)&&void 0!==t?t:e:""},La=function(e,n,t){if(n&&t){var a=F.default(n),r=new RegExp(a,"gi"),l=e.matchAll(r);if(l){for(var o=e.split(""),i=0,s=Array.from(l);i<s.length;i++){var u,c=s[i],d=null!==(u=c.index)&&void 0!==u?u:-1,f=c[0],p=f.length,g=d+f+p,h=new Array(p).fill("");h[0]=D.default.createElement(t,{key:g},f),o.splice.apply(o,[d,p].concat(Z(h)))}return D.default.createElement(D.default.Fragment,null,o)}return D.default.createElement(D.default.Fragment,null,e)}return D.default.createElement(D.default.Fragment,null,e)},Oa=u.css(na||(na=X(["\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"])),v.fontFamilies.default),Na=(G(ra={},g.Theme.Light,u.css(ta||(ta=X(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),h.palette.gray.light2)),G(ra,g.Theme.Dark,u.css(aa||(aa=X(["\n &:hover {\n outline: none;\n background-color: ",";\n }\n "])),h.palette.gray.dark4)),ra),Ta=(G(ia={},ae.Default,u.css(la||(la=X(["\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 "])),v.typeScales.body1.fontSize,v.typeScales.body1.lineHeight,Re[ae.Default],Ie[ae.Default].y,Ie[ae.Default].x,v.spacing[1],Re[ae.Default])),G(ia,ae.Large,u.css(oa||(oa=X(["\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 "])),v.typeScales.body2.fontSize,v.typeScales.body2.lineHeight,Re[ae.Large],Ie[ae.Large].y,Ie[ae.Large].x,v.spacing[2],Re[ae.Large])),ia),Ma=u.css(sa||(sa=X(["\n outline: none;\n\n &:before {\n transform: scaleY(1);\n }\n"]))),za=(G(da={},g.Theme.Light,u.css(ua||(ua=X(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Ma,h.palette.blue.light3,h.palette.blue.base)),G(da,g.Theme.Dark,u.css(ca||(ca=X(["\n ",";\n background-color: ",";\n\n &:before {\n background-color: ",";\n }\n "])),Ma,h.palette.blue.dark3,h.palette.blue.light1)),da),ja=u.css(fa||(fa=X(["\n cursor: not-allowed;\n\n &:hover {\n background-color: inherit;\n }\n\n &:before {\n content: unset;\n }\n"]))),Ia=(G(ha={},g.Theme.Light,u.css(pa||(pa=X(["\n ",";\n color: ",";\n "])),ja,h.palette.gray.light1)),G(ha,g.Theme.Dark,u.css(ga||(ga=X(["\n ",";\n color: ",";\n "])),ja,h.palette.gray.dark1)),ha),Ra=(G(ya={},ae.Default,u.css(ba||(ba=X(["\n min-width: ","px;\n "])),v.spacing[3])),G(ya,ae.Large,u.css(ma||(ma=X(["\n min-width: ","px;\n "])),v.spacing[4])),ya),qa=u.css(va||(va=X(["\n display: inline-flex;\n gap: 8px;\n justify-content: start;\n align-items: inherit;\n overflow-wrap: anywhere;\n"]))),Pa=u.css(xa||(xa=X(["\n pointer-events: none;\n"]))),Aa=function(e){return u.css(ka||(ka=X(["\n font-weight: ",";\n"])),e?"bold":"normal")},Fa=D.default.forwardRef((function(e,t){var a,r=e.displayName,l=e.glyph,o=e.isSelected,i=e.isFocused,s=e.disabled,f=e.setSelected,p=e.className,g=n.useContext(je),b=g.multiselect,m=g.darkMode,y=g.theme,v=g.withIcons,x=g.inputValue,k=g.size,w=c.useIdAllocator({prefix:"combobox-option-text"}),C=c.useForwardedRef(t,null),E=n.useCallback((function(e){e.stopPropagation(),s||e.target!==C.current&&"INPUT"!==e.target.tagName||f()}),[s,C,f]),S=n.useMemo((function(){if(l){if(d.isComponentGlyph(l))return l;console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",l)}}),[l]),L=n.useMemo((function(){if(b){var e=D.default.createElement(P.default,{"aria-labelledby":w,checked:o,tabIndex:-1,disabled:s,darkMode:m,className:u.css(wa||(wa=X(["\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 D.default.createElement(D.default.Fragment,null,D.default.createElement("span",{className:u.cx(qa,Pa)},v?S:e,D.default.createElement("span",{id:w,className:Aa(o)},La(r,x,"strong"))),v&&e)}return D.default.createElement(D.default.Fragment,null,D.default.createElement("span",{className:u.cx(qa,Pa)},S,D.default.createElement("span",{className:Aa(o)},La(r,x,"strong"))),o&&D.default.createElement(j.default,{glyph:"Checkmark",className:Ra[k],color:m?h.palette.blue.light1:h.palette.blue.base}))}),[b,S,o,r,x,k,m,w,s,v]);return D.default.createElement("li",{ref:C,role:"option","aria-selected":i,"aria-label":r,tabIndex:-1,className:u.cx(Oa,Ta[k],Na[y],(a={},G(a,za[y],i),G(a,Ia[y],s),a),p),onClick:E,onKeyDown:E},L)}));function Ha(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}Fa.displayName="ComboboxOption",Ha.displayName="ComboboxOption",Ha.propTypes={displayName:z.default.string,value:z.default.string,glyph:z.default.node,disabled:z.default.bool,className:z.default.string};var Wa=["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 Ga(e){var t,a=e.children,r=e.label,l=e.description,o=e.placeholder,i=void 0===o?"Select":o,s=e["aria-label"],d=e.disabled,f=void 0!==d&&d,m=e.size,y=void 0===m?ae.Default:m,v=e.darkMode,x=e.state,k=void 0===x?"none":x,w=e.errorMessage,C=e.searchState,E=void 0===C?"unset":C,z=e.searchEmptyMessage,R=void 0===z?"No results found":z,q=e.searchErrorMessage,P=void 0===q?"Could not get results!":q,A=e.searchLoadingMessage,F=void 0===A?"Loading results...":A,X=e.filteredOptions,Z=e.onFilter,B=e.clearable,Y=void 0===B||B,re=e.onClear,oe=e.overflow,ie=void 0===oe?"expand-y":oe,se=e.multiselect,ue=void 0!==se&&se,ce=e.initialValue,de=e.onChange,fe=e.value,pe=e.chipTruncationLocation,ge=e.chipCharacterLimit,he=void 0===ge?12:ge,be=e.className,me=e.usePortal,ye=void 0===me||me,ve=e.portalClassName,xe=e.portalContainer,ke=e.scrollContainer,we=e.popoverZIndex,Ce=K(e,Wa),Ee=p.useDarkMode(v),De=Ee.darkMode,Se=Ee.theme,Le=c.useDynamicRefs({prefix:"option"}),Oe=c.useDynamicRefs({prefix:"chip"}),Ne=c.useIdAllocator({prefix:"combobox-input"}),Te=c.useIdAllocator({prefix:"combobox-label"}),Me=c.useIdAllocator({prefix:"combobox-menu"}),ze=n.useRef(null),Ie=n.useRef(null),Re=n.useRef(null),qe=n.useRef(null),Pe=n.useRef(null),Ae=V(n.useState(!1),2),Fe=Ae[0],He=Ae[1],We=c.usePrevious(Fe),Ge=V(n.useState(null),2),Ue=Ge[0],Ke=Ge[1],Xe=V(n.useState(null),2),Ve=Xe[0],Ze=Xe[1],Be=c.usePrevious(Ve),Ye=V(n.useState(""),2),_e=Ye[0],$e=Ye[1],Je=c.usePrevious(_e),Qe=V(n.useState(null),2),en=Qe[0],nn=Qe[1],tn=!N.default(Ve)&&(L.default(Ve)&&Ve.length>0||T.default(Ve)),an=ue&&L.default(Ve)&&Ve.length>0?void 0:i,rn=function(){return He(!1)},ln=function(){return He(!0)},on=n.useMemo((function(){return Ea(a)}),[a]),sn=n.useCallback((function(e){return!ue||"string"!=typeof e&&"number"!=typeof e?!ue&&L.default(e)&&g.consoleOnce.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):g.consoleOnce.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(W(e),' value: "').concat(e,'"')),ue&&L.default(e)}),[ue]),un=n.useCallback((function(e){!f&&qe&&qe.current&&(qe.current.focus(),M.default(e)||qe.current.setSelectionRange(e,e))}),[f]),cn=n.useCallback((function(e){if(sn(Ve)){var n=S.default(Ve);N.default(e)?n.length=0:Ve.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),$e("")),Ze(n),null==de||de(n)}else{var t=e;Ze(t),null==de||de(t)}}),[sn,de,Ve]),dn=n.useCallback((function(e){return sn(Ve)?Ve.includes(e):e===Ve}),[sn,Ve]),fn=n.useCallback((function(e){var n,t,a,r,l=(t=on,(n=e)?null!==(a=null===(r=t.find((function(e){return e.displayName===n})))||void 0===r?void 0:r.value)&&void 0!==a?a:n:"");return dn(l)}),[on,dn]),pn=n.useCallback((function(e){var n="string"==typeof e?e:e.value;return X&&X.length>0?X.includes(n):!!fn(_e)||("string"==typeof e?Sa(n,on):e.displayName).toLowerCase().includes(_e.toLowerCase())}),[X,fn,_e,on]),gn=n.useMemo((function(){return on.filter(pn)}),[on,pn]),hn=n.useCallback((function(e){return!!e&&!!on.find((function(n){return n.value===e}))}),[on]),bn=n.useCallback((function(e){return gn?gn.findIndex((function(n){return n.value===e})):-1}),[gn]),mn=n.useCallback((function(e){if(gn&&gn.length>=e){var n=gn[e];return n?n.value:void 0}}),[gn]),yn=n.useCallback((function(){return sn(Ve)?Ve.findIndex((function(e){var n,t;return null===(n=Oe(e))||void 0===n||null===(t=n.current)||void 0===t?void 0:t.contains(document.activeElement)})):-1}),[Oe,sn,Ve]),vn=V(n.useState(),2),xn=vn[0],kn=vn[1],wn=n.useCallback((function(e){var n,t=null!==(n=null==gn?void 0:gn.length)&&void 0!==n?n:0,a=t-1>0?t-1:0,r=bn(Ue);switch(e&&Fe&&(nn(null),un()),e){case"next":var l=mn(r+1<t?r+1:0);Ke(null!=l?l:null);break;case"prev":var o=mn(r-1>=0?r-1:a);Ke(null!=o?o:null);break;case"last":var i=mn(a);Ke(null!=i?i:null);break;default:var s=mn(0);Ke(null!=s?s:null)}}),[Ue,bn,mn,Fe,un,null==gn?void 0:gn.length]),Cn=n.useCallback((function(e,n){if(sn(Ve))switch(e){case"next":var t=null!=n?n:yn(),a=t+1<Ve.length?t+1:Ve.length-1,r=Ve[a];nn(r);break;case"prev":var l=null!=n?n:yn(),o=l>0?l-1:l<0?Ve.length-1:0,i=Ve[o];nn(i);break;case"first":var s=Ve[0];nn(s);break;case"last":var u=Ve[Ve.length-1];nn(u);break;default:nn(null)}}),[yn,sn,Ve]),En=n.useCallback((function(e,n){switch(e&&Ke(null),e){case"right":switch(xn){case _:var t,a,r;if((null===(t=qe.current)||void 0===t?void 0:t.selectionEnd)===(null===(a=qe.current)||void 0===a?void 0:a.value.length))null===(r=Ie.current)||void 0===r||r.focus();break;case J:case ee:case Q:if(xn===Q||1===(null==Ve?void 0:Ve.length)){un(0),Cn(null),n.preventDefault();break}Cn("next")}break;case"left":switch(xn){case $:var l;n.preventDefault(),un(null==qe||null===(l=qe.current)||void 0===l?void 0:l.value.length);break;case _:case ee:case Q:if(sn(Ve)){var o;if(xn===_&&0!==(null===(o=qe.current)||void 0===o?void 0:o.selectionStart))break;Cn("prev")}}break;default:Cn(null)}}),[xn,sn,Ve,un,Cn]);n.useEffect((function(){_e!==Je&&wn("first")}),[_e,Fe,Je,wn]),n.useEffect((function(){if(Ue){var e=Le(Ue);if(e&&e.current&&Pe.current){var n=e.current.offsetTop,t=Pe.current,a=t.scrollTop;(n>t.offsetHeight||n<a)&&(Pe.current.scrollTop=n)}}}),[Ue,Le]);var Dn=n.useCallback((function(e){if(g.isComponentType(e,"ComboboxOption")){var n=Ca(e.props),t=n.value,a=n.displayName;if(pn(t)){var r=e.props,l=r.className,o=r.glyph,i=r.disabled,s=on.findIndex((function(e){return e.value===t})),u=Ue===t,c=sn(Ve)?Ve.includes(t):Ve===t,d=Le(t);return D.default.createElement(Fa,{value:t,displayName:a,isFocused:u,isSelected:c,disabled:i,setSelected:function(){Ke(t),cn(t),un(),t===Ve&&rn()},glyph:o,className:l,index:s,ref:d})}}else if(g.isComponentType(e,"ComboboxGroup")){var f=D.default.Children.map(e.props.children,Dn);if(f&&(null==f?void 0:f.length)>0)return D.default.createElement(Qt,{label:e.props.label,className:e.props.className},D.default.Children.map(f,Dn))}}),[on,Le,Ue,sn,Ve,un,pn,cn]),Sn=n.useMemo((function(){return D.default.Children.map(a,Dn)}),[a,Dn]),Ln=n.useMemo((function(){if(sn(Ve))return Ve.filter(hn).map((function(e,n){var t=Sa(e,on),a=en===e,r=Oe(e),l=n>=Ve.length-1;return D.default.createElement(Yt,{key:e,displayName:t,isFocused:a,onRemove:function(){l?(un(),Cn(null)):Cn("next",n),cn(e)},onFocus:function(){nn(e)},ref:r})}))}),[sn,Ve,hn,on,en,Oe,cn,un,Cn]),On=n.useMemo((function(){return D.default.createElement(D.default.Fragment,null,Y&&tn&&D.default.createElement(I.default,{"aria-label":"Clear selection","aria-disabled":f,disabled:f,ref:Ie,onClick:function(e){f||(cn(null),null==re||re(e),null==Z||Z(""),Fe||ln())},onFocus:Rn,className:u.cx(Rt),darkMode:De},D.default.createElement(j.default,{glyph:"XWithCircle"})),"error"===k?D.default.createElement(j.default,{glyph:"Warning",color:De?h.palette.red.light1:h.palette.red.base,className:qt(y)}):D.default.createElement(j.default,{glyph:"CaretDown",className:qt(y)}))}),[Y,tn,f,k,De,y,cn,re,Z,Fe]),Nn=n.useMemo((function(){return on.some((function(e){return e.hasGlyph}))}),[on]),Tn=n.useCallback((function(){if(!sn(Ve)&&Ve===Be){var e=gn.find((function(e){return e.displayName===_e||e.value===_e}));if(e&&!fe)Ze(e.value);else{var n,t=null!==(n=Sa(Ve,on))&&void 0!==n?n:"";$e(t)}}}),[on,_e,sn,Be,Ve,fe,gn]),Mn=n.useCallback((function(){if(tn){if(sn(Ve))Hn();else if(!sn(Ve)){var e,n=null!==(e=Sa(Ve,on))&&void 0!==e?e:"";$e(n),rn()}}else $e("")}),[tn,on,sn,Ve]);n.useEffect((function(){if(ce)if(L.default(ce)){var e,n=null!==(e=ce.filter((function(e){return hn(e)})))&&void 0!==e?e:[];Ze(n)}else hn(ce)&&Ze(ce);else Ze(function(e){return e?[]:null}(ue))}),[]),n.useEffect((function(){if(!M.default(fe)&&fe!==Je)if(N.default(fe))Ze(null);else if(sn(fe)){var e=fe.filter(hn);Ze(e)}else Ze(hn(fe)?fe:null)}),[sn,hn,Je,fe]),n.useEffect((function(){O.default(Ve,Be)||Mn()}),[Mn,Be,Ve]),n.useEffect((function(){!Fe&&We&&Tn()}),[Fe,We,Tn]);var zn=V(n.useState(0),2),jn=zn[0],In=zn[1];n.useEffect((function(){var e,n;In(null!==(e=null===(n=ze.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[ze,Fe,Ue,Ve]);var Rn=function(){Ke(null)};c.useEventListener("mousedown",(function(e){Fn(e)||(e.preventDefault(),e.stopPropagation())}),{enabled:Fe}),c.useEventListener("click",(function(e){Fn(e)||(e.stopPropagation(),rn())}),{options:{capture:!0},enabled:Fe});var qn,An=function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?H(Object(t),!0).forEach((function(n){G(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):H(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}({popoverZIndex:we},ye?{usePortal:ye,portalClassName:ve,portalContainer:xe,scrollContainer:ke}:{usePortal:ye});return D.default.createElement(je.Provider,{value:{multiselect:ue,darkMode:De,theme:Se,size:y,withIcons:Nn,disabled:f,isOpen:Fe,state:k,searchState:E,chipTruncationLocation:pe,chipCharacterLimit:he,inputValue:_e}},D.default.createElement("div",U({className:u.cx(kt(y),be)},Ce),(r||l)&&D.default.createElement("div",{className:Ft},r&&D.default.createElement(b.Label,{id:Te,htmlFor:Ne,darkMode:De},r),l&&D.default.createElement(b.Description,{darkMode:De},l)),D.default.createElement("div",{ref:ze,role:"combobox","aria-expanded":Fe,"aria-controls":Me,"aria-owns":Me,tabIndex:-1,onMouseDown:function(e){f&&e.preventDefault()},onClick:function(e){if(e.target!==qe.current){var n=0;if(qe.current)n=e.nativeEvent.offsetX>qe.current.offsetLeft+qe.current.clientWidth?_e.length:0;un(n)}ln()},onFocus:function(e){Hn(),kn(function(e){var n,t,a,r;if(!e)return;if(null!==(n=qe.current)&&void 0!==n&&n.contains(e))return _;if(null!==(t=Ie.current)&&void 0!==t&&t.contains(e))return $;var l=sn(Ve)?Ve.findIndex((function(n){var t,a;return null===(t=Oe(n))||void 0===t||null===(a=t.current)||void 0===a?void 0:a.contains(e)})):-1;if(sn(Ve)){if(0===l)return J;if(l===Ve.length-1)return Q;if(l>0)return ee}if(null!==(a=Pe.current)&&void 0!==a&&a.contains(e))return te;if(null!==(r=ze.current)&&void 0!==r&&r.contains(e))return ne}(e.target))},onKeyDown:function(e){var n,t,a=null===(n=Pe.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(t=ze.current)||void 0===t?void 0:t.contains(document.activeElement))||a){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.keyCode){case g.keyMap.Tab:switch(xn){case"Input":tn||(rn(),wn("first"),Cn(null));break;case"LastChip":Cn(null)}break;case g.keyMap.Escape:rn(),wn("first");break;case g.keyMap.Enter:Fe?xn!==_||N.default(Ue)||function(e){if("string"==typeof e){var n=Da(e,on);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(Ue)?xn===$&&(cn(null),un()):cn(Ue):ln();break;case g.keyMap.Backspace:var r;if(sn(Ve))"Input"===xn&&0===(null===(r=qe.current)||void 0===r?void 0:r.selectionStart)&&Cn("last");ln();break;case g.keyMap.ArrowDown:Fe?(e.preventDefault(),wn("next")):ln();break;case g.keyMap.ArrowUp:Fe?(e.preventDefault(),wn("prev")):ln();break;case g.keyMap.ArrowRight:En("right",e);break;case g.keyMap.ArrowLeft:En("left",e);break;default:Fe||ln()}}},onTransitionEnd:function(){var e,n;In(null!==(e=null===(n=ze.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:u.cx(wt,Ct[Se],Et(y),(t={},G(t,Ot,Y&&tn),G(t,Dt[Se],f),G(t,St[Se],k===le.error),G(t,Lt[Se],(qn=_,qn===xn)),t))},D.default.createElement("div",{ref:Re,className:Nt({size:y,overflow:ie})},Ln,D.default.createElement("input",{"aria-label":null!=s?s:r,"aria-autocomplete":"list","aria-controls":Me,"aria-labelledby":Te,ref:qe,id:Ne,className:u.cx(Tt,zt[y],Mt[Se],jt(Fe),G({},It(y,_e),sn(Ve))),placeholder:an,disabled:null!=f?f:void 0,onChange:function(e){var n=e.target.value;$e(n),null==Z||Z(n)},value:_e,autoComplete:"off"})),On),"error"===k&&w&&D.default.createElement("div",{className:u.cx(Pt[Se],At[y])},w),D.default.createElement(Pn,U({id:Me,labelId:Te,refEl:ze,ref:Pe,menuWidth:jn,searchLoadingMessage:F,searchErrorMessage:P,searchEmptyMessage:R},An),Sn)));function Fn(e){var n,t,a=e.target;return(null===(n=Pe.current)||void 0===n?void 0:n.contains(a))||(null===(t=ze.current)||void 0===t?void 0:t.contains(a))||!1}function Hn(){Re&&Re.current&&(Re.current.scrollLeft=Re.current.scrollWidth)}}Ga.propTypes={multiselect:z.default.bool,value:z.default.oneOf([z.default.string,z.default.arrayOf(z.default.string)]),initialValue:z.default.oneOf([z.default.string,z.default.arrayOf(z.default.string)]),overflow:z.default.oneOf(Object.values(re)),darkMode:z.default.bool,label:z.default.string,"aria-label":z.default.string,children:z.default.node,onChange:z.default.func,chipCharacterLimit:z.default.number,chipTruncationLocation:z.default.oneOf(Object.values({start:"start",middle:"middle",end:"end",none:"none"})),onClear:z.default.func,onFilter:z.default.func,clearable:z.default.bool,searchLoadingMessage:z.default.string,searchErrorMessage:z.default.string,searchEmptyMessage:z.default.string,searchState:z.default.oneOf(Object.values(oe)),errorMessage:z.default.string,state:z.default.oneOf(Object.values(le)),size:z.default.oneOf(Object.values(ae)),disabled:z.default.bool,description:z.default.string,placeholder:z.default.string,filteredOptions:z.default.arrayOf(z.default.string),popoverZIndex:z.default.number,usePortal:z.default.bool,scrollContainer:z.default.elementType,portalContainer:z.default.elementType,portalClassName:z.default.string},e.Combobox=Ga,e.ComboboxGroup=ea,e.ComboboxOption=Ha,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
2
|
//# sourceMappingURL=index.js.map
|