@leafygreen-ui/combobox 9.1.2 → 9.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/package.json +7 -7
- package/src/Combobox/Combobox.spec.tsx +6 -2
- package/src/Combobox.stories.tsx +33 -0
- package/stories.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @leafygreen-ui/combobox
|
|
2
2
|
|
|
3
|
+
## 9.1.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updates `useAvailableSpace` hook which fixes a dropdown height bug. [LG-4601](https://jira.mongodb.org/browse/LG-4601)
|
|
8
|
+
|
|
9
|
+
## 9.1.3
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- e7bc12814: Adds more thorough test coverage for disabled inputs
|
|
14
|
+
- Updated dependencies [e7bc12814]
|
|
15
|
+
- Updated dependencies [c1b8b633b]
|
|
16
|
+
- Updated dependencies [ecae9acc7]
|
|
17
|
+
- Updated dependencies [fe2483937]
|
|
18
|
+
- @leafygreen-ui/icon-button@15.0.23
|
|
19
|
+
- @leafygreen-ui/checkbox@13.1.2
|
|
20
|
+
- @leafygreen-ui/chip@1.2.1
|
|
21
|
+
- @leafygreen-ui/hooks@8.1.4
|
|
22
|
+
- @leafygreen-ui/input-option@2.0.2
|
|
23
|
+
|
|
3
24
|
## 9.1.2
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leafygreen-ui/combobox",
|
|
3
|
-
"version": "9.1.
|
|
3
|
+
"version": "9.1.4",
|
|
4
4
|
"description": "leafyGreen UI Kit Combobox",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@leafygreen-ui/checkbox": "^13.1.
|
|
26
|
-
"@leafygreen-ui/chip": "^1.2.
|
|
25
|
+
"@leafygreen-ui/checkbox": "^13.1.2",
|
|
26
|
+
"@leafygreen-ui/chip": "^1.2.1",
|
|
27
27
|
"@leafygreen-ui/emotion": "^4.0.8",
|
|
28
28
|
"@leafygreen-ui/form-field": "^1.2.4",
|
|
29
|
-
"@leafygreen-ui/hooks": "^8.
|
|
29
|
+
"@leafygreen-ui/hooks": "^8.2.0",
|
|
30
30
|
"@leafygreen-ui/icon": "^12.5.4",
|
|
31
|
-
"@leafygreen-ui/icon-button": "^15.0.
|
|
32
|
-
"@leafygreen-ui/input-option": "^2.0.
|
|
31
|
+
"@leafygreen-ui/icon-button": "^15.0.23",
|
|
32
|
+
"@leafygreen-ui/input-option": "^2.0.2",
|
|
33
33
|
"@leafygreen-ui/lib": "^13.6.1",
|
|
34
34
|
"@leafygreen-ui/palette": "^4.0.9",
|
|
35
35
|
"@leafygreen-ui/popover": "^11.4.0",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@leafygreen-ui/button": "^21.2.0",
|
|
47
|
-
"@leafygreen-ui/testing-lib": "^0.
|
|
47
|
+
"@leafygreen-ui/testing-lib": "^0.7.0",
|
|
48
48
|
"@lg-tools/storybook-utils": "^0.1.1"
|
|
49
49
|
},
|
|
50
50
|
"homepage": "https://github.com/mongodb/leafygreen-ui/tree/main/packages/combobox",
|
|
@@ -368,9 +368,13 @@ describe('packages/combobox', () => {
|
|
|
368
368
|
|
|
369
369
|
// disabled prop
|
|
370
370
|
test('Combobox is not clickable when `disabled`', () => {
|
|
371
|
-
const { comboboxEl } = renderCombobox(select, {
|
|
371
|
+
const { comboboxEl, getMenuElements } = renderCombobox(select, {
|
|
372
|
+
disabled: true,
|
|
373
|
+
});
|
|
374
|
+
|
|
372
375
|
userEvent.click(comboboxEl);
|
|
373
|
-
|
|
376
|
+
const { menuContainerEl } = getMenuElements();
|
|
377
|
+
expect(menuContainerEl).not.toBeInTheDocument();
|
|
374
378
|
});
|
|
375
379
|
|
|
376
380
|
// TODO: Fix this test. Combobox SHOULD be focusable
|
package/src/Combobox.stories.tsx
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
StoryType,
|
|
7
7
|
} from '@lg-tools/storybook-utils';
|
|
8
8
|
import { StoryFn } from '@storybook/react';
|
|
9
|
+
import { userEvent, within } from '@storybook/testing-library';
|
|
9
10
|
|
|
10
11
|
import Button from '@leafygreen-ui/button';
|
|
11
12
|
import { css } from '@leafygreen-ui/emotion';
|
|
@@ -278,3 +279,35 @@ DisabledInput.parameters = {
|
|
|
278
279
|
},
|
|
279
280
|
},
|
|
280
281
|
};
|
|
282
|
+
|
|
283
|
+
export const InitialLongComboboxOpen = {
|
|
284
|
+
render: () => {
|
|
285
|
+
return (
|
|
286
|
+
<Combobox
|
|
287
|
+
multiselect={false}
|
|
288
|
+
label="Choose a fruit"
|
|
289
|
+
description="Please pick one"
|
|
290
|
+
placeholder="Select fruit"
|
|
291
|
+
>
|
|
292
|
+
{getComboboxOptions()}
|
|
293
|
+
</Combobox>
|
|
294
|
+
);
|
|
295
|
+
},
|
|
296
|
+
play: async ctx => {
|
|
297
|
+
const { findByRole } = within(ctx.canvasElement.parentElement!);
|
|
298
|
+
const trigger = await findByRole('combobox');
|
|
299
|
+
userEvent.click(trigger);
|
|
300
|
+
},
|
|
301
|
+
decorators: [
|
|
302
|
+
(StoryFn, _ctx) => (
|
|
303
|
+
<div
|
|
304
|
+
className={css`
|
|
305
|
+
height: 100vh;
|
|
306
|
+
padding: 0;
|
|
307
|
+
`}
|
|
308
|
+
>
|
|
309
|
+
<StoryFn />
|
|
310
|
+
</div>
|
|
311
|
+
),
|
|
312
|
+
],
|
|
313
|
+
};
|
package/stories.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e,{createContext as n,useContext as t,useEffect as r,useMemo as a,useCallback as l,useRef as o,useState as i}from"react";import{storybookArgTypes as c,storybookExcludedControlParams as s}from"@lg-tools/storybook-utils";import u from"@leafygreen-ui/button";import{css as d,cx as p,keyframes as f}from"@leafygreen-ui/emotion";import m,{isComponentGlyph as h}from"@leafygreen-ui/icon";import g from"lodash/clone";import b from"lodash/debounce";import v from"lodash/isArray";import y from"lodash/isEqual";import x from"lodash/isNull";import k from"lodash/isString";import w from"lodash/isUndefined";import E from"prop-types";import{FormFieldState as C,DEFAULT_MESSAGES as N,FormFieldFeedback as S}from"@leafygreen-ui/form-field";import{useForwardedRef as L,useIdAllocator as O,useAvailableSpace as D,useDynamicRefs as M,usePrevious as j,useAutoScroll as I,useBackdropClick as z}from"@leafygreen-ui/hooks";import P from"@leafygreen-ui/icon-button";import F,{useDarkMode as A}from"@leafygreen-ui/leafygreen-provider";import{createUniqueClassName as T,keyMap as R,Theme as W,isComponentType as X,consoleOnce as G}from"@leafygreen-ui/lib";import{Error as V,Label as H,Description as Z}from"@leafygreen-ui/typography";import{chipTextClassName as q,TruncationLocation as B,Chip as K,BaseFontSize as Y,Variant as U}from"@leafygreen-ui/chip";import{typeScales as J,spacing as $,fontWeights as Q,fontFamilies as _,color as ee,transitionDuration as ne,focusRing as te}from"@leafygreen-ui/tokens";import{palette as re}from"@leafygreen-ui/palette";import ae from"@leafygreen-ui/popover";import{transparentize as le}from"polished";import{descriptionClassName as oe,titleClassName as ie,leftGlyphClassName as ce,InputOption as se,InputOptionContent as ue}from"@leafygreen-ui/input-option";import de from"lodash/kebabCase";import pe from"lodash/escapeRegExp";import fe from"@leafygreen-ui/checkbox";function me(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function he(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?me(Object(t),!0).forEach((function(n){ve(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):me(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function ge(e){var n=function(e,n){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e,"string");return"symbol"==typeof n?n:n+""}function be(e){return be="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},be(e)}function ve(e,n,t){return(n=ge(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},ye.apply(this,arguments)}function xe(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},l=Object.keys(e);for(r=0;r<l.length;r++)t=l[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)t=l[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}function ke(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function we(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){var r,a,l,o,i=[],c=!0,s=!1;try{if(l=(t=t.call(e)).next,0===n);else for(;!(c=(r=l.call(t)).done)&&(i.push(r.value),i.length!==n);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=t.return&&(o=t.return(),Object(o)!==o))return}finally{if(s)throw a}}return i}}(e,n)||Ce(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 Ee(e){return function(e){if(Array.isArray(e))return Ne(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Ce(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 Ce(e,n){if(e){if("string"==typeof e)return Ne(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)?Ne(e,n):void 0}}function Ne(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var Se="Input",Le="ClearButton",Oe="FirstChip",De="LastChip",Me="MiddleChip",je="Combobox",Ie="Menu",ze={XSmall:"xsmall",Small:"small",Default:"default",Large:"large"},Pe={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},Fe=C,Ae={Unset:"unset",Error:"error",Loading:"loading"};var Te,Re,We,Xe,Ge,Ve,He,Ze,qe,Be=n({multiselect:!1,size:ze.Default,withIcons:!1,disabled:!1,isOpen:!1,state:Fe.None,searchState:Ae.Unset,overflow:Pe.expandY}),Ke=T("combobox-chip"),Ye=ve(ve(ve(ve({},ze.XSmall,16),ze.Small,J.body1.lineHeight),ze.Default,J.body1.lineHeight),ze.Large,J.body2.lineHeight),Ue=ve(ve(ve(ve({},ze.XSmall,J.body1.fontSize),ze.Small,J.body1.fontSize),ze.Default,J.body1.fontSize),ze.Large,J.body2.fontSize),Je=ve(ve(ve(ve({},ze.XSmall,1),ze.Small,0),ze.Default,2),ze.Large,4),$e=ve(ve(ve(ve({},ze.XSmall,d(Te||(Te=ke(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Ue[ze.XSmall],Ye[ze.XSmall],q,Je[ze.XSmall])),ze.Small,d(Re||(Re=ke(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Ue[ze.Small],Ye[ze.Small],q,Je[ze.Small])),ze.Default,d(We||(We=ke(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Ue[ze.Default],Ye[ze.Default],q,Je[ze.Default])),ze.Large,d(Xe||(Xe=ke(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-inline-end: 10px;\n padding-block: ","px;\n }\n "])),Ue[ze.Large],Ye[ze.Large],q,Je[ze.Large])),Qe=e.forwardRef((function(n,a){var l,o=n.displayName,i=n.isFocused,c=n.onRemove,s=n.onFocus,u=t(Be),d=u.size,f=u.disabled,m=u.overflow,h=u.chipTruncationLocation,g=void 0===h?B.End:h,b=u.chipCharacterLimit,v=void 0===b?12:b,y=u.popoverZIndex,x=m===Pe.scrollX?B.None:g,k=L(a,null),w=null===(l=k.current)||void 0===l?void 0:l.querySelector("button");r((function(){i&&!f&&(null==w||w.focus())}),[f,w,i]);return e.createElement(K,{label:o,className:p(Ke,$e[d]),role:"option","aria-selected":i,"data-testid":"lg-combobox-chip",onClick:function(e){null!=w&&w.contains(e.target)||s()},onKeyDown:function(e){f||e.key!==R.Delete&&e.key!==R.Backspace&&e.key!==R.Enter&&e.key!==R.Space||c()},onDismiss:function(){f||c()},baseFontSize:Y.Body1,chipCharacterLimit:v,chipTruncationLocation:x,popoverZIndex:y,variant:U.Gray,ref:k,disabled:f,tabIndex:-1})}));Qe.displayName="ComboboxChip";var _e,en,nn,tn,rn,an,ln,on,cn,sn,un,dn,pn,fn,mn=ve(ve({},W.Light,d(Ge||(Ge=ke(["\n padding-top: ","px;\n "])),$[2])),W.Dark,d(Ve||(Ve=ke(["\n padding-top: ","px;\n "])),$[2])),hn=d(He||(He=ke(["\n cursor: default;\n width: 100%;\n padding: 0 12px 2px;\n outline: none;\n overflow-wrap: anywhere;\n font-size: 12px;\n line-height: 16px;\n font-weight: ",";\n text-transform: uppercase;\n letter-spacing: 0.4px;\n"])),Q.bold),gn=ve(ve({},W.Light,d(Ze||(Ze=ke(["\n color: ",";\n "])),re.gray.dark1)),W.Dark,d(qe||(qe=ke(["\n color: ",";\n "])),re.gray.light1));function bn(n){var t=n.label,r=n.className,a=n.children,l=A().theme,o=O({prefix:"combobox-group"});return e.Children.count(a)>0?e.createElement("div",{className:p(mn[l],r)},e.createElement("div",{className:p(hn,gn[l]),id:o},t),e.createElement("div",{role:"group","aria-labelledby":o},a)):e.createElement(e.Fragment,null)}function vn(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}vn.displayName="ComboboxGroup",vn.propTypes={className:E.string,children:E.node.isRequired,label:E.string.isRequired};var yn=ve(ve(ve(ve({},ze.XSmall,{x:12,y:8}),ze.Small,{x:12,y:8}),ze.Default,{x:12,y:8}),ze.Large,{x:12,y:8}),xn=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return d(_e||(_e=ke(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},kn=ve(ve({},W.Light,d(en||(en=ke(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),le(.85,re.black),re.gray.light2)),W.Dark,d(nn||(nn=ke(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),le(.85,re.black),re.gray.dark2)),wn=d(tn||(tn=ke(["\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"])),$[2],_.default);ve(ve({},W.Light,d(rn||(rn=ke(["\n color: ",";\n background-color: ",";\n "])),re.black,re.white)),W.Dark,d(an||(an=ke(["\n color: ",";\n background-color: ",";\n "])),re.gray.light1,re.gray.dark3));var En,Cn=function(e){return d(ln||(ln=ke(["\n background-color: ",";\n"])),ee[e].background.primary.default)},Nn=d(on||(on=ke(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),Sn=d(cn||(cn=ke(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),Ln=ve(ve({},W.Light,d(sn||(sn=ke(["\n color: ",";\n "])),re.gray.dark3)),W.Dark,d(un||(un=ke(["\n color: ",";\n "])),re.gray.light3)),On=function(e){return d(dn||(dn=ke(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px ","px;\n"])),Ue[e],Ye[e],yn[e].y,yn[e].x)},Dn=f(pn||(pn=ke(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),Mn=d(fn||(fn=ke(["\n animation: "," 1.5s linear infinite;\n"])),Dn),jn=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],In=e.forwardRef((function(n,r){var l=n.children,o=n.id,i=n.refEl,c=n.labelId,s=n.menuWidth,u=n.searchLoadingMessage,f=n.searchErrorMessage,h=n.searchEmptyMessage,g=xe(n,jn),b=A(),v=b.darkMode,y=b.theme,x=t(Be),k=x.disabled,E=x.size,C=x.isOpen,N=x.searchState,S=L(r,null),O=D(i),M=w(O)?"unset":"".concat(Math.min(O,256),"px"),j=a((function(){var n=p(Sn,Ln[y],On(E)),t=p(Sn,On(E));switch(N){case"loading":return e.createElement("span",{className:n},e.createElement(m,{glyph:"Refresh",color:v?re.blue.light1:re.blue.base,className:Mn}),u);case"error":return e.createElement(V,{className:t},e.createElement(m,{glyph:"Warning",color:v?re.red.light1:re.red.base}),e.createElement("span",null,f));default:return l&&"object"===be(l)&&"length"in l&&l.length>0?e.createElement("ul",{className:Nn},l):e.createElement("span",{className:n},h)}}),[y,E,N,v,u,f,l,h]);return e.createElement(ae,ye({active:C&&!k,spacing:4,align:"bottom",justify:"middle",refEl:i,adjustOnMutation:!0,className:p(xn(s),kn[y])},g),e.createElement("div",{ref:S,id:o,role:"listbox","aria-labelledby":c,"aria-expanded":C,className:p(wn,Cn(y),d(En||(En=ke(["\n max-height: ",";\n "])),M)),onMouseDownCapture:function(e){return e.preventDefault()}},j))}));In.displayName="ComboboxMenu";var zn,Pn,Fn,An,Tn,Rn,Wn,Xn,Gn,Vn,Hn,Zn,qn,Bn,Kn,Yn,Un,Jn,$n,Qn,_n=function(e){var n=e.scrollHeight;return e.scrollTop<n-e.clientHeight},et=function(e){var n,t=e.value,r=e.displayName;return{value:null!=t?t:de(r),displayName:null!==(n=null!=r?r:t)&&void 0!==n?n:""}},nt=function n(t){return e.Children.toArray(t).reduce((function(e,t){if(X(t,"ComboboxOption")){var r=et(t.props),a=r.value,l=r.displayName,o=t.props,i=o.glyph,c=o.disabled;return[].concat(Ee(e),[{value:a,displayName:l,isDisabled:!!c,hasGlyph:!!i}])}if(X(t,"ComboboxGroup")){var s=t.props.children;if(s)return[].concat(Ee(e),Ee(n(s)))}}),[])},tt=function(e,n){if(e)return n.find((function(n){return n.value===e}))},rt=function(e,n){var t,r;return e?null!==(t=null===(r=tt(e,n))||void 0===r?void 0:r.displayName)&&void 0!==t?t:e:""},at=d(zn||(zn=ke(["\n .",", ."," {\n font-size: ","px;\n line-height: 20px;\n }\n"])),oe,ie,J.body2.fontSize),lt=ve(ve(ve(ve({},ze.XSmall,d(Pn||(Pn=ke(["\n min-width: ","px;\n "])),$[3])),ze.Small,d(Fn||(Fn=ke(["\n min-width: ","px;\n "])),$[3])),ze.Default,d(An||(An=ke(["\n min-width: ","px;\n "])),$[3])),ze.Large,d(Tn||(Tn=ke(["\n min-width: ","px;\n "])),$[4])),ot=d(Rn||(Rn=ke(["\n pointer-events: none;\n gap: 0;\n\n label {\n gap: 0;\n align-items: center;\n }\n"])));d(Wn||(Wn=ke(["\n pointer-events: none;\n"])));var it=function(e){return d(Xn||(Xn=ke(["\n font-weight: ",";\n"])),e?Q.bold:Q.regular)},ct=ve(ve({},W.Light,d(Gn||(Gn=ke(["\n color: ",";\n "])),re.gray.dark1)),W.Dark,d(Vn||(Vn=ke(["\n color: ",";\n "])),re.gray.base)),st=ve(ve({},W.Light,d(Hn||(Hn=ke(["\n color: ",";\n "])),re.blue.dark1)),W.Dark,d(Zn||(Zn=ke(["\n color: ",";\n "])),re.blue.light3)),ut=ve(ve({},W.Light,d(qn||(qn=ke(["\n color: ",";\n "])),re.gray.light1)),W.Dark,d(Bn||(Bn=ke(["\n color: ",";\n "])),re.gray.dark1)),dt=ve(ve({},W.Light,d(Kn||(Kn=ke(["\n color: ",";\n "])),re.blue.base)),W.Dark,d(Yn||(Yn=ke(["\n color: ",";\n "])),re.blue.light1)),pt=ve(ve({},W.Light,d(Un||(Un=ke(["\n color: ",";\n "])),re.gray.light1)),W.Dark,d(Jn||(Jn=ke(["\n color: ",";\n "])),re.gray.dark1)),ft=d($n||($n=ke(["\n ."," {\n align-self: baseline;\n position: relative;\n // aligns the checkbox with the option name\n top: 1px;\n }\n"])),ce),mt=d(Qn||(Qn=ke(["\n ."," {\n // aligns the checkbox with the option name\n top: 3px;\n }\n"])),ce),ht=["glyph","isSelected","displayName","isFocused","setSelected","className","description","value","onClick","disabled"],gt=e.forwardRef((function(n,r){var o=n.glyph,i=n.isSelected,c=n.displayName,s=n.isFocused,u=n.setSelected,d=n.className,f=n.description,g=n.value,b=n.onClick,v=n.disabled,y=void 0!==v&&v,x=xe(n,ht),k=A(),w=k.darkMode,E=k.theme,C=t(Be),N=C.multiselect,S=C.size,D=C.withIcons,M=C.inputValue,j=L(r,null),I=O({prefix:"combobox-option-text"}),z=l((function(e){e.stopPropagation(),y||(u(),null==b||b(e,g))}),[y,b,u,g]),P=a((function(){return function(n){var t=n.withIcons,r=n.isSelected,a=n.glyph,l=n.optionTextId,o=n.disabled,i=n.darkMode,c=n.size,s=n.multiselect,u=n.theme,d=n.isFocused;a&&!h(a)&&console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",a);var f=a&&h(a)?e.cloneElement(a,he(he({},a.props),{},{className:p(ct[u],ve(ve({},st[u],d),ut[u],o),a.props.className)})):e.createElement(e.Fragment,null),g=e.createElement(fe,{"aria-labelledby":l,checked:r,tabIndex:-1,disabled:o,darkMode:i,className:ot}),b=e.createElement(m,{glyph:"Checkmark",className:p(lt[c],dt[u],ve({},pt[u],o))});return{leftGlyph:s?t?f:g:t?f:r?b:null,rightGlyph:s?t&&g:t&&r&&b}}({withIcons:D,isSelected:i,glyph:o,theme:E,darkMode:w,size:S,disabled:y,multiselect:N,optionTextId:I,isFocused:s})}),[w,y,o,i,N,I,S,E,D,s]),F=P.leftGlyph,T=P.rightGlyph,R=N&&!D;return e.createElement(se,ye({},x,{as:"li",ref:j,highlighted:s,disabled:y,"aria-label":c,darkMode:w,className:p(ve(ve(ve({},at,S===ze.Large),ft,R),mt,R&&S===ze.Large),d),onClick:z,onKeyDown:z}),e.createElement(ue,{leftGlyph:F,rightGlyph:T,description:f},e.createElement("span",{id:I,className:it(i)},function(n,t,r){if(t&&r){var a=pe(t),l=new RegExp(a,"gi"),o=n.matchAll(l);if(o){for(var i=n.split(""),c=0,s=Array.from(o);c<s.length;c++){var u,d=s[c],p=null!==(u=d.index)&&void 0!==u?u:-1,f=d[0],m=f.length,h=p+f+m,g=new Array(m).fill("");g[0]=e.createElement(r,{key:h},f),i.splice.apply(i,[p,m].concat(Ee(g)))}return e.createElement(e.Fragment,null,i)}return e.createElement(e.Fragment,null,n)}return e.createElement(e.Fragment,null,n)}(c,M,"strong"))))}));function bt(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}gt.displayName="ComboboxOption",bt.displayName="ComboboxOption",bt.propTypes={displayName:E.string,value:E.string,glyph:E.node,disabled:E.bool,className:E.string,description:E.string,onClick:E.func};var vt,yt,xt,kt,wt,Et,Ct,Nt,St,Lt,Ot,Dt,Mt,jt,It,zt,Pt,Ft,At,Tt,Rt,Wt,Xt,Gt,Vt,Ht,Zt,qt,Bt,Kt,Yt,Ut,Jt,$t=function(e){return!w(e)&&!x(e)&&(k(e)||v(e)&&e.length>0)},Qt=function(e){return Ye[e]+2*Je[e]},_t=$[100],er=ve(ve(ve(ve({},ze.XSmall,22),ze.Small,28),ze.Default,36),ze.Large,48),nr=function(e){return(er[e]-Qt(e)-2)/2},tr=ve(ve(ve(ve({},ze.XSmall,{y:nr(ze.XSmall),xLeftWithChip:$[25],xLeftWithoutChip:$[200],xRight:$[100]}),ze.Small,{y:nr(ze.Small),xLeftWithChip:$[100],xLeftWithoutChip:$[200],xRight:$[100]}),ze.Default,{y:nr(ze.Default),xLeftWithChip:$[150],xLeftWithoutChip:$[300],xRight:$[200]}),ze.Large,{y:nr(ze.Large),xLeftWithChip:$[300],xLeftWithoutChip:$[300],xRight:$[200]}),rr=$[400],ar=function(e){return d(vt||(vt=ke(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),_.default,Ue[e]+2*tr[e].xLeftWithChip+rr+2)},lr=d(yt||(yt=ke(["\n display: flex;\n align-items: center;\n gap: ","px;\n cursor: text;\n transition: ","ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: 100%;\n max-width: 100%;\n border-radius: 6px;\n position: relative;\n overflow: hidden;\n\n // Overflow shadow\n ::after {\n content: '';\n position: absolute;\n width: 100%;\n height: 20px;\n bottom: -21px;\n left: 50%;\n translate: -50% 0%;\n border-radius: 20%;\n box-shadow: 0 0 0 0 rgb(255 255 255 / 0%);\n transition: ","ms linear;\n transition-property: box-shadow;\n }\n"])),$[200],ne.default,ne.default),or=ve(ve({},W.Light,d(xt||(xt=ke(["\n color: ",";\n background-color: ",";\n "])),ee.light.text.primary.default,ee.light.background.primary.default)),W.Dark,d(kt||(kt=ke(["\n color: ",";\n background-color: ",";\n "])),ee.dark.text.primary.default,re.gray.dark4)),ir=function(e,n){return d(wt||(wt=ke(["\n padding-top: ","px;\n padding-bottom: ","px;\n padding-left: ",";\n padding-right: ","px;\n"])),tr[e].y,tr[e].y,"".concat(n?tr[e].xLeftWithChip:tr[e].xLeftWithoutChip,"px"),tr[e].xRight)},cr=function(e){return d(Et||(Et=ke(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n"])),ee[e].text.disabled.default,ee[e].background.disabled.default,ee[e].border.disabled.default)},sr=function(e){return ve(ve(ve({},Fe.Error,d(Ct||(Ct=ke(["\n border-color: ",";\n "])),ee[e].border.error.default)),Fe.None,d(Nt||(Nt=ke(["\n border-color: ",";\n "])),ee[e].border.primary.default)),Fe.Valid,d(St||(St=ke(["\n border-color: ",";\n "])),ee[e].border.success.default))},ur=ve(ve({},W.Light,d(Lt||(Lt=ke(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),te[W.Light].input)),W.Dark,d(Ot||(Ot=ke(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),te[W.Dark].input)),dr=d(Dt||(Dt=ke(["\n display: flex;\n align-items: center;\n"]))),pr=ve(ve(ve(ve({},ze.XSmall,d(Mt||(Mt=ke(["\n gap: ","px;\n "])),$[100])),ze.Small,d(jt||(jt=ke(["\n gap: ","px;\n "])),$[200])),ze.Default,d(It||(It=ke(["\n gap: ","px;\n "])),$[200])),ze.Large,d(zt||(zt=ke(["\n gap: ","px;\n "])),$[200])),fr=function(e){var n=e.overflow,t=e.size,r=d(Pt||(Pt=ke(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case Pe.scrollX:return d(Ft||(Ft=ke(["\n ","\n display: block;\n height: ","px;\n white-space: nowrap;\n overflow-x: scroll;\n scroll-behavior: smooth;\n scrollbar-width: none;\n line-height: 1;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n & > ."," {\n margin-inline: 2px;\n\n &:first-child {\n margin-inline-start: 0;\n }\n\n &:last-child {\n margin-inline-end: 0;\n }\n }\n "])),r,Qt(t),Ke);case Pe.expandY:return d(At||(At=ke(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: ","px;\n overflow-x: hidden;\n min-height: ","px;\n max-height: calc((","px) + (","px * 2));\n "])),r,_t,Qt(t),3*Qt(t),_t)}},mr=d(Tt||(Tt=ke(["\n font-family: ",";\n width: 100%;\n border: none;\n cursor: inherit;\n background-color: inherit;\n color: inherit;\n box-sizing: content-box;\n padding: 0;\n margin: 0;\n text-overflow: ellipsis;\n vertical-align: top;\n\n // Only add padding if there are chips\n &:not(:first-child) {\n padding-left: ","px;\n }\n\n &:placeholder-shown {\n min-width: 100%;\n }\n &:focus {\n outline: none;\n }\n"])),_.default,$[100]),hr=ve(ve({},W.Light,d(Rt||(Rt=ke(["\n &::placeholder {\n color: ",";\n }\n "])),re.gray.base)),W.Dark,d(Wt||(Wt=ke(["\n &::placeholder {\n color: ",";\n }\n "])),re.gray.dark1)),gr=ve(ve({},W.Light,d(Xt||(Xt=ke(["\n &::placeholder {\n color: ",";\n }\n "])),re.gray.base)),W.Dark,d(Gt||(Gt=ke(["\n &::placeholder {\n color: ",";\n }\n "])),re.gray.dark1)),br=function(e){return d(Vt||(Vt=ke(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n"])),Qt(e),Ue[e],Ye[e],Ue[e])},vr=function(e){return d(Ht||(Ht=ke(["\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")},yr=function(e,n){var t,r=null!==(t=null==n?void 0:n.length)&&void 0!==t?t:0;return d(Zt||(Zt=ke(["\n width: ","px;\n max-width: 100%;\n "])),r*Ue[e])},xr=d(qt||(qt=ke(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n margin-inline: -6px;\n"])),rr/2),kr=d(Bt||(Bt=ke(["\n height: ","px;\n width: ","px;\n"])),rr,rr),wr=d(Kt||(Kt=ke(["\n margin-bottom: ","px;\n display: flex;\n flex-direction: column;\n"])),$[100]),Er=d(Yt||(Yt=ke(["\n font-size: ","px;\n line-height: ","px;\n"])),J.large.fontSize,J.large.lineHeight),Cr=ve(ve({},W.Light,d(Ut||(Ut=ke(["\n ::after {\n box-shadow: 0px 0px 7px 5px ",";\n }\n "])),le(.85,re.black))),W.Dark,d(Jt||(Jt=ke(["\n ::after {\n width: 95%;\n box-shadow: 0px -7px 12px 5px rgb(0 0 0 / 50%);\n }\n "])))),Nr=function(e){return ee[e].icon.primary.default},Sr=function(e){return ee[e].icon.disabled.default},Lr=["children","label","description","placeholder","aria-label","disabled","size","darkMode","state","errorMessage","successMessage","searchState","searchEmptyMessage","searchErrorMessage","searchLoadingMessage","filteredOptions","onFilter","clearable","onClear","overflow","multiselect","initialValue","inputValue","onInputChange","onChange","value","chipTruncationLocation","chipCharacterLimit","className","usePortal","portalClassName","portalContainer","portalRef","scrollContainer","popoverZIndex"],Or=["className","glyph","disabled"];function Dr(n){var t=n.children,c=n.label,s=n.description,u=n.placeholder,d=void 0===u?"Select":u,f=n["aria-label"],h=n.disabled,E=void 0!==h&&h,C=n.size,L=void 0===C?ze.Default:C,D=n.darkMode,T=n.state,W=void 0===T?"none":T,V=n.errorMessage,q=void 0===V?N.error:V,B=n.successMessage,K=void 0===B?N.success:B,Y=n.searchState,U=void 0===Y?"unset":Y,J=n.searchEmptyMessage,$=void 0===J?"No results found":J,Q=n.searchErrorMessage,_=void 0===Q?"Could not get results!":Q,ee=n.searchLoadingMessage,ne=void 0===ee?"Loading results...":ee,te=n.filteredOptions,re=n.onFilter,ae=n.clearable,le=void 0===ae||ae,oe=n.onClear,ie=n.overflow,ce=void 0===ie?Pe.expandY:ie,se=n.multiselect,ue=void 0!==se&&se,de=n.initialValue,pe=n.inputValue,fe=n.onInputChange,me=n.onChange,ge=n.value,ke=n.chipTruncationLocation,Ee=n.chipCharacterLimit,Ce=void 0===Ee?12:Ee,Ne=n.className,Fe=n.usePortal,Ae=void 0===Fe||Fe,Te=n.portalClassName,Re=n.portalContainer,We=n.portalRef,Xe=n.scrollContainer,Ge=n.popoverZIndex,Ve=xe(n,Lr),He=A(D),Ze=He.darkMode,qe=He.theme,Ke=M({prefix:"option"}),Ye=M({prefix:"chip"}),Ue=O({prefix:"combobox-input"}),Je=O({prefix:"combobox-label"}),$e=O({prefix:"combobox-menu"}),_e=o(null),en=o(null),nn=o(null),tn=o(null),rn=o(null),an=we(i(!1),2),ln=an[0],on=an[1],cn=j(ln),sn=we(i(null),2),un=sn[0],dn=sn[1],pn=we(i(null),2),fn=pn[0],mn=pn[1],hn=j(fn),gn=we(i(null!=pe?pe:""),2),vn=gn[0],yn=gn[1];r((function(){w(pe)||yn(pe)}),[pe]);var xn=function(e){yn(e)},kn=j(vn),wn=we(i(null),2),En=wn[0],Cn=wn[1],Nn=we(i(!1),2),Sn=Nn[0],Ln=Nn[1],On=ue&&v(fn)&&fn.length>0?void 0:d,Dn=function(){return on(!1)},Mn=function(){return on(!0)},jn=a((function(){return nt(t)}),[t]),zn=l((function(e){return!ue||"string"!=typeof e&&"number"!=typeof e?!ue&&v(e)&&G.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):G.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(be(e),' value: "').concat(e,'"')),ue&&v(e)}),[ue]),Pn=l((function(e){!E&&tn&&tn.current&&(tn.current.focus(),w(e)||tn.current.setSelectionRange(e,e))}),[E]),Fn=l((function(e){if(zn(fn)){var n=g(fn),t=me,r={diffType:"delete",value:null!=e?e:fn};x(e)?n.length=0:fn.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),r.diffType="insert",xn("")),mn(n),null==t||t(n,r)}else{var a=e,l=me;mn(a),null==l||l(a)}}),[zn,me,fn]),An=l((function(e){var n,t,r,a;return function(e,n){return Array.isArray(n)?n.includes(e):e===n}((t=jn,(n=e)?null!==(r=null===(a=t.find((function(e){return e.displayName===n})))||void 0===a?void 0:a.value)&&void 0!==r?r:n:""),fn)}),[jn,fn]),Tn=l((function(e){var n="string"==typeof e?e:e.value;return te&&te.length>0?te.includes(n):!!An(vn)||("string"==typeof e?rt(n,jn):e.displayName).toLowerCase().includes(vn.toLowerCase())}),[te,An,vn,jn]),Rn=a((function(){return jn.filter(Tn)}),[jn,Tn]),Wn=l((function(e){return!!e&&!!jn.find((function(n){return n.value===e}))}),[jn]),Xn=l((function(e){return Rn?Rn.findIndex((function(n){return n.value===e})):-1}),[Rn]),Gn=l((function(e){if(Rn&&Rn.length>=e){var n=Rn[e];return n?n.value:void 0}}),[Rn]),Vn=l((function(){return zn(fn)?fn.findIndex((function(e){var n;return null===(n=Ye(e))||void 0===n||null===(n=n.current)||void 0===n?void 0:n.contains(document.activeElement)})):-1}),[Ye,zn,fn]),Hn=we(i(),2),Zn=Hn[0],qn=Hn[1],Bn=l((function(e){var n,t=null!==(n=null==Rn?void 0:Rn.length)&&void 0!==n?n:0,r=t-1>0?t-1:0,a=Xn(un);switch(e&&ln&&(Cn(null),Pn()),e){case"next":var l=Gn(a+1<t?a+1:0);dn(null!=l?l:null);break;case"prev":var o=Gn(a-1>=0?a-1:r);dn(null!=o?o:null);break;case"last":var i=Gn(r);dn(null!=i?i:null);break;default:var c=Gn(0);dn(null!=c?c:null)}}),[un,Xn,Gn,ln,Pn,null==Rn?void 0:Rn.length]),Kn=l((function(e,n){if(zn(fn))switch(e){case"next":var t=null!=n?n:Vn(),r=t+1<fn.length?t+1:fn.length-1,a=fn[r];Cn(a);break;case"prev":var l=null!=n?n:Vn(),o=l>0?l-1:l<0?fn.length-1:0,i=fn[o];Cn(i);break;case"first":var c=fn[0];Cn(c);break;case"last":var s=fn[fn.length-1];Cn(s);break;default:Cn(null)}}),[Vn,zn,fn]),Yn=l((function(e,n){switch(e&&dn(null),e){case"right":switch(Zn){case Se:var t,r,a;if((null===(t=tn.current)||void 0===t?void 0:t.selectionEnd)===(null===(r=tn.current)||void 0===r?void 0:r.value.length))null===(a=en.current)||void 0===a||a.focus();break;case Oe:case Me:case De:if(Zn===De||1===(null==fn?void 0:fn.length)){Pn(0),Kn(null),n.preventDefault();break}Kn("next")}break;case"left":switch(Zn){case Le:var l;n.preventDefault(),Pn(null==tn||null===(l=tn.current)||void 0===l?void 0:l.value.length);break;case Se:case Me:case De:if(zn(fn)){var o;if(Zn===Se&&0!==(null===(o=tn.current)||void 0===o?void 0:o.selectionStart))break;Kn("prev")}}break;default:Kn(null)}}),[Zn,zn,fn,Pn,Kn]);r((function(){vn!==kn&&Bn("first")}),[vn,ln,kn,Bn]),I(un?Ke(un):void 0,rn);var Un=l((function(n){if(X(n,"ComboboxOption")){var t=et(n.props),r=t.value,a=t.displayName;if(Tn(r)){var l=n.props,o=l.className,i=l.glyph,c=l.disabled,s=xe(l,Or),u=jn.findIndex((function(e){return e.value===r})),d=un===r,p=zn(fn)?fn.includes(r):fn===r,f=Ke(r);return e.createElement(gt,ye({},s,{value:r,displayName:a,isFocused:d,isSelected:p,disabled:c,setSelected:function(){dn(r),Fn(r),Pn(),r===fn&&Dn()},glyph:i,className:o,index:u,ref:f}))}}else if(X(n,"ComboboxGroup")){var m=e.Children.map(n.props.children,Un);if(m&&(null==m?void 0:m.length)>0)return e.createElement(bn,{label:n.props.label,className:n.props.className},e.Children.map(m,Un))}}),[jn,Ke,un,zn,fn,Pn,Tn,Fn]),Jn=a((function(){return e.Children.map(t,Un)}),[t,Un]),$n=a((function(){if(zn(fn))return fn.filter(Wn).map((function(n,t){var r=rt(n,jn),a=En===n,l=Ye(n),o=t>=fn.length-1;return e.createElement(Qe,{key:n,displayName:r,isFocused:a,onRemove:function(){o?(Pn(),Kn(null)):Kn("next",t),Fn(n)},onFocus:function(){Cn(n)},ref:l})}))}),[zn,fn,Wn,jn,En,Ye,Fn,Pn,Kn]),Qn=a((function(){return jn.some((function(e){return e.hasGlyph}))}),[jn]),at=l((function(){var e=Rn.find((function(e){return e.displayName===vn||e.value===vn}));if(!ge&&e)Fn(e.value);else if(!zn(fn)){var n,t=null!==(n=rt(fn,jn))&&void 0!==n?n:hn;xn(t)}}),[jn,vn,zn,hn,fn,Fn,ge,Rn]),lt=l((function(){if($t(fn)){if(zn(fn))ht(ce);else if(!zn(fn)){var e,n=null!==(e=rt(fn,jn))&&void 0!==e?e:"";xn(n),Dn()}}else xn("")}),[jn,zn,fn,ce]);r((function(){if(de)if(v(de)){var e,n=null!==(e=de.filter((function(e){return Wn(e)})))&&void 0!==e?e:[];mn(n)}else Wn(de)&&mn(de);else mn(function(e){return e?[]:null}(ue))}),[]),r((function(){if(!w(ge)&&ge!==kn)if(x(ge))mn(null);else if(zn(ge)){var e=ge.filter(Wn);mn(e)}else mn(Wn(ge)?ge:null)}),[zn,Wn,kn,ge]),r((function(){!w(hn)&&(v(fn)&&!x(hn)||k(fn)||x(fn))&&!y(fn,hn)&<()}),[lt,hn,fn]),r((function(){!ln&&cn&&at()}),[ln,cn,at]);var ot=we(i(0),2),it=ot[0],ct=ot[1];r((function(){var e,n;ct(null!==(e=null===(n=_e.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[_e,ln,un,fn]);z(Dn,[rn,_e],ln);var st=zn(fn)&&!!fn.length,ut=b((function(e){Ln(_n(e.target))}),50,{leading:!0}),dt=l((function(e){ce===Pe.expandY&&ut(e)}),[ut,ce]);r((function(){nn.current&&Ln(_n(nn.current))}),[]);var pt,ft=he({popoverZIndex:Ge},Ae?{usePortal:Ae,portalClassName:Te,portalContainer:Re,portalRef:We,scrollContainer:Xe}:{usePortal:Ae}),mt={disabled:E,errorMessage:q,size:L,state:W,successMessage:K};return e.createElement(F,{darkMode:Ze},e.createElement(Be.Provider,{value:{multiselect:ue,size:L,withIcons:Qn,disabled:E,isOpen:ln,state:W,searchState:U,chipTruncationLocation:ke,chipCharacterLimit:Ce,inputValue:vn,overflow:ce,popoverZIndex:Ge}},e.createElement("div",ye({className:p(ar(L),Ne)},Ve),(c||s)&&e.createElement("div",{className:wr},c&&e.createElement(H,{id:Je,htmlFor:Ue,darkMode:Ze,disabled:E,className:p(ve({},Er,L===ze.Large))},c),s&&e.createElement(Z,{darkMode:Ze,disabled:E,className:p(ve({},Er,L===ze.Large))},s)),e.createElement("div",{ref:_e,role:"combobox","aria-expanded":ln,"aria-controls":$e,"aria-owns":$e,tabIndex:-1,onMouseDown:function(e){E&&e.preventDefault()},onClick:function(e){if(e.target!==tn.current){var n=0;if(tn.current)n=e.nativeEvent.offsetX>tn.current.offsetLeft+tn.current.clientWidth?vn.length:0;Pn(n)}Mn()},onFocus:function(e){ht(ce),qn(function(e){var n,t,r,a;if(!e)return;if(null!==(n=tn.current)&&void 0!==n&&n.contains(e))return Se;if(null!==(t=en.current)&&void 0!==t&&t.contains(e))return Le;var l=zn(fn)?fn.findIndex((function(n){var t;return null===(t=Ye(n))||void 0===t||null===(t=t.current)||void 0===t?void 0:t.contains(e)})):-1;if(zn(fn)){if(0===l)return Oe;if(l===fn.length-1)return De;if(l>0)return Me}if(null!==(r=rn.current)&&void 0!==r&&r.contains(e))return Ie;if(null!==(a=_e.current)&&void 0!==a&&a.contains(e))return je}(e.target))},onKeyDown:function(e){var n,t,r=null===(n=rn.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(t=_e.current)||void 0===t?void 0:t.contains(document.activeElement))||r){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.key){case R.Tab:switch(Zn){case"Input":$t(fn)||(Dn(),Bn("first"),Kn(null));break;case"LastChip":Kn(null)}break;case R.Escape:Dn(),Bn("first");break;case R.Enter:ln?!ln||Zn!==Se||x(un)||function(e){if("string"==typeof e){var n=tt(e,jn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(un)?Zn===Le&&(Fn(null),Pn()):Fn(un):Mn();break;case R.Backspace:var a;if(zn(fn))"Input"===Zn&&0===(null===(a=tn.current)||void 0===a?void 0:a.selectionStart)&&Kn("last");Mn();break;case R.ArrowDown:ln?(e.preventDefault(),Bn("next")):Mn();break;case R.ArrowUp:ln?(e.preventDefault(),Bn("prev")):Mn();break;case R.ArrowRight:Yn("right",e);break;case R.ArrowLeft:Yn("left",e);break;default:ln||Mn()}}},onTransitionEnd:function(){var e,n;ct(null!==(e=null===(n=_e.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:p(lr,or[qe],ir(L,st),sr(qe)[W],ve(ve(ve({},ur[qe],(pt=Se,pt===Zn)),cr(qe),E),Cr[qe],Sn))},e.createElement("div",{onScroll:dt,ref:nn,className:fr({size:L,overflow:ce})},$n,e.createElement("input",{"aria-label":null!=f?f:c,"aria-autocomplete":"list","aria-controls":$e,"aria-labelledby":Je,ref:tn,id:Ue,className:p(mr,br(L),hr[qe],vr(ln),ve(ve({},yr(L,vn),zn(fn)),gr[qe],E)),placeholder:On,"aria-disabled":E,readOnly:E,onChange:function(e){xn(e.target.value),null==re||re(e.target.value),null==fe||fe(e)},value:vn,autoComplete:"off"})),e.createElement("div",{className:p(dr,pr[L])},le&&$t(fn)&&!E&&e.createElement(P,{"aria-label":"Clear selection",disabled:E,ref:en,onClick:function(e){E||(e.stopPropagation(),Fn(null),null==oe||oe(e),null==re||re(""),Pn())},onFocus:function(){dn(null)},className:p(xr),darkMode:Ze},e.createElement(m,{glyph:"XWithCircle"})),e.createElement(m,{glyph:"CaretDown",className:kr,fill:p(ve(ve({},Nr(qe),!E),Sr(qe),E))}))),e.createElement(S,mt),e.createElement(In,ye({id:$e,labelId:Je,refEl:_e,ref:rn,menuWidth:it,searchLoadingMessage:ne,searchErrorMessage:_,searchEmptyMessage:$},ft),Jn))));function ht(e){nn&&nn.current&&(e===Pe.scrollX&&(nn.current.scrollLeft=nn.current.scrollWidth),e===Pe.expandY&&(nn.current.scrollTop=nn.current.scrollHeight))}}Dr.propTypes={multiselect:E.bool,value:E.oneOfType([E.string,E.arrayOf(E.string)]),initialValue:E.oneOfType([E.string,E.arrayOf(E.string)]),overflow:E.oneOf(Object.values(Pe)),darkMode:E.bool,label:E.string,"aria-label":E.string,children:E.node,onChange:E.func,chipCharacterLimit:E.number,chipTruncationLocation:E.oneOf(Object.values(B)),onClear:E.func,onFilter:E.func,clearable:E.bool,searchLoadingMessage:E.string,searchErrorMessage:E.string,searchEmptyMessage:E.string,searchState:E.oneOf(Object.values(Ae)),errorMessage:E.string,state:E.oneOf(Object.values(Fe)),size:E.oneOf(Object.values(ze)),disabled:E.bool,description:E.string,placeholder:E.string,filteredOptions:E.arrayOf(E.string),popoverZIndex:E.number,usePortal:E.bool,scrollContainer:E.elementType,portalContainer:E.elementType,portalRef:E.shape({current:"undefined"!=typeof window?E.instanceOf(Element):E.any}),portalClassName:E.string};var Mr,jr=function(){var n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return[e.createElement(bt,{key:"apple",value:"apple",displayName:"Apple","data-testid":"test-id",description:"Do I keep the doctor away?",onClick:function(e,n){return console.log(e,n)},className:"className"}),e.createElement(bt,{key:"banana",value:"banana",displayName:"Banana"}),e.createElement(bt,{key:"carrot",value:"carrot",displayName:"Carrot",disabled:!0}),e.createElement(bt,{key:"pomegranate",value:"pomegranate",displayName:"Pomegranate",glyph:n?e.createElement(m,{glyph:"Warning"}):void 0,description:"Watch out! I stain everything I touch LOL",disabled:!0}),e.createElement(bt,{key:"plantain",value:"plantain",displayName:"Plantain",glyph:n?e.createElement(m,{glyph:"Connect"}):void 0,description:"Don't confuse me with a banana",onClick:function(){return console.log("I was clicked")}}),e.createElement(bt,{key:"paragraph",value:"paragraph",displayName:"Nullam quis risus eget urna mollis ornare vel eu leo. Vestibulum id ligula porta felis euismod semper."}),e.createElement(bt,{key:"hash",value:"hash",displayName:"5f4dcc3b5aa765d61d8327deb882cf995f4dcc3b5aa765d61d8327deb882cf99"}),e.createElement(bt,{key:"dragonfruit",value:"dragonfruit",displayName:"Dragonfruit",description:"Rawr"}),e.createElement(bt,{key:"eggplant",value:"eggplant",displayName:"Eggplant"}),e.createElement(bt,{key:"fig",value:"fig",displayName:"Fig"}),e.createElement(bt,{key:"grape",value:"grape",displayName:"Grape"}),e.createElement(bt,{key:"honeydew",value:"honeydew",displayName:"Honeydew"}),e.createElement(bt,{key:"iceberg-lettuce",value:"iceberg-lettuce",displayName:"Iceberg lettuce"}),e.createElement(vn,{key:"peppers",label:"Peppers"},e.createElement(bt,{key:"cayenne",value:"cayenne",displayName:"Cayenne"}),e.createElement(bt,{key:"ghost-pepper",value:"ghost-pepper",displayName:"Ghost pepper",description:"My name is Zak Bagans. I never believed in ghosts until I became face to face with one."}),e.createElement(bt,{key:"habanero",value:"habanero",displayName:"Habanero"}),e.createElement(bt,{key:"jalapeno",value:"jalapeno",displayName:"Jalapeño"}),e.createElement(bt,{key:"red-pepper",value:"red-pepper",displayName:"Red pepper"}),e.createElement(bt,{key:"scotch-bonnet",value:"scotch-bonnet",displayName:"Scotch bonnet",description:"Don't touch your eyes"}))]},Ir=d(Mr||(Mr=ke(["\n width: 256px;\n padding-block: 64px;\n display: flex;\n"]))),zr=["apple","banana"],Pr={title:"Components/Combobox",component:Dr,decorators:[function(n){return e.createElement("div",{className:Ir},e.createElement(n,null))}],parameters:{default:"LiveExample",controls:{exclude:[].concat(Ee(s),["as","filteredOptions","initialValue","setError","value","children"])},generate:{storyNames:["SingleSelect","MultiSelect","DisabledInput"],combineArgs:{darkMode:[!1,!0],clearable:[!0,!1],description:[void 0,"Please pick fruit(s)"],label:[void 0,"Choose a fruit"],state:Object.values(Fe),size:Object.values(ze)},excludeCombinations:[["description",{label:void 0}],{clearable:!1,value:void 0},{multiselect:!0,value:"apple"},{multiselect:!1,value:zr}]}},args:{label:"Choose a fruit",description:"Please pick fruit(s)",placeholder:"Select fruit",multiselect:!1,darkMode:!1,disabled:!1,clearable:!0,errorMessage:"No Pomegranates!",children:jr()},argTypes:{darkMode:c.darkMode,multiselect:{control:"boolean"},disabled:{control:"boolean"},clearable:{control:"boolean"},label:{control:"text"},description:{control:"text"},placeholder:{control:"text"},inputValue:{control:"text"},size:{options:Object.values(ze),control:"select"},state:{options:Object.values(Fe),control:"select"},errorMessage:{control:"text"},searchEmptyMessage:{control:"text"},searchState:{options:Object.values(Ae),control:"select"},searchErrorMessage:{control:"text",if:{arg:"searchState",eq:Ae.Error}},searchLoadingMessage:{control:"text",if:{arg:"searchState",eq:Ae.Loading}},chipTruncationLocation:{options:Object.values(B),control:"select",if:{arg:"multiselect"}},chipCharacterLimit:{control:"number",if:{arg:"multiselect"}},overflow:{options:Object.values(Pe),control:"select",if:{arg:"multiselect"}}}},Fr=function(n){return e.createElement(e.Fragment,null,n.multiselect?e.createElement(Dr,ye({key:"multi"},n,{multiselect:!0})):e.createElement(Dr,ye({key:"single"},n,{multiselect:!1})))};Fr.parameters={chromatic:{disableSnapshot:!0}};var Ar=function(){var n=we(i(null),2),t=n[0],r=n[1];return e.createElement("div",null,e.createElement(Dr,{multiselect:!1,label:"Choose a fruit",description:"Please pick one",placeholder:"Select fruit",onChange:function(e){r(e)},value:t},e.createElement(bt,{value:"apple"}),e.createElement(bt,{value:"banana"}),e.createElement(bt,{value:"carrot"})),e.createElement(u,{onClick:function(){return r("carrot")}},"Select Carrot"))};Ar.parameters={chromatic:{disableSnapshot:!0}};var Tr=function(){var n=["apple","banana","carrot","dragonfruit","eggplant","fig","grape","honeydew","iceberg-lettuce","jalapeño"],t=we(i(["carrot","grape"]),2),r=t[0],a=t[1];return e.createElement(Dr,{label:"Choose some fruit",placeholder:"Select fruit",initialValue:["apple","fig","raspberry"],multiselect:!0,overflow:"expand-y",onFilter:function(e){a(n.filter((function(n){return n.includes(e)})))},filteredOptions:r},n.map((function(n){return e.createElement(bt,{key:n,value:n})})))};Tr.parameters={chromatic:{disableSnapshot:!0}};var Rr=function(){return e.createElement(e.Fragment,null)};Rr.args={multiselect:!1},Rr.parameters={generate:{combineArgs:{value:[void 0,"apple"]}}};var Wr=function(){return e.createElement(e.Fragment,null)};Wr.args={multiselect:!0},Wr.parameters={generate:{combineArgs:{value:[void 0,zr]}}};var Xr=function(n){return e.createElement(Dr,ye({},n,{multiselect:!0}),jr(!1))};Xr.parameters={chromatic:{disableSnapshot:!0}};var Gr=function(){return e.createElement(e.Fragment,null)};Gr.args={disabled:!0},Gr.parameters={generate:{combineArgs:{darkMode:[!0,!1]}}};export{Ar as ControlledSingleSelect,Gr as DisabledInput,Tr as ExternalFilter,Fr as LiveExample,Wr as MultiSelect,Xr as MultiSelectNoIcons,Rr as SingleSelect,Pr as default};
|
|
1
|
+
import e,{createContext as n,useContext as t,useEffect as r,useMemo as a,useCallback as o,useRef as i,useState as l}from"react";import{storybookArgTypes as c,storybookExcludedControlParams as s}from"@lg-tools/storybook-utils";import{userEvent as u,within as d}from"@storybook/testing-library";import p from"@leafygreen-ui/button";import{css as f,cx as h,keyframes as m}from"@leafygreen-ui/emotion";import g,{isComponentGlyph as v}from"@leafygreen-ui/icon";import b from"lodash/clone";import y from"lodash/debounce";import x from"lodash/isArray";import w from"lodash/isEqual";import k from"lodash/isNull";import E from"lodash/isString";import L from"lodash/isUndefined";import C from"prop-types";import{FormFieldState as N,DEFAULT_MESSAGES as S,FormFieldFeedback as O}from"@leafygreen-ui/form-field";import{useForwardedRef as j,useIdAllocator as D,useAvailableSpace as M,useDynamicRefs as I,usePrevious as P,useAutoScroll as z,useBackdropClick as F}from"@leafygreen-ui/hooks";import T from"@leafygreen-ui/icon-button";import A,{useDarkMode as R}from"@leafygreen-ui/leafygreen-provider";import{createUniqueClassName as G,keyMap as W,Theme as X,isComponentType as _,consoleOnce as V}from"@leafygreen-ui/lib";import{Error as H,Label as Y,Description as Z}from"@leafygreen-ui/typography";import{chipTextClassName as q,TruncationLocation as B,Chip as K,BaseFontSize as U,Variant as J}from"@leafygreen-ui/chip";import{typeScales as $,spacing as Q,fontWeights as ee,fontFamilies as ne,color as te,transitionDuration as re,focusRing as ae}from"@leafygreen-ui/tokens";import{palette as oe}from"@leafygreen-ui/palette";import ie from"@leafygreen-ui/popover";import{transparentize as le}from"polished";import{descriptionClassName as ce,titleClassName as se,leftGlyphClassName as ue,InputOption as de,InputOptionContent as pe}from"@leafygreen-ui/input-option";import fe from"lodash/kebabCase";import he from"lodash/escapeRegExp";import me from"@leafygreen-ui/checkbox";function ge(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function ve(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?ge(Object(t),!0).forEach((function(n){ke(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ge(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function be(){be=function(){return n};var e,n={},t=Object.prototype,r=t.hasOwnProperty,a=Object.defineProperty||function(e,n,t){e[n]=t.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",l=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function s(e,n,t){return Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[n]}try{s({},"")}catch(e){s=function(e,n,t){return e[n]=t}}function u(e,n,t,r){var o=n&&n.prototype instanceof v?n:v,i=Object.create(o.prototype),l=new D(r||[]);return a(i,"_invoke",{value:N(e,t,l)}),i}function d(e,n,t){try{return{type:"normal",arg:e.call(n,t)}}catch(e){return{type:"throw",arg:e}}}n.wrap=u;var p="suspendedStart",f="suspendedYield",h="executing",m="completed",g={};function v(){}function b(){}function y(){}var x={};s(x,i,(function(){return this}));var w=Object.getPrototypeOf,k=w&&w(w(M([])));k&&k!==t&&r.call(k,i)&&(x=k);var E=y.prototype=v.prototype=Object.create(x);function L(e){["next","throw","return"].forEach((function(n){s(e,n,(function(e){return this._invoke(n,e)}))}))}function C(e,n){function t(a,o,i,l){var c=d(e[a],e,o);if("throw"!==c.type){var s=c.arg,u=s.value;return u&&"object"==typeof u&&r.call(u,"__await")?n.resolve(u.__await).then((function(e){t("next",e,i,l)}),(function(e){t("throw",e,i,l)})):n.resolve(u).then((function(e){s.value=e,i(s)}),(function(e){return t("throw",e,i,l)}))}l(c.arg)}var o;a(this,"_invoke",{value:function(e,r){function a(){return new n((function(n,a){t(e,r,n,a)}))}return o=o?o.then(a,a):a()}})}function N(n,t,r){var a=p;return function(o,i){if(a===h)throw Error("Generator is already running");if(a===m){if("throw"===o)throw i;return{value:e,done:!0}}for(r.method=o,r.arg=i;;){var l=r.delegate;if(l){var c=S(l,r);if(c){if(c===g)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===p)throw a=m,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=h;var s=d(n,t,r);if("normal"===s.type){if(a=r.done?m:f,s.arg===g)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(a=m,r.method="throw",r.arg=s.arg)}}}function S(n,t){var r=t.method,a=n.iterator[r];if(a===e)return t.delegate=null,"throw"===r&&n.iterator.return&&(t.method="return",t.arg=e,S(n,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),g;var o=d(a,n.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,g;var i=o.arg;return i?i.done?(t[n.resultName]=i.value,t.next=n.nextLoc,"return"!==t.method&&(t.method="next",t.arg=e),t.delegate=null,g):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,g)}function O(e){var n={tryLoc:e[0]};1 in e&&(n.catchLoc=e[1]),2 in e&&(n.finallyLoc=e[2],n.afterLoc=e[3]),this.tryEntries.push(n)}function j(e){var n=e.completion||{};n.type="normal",delete n.arg,e.completion=n}function D(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function M(n){if(n||""===n){var t=n[i];if(t)return t.call(n);if("function"==typeof n.next)return n;if(!isNaN(n.length)){var a=-1,o=function t(){for(;++a<n.length;)if(r.call(n,a))return t.value=n[a],t.done=!1,t;return t.value=e,t.done=!0,t};return o.next=o}}throw new TypeError(typeof n+" is not iterable")}return b.prototype=y,a(E,"constructor",{value:y,configurable:!0}),a(y,"constructor",{value:b,configurable:!0}),b.displayName=s(y,c,"GeneratorFunction"),n.isGeneratorFunction=function(e){var n="function"==typeof e&&e.constructor;return!!n&&(n===b||"GeneratorFunction"===(n.displayName||n.name))},n.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,s(e,c,"GeneratorFunction")),e.prototype=Object.create(E),e},n.awrap=function(e){return{__await:e}},L(C.prototype),s(C.prototype,l,(function(){return this})),n.AsyncIterator=C,n.async=function(e,t,r,a,o){void 0===o&&(o=Promise);var i=new C(u(e,t,r,a),o);return n.isGeneratorFunction(t)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},L(E),s(E,c,"Generator"),s(E,i,(function(){return this})),s(E,"toString",(function(){return"[object Generator]"})),n.keys=function(e){var n=Object(e),t=[];for(var r in n)t.push(r);return t.reverse(),function e(){for(;t.length;){var r=t.pop();if(r in n)return e.value=r,e.done=!1,e}return e.done=!0,e}},n.values=M,D.prototype={constructor:D,reset:function(n){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(j),!n)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var t=this;function a(r,a){return l.type="throw",l.arg=n,t.next=r,a&&(t.method="next",t.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],l=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),s=r.call(i,"finallyLoc");if(c&&s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,n){for(var t=this.tryEntries.length-1;t>=0;--t){var a=this.tryEntries[t];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=n&&n<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=n,o?(this.method="next",this.next=o.finallyLoc,g):this.complete(i)},complete:function(e,n){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&n&&(this.next=n),g},finish:function(e){for(var n=this.tryEntries.length-1;n>=0;--n){var t=this.tryEntries[n];if(t.finallyLoc===e)return this.complete(t.completion,t.afterLoc),j(t),g}},catch:function(e){for(var n=this.tryEntries.length-1;n>=0;--n){var t=this.tryEntries[n];if(t.tryLoc===e){var r=t.completion;if("throw"===r.type){var a=r.arg;j(t)}return a}}throw Error("illegal catch attempt")},delegateYield:function(n,t,r){return this.delegate={iterator:M(n),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=e),g}},n}function ye(e){var n=function(e,n){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e,"string");return"symbol"==typeof n?n:n+""}function xe(e){return xe="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},xe(e)}function we(e,n,t,r,a,o,i){try{var l=e[o](i),c=l.value}catch(e){return void t(e)}l.done?n(c):Promise.resolve(c).then(r,a)}function ke(e,n,t){return(n=ye(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function Ee(){return Ee=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},Ee.apply(this,arguments)}function Le(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)t=o[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)t=o[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}function Ce(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function Ne(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){var r,a,o,i,l=[],c=!0,s=!1;try{if(o=(t=t.call(e)).next,0===n);else for(;!(c=(r=o.call(t)).done)&&(l.push(r.value),l.length!==n);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=t.return&&(i=t.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(e,n)||Oe(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 Se(e){return function(e){if(Array.isArray(e))return je(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Oe(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 Oe(e,n){if(e){if("string"==typeof e)return je(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)?je(e,n):void 0}}function je(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var De="Input",Me="ClearButton",Ie="FirstChip",Pe="LastChip",ze="MiddleChip",Fe="Combobox",Te="Menu",Ae={XSmall:"xsmall",Small:"small",Default:"default",Large:"large"},Re={expandY:"expand-y",scrollX:"scroll-x",expandX:"expand-x"},Ge=N,We={Unset:"unset",Error:"error",Loading:"loading"};var Xe,_e,Ve,He,Ye,Ze,qe,Be,Ke,Ue=n({multiselect:!1,size:Ae.Default,withIcons:!1,disabled:!1,isOpen:!1,state:Ge.None,searchState:We.Unset,overflow:Re.expandY}),Je=G("combobox-chip"),$e=ke(ke(ke(ke({},Ae.XSmall,16),Ae.Small,$.body1.lineHeight),Ae.Default,$.body1.lineHeight),Ae.Large,$.body2.lineHeight),Qe=ke(ke(ke(ke({},Ae.XSmall,$.body1.fontSize),Ae.Small,$.body1.fontSize),Ae.Default,$.body1.fontSize),Ae.Large,$.body2.fontSize),en=ke(ke(ke(ke({},Ae.XSmall,1),Ae.Small,0),Ae.Default,2),Ae.Large,4),nn=ke(ke(ke(ke({},Ae.XSmall,f(Xe||(Xe=Ce(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Qe[Ae.XSmall],$e[Ae.XSmall],q,en[Ae.XSmall])),Ae.Small,f(_e||(_e=Ce(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Qe[Ae.Small],$e[Ae.Small],q,en[Ae.Small])),Ae.Default,f(Ve||(Ve=Ce(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-block: ","px;\n }\n "])),Qe[Ae.Default],$e[Ae.Default],q,en[Ae.Default])),Ae.Large,f(He||(He=Ce(["\n font-size: ","px;\n line-height: ","px;\n\n ."," {\n padding-inline-end: 10px;\n padding-block: ","px;\n }\n "])),Qe[Ae.Large],$e[Ae.Large],q,en[Ae.Large])),tn=e.forwardRef((function(n,a){var o,i=n.displayName,l=n.isFocused,c=n.onRemove,s=n.onFocus,u=t(Ue),d=u.size,p=u.disabled,f=u.overflow,m=u.chipTruncationLocation,g=void 0===m?B.End:m,v=u.chipCharacterLimit,b=void 0===v?12:v,y=u.popoverZIndex,x=f===Re.scrollX?B.None:g,w=j(a,null),k=null===(o=w.current)||void 0===o?void 0:o.querySelector("button");r((function(){l&&!p&&(null==k||k.focus())}),[p,k,l]);return e.createElement(K,{label:i,className:h(Je,nn[d]),role:"option","aria-selected":l,"data-testid":"lg-combobox-chip",onClick:function(e){null!=k&&k.contains(e.target)||s()},onKeyDown:function(e){p||e.key!==W.Delete&&e.key!==W.Backspace&&e.key!==W.Enter&&e.key!==W.Space||c()},onDismiss:function(){p||c()},baseFontSize:U.Body1,chipCharacterLimit:b,chipTruncationLocation:x,popoverZIndex:y,variant:J.Gray,ref:w,disabled:p,tabIndex:-1})}));tn.displayName="ComboboxChip";var rn,an,on,ln,cn,sn,un,dn,pn,fn,hn,mn,gn,vn,bn=ke(ke({},X.Light,f(Ye||(Ye=Ce(["\n padding-top: ","px;\n "])),Q[2])),X.Dark,f(Ze||(Ze=Ce(["\n padding-top: ","px;\n "])),Q[2])),yn=f(qe||(qe=Ce(["\n cursor: default;\n width: 100%;\n padding: 0 12px 2px;\n outline: none;\n overflow-wrap: anywhere;\n font-size: 12px;\n line-height: 16px;\n font-weight: ",";\n text-transform: uppercase;\n letter-spacing: 0.4px;\n"])),ee.bold),xn=ke(ke({},X.Light,f(Be||(Be=Ce(["\n color: ",";\n "])),oe.gray.dark1)),X.Dark,f(Ke||(Ke=Ce(["\n color: ",";\n "])),oe.gray.light1));function wn(n){var t=n.label,r=n.className,a=n.children,o=R().theme,i=D({prefix:"combobox-group"});return e.Children.count(a)>0?e.createElement("div",{className:h(bn[o],r)},e.createElement("div",{className:h(yn,xn[o]),id:i},t),e.createElement("div",{role:"group","aria-labelledby":i},a)):e.createElement(e.Fragment,null)}function kn(e){throw Error("`ComboboxGroup` must be a child of a `Combobox` instance")}kn.displayName="ComboboxGroup",kn.propTypes={className:C.string,children:C.node.isRequired,label:C.string.isRequired};var En=ke(ke(ke(ke({},Ae.XSmall,{x:12,y:8}),Ae.Small,{x:12,y:8}),Ae.Default,{x:12,y:8}),Ae.Large,{x:12,y:8}),Ln=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:384;return f(rn||(rn=Ce(["\n width: ","px;\n overflow: hidden;\n border-radius: 12px;\n border: 1px solid;\n"])),e)},Cn=ke(ke({},X.Light,f(an||(an=Ce(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),le(.85,oe.black),oe.gray.light2)),X.Dark,f(on||(on=Ce(["\n box-shadow: 0px 4px 7px ",";\n border-color: ",";\n "])),le(.85,oe.black),oe.gray.dark2)),Nn=f(ln||(ln=Ce(["\n position: relative;\n width: 100%;\n margin: 0;\n padding: ","px 0;\n font-family: ",";\n border-radius: inherit;\n overflow-y: auto;\n scroll-behavior: smooth;\n"])),Q[2],ne.default);ke(ke({},X.Light,f(cn||(cn=Ce(["\n color: ",";\n background-color: ",";\n "])),oe.black,oe.white)),X.Dark,f(sn||(sn=Ce(["\n color: ",";\n background-color: ",";\n "])),oe.gray.light1,oe.gray.dark3));var Sn,On=function(e){return f(un||(un=Ce(["\n background-color: ",";\n"])),te[e].background.primary.default)},jn=f(dn||(dn=Ce(["\n position: relative;\n margin: 0;\n padding: 0;\n"]))),Dn=f(pn||(pn=Ce(["\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n"]))),Mn=ke(ke({},X.Light,f(fn||(fn=Ce(["\n color: ",";\n "])),oe.gray.dark3)),X.Dark,f(hn||(hn=Ce(["\n color: ",";\n "])),oe.gray.light3)),In=function(e){return f(mn||(mn=Ce(["\n font-size: ","px;\n line-height: ","px;\n padding: ","px ","px;\n"])),Qe[e],$e[e],En[e].y,En[e].x)},Pn=m(gn||(gn=Ce(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),zn=f(vn||(vn=Ce(["\n animation: "," 1.5s linear infinite;\n"])),Pn),Fn=["children","id","refEl","labelId","menuWidth","searchLoadingMessage","searchErrorMessage","searchEmptyMessage"],Tn=e.forwardRef((function(n,r){var o=n.children,i=n.id,l=n.refEl,c=n.labelId,s=n.menuWidth,u=n.searchLoadingMessage,d=n.searchErrorMessage,p=n.searchEmptyMessage,m=Le(n,Fn),v=R(),b=v.darkMode,y=v.theme,x=t(Ue),w=x.disabled,k=x.size,E=x.isOpen,C=x.searchState,N=j(r,null),S=M(l),O=L(S)?"unset":"".concat(Math.min(S,256),"px"),D=a((function(){var n=h(Dn,Mn[y],In(k)),t=h(Dn,In(k));switch(C){case"loading":return e.createElement("span",{className:n},e.createElement(g,{glyph:"Refresh",color:b?oe.blue.light1:oe.blue.base,className:zn}),u);case"error":return e.createElement(H,{className:t},e.createElement(g,{glyph:"Warning",color:b?oe.red.light1:oe.red.base}),e.createElement("span",null,d));default:return o&&"object"===xe(o)&&"length"in o&&o.length>0?e.createElement("ul",{className:jn},o):e.createElement("span",{className:n},p)}}),[y,k,C,b,u,d,o,p]);return e.createElement(ie,Ee({active:E&&!w,spacing:4,align:"bottom",justify:"middle",refEl:l,adjustOnMutation:!0,className:h(Ln(s),Cn[y])},m),e.createElement("div",{ref:N,id:i,role:"listbox","aria-labelledby":c,"aria-expanded":E,className:h(Nn,On(y),f(Sn||(Sn=Ce(["\n max-height: ",";\n "])),O)),onMouseDownCapture:function(e){return e.preventDefault()}},D))}));Tn.displayName="ComboboxMenu";var An,Rn,Gn,Wn,Xn,_n,Vn,Hn,Yn,Zn,qn,Bn,Kn,Un,Jn,$n,Qn,et,nt,tt,rt=function(e){var n=e.scrollHeight;return e.scrollTop<n-e.clientHeight},at=function(e){var n,t=e.value,r=e.displayName;return{value:null!=t?t:fe(r),displayName:null!==(n=null!=r?r:t)&&void 0!==n?n:""}},ot=function n(t){return e.Children.toArray(t).reduce((function(e,t){if(_(t,"ComboboxOption")){var r=at(t.props),a=r.value,o=r.displayName,i=t.props,l=i.glyph,c=i.disabled;return[].concat(Se(e),[{value:a,displayName:o,isDisabled:!!c,hasGlyph:!!l}])}if(_(t,"ComboboxGroup")){var s=t.props.children;if(s)return[].concat(Se(e),Se(n(s)))}}),[])},it=function(e,n){if(e)return n.find((function(n){return n.value===e}))},lt=function(e,n){var t,r;return e?null!==(t=null===(r=it(e,n))||void 0===r?void 0:r.displayName)&&void 0!==t?t:e:""},ct=f(An||(An=Ce(["\n .",", ."," {\n font-size: ","px;\n line-height: 20px;\n }\n"])),ce,se,$.body2.fontSize),st=ke(ke(ke(ke({},Ae.XSmall,f(Rn||(Rn=Ce(["\n min-width: ","px;\n "])),Q[3])),Ae.Small,f(Gn||(Gn=Ce(["\n min-width: ","px;\n "])),Q[3])),Ae.Default,f(Wn||(Wn=Ce(["\n min-width: ","px;\n "])),Q[3])),Ae.Large,f(Xn||(Xn=Ce(["\n min-width: ","px;\n "])),Q[4])),ut=f(_n||(_n=Ce(["\n pointer-events: none;\n gap: 0;\n\n label {\n gap: 0;\n align-items: center;\n }\n"])));f(Vn||(Vn=Ce(["\n pointer-events: none;\n"])));var dt=function(e){return f(Hn||(Hn=Ce(["\n font-weight: ",";\n"])),e?ee.bold:ee.regular)},pt=ke(ke({},X.Light,f(Yn||(Yn=Ce(["\n color: ",";\n "])),oe.gray.dark1)),X.Dark,f(Zn||(Zn=Ce(["\n color: ",";\n "])),oe.gray.base)),ft=ke(ke({},X.Light,f(qn||(qn=Ce(["\n color: ",";\n "])),oe.blue.dark1)),X.Dark,f(Bn||(Bn=Ce(["\n color: ",";\n "])),oe.blue.light3)),ht=ke(ke({},X.Light,f(Kn||(Kn=Ce(["\n color: ",";\n "])),oe.gray.light1)),X.Dark,f(Un||(Un=Ce(["\n color: ",";\n "])),oe.gray.dark1)),mt=ke(ke({},X.Light,f(Jn||(Jn=Ce(["\n color: ",";\n "])),oe.blue.base)),X.Dark,f($n||($n=Ce(["\n color: ",";\n "])),oe.blue.light1)),gt=ke(ke({},X.Light,f(Qn||(Qn=Ce(["\n color: ",";\n "])),oe.gray.light1)),X.Dark,f(et||(et=Ce(["\n color: ",";\n "])),oe.gray.dark1)),vt=f(nt||(nt=Ce(["\n ."," {\n align-self: baseline;\n position: relative;\n // aligns the checkbox with the option name\n top: 1px;\n }\n"])),ue),bt=f(tt||(tt=Ce(["\n ."," {\n // aligns the checkbox with the option name\n top: 3px;\n }\n"])),ue),yt=["glyph","isSelected","displayName","isFocused","setSelected","className","description","value","onClick","disabled"],xt=e.forwardRef((function(n,r){var i=n.glyph,l=n.isSelected,c=n.displayName,s=n.isFocused,u=n.setSelected,d=n.className,p=n.description,f=n.value,m=n.onClick,b=n.disabled,y=void 0!==b&&b,x=Le(n,yt),w=R(),k=w.darkMode,E=w.theme,L=t(Ue),C=L.multiselect,N=L.size,S=L.withIcons,O=L.inputValue,M=j(r,null),I=D({prefix:"combobox-option-text"}),P=o((function(e){e.stopPropagation(),y||(u(),null==m||m(e,f))}),[y,m,u,f]),z=a((function(){return function(n){var t=n.withIcons,r=n.isSelected,a=n.glyph,o=n.optionTextId,i=n.disabled,l=n.darkMode,c=n.size,s=n.multiselect,u=n.theme,d=n.isFocused;a&&!v(a)&&console.error("`ComboboxOption` instance did not render icon because it is not a known glyph element.",a);var p=a&&v(a)?e.cloneElement(a,ve(ve({},a.props),{},{className:h(pt[u],ke(ke({},ft[u],d),ht[u],i),a.props.className)})):e.createElement(e.Fragment,null),f=e.createElement(me,{"aria-labelledby":o,checked:r,tabIndex:-1,disabled:i,darkMode:l,className:ut}),m=e.createElement(g,{glyph:"Checkmark",className:h(st[c],mt[u],ke({},gt[u],i))});return{leftGlyph:s?t?p:f:t?p:r?m:null,rightGlyph:s?t&&f:t&&r&&m}}({withIcons:S,isSelected:l,glyph:i,theme:E,darkMode:k,size:N,disabled:y,multiselect:C,optionTextId:I,isFocused:s})}),[k,y,i,l,C,I,N,E,S,s]),F=z.leftGlyph,T=z.rightGlyph,A=C&&!S;return e.createElement(de,Ee({},x,{as:"li",ref:M,highlighted:s,disabled:y,"aria-label":c,darkMode:k,className:h(ke(ke(ke({},ct,N===Ae.Large),vt,A),bt,A&&N===Ae.Large),d),onClick:P,onKeyDown:P}),e.createElement(pe,{leftGlyph:F,rightGlyph:T,description:p},e.createElement("span",{id:I,className:dt(l)},function(n,t,r){if(t&&r){var a=he(t),o=new RegExp(a,"gi"),i=n.matchAll(o);if(i){for(var l=n.split(""),c=0,s=Array.from(i);c<s.length;c++){var u,d=s[c],p=null!==(u=d.index)&&void 0!==u?u:-1,f=d[0],h=f.length,m=p+f+h,g=new Array(h).fill("");g[0]=e.createElement(r,{key:m},f),l.splice.apply(l,[p,h].concat(Se(g)))}return e.createElement(e.Fragment,null,l)}return e.createElement(e.Fragment,null,n)}return e.createElement(e.Fragment,null,n)}(c,O,"strong"))))}));function wt(e){throw Error("`ComboboxOption` must be a child of a `Combobox` instance")}xt.displayName="ComboboxOption",wt.displayName="ComboboxOption",wt.propTypes={displayName:C.string,value:C.string,glyph:C.node,disabled:C.bool,className:C.string,description:C.string,onClick:C.func};var kt,Et,Lt,Ct,Nt,St,Ot,jt,Dt,Mt,It,Pt,zt,Ft,Tt,At,Rt,Gt,Wt,Xt,_t,Vt,Ht,Yt,Zt,qt,Bt,Kt,Ut,Jt,$t,Qt,er,nr=function(e){return!L(e)&&!k(e)&&(E(e)||x(e)&&e.length>0)},tr=function(e){return $e[e]+2*en[e]},rr=Q[100],ar=ke(ke(ke(ke({},Ae.XSmall,22),Ae.Small,28),Ae.Default,36),Ae.Large,48),or=function(e){return(ar[e]-tr(e)-2)/2},ir=ke(ke(ke(ke({},Ae.XSmall,{y:or(Ae.XSmall),xLeftWithChip:Q[25],xLeftWithoutChip:Q[200],xRight:Q[100]}),Ae.Small,{y:or(Ae.Small),xLeftWithChip:Q[100],xLeftWithoutChip:Q[200],xRight:Q[100]}),Ae.Default,{y:or(Ae.Default),xLeftWithChip:Q[150],xLeftWithoutChip:Q[300],xRight:Q[200]}),Ae.Large,{y:or(Ae.Large),xLeftWithChip:Q[300],xLeftWithoutChip:Q[300],xRight:Q[200]}),lr=Q[400],cr=function(e){return f(kt||(kt=Ce(["\n font-family: ",";\n width: 100%;\n min-width: ","px;\n "])),ne.default,Qe[e]+2*ir[e].xLeftWithChip+lr+2)},sr=f(Et||(Et=Ce(["\n display: flex;\n align-items: center;\n gap: ","px;\n cursor: text;\n transition: ","ms ease-in-out;\n transition-property: background-color, box-shadow, border-color;\n border: 1px solid;\n width: 100%;\n max-width: 100%;\n border-radius: 6px;\n position: relative;\n overflow: hidden;\n\n // Overflow shadow\n ::after {\n content: '';\n position: absolute;\n width: 100%;\n height: 20px;\n bottom: -21px;\n left: 50%;\n translate: -50% 0%;\n border-radius: 20%;\n box-shadow: 0 0 0 0 rgb(255 255 255 / 0%);\n transition: ","ms linear;\n transition-property: box-shadow;\n }\n"])),Q[200],re.default,re.default),ur=ke(ke({},X.Light,f(Lt||(Lt=Ce(["\n color: ",";\n background-color: ",";\n "])),te.light.text.primary.default,te.light.background.primary.default)),X.Dark,f(Ct||(Ct=Ce(["\n color: ",";\n background-color: ",";\n "])),te.dark.text.primary.default,oe.gray.dark4)),dr=function(e,n){return f(Nt||(Nt=Ce(["\n padding-top: ","px;\n padding-bottom: ","px;\n padding-left: ",";\n padding-right: ","px;\n"])),ir[e].y,ir[e].y,"".concat(n?ir[e].xLeftWithChip:ir[e].xLeftWithoutChip,"px"),ir[e].xRight)},pr=function(e){return f(St||(St=Ce(["\n cursor: not-allowed;\n color: ",";\n background-color: ",";\n border-color: ",";\n"])),te[e].text.disabled.default,te[e].background.disabled.default,te[e].border.disabled.default)},fr=function(e){return ke(ke(ke({},Ge.Error,f(Ot||(Ot=Ce(["\n border-color: ",";\n "])),te[e].border.error.default)),Ge.None,f(jt||(jt=Ce(["\n border-color: ",";\n "])),te[e].border.primary.default)),Ge.Valid,f(Dt||(Dt=Ce(["\n border-color: ",";\n "])),te[e].border.success.default))},hr=ke(ke({},X.Light,f(Mt||(Mt=Ce(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),ae[X.Light].input)),X.Dark,f(It||(It=Ce(["\n &:focus-within {\n border-color: transparent;\n box-shadow: ",";\n }\n "])),ae[X.Dark].input)),mr=f(Pt||(Pt=Ce(["\n display: flex;\n align-items: center;\n"]))),gr=ke(ke(ke(ke({},Ae.XSmall,f(zt||(zt=Ce(["\n gap: ","px;\n "])),Q[100])),Ae.Small,f(Ft||(Ft=Ce(["\n gap: ","px;\n "])),Q[200])),Ae.Default,f(Tt||(Tt=Ce(["\n gap: ","px;\n "])),Q[200])),Ae.Large,f(At||(At=Ce(["\n gap: ","px;\n "])),Q[200])),vr=function(e){var n=e.overflow,t=e.size,r=f(Rt||(Rt=Ce(["\n flex-grow: 1;\n width: 100%;\n "])));switch(n){case Re.scrollX:return f(Gt||(Gt=Ce(["\n ","\n display: block;\n height: ","px;\n white-space: nowrap;\n overflow-x: scroll;\n scroll-behavior: smooth;\n scrollbar-width: none;\n line-height: 1;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n & > ."," {\n margin-inline: 2px;\n\n &:first-child {\n margin-inline-start: 0;\n }\n\n &:last-child {\n margin-inline-end: 0;\n }\n }\n "])),r,tr(t),Je);case Re.expandY:return f(Wt||(Wt=Ce(["\n ","\n display: flex;\n flex-wrap: wrap;\n gap: ","px;\n overflow-x: hidden;\n min-height: ","px;\n max-height: calc((","px) + (","px * 2));\n "])),r,rr,tr(t),3*tr(t),rr)}},br=f(Xt||(Xt=Ce(["\n font-family: ",";\n width: 100%;\n border: none;\n cursor: inherit;\n background-color: inherit;\n color: inherit;\n box-sizing: content-box;\n padding: 0;\n margin: 0;\n text-overflow: ellipsis;\n vertical-align: top;\n\n // Only add padding if there are chips\n &:not(:first-child) {\n padding-left: ","px;\n }\n\n &:placeholder-shown {\n min-width: 100%;\n }\n &:focus {\n outline: none;\n }\n"])),ne.default,Q[100]),yr=ke(ke({},X.Light,f(_t||(_t=Ce(["\n &::placeholder {\n color: ",";\n }\n "])),oe.gray.base)),X.Dark,f(Vt||(Vt=Ce(["\n &::placeholder {\n color: ",";\n }\n "])),oe.gray.dark1)),xr=ke(ke({},X.Light,f(Ht||(Ht=Ce(["\n &::placeholder {\n color: ",";\n }\n "])),oe.gray.base)),X.Dark,f(Yt||(Yt=Ce(["\n &::placeholder {\n color: ",";\n }\n "])),oe.gray.dark1)),wr=function(e){return f(Zt||(Zt=Ce(["\n height: ","px;\n font-size: ","px;\n line-height: ","px;\n min-width: ","px;\n"])),tr(e),Qe[e],$e[e],Qe[e])},kr=function(e){return f(qt||(qt=Ce(["\n /*\n * Immediate transition in, slow transition out. \n * '-in' transition is handled by `scroll-behavior` \n */\n transition: width ease-in-out ",";\n"],["\n /*\n * Immediate transition in, slow transition out. \n * '-in' transition is handled by \\`scroll-behavior\\` \n */\n transition: width ease-in-out ",";\n"])),e?"0s":"100ms")},Er=function(e,n){var t,r=null!==(t=null==n?void 0:n.length)&&void 0!==t?t:0;return f(Bt||(Bt=Ce(["\n width: ","px;\n max-width: 100%;\n "])),r*Qe[e])},Lr=f(Kt||(Kt=Ce(["\n // Add a negative margin so the button takes up the same space as the regular icons\n margin-block: calc(","px - 100%);\n margin-inline: -6px;\n"])),lr/2),Cr=f(Ut||(Ut=Ce(["\n height: ","px;\n width: ","px;\n"])),lr,lr),Nr=f(Jt||(Jt=Ce(["\n margin-bottom: ","px;\n display: flex;\n flex-direction: column;\n"])),Q[100]),Sr=f($t||($t=Ce(["\n font-size: ","px;\n line-height: ","px;\n"])),$.large.fontSize,$.large.lineHeight),Or=ke(ke({},X.Light,f(Qt||(Qt=Ce(["\n ::after {\n box-shadow: 0px 0px 7px 5px ",";\n }\n "])),le(.85,oe.black))),X.Dark,f(er||(er=Ce(["\n ::after {\n width: 95%;\n box-shadow: 0px -7px 12px 5px rgb(0 0 0 / 50%);\n }\n "])))),jr=function(e){return te[e].icon.primary.default},Dr=function(e){return te[e].icon.disabled.default},Mr=["children","label","description","placeholder","aria-label","disabled","size","darkMode","state","errorMessage","successMessage","searchState","searchEmptyMessage","searchErrorMessage","searchLoadingMessage","filteredOptions","onFilter","clearable","onClear","overflow","multiselect","initialValue","inputValue","onInputChange","onChange","value","chipTruncationLocation","chipCharacterLimit","className","usePortal","portalClassName","portalContainer","portalRef","scrollContainer","popoverZIndex"],Ir=["className","glyph","disabled"];function Pr(n){var t=n.children,c=n.label,s=n.description,u=n.placeholder,d=void 0===u?"Select":u,p=n["aria-label"],f=n.disabled,m=void 0!==f&&f,v=n.size,C=void 0===v?Ae.Default:v,N=n.darkMode,j=n.state,M=void 0===j?"none":j,G=n.errorMessage,X=void 0===G?S.error:G,H=n.successMessage,q=void 0===H?S.success:H,B=n.searchState,K=void 0===B?"unset":B,U=n.searchEmptyMessage,J=void 0===U?"No results found":U,$=n.searchErrorMessage,Q=void 0===$?"Could not get results!":$,ee=n.searchLoadingMessage,ne=void 0===ee?"Loading results...":ee,te=n.filteredOptions,re=n.onFilter,ae=n.clearable,oe=void 0===ae||ae,ie=n.onClear,le=n.overflow,ce=void 0===le?Re.expandY:le,se=n.multiselect,ue=void 0!==se&&se,de=n.initialValue,pe=n.inputValue,fe=n.onInputChange,he=n.onChange,me=n.value,ge=n.chipTruncationLocation,be=n.chipCharacterLimit,ye=void 0===be?12:be,we=n.className,Ce=n.usePortal,Se=void 0===Ce||Ce,Oe=n.portalClassName,je=n.portalContainer,Ge=n.portalRef,We=n.scrollContainer,Xe=n.popoverZIndex,_e=Le(n,Mr),Ve=R(N),He=Ve.darkMode,Ye=Ve.theme,Ze=I({prefix:"option"}),qe=I({prefix:"chip"}),Be=D({prefix:"combobox-input"}),Ke=D({prefix:"combobox-label"}),Je=D({prefix:"combobox-menu"}),$e=i(null),Qe=i(null),en=i(null),nn=i(null),rn=i(null),an=Ne(l(!1),2),on=an[0],ln=an[1],cn=P(on),sn=Ne(l(null),2),un=sn[0],dn=sn[1],pn=Ne(l(null),2),fn=pn[0],hn=pn[1],mn=P(fn),gn=Ne(l(null!=pe?pe:""),2),vn=gn[0],bn=gn[1];r((function(){L(pe)||bn(pe)}),[pe]);var yn=function(e){bn(e)},xn=P(vn),kn=Ne(l(null),2),En=kn[0],Ln=kn[1],Cn=Ne(l(!1),2),Nn=Cn[0],Sn=Cn[1],On=ue&&x(fn)&&fn.length>0?void 0:d,jn=function(){return ln(!1)},Dn=function(){return ln(!0)},Mn=a((function(){return ot(t)}),[t]),In=o((function(e){return!ue||"string"!=typeof e&&"number"!=typeof e?!ue&&x(e)&&V.error("Error in Combobox: multiselect is set to `false`, but received an Array value"):V.error("Error in Combobox: multiselect is set to `true`, but received a ".concat(xe(e),' value: "').concat(e,'"')),ue&&x(e)}),[ue]),Pn=o((function(e){!m&&nn&&nn.current&&(nn.current.focus(),L(e)||nn.current.setSelectionRange(e,e))}),[m]),zn=o((function(e){if(In(fn)){var n=b(fn),t=he,r={diffType:"delete",value:null!=e?e:fn};k(e)?n.length=0:fn.includes(e)?n.splice(n.indexOf(e),1):(n.push(e),r.diffType="insert",yn("")),hn(n),null==t||t(n,r)}else{var a=e,o=he;hn(a),null==o||o(a)}}),[In,he,fn]),Fn=o((function(e){var n,t,r,a;return function(e,n){return Array.isArray(n)?n.includes(e):e===n}((t=Mn,(n=e)?null!==(r=null===(a=t.find((function(e){return e.displayName===n})))||void 0===a?void 0:a.value)&&void 0!==r?r:n:""),fn)}),[Mn,fn]),An=o((function(e){var n="string"==typeof e?e:e.value;return te&&te.length>0?te.includes(n):!!Fn(vn)||("string"==typeof e?lt(n,Mn):e.displayName).toLowerCase().includes(vn.toLowerCase())}),[te,Fn,vn,Mn]),Rn=a((function(){return Mn.filter(An)}),[Mn,An]),Gn=o((function(e){return!!e&&!!Mn.find((function(n){return n.value===e}))}),[Mn]),Wn=o((function(e){return Rn?Rn.findIndex((function(n){return n.value===e})):-1}),[Rn]),Xn=o((function(e){if(Rn&&Rn.length>=e){var n=Rn[e];return n?n.value:void 0}}),[Rn]),_n=o((function(){return In(fn)?fn.findIndex((function(e){var n;return null===(n=qe(e))||void 0===n||null===(n=n.current)||void 0===n?void 0:n.contains(document.activeElement)})):-1}),[qe,In,fn]),Vn=Ne(l(),2),Hn=Vn[0],Yn=Vn[1],Zn=o((function(e){var n,t=null!==(n=null==Rn?void 0:Rn.length)&&void 0!==n?n:0,r=t-1>0?t-1:0,a=Wn(un);switch(e&&on&&(Ln(null),Pn()),e){case"next":var o=Xn(a+1<t?a+1:0);dn(null!=o?o:null);break;case"prev":var i=Xn(a-1>=0?a-1:r);dn(null!=i?i:null);break;case"last":var l=Xn(r);dn(null!=l?l:null);break;default:var c=Xn(0);dn(null!=c?c:null)}}),[un,Wn,Xn,on,Pn,null==Rn?void 0:Rn.length]),qn=o((function(e,n){if(In(fn))switch(e){case"next":var t=null!=n?n:_n(),r=t+1<fn.length?t+1:fn.length-1,a=fn[r];Ln(a);break;case"prev":var o=null!=n?n:_n(),i=o>0?o-1:o<0?fn.length-1:0,l=fn[i];Ln(l);break;case"first":var c=fn[0];Ln(c);break;case"last":var s=fn[fn.length-1];Ln(s);break;default:Ln(null)}}),[_n,In,fn]),Bn=o((function(e,n){switch(e&&dn(null),e){case"right":switch(Hn){case De:var t,r,a;if((null===(t=nn.current)||void 0===t?void 0:t.selectionEnd)===(null===(r=nn.current)||void 0===r?void 0:r.value.length))null===(a=Qe.current)||void 0===a||a.focus();break;case Ie:case ze:case Pe:if(Hn===Pe||1===(null==fn?void 0:fn.length)){Pn(0),qn(null),n.preventDefault();break}qn("next")}break;case"left":switch(Hn){case Me:var o;n.preventDefault(),Pn(null==nn||null===(o=nn.current)||void 0===o?void 0:o.value.length);break;case De:case ze:case Pe:if(In(fn)){var i;if(Hn===De&&0!==(null===(i=nn.current)||void 0===i?void 0:i.selectionStart))break;qn("prev")}}break;default:qn(null)}}),[Hn,In,fn,Pn,qn]);r((function(){vn!==xn&&Zn("first")}),[vn,on,xn,Zn]),z(un?Ze(un):void 0,rn);var Kn=o((function(n){if(_(n,"ComboboxOption")){var t=at(n.props),r=t.value,a=t.displayName;if(An(r)){var o=n.props,i=o.className,l=o.glyph,c=o.disabled,s=Le(o,Ir),u=Mn.findIndex((function(e){return e.value===r})),d=un===r,p=In(fn)?fn.includes(r):fn===r,f=Ze(r);return e.createElement(xt,Ee({},s,{value:r,displayName:a,isFocused:d,isSelected:p,disabled:c,setSelected:function(){dn(r),zn(r),Pn(),r===fn&&jn()},glyph:l,className:i,index:u,ref:f}))}}else if(_(n,"ComboboxGroup")){var h=e.Children.map(n.props.children,Kn);if(h&&(null==h?void 0:h.length)>0)return e.createElement(wn,{label:n.props.label,className:n.props.className},e.Children.map(h,Kn))}}),[Mn,Ze,un,In,fn,Pn,An,zn]),Un=a((function(){return e.Children.map(t,Kn)}),[t,Kn]),Jn=a((function(){if(In(fn))return fn.filter(Gn).map((function(n,t){var r=lt(n,Mn),a=En===n,o=qe(n),i=t>=fn.length-1;return e.createElement(tn,{key:n,displayName:r,isFocused:a,onRemove:function(){i?(Pn(),qn(null)):qn("next",t),zn(n)},onFocus:function(){Ln(n)},ref:o})}))}),[In,fn,Gn,Mn,En,qe,zn,Pn,qn]),$n=a((function(){return Mn.some((function(e){return e.hasGlyph}))}),[Mn]),Qn=o((function(){var e=Rn.find((function(e){return e.displayName===vn||e.value===vn}));if(!me&&e)zn(e.value);else if(!In(fn)){var n,t=null!==(n=lt(fn,Mn))&&void 0!==n?n:mn;yn(t)}}),[Mn,vn,In,mn,fn,zn,me,Rn]),et=o((function(){if(nr(fn)){if(In(fn))mt(ce);else if(!In(fn)){var e,n=null!==(e=lt(fn,Mn))&&void 0!==e?e:"";yn(n),jn()}}else yn("")}),[Mn,In,fn,ce]);r((function(){if(de)if(x(de)){var e,n=null!==(e=de.filter((function(e){return Gn(e)})))&&void 0!==e?e:[];hn(n)}else Gn(de)&&hn(de);else hn(function(e){return e?[]:null}(ue))}),[]),r((function(){if(!L(me)&&me!==xn)if(k(me))hn(null);else if(In(me)){var e=me.filter(Gn);hn(e)}else hn(Gn(me)?me:null)}),[In,Gn,xn,me]),r((function(){!L(mn)&&(x(fn)&&!k(mn)||E(fn)||k(fn))&&!w(fn,mn)&&et()}),[et,mn,fn]),r((function(){!on&&cn&&Qn()}),[on,cn,Qn]);var nt=Ne(l(0),2),tt=nt[0],ct=nt[1];r((function(){var e,n;ct(null!==(e=null===(n=$e.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)}),[$e,on,un,fn]);F(jn,[rn,$e],on);var st=In(fn)&&!!fn.length,ut=y((function(e){Sn(rt(e.target))}),50,{leading:!0}),dt=o((function(e){ce===Re.expandY&&ut(e)}),[ut,ce]);r((function(){en.current&&Sn(rt(en.current))}),[]);var pt,ft=ve({popoverZIndex:Xe},Se?{usePortal:Se,portalClassName:Oe,portalContainer:je,portalRef:Ge,scrollContainer:We}:{usePortal:Se}),ht={disabled:m,errorMessage:X,size:C,state:M,successMessage:q};return e.createElement(A,{darkMode:He},e.createElement(Ue.Provider,{value:{multiselect:ue,size:C,withIcons:$n,disabled:m,isOpen:on,state:M,searchState:K,chipTruncationLocation:ge,chipCharacterLimit:ye,inputValue:vn,overflow:ce,popoverZIndex:Xe}},e.createElement("div",Ee({className:h(cr(C),we)},_e),(c||s)&&e.createElement("div",{className:Nr},c&&e.createElement(Y,{id:Ke,htmlFor:Be,darkMode:He,disabled:m,className:h(ke({},Sr,C===Ae.Large))},c),s&&e.createElement(Z,{darkMode:He,disabled:m,className:h(ke({},Sr,C===Ae.Large))},s)),e.createElement("div",{ref:$e,role:"combobox","aria-expanded":on,"aria-controls":Je,"aria-owns":Je,tabIndex:-1,onMouseDown:function(e){m&&e.preventDefault()},onClick:function(e){if(e.target!==nn.current){var n=0;if(nn.current)n=e.nativeEvent.offsetX>nn.current.offsetLeft+nn.current.clientWidth?vn.length:0;Pn(n)}Dn()},onFocus:function(e){mt(ce),Yn(function(e){var n,t,r,a;if(!e)return;if(null!==(n=nn.current)&&void 0!==n&&n.contains(e))return De;if(null!==(t=Qe.current)&&void 0!==t&&t.contains(e))return Me;var o=In(fn)?fn.findIndex((function(n){var t;return null===(t=qe(n))||void 0===t||null===(t=t.current)||void 0===t?void 0:t.contains(e)})):-1;if(In(fn)){if(0===o)return Ie;if(o===fn.length-1)return Pe;if(o>0)return ze}if(null!==(r=rn.current)&&void 0!==r&&r.contains(e))return Te;if(null!==(a=$e.current)&&void 0!==a&&a.contains(e))return Fe}(e.target))},onKeyDown:function(e){var n,t,r=null===(n=rn.current)||void 0===n?void 0:n.contains(document.activeElement);if((null===(t=$e.current)||void 0===t?void 0:t.contains(document.activeElement))||r){if(e.ctrlKey||e.shiftKey||e.altKey)return;switch(e.key){case W.Tab:switch(Hn){case"Input":nr(fn)||(jn(),Zn("first"),qn(null));break;case"LastChip":qn(null)}break;case W.Escape:jn(),Zn("first");break;case W.Enter:on?!on||Hn!==De||k(un)||function(e){if("string"==typeof e){var n=it(e,Mn);return!(null==n||!n.isDisabled)}return!!e.isDisabled}(un)?Hn===Me&&(zn(null),Pn()):zn(un):Dn();break;case W.Backspace:var a;if(In(fn))"Input"===Hn&&0===(null===(a=nn.current)||void 0===a?void 0:a.selectionStart)&&qn("last");Dn();break;case W.ArrowDown:on?(e.preventDefault(),Zn("next")):Dn();break;case W.ArrowUp:on?(e.preventDefault(),Zn("prev")):Dn();break;case W.ArrowRight:Bn("right",e);break;case W.ArrowLeft:Bn("left",e);break;default:on||Dn()}}},onTransitionEnd:function(){var e,n;ct(null!==(e=null===(n=$e.current)||void 0===n?void 0:n.clientWidth)&&void 0!==e?e:0)},className:h(sr,ur[Ye],dr(C,st),fr(Ye)[M],ke(ke(ke({},hr[Ye],(pt=De,pt===Hn)),pr(Ye),m),Or[Ye],Nn))},e.createElement("div",{onScroll:dt,ref:en,className:vr({size:C,overflow:ce})},Jn,e.createElement("input",{"aria-label":null!=p?p:c,"aria-autocomplete":"list","aria-controls":Je,"aria-labelledby":Ke,ref:nn,id:Be,className:h(br,wr(C),yr[Ye],kr(on),ke(ke({},Er(C,vn),In(fn)),xr[Ye],m)),placeholder:On,"aria-disabled":m,readOnly:m,onChange:function(e){yn(e.target.value),null==re||re(e.target.value),null==fe||fe(e)},value:vn,autoComplete:"off"})),e.createElement("div",{className:h(mr,gr[C])},oe&&nr(fn)&&!m&&e.createElement(T,{"aria-label":"Clear selection",disabled:m,ref:Qe,onClick:function(e){m||(e.stopPropagation(),zn(null),null==ie||ie(e),null==re||re(""),Pn())},onFocus:function(){dn(null)},className:h(Lr),darkMode:He},e.createElement(g,{glyph:"XWithCircle"})),e.createElement(g,{glyph:"CaretDown",className:Cr,fill:h(ke(ke({},jr(Ye),!m),Dr(Ye),m))}))),e.createElement(O,ht),e.createElement(Tn,Ee({id:Je,labelId:Ke,refEl:$e,ref:rn,menuWidth:tt,searchLoadingMessage:ne,searchErrorMessage:Q,searchEmptyMessage:J},ft),Un))));function mt(e){en&&en.current&&(e===Re.scrollX&&(en.current.scrollLeft=en.current.scrollWidth),e===Re.expandY&&(en.current.scrollTop=en.current.scrollHeight))}}Pr.propTypes={multiselect:C.bool,value:C.oneOfType([C.string,C.arrayOf(C.string)]),initialValue:C.oneOfType([C.string,C.arrayOf(C.string)]),overflow:C.oneOf(Object.values(Re)),darkMode:C.bool,label:C.string,"aria-label":C.string,children:C.node,onChange:C.func,chipCharacterLimit:C.number,chipTruncationLocation:C.oneOf(Object.values(B)),onClear:C.func,onFilter:C.func,clearable:C.bool,searchLoadingMessage:C.string,searchErrorMessage:C.string,searchEmptyMessage:C.string,searchState:C.oneOf(Object.values(We)),errorMessage:C.string,state:C.oneOf(Object.values(Ge)),size:C.oneOf(Object.values(Ae)),disabled:C.bool,description:C.string,placeholder:C.string,filteredOptions:C.arrayOf(C.string),popoverZIndex:C.number,usePortal:C.bool,scrollContainer:C.elementType,portalContainer:C.elementType,portalRef:C.shape({current:"undefined"!=typeof window?C.instanceOf(Element):C.any}),portalClassName:C.string};var zr,Fr,Tr=function(){var n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return[e.createElement(wt,{key:"apple",value:"apple",displayName:"Apple","data-testid":"test-id",description:"Do I keep the doctor away?",onClick:function(e,n){return console.log(e,n)},className:"className"}),e.createElement(wt,{key:"banana",value:"banana",displayName:"Banana"}),e.createElement(wt,{key:"carrot",value:"carrot",displayName:"Carrot",disabled:!0}),e.createElement(wt,{key:"pomegranate",value:"pomegranate",displayName:"Pomegranate",glyph:n?e.createElement(g,{glyph:"Warning"}):void 0,description:"Watch out! I stain everything I touch LOL",disabled:!0}),e.createElement(wt,{key:"plantain",value:"plantain",displayName:"Plantain",glyph:n?e.createElement(g,{glyph:"Connect"}):void 0,description:"Don't confuse me with a banana",onClick:function(){return console.log("I was clicked")}}),e.createElement(wt,{key:"paragraph",value:"paragraph",displayName:"Nullam quis risus eget urna mollis ornare vel eu leo. Vestibulum id ligula porta felis euismod semper."}),e.createElement(wt,{key:"hash",value:"hash",displayName:"5f4dcc3b5aa765d61d8327deb882cf995f4dcc3b5aa765d61d8327deb882cf99"}),e.createElement(wt,{key:"dragonfruit",value:"dragonfruit",displayName:"Dragonfruit",description:"Rawr"}),e.createElement(wt,{key:"eggplant",value:"eggplant",displayName:"Eggplant"}),e.createElement(wt,{key:"fig",value:"fig",displayName:"Fig"}),e.createElement(wt,{key:"grape",value:"grape",displayName:"Grape"}),e.createElement(wt,{key:"honeydew",value:"honeydew",displayName:"Honeydew"}),e.createElement(wt,{key:"iceberg-lettuce",value:"iceberg-lettuce",displayName:"Iceberg lettuce"}),e.createElement(kn,{key:"peppers",label:"Peppers"},e.createElement(wt,{key:"cayenne",value:"cayenne",displayName:"Cayenne"}),e.createElement(wt,{key:"ghost-pepper",value:"ghost-pepper",displayName:"Ghost pepper",description:"My name is Zak Bagans. I never believed in ghosts until I became face to face with one."}),e.createElement(wt,{key:"habanero",value:"habanero",displayName:"Habanero"}),e.createElement(wt,{key:"jalapeno",value:"jalapeno",displayName:"Jalapeño"}),e.createElement(wt,{key:"red-pepper",value:"red-pepper",displayName:"Red pepper"}),e.createElement(wt,{key:"scotch-bonnet",value:"scotch-bonnet",displayName:"Scotch bonnet",description:"Don't touch your eyes"}))]},Ar=f(zr||(zr=Ce(["\n width: 256px;\n padding-block: 64px;\n display: flex;\n"]))),Rr=["apple","banana"],Gr={title:"Components/Combobox",component:Pr,decorators:[function(n){return e.createElement("div",{className:Ar},e.createElement(n,null))}],parameters:{default:"LiveExample",controls:{exclude:[].concat(Se(s),["as","filteredOptions","initialValue","setError","value","children"])},generate:{storyNames:["SingleSelect","MultiSelect","DisabledInput"],combineArgs:{darkMode:[!1,!0],clearable:[!0,!1],description:[void 0,"Please pick fruit(s)"],label:[void 0,"Choose a fruit"],state:Object.values(Ge),size:Object.values(Ae)},excludeCombinations:[["description",{label:void 0}],{clearable:!1,value:void 0},{multiselect:!0,value:"apple"},{multiselect:!1,value:Rr}]}},args:{label:"Choose a fruit",description:"Please pick fruit(s)",placeholder:"Select fruit",multiselect:!1,darkMode:!1,disabled:!1,clearable:!0,errorMessage:"No Pomegranates!",children:Tr()},argTypes:{darkMode:c.darkMode,multiselect:{control:"boolean"},disabled:{control:"boolean"},clearable:{control:"boolean"},label:{control:"text"},description:{control:"text"},placeholder:{control:"text"},inputValue:{control:"text"},size:{options:Object.values(Ae),control:"select"},state:{options:Object.values(Ge),control:"select"},errorMessage:{control:"text"},searchEmptyMessage:{control:"text"},searchState:{options:Object.values(We),control:"select"},searchErrorMessage:{control:"text",if:{arg:"searchState",eq:We.Error}},searchLoadingMessage:{control:"text",if:{arg:"searchState",eq:We.Loading}},chipTruncationLocation:{options:Object.values(B),control:"select",if:{arg:"multiselect"}},chipCharacterLimit:{control:"number",if:{arg:"multiselect"}},overflow:{options:Object.values(Re),control:"select",if:{arg:"multiselect"}}}},Wr=function(n){return e.createElement(e.Fragment,null,n.multiselect?e.createElement(Pr,Ee({key:"multi"},n,{multiselect:!0})):e.createElement(Pr,Ee({key:"single"},n,{multiselect:!1})))};Wr.parameters={chromatic:{disableSnapshot:!0}};var Xr=function(){var n=Ne(l(null),2),t=n[0],r=n[1];return e.createElement("div",null,e.createElement(Pr,{multiselect:!1,label:"Choose a fruit",description:"Please pick one",placeholder:"Select fruit",onChange:function(e){r(e)},value:t},e.createElement(wt,{value:"apple"}),e.createElement(wt,{value:"banana"}),e.createElement(wt,{value:"carrot"})),e.createElement(p,{onClick:function(){return r("carrot")}},"Select Carrot"))};Xr.parameters={chromatic:{disableSnapshot:!0}};var _r=function(){var n=["apple","banana","carrot","dragonfruit","eggplant","fig","grape","honeydew","iceberg-lettuce","jalapeño"],t=Ne(l(["carrot","grape"]),2),r=t[0],a=t[1];return e.createElement(Pr,{label:"Choose some fruit",placeholder:"Select fruit",initialValue:["apple","fig","raspberry"],multiselect:!0,overflow:"expand-y",onFilter:function(e){a(n.filter((function(n){return n.includes(e)})))},filteredOptions:r},n.map((function(n){return e.createElement(wt,{key:n,value:n})})))};_r.parameters={chromatic:{disableSnapshot:!0}};var Vr=function(){return e.createElement(e.Fragment,null)};Vr.args={multiselect:!1},Vr.parameters={generate:{combineArgs:{value:[void 0,"apple"]}}};var Hr=function(){return e.createElement(e.Fragment,null)};Hr.args={multiselect:!0},Hr.parameters={generate:{combineArgs:{value:[void 0,Rr]}}};var Yr=function(n){return e.createElement(Pr,Ee({},n,{multiselect:!0}),Tr(!1))};Yr.parameters={chromatic:{disableSnapshot:!0}};var Zr=function(){return e.createElement(e.Fragment,null)};Zr.args={disabled:!0},Zr.parameters={generate:{combineArgs:{darkMode:[!0,!1]}}};var qr,Br,Kr={render:function(){return e.createElement(Pr,{multiselect:!1,label:"Choose a fruit",description:"Please pick one",placeholder:"Select fruit"},Tr())},play:(qr=be().mark((function e(n){var t,r,a;return be().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=d(n.canvasElement.parentElement),r=t.findByRole,e.next=3,r("combobox");case 3:a=e.sent,u.click(a);case 5:case"end":return e.stop()}}),e)})),Br=function(){var e=this,n=arguments;return new Promise((function(t,r){var a=qr.apply(e,n);function o(e){we(a,t,r,o,i,"next",e)}function i(e){we(a,t,r,o,i,"throw",e)}o(void 0)}))},function(e){return Br.apply(this,arguments)}),decorators:[function(n,t){return e.createElement("div",{className:f(Fr||(Fr=Ce(["\n height: 100vh;\n padding: 0;\n "])))},e.createElement(n,null))}]};export{Xr as ControlledSingleSelect,Zr as DisabledInput,_r as ExternalFilter,Kr as InitialLongComboboxOpen,Wr as LiveExample,Hr as MultiSelect,Yr as MultiSelectNoIcons,Vr as SingleSelect,Gr as default};
|