@heliux-org/design-system-core 0.0.54 → 0.0.55

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.
@@ -28,10 +28,10 @@ declare const _default: ((import("../../types/VibeComponent").default<SplitButto
28
28
  readonly XXS: "xxs";
29
29
  readonly XS: "xs";
30
30
  };
31
- colors: typeof import("../Button").ButtonColor;
31
+ colors: typeof import("..").ButtonColor;
32
32
  kinds: typeof import("..").ButtonType;
33
- inputTags: typeof import("../Button").ButtonInputType;
34
- dialogPaddingSizes: typeof import("../DialogContentContainer").DialogSize;
33
+ inputTags: typeof import("..").ButtonInputType;
34
+ dialogPaddingSizes: typeof import("..").DialogSize;
35
35
  }>) | (React.FC<SplitButtonProps> & Partial<{
36
36
  secondaryPositions: typeof SplitButtonSecondaryContentPosition;
37
37
  secondaryDialogPositions: typeof SplitButtonSecondaryContentPosition;
@@ -42,10 +42,10 @@ declare const _default: ((import("../../types/VibeComponent").default<SplitButto
42
42
  readonly XXS: "xxs";
43
43
  readonly XS: "xs";
44
44
  };
45
- colors: typeof import("../Button").ButtonColor;
45
+ colors: typeof import("..").ButtonColor;
46
46
  kinds: typeof import("..").ButtonType;
47
- inputTags: typeof import("../Button").ButtonInputType;
48
- dialogPaddingSizes: typeof import("../DialogContentContainer").DialogSize;
47
+ inputTags: typeof import("..").ButtonInputType;
48
+ dialogPaddingSizes: typeof import("..").DialogSize;
49
49
  }>)) & {
50
50
  secondaryPositions: typeof SplitButtonSecondaryContentPosition;
51
51
  secondaryDialogPositions: typeof SplitButtonSecondaryContentPosition;
@@ -56,10 +56,10 @@ declare const _default: ((import("../../types/VibeComponent").default<SplitButto
56
56
  readonly XXS: "xxs";
57
57
  readonly XS: "xs";
58
58
  };
59
- colors: typeof import("../Button").ButtonColor;
59
+ colors: typeof import("..").ButtonColor;
60
60
  kinds: typeof import("..").ButtonType;
61
- inputTags: typeof import("../Button").ButtonInputType;
62
- dialogPaddingSizes: typeof import("../DialogContentContainer").DialogSize;
61
+ inputTags: typeof import("..").ButtonInputType;
62
+ dialogPaddingSizes: typeof import("..").DialogSize;
63
63
  };
64
64
  export default _default;
65
65
  //# sourceMappingURL=SplitButton.d.ts.map
@@ -1,2 +1,2 @@
1
- import{objectSpread2 as e,slicedToArray as n,defineProperty as o,extends as t,toConsumableArray as r}from"../../../_virtual/_rollupPluginBabelHelpers.js";import a,{forwardRef as i,useRef as s,useMemo as l,useState as u,useCallback as c}from"react";import{getTestId as p,ComponentDefaultTestId as d}from"../../tests/testIds.js";import m from"classnames";import{SIZES as f}from"../../constants/sizes.js";import O,{createFilter as C,components as v}from"react-select";import M from"react-select/async";import{noop as g}from"lodash-es";import{WindowedMenuList as h}from"react-windowed-select";import"prop-types";import y from"./components/menu/menu.js";import w from"./components/DropdownIndicator/DropdownIndicator.js";import b from"./components/option/option.js";import S from"./components/singleValue/singleValue.js";import I from"./components/ClearIndicator/ClearIndicator.js";import j from"./components/MultiValueContainer/MultiValueContainer.js";import{DROPDOWN_CHIP_COLORS as D,DROPDOWN_MENU_PLACEMENT as P,DROPDOWN_MENU_POSITION as R,defaultCustomStyles as V,DROPDOWN_ID as E,ADD_AUTO_HEIGHT_COMPONENTS as W}from"./DropdownConstants.js";import x,{customTheme as N}from"./Dropdown.styles.js";import z from"./components/Control/Control.js";import L from"./components/menu/menu.module.scss.js";import T from"./Dropdown.module.scss.js";var k=i((function(i,f){var C=i.className,D=i.addCheckbox,P=i.optionWrapperClassName,R=i.singleValueWrapperClassName,V=i.dropdownMenuWrapperClassName,E=i.placeholder,k=i.disabled,A=i.readOnly,F=i.withReadOnlyStyle,B=i.onMenuOpen,H=i.onMenuClose,K=i.onFocus,U=i.onBlur,_=i.onChange,q=i.searchable,G=i.options,J=i.defaultValue,Q=i.value,X=i.noOptionsMessage,Y=i.openMenuOnFocus,Z=i.openMenuOnClick,$=i.clearable,ee=i.OptionRenderer,ne=i.optionRenderer,oe=i.ValueRenderer,te=i.valueRenderer,re=i.menuRenderer,ae=i.menuPlacement,ie=i.rtl,se=i.size,le=i.asyncOptions,ue=i.cacheOptions,ce=i.defaultOptions,pe=i.isVirtualized,de=i.menuPortalTarget,me=i.extraStyles,fe=i.maxMenuHeight,Oe=i.menuIsOpen,Ce=i.tabIndex,ve=i.id,Me=i.autoFocus,ge=i.multi,he=void 0!==ge&&ge,ye=i.multiline,we=void 0!==ye&&ye,be=i.onOptionRemove,Se=i.onOptionSelect,Ie=i.onClear,je=i.onInputChange,De=i.closeMenuOnSelect,Pe=void 0===De?!he:De,Re=i.closeMenuOnScroll,Ve=i.withMandatoryDefaultOptions,Ee=i.isOptionSelected,We=i.insideOverflowContainer,xe=i.insideOverflowWithTransformContainer,Ne=i.tooltipContent,ze=i.onKeyDown,Le=i.isLoading,Te=i.loadingMessage,ke=i.ariaLabel,Ae=i.tabSelectsValue,Fe=void 0===Ae||Ae,Be=i.popupsContainerSelector,He=i.filterOption,Ke=i.menuPosition,Ue=i["data-testid"],_e=s(),qe=de||Be&&document.querySelector(Be),Ge=l((function(){return J?Array.isArray(J)?J.map((function(n){return e(e({},n),{},{isMandatory:!0})})):e(e({},J),{},{isMandatory:!0}):J}),[J]),Je=u(Ge||[]),Qe=n(Je,2),Xe=Qe[1],Ye=ne||ee,Ze=te||oe,$e=!!Q,en=null!=Q?Q:Qe[0],nn=l((function(){return Array.isArray(en)?en.reduce((function(n,t){return e(e({},n),{},o({},t.value,t))}),{}):{}}),[en]),on=l((function(){return ke||"".concat(A?"Readonly ":""," ").concat(Ne," ").concat(Array.isArray(en)?"Selected: ".concat(en.map((function(e){return e.label})).join(", ")):"Select")}),[ke,A,en,Ne]),tn=he?en:Q,rn=l((function(){var t=x({size:se,rtl:ie,insideOverflowContainer:We,controlRef:_e,insideOverflowWithTransformContainer:xe}),r=me(t),a=Object.entries(r).reduce((function(r,a){var i=n(a,2),s=i[0],l=i[1];return e(e({},r),{},o({},s,(function(e,n){var o=t[s]?t[s](e,n):e;return l(o,n)})))}),{});if(he){we&&W.forEach((function(n){var o=a[n];a[n]=function(n,t){return e(e({},o(n,t)),{},{height:"auto"})}}));var i=a.valueContainer;a.valueContainer=function(n,o){return e(e({},i(n,o)),{},{paddingLeft:6})}}return a}),[se,ie,We,xe,me,he,we]),an=c((function(e){return a.createElement(y,t({},e,{Renderer:re,dropdownMenuWrapperClassName:V}))}),[V,re]),sn=c((function(e){return a.createElement(w,t({},e,{size:se}))}),[se]);c((function(e){return a.createElement(b,t({},e,{Renderer:Ye,optionWrapperClassName:P}))}),[Ye,P]);var ln=c((function(e){return a.createElement(v.Input,t({},e,{"aria-label":"Dropdown input"}))}),[]),un=c((function(e){return a.createElement(S,t({},e,{readOnly:A,Renderer:Ze,selectedOption:en[0],singleValueWrapperClassName:R}))}),[Ze,A,en,R]),cn=c((function(e){return a.createElement(I,t({},e,{size:se}))}),[se]),pn=l((function(){return function(e,n){be&&be(nn[e]);var o=en.filter((function(n){return n.value!==e}));_&&_(o,n),Xe(o)}}),[_,be,en,nn]),dn=l((function(){return{selectedOptions:en,onSelectedDelete:pn,isMultiline:we,insideOverflowContainer:We,insideOverflowWithTransformContainer:xe,controlRef:_e,tooltipContent:Ne,popupsContainerSelector:Be}}),[en,pn,we,We,xe,Ne,Be]),mn=le?M:O,fn=e({},le&&e({loadOptions:le,cacheOptions:ue},ce&&{defaultOptions:ce})),On=e(e({},!le&&{options:G}),he&&{isMulti:!0}),Cn=c((function(e){var n,o=e.target;return(null==o||null===(n=o.parentElement)||void 0===n||!n.classList.contains(L.dropdownMenuWrapper))&&(Re||We||xe)}),[We,xe,Re]),vn=c((function(e){var n=e.data,o=e.isSelected;return a.createElement("div",t({ref:e.innerRef},e.innerProps,{className:o?"selected-option":""}),a.createElement("div",{style:{display:"flex",alignItems:"center",marginLeft:"0px"}},D&&a.createElement("input",{type:"checkbox",checked:o,onChange:function(){return function(e,n){if(n.target.checked){var o=[].concat(r(en),[e]);_&&_(o,n),Xe(o)}else{var t=en.filter((function(n){return n.value!==e.value}));_&&_(t,n),Xe(t)}}(n,{target:{checked:!o}})}}),a.createElement(b,e)))}),[en,_]);return a.createElement(mn,t({className:m(T.dropdown,C),selectProps:dn,components:e(e({DropdownIndicator:sn,Menu:an,ClearIndicator:cn,Input:ln,Option:vn,Control:z,SingleValue:un},he&&{MultiValue:g,ValueContainer:j}),pe&&{MenuList:h}),closeMenuOnScroll:Cn,size:se,noOptionsMessage:X,placeholder:E,isDisabled:k,isClearable:!A&&$,isSearchable:!A&&q,readOnly:A,withReadOnlyStyle:F,"aria-readonly":A,"aria-label":on,"aria-details":Ne,defaultValue:J,value:tn,onMenuOpen:B,onMenuClose:H,onFocus:K,onBlur:U,onChange:function(e,n){switch(_&&_(e,n),n.action){case"select-option":var o=he?n.option:e;Se&&Se(o),$e||Xe([].concat(r(en),[o]));break;case"clear":Ie&&Ie(),$e||Xe(Ve?Ge:[])}},onKeyDown:ze,onInputChange:je,openMenuOnFocus:Y,openMenuOnClick:Z,isRtl:ie,styles:rn,theme:N,maxMenuHeight:fe,menuPortalTarget:qe,menuPlacement:ae,menuPosition:Ke,menuIsOpen:!A&&Oe,tabIndex:Ce,id:ve,"data-testid":Ue||p(d.DROPDOWN,ve),autoFocus:Me,closeMenuOnSelect:Pe,ref:f,withMandatoryDefaultOptions:Ve,isOptionSelected:Ee,isLoading:Le,loadingMessage:Te,tabSelectsValue:Fe,filterOption:He},fn,On))}));Object.assign(k,{size:f,sizes:f,tagColors:D,menuPlacements:P,menuPositions:R,createFilter:C}),k.defaultProps={className:"",optionWrapperClassName:void 0,addCheckbox:!1,dropdownMenuWrapperClassName:void 0,singleValueWrapperClassName:void 0,placeholder:"",onMenuOpen:g,onMenuClose:g,onKeyDown:g,onFocus:g,onBlur:g,onChange:g,onInputChange:g,searchable:!0,options:[],menuPlacement:k.menuPlacements.BOTTOM,menuPosition:k.menuPositions.ABSOLUTE,noOptionsMessage:g,clearable:!0,size:f.MEDIUM,extraStyles:V,tabIndex:"0",onOptionRemove:void 0,id:E,autoFocus:!1,closeMenuOnSelect:void 0,closeMenuOnScroll:!1,ref:void 0,withMandatoryDefaultOptions:!1,insideOverflowContainer:!1,insideOverflowWithTransformContainer:!1,tooltipContent:"",disabled:!1,readOnly:!1,isLoading:!1,loadingMessage:void 0,ariaLabel:void 0,filterOption:void 0};export{k as default};
1
+ import{objectSpread2 as e,slicedToArray as n,defineProperty as o,extends as t,toConsumableArray as r}from"../../../_virtual/_rollupPluginBabelHelpers.js";import a,{forwardRef as i,useRef as s,useMemo as l,useState as u,useCallback as c}from"react";import{getTestId as p,ComponentDefaultTestId as d}from"../../tests/testIds.js";import m from"classnames";import{SIZES as f}from"../../constants/sizes.js";import O,{createFilter as C,components as v}from"react-select";import M from"react-select/async";import{noop as g}from"lodash-es";import{WindowedMenuList as h}from"react-windowed-select";import"prop-types";import y from"./components/menu/menu.js";import w from"./components/DropdownIndicator/DropdownIndicator.js";import b from"./components/option/option.js";import S from"./components/singleValue/singleValue.js";import I from"./components/ClearIndicator/ClearIndicator.js";import j from"./components/MultiValueContainer/MultiValueContainer.js";import{DROPDOWN_CHIP_COLORS as D,DROPDOWN_MENU_PLACEMENT as R,DROPDOWN_MENU_POSITION as P,defaultCustomStyles as V,DROPDOWN_ID as E,ADD_AUTO_HEIGHT_COMPONENTS as W}from"./DropdownConstants.js";import x,{customTheme as N}from"./Dropdown.styles.js";import z from"./components/Control/Control.js";import L from"./components/menu/menu.module.scss.js";import T from"./Dropdown.module.scss.js";var k=i((function(i,f){var C=i.className,D=i.addCheckbox,R=i.optionWrapperClassName,P=i.singleValueWrapperClassName,V=i.dropdownMenuWrapperClassName,E=i.placeholder,k=i.disabled,A=i.readOnly,F=i.withReadOnlyStyle,B=i.onMenuOpen,H=i.onMenuClose,K=i.onFocus,U=i.onBlur,_=i.onChange,q=i.searchable,G=i.options,J=i.defaultValue,Q=i.value,X=i.noOptionsMessage,Y=i.openMenuOnFocus,Z=i.openMenuOnClick,$=i.clearable,ee=i.OptionRenderer,ne=i.optionRenderer,oe=i.ValueRenderer,te=i.valueRenderer,re=i.menuRenderer,ae=i.menuPlacement,ie=i.rtl,se=i.size,le=i.asyncOptions,ue=i.cacheOptions,ce=i.defaultOptions,pe=i.isVirtualized,de=i.menuPortalTarget,me=i.extraStyles,fe=i.maxMenuHeight,Oe=i.menuIsOpen,Ce=i.tabIndex,ve=i.id,Me=i.autoFocus,ge=i.multi,he=void 0!==ge&&ge,ye=i.multiline,we=void 0!==ye&&ye,be=i.onOptionRemove,Se=i.onOptionSelect,Ie=i.onClear,je=i.onInputChange,De=i.closeMenuOnSelect,Re=void 0===De?!he:De,Pe=i.closeMenuOnScroll,Ve=i.withMandatoryDefaultOptions,Ee=i.isOptionSelected,We=i.insideOverflowContainer,xe=i.insideOverflowWithTransformContainer,Ne=i.tooltipContent,ze=i.onKeyDown,Le=i.isLoading,Te=i.loadingMessage,ke=i.ariaLabel,Ae=i.tabSelectsValue,Fe=void 0===Ae||Ae,Be=i.popupsContainerSelector,He=i.filterOption,Ke=i.menuPosition,Ue=i["data-testid"],_e=s(),qe=de||Be&&document.querySelector(Be),Ge=l((function(){return J?Array.isArray(J)?J.map((function(n){return e(e({},n),{},{isMandatory:!0})})):e(e({},J),{},{isMandatory:!0}):J}),[J]),Je=u(Ge||[]),Qe=n(Je,2),Xe=Qe[1],Ye=ne||ee,Ze=te||oe,$e=!!Q,en=null!=Q?Q:Qe[0],nn=l((function(){return Array.isArray(en)?en.reduce((function(n,t){return e(e({},n),{},o({},t.value,t))}),{}):{}}),[en]),on=l((function(){return ke||"".concat(A?"Readonly ":""," ").concat(Ne," ").concat(Array.isArray(en)?"Selected: ".concat(en.map((function(e){return e.label})).join(", ")):"Select")}),[ke,A,en,Ne]),tn=he?en:Q,rn=l((function(){var t=x({size:se,rtl:ie,insideOverflowContainer:We,controlRef:_e,insideOverflowWithTransformContainer:xe}),r=me(t),a=Object.entries(r).reduce((function(r,a){var i=n(a,2),s=i[0],l=i[1];return e(e({},r),{},o({},s,(function(e,n){var o=t[s]?t[s](e,n):e;return l(o,n)})))}),{});if(he){we&&W.forEach((function(n){var o=a[n];a[n]=function(n,t){return e(e({},o(n,t)),{},{height:"auto"})}}));var i=a.valueContainer;a.valueContainer=function(n,o){return e(e({},i(n,o)),{},{paddingLeft:6})}}return a}),[se,ie,We,xe,me,he,we]),an=c((function(e){return a.createElement(y,t({},e,{Renderer:re,dropdownMenuWrapperClassName:V}))}),[V,re]),sn=c((function(e){return a.createElement(w,t({},e,{size:se}))}),[se]);c((function(e){return a.createElement(b,t({},e,{Renderer:Ye,optionWrapperClassName:R}))}),[Ye,R]);var ln=c((function(e){return a.createElement(v.Input,t({},e,{"aria-label":"Dropdown input"}))}),[]),un=c((function(e){return a.createElement(S,t({},e,{readOnly:A,Renderer:Ze,selectedOption:en[0],singleValueWrapperClassName:P}))}),[Ze,A,en,P]),cn=c((function(e){return a.createElement(I,t({},e,{size:se}))}),[se]),pn=l((function(){return function(e,n){be&&be(nn[e]);var o=en.filter((function(n){return n.value!==e}));_&&_(o,n),Xe(o)}}),[_,be,en,nn]),dn=l((function(){return{selectedOptions:en,onSelectedDelete:pn,isMultiline:we,insideOverflowContainer:We,insideOverflowWithTransformContainer:xe,controlRef:_e,tooltipContent:Ne,popupsContainerSelector:Be}}),[en,pn,we,We,xe,Ne,Be]),mn=le?M:O,fn=e({},le&&e({loadOptions:le,cacheOptions:ue},ce&&{defaultOptions:ce})),On=e(e({},!le&&{options:G}),he&&{isMulti:!0}),Cn=c((function(e){var n,o=e.target;return(null==o||null===(n=o.parentElement)||void 0===n||!n.classList.contains(L.dropdownMenuWrapper))&&(Pe||We||xe)}),[We,xe,Pe]),vn=c((function(e){var n=e.data,o=e.isSelected;return a.createElement("div",t({ref:e.innerRef},e.innerProps,{className:o?"selected-option":""}),a.createElement("div",{style:{display:"flex",alignItems:"center",marginLeft:"0px"}},D&&a.createElement("input",{type:"checkbox",checked:o,onChange:function(){return function(e,n){if(n.target.checked){var o=[].concat(r(en),[e]);_&&_(o,n),Xe(o)}else{var t=en.filter((function(n){return n.value!==e.value}));_&&_(t,n),Xe(t)}}(n,{target:{checked:!o}})}}),a.createElement(b,e)))}),[en,_]);return a.createElement(mn,t({className:m(T.dropdown,C),selectProps:dn,components:e(e({DropdownIndicator:sn,Menu:an,ClearIndicator:cn,Input:ln,Option:vn,Control:z,SingleValue:un},he&&{MultiValue:g,ValueContainer:j}),pe&&{MenuList:h}),closeMenuOnScroll:Cn,size:se,noOptionsMessage:X,placeholder:E,isDisabled:k,isClearable:!A&&$,isSearchable:!A&&q,readOnly:A,withReadOnlyStyle:F,"aria-readonly":A,"aria-label":on,"aria-details":Ne,defaultValue:J,value:tn,onMenuOpen:B,onMenuClose:H,onFocus:K,onBlur:U,onChange:function(e,n){switch(_&&_(e,n),n.action){case"select-option":var o=he?n.option:e;Se&&Se(o),$e||Xe([].concat(r(en),[o]));break;case"clear":Ie&&Ie(),$e||Xe(Ve?Ge:[])}},onKeyDown:ze,onInputChange:je,openMenuOnFocus:Y,openMenuOnClick:Z,isRtl:ie,styles:rn,theme:N,maxMenuHeight:fe,menuPortalTarget:qe,menuPlacement:ae,menuPosition:Ke,menuIsOpen:!A&&Oe,tabIndex:Ce,id:ve,"data-testid":Ue||p(d.DROPDOWN,ve),autoFocus:Me,closeMenuOnSelect:Re,ref:f,withMandatoryDefaultOptions:Ve,isOptionSelected:Ee,isLoading:Le,loadingMessage:Te,tabSelectsValue:Fe,filterOption:He},fn,On))}));Object.assign(k,{size:f,sizes:f,tagColors:D,menuPlacements:R,menuPositions:P,createFilter:C}),k.defaultProps={className:"",optionWrapperClassName:void 0,addCheckbox:!1,dropdownMenuWrapperClassName:void 0,singleValueWrapperClassName:void 0,placeholder:"",onMenuOpen:g,onMenuClose:g,onKeyDown:g,onFocus:g,onBlur:g,onChange:g,onInputChange:g,searchable:!0,options:[],menuPlacement:k.menuPlacements.BOTTOM,menuPosition:P.ABSOLUTE,noOptionsMessage:g,clearable:!0,size:f.MEDIUM,extraStyles:V,tabIndex:"0",onOptionRemove:void 0,id:E,autoFocus:!1,closeMenuOnSelect:void 0,closeMenuOnScroll:!1,ref:void 0,withMandatoryDefaultOptions:!1,insideOverflowContainer:!1,insideOverflowWithTransformContainer:!1,tooltipContent:"",disabled:!1,readOnly:!1,isLoading:!1,loadingMessage:void 0,ariaLabel:void 0,filterOption:void 0};export{k as default};
2
2
  //# sourceMappingURL=Dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../../../../src/components/Dropdown/Dropdown.jsx"],"sourcesContent":["/* eslint-disable react/require-default-props,react/forbid-prop-types */\nimport { ComponentDefaultTestId, getTestId } from \"../../tests/test-ids-utils\";\nimport cx from \"classnames\";\nimport { SIZES } from \"../../constants/sizes\";\nimport { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\nimport Select, { components, createFilter } from \"react-select\";\nimport AsyncSelect from \"react-select/async\";\nimport { noop as NOOP } from \"lodash-es\";\nimport { WindowedMenuList } from \"react-windowed-select\";\nimport PropTypes from \"prop-types\";\nimport MenuComponent from \"./components/menu/menu\";\nimport DropdownIndicatorComponent from \"./components/DropdownIndicator/DropdownIndicator\";\nimport OptionComponent from \"./components/option/option\";\nimport SingleValueComponent from \"./components/singleValue/singleValue\";\nimport ClearIndicatorComponent from \"./components/ClearIndicator/ClearIndicator\";\nimport MultiValueContainer from \"./components/MultiValueContainer/MultiValueContainer\";\nimport {\n ADD_AUTO_HEIGHT_COMPONENTS,\n defaultCustomStyles,\n DROPDOWN_CHIP_COLORS,\n DROPDOWN_ID,\n DROPDOWN_MENU_PLACEMENT,\n DROPDOWN_MENU_POSITION,\n} from \"./DropdownConstants\";\nimport generateBaseStyles, { customTheme } from \"./Dropdown.styles\";\nimport Control from \"./components/Control/Control\";\nimport menuStyles from \"./components/menu/menu.module.scss\";\nimport styles from \"./Dropdown.module.scss\";\n\nconst Dropdown = forwardRef(\n (\n {\n className,\n addCheckbox,\n optionWrapperClassName,\n singleValueWrapperClassName,\n dropdownMenuWrapperClassName,\n placeholder,\n disabled,\n readOnly,\n withReadOnlyStyle,\n onMenuOpen,\n onMenuClose,\n onFocus,\n onBlur,\n onChange: customOnChange,\n searchable,\n options,\n defaultValue,\n value: customValue,\n noOptionsMessage,\n openMenuOnFocus,\n openMenuOnClick,\n clearable,\n OptionRenderer,\n optionRenderer,\n ValueRenderer,\n valueRenderer,\n menuRenderer,\n menuPlacement,\n rtl,\n size,\n asyncOptions,\n cacheOptions,\n defaultOptions,\n isVirtualized,\n menuPortalTarget,\n extraStyles,\n maxMenuHeight,\n menuIsOpen,\n tabIndex,\n id,\n autoFocus,\n multi = false,\n multiline = false,\n onOptionRemove: customOnOptionRemove,\n onOptionSelect,\n onClear,\n onInputChange,\n closeMenuOnSelect = !multi,\n closeMenuOnScroll: customCloseMenuOnScroll,\n withMandatoryDefaultOptions,\n isOptionSelected,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n tooltipContent,\n onKeyDown,\n isLoading,\n loadingMessage,\n ariaLabel,\n tabSelectsValue = true,\n popupsContainerSelector,\n filterOption,\n menuPosition,\n \"data-testid\": dataTestId,\n },\n ref\n ) => {\n const controlRef = useRef();\n const overrideMenuPortalTarget =\n menuPortalTarget ||\n (popupsContainerSelector &&\n document.querySelector(popupsContainerSelector));\n const overrideDefaultValue = useMemo(() => {\n if (defaultValue) {\n return Array.isArray(defaultValue)\n ? defaultValue.map((df) => ({ ...df, isMandatory: true }))\n : { ...defaultValue, isMandatory: true };\n }\n\n return defaultValue;\n }, [defaultValue]);\n\n const [selected, setSelected] = useState(overrideDefaultValue || []);\n const finalOptionRenderer = optionRenderer || OptionRenderer;\n const finalValueRenderer = valueRenderer || ValueRenderer;\n const isControlled = !!customValue;\n const selectedOptions = customValue ?? selected;\n const selectedOptionsMap = useMemo(() => {\n if (Array.isArray(selectedOptions)) {\n return selectedOptions.reduce(\n (acc, option) => ({ ...acc, [option.value]: option }),\n {}\n );\n }\n return {};\n }, [selectedOptions]);\n\n const overrideAriaLabel = useMemo(() => {\n return (\n ariaLabel ||\n `${readOnly ? \"Readonly \" : \"\"} ${tooltipContent} ${\n Array.isArray(selectedOptions)\n ? `Selected: ${selectedOptions.map((o) => o.label).join(\", \")}`\n : \"Select\"\n }`\n );\n }, [ariaLabel, readOnly, selectedOptions, tooltipContent]);\n const value = multi ? selectedOptions : customValue;\n\n const inlineStyles = useMemo(() => {\n // We first want to get the default stylized groups (e.g. \"container\", \"menu\").\n const baseStyles = generateBaseStyles({\n size,\n rtl,\n insideOverflowContainer,\n controlRef,\n insideOverflowWithTransformContainer,\n });\n\n // Then we want to run the consumer's root-level custom styles with our \"base\" override groups.\n const customStyles = extraStyles(baseStyles);\n\n // Lastly, we create a style groups object that makes sure we run each custom group with our basic overrides.\n const mergedStyles = Object.entries(customStyles).reduce(\n (accumulator, [stylesGroup, stylesFn]) => {\n return {\n ...accumulator,\n [stylesGroup]: (defaultStyles, state) => {\n const provided = baseStyles[stylesGroup]\n ? baseStyles[stylesGroup](defaultStyles, state)\n : defaultStyles;\n\n return stylesFn(provided, state);\n },\n };\n },\n {}\n );\n\n if (multi) {\n if (multiline) {\n ADD_AUTO_HEIGHT_COMPONENTS.forEach((component) => {\n const original = mergedStyles[component];\n mergedStyles[component] = (provided, state) => ({\n ...original(provided, state),\n height: \"auto\",\n });\n });\n }\n\n const originalValueContainer = mergedStyles.valueContainer;\n mergedStyles.valueContainer = (provided, state) => ({\n ...originalValueContainer(provided, state),\n paddingLeft: 6,\n });\n }\n\n return mergedStyles;\n }, [\n size,\n rtl,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n extraStyles,\n multi,\n multiline,\n ]);\n\n const Menu = useCallback(\n (props) => (\n <MenuComponent\n {...props}\n Renderer={menuRenderer}\n dropdownMenuWrapperClassName={dropdownMenuWrapperClassName}\n />\n ),\n [dropdownMenuWrapperClassName, menuRenderer]\n );\n\n const DropdownIndicator = useCallback(\n (props) => <DropdownIndicatorComponent {...props} size={size} />,\n [size]\n );\n\n const Option = useCallback(\n (props) => (\n <OptionComponent\n {...props}\n Renderer={finalOptionRenderer}\n optionWrapperClassName={optionWrapperClassName}\n />\n ),\n [finalOptionRenderer, optionWrapperClassName]\n );\n\n const Input = useCallback(\n (props) => <components.Input {...props} aria-label=\"Dropdown input\" />,\n []\n );\n\n const SingleValue = useCallback(\n (props) => (\n <SingleValueComponent\n {...props}\n readOnly={readOnly}\n Renderer={finalValueRenderer}\n selectedOption={selectedOptions[0]}\n singleValueWrapperClassName={singleValueWrapperClassName}\n />\n ),\n [\n finalValueRenderer,\n readOnly,\n selectedOptions,\n singleValueWrapperClassName,\n ]\n );\n\n const ClearIndicator = useCallback(\n (props) => <ClearIndicatorComponent {...props} size={size} />,\n [size]\n );\n\n const onOptionRemove = useMemo(() => {\n return function (optionValue, e) {\n if (customOnOptionRemove) {\n customOnOptionRemove(selectedOptionsMap[optionValue]);\n }\n const newSelectedOptions = selectedOptions.filter(\n (option) => option.value !== optionValue\n );\n if (customOnChange) {\n customOnChange(newSelectedOptions, e);\n }\n setSelected(newSelectedOptions);\n };\n }, [\n customOnChange,\n customOnOptionRemove,\n selectedOptions,\n selectedOptionsMap,\n ]);\n\n const customProps = useMemo(\n () => ({\n selectedOptions,\n onSelectedDelete: onOptionRemove,\n isMultiline: multiline,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n controlRef,\n tooltipContent,\n popupsContainerSelector,\n }),\n [\n selectedOptions,\n onOptionRemove,\n multiline,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n tooltipContent,\n popupsContainerSelector,\n ]\n );\n const onChange = (option, event) => {\n if (customOnChange) {\n customOnChange(option, event);\n }\n\n switch (event.action) {\n case \"select-option\": {\n const selectedOption = multi ? event.option : option;\n\n if (onOptionSelect) {\n onOptionSelect(selectedOption);\n }\n\n if (!isControlled) {\n setSelected([...selectedOptions, selectedOption]);\n }\n break;\n }\n\n case \"clear\":\n if (onClear) {\n onClear();\n }\n\n if (!isControlled) {\n if (withMandatoryDefaultOptions) setSelected(overrideDefaultValue);\n else setSelected([]);\n }\n break;\n }\n };\n\n const DropDownComponent = asyncOptions ? AsyncSelect : Select;\n\n const asyncAdditions = {\n ...(asyncOptions && {\n loadOptions: asyncOptions,\n cacheOptions,\n ...(defaultOptions && { defaultOptions }),\n }),\n };\n\n const additions = {\n ...(!asyncOptions && { options }),\n ...(multi && {\n isMulti: true,\n }),\n };\n\n const closeMenuOnScroll = useCallback(\n (event) => {\n const scrolledElement = event.target;\n if (\n scrolledElement?.parentElement?.classList.contains(\n menuStyles.dropdownMenuWrapper\n )\n ) {\n return false;\n }\n return (\n customCloseMenuOnScroll ||\n insideOverflowContainer ||\n insideOverflowWithTransformContainer\n );\n },\n [\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n customCloseMenuOnScroll,\n ]\n );\n\n const CustomOption = useCallback(\n (props) => {\n const { data, isSelected, innerRef, innerProps } = props;\n\n const handleCheckboxChange = (option, event) => {\n if (event.target.checked) {\n // Add the option to selected options\n const newSelectedOptions = [...selectedOptions, option];\n if (customOnChange) {\n customOnChange(newSelectedOptions, event);\n }\n setSelected(newSelectedOptions);\n } else {\n // Remove the option from selected options\n const newSelectedOptions = selectedOptions.filter(\n (selectedOption) => selectedOption.value !== option.value\n );\n if (customOnChange) {\n customOnChange(newSelectedOptions, event);\n }\n setSelected(newSelectedOptions);\n }\n };\n\n return (\n <div\n ref={innerRef}\n {...innerProps}\n className={isSelected ? \"selected-option\" : \"\"}\n >\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n marginLeft: \"0px\",\n }}\n >\n {addCheckbox && (\n <input\n type=\"checkbox\"\n checked={isSelected}\n onChange={() =>\n handleCheckboxChange(data, {\n target: { checked: !isSelected },\n })\n }\n />\n )}\n <OptionComponent {...props} />\n </div>\n </div>\n );\n },\n [selectedOptions, customOnChange]\n );\n\n return (\n <DropDownComponent\n className={cx(styles.dropdown, className)}\n selectProps={customProps}\n components={{\n DropdownIndicator,\n Menu,\n ClearIndicator,\n Input,\n Option: CustomOption,\n Control,\n SingleValue,\n ...(multi && {\n MultiValue: NOOP, // We need it for react-select to behave nice with \"multi\"\n ValueContainer: MultiValueContainer,\n }),\n ...(isVirtualized && { MenuList: WindowedMenuList }),\n }}\n // When inside scroll we set the menu position by js and we can't follow the drop down location while use scrolling\n closeMenuOnScroll={closeMenuOnScroll}\n size={size}\n noOptionsMessage={noOptionsMessage}\n placeholder={placeholder}\n isDisabled={disabled}\n isClearable={!readOnly && clearable}\n isSearchable={!readOnly && searchable}\n readOnly={readOnly}\n withReadOnlyStyle={withReadOnlyStyle}\n aria-readonly={readOnly}\n aria-label={overrideAriaLabel}\n aria-details={tooltipContent}\n defaultValue={defaultValue}\n value={value}\n onMenuOpen={onMenuOpen}\n onMenuClose={onMenuClose}\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={onChange}\n onKeyDown={onKeyDown}\n onInputChange={onInputChange}\n openMenuOnFocus={openMenuOnFocus}\n openMenuOnClick={openMenuOnClick}\n isRtl={rtl}\n styles={inlineStyles}\n theme={customTheme}\n maxMenuHeight={maxMenuHeight}\n menuPortalTarget={overrideMenuPortalTarget}\n menuPlacement={menuPlacement}\n menuPosition={menuPosition}\n menuIsOpen={!readOnly && menuIsOpen}\n tabIndex={tabIndex}\n id={id}\n data-testid={\n dataTestId || getTestId(ComponentDefaultTestId.DROPDOWN, id)\n }\n autoFocus={autoFocus}\n closeMenuOnSelect={closeMenuOnSelect}\n ref={ref}\n withMandatoryDefaultOptions={withMandatoryDefaultOptions}\n isOptionSelected={isOptionSelected}\n isLoading={isLoading}\n loadingMessage={loadingMessage}\n tabSelectsValue={tabSelectsValue}\n filterOption={filterOption}\n {...asyncAdditions}\n {...additions}\n />\n );\n }\n);\n\nObject.assign(Dropdown, {\n // TODO Deprecate Dropdown.size in the next major version - use Dropdown.sizes instead\n size: SIZES,\n sizes: SIZES,\n tagColors: DROPDOWN_CHIP_COLORS,\n menuPlacements: DROPDOWN_MENU_PLACEMENT,\n menuPositions: DROPDOWN_MENU_POSITION,\n createFilter: createFilter,\n});\n\nDropdown.defaultProps = {\n className: \"\",\n optionWrapperClassName: undefined,\n addCheckbox: false,\n dropdownMenuWrapperClassName: undefined,\n singleValueWrapperClassName: undefined,\n placeholder: \"\",\n onMenuOpen: NOOP,\n onMenuClose: NOOP,\n onKeyDown: NOOP,\n onFocus: NOOP,\n onBlur: NOOP,\n onChange: NOOP,\n onInputChange: NOOP,\n searchable: true,\n options: [],\n menuPlacement: Dropdown.menuPlacements.BOTTOM,\n menuPosition: Dropdown.menuPositions.ABSOLUTE,\n noOptionsMessage: NOOP,\n clearable: true,\n size: SIZES.MEDIUM,\n extraStyles: defaultCustomStyles,\n tabIndex: \"0\",\n onOptionRemove: undefined,\n id: DROPDOWN_ID,\n autoFocus: false,\n closeMenuOnSelect: undefined,\n closeMenuOnScroll: false,\n ref: undefined,\n withMandatoryDefaultOptions: false,\n insideOverflowContainer: false,\n insideOverflowWithTransformContainer: false,\n tooltipContent: \"\",\n disabled: false,\n readOnly: false,\n isLoading: false,\n loadingMessage: undefined,\n ariaLabel: undefined,\n filterOption: undefined,\n};\n\nDropdown.propTypes = {\n /**\n * Custom style\n */\n addCheckbox: PropTypes.bool,\n className: PropTypes.string,\n /** ClassName to be added to dropdown option wrapper (dropdown-wrapper__option--reset) */\n optionWrapperClassName: PropTypes.string,\n /** ClassName to be added to dropdown single value wrapper (dropdown-wrapper__single-value--reset) */\n singleValueWrapperClassName: PropTypes.string,\n /** ClassName to be added to dropdown menu wrapper (dropdown-menu-wrapper) */\n dropdownMenuWrapperClassName: PropTypes.string,\n /**\n * Placeholder to show when no value was selected\n */\n placeholder: PropTypes.string,\n /**\n * If set to true, dropdown will be disabled\n */\n disabled: PropTypes.bool,\n /**\n * If set to true, dropdown won't be editable\n */\n readOnly: PropTypes.bool,\n /**\n * Called when menu is opened\n */\n onMenuOpen: PropTypes.func,\n /**\n * Called when menu is closed\n */\n onMenuClose: PropTypes.func,\n /**\n * Called when key is pressed in the dropdown\n */\n onKeyDown: PropTypes.func,\n /**\n * Called when focused\n */\n onFocus: PropTypes.func,\n /**\n * Called when blurred\n */\n onBlur: PropTypes.func,\n /**\n * Called when selected value has changed\n */\n onChange: PropTypes.func,\n /**\n * Called when the dropdown's input changes.\n */\n onInputChange: PropTypes.func,\n /**\n * If true, search in options will be enabled\n */\n searchable: PropTypes.bool,\n /**\n * The dropdown options\n */\n options: PropTypes.arrayOf(PropTypes.object),\n /**\n * Text to display when there are no options\n */\n noOptionsMessage: PropTypes.func,\n /**\n * If set to true, the menu will open when focused\n */\n openMenuOnFocus: PropTypes.bool,\n /**\n * If set to true, the menu will open when clicked\n */\n openMenuOnClick: PropTypes.bool,\n /**\n * If set to true, clear button will be added\n */\n clearable: PropTypes.bool,\n /**\n * custom option render function\n */\n optionRenderer: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n /**\n * custom value render function\n */\n valueRenderer: PropTypes.func,\n /**\n * custom menu render function\n */\n menuRenderer: PropTypes.func,\n /**\n * Default placement of the Dropdown menu in relation to its control. Use \"auto\" to flip the menu when there isn't enough space below the control.\n */\n menuPlacement: PropTypes.oneOf(Object.values(DROPDOWN_MENU_PLACEMENT)),\n /**\n * The CSS position value of the menu, when \"fixed\" extra layout management might be required\n * Fixed position can be used to solve the issue of positioning Dropdown inside overflow container like Modal or Dialog\n */\n menuPosition: PropTypes.oneOf(Object.values(DROPDOWN_MENU_POSITION)),\n /**\n * If set to true, the dropdown will be in Right to Left mode\n */\n rtl: PropTypes.bool,\n /**\n * Set default selected value\n */\n defaultValue: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n })\n ),\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n }),\n ]),\n /**\n * The component's value.\n * When passed, makes this a [controlled](https://reactjs.org/docs/forms.html#controlled-components) component.\n */\n value: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n })\n ),\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n }),\n ]),\n /**\n * Select menu size from `Dropdown.size` - Dropdown.sizes.LARGE | Dropdown.sizes.MEDIUM | Dropdown.sizes.SMALL\n */\n size: PropTypes.string,\n /**\n * If provided Dropdown will work in async mode. Can be either promise or callback\n */\n asyncOptions: PropTypes.oneOfType([\n PropTypes.func, // callback\n PropTypes.shape({\n then: PropTypes.func.isRequired,\n catch: PropTypes.func.isRequired,\n }), // Promise\n ]),\n /**\n * If set to true, fetched async options will be cached\n */\n cacheOptions: PropTypes.bool,\n /**\n * If set, `asyncOptions` will be invoked with its value on mount and the resolved results will be loaded\n */\n defaultOptions: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.arrayOf(PropTypes.object),\n ]),\n /**\n * If set to true, the menu will use virtualization. Virtualized async works only with\n */\n isVirtualized: PropTypes.bool,\n /**\n * Whether the menu should use a portal, and where it should attach\n */\n menuPortalTarget: PropTypes.oneOfType([PropTypes.element, PropTypes.object]),\n /**\n * Custom function to override existing styles (similar to `react-select`'s `style` prop), for example: `base => ({...base, color: 'red'})`, where `base` is the component's default styles\n */\n extraStyles: PropTypes.func,\n /**\n * Maximum height of the menu before scrolling\n */\n maxMenuHeight: PropTypes.number,\n /**\n * Tab index for keyboard navigation purposes\n */\n tabIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n /**\n * ID for the select container\n */\n id: PropTypes.string,\n /**\n * focusAuto when component mount\n */\n autoFocus: PropTypes.bool,\n /**\n * If set to true, the dropdown will be in multi-select mode.\n * When in multi-select mode, the selected value will be an array,\n * and it will be displayed as our [`<Tags>`](/?path=/docs/components-tags--sandbox) component.\n */\n multi: PropTypes.bool,\n /**\n * If set to true together with `multi`, it will make the dropdown expand to multiple lines when new values are selected.\n */\n multiline: PropTypes.bool,\n /**\n Pass closeMenuOnSelect to close the multi choose any time an options is chosen.\n */\n closeMenuOnSelect: PropTypes.bool,\n // Won't be needed once we upgrade to react-select ^5.5 https://github.com/JedWatson/react-select/issues/4088#issuecomment-1276835389\n /**\n * If menu should be closed on scroll - helpful for some tricky use cases\n * @default false, but true when insideOverflowContainer or insideOverflowWithTransformContainer are true\n */\n closeMenuOnScroll: PropTypes.bool,\n /**\n * callback to be called when `multiline` is `true` and the option is removed\n */\n onOptionRemove: PropTypes.func,\n /**\n Pass Ref for reference of the actual dropdown component\n */\n ref: PropTypes.func,\n /**\n The options set by default will be set as mandatory and the user will not be able to cancel their selection\n */\n withMandatoryDefaultOptions: PropTypes.bool,\n /**\n * Override the built-in logic to detect whether an option is selected.\n */\n isOptionSelected: PropTypes.func,\n /**\n * For display the drop down menu in overflow hidden/scroll container.\n */\n insideOverflowContainer: PropTypes.bool,\n /**\n * For display the drop down menu in overflow hidden/scroll container which contains transform css function usage.\n */\n insideOverflowWithTransformContainer: PropTypes.bool,\n /**\n * When content is passed, the dropdown will include a tooltip on the dropdown's value.\n */\n tooltipContent: PropTypes.string,\n /**\n * Display the drop down with loading state.\n */\n isLoading: PropTypes.bool,\n /**\n * Overrides the built-in logic of loading message design\n */\n loadingMessage: PropTypes.func,\n /**\n * aria-label attribute for dropdown\n */\n ariaLabel: PropTypes.string,\n /**\n * Overrides the built-in logic of tab selecting value (default: true)\n */\n tabSelectsValue: PropTypes.bool,\n /**\n * Overrides the build-in search filter logic - https://react-select.com/advanced#custom-filter-logic\n * createFilter function is available at Dropdown.createFilter\n */\n filterOption: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n};\n\nexport default Dropdown;\n"],"names":["Dropdown","forwardRef","_ref","ref","className","addCheckbox","optionWrapperClassName","singleValueWrapperClassName","dropdownMenuWrapperClassName","placeholder","disabled","readOnly","withReadOnlyStyle","onMenuOpen","onMenuClose","onFocus","onBlur","customOnChange","onChange","searchable","options","defaultValue","customValue","value","noOptionsMessage","openMenuOnFocus","openMenuOnClick","clearable","OptionRenderer","optionRenderer","ValueRenderer","valueRenderer","menuRenderer","menuPlacement","rtl","size","asyncOptions","cacheOptions","defaultOptions","isVirtualized","menuPortalTarget","extraStyles","maxMenuHeight","menuIsOpen","tabIndex","id","autoFocus","_ref$multi","multi","_ref$multiline","multiline","customOnOptionRemove","onOptionRemove","onOptionSelect","onClear","onInputChange","_ref$closeMenuOnSelec","closeMenuOnSelect","customCloseMenuOnScroll","closeMenuOnScroll","withMandatoryDefaultOptions","isOptionSelected","insideOverflowContainer","insideOverflowWithTransformContainer","tooltipContent","onKeyDown","isLoading","loadingMessage","ariaLabel","_ref$tabSelectsValue","tabSelectsValue","popupsContainerSelector","filterOption","menuPosition","dataTestId","controlRef","useRef","overrideMenuPortalTarget","document","querySelector","overrideDefaultValue","useMemo","Array","isArray","map","df","_objectSpread","isMandatory","_useState","useState","_useState2","_slicedToArray","setSelected","finalOptionRenderer","finalValueRenderer","isControlled","selectedOptions","selectedOptionsMap","reduce","acc","option","_defineProperty","overrideAriaLabel","concat","o","label","join","inlineStyles","baseStyles","generateBaseStyles","customStyles","mergedStyles","Object","entries","accumulator","_ref2","_ref3","stylesGroup","stylesFn","defaultStyles","state","provided","ADD_AUTO_HEIGHT_COMPONENTS","forEach","component","original","height","originalValueContainer","valueContainer","paddingLeft","Menu","useCallback","props","React","createElement","MenuComponent","_extends","Renderer","DropdownIndicator","DropdownIndicatorComponent","OptionComponent","Input","components","SingleValue","SingleValueComponent","selectedOption","ClearIndicator","ClearIndicatorComponent","optionValue","e","newSelectedOptions","filter","customProps","onSelectedDelete","isMultiline","DropDownComponent","AsyncSelect","Select","asyncAdditions","loadOptions","additions","isMulti","event","_scrolledElement$pare","scrolledElement","target","parentElement","classList","contains","menuStyles","dropdownMenuWrapper","CustomOption","data","isSelected","innerRef","innerProps","style","display","alignItems","marginLeft","type","checked","_toConsumableArray","handleCheckboxChange","cx","styles","dropdown","selectProps","Option","Control","MultiValue","NOOP","ValueContainer","MultiValueContainer","MenuList","WindowedMenuList","isDisabled","isClearable","isSearchable","action","isRtl","theme","customTheme","getTestId","ComponentDefaultTestId","DROPDOWN","assign","SIZES","sizes","tagColors","DROPDOWN_CHIP_COLORS","menuPlacements","DROPDOWN_MENU_PLACEMENT","menuPositions","DROPDOWN_MENU_POSITION","createFilter","defaultProps","undefined","BOTTOM","ABSOLUTE","MEDIUM","defaultCustomStyles","DROPDOWN_ID"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","sources":["../../../../../src/components/Dropdown/Dropdown.jsx"],"sourcesContent":["/* eslint-disable react/require-default-props,react/forbid-prop-types */\nimport { ComponentDefaultTestId, getTestId } from \"../../tests/test-ids-utils\";\nimport cx from \"classnames\";\nimport { SIZES } from \"../../constants/sizes\";\nimport { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\nimport Select, { components, createFilter } from \"react-select\";\nimport AsyncSelect from \"react-select/async\";\nimport { noop as NOOP } from \"lodash-es\";\nimport { WindowedMenuList } from \"react-windowed-select\";\nimport PropTypes from \"prop-types\";\nimport MenuComponent from \"./components/menu/menu\";\nimport DropdownIndicatorComponent from \"./components/DropdownIndicator/DropdownIndicator\";\nimport OptionComponent from \"./components/option/option\";\nimport SingleValueComponent from \"./components/singleValue/singleValue\";\nimport ClearIndicatorComponent from \"./components/ClearIndicator/ClearIndicator\";\nimport MultiValueContainer from \"./components/MultiValueContainer/MultiValueContainer\";\nimport {\n ADD_AUTO_HEIGHT_COMPONENTS,\n defaultCustomStyles,\n DROPDOWN_CHIP_COLORS,\n DROPDOWN_ID,\n DROPDOWN_MENU_PLACEMENT,\n DROPDOWN_MENU_POSITION,\n} from \"./DropdownConstants\";\nimport generateBaseStyles, { customTheme } from \"./Dropdown.styles\";\nimport Control from \"./components/Control/Control\";\nimport menuStyles from \"./components/menu/menu.module.scss\";\nimport styles from \"./Dropdown.module.scss\";\n\nconst Dropdown = forwardRef(\n (\n {\n className,\n addCheckbox,\n optionWrapperClassName,\n singleValueWrapperClassName,\n dropdownMenuWrapperClassName,\n placeholder,\n disabled,\n readOnly,\n withReadOnlyStyle,\n onMenuOpen,\n onMenuClose,\n onFocus,\n onBlur,\n onChange: customOnChange,\n searchable,\n options,\n defaultValue,\n value: customValue,\n noOptionsMessage,\n openMenuOnFocus,\n openMenuOnClick,\n clearable,\n OptionRenderer,\n optionRenderer,\n ValueRenderer,\n valueRenderer,\n menuRenderer,\n menuPlacement,\n rtl,\n size,\n asyncOptions,\n cacheOptions,\n defaultOptions,\n isVirtualized,\n menuPortalTarget,\n extraStyles,\n maxMenuHeight,\n menuIsOpen,\n tabIndex,\n id,\n autoFocus,\n multi = false,\n multiline = false,\n onOptionRemove: customOnOptionRemove,\n onOptionSelect,\n onClear,\n onInputChange,\n closeMenuOnSelect = !multi,\n closeMenuOnScroll: customCloseMenuOnScroll,\n withMandatoryDefaultOptions,\n isOptionSelected,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n tooltipContent,\n onKeyDown,\n isLoading,\n loadingMessage,\n ariaLabel,\n tabSelectsValue = true,\n popupsContainerSelector,\n filterOption,\n menuPosition,\n \"data-testid\": dataTestId,\n },\n ref\n ) => {\n const controlRef = useRef();\n const overrideMenuPortalTarget =\n menuPortalTarget ||\n (popupsContainerSelector &&\n document.querySelector(popupsContainerSelector));\n const overrideDefaultValue = useMemo(() => {\n if (defaultValue) {\n return Array.isArray(defaultValue)\n ? defaultValue.map((df) => ({ ...df, isMandatory: true }))\n : { ...defaultValue, isMandatory: true };\n }\n\n return defaultValue;\n }, [defaultValue]);\n\n const [selected, setSelected] = useState(overrideDefaultValue || []);\n const finalOptionRenderer = optionRenderer || OptionRenderer;\n const finalValueRenderer = valueRenderer || ValueRenderer;\n const isControlled = !!customValue;\n const selectedOptions = customValue ?? selected;\n const selectedOptionsMap = useMemo(() => {\n if (Array.isArray(selectedOptions)) {\n return selectedOptions.reduce(\n (acc, option) => ({ ...acc, [option.value]: option }),\n {}\n );\n }\n return {};\n }, [selectedOptions]);\n\n const overrideAriaLabel = useMemo(() => {\n return (\n ariaLabel ||\n `${readOnly ? \"Readonly \" : \"\"} ${tooltipContent} ${\n Array.isArray(selectedOptions)\n ? `Selected: ${selectedOptions.map((o) => o.label).join(\", \")}`\n : \"Select\"\n }`\n );\n }, [ariaLabel, readOnly, selectedOptions, tooltipContent]);\n const value = multi ? selectedOptions : customValue;\n\n const inlineStyles = useMemo(() => {\n // We first want to get the default stylized groups (e.g. \"container\", \"menu\").\n const baseStyles = generateBaseStyles({\n size,\n rtl,\n insideOverflowContainer,\n controlRef,\n insideOverflowWithTransformContainer,\n });\n\n // Then we want to run the consumer's root-level custom styles with our \"base\" override groups.\n const customStyles = extraStyles(baseStyles);\n\n // Lastly, we create a style groups object that makes sure we run each custom group with our basic overrides.\n const mergedStyles = Object.entries(customStyles).reduce(\n (accumulator, [stylesGroup, stylesFn]) => {\n return {\n ...accumulator,\n [stylesGroup]: (defaultStyles, state) => {\n const provided = baseStyles[stylesGroup]\n ? baseStyles[stylesGroup](defaultStyles, state)\n : defaultStyles;\n\n return stylesFn(provided, state);\n },\n };\n },\n {}\n );\n\n if (multi) {\n if (multiline) {\n ADD_AUTO_HEIGHT_COMPONENTS.forEach((component) => {\n const original = mergedStyles[component];\n mergedStyles[component] = (provided, state) => ({\n ...original(provided, state),\n height: \"auto\",\n });\n });\n }\n\n const originalValueContainer = mergedStyles.valueContainer;\n mergedStyles.valueContainer = (provided, state) => ({\n ...originalValueContainer(provided, state),\n paddingLeft: 6,\n });\n }\n\n return mergedStyles;\n }, [\n size,\n rtl,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n extraStyles,\n multi,\n multiline,\n ]);\n\n const Menu = useCallback(\n (props) => (\n <MenuComponent\n {...props}\n Renderer={menuRenderer}\n dropdownMenuWrapperClassName={dropdownMenuWrapperClassName}\n />\n ),\n [dropdownMenuWrapperClassName, menuRenderer]\n );\n\n const DropdownIndicator = useCallback(\n (props) => <DropdownIndicatorComponent {...props} size={size} />,\n [size]\n );\n\n const Option = useCallback(\n (props) => (\n <OptionComponent\n {...props}\n Renderer={finalOptionRenderer}\n optionWrapperClassName={optionWrapperClassName}\n />\n ),\n [finalOptionRenderer, optionWrapperClassName]\n );\n\n const Input = useCallback(\n (props) => <components.Input {...props} aria-label=\"Dropdown input\" />,\n []\n );\n\n const SingleValue = useCallback(\n (props) => (\n <SingleValueComponent\n {...props}\n readOnly={readOnly}\n Renderer={finalValueRenderer}\n selectedOption={selectedOptions[0]}\n singleValueWrapperClassName={singleValueWrapperClassName}\n />\n ),\n [\n finalValueRenderer,\n readOnly,\n selectedOptions,\n singleValueWrapperClassName,\n ]\n );\n\n const ClearIndicator = useCallback(\n (props) => <ClearIndicatorComponent {...props} size={size} />,\n [size]\n );\n\n const onOptionRemove = useMemo(() => {\n return function (optionValue, e) {\n if (customOnOptionRemove) {\n customOnOptionRemove(selectedOptionsMap[optionValue]);\n }\n const newSelectedOptions = selectedOptions.filter(\n (option) => option.value !== optionValue\n );\n if (customOnChange) {\n customOnChange(newSelectedOptions, e);\n }\n setSelected(newSelectedOptions);\n };\n }, [\n customOnChange,\n customOnOptionRemove,\n selectedOptions,\n selectedOptionsMap,\n ]);\n\n const customProps = useMemo(\n () => ({\n selectedOptions,\n onSelectedDelete: onOptionRemove,\n isMultiline: multiline,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n controlRef,\n tooltipContent,\n popupsContainerSelector,\n }),\n [\n selectedOptions,\n onOptionRemove,\n multiline,\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n tooltipContent,\n popupsContainerSelector,\n ]\n );\n const onChange = (option, event) => {\n if (customOnChange) {\n customOnChange(option, event);\n }\n\n switch (event.action) {\n case \"select-option\": {\n const selectedOption = multi ? event.option : option;\n\n if (onOptionSelect) {\n onOptionSelect(selectedOption);\n }\n\n if (!isControlled) {\n setSelected([...selectedOptions, selectedOption]);\n }\n break;\n }\n\n case \"clear\":\n if (onClear) {\n onClear();\n }\n\n if (!isControlled) {\n if (withMandatoryDefaultOptions) setSelected(overrideDefaultValue);\n else setSelected([]);\n }\n break;\n }\n };\n\n const DropDownComponent = asyncOptions ? AsyncSelect : Select;\n\n const asyncAdditions = {\n ...(asyncOptions && {\n loadOptions: asyncOptions,\n cacheOptions,\n ...(defaultOptions && { defaultOptions }),\n }),\n };\n\n const additions = {\n ...(!asyncOptions && { options }),\n ...(multi && {\n isMulti: true,\n }),\n };\n\n const closeMenuOnScroll = useCallback(\n (event) => {\n const scrolledElement = event.target;\n if (\n scrolledElement?.parentElement?.classList.contains(\n menuStyles.dropdownMenuWrapper\n )\n ) {\n return false;\n }\n return (\n customCloseMenuOnScroll ||\n insideOverflowContainer ||\n insideOverflowWithTransformContainer\n );\n },\n [\n insideOverflowContainer,\n insideOverflowWithTransformContainer,\n customCloseMenuOnScroll,\n ]\n );\n\n const CustomOption = useCallback(\n (props) => {\n const { data, isSelected, innerRef, innerProps } = props;\n\n const handleCheckboxChange = (option, event) => {\n if (event.target.checked) {\n // Add the option to selected options\n const newSelectedOptions = [...selectedOptions, option];\n if (customOnChange) {\n customOnChange(newSelectedOptions, event);\n }\n setSelected(newSelectedOptions);\n } else {\n // Remove the option from selected options\n const newSelectedOptions = selectedOptions.filter(\n (selectedOption) => selectedOption.value !== option.value\n );\n if (customOnChange) {\n customOnChange(newSelectedOptions, event);\n }\n setSelected(newSelectedOptions);\n }\n };\n\n return (\n <div\n ref={innerRef}\n {...innerProps}\n className={isSelected ? \"selected-option\" : \"\"}\n >\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n marginLeft: \"0px\",\n }}\n >\n {addCheckbox && (\n <input\n type=\"checkbox\"\n checked={isSelected}\n onChange={() =>\n handleCheckboxChange(data, {\n target: { checked: !isSelected },\n })\n }\n />\n )}\n <OptionComponent {...props} />\n </div>\n </div>\n );\n },\n [selectedOptions, customOnChange]\n );\n\n return (\n <DropDownComponent\n className={cx(styles.dropdown, className)}\n selectProps={customProps}\n components={{\n DropdownIndicator,\n Menu,\n ClearIndicator,\n Input,\n Option: CustomOption,\n Control,\n SingleValue,\n ...(multi && {\n MultiValue: NOOP, // We need it for react-select to behave nice with \"multi\"\n ValueContainer: MultiValueContainer,\n }),\n ...(isVirtualized && { MenuList: WindowedMenuList }),\n }}\n // When inside scroll we set the menu position by js and we can't follow the drop down location while use scrolling\n closeMenuOnScroll={closeMenuOnScroll}\n size={size}\n noOptionsMessage={noOptionsMessage}\n placeholder={placeholder}\n isDisabled={disabled}\n isClearable={!readOnly && clearable}\n isSearchable={!readOnly && searchable}\n readOnly={readOnly}\n withReadOnlyStyle={withReadOnlyStyle}\n aria-readonly={readOnly}\n aria-label={overrideAriaLabel}\n aria-details={tooltipContent}\n defaultValue={defaultValue}\n value={value}\n onMenuOpen={onMenuOpen}\n onMenuClose={onMenuClose}\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={onChange}\n onKeyDown={onKeyDown}\n onInputChange={onInputChange}\n openMenuOnFocus={openMenuOnFocus}\n openMenuOnClick={openMenuOnClick}\n isRtl={rtl}\n styles={inlineStyles}\n theme={customTheme}\n maxMenuHeight={maxMenuHeight}\n menuPortalTarget={overrideMenuPortalTarget}\n menuPlacement={menuPlacement}\n menuPosition={menuPosition}\n menuIsOpen={!readOnly && menuIsOpen}\n tabIndex={tabIndex}\n id={id}\n data-testid={\n dataTestId || getTestId(ComponentDefaultTestId.DROPDOWN, id)\n }\n autoFocus={autoFocus}\n closeMenuOnSelect={closeMenuOnSelect}\n ref={ref}\n withMandatoryDefaultOptions={withMandatoryDefaultOptions}\n isOptionSelected={isOptionSelected}\n isLoading={isLoading}\n loadingMessage={loadingMessage}\n tabSelectsValue={tabSelectsValue}\n filterOption={filterOption}\n {...asyncAdditions}\n {...additions}\n />\n );\n }\n);\n\nObject.assign(Dropdown, {\n // TODO Deprecate Dropdown.size in the next major version - use Dropdown.sizes instead\n size: SIZES,\n sizes: SIZES,\n tagColors: DROPDOWN_CHIP_COLORS,\n menuPlacements: DROPDOWN_MENU_PLACEMENT,\n menuPositions: DROPDOWN_MENU_POSITION,\n createFilter: createFilter,\n});\n\nDropdown.defaultProps = {\n className: \"\",\n optionWrapperClassName: undefined,\n addCheckbox: false,\n dropdownMenuWrapperClassName: undefined,\n singleValueWrapperClassName: undefined,\n placeholder: \"\",\n onMenuOpen: NOOP,\n onMenuClose: NOOP,\n onKeyDown: NOOP,\n onFocus: NOOP,\n onBlur: NOOP,\n onChange: NOOP,\n onInputChange: NOOP,\n searchable: true,\n options: [],\n menuPlacement: Dropdown.menuPlacements.BOTTOM,\n menuPosition: DROPDOWN_MENU_POSITION.ABSOLUTE,\n noOptionsMessage: NOOP,\n clearable: true,\n size: SIZES.MEDIUM,\n extraStyles: defaultCustomStyles,\n tabIndex: \"0\",\n onOptionRemove: undefined,\n id: DROPDOWN_ID,\n autoFocus: false,\n closeMenuOnSelect: undefined,\n closeMenuOnScroll: false,\n ref: undefined,\n withMandatoryDefaultOptions: false,\n insideOverflowContainer: false,\n insideOverflowWithTransformContainer: false,\n tooltipContent: \"\",\n disabled: false,\n readOnly: false,\n isLoading: false,\n loadingMessage: undefined,\n ariaLabel: undefined,\n filterOption: undefined,\n};\n\nDropdown.propTypes = {\n /**\n * Custom style\n */\n addCheckbox: PropTypes.bool,\n className: PropTypes.string,\n /** ClassName to be added to dropdown option wrapper (dropdown-wrapper__option--reset) */\n optionWrapperClassName: PropTypes.string,\n /** ClassName to be added to dropdown single value wrapper (dropdown-wrapper__single-value--reset) */\n singleValueWrapperClassName: PropTypes.string,\n /** ClassName to be added to dropdown menu wrapper (dropdown-menu-wrapper) */\n dropdownMenuWrapperClassName: PropTypes.string,\n /**\n * Placeholder to show when no value was selected\n */\n placeholder: PropTypes.string,\n /**\n * If set to true, dropdown will be disabled\n */\n disabled: PropTypes.bool,\n /**\n * If set to true, dropdown won't be editable\n */\n readOnly: PropTypes.bool,\n /**\n * Called when menu is opened\n */\n onMenuOpen: PropTypes.func,\n /**\n * Called when menu is closed\n */\n onMenuClose: PropTypes.func,\n /**\n * Called when key is pressed in the dropdown\n */\n onKeyDown: PropTypes.func,\n /**\n * Called when focused\n */\n onFocus: PropTypes.func,\n /**\n * Called when blurred\n */\n onBlur: PropTypes.func,\n /**\n * Called when selected value has changed\n */\n onChange: PropTypes.func,\n /**\n * Called when the dropdown's input changes.\n */\n onInputChange: PropTypes.func,\n /**\n * If true, search in options will be enabled\n */\n searchable: PropTypes.bool,\n /**\n * The dropdown options\n */\n options: PropTypes.arrayOf(PropTypes.object),\n /**\n * Text to display when there are no options\n */\n noOptionsMessage: PropTypes.func,\n /**\n * If set to true, the menu will open when focused\n */\n openMenuOnFocus: PropTypes.bool,\n /**\n * If set to true, the menu will open when clicked\n */\n openMenuOnClick: PropTypes.bool,\n /**\n * If set to true, clear button will be added\n */\n clearable: PropTypes.bool,\n /**\n * custom option render function\n */\n optionRenderer: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n /**\n * custom value render function\n */\n valueRenderer: PropTypes.func,\n /**\n * custom menu render function\n */\n menuRenderer: PropTypes.func,\n /**\n * Default placement of the Dropdown menu in relation to its control. Use \"auto\" to flip the menu when there isn't enough space below the control.\n */\n menuPlacement: PropTypes.oneOf(Object.values(DROPDOWN_MENU_PLACEMENT)),\n /**\n * The CSS position value of the menu, when \"fixed\" extra layout management might be required\n * Fixed position can be used to solve the issue of positioning Dropdown inside overflow container like Modal or Dialog\n */\n menuPosition: PropTypes.oneOf(Object.values(DROPDOWN_MENU_POSITION)),\n /**\n * If set to true, the dropdown will be in Right to Left mode\n */\n rtl: PropTypes.bool,\n /**\n * Set default selected value\n */\n defaultValue: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n })\n ),\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n }),\n ]),\n /**\n * The component's value.\n * When passed, makes this a [controlled](https://reactjs.org/docs/forms.html#controlled-components) component.\n */\n value: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n })\n ),\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n }),\n ]),\n /**\n * Select menu size from `Dropdown.size` - Dropdown.sizes.LARGE | Dropdown.sizes.MEDIUM | Dropdown.sizes.SMALL\n */\n size: PropTypes.string,\n /**\n * If provided Dropdown will work in async mode. Can be either promise or callback\n */\n asyncOptions: PropTypes.oneOfType([\n PropTypes.func, // callback\n PropTypes.shape({\n then: PropTypes.func.isRequired,\n catch: PropTypes.func.isRequired,\n }), // Promise\n ]),\n /**\n * If set to true, fetched async options will be cached\n */\n cacheOptions: PropTypes.bool,\n /**\n * If set, `asyncOptions` will be invoked with its value on mount and the resolved results will be loaded\n */\n defaultOptions: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.arrayOf(PropTypes.object),\n ]),\n /**\n * If set to true, the menu will use virtualization. Virtualized async works only with\n */\n isVirtualized: PropTypes.bool,\n /**\n * Whether the menu should use a portal, and where it should attach\n */\n menuPortalTarget: PropTypes.oneOfType([PropTypes.element, PropTypes.object]),\n /**\n * Custom function to override existing styles (similar to `react-select`'s `style` prop), for example: `base => ({...base, color: 'red'})`, where `base` is the component's default styles\n */\n extraStyles: PropTypes.func,\n /**\n * Maximum height of the menu before scrolling\n */\n maxMenuHeight: PropTypes.number,\n /**\n * Tab index for keyboard navigation purposes\n */\n tabIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n /**\n * ID for the select container\n */\n id: PropTypes.string,\n /**\n * focusAuto when component mount\n */\n autoFocus: PropTypes.bool,\n /**\n * If set to true, the dropdown will be in multi-select mode.\n * When in multi-select mode, the selected value will be an array,\n * and it will be displayed as our [`<Tags>`](/?path=/docs/components-tags--sandbox) component.\n */\n multi: PropTypes.bool,\n /**\n * If set to true together with `multi`, it will make the dropdown expand to multiple lines when new values are selected.\n */\n multiline: PropTypes.bool,\n /**\n Pass closeMenuOnSelect to close the multi choose any time an options is chosen.\n */\n closeMenuOnSelect: PropTypes.bool,\n // Won't be needed once we upgrade to react-select ^5.5 https://github.com/JedWatson/react-select/issues/4088#issuecomment-1276835389\n /**\n * If menu should be closed on scroll - helpful for some tricky use cases\n * @default false, but true when insideOverflowContainer or insideOverflowWithTransformContainer are true\n */\n closeMenuOnScroll: PropTypes.bool,\n /**\n * callback to be called when `multiline` is `true` and the option is removed\n */\n onOptionRemove: PropTypes.func,\n /**\n Pass Ref for reference of the actual dropdown component\n */\n ref: PropTypes.func,\n /**\n The options set by default will be set as mandatory and the user will not be able to cancel their selection\n */\n withMandatoryDefaultOptions: PropTypes.bool,\n /**\n * Override the built-in logic to detect whether an option is selected.\n */\n isOptionSelected: PropTypes.func,\n /**\n * For display the drop down menu in overflow hidden/scroll container.\n */\n insideOverflowContainer: PropTypes.bool,\n /**\n * For display the drop down menu in overflow hidden/scroll container which contains transform css function usage.\n */\n insideOverflowWithTransformContainer: PropTypes.bool,\n /**\n * When content is passed, the dropdown will include a tooltip on the dropdown's value.\n */\n tooltipContent: PropTypes.string,\n /**\n * Display the drop down with loading state.\n */\n isLoading: PropTypes.bool,\n /**\n * Overrides the built-in logic of loading message design\n */\n loadingMessage: PropTypes.func,\n /**\n * aria-label attribute for dropdown\n */\n ariaLabel: PropTypes.string,\n /**\n * Overrides the built-in logic of tab selecting value (default: true)\n */\n tabSelectsValue: PropTypes.bool,\n /**\n * Overrides the build-in search filter logic - https://react-select.com/advanced#custom-filter-logic\n * createFilter function is available at Dropdown.createFilter\n */\n filterOption: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n};\n\nexport default Dropdown;\n"],"names":["Dropdown","forwardRef","_ref","ref","className","addCheckbox","optionWrapperClassName","singleValueWrapperClassName","dropdownMenuWrapperClassName","placeholder","disabled","readOnly","withReadOnlyStyle","onMenuOpen","onMenuClose","onFocus","onBlur","customOnChange","onChange","searchable","options","defaultValue","customValue","value","noOptionsMessage","openMenuOnFocus","openMenuOnClick","clearable","OptionRenderer","optionRenderer","ValueRenderer","valueRenderer","menuRenderer","menuPlacement","rtl","size","asyncOptions","cacheOptions","defaultOptions","isVirtualized","menuPortalTarget","extraStyles","maxMenuHeight","menuIsOpen","tabIndex","id","autoFocus","_ref$multi","multi","_ref$multiline","multiline","customOnOptionRemove","onOptionRemove","onOptionSelect","onClear","onInputChange","_ref$closeMenuOnSelec","closeMenuOnSelect","customCloseMenuOnScroll","closeMenuOnScroll","withMandatoryDefaultOptions","isOptionSelected","insideOverflowContainer","insideOverflowWithTransformContainer","tooltipContent","onKeyDown","isLoading","loadingMessage","ariaLabel","_ref$tabSelectsValue","tabSelectsValue","popupsContainerSelector","filterOption","menuPosition","dataTestId","controlRef","useRef","overrideMenuPortalTarget","document","querySelector","overrideDefaultValue","useMemo","Array","isArray","map","df","_objectSpread","isMandatory","_useState","useState","_useState2","_slicedToArray","setSelected","finalOptionRenderer","finalValueRenderer","isControlled","selectedOptions","selectedOptionsMap","reduce","acc","option","_defineProperty","overrideAriaLabel","concat","o","label","join","inlineStyles","baseStyles","generateBaseStyles","customStyles","mergedStyles","Object","entries","accumulator","_ref2","_ref3","stylesGroup","stylesFn","defaultStyles","state","provided","ADD_AUTO_HEIGHT_COMPONENTS","forEach","component","original","height","originalValueContainer","valueContainer","paddingLeft","Menu","useCallback","props","React","createElement","MenuComponent","_extends","Renderer","DropdownIndicator","DropdownIndicatorComponent","OptionComponent","Input","components","SingleValue","SingleValueComponent","selectedOption","ClearIndicator","ClearIndicatorComponent","optionValue","e","newSelectedOptions","filter","customProps","onSelectedDelete","isMultiline","DropDownComponent","AsyncSelect","Select","asyncAdditions","loadOptions","additions","isMulti","event","_scrolledElement$pare","scrolledElement","target","parentElement","classList","contains","menuStyles","dropdownMenuWrapper","CustomOption","data","isSelected","innerRef","innerProps","style","display","alignItems","marginLeft","type","checked","_toConsumableArray","handleCheckboxChange","cx","styles","dropdown","selectProps","Option","Control","MultiValue","NOOP","ValueContainer","MultiValueContainer","MenuList","WindowedMenuList","isDisabled","isClearable","isSearchable","action","isRtl","theme","customTheme","getTestId","ComponentDefaultTestId","DROPDOWN","assign","SIZES","sizes","tagColors","DROPDOWN_CHIP_COLORS","menuPlacements","DROPDOWN_MENU_PLACEMENT","menuPositions","DROPDOWN_MENU_POSITION","createFilter","defaultProps","undefined","BOTTOM","ABSOLUTE","MEDIUM","defaultCustomStyles","DROPDOWN_ID"],"mappings":"wzCA6BMA,IAAAA,EAAWC,GACf,SAAAC,EAkEEC,GACG,IAjEDC,EAASF,EAATE,UACAC,EAAWH,EAAXG,YACAC,EAAsBJ,EAAtBI,uBACAC,EAA2BL,EAA3BK,4BACAC,EAA4BN,EAA5BM,6BACAC,EAAWP,EAAXO,YACAC,EAAQR,EAARQ,SACAC,EAAQT,EAARS,SACAC,EAAiBV,EAAjBU,kBACAC,EAAUX,EAAVW,WACAC,EAAWZ,EAAXY,YACAC,EAAOb,EAAPa,QACAC,EAAMd,EAANc,OACUC,EAAcf,EAAxBgB,SACAC,EAAUjB,EAAViB,WACAC,EAAOlB,EAAPkB,QACAC,EAAYnB,EAAZmB,aACOC,EAAWpB,EAAlBqB,MACAC,EAAgBtB,EAAhBsB,iBACAC,EAAevB,EAAfuB,gBACAC,EAAexB,EAAfwB,gBACAC,EAASzB,EAATyB,UACAC,GAAc1B,EAAd0B,eACAC,GAAc3B,EAAd2B,eACAC,GAAa5B,EAAb4B,cACAC,GAAa7B,EAAb6B,cACAC,GAAY9B,EAAZ8B,aACAC,GAAa/B,EAAb+B,cACAC,GAAGhC,EAAHgC,IACAC,GAAIjC,EAAJiC,KACAC,GAAYlC,EAAZkC,aACAC,GAAYnC,EAAZmC,aACAC,GAAcpC,EAAdoC,eACAC,GAAarC,EAAbqC,cACAC,GAAgBtC,EAAhBsC,iBACAC,GAAWvC,EAAXuC,YACAC,GAAaxC,EAAbwC,cACAC,GAAUzC,EAAVyC,WACAC,GAAQ1C,EAAR0C,SACAC,GAAE3C,EAAF2C,GACAC,GAAS5C,EAAT4C,UAASC,GAAA7C,EACT8C,MAAAA,QAAQ,IAAHD,IAAQA,GAAAE,GAAA/C,EACbgD,UAAAA,QAAY,IAAHD,IAAQA,GACDE,GAAoBjD,EAApCkD,eACAC,GAAcnD,EAAdmD,eACAC,GAAOpD,EAAPoD,QACAC,GAAarD,EAAbqD,cAAaC,GAAAtD,EACbuD,kBAAAA,QAAiB,IAAAD,IAAIR,GAAKQ,GACPE,GAAuBxD,EAA1CyD,kBACAC,GAA2B1D,EAA3B0D,4BACAC,GAAgB3D,EAAhB2D,iBACAC,GAAuB5D,EAAvB4D,wBACAC,GAAoC7D,EAApC6D,qCACAC,GAAc9D,EAAd8D,eACAC,GAAS/D,EAAT+D,UACAC,GAAShE,EAATgE,UACAC,GAAcjE,EAAdiE,eACAC,GAASlE,EAATkE,UAASC,GAAAnE,EACToE,gBAAAA,QAAkB,IAAHD,IAAOA,GACtBE,GAAuBrE,EAAvBqE,wBACAC,GAAYtE,EAAZsE,aACAC,GAAYvE,EAAZuE,aACeC,GAAUxE,EAAzB,eAIIyE,GAAaC,IACbC,GACJrC,IACC+B,IACCO,SAASC,cAAcR,IACrBS,GAAuBC,GAAQ,WACnC,OAAI5D,EACK6D,MAAMC,QAAQ9D,GACjBA,EAAa+D,KAAI,SAACC,GAAE,OAAAC,EAAAA,EAAA,CAAA,EAAWD,GAAE,CAAA,EAAA,CAAEE,aAAa,GAAI,IAAID,EAAAA,KACnDjE,GAAY,CAAA,EAAA,CAAEkE,aAAa,IAG/BlE,CACT,GAAG,CAACA,IAEJmE,GAAgCC,EAAST,IAAwB,IAAGU,GAAAC,EAAAH,GAAA,GAAnDI,GAAWF,GAAA,GACtBG,GAAsBhE,IAAkBD,GACxCkE,GAAqB/D,IAAiBD,GACtCiE,KAAiBzE,EACjB0E,GAAkB1E,QAAAA,EAJToE,GAAA,GAKTO,GAAqBhB,GAAQ,WACjC,OAAIC,MAAMC,QAAQa,IACTA,GAAgBE,QACrB,SAACC,EAAKC,GAAM,OAAAd,EAAAA,EAAA,CAAA,EAAWa,GAAG,CAAA,EAAAE,EAAA,CAAA,EAAGD,EAAO7E,MAAQ6E,GAAS,GACrD,CACF,GAEK,EACT,GAAG,CAACJ,KAEEM,GAAoBrB,GAAQ,WAChC,OACEb,IAAS,GAAAmC,OACN5F,EAAW,YAAc,GAAE,KAAA4F,OAAIvC,GAAcuC,KAAAA,OAC9CrB,MAAMC,QAAQa,IAAgB,aAAAO,OACbP,GAAgBZ,KAAI,SAACoB,GAAC,OAAKA,EAAEC,KAAK,IAAEC,KAAK,OACtD,SAGT,GAAE,CAACtC,GAAWzD,EAAUqF,GAAiBhC,KACpCzC,GAAQyB,GAAQgD,GAAkB1E,EAElCqF,GAAe1B,GAAQ,WAE3B,IAAM2B,EAAaC,EAAmB,CACpC1E,KAAAA,GACAD,IAAAA,GACA4B,wBAAAA,GACAa,WAAAA,GACAZ,qCAAAA,KAII+C,EAAerE,GAAYmE,GAG3BG,EAAeC,OAAOC,QAAQH,GAAcZ,QAChD,SAACgB,EAAWC,GAA8B,IAAAC,EAAAzB,EAAAwB,EAAA,GAA3BE,EAAWD,EAAA,GAAEE,EAAQF,EAAA,GAClC,OAAA9B,EAAAA,EAAA,CAAA,EACK4B,GAAWb,CAAAA,EAAAA,EACbgB,GAAAA,GAAc,SAACE,EAAeC,GAC7B,IAAMC,EAAWb,EAAWS,GACxBT,EAAWS,GAAaE,EAAeC,GACvCD,EAEJ,OAAOD,EAASG,EAAUD,EAC3B,IAEJ,GACD,CACF,GAEA,GAAIxE,GAAO,CACLE,IACFwE,EAA2BC,SAAQ,SAACC,GAClC,IAAMC,EAAWd,EAAaa,GAC9Bb,EAAaa,GAAa,SAACH,EAAUD,GAAK,OAAAlC,EAAAA,EAAA,GACrCuC,EAASJ,EAAUD,IAAM,GAAA,CAC5BM,OAAQ,SAEZ,IAGF,IAAMC,EAAyBhB,EAAaiB,eAC5CjB,EAAaiB,eAAiB,SAACP,EAAUD,GAAK,OAAAlC,EAAAA,EAAA,GACzCyC,EAAuBN,EAAUD,IAAM,GAAA,CAC1CS,YAAa,IAEjB,CAEA,OAAOlB,CACT,GAAG,CACD5E,GACAD,GACA4B,GACAC,GACAtB,GACAO,GACAE,KAGIgF,GAAOC,GACX,SAACC,GAAK,OACJC,EAAAC,cAACC,EAAaC,KACRJ,EAAK,CACTK,SAAUzG,GACVxB,6BAA8BA,IAC9B,GAEJ,CAACA,EAA8BwB,KAG3B0G,GAAoBP,GACxB,SAACC,GAAK,OAAKC,EAAAC,cAACK,EAA0BH,KAAKJ,EAAK,CAAEjG,KAAMA,QACxD,CAACA,KAGYgG,GACb,SAACC,GAAK,OACJC,EAAAC,cAACM,EAAeJ,KACVJ,EAAK,CACTK,SAAU5C,GACVvF,uBAAwBA,IACxB,GAEJ,CAACuF,GAAqBvF,IAGxB,IAAMuI,GAAQV,GACZ,SAACC,GAAK,OAAKC,EAAAC,cAACQ,EAAWD,MAAKL,EAAA,CAAA,EAAKJ,EAAK,CAAE,aAAW,mBAAmB,GACtE,IAGIW,GAAcZ,GAClB,SAACC,GAAK,OACJC,EAAAC,cAACU,EAAoBR,KACfJ,EAAK,CACTzH,SAAUA,EACV8H,SAAU3C,GACVmD,eAAgBjD,GAAgB,GAChCzF,4BAA6BA,IAEhC,GACD,CACEuF,GACAnF,EACAqF,GACAzF,IAIE2I,GAAiBf,GACrB,SAACC,GAAK,OAAKC,EAAAC,cAACa,EAAuBX,KAAKJ,EAAK,CAAEjG,KAAMA,QACrD,CAACA,KAGGiB,GAAiB6B,GAAQ,WAC7B,OAAO,SAAUmE,EAAaC,GACxBlG,IACFA,GAAqB8C,GAAmBmD,IAE1C,IAAME,EAAqBtD,GAAgBuD,QACzC,SAACnD,GAAM,OAAKA,EAAO7E,QAAU6H,CAAW,IAEtCnI,GACFA,EAAeqI,EAAoBD,GAErCzD,GAAY0D,GAEf,GAAE,CACDrI,EACAkC,GACA6C,GACAC,KAGIuD,GAAcvE,GAClB,WAAA,MAAO,CACLe,gBAAAA,GACAyD,iBAAkBrG,GAClBsG,YAAaxG,GACbY,wBAAAA,GACAC,qCAAAA,GACAY,WAAAA,GACAX,eAAAA,GACAO,wBAAAA,GACD,GACD,CACEyB,GACA5C,GACAF,GACAY,GACAC,GACAC,GACAO,KAmCEoF,GAAoBvH,GAAewH,EAAcC,EAEjDC,GAAcxE,EACdlD,GAAAA,IAAYkD,EAAA,CACdyE,YAAa3H,GACbC,aAAAA,IACIC,IAAkB,CAAEA,eAAAA,MAItB0H,GAAS1E,EAAAA,EACT,CAAA,GAAClD,IAAgB,CAAEhB,QAAAA,IACnB4B,IAAS,CACXiH,SAAS,IAIPtG,GAAoBwE,GACxB,SAAC+B,GAAU,IAAAC,EACHC,EAAkBF,EAAMG,OAC9B,OACED,SAA8BD,QAAfA,EAAfC,EAAiBE,yBAAaH,IAA9BA,EAAgCI,UAAUC,SACxCC,EAAWC,wBAMbhH,IACAI,IACAC,GAEH,GACD,CACED,GACAC,GACAL,KAIEiH,GAAexC,GACnB,SAACC,GACC,IAAQwC,EAA2CxC,EAA3CwC,KAAMC,EAAqCzC,EAArCyC,WAsBd,OACExC,EAAAC,cAAA,MAAAE,EAAA,CACErI,IAxB+CiI,EAAzB0C,UAAyB1C,EAAf2C,WAyBlB,CACd3K,UAAWyK,EAAa,kBAAoB,KAE5CxC,EAAAC,cAAA,MAAA,CACE0C,MAAO,CACLC,QAAS,OACTC,WAAY,SACZC,WAAY,QAGb9K,GACCgI,EAAAC,cAAA,QAAA,CACE8C,KAAK,WACLC,QAASR,EACT3J,SAAU,WAAA,OArCS,SAACkF,EAAQ8D,GACpC,GAAIA,EAAMG,OAAOgB,QAAS,CAExB,IAAM/B,KAAkB/C,OAAA+E,EAAOtF,IAAiBI,CAAAA,IAC5CnF,GACFA,EAAeqI,EAAoBY,GAErCtE,GAAY0D,EACd,KAAO,CAEL,IAAMA,EAAqBtD,GAAgBuD,QACzC,SAACN,GAAc,OAAKA,EAAe1H,QAAU6E,EAAO7E,KAAK,IAEvDN,GACFA,EAAeqI,EAAoBY,GAErCtE,GAAY0D,EACd,EAqBUiC,CAAqBX,EAAM,CACzBP,OAAQ,CAAEgB,SAAUR,IACpB,IAIRxC,EAAAC,cAACM,EAAoBR,IAI7B,GACA,CAACpC,GAAiB/E,IAGpB,OACEoH,EAAAC,cAACqB,GAAiBnB,EAAA,CAChBpI,UAAWoL,EAAGC,EAAOC,SAAUtL,GAC/BuL,YAAanC,GACbV,WAAUxD,EAAAA,EAAA,CACRoD,kBAAAA,GACAR,KAAAA,GACAgB,eAAAA,GACAL,MAAAA,GACA+C,OAAQjB,GACRkB,QAAAA,EACA9C,YAAAA,IACI/F,IAAS,CACX8I,WAAYC,EACZC,eAAgBC,IAEd1J,IAAiB,CAAE2J,SAAUC,IAGnCxI,kBAAmBA,GACnBxB,KAAMA,GACNX,iBAAkBA,EAClBf,YAAaA,EACb2L,WAAY1L,EACZ2L,aAAc1L,GAAYgB,EAC1B2K,cAAe3L,GAAYQ,EAC3BR,SAAUA,EACVC,kBAAmBA,EACnB,gBAAeD,EACf,aAAY2F,GACZ,eAActC,GACd3C,aAAcA,EACdE,MAAOA,GACPV,WAAYA,EACZC,YAAaA,EACbC,QAASA,EACTC,OAAQA,EACRE,SArKa,SAACkF,EAAQ8D,GAKxB,OAJIjJ,GACFA,EAAemF,EAAQ8D,GAGjBA,EAAMqC,QACZ,IAAK,gBACH,IAAMtD,EAAiBjG,GAAQkH,EAAM9D,OAASA,EAE1C/C,IACFA,GAAe4F,GAGZlD,IACHH,GAAW,GAAAW,OAAA+E,EAAKtF,IAAe,CAAEiD,KAEnC,MAGF,IAAK,QACC3F,IACFA,KAGGyC,IAC8BH,GAA7BhC,GAAyCoB,GAC5B,MA4IrBf,UAAWA,GACXV,cAAeA,GACf9B,gBAAiBA,EACjBC,gBAAiBA,EACjB8K,MAAOtK,GACPuJ,OAAQ9E,GACR8F,MAAOC,EACPhK,cAAeA,GACfF,iBAAkBqC,GAClB5C,cAAeA,GACfwC,aAAcA,GACd9B,YAAahC,GAAYgC,GACzBC,SAAUA,GACVC,GAAIA,GACJ,cACE6B,IAAciI,EAAUC,EAAuBC,SAAUhK,IAE3DC,UAAWA,GACXW,kBAAmBA,GACnBtD,IAAKA,EACLyD,4BAA6BA,GAC7BC,iBAAkBA,GAClBK,UAAWA,GACXC,eAAgBA,GAChBG,gBAAiBA,GACjBE,aAAcA,IACVsF,GACAE,IAGV,IAGFhD,OAAO8F,OAAO9M,EAAU,CAEtBmC,KAAM4K,EACNC,MAAOD,EACPE,UAAWC,EACXC,eAAgBC,EAChBC,cAAeC,EACfC,aAAcA,IAGhBvN,EAASwN,aAAe,CACtBpN,UAAW,GACXE,4BAAwBmN,EACxBpN,aAAa,EACbG,kCAA8BiN,EAC9BlN,iCAA6BkN,EAC7BhN,YAAa,GACbI,WAAYkL,EACZjL,YAAaiL,EACb9H,UAAW8H,EACXhL,QAASgL,EACT/K,OAAQ+K,EACR7K,SAAU6K,EACVxI,cAAewI,EACf5K,YAAY,EACZC,QAAS,GACTa,cAAejC,EAASmN,eAAeO,OACvCjJ,aAAc6I,EAAuBK,SACrCnM,iBAAkBuK,EAClBpK,WAAW,EACXQ,KAAM4K,EAAMa,OACZnL,YAAaoL,EACbjL,SAAU,IACVQ,oBAAgBqK,EAChB5K,GAAIiL,EACJhL,WAAW,EACXW,uBAAmBgK,EACnB9J,mBAAmB,EACnBxD,SAAKsN,EACL7J,6BAA6B,EAC7BE,yBAAyB,EACzBC,sCAAsC,EACtCC,eAAgB,GAChBtD,UAAU,EACVC,UAAU,EACVuD,WAAW,EACXC,oBAAgBsJ,EAChBrJ,eAAWqJ,EACXjJ,kBAAciJ"}
@@ -1,2 +1,2 @@
1
- var n={container:"container",overlay:"overlay","overlay-fade-out":"overlay-fade-out","overlay-fade-in":"overlay-fade-in",dialog:"dialog",default:"default",full:"full",spacing:"spacing"};!function(n){if("undefined"==typeof document)return;const e=document.head||document.getElementsByTagName("head")[0],a="s_id-ad2286c88002_0_0_54";if(e.querySelector("#"+a))return;const i=document.createElement("style");i.id=a,e.firstChild?e.insertBefore(i,e.firstChild):e.appendChild(i),i.appendChild(document.createTextNode(n))}(".container,\n.overlay {\n position: fixed;\n inset: 0;\n}\n\n.container {\n --monday-modal-z-index: 10000;\n z-index: var(--monday-modal-z-index);\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.container[aria-hidden=true] {\n display: none;\n}\n\n.container[aria-hidden=true] .overlay {\n background-color: transparent;\n animation: overlay-fade-out 70ms var(--motion-timing-enter);\n}\n\n.overlay {\n background-color: rgba(0, 0, 0, 0.3);\n backdrop-filter: blur(5px);\n animation: overlay-fade-in 70ms var(--motion-timing-enter);\n}\n\n.dialog {\n z-index: 2;\n display: flex;\n position: relative;\n flex-direction: column;\n padding-block: 0px;\n padding-inline: var(--spacing-medium);\n border-radius: var(--border-radius-big);\n box-shadow: 0px 10px 40px 0px rgba(0, 0, 0, 0.3);\n background-color: var(--surface-primary);\n max-height: 90vh;\n max-width: 90vw;\n}\n\n.dialog.default {\n width: 520px;\n}\n\n.dialog.full {\n width: 100vw;\n}\n\n.dialog.spacing {\n gap: var(--spacing-medium);\n}\n\n@keyframes overlay-fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes overlay-fade-out {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}");export{n as default};
1
+ var n={container:"container",overlay:"overlay","overlay-fade-out":"overlay-fade-out","overlay-fade-in":"overlay-fade-in",dialog:"dialog",default:"default",full:"full",spacing:"spacing"};!function(n){if("undefined"==typeof document)return;const e=document.head||document.getElementsByTagName("head")[0],a="s_id-afc028b79432_0_0_54";if(e.querySelector("#"+a))return;const i=document.createElement("style");i.id=a,e.firstChild?e.insertBefore(i,e.firstChild):e.appendChild(i),i.appendChild(document.createTextNode(n))}(".container,\n.overlay {\n position: fixed;\n inset: 0;\n}\n\n.container {\n --monday-modal-z-index: 100;\n z-index: var(--monday-modal-z-index);\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.container[aria-hidden=true] {\n display: none;\n}\n\n.container[aria-hidden=true] .overlay {\n background-color: transparent;\n animation: overlay-fade-out 70ms var(--motion-timing-enter);\n}\n\n.overlay {\n background-color: rgba(0, 0, 0, 0.3);\n backdrop-filter: blur(5px);\n animation: overlay-fade-in 70ms var(--motion-timing-enter);\n}\n\n.dialog {\n z-index: 2;\n display: flex;\n position: relative;\n flex-direction: column;\n padding-block: 0px;\n padding-inline: var(--spacing-medium);\n border-radius: var(--border-radius-big);\n box-shadow: 0px 10px 40px 0px rgba(0, 0, 0, 0.3);\n background-color: var(--surface-primary);\n max-height: 90vh;\n max-width: 90vw;\n}\n\n.dialog.default {\n width: 520px;\n}\n\n.dialog.full {\n width: 100vw;\n}\n\n.dialog.spacing {\n gap: var(--spacing-medium);\n}\n\n@keyframes overlay-fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes overlay-fade-out {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}");export{n as default};
2
2
  //# sourceMappingURL=Modal.module.scss.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@heliux-org/design-system-core",
3
- "version": "0.0.54",
3
+ "version": "0.0.55",
4
4
  "description": "Official Heliux design system resources for application development in React.js",
5
5
  "main": "./dist/main.js",
6
6
  "types": "./dist/types/index.d.ts",
@@ -295,5 +295,5 @@
295
295
  "PR: Icon 💎": "New Icons"
296
296
  }
297
297
  },
298
- "gitHead": "24d45583ccba7d5619df36f6a5c6b8ad6a19cacc"
298
+ "gitHead": "be8ae3230e4dca81c968fa74b37ed1e7d835dc3e"
299
299
  }
@@ -47,6 +47,8 @@ export const Sizes = {
47
47
  <Button size={Button.sizes.LARGE}>Large</Button>
48
48
  <Button size={Button.sizes.MEDIUM}>Medium</Button>
49
49
  <Button size={Button.sizes.SMALL}>Small</Button>
50
+ <Button size={Button.sizes.XS}>Small</Button>
51
+ <Button size={Button.sizes.XXS}>Small</Button>
50
52
  </>
51
53
  ),
52
54
 
@@ -519,7 +519,7 @@ Dropdown.defaultProps = {
519
519
  searchable: true,
520
520
  options: [],
521
521
  menuPlacement: Dropdown.menuPlacements.BOTTOM,
522
- menuPosition: Dropdown.menuPositions.ABSOLUTE,
522
+ menuPosition: DROPDOWN_MENU_POSITION.ABSOLUTE,
523
523
  noOptionsMessage: NOOP,
524
524
  clearable: true,
525
525
  size: SIZES.MEDIUM,
@@ -5,7 +5,7 @@
5
5
  }
6
6
 
7
7
  .container {
8
- --monday-modal-z-index: 10000;
8
+ --monday-modal-z-index: 100;
9
9
  z-index: var(--monday-modal-z-index);
10
10
  display: flex;
11
11
  justify-content: center;