@laerdal/life-react-components 1.11.0-dev.28 → 1.11.0-dev.32

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.
Files changed (91) hide show
  1. package/dist/Accordion/AccordionItem.cjs +3 -1
  2. package/dist/Accordion/AccordionItem.cjs.map +1 -1
  3. package/dist/Accordion/AccordionItem.js +3 -1
  4. package/dist/Accordion/AccordionItem.js.map +1 -1
  5. package/dist/Accordion/ContentAccordion.cjs +3 -1
  6. package/dist/Accordion/ContentAccordion.cjs.map +1 -1
  7. package/dist/Accordion/ContentAccordion.js +3 -1
  8. package/dist/Accordion/ContentAccordion.js.map +1 -1
  9. package/dist/AuthPage/AuthPage.d.ts +0 -1
  10. package/dist/Button/DualFunctionButton.cjs +7 -3
  11. package/dist/Button/DualFunctionButton.cjs.map +1 -1
  12. package/dist/Button/DualFunctionButton.js +6 -3
  13. package/dist/Button/DualFunctionButton.js.map +1 -1
  14. package/dist/Dropdown/BasicDropdown.cjs +6 -4
  15. package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
  16. package/dist/Dropdown/BasicDropdown.js +6 -4
  17. package/dist/Dropdown/BasicDropdown.js.map +1 -1
  18. package/dist/Dropdown/DropdownButton.cjs +10 -4
  19. package/dist/Dropdown/DropdownButton.cjs.map +1 -1
  20. package/dist/Dropdown/DropdownButton.js +10 -4
  21. package/dist/Dropdown/DropdownButton.js.map +1 -1
  22. package/dist/Dropdown/DropdownButtonTypes.cjs.map +1 -1
  23. package/dist/Dropdown/DropdownButtonTypes.d.ts +1 -1
  24. package/dist/Dropdown/DropdownButtonTypes.js.map +1 -1
  25. package/dist/Dropdown/DropdownContent.cjs +14 -12
  26. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  27. package/dist/Dropdown/DropdownContent.js +14 -12
  28. package/dist/Dropdown/DropdownContent.js.map +1 -1
  29. package/dist/Dropdown/DropdownFilter.cjs +3 -1
  30. package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
  31. package/dist/Dropdown/DropdownFilter.js +3 -1
  32. package/dist/Dropdown/DropdownFilter.js.map +1 -1
  33. package/dist/Footer/Components/FooterBottomLinks.d.ts +0 -1
  34. package/dist/Footer/Components/FooterDropdownLinks.d.ts +0 -1
  35. package/dist/Footer/Components/FooterNavSection.d.ts +0 -1
  36. package/dist/Footer/Components/FooterNewsletterAndSocialSection.d.ts +0 -1
  37. package/dist/Footer/Components/FooterTop.d.ts +0 -1
  38. package/dist/Footer/Footer.d.ts +0 -1
  39. package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.d.ts +0 -1
  40. package/dist/GlobalNavigationBar/desktop/UserMenu.d.ts +0 -1
  41. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs +5 -3
  42. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs.map +1 -1
  43. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js +4 -2
  44. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js.map +1 -1
  45. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +5 -3
  46. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
  47. package/dist/GlobalNavigationBar/mobile/MobileMenu.d.ts +0 -1
  48. package/dist/GlobalNavigationBar/mobile/MobileMenu.js +4 -2
  49. package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
  50. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +5 -3
  51. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +1 -1
  52. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +4 -2
  53. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +1 -1
  54. package/dist/InputFields/Checkbox.cjs +1 -0
  55. package/dist/InputFields/Checkbox.cjs.map +1 -1
  56. package/dist/InputFields/Checkbox.js +1 -0
  57. package/dist/InputFields/Checkbox.js.map +1 -1
  58. package/dist/InputFields/DatepickerFieldHeader.d.ts +0 -1
  59. package/dist/InputFields/SearchBar.cjs +1 -0
  60. package/dist/InputFields/SearchBar.cjs.map +1 -1
  61. package/dist/InputFields/SearchBar.js +1 -0
  62. package/dist/InputFields/SearchBar.js.map +1 -1
  63. package/dist/InputFields/Textarea.cjs.map +1 -1
  64. package/dist/InputFields/Textarea.d.ts +1 -1
  65. package/dist/InputFields/Textarea.js.map +1 -1
  66. package/dist/InputFields/types.cjs.map +1 -1
  67. package/dist/InputFields/types.d.ts +1 -1
  68. package/dist/InputFields/types.js.map +1 -1
  69. package/dist/LoadingIndicator/LoadingIndicator.d.ts +0 -1
  70. package/dist/MiniProductCard/MiniProductCard.d.ts +0 -1
  71. package/dist/Paginator/Paginator.d.ts +0 -1
  72. package/dist/SideMenu/SideMenuBody.d.ts +0 -1
  73. package/dist/SideMenu/SideMenuFooter.d.ts +0 -1
  74. package/dist/SideMenu/SideMenuHeader.d.ts +0 -1
  75. package/dist/SideMenu/types.d.ts +0 -1
  76. package/dist/Switcher/SwitcherMenuItem.d.ts +0 -1
  77. package/dist/Table/TableTypes.d.ts +0 -1
  78. package/dist/Tile/TileCommonItems.d.ts +0 -1
  79. package/dist/Toggles/TogglerTypes.d.ts +0 -1
  80. package/dist/Tooltips/TooltipTypes.d.ts +0 -1
  81. package/dist/Tooltips/TooltipWrapper.d.ts +0 -1
  82. package/dist/icons/index.cjs +14 -7
  83. package/dist/icons/index.cjs.map +1 -1
  84. package/dist/icons/index.d.ts +1 -0
  85. package/dist/icons/index.js +14 -7
  86. package/dist/icons/index.js.map +1 -1
  87. package/dist/icons/systemicons/SystemIcons.cjs +2 -0
  88. package/dist/icons/systemicons/SystemIcons.cjs.map +1 -1
  89. package/dist/icons/systemicons/SystemIcons.js +2 -0
  90. package/dist/icons/systemicons/SystemIcons.js.map +1 -1
  91. package/package.json +19 -15
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownContent.js","names":["React","styled","Button","Size","ButtonDropdownContentStyling","ComponentLStyling","ComponentXLStyling","ComponentMStyling","ComponentSStyling","ComponentTextStyle","COLORS","scrollBarStyling","Checkbox","RadioButton","Z_INDEXES","MenuItem","MAX_MENU_HEIGHT","AVG_OPTION_HEIGHT","OFFSET_BEFORE_SHOW","DDContainer","div","white","dropdown","props","isButton","offsetLeft","offsetTop","neutral_100","size","Large","Medium","scrollable","maxHeight","ItemsContainer","hover","active","focus","ListContainer","itemsType","Small","MenuContentContainer","Bold","neutral_500","Regular","DividerContainer","TopItemContainer","neutral_200","ActionButtonContainer","Overlay","modal","DropdownContent","forwardRef","ref","id","customizationProps","alignLeft","isOpen","width","setIsOpen","filter","focused","setFocused","selectedValues","setSelectedValues","messageOnNoResults","outline","containerRef","onActiveDescendantChanged","ariaRolesType","useState","isUp","setIsUp","locationDefined","setLocationDefined","top","left","offset","setOffset","dropdownContentRef","useRef","itemsListRef","actionButtonRef","determineDropUp","options","items","rect","current","getBoundingClientRect","windowHeight","window","innerHeight","menuHeight","Math","min","length","instOffsetWithMenu","height","up","setNewFocusedElement","index","newFocusedElement","elRefs","oldFocusedElement","classList","remove","add","scrollIntoView","block","inline","getFilteredItems","filtrationString","toUpperCase","x","value","includes","displayLabel","findNextActiveIndex","direction","i","disabled","handleKeyDown","e","key","preventDefault","focusedNow","arrLength","haveTopItem","undefined","target","focusedElement","click","useEffect","document","addEventListener","removeEventListener","scrollPosition","handleScroll","scrollTop","useLayoutEffect","getCorrectRef","createRef","setElRefs","Array","fill","map","_","pinTopItem","multiSelect","getSuggestions","suggestion","elRef","blur","calculateOffset","handleItemClick","selected","item","newValue","onValueUpdate","getTopItem","visibleItems","allSelected","some","y","showTopItem","suggestions","find","c","selectedFirst","newValues","stopPropagation","getElements","customContent","style","cls","menuContent","action","actionLabel","actionIcon","actionLoading","actionDisabled","actionVariant","noteLabel","showDividerAbove","locked","icon"],"sources":["../../src/Dropdown/DropdownContent.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\nimport styled, { css } from 'styled-components';\nimport Button from '../Button/Button';\nimport { Size } from '../types';\nimport { ButtonDropdownContentStyling } from './CommonStyling';\nimport { ComponentLStyling, ComponentXLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\nimport { COLORS, focusStyles, scrollBarStyling } from '../styles';\nimport { Checkbox, RadioButton } from '../InputFields';\nimport { Z_INDEXES } from '../styles/z-indexes';\nimport MenuItem from '../MenuItem/MenuItem';\nimport { defaultOnMouseDownHandler } from '../common';\nimport ReactDOM from 'react-dom';\n\nconst MAX_MENU_HEIGHT = 240;\nconst AVG_OPTION_HEIGHT = 48;\nconst OFFSET_BEFORE_SHOW = 1000000;\n\nexport const DDContainer = styled.div<{ offsetTop: string; offsetLeft: string; isButton: boolean; alignLeft?: boolean; size?: Size; scrollable?: boolean; maxHeight?: string }>`\n display: none;\n pointer-events: auto;\n position: absolute;\n background-color: ${COLORS.white};\n\n z-index: ${Z_INDEXES.dropdown};\n margin: ${(props) => (props.isButton ? '-4px' : '4px 0px')};\n\n &.show {\n display: flex;\n flex-direction: column;\n justify-content: center;\n &.down,\n &.up {\n ${(props) => `transform: translate(${props.offsetLeft}, ${props.offsetTop});`}\n }\n }\n\n transform: translate(-${OFFSET_BEFORE_SHOW}px, -${OFFSET_BEFORE_SHOW}px);\n\n &.outline:focus:after {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n outline: 4px solid black;\n outline-offset: 2px;\n border-radius: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n ${(props) => (props.isButton ? ButtonDropdownContentStyling : '')};\n\n border: 1px solid ${COLORS.neutral_100};\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\n padding: 4px 0px;\n\n min-width: ${(props) => (props.size == Size.Large ? '320px' : props.size == Size.Medium ? '280px' : '240px')};\n border-radius: ${(props) => (props.size == Size.Large ? '10px' : props.size == Size.Medium ? '8px' : '6px')};\n\n max-height: ${(props) => (!props.scrollable ? 'auto' : props.maxHeight ? props.maxHeight : props.size == Size.Large ? '320px' : props.size == Size.Medium ? '280px' : '240px')};\n`;\n\nconst ItemsContainer = styled.div<{ size?: Size }>`\n > *:hover {\n z-index: ${Z_INDEXES.hover};\n }\n\n > *:active,\n > *.active {\n z-index: ${Z_INDEXES.active};\n }\n\n > *:focus {\n z-index: ${Z_INDEXES.focus};\n }\n`;\n\nconst ListContainer = styled.div<{ scrollable?: boolean; size?: Size; itemsType?: string; outline?: boolean }>`\n ${(props) => (props.scrollable ? 'overflow-y: scroll;' : '')}\n ${(props) => (props.scrollable ? 'margin-right: 6px;' : '')}\n ${(props) => (props.scrollable ? 'padding-right: 6px;' : '')}\n ${(props) => (props.itemsType != 'normal' ? 'margin-left: 4px;' : '')}\n div.divider {\n display: block;\n width: calc(100% - 40px);\n margin-left: 16px;\n border-top: 1px solid #e5e5e5;\n position: absolute;\n top: 0px;\n }\n\n ${ItemsContainer} {\n padding-top: ${(props) => (props.size == Size.Large ? '8px' : props.size == Size.Medium ? '4px' : '0px')};\n padding-bottom: ${(props) => (props.size == Size.Large ? '8px' : props.size == Size.Medium ? '4px' : '0px')};\n\n word-break: break-word;\n }\n\n *:focus {\n outline: none !important;\n }\n\n ${scrollBarStyling(Size.Small)}\n`;\n\nconst MenuContentContainer = styled.div<{ size?: Size }>`\n h1,\n h2,\n h3 {\n margin-block-start: 0px;\n margin-block-end: 0px;\n ${(props) => props.size == Size.Large && ComponentXLStyling(ComponentTextStyle.Bold, COLORS.neutral_500)}\n ${(props) => props.size == Size.Medium && ComponentLStyling(ComponentTextStyle.Bold, COLORS.neutral_500)}\n ${(props) => (props.size == Size.Small || !props.size) && ComponentMStyling(ComponentTextStyle.Bold, COLORS.neutral_500)}\n padding: ${(props) => (props.size == Size.Small || !props.size ? '10px 16px 6px' : props.size == Size.Medium ? '16px 24px 8px' : '16px 32px 8px')};\n }\n\n p {\n margin-block-start: 0px;\n margin-block-end: 0px;\n ${(props) => props.size == Size.Large && ComponentLStyling(ComponentTextStyle.Regular, COLORS.neutral_500)}\n ${(props) => props.size == Size.Medium && ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_500)}\n ${(props) => (props.size == Size.Small || !props.size) && ComponentSStyling(ComponentTextStyle.Regular, COLORS.neutral_500)}\n padding: ${(props) => (props.size == Size.Small || !props.size ? '8px 16px' : props.size == Size.Medium ? '12px 24px' : '16px 32px')};\n }\n`;\n\nconst DividerContainer = styled.div<{ size?: Size }>`\n position: relative;\n\n margin-top: ${(props) => (props.size == Size.Large ? '16px' : props.size == Size.Medium ? '12px' : props.size == Size.Small || !props.size ? '8px' : '6px')};\n\n div.divider {\n width: 100%;\n margin: 0px;\n }\n`;\n\nconst TopItemContainer = styled.div<{ size?: Size }>`\n border-bottom-style: solid;\n border-bottom-color: ${COLORS.neutral_200};\n border-bottom-width: 1px;\n margin-right: 22px;\n`;\n\nconst ActionButtonContainer = styled.div<{ size?: Size; scrollable?: boolean }>`\n ${(props) => (props.scrollable ? `border-top: 1px solid ${COLORS.neutral_200};` : '')}\n ${(props) => (props.scrollable ? 'margin-top: 4px;' : '')}\n\n padding: ${(props) => (props.size === Size.Small || !props.size ? '4px 16px 0px' : props.size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px')};\n\n button {\n width: 100%;\n }\n`;\n\nconst Overlay = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: ${Z_INDEXES.modal};\n`;\n\nexport interface DropdownItem {\n value: string;\n displayLabel?: string;\n noteLabel?: string;\n suggestion?: boolean;\n showDividerAbove?: boolean;\n disabled?: boolean;\n locked?: boolean;\n icon?: React.ReactNode;\n customContent?: React.ReactNode;\n}\n\nexport interface DropdownCustomizationProps {\n itemsType?: 'radio' | 'checkbox' | 'normal';\n menuContent?: React.ReactNode;\n scrollable?: boolean;\n multiSelect?: boolean;\n maxHeight?: string;\n actionLabel?: string;\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\n actionIcon?: React.ReactNode;\n actionLoading?: boolean;\n actionDisabled?: boolean;\n action: () => boolean | void | undefined;\n pinTopItem?: boolean;\n onValueUpdate: (values: string[]) => boolean | void | undefined;\n items: DropdownItem[];\n}\n\nexport interface DropdownProps {\n isButton: boolean;\n customizationProps: DropdownCustomizationProps;\n alignLeft?: boolean;\n isOpen: boolean;\n setIsOpen: (open: boolean) => void;\n size?: Size;\n id: string;\n filter: string;\n width?: string;\n onActiveDescendantChanged?: (descendantId?: string) => void;\n selectedValues: string[];\n setSelectedValues: (val: string[]) => void;\n messageOnNoResults: string;\n focused: number | null;\n setFocused: (focused: number | null) => void;\n outline?: boolean;\n containerRef: React.RefObject<HTMLDivElement>;\n ariaRolesType?: 'input' | 'menu';\n}\n\nconst DropdownContent = React.forwardRef<HTMLDivElement, DropdownProps>(\n (\n {\n id,\n customizationProps,\n alignLeft,\n isButton,\n size,\n isOpen,\n width,\n setIsOpen,\n filter,\n focused,\n setFocused,\n selectedValues,\n setSelectedValues,\n messageOnNoResults,\n outline,\n containerRef,\n onActiveDescendantChanged,\n ariaRolesType = 'menu',\n },\n ref,\n ) => {\n const [isUp, setIsUp] = React.useState<boolean>(false);\n const [locationDefined, setLocationDefined] = React.useState<boolean>(false);\n const [offset, setOffset] = React.useState<{ top: string; left: string }>({ top: '0', left: '0' });\n\n const dropdownContentRef = (ref as MutableRefObject<HTMLDivElement>) ?? React.useRef<HTMLDivElement>(null);\n\n if (!customizationProps.itemsType) customizationProps.itemsType = 'normal';\n if (!size) size = Size.Small;\n\n const itemsListRef = React.useRef<HTMLDivElement>(null);\n const actionButtonRef = React.useRef<HTMLButtonElement>(null);\n\n const determineDropUp = () => {\n const options = customizationProps.items;\n\n const rect = containerRef.current!.getBoundingClientRect();\n\n const windowHeight = window.innerHeight;\n const menuHeight = Math.min(MAX_MENU_HEIGHT, options.length * AVG_OPTION_HEIGHT);\n const instOffsetWithMenu = rect.top + rect.height + menuHeight;\n\n const up = instOffsetWithMenu >= windowHeight;\n\n setOffset({\n top: up ? `calc(-100% - ${rect.height}px ${isButton ? '' : '- 8px'})` : '0',\n left: alignLeft ? `calc(-${rect.width}px)` : `calc(-100%)`,\n });\n\n setIsUp(up);\n setLocationDefined(true);\n };\n\n const setNewFocusedElement = (index: number) => {\n if (outline) dropdownContentRef.current?.focus();\n\n const newFocusedElement = elRefs[index];\n if (onActiveDescendantChanged) onActiveDescendantChanged(newFocusedElement.current?.id || '');\n\n const oldFocusedElement = focused || focused === 0 ? elRefs[focused] : null;\n if (newFocusedElement && newFocusedElement !== oldFocusedElement) {\n setFocused(index);\n oldFocusedElement?.current?.classList.remove('dropdown-hover');\n\n newFocusedElement.current?.classList.add('dropdown-hover');\n newFocusedElement.current?.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n });\n }\n };\n\n const getFilteredItems = () => {\n const filtrationString = (filter ?? '').toUpperCase();\n return customizationProps.items.filter((x) => x?.value?.toUpperCase().includes(filtrationString) || x?.displayLabel?.toUpperCase().includes(filtrationString));\n };\n\n const findNextActiveIndex = (index: number, direction: number, items: DropdownItem[]) => {\n for (let i = index + direction; i > 0 && i <= items.length; i += direction) {\n if (!items[i - 1]?.disabled) {\n return i;\n }\n }\n\n return index;\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (isOpen) {\n if (e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n let focusedNow = focused || focused === 0 ? focused : arrLength + 1;\n if (!!focusedNow) {\n focusedNow = focusedNow === 1 && haveTopItem() ? 0 : findNextActiveIndex(focusedNow, -1, getFilteredItems());\n\n setNewFocusedElement(focusedNow);\n }\n } else if (e.key === 'ArrowDown' || e.key === 'Down') {\n e.preventDefault();\n let focusedNow = focused;\n\n focusedNow = !!focusedNow || focusedNow === 0 ? findNextActiveIndex(focusedNow, 1, getFilteredItems()) : haveTopItem() ? 0 : 1;\n\n setNewFocusedElement(focusedNow);\n } else if (e.key === 'Escape' || e.key === 'Esc') {\n setIsOpen(false);\n setFocused(null);\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\n } else if ((e.key === 'Enter' || e.key === ' ') && focused !== null && e.target !== actionButtonRef?.current) {\n e.preventDefault();\n const focusedElement = elRefs[focused];\n if (focusedElement) {\n focusedElement.current?.click();\n }\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\n }\n }\n };\n\n React.useEffect(() => {\n document.addEventListener('keydown', handleKeyDown);\n return () => {\n document.removeEventListener('keydown', handleKeyDown);\n };\n });\n\n const scrollPosition = React.useRef<number | undefined>(0);\n const handleScroll = () => {\n scrollPosition.current = itemsListRef.current?.scrollTop;\n };\n React.useLayoutEffect(() => {\n if (itemsListRef.current) itemsListRef.current.scrollTop = scrollPosition.current ?? 0;\n }, [selectedValues]);\n\n const getCorrectRef = (ref: React.RefObject<HTMLElement>): React.RefObject<HTMLElement> => {\n switch (customizationProps.itemsType) {\n case 'normal':\n return (ref as React.RefObject<HTMLButtonElement>) || React.createRef<HTMLButtonElement>();\n default:\n return (ref as React.RefObject<HTMLDivElement>) || React.createRef<HTMLDivElement>();\n }\n };\n\n const arrLength = getFilteredItems().length;\n const [elRefs, setElRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\n\n React.useEffect(() => {\n if (elRefs?.length !== arrLength) {\n setFocused(null);\n }\n\n setElRefs((elRefs) =>\n Array(arrLength + 1)\n .fill(null)\n .map((_, i) => getCorrectRef(elRefs[i])),\n );\n }, [isOpen, arrLength]);\n\n React.useLayoutEffect(() => {\n isOpen && !locationDefined && determineDropUp();\n }, [isOpen, locationDefined]);\n\n const haveTopItem = () => {\n if (!customizationProps.pinTopItem) return false;\n\n if (customizationProps.itemsType === 'radio' && selectedValues && selectedValues?.length > 0) return true;\n else if (customizationProps.itemsType === 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) return true;\n else if (customizationProps.itemsType === 'normal' && getSuggestions()?.length > 0) return true;\n return false;\n };\n\n const getSuggestions = () => {\n return getFilteredItems().filter((x) => x.suggestion);\n };\n\n /**\n * when dropdown opens set correct position of focused item\n * */\n React.useLayoutEffect(() => {\n if (isOpen && (focused || focused === 0)) {\n setNewFocusedElement(focused === 0 && !haveTopItem() ? 1 : focused);\n }\n }, [isOpen, focused]);\n\n /**\n * Reset dropdown content state on close\n * */\n React.useEffect(() => {\n if (!isOpen) {\n setLocationDefined(false);\n for (let elRef of elRefs) {\n elRef.current?.classList.remove('dropdown-hover');\n }\n setFocused(null);\n if(onActiveDescendantChanged) onActiveDescendantChanged(undefined);\n dropdownContentRef.current?.classList.remove('outline');\n dropdownContentRef.current?.blur();\n } else {\n if (outline) {\n dropdownContentRef.current?.classList.add('outline');\n dropdownContentRef.current?.focus();\n }\n }\n }, [isOpen, dropdownContentRef, focused, outline]);\n\n /**\n * Scroll item container to top when dropdown opens\n * */\n React.useEffect(() => {\n if (isOpen && itemsListRef.current) {\n itemsListRef.current.scrollTop = 0;\n }\n }, [isOpen]);\n\n React.useEffect(() => {\n if (isOpen) {\n calculateOffset();\n window.addEventListener('scroll', calculateOffset);\n window.addEventListener('resize', calculateOffset);\n }\n return () => {\n window.removeEventListener('scroll', calculateOffset);\n window.removeEventListener('resize', calculateOffset);\n };\n }, [isOpen]);\n\n const handleItemClick = (selected: boolean, item: DropdownItem) => {\n let newValue: string[] = [];\n if (customizationProps.multiSelect) {\n if (selected) newValue = [...selectedValues, item.value];\n else newValue = selectedValues.filter((x) => x != item.value);\n } else newValue = selected ? [item.value] : [];\n\n setSelectedValues(newValue);\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValue)) {\n setIsOpen(false);\n }\n };\n\n const getTopItem = () => {\n if (!customizationProps.pinTopItem) return;\n const visibleItems = getFilteredItems();\n const allSelected = selectedValues?.filter((x) => visibleItems.some((y) => y.value == x)).length == visibleItems.length;\n let showTopItem = false;\n const suggestions = getSuggestions();\n const displayLabel = selectedValues[0] ? customizationProps.items?.find((c) => c.value === selectedValues[0])?.displayLabel : undefined;\n if (customizationProps.itemsType == 'radio' && selectedValues && selectedValues?.length > 0) showTopItem = true;\n else if (customizationProps.itemsType == 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) showTopItem = true;\n else if (customizationProps.itemsType == 'normal' && suggestions.length > 0) showTopItem = true;\n\n if (!showTopItem) return;\n\n const selectedFirst = selectedValues.length > 0 ? visibleItems.find((x) => x.value == selectedValues[0]) : null;\n\n return (\n <TopItemContainer size={size}>\n {customizationProps.itemsType === 'radio' && (\n <RadioButton\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\n role={ariaRolesType == 'menu' ? 'menuitemradio' : 'option'}\n iconPointerEventsTransparent={true}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\n tabIndexVal={-1}\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\n select={() => {}}\n label={selectedFirst?.displayLabel ?? selectedFirst?.value}\n size={size}\n id={`${id}_topitem`}\n selected={true}\n />\n )}\n {customizationProps.itemsType === 'checkbox' && (\n <Checkbox\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\n role={ariaRolesType == 'menu' ? 'menuitemradio' : 'option'}\n tabIndexVal={-1}\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\n select={(selected: boolean) => {\n if (!customizationProps.multiSelect) return;\n\n const newValues = selected ? visibleItems.map((x) => x.value) : [];\n setSelectedValues(newValues);\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValues)) setIsOpen(false);\n }}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_checkbox_selectall`)}\n iconPointerEventsTransparent={true}\n semiSelected={customizationProps.multiSelect && !allSelected && selectedValues?.length > 0}\n size={size}\n id={`${id}_checkbox_selectall`}\n label={customizationProps.multiSelect ? 'Select all' : selectedFirst?.displayLabel ?? selectedFirst?.value}\n selected={!customizationProps.multiSelect || allSelected}\n />\n )}\n {customizationProps.itemsType === 'normal' && (\n <>\n {suggestions.map((x) => (\n <MenuItem\n role={ariaRolesType == 'menu' ? 'menuitemradio' : 'option'}\n key={`${id}_topitem_${x.value}`}\n item={x}\n size={size}\n active={false}\n tabIndex={-1}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\n ref={elRefs[0] as React.RefObject<HTMLButtonElement>}\n id={`${id}_topitem`}\n onClickHandler={(e: any) => {\n e.stopPropagation();\n customizationProps.onValueUpdate([x.value]);\n setSelectedValues([x.value]);\n setIsOpen(false);\n setFocused(null);\n }}\n />\n ))}\n </>\n )}\n </TopItemContainer>\n );\n };\n\n const getElements = (messageOnNoResults: string, size: Size) => {\n if (getFilteredItems().length === 0) {\n return <MenuItem item={{ value: messageOnNoResults, disabled: true }} size={size} id=\"noResultsFound\" active={false} onClickHandler={(e) => {}} />;\n }\n return (\n <ItemsContainer size={size}>\n {getFilteredItems()\n .filter((x) => x && (customizationProps.itemsType != 'normal' || !x.suggestion))\n .map((item, index) => {\n return (\n <React.Fragment key={`key_${id}_${item.value}`}>\n {item.customContent}\n {!item.customContent && customizationProps.itemsType == 'radio' && (\n <RadioButton\n role={ariaRolesType == 'menu' ? 'menuitemradio' : 'option'}\n select={(selected: boolean) => handleItemClick(selected, item)}\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\n size={size}\n tabIndexVal={-1}\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\n iconPointerEventsTransparent={true}\n disabled={item?.disabled}\n key={`key_${id}_${index + 1}`}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\n id={`${id}_${index + 1}`}\n label={item.displayLabel ?? item.value}\n selected={selectedValues?.includes(item.value)}\n />\n )}\n {!item.customContent && customizationProps.itemsType == 'checkbox' && (\n <Checkbox\n role={ariaRolesType == 'menu' ? 'menuitemradio' : 'option'}\n select={(selected: boolean) => handleItemClick(selected, item)}\n iconPointerEventsTransparent={true}\n disabled={item?.disabled}\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\n size={size}\n tabIndexVal={-1}\n key={`key_${id}_${index + 1}`}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\n id={`${id}_${index + 1}`}\n label={item.displayLabel ?? item.value}\n selected={selectedValues?.includes(item.value)}\n />\n )}\n {!item.customContent && (customizationProps.itemsType == 'normal' || !customizationProps.itemsType) && (\n <MenuItem\n role={ariaRolesType == 'menu' ? 'menuitemradio' : 'option'}\n key={`key_${id}_${index + 1}`}\n id={`${id}_${index + 1}`}\n item={item}\n tabIndex={-1}\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\n size={size}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\n active={selectedValues?.includes(item.value)}\n ref={elRefs[index + 1] as React.RefObject<HTMLButtonElement>}\n onClickHandler={(e: any) => {\n e.stopPropagation();\n customizationProps.onValueUpdate([item.value]);\n setSelectedValues([item.value]);\n setIsOpen(false);\n setFocused(null);\n }}\n />\n )}\n </React.Fragment>\n );\n })}\n </ItemsContainer>\n );\n };\n\n const calculateOffset = () => {\n const rect = containerRef?.current?.getBoundingClientRect();\n if (rect) {\n dropdownContentRef.current.style.left = `${rect.x + rect.width}px`;\n dropdownContentRef.current.style.top = `${rect.y + rect.height}px`;\n dropdownContentRef.current.style.width = width ?? `${rect.width}px`;\n }\n };\n\n const cls = `${isOpen ? 'show' : ''} ${isOpen && outline ? 'outline' : ''} ${locationDefined ? (isUp ? 'up' : 'down') : ''}`;\n\n return (\n <Overlay>\n <DDContainer\n ref={dropdownContentRef}\n size={size}\n offsetTop={offset.top}\n offsetLeft={offset.left}\n tabIndex={-1}\n isButton={isButton}\n alignLeft={alignLeft}\n scrollable={customizationProps.scrollable}\n maxHeight={customizationProps.maxHeight}\n className={cls}>\n <ListContainer\n role=\"group\"\n size={size}\n itemsType={customizationProps.itemsType}\n onScroll={handleScroll}\n ref={itemsListRef}\n outline={outline}\n scrollable={customizationProps.scrollable}>\n {customizationProps.menuContent && (\n <MenuContentContainer size={size}>\n {customizationProps.menuContent}\n <DividerContainer size={size}>\n <div className=\"divider\" />\n </DividerContainer>\n </MenuContentContainer>\n )}\n {customizationProps.pinTopItem && getTopItem()}\n {getElements(messageOnNoResults, size)}\n </ListContainer>\n {customizationProps.action && customizationProps.actionLabel && (\n <ActionButtonContainer size={size} scrollable={customizationProps.scrollable}>\n <Button\n width=\"100%\"\n role=\"menuitem\"\n icon={customizationProps.actionIcon}\n ref={actionButtonRef}\n loading={customizationProps.actionLoading}\n disabled={customizationProps.actionDisabled}\n variant={customizationProps.actionVariant ?? 'primary'}\n size={size}\n onClick={() => customizationProps.action() && setIsOpen(false)}>\n {customizationProps.actionLabel}\n </Button>\n </ActionButtonContainer>\n )}\n </DDContainer>\n </Overlay>\n );\n },\n);\n\nexport default DropdownContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownContent.js","names":["React","styled","Button","Size","ButtonDropdownContentStyling","ComponentLStyling","ComponentXLStyling","ComponentMStyling","ComponentSStyling","ComponentTextStyle","COLORS","scrollBarStyling","Checkbox","RadioButton","Z_INDEXES","MenuItem","MAX_MENU_HEIGHT","AVG_OPTION_HEIGHT","OFFSET_BEFORE_SHOW","DDContainer","div","white","dropdown","props","isButton","offsetLeft","offsetTop","neutral_100","size","Large","Medium","scrollable","maxHeight","ItemsContainer","hover","active","focus","ListContainer","itemsType","Small","MenuContentContainer","Bold","neutral_500","Regular","DividerContainer","TopItemContainer","neutral_200","ActionButtonContainer","Overlay","modal","DropdownContent","forwardRef","ref","id","customizationProps","alignLeft","isOpen","width","setIsOpen","filter","focused","setFocused","selectedValues","setSelectedValues","messageOnNoResults","outline","containerRef","onActiveDescendantChanged","ariaRolesType","useState","isUp","setIsUp","locationDefined","setLocationDefined","top","left","offset","setOffset","dropdownContentRef","useRef","itemsListRef","actionButtonRef","determineDropUp","options","items","rect","current","getBoundingClientRect","windowHeight","window","innerHeight","menuHeight","Math","min","length","instOffsetWithMenu","height","up","setNewFocusedElement","index","newFocusedElement","elRefs","oldFocusedElement","classList","remove","add","scrollIntoView","block","inline","getFilteredItems","filtrationString","toUpperCase","x","value","includes","displayLabel","findNextActiveIndex","direction","i","disabled","handleKeyDown","e","key","preventDefault","focusedNow","arrLength","haveTopItem","undefined","target","focusedElement","click","useEffect","document","addEventListener","removeEventListener","scrollPosition","handleScroll","scrollTop","useLayoutEffect","getCorrectRef","createRef","setElRefs","Array","fill","map","_","pinTopItem","multiSelect","getSuggestions","suggestion","elRef","blur","calculateOffset","handleItemClick","selected","item","newValue","onValueUpdate","getTopItem","visibleItems","allSelected","some","y","showTopItem","suggestions","find","c","selectedFirst","newValues","stopPropagation","getElements","customContent","style","cls","menuContent","action","actionLabel","actionIcon","actionLoading","actionDisabled","actionVariant","noteLabel","showDividerAbove","locked","icon"],"sources":["../../src/Dropdown/DropdownContent.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\nimport styled, { css } from 'styled-components';\nimport Button from '../Button/Button';\nimport { Size } from '../types';\nimport { ButtonDropdownContentStyling } from './CommonStyling';\nimport { ComponentLStyling, ComponentXLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\nimport { COLORS, focusStyles, scrollBarStyling } from '../styles';\nimport { Checkbox, RadioButton } from '../InputFields';\nimport { Z_INDEXES } from '../styles/z-indexes';\nimport MenuItem from '../MenuItem/MenuItem';\nimport { defaultOnMouseDownHandler } from '../common';\nimport ReactDOM from 'react-dom';\n\nconst MAX_MENU_HEIGHT = 240;\nconst AVG_OPTION_HEIGHT = 48;\nconst OFFSET_BEFORE_SHOW = 1000000;\n\nexport const DDContainer = styled.div<{ offsetTop: string; offsetLeft: string; isButton: boolean; alignLeft?: boolean; size?: Size; scrollable?: boolean; maxHeight?: string }>`\n display: none;\n pointer-events: auto;\n position: absolute;\n background-color: ${COLORS.white};\n\n z-index: ${Z_INDEXES.dropdown};\n margin: ${(props) => (props.isButton ? '-4px' : '4px 0px')};\n\n &.show {\n display: flex;\n flex-direction: column;\n justify-content: center;\n &.down,\n &.up {\n ${(props) => `transform: translate(${props.offsetLeft}, ${props.offsetTop});`}\n }\n }\n\n transform: translate(-${OFFSET_BEFORE_SHOW}px, -${OFFSET_BEFORE_SHOW}px);\n\n &.outline:focus:after {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n outline: 4px solid black;\n outline-offset: 2px;\n border-radius: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n ${(props) => (props.isButton ? ButtonDropdownContentStyling : '')};\n\n border: 1px solid ${COLORS.neutral_100};\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\n padding: 4px 0px;\n\n min-width: ${(props) => (props.size == Size.Large ? '320px' : props.size == Size.Medium ? '280px' : '240px')};\n border-radius: ${(props) => (props.size == Size.Large ? '10px' : props.size == Size.Medium ? '8px' : '6px')};\n\n max-height: ${(props) => (!props.scrollable ? 'auto' : props.maxHeight ? props.maxHeight : props.size == Size.Large ? '320px' : props.size == Size.Medium ? '280px' : '240px')};\n`;\n\nconst ItemsContainer = styled.div<{ size?: Size }>`\n > *:hover {\n z-index: ${Z_INDEXES.hover};\n }\n\n > *:active,\n > *.active {\n z-index: ${Z_INDEXES.active};\n }\n\n > *:focus {\n z-index: ${Z_INDEXES.focus};\n }\n`;\n\nconst ListContainer = styled.div<{ scrollable?: boolean; size?: Size; itemsType?: string; outline?: boolean }>`\n ${(props) => (props.scrollable ? 'overflow-y: scroll;' : '')}\n ${(props) => (props.scrollable ? 'margin-right: 6px;' : '')}\n ${(props) => (props.scrollable ? 'padding-right: 6px;' : '')}\n ${(props) => (props.itemsType != 'normal' ? 'margin-left: 4px;' : '')}\n div.divider {\n display: block;\n width: calc(100% - 40px);\n margin-left: 16px;\n border-top: 1px solid #e5e5e5;\n position: absolute;\n top: 0px;\n }\n\n ${ItemsContainer} {\n padding-top: ${(props) => (props.size == Size.Large ? '8px' : props.size == Size.Medium ? '4px' : '0px')};\n padding-bottom: ${(props) => (props.size == Size.Large ? '8px' : props.size == Size.Medium ? '4px' : '0px')};\n\n word-break: break-word;\n }\n\n *:focus {\n outline: none !important;\n }\n\n ${scrollBarStyling(Size.Small)}\n`;\n\nconst MenuContentContainer = styled.div<{ size?: Size }>`\n h1,\n h2,\n h3 {\n margin-block-start: 0px;\n margin-block-end: 0px;\n ${(props) => props.size == Size.Large && ComponentXLStyling(ComponentTextStyle.Bold, COLORS.neutral_500)}\n ${(props) => props.size == Size.Medium && ComponentLStyling(ComponentTextStyle.Bold, COLORS.neutral_500)}\n ${(props) => (props.size == Size.Small || !props.size) && ComponentMStyling(ComponentTextStyle.Bold, COLORS.neutral_500)}\n padding: ${(props) => (props.size == Size.Small || !props.size ? '10px 16px 6px' : props.size == Size.Medium ? '16px 24px 8px' : '16px 32px 8px')};\n }\n\n p {\n margin-block-start: 0px;\n margin-block-end: 0px;\n ${(props) => props.size == Size.Large && ComponentLStyling(ComponentTextStyle.Regular, COLORS.neutral_500)}\n ${(props) => props.size == Size.Medium && ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_500)}\n ${(props) => (props.size == Size.Small || !props.size) && ComponentSStyling(ComponentTextStyle.Regular, COLORS.neutral_500)}\n padding: ${(props) => (props.size == Size.Small || !props.size ? '8px 16px' : props.size == Size.Medium ? '12px 24px' : '16px 32px')};\n }\n`;\n\nconst DividerContainer = styled.div<{ size?: Size }>`\n position: relative;\n\n margin-top: ${(props) => (props.size == Size.Large ? '16px' : props.size == Size.Medium ? '12px' : props.size == Size.Small || !props.size ? '8px' : '6px')};\n\n div.divider {\n width: 100%;\n margin: 0px;\n }\n`;\n\nconst TopItemContainer = styled.div<{ size?: Size }>`\n border-bottom-style: solid;\n border-bottom-color: ${COLORS.neutral_200};\n border-bottom-width: 1px;\n margin-right: 22px;\n`;\n\nconst ActionButtonContainer = styled.div<{ size?: Size; scrollable?: boolean }>`\n ${(props) => (props.scrollable ? `border-top: 1px solid ${COLORS.neutral_200};` : '')}\n ${(props) => (props.scrollable ? 'margin-top: 4px;' : '')}\n\n padding: ${(props) => (props.size === Size.Small || !props.size ? '4px 16px 0px' : props.size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px')};\n\n button {\n width: 100%;\n }\n`;\n\nconst Overlay = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: ${Z_INDEXES.modal};\n`;\n\nexport interface DropdownItem {\n value: string;\n displayLabel?: string;\n noteLabel?: string;\n suggestion?: boolean;\n showDividerAbove?: boolean;\n disabled?: boolean;\n locked?: boolean;\n icon?: React.ReactNode;\n customContent?: React.ReactNode;\n}\n\nexport interface DropdownCustomizationProps {\n itemsType?: 'radio' | 'checkbox' | 'normal';\n menuContent?: React.ReactNode;\n scrollable?: boolean;\n multiSelect?: boolean;\n maxHeight?: string;\n actionLabel?: string;\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\n actionIcon?: React.ReactNode;\n actionLoading?: boolean;\n actionDisabled?: boolean;\n action: () => boolean | void | undefined;\n pinTopItem?: boolean;\n onValueUpdate: (values: string[]) => boolean | void | undefined;\n items: DropdownItem[];\n}\n\nexport interface DropdownProps {\n isButton: boolean;\n customizationProps: DropdownCustomizationProps;\n alignLeft?: boolean;\n isOpen: boolean;\n setIsOpen: (open: boolean) => void;\n size?: Size;\n id: string;\n filter: string;\n width?: string;\n onActiveDescendantChanged?: (descendantId?: string) => void;\n selectedValues: string[];\n setSelectedValues: (val: string[]) => void;\n messageOnNoResults: string;\n focused: number | null;\n setFocused: (focused: number | null) => void;\n outline?: boolean;\n containerRef: React.RefObject<HTMLDivElement>;\n ariaRolesType?: 'input' | 'menu';\n}\n\nconst DropdownContent = React.forwardRef<HTMLDivElement, DropdownProps>(\n (\n {\n id,\n customizationProps,\n alignLeft,\n isButton,\n size,\n isOpen,\n width,\n setIsOpen,\n filter,\n focused,\n setFocused,\n selectedValues,\n setSelectedValues,\n messageOnNoResults,\n outline,\n containerRef,\n onActiveDescendantChanged,\n ariaRolesType = 'menu',\n },\n ref,\n ) => {\n const [isUp, setIsUp] = React.useState<boolean>(false);\n const [locationDefined, setLocationDefined] = React.useState<boolean>(false);\n const [offset, setOffset] = React.useState<{ top: string; left: string }>({ top: '0', left: '0' });\n\n const dropdownContentRef = (ref as MutableRefObject<HTMLDivElement>) ?? React.useRef<HTMLDivElement>(null);\n\n if (!customizationProps.itemsType) customizationProps.itemsType = 'normal';\n if (!size) size = Size.Small;\n\n const itemsListRef = React.useRef<HTMLDivElement>(null);\n const actionButtonRef = React.useRef<HTMLButtonElement>(null);\n\n const determineDropUp = () => {\n const options = customizationProps.items;\n\n const rect = containerRef.current!.getBoundingClientRect();\n\n const windowHeight = window.innerHeight;\n const menuHeight = Math.min(MAX_MENU_HEIGHT, options.length * AVG_OPTION_HEIGHT);\n const instOffsetWithMenu = rect.top + rect.height + menuHeight;\n\n const up = instOffsetWithMenu >= windowHeight;\n\n setOffset({\n top: up ? `calc(-100% - ${rect.height}px ${isButton ? '' : '- 8px'})` : '0',\n left: alignLeft ? `calc(-${rect.width}px)` : `calc(-100%)`,\n });\n\n setIsUp(up);\n setLocationDefined(true);\n };\n\n const setNewFocusedElement = (index: number) => {\n if (outline) dropdownContentRef.current?.focus();\n\n const newFocusedElement = elRefs[index];\n if (onActiveDescendantChanged) onActiveDescendantChanged(index == 0 ? `${id}_topitem` : `${id}_${index}`);\n\n const oldFocusedElement = focused || focused === 0 ? elRefs[focused] : null;\n if (newFocusedElement && newFocusedElement !== oldFocusedElement) {\n setFocused(index);\n oldFocusedElement?.current?.classList.remove('dropdown-hover');\n\n newFocusedElement.current?.classList.add('dropdown-hover');\n newFocusedElement.current?.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n });\n }\n };\n\n const getFilteredItems = () => {\n const filtrationString = (filter ?? '').toUpperCase();\n return customizationProps.items.filter((x) => x?.value?.toUpperCase().includes(filtrationString) || x?.displayLabel?.toUpperCase().includes(filtrationString));\n };\n\n const findNextActiveIndex = (index: number, direction: number, items: DropdownItem[]) => {\n for (let i = index + direction; i > 0 && i <= items.length; i += direction) {\n if (!items[i - 1]?.disabled) {\n return i;\n }\n }\n\n return index;\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (isOpen) {\n if (e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n let focusedNow = focused || focused === 0 ? focused : arrLength + 1;\n if (!!focusedNow) {\n focusedNow = focusedNow === 1 && haveTopItem() ? 0 : findNextActiveIndex(focusedNow, -1, getFilteredItems());\n\n setNewFocusedElement(focusedNow);\n }\n } else if (e.key === 'ArrowDown' || e.key === 'Down') {\n e.preventDefault();\n let focusedNow = focused;\n\n focusedNow = !!focusedNow || focusedNow === 0 ? findNextActiveIndex(focusedNow, 1, getFilteredItems()) : haveTopItem() ? 0 : 1;\n\n setNewFocusedElement(focusedNow);\n } else if (e.key === 'Escape' || e.key === 'Esc') {\n setIsOpen(false);\n setFocused(null);\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\n } else if ((e.key === 'Enter' || e.key === ' ') && focused !== null && e.target !== actionButtonRef?.current) {\n e.preventDefault();\n const focusedElement = elRefs[focused];\n if (focusedElement) {\n focusedElement.current?.click();\n }\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\n }\n }\n };\n\n React.useEffect(() => {\n document.addEventListener('keydown', handleKeyDown);\n return () => {\n document.removeEventListener('keydown', handleKeyDown);\n };\n });\n\n const scrollPosition = React.useRef<number | undefined>(0);\n const handleScroll = () => {\n scrollPosition.current = itemsListRef.current?.scrollTop;\n };\n React.useLayoutEffect(() => {\n if (itemsListRef.current) itemsListRef.current.scrollTop = scrollPosition.current ?? 0;\n }, [selectedValues]);\n\n const getCorrectRef = (ref: React.RefObject<HTMLElement>): React.RefObject<HTMLElement> => {\n switch (customizationProps.itemsType) {\n case 'normal':\n return (ref as React.RefObject<HTMLButtonElement>) || React.createRef<HTMLButtonElement>();\n default:\n return (ref as React.RefObject<HTMLDivElement>) || React.createRef<HTMLDivElement>();\n }\n };\n\n const arrLength = getFilteredItems().length;\n const [elRefs, setElRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\n\n React.useEffect(() => {\n if (elRefs?.length !== arrLength) {\n setFocused(null);\n }\n\n setElRefs((elRefs) =>\n Array(arrLength + 1)\n .fill(null)\n .map((_, i) => getCorrectRef(elRefs[i])),\n );\n }, [isOpen, arrLength]);\n\n React.useLayoutEffect(() => {\n isOpen && !locationDefined && determineDropUp();\n }, [isOpen, locationDefined]);\n\n const haveTopItem = () => {\n if (!customizationProps.pinTopItem) return false;\n\n if (customizationProps.itemsType === 'radio' && selectedValues && selectedValues?.length > 0) return true;\n else if (customizationProps.itemsType === 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) return true;\n else if (customizationProps.itemsType === 'normal' && getSuggestions()?.length > 0) return true;\n return false;\n };\n\n const getSuggestions = () => {\n return getFilteredItems().filter((x) => x.suggestion);\n };\n\n /**\n * when dropdown opens set correct position of focused item\n * */\n React.useLayoutEffect(() => {\n if (isOpen && (focused || focused === 0)) {\n setNewFocusedElement(focused === 0 && !haveTopItem() ? 1 : focused);\n }\n }, [isOpen, focused]);\n\n /**\n * Reset dropdown content state on close\n * */\n React.useEffect(() => {\n if (!isOpen) {\n setLocationDefined(false);\n for (let elRef of elRefs) {\n elRef.current?.classList.remove('dropdown-hover');\n }\n setFocused(null);\n if(onActiveDescendantChanged) onActiveDescendantChanged(undefined);\n dropdownContentRef.current?.classList.remove('outline');\n dropdownContentRef.current?.blur();\n } else {\n if (outline) {\n dropdownContentRef.current?.classList.add('outline');\n dropdownContentRef.current?.focus();\n }\n }\n }, [isOpen, dropdownContentRef, focused, outline]);\n\n /**\n * Scroll item container to top when dropdown opens\n * */\n React.useEffect(() => {\n if (isOpen && itemsListRef.current) {\n itemsListRef.current.scrollTop = 0;\n }\n }, [isOpen]);\n\n React.useEffect(() => {\n if (isOpen) {\n calculateOffset();\n window.addEventListener('scroll', calculateOffset);\n window.addEventListener('resize', calculateOffset);\n }\n return () => {\n window.removeEventListener('scroll', calculateOffset);\n window.removeEventListener('resize', calculateOffset);\n };\n }, [isOpen]);\n\n const handleItemClick = (selected: boolean, item: DropdownItem) => {\n let newValue: string[] = [];\n if (customizationProps.multiSelect) {\n if (selected) newValue = [...selectedValues, item.value];\n else newValue = selectedValues.filter((x) => x != item.value);\n } else newValue = selected ? [item.value] : [];\n\n setSelectedValues(newValue);\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValue)) {\n setIsOpen(false);\n }\n };\n\n const getTopItem = () => {\n if (!customizationProps.pinTopItem) return;\n const visibleItems = getFilteredItems();\n const allSelected = selectedValues?.filter((x) => visibleItems.some((y) => y.value == x)).length == visibleItems.length;\n let showTopItem = false;\n const suggestions = getSuggestions();\n const displayLabel = selectedValues[0] ? customizationProps.items?.find((c) => c.value === selectedValues[0])?.displayLabel : undefined;\n if (customizationProps.itemsType == 'radio' && selectedValues && selectedValues?.length > 0) showTopItem = true;\n else if (customizationProps.itemsType == 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) showTopItem = true;\n else if (customizationProps.itemsType == 'normal' && suggestions.length > 0) showTopItem = true;\n\n if (!showTopItem) return;\n\n const selectedFirst = selectedValues.length > 0 ? visibleItems.find((x) => x.value == selectedValues[0]) : null;\n\n return (\n <TopItemContainer size={size}>\n {customizationProps.itemsType === 'radio' && (\n <RadioButton\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\n role='menuitemradio'\n iconPointerEventsTransparent={true}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\n tabIndexVal={-1}\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\n select={() => {}}\n label={selectedFirst?.displayLabel ?? selectedFirst?.value}\n size={size}\n id={`${id}_topitem`}\n selected={true}\n />\n )}\n {customizationProps.itemsType === 'checkbox' && (\n <Checkbox\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\n role='menuitemcheckbox'\n tabIndexVal={-1}\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\n select={(selected: boolean) => {\n if (!customizationProps.multiSelect) return;\n\n const newValues = selected ? visibleItems.map((x) => x.value) : [];\n setSelectedValues(newValues);\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValues)) setIsOpen(false);\n }}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\n iconPointerEventsTransparent={true}\n semiSelected={customizationProps.multiSelect && !allSelected && selectedValues?.length > 0}\n size={size}\n id={`${id}_checkbox_selectall`}\n label={customizationProps.multiSelect ? 'Select all' : selectedFirst?.displayLabel ?? selectedFirst?.value}\n selected={!customizationProps.multiSelect || allSelected}\n />\n )}\n {customizationProps.itemsType === 'normal' && (\n <>\n {suggestions.map((x) => (\n <MenuItem\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \n key={`${id}_topitem_${x.value}`}\n item={x}\n size={size}\n active={false}\n tabIndex={-1}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\n ref={elRefs[0] as React.RefObject<HTMLButtonElement>}\n id={`${id}_topitem`}\n onClickHandler={(e: any) => {\n e.stopPropagation();\n customizationProps.onValueUpdate([x.value]);\n setSelectedValues([x.value]);\n setIsOpen(false);\n setFocused(null);\n }}\n />\n ))}\n </>\n )}\n </TopItemContainer>\n );\n };\n\n const getElements = (messageOnNoResults: string, size: Size) => {\n if (getFilteredItems().length === 0) {\n return <MenuItem item={{ value: messageOnNoResults, disabled: true }} size={size} id=\"noResultsFound\" active={false} onClickHandler={(e) => {}} />;\n }\n return (\n <ItemsContainer size={size}>\n {getFilteredItems()\n .filter((x) => x && (customizationProps.itemsType != 'normal' || !x.suggestion))\n .map((item, index) => {\n return (\n <React.Fragment key={`key_${id}_${item.value}`}>\n {item.customContent}\n {!item.customContent && customizationProps.itemsType == 'radio' && (\n <RadioButton\n role='menuitemradio'\n select={(selected: boolean) => handleItemClick(selected, item)}\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\n size={size}\n tabIndexVal={-1}\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\n iconPointerEventsTransparent={true}\n disabled={item?.disabled}\n key={`key_${id}_${index + 1}`}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\n id={`${id}_${index + 1}`}\n label={item.displayLabel ?? item.value}\n selected={selectedValues?.includes(item.value)}\n />\n )}\n {!item.customContent && customizationProps.itemsType == 'checkbox' && (\n <Checkbox\n role='menuitemcheckbox'\n select={(selected: boolean) => handleItemClick(selected, item)}\n iconPointerEventsTransparent={true}\n disabled={item?.disabled}\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\n size={size}\n tabIndexVal={-1}\n key={`key_${id}_${index + 1}`}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\n id={`${id}_${index + 1}`}\n label={item.displayLabel ?? item.value}\n selected={selectedValues?.includes(item.value)}\n />\n )}\n {!item.customContent && (customizationProps.itemsType == 'normal' || !customizationProps.itemsType) && (\n <MenuItem\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \n key={`key_${id}_${index + 1}`}\n id={`${id}_${index + 1}`}\n item={item}\n tabIndex={-1}\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\n size={size}\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\n active={selectedValues?.includes(item.value)}\n ref={elRefs[index + 1] as React.RefObject<HTMLButtonElement>}\n onClickHandler={(e: any) => {\n e.stopPropagation();\n customizationProps.onValueUpdate([item.value]);\n setSelectedValues([item.value]);\n setIsOpen(false);\n setFocused(null);\n }}\n />\n )}\n </React.Fragment>\n );\n })}\n </ItemsContainer>\n );\n };\n\n const calculateOffset = () => {\n const rect = containerRef?.current?.getBoundingClientRect();\n if (rect) {\n dropdownContentRef.current.style.left = `${rect.x + rect.width}px`;\n dropdownContentRef.current.style.top = `${rect.y + rect.height}px`;\n dropdownContentRef.current.style.width = width ?? `${rect.width}px`;\n }\n };\n\n const cls = `${isOpen ? 'show' : ''} ${isOpen && outline ? 'outline' : ''} ${locationDefined ? (isUp ? 'up' : 'down') : ''}`;\n\n return (\n <Overlay>\n <DDContainer\n role={ariaRolesType == \"menu\" ? \"menu\" : \"optionlist\"}\n ref={dropdownContentRef}\n size={size}\n offsetTop={offset.top}\n id={id}\n offsetLeft={offset.left}\n tabIndex={-1}\n isButton={isButton}\n alignLeft={alignLeft}\n scrollable={customizationProps.scrollable}\n maxHeight={customizationProps.maxHeight}\n className={cls}>\n <ListContainer\n role=\"group\"\n size={size}\n itemsType={customizationProps.itemsType}\n onScroll={handleScroll}\n ref={itemsListRef}\n outline={outline}\n scrollable={customizationProps.scrollable}>\n {customizationProps.menuContent && (\n <MenuContentContainer size={size}>\n {customizationProps.menuContent}\n <DividerContainer size={size}>\n <div className=\"divider\" />\n </DividerContainer>\n </MenuContentContainer>\n )}\n {customizationProps.pinTopItem && getTopItem()}\n {getElements(messageOnNoResults, size)}\n </ListContainer>\n {customizationProps.action && customizationProps.actionLabel && (\n <ActionButtonContainer size={size} scrollable={customizationProps.scrollable}>\n <Button\n width=\"100%\"\n role=\"menuitem\"\n icon={customizationProps.actionIcon}\n ref={actionButtonRef}\n loading={customizationProps.actionLoading}\n disabled={customizationProps.actionDisabled}\n variant={customizationProps.actionVariant ?? 'primary'}\n size={size}\n onClick={() => customizationProps.action() && setIsOpen(false)}>\n {customizationProps.actionLabel}\n </Button>\n </ActionButtonContainer>\n )}\n </DDContainer>\n </Overlay>\n );\n },\n);\n\nexport default DropdownContent;\n"],"mappings":"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"}
@@ -289,8 +289,10 @@ var DropdownFilter = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
289
289
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_CommonStyling.Dropdown, {
290
290
  ref: containerRef,
291
291
  role: "combobox",
292
- "aria-activedescendant": activeDescendant,
293
292
  "aria-multiselectable": true,
293
+ "aria-controls": "".concat(id, "_dropdowncontent"),
294
+ "aria-activedescendant": activeDescendant,
295
+ "aria-expanded": isOpen ? true : false,
294
296
  disabled: disabled,
295
297
  isButton: false,
296
298
  readOnly: readOnly,
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownFilter.cjs","names":["DropdownFilter","React","forwardRef","ref","id","list","placeholder","onSelect","onInputChange","value","required","messageOnNoResults","disabled","readOnly","scrollable","activeValidationMessage","autofilledMessage","size","disableFiltering","buttonFontSize","margin","loading","onFocus","onBlur","rest","useState","isOpen","setIsOpen","input","setInput","activeDescendant","setActiveDescendant","restartFilter","setRestartFilter","selectedItem","setSelectedItem","selectedValues","setSelectedValues","focused","setFocused","inputFocused","setInputFocused","init","setInit","styledFieldRef","useFocusVisibleRef","inputRef","clearButtonRef","useRef","useActionWithin","useImperativeHandle","current","containerRef","useClickOutsideRef","useFocusOutsideRef","handleInputKeyDown","e","key","preventDefault","useEffect","length","val","item","find","a","displayLabel","undefined","handleInputClear","focus","focusVisible","detail","renderInput","stopPropagation","blur","defaultOnMouseDownHandler","Math","floor","random","target","marginLeft","Size","Small","COLORS","neutral_600","itemsType","multiSelect","action","onValueUpdate","values","items","critical_400"],"sources":["../../src/Dropdown/DropdownFilter.tsx"],"sourcesContent":["import * as React from 'react';\nimport { COLORS } from '../styles';\nimport { ArrowDropDown, ArrowDropUp, Information, TechnicalWarning } from '../icons/systemicons/SystemIcons';\nimport { LoadingIndicator } from '../LoadingIndicator';\nimport { StyledField, Dropdown, InputField } from './CommonStyling';\nimport DropdownContent, { DropdownItem } from './DropdownContent';\nimport { Size } from '../types';\nimport { AutofilledMessage, ErrorMessage } from '../InputFields';\nimport { defaultOnMouseDownHandler, useActionWithin, useClickOutsideRef, useFocusOutsideRef, useFocusVisibleRef } from '../common';\nimport { IconButton } from '../Button';\nimport { SystemIcons } from '../icons';\n\ninterface DropdownFilterProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onSelect' | 'size' | 'list' | 'autoComplete' | 'type' | 'placeholder' | 'onKeyDown' | 'value' | 'onChange' | 'required' | 'tabIndex' | 'disabled' | 'readOnly'> {\n list: DropdownItem[];\n placeholder?: string;\n\n value?: string;\n onSelect?: (value: string) => void;\n onInputChange?: (input: string) => void;\n\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n\n disableFiltering?: boolean;\n\n messageOnNoResults?: string;\n activeValidationMessage?: string;\n autofilledMessage?: string;\n size?: Size.Small | Size.Medium;\n\n buttonFontSize?: string;\n margin?: string;\n scrollable?: boolean;\n}\n\nconst DropdownFilter = React.forwardRef( ({\n id,\n list,\n placeholder,\n onSelect,\n onInputChange,\n value,\n required,\n messageOnNoResults,\n disabled,\n readOnly,\n scrollable,\n activeValidationMessage,\n autofilledMessage,\n size,\n disableFiltering,\n buttonFontSize,\n margin = '4px 0',\n loading,\n onFocus,\n onBlur,\n ...rest\n }: DropdownFilterProps, ref) => {\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\n const [input, setInput] = React.useState<string>();\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [selectedItem, setSelectedItem] = React.useState<DropdownItem>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [inputFocused, setInputFocused] = React.useState<boolean>(false);\n const [init, setInit] = React.useState<boolean>(true);\n\n const styledFieldRef = useFocusVisibleRef();\n const inputRef = useFocusVisibleRef([styledFieldRef]);\n const clearButtonRef = React.useRef<HTMLButtonElement>(null);\n\n useActionWithin(styledFieldRef, input && !readOnly && !disabled ? [clearButtonRef] : []);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const containerRef = useClickOutsideRef(\n () => setIsOpen(false),\n [],\n useFocusOutsideRef(() => setIsOpen(false)),\n );\n\n const handleInputKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Esc' || e.key === 'Escape') {\n e.preventDefault();\n }\n if (e.key === 'ArrowDown' || e.key === 'Down' || e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n }\n }\n };\n\n React.useEffect(() => {\n setInit(true);\n setSelectedValues(!!value ? [value] : []);\n }, [value]);\n\n React.useEffect(() => {\n if (selectedValues?.length) {\n const val = selectedValues[0];\n const item = list.find((a) => a.value === val);\n setSelectedItem(item);\n setInput(item?.displayLabel ?? item?.value ?? '');\n onSelect && !init && onSelect(val);\n } else {\n setSelectedItem(undefined);\n onSelect && !init && onSelect('');\n setInput('');\n }\n }, [selectedValues]);\n\n React.useEffect(() => {\n if (!isOpen) {\n if (!!selectedItem) {\n setInput(selectedItem?.displayLabel ?? selectedItem?.value ?? '');\n } else {\n setInput('');\n }\n }\n\n setRestartFilter(true);\n }, [isOpen, selectedItem]);\n\n const handleInputClear = (e: any) => {\n setInput('');\n setSelectedValues([]);\n onSelect && onSelect('');\n inputRef.current?.focus({ focusVisible: e?.detail !== 1 } as any);\n };\n\n const renderInput = () => {\n return (\n <StyledField\n ref={styledFieldRef}\n className={size ? size : ''}\n onClick={(e: any) => {\n if (!readOnly && !disabled) {\n e.stopPropagation();\n setIsOpen(!isOpen);\n if (isOpen) {\n inputRef.current?.blur();\n } else {\n inputRef.current?.focus();\n }\n }\n }}\n disabled={disabled || false}\n readOnly={readOnly || false}\n isPlaceholder={!input}\n fontSize={buttonFontSize}\n showValidationMessage={!!activeValidationMessage}\n onMouseDown={defaultOnMouseDownHandler}\n data-testid={`otherdiv_${id}`}>\n <InputField\n id={id}\n ref={inputRef}\n autoComplete={'off-' + Math.floor(Math.random() * 999999999999)}\n type=\"search\"\n placeholder={inputFocused ? '' : placeholder}\n onKeyDown={handleInputKeyDown}\n value={input || ''}\n onChange={(e: any) => {\n if (!e.target.value) {\n setSelectedValues([]);\n }\n if (!readOnly && !disabled && e.target.value !== input) {\n setRestartFilter(false);\n setIsOpen(true);\n setInput(e.target.value);\n if (onInputChange) {\n onInputChange(e.target.value || '');\n }\n }\n }}\n onFocus={(e) => {\n setInputFocused(true);\n onFocus && onFocus(e);\n }}\n onBlur={(e) => {\n setInputFocused(false);\n onBlur && onBlur(e);\n }}\n required={required}\n tabIndex={disabled || readOnly ? -1 : 0}\n disabled={disabled || false}\n {...rest}\n />\n {input && !readOnly && !disabled && !loading && (\n <IconButton action={handleInputClear} ref={clearButtonRef} useTransparentBackground={true} shape={'circular'} style={{ marginLeft: '-4px' }} variant={'secondary'}>\n <SystemIcons.Clear />\n </IconButton>\n )}\n\n {!disabled && !readOnly && loading && (\n <div style={{ marginLeft: '-4xp' }}>\n <LoadingIndicator size={Size.Small} color={COLORS.neutral_600} />\n </div>\n )}\n\n <div className={'dropdown-arrow'}>\n {isOpen && !readOnly && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''} /> : <ArrowDropDown size=\"24px\" className={size ? size : ''} />}\n </div>\n </StyledField>\n );\n };\n\n return (\n <>\n <Dropdown ref={containerRef} role=\"combobox\"\n aria-activedescendant={activeDescendant}\n aria-multiselectable={true} disabled={disabled} isButton={false} readOnly={readOnly} className={size ? size : ''} margin={margin}>\n {renderInput()}\n {!readOnly && !disabled && (\n <DropdownContent\n containerRef={containerRef}\n isOpen={isOpen && !loading}\n messageOnNoResults={messageOnNoResults ?? ''}\n selectedValues={selectedValues}\n setSelectedValues={setSelectedValues}\n size={size ?? Size.Small}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n ariaRolesType=\"input\"\n setFocused={setFocused}\n outline={false}\n customizationProps={{\n itemsType: 'normal',\n scrollable: scrollable,\n multiSelect: false,\n action: () => {},\n onValueUpdate: (values: string[]) => {\n setRestartFilter(true);\n setInit(false);\n },\n items: list,\n }}\n filter={!disableFiltering && !restartFilter ? input || '' : ''}\n setIsOpen={setIsOpen}\n isButton={false}\n id={`${id}_dropdowncontent`}\n />\n )}\n </Dropdown>\n {activeValidationMessage && (\n <ErrorMessage className={size || ''}>\n <TechnicalWarning color={COLORS.critical_400} />\n <span>{activeValidationMessage}</span>\n </ErrorMessage>\n )}\n {autofilledMessage && (\n <AutofilledMessage className={size || ''}>\n <Information color={COLORS.neutral_600} />\n <span>{autofilledMessage}</span>\n </AutofilledMessage>\n )}\n </>\n );\n});\n\nexport default DropdownFilter;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownFilter.cjs","names":["DropdownFilter","React","forwardRef","ref","id","list","placeholder","onSelect","onInputChange","value","required","messageOnNoResults","disabled","readOnly","scrollable","activeValidationMessage","autofilledMessage","size","disableFiltering","buttonFontSize","margin","loading","onFocus","onBlur","rest","useState","isOpen","setIsOpen","input","setInput","activeDescendant","setActiveDescendant","restartFilter","setRestartFilter","selectedItem","setSelectedItem","selectedValues","setSelectedValues","focused","setFocused","inputFocused","setInputFocused","init","setInit","styledFieldRef","useFocusVisibleRef","inputRef","clearButtonRef","useRef","useActionWithin","useImperativeHandle","current","containerRef","useClickOutsideRef","useFocusOutsideRef","handleInputKeyDown","e","key","preventDefault","useEffect","length","val","item","find","a","displayLabel","undefined","handleInputClear","focus","focusVisible","detail","renderInput","stopPropagation","blur","defaultOnMouseDownHandler","Math","floor","random","target","marginLeft","Size","Small","COLORS","neutral_600","itemsType","multiSelect","action","onValueUpdate","values","items","critical_400"],"sources":["../../src/Dropdown/DropdownFilter.tsx"],"sourcesContent":["import * as React from 'react';\nimport { COLORS } from '../styles';\nimport { ArrowDropDown, ArrowDropUp, Information, TechnicalWarning } from '../icons/systemicons/SystemIcons';\nimport { LoadingIndicator } from '../LoadingIndicator';\nimport { StyledField, Dropdown, InputField } from './CommonStyling';\nimport DropdownContent, { DropdownItem } from './DropdownContent';\nimport { Size } from '../types';\nimport { AutofilledMessage, ErrorMessage } from '../InputFields';\nimport { defaultOnMouseDownHandler, useActionWithin, useClickOutsideRef, useFocusOutsideRef, useFocusVisibleRef } from '../common';\nimport { IconButton } from '../Button';\nimport { SystemIcons } from '../icons';\n\ninterface DropdownFilterProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onSelect' | 'size' | 'list' | 'autoComplete' | 'type' | 'placeholder' | 'onKeyDown' | 'value' | 'onChange' | 'required' | 'tabIndex' | 'disabled' | 'readOnly'> {\n list: DropdownItem[];\n placeholder?: string;\n\n value?: string;\n onSelect?: (value: string) => void;\n onInputChange?: (input: string) => void;\n\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n\n disableFiltering?: boolean;\n\n messageOnNoResults?: string;\n activeValidationMessage?: string;\n autofilledMessage?: string;\n size?: Size.Small | Size.Medium;\n\n buttonFontSize?: string;\n margin?: string;\n scrollable?: boolean;\n}\n\nconst DropdownFilter = React.forwardRef( ({\n id,\n list,\n placeholder,\n onSelect,\n onInputChange,\n value,\n required,\n messageOnNoResults,\n disabled,\n readOnly,\n scrollable,\n activeValidationMessage,\n autofilledMessage,\n size,\n disableFiltering,\n buttonFontSize,\n margin = '4px 0',\n loading,\n onFocus,\n onBlur,\n ...rest\n }: DropdownFilterProps, ref) => {\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\n const [input, setInput] = React.useState<string>();\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [selectedItem, setSelectedItem] = React.useState<DropdownItem>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [inputFocused, setInputFocused] = React.useState<boolean>(false);\n const [init, setInit] = React.useState<boolean>(true);\n\n const styledFieldRef = useFocusVisibleRef();\n const inputRef = useFocusVisibleRef([styledFieldRef]);\n const clearButtonRef = React.useRef<HTMLButtonElement>(null);\n\n useActionWithin(styledFieldRef, input && !readOnly && !disabled ? [clearButtonRef] : []);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const containerRef = useClickOutsideRef(\n () => setIsOpen(false),\n [],\n useFocusOutsideRef(() => setIsOpen(false)),\n );\n\n const handleInputKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Esc' || e.key === 'Escape') {\n e.preventDefault();\n }\n if (e.key === 'ArrowDown' || e.key === 'Down' || e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n }\n }\n };\n\n React.useEffect(() => {\n setInit(true);\n setSelectedValues(!!value ? [value] : []);\n }, [value]);\n\n React.useEffect(() => {\n if (selectedValues?.length) {\n const val = selectedValues[0];\n const item = list.find((a) => a.value === val);\n setSelectedItem(item);\n setInput(item?.displayLabel ?? item?.value ?? '');\n onSelect && !init && onSelect(val);\n } else {\n setSelectedItem(undefined);\n onSelect && !init && onSelect('');\n setInput('');\n }\n }, [selectedValues]);\n\n React.useEffect(() => {\n if (!isOpen) {\n if (!!selectedItem) {\n setInput(selectedItem?.displayLabel ?? selectedItem?.value ?? '');\n } else {\n setInput('');\n }\n }\n\n setRestartFilter(true);\n }, [isOpen, selectedItem]);\n\n const handleInputClear = (e: any) => {\n setInput('');\n setSelectedValues([]);\n onSelect && onSelect('');\n inputRef.current?.focus({ focusVisible: e?.detail !== 1 } as any);\n };\n\n const renderInput = () => {\n return (\n <StyledField\n ref={styledFieldRef}\n className={size ? size : ''}\n onClick={(e: any) => {\n if (!readOnly && !disabled) {\n e.stopPropagation();\n setIsOpen(!isOpen);\n if (isOpen) {\n inputRef.current?.blur();\n } else {\n inputRef.current?.focus();\n }\n }\n }}\n disabled={disabled || false}\n readOnly={readOnly || false}\n isPlaceholder={!input}\n fontSize={buttonFontSize}\n showValidationMessage={!!activeValidationMessage}\n onMouseDown={defaultOnMouseDownHandler}\n data-testid={`otherdiv_${id}`}>\n <InputField\n id={id}\n ref={inputRef}\n autoComplete={'off-' + Math.floor(Math.random() * 999999999999)}\n type=\"search\"\n placeholder={inputFocused ? '' : placeholder}\n onKeyDown={handleInputKeyDown}\n value={input || ''}\n onChange={(e: any) => {\n if (!e.target.value) {\n setSelectedValues([]);\n }\n if (!readOnly && !disabled && e.target.value !== input) {\n setRestartFilter(false);\n setIsOpen(true);\n setInput(e.target.value);\n if (onInputChange) {\n onInputChange(e.target.value || '');\n }\n }\n }}\n onFocus={(e) => {\n setInputFocused(true);\n onFocus && onFocus(e);\n }}\n onBlur={(e) => {\n setInputFocused(false);\n onBlur && onBlur(e);\n }}\n required={required}\n tabIndex={disabled || readOnly ? -1 : 0}\n disabled={disabled || false}\n {...rest}\n />\n {input && !readOnly && !disabled && !loading && (\n <IconButton action={handleInputClear} ref={clearButtonRef} useTransparentBackground={true} shape={'circular'} style={{ marginLeft: '-4px' }} variant={'secondary'}>\n <SystemIcons.Clear />\n </IconButton>\n )}\n\n {!disabled && !readOnly && loading && (\n <div style={{ marginLeft: '-4xp' }}>\n <LoadingIndicator size={Size.Small} color={COLORS.neutral_600} />\n </div>\n )}\n\n <div className={'dropdown-arrow'}>\n {isOpen && !readOnly && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''} /> : <ArrowDropDown size=\"24px\" className={size ? size : ''} />}\n </div>\n </StyledField>\n );\n };\n\n return (\n <>\n <Dropdown ref={containerRef}\n role=\"combobox\"\n aria-multiselectable={true} \n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n aria-expanded={isOpen ? true : false}\n disabled={disabled} isButton={false} readOnly={readOnly} className={size ? size : ''} margin={margin}>\n {renderInput()}\n {!readOnly && !disabled && (\n <DropdownContent\n containerRef={containerRef}\n isOpen={isOpen && !loading}\n messageOnNoResults={messageOnNoResults ?? ''}\n selectedValues={selectedValues}\n setSelectedValues={setSelectedValues}\n size={size ?? Size.Small}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n ariaRolesType=\"input\"\n setFocused={setFocused}\n outline={false}\n customizationProps={{\n itemsType: 'normal',\n scrollable: scrollable,\n multiSelect: false,\n action: () => {},\n onValueUpdate: (values: string[]) => {\n setRestartFilter(true);\n setInit(false);\n },\n items: list,\n }}\n filter={!disableFiltering && !restartFilter ? input || '' : ''}\n setIsOpen={setIsOpen}\n isButton={false}\n id={`${id}_dropdowncontent`}\n />\n )}\n </Dropdown>\n {activeValidationMessage && (\n <ErrorMessage className={size || ''}>\n <TechnicalWarning color={COLORS.critical_400} />\n <span>{activeValidationMessage}</span>\n </ErrorMessage>\n )}\n {autofilledMessage && (\n <AutofilledMessage className={size || ''}>\n <Information color={COLORS.neutral_600} />\n <span>{autofilledMessage}</span>\n </AutofilledMessage>\n )}\n </>\n );\n});\n\nexport default DropdownFilter;\n"],"mappings":"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"}
@@ -260,8 +260,10 @@ var DropdownFilter = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
260
260
  children: [/*#__PURE__*/_jsxs(Dropdown, {
261
261
  ref: containerRef,
262
262
  role: "combobox",
263
- "aria-activedescendant": activeDescendant,
264
263
  "aria-multiselectable": true,
264
+ "aria-controls": "".concat(id, "_dropdowncontent"),
265
+ "aria-activedescendant": activeDescendant,
266
+ "aria-expanded": isOpen ? true : false,
265
267
  disabled: disabled,
266
268
  isButton: false,
267
269
  readOnly: readOnly,
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownFilter.js","names":["React","COLORS","ArrowDropDown","ArrowDropUp","Information","TechnicalWarning","LoadingIndicator","StyledField","Dropdown","InputField","DropdownContent","Size","AutofilledMessage","ErrorMessage","defaultOnMouseDownHandler","useActionWithin","useClickOutsideRef","useFocusOutsideRef","useFocusVisibleRef","IconButton","SystemIcons","DropdownFilter","forwardRef","ref","id","list","placeholder","onSelect","onInputChange","value","required","messageOnNoResults","disabled","readOnly","scrollable","activeValidationMessage","autofilledMessage","size","disableFiltering","buttonFontSize","margin","loading","onFocus","onBlur","rest","useState","isOpen","setIsOpen","input","setInput","activeDescendant","setActiveDescendant","restartFilter","setRestartFilter","selectedItem","setSelectedItem","selectedValues","setSelectedValues","focused","setFocused","inputFocused","setInputFocused","init","setInit","styledFieldRef","inputRef","clearButtonRef","useRef","useImperativeHandle","current","containerRef","handleInputKeyDown","e","key","preventDefault","useEffect","length","val","item","find","a","displayLabel","undefined","handleInputClear","focus","focusVisible","detail","renderInput","stopPropagation","blur","Math","floor","random","target","marginLeft","Small","neutral_600","itemsType","multiSelect","action","onValueUpdate","values","items","critical_400"],"sources":["../../src/Dropdown/DropdownFilter.tsx"],"sourcesContent":["import * as React from 'react';\nimport { COLORS } from '../styles';\nimport { ArrowDropDown, ArrowDropUp, Information, TechnicalWarning } from '../icons/systemicons/SystemIcons';\nimport { LoadingIndicator } from '../LoadingIndicator';\nimport { StyledField, Dropdown, InputField } from './CommonStyling';\nimport DropdownContent, { DropdownItem } from './DropdownContent';\nimport { Size } from '../types';\nimport { AutofilledMessage, ErrorMessage } from '../InputFields';\nimport { defaultOnMouseDownHandler, useActionWithin, useClickOutsideRef, useFocusOutsideRef, useFocusVisibleRef } from '../common';\nimport { IconButton } from '../Button';\nimport { SystemIcons } from '../icons';\n\ninterface DropdownFilterProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onSelect' | 'size' | 'list' | 'autoComplete' | 'type' | 'placeholder' | 'onKeyDown' | 'value' | 'onChange' | 'required' | 'tabIndex' | 'disabled' | 'readOnly'> {\n list: DropdownItem[];\n placeholder?: string;\n\n value?: string;\n onSelect?: (value: string) => void;\n onInputChange?: (input: string) => void;\n\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n\n disableFiltering?: boolean;\n\n messageOnNoResults?: string;\n activeValidationMessage?: string;\n autofilledMessage?: string;\n size?: Size.Small | Size.Medium;\n\n buttonFontSize?: string;\n margin?: string;\n scrollable?: boolean;\n}\n\nconst DropdownFilter = React.forwardRef( ({\n id,\n list,\n placeholder,\n onSelect,\n onInputChange,\n value,\n required,\n messageOnNoResults,\n disabled,\n readOnly,\n scrollable,\n activeValidationMessage,\n autofilledMessage,\n size,\n disableFiltering,\n buttonFontSize,\n margin = '4px 0',\n loading,\n onFocus,\n onBlur,\n ...rest\n }: DropdownFilterProps, ref) => {\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\n const [input, setInput] = React.useState<string>();\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [selectedItem, setSelectedItem] = React.useState<DropdownItem>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [inputFocused, setInputFocused] = React.useState<boolean>(false);\n const [init, setInit] = React.useState<boolean>(true);\n\n const styledFieldRef = useFocusVisibleRef();\n const inputRef = useFocusVisibleRef([styledFieldRef]);\n const clearButtonRef = React.useRef<HTMLButtonElement>(null);\n\n useActionWithin(styledFieldRef, input && !readOnly && !disabled ? [clearButtonRef] : []);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const containerRef = useClickOutsideRef(\n () => setIsOpen(false),\n [],\n useFocusOutsideRef(() => setIsOpen(false)),\n );\n\n const handleInputKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Esc' || e.key === 'Escape') {\n e.preventDefault();\n }\n if (e.key === 'ArrowDown' || e.key === 'Down' || e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n }\n }\n };\n\n React.useEffect(() => {\n setInit(true);\n setSelectedValues(!!value ? [value] : []);\n }, [value]);\n\n React.useEffect(() => {\n if (selectedValues?.length) {\n const val = selectedValues[0];\n const item = list.find((a) => a.value === val);\n setSelectedItem(item);\n setInput(item?.displayLabel ?? item?.value ?? '');\n onSelect && !init && onSelect(val);\n } else {\n setSelectedItem(undefined);\n onSelect && !init && onSelect('');\n setInput('');\n }\n }, [selectedValues]);\n\n React.useEffect(() => {\n if (!isOpen) {\n if (!!selectedItem) {\n setInput(selectedItem?.displayLabel ?? selectedItem?.value ?? '');\n } else {\n setInput('');\n }\n }\n\n setRestartFilter(true);\n }, [isOpen, selectedItem]);\n\n const handleInputClear = (e: any) => {\n setInput('');\n setSelectedValues([]);\n onSelect && onSelect('');\n inputRef.current?.focus({ focusVisible: e?.detail !== 1 } as any);\n };\n\n const renderInput = () => {\n return (\n <StyledField\n ref={styledFieldRef}\n className={size ? size : ''}\n onClick={(e: any) => {\n if (!readOnly && !disabled) {\n e.stopPropagation();\n setIsOpen(!isOpen);\n if (isOpen) {\n inputRef.current?.blur();\n } else {\n inputRef.current?.focus();\n }\n }\n }}\n disabled={disabled || false}\n readOnly={readOnly || false}\n isPlaceholder={!input}\n fontSize={buttonFontSize}\n showValidationMessage={!!activeValidationMessage}\n onMouseDown={defaultOnMouseDownHandler}\n data-testid={`otherdiv_${id}`}>\n <InputField\n id={id}\n ref={inputRef}\n autoComplete={'off-' + Math.floor(Math.random() * 999999999999)}\n type=\"search\"\n placeholder={inputFocused ? '' : placeholder}\n onKeyDown={handleInputKeyDown}\n value={input || ''}\n onChange={(e: any) => {\n if (!e.target.value) {\n setSelectedValues([]);\n }\n if (!readOnly && !disabled && e.target.value !== input) {\n setRestartFilter(false);\n setIsOpen(true);\n setInput(e.target.value);\n if (onInputChange) {\n onInputChange(e.target.value || '');\n }\n }\n }}\n onFocus={(e) => {\n setInputFocused(true);\n onFocus && onFocus(e);\n }}\n onBlur={(e) => {\n setInputFocused(false);\n onBlur && onBlur(e);\n }}\n required={required}\n tabIndex={disabled || readOnly ? -1 : 0}\n disabled={disabled || false}\n {...rest}\n />\n {input && !readOnly && !disabled && !loading && (\n <IconButton action={handleInputClear} ref={clearButtonRef} useTransparentBackground={true} shape={'circular'} style={{ marginLeft: '-4px' }} variant={'secondary'}>\n <SystemIcons.Clear />\n </IconButton>\n )}\n\n {!disabled && !readOnly && loading && (\n <div style={{ marginLeft: '-4xp' }}>\n <LoadingIndicator size={Size.Small} color={COLORS.neutral_600} />\n </div>\n )}\n\n <div className={'dropdown-arrow'}>\n {isOpen && !readOnly && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''} /> : <ArrowDropDown size=\"24px\" className={size ? size : ''} />}\n </div>\n </StyledField>\n );\n };\n\n return (\n <>\n <Dropdown ref={containerRef} role=\"combobox\"\n aria-activedescendant={activeDescendant}\n aria-multiselectable={true} disabled={disabled} isButton={false} readOnly={readOnly} className={size ? size : ''} margin={margin}>\n {renderInput()}\n {!readOnly && !disabled && (\n <DropdownContent\n containerRef={containerRef}\n isOpen={isOpen && !loading}\n messageOnNoResults={messageOnNoResults ?? ''}\n selectedValues={selectedValues}\n setSelectedValues={setSelectedValues}\n size={size ?? Size.Small}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n ariaRolesType=\"input\"\n setFocused={setFocused}\n outline={false}\n customizationProps={{\n itemsType: 'normal',\n scrollable: scrollable,\n multiSelect: false,\n action: () => {},\n onValueUpdate: (values: string[]) => {\n setRestartFilter(true);\n setInit(false);\n },\n items: list,\n }}\n filter={!disableFiltering && !restartFilter ? input || '' : ''}\n setIsOpen={setIsOpen}\n isButton={false}\n id={`${id}_dropdowncontent`}\n />\n )}\n </Dropdown>\n {activeValidationMessage && (\n <ErrorMessage className={size || ''}>\n <TechnicalWarning color={COLORS.critical_400} />\n <span>{activeValidationMessage}</span>\n </ErrorMessage>\n )}\n {autofilledMessage && (\n <AutofilledMessage className={size || ''}>\n <Information color={COLORS.neutral_600} />\n <span>{autofilledMessage}</span>\n </AutofilledMessage>\n )}\n </>\n );\n});\n\nexport default DropdownFilter;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownFilter.js","names":["React","COLORS","ArrowDropDown","ArrowDropUp","Information","TechnicalWarning","LoadingIndicator","StyledField","Dropdown","InputField","DropdownContent","Size","AutofilledMessage","ErrorMessage","defaultOnMouseDownHandler","useActionWithin","useClickOutsideRef","useFocusOutsideRef","useFocusVisibleRef","IconButton","SystemIcons","DropdownFilter","forwardRef","ref","id","list","placeholder","onSelect","onInputChange","value","required","messageOnNoResults","disabled","readOnly","scrollable","activeValidationMessage","autofilledMessage","size","disableFiltering","buttonFontSize","margin","loading","onFocus","onBlur","rest","useState","isOpen","setIsOpen","input","setInput","activeDescendant","setActiveDescendant","restartFilter","setRestartFilter","selectedItem","setSelectedItem","selectedValues","setSelectedValues","focused","setFocused","inputFocused","setInputFocused","init","setInit","styledFieldRef","inputRef","clearButtonRef","useRef","useImperativeHandle","current","containerRef","handleInputKeyDown","e","key","preventDefault","useEffect","length","val","item","find","a","displayLabel","undefined","handleInputClear","focus","focusVisible","detail","renderInput","stopPropagation","blur","Math","floor","random","target","marginLeft","Small","neutral_600","itemsType","multiSelect","action","onValueUpdate","values","items","critical_400"],"sources":["../../src/Dropdown/DropdownFilter.tsx"],"sourcesContent":["import * as React from 'react';\nimport { COLORS } from '../styles';\nimport { ArrowDropDown, ArrowDropUp, Information, TechnicalWarning } from '../icons/systemicons/SystemIcons';\nimport { LoadingIndicator } from '../LoadingIndicator';\nimport { StyledField, Dropdown, InputField } from './CommonStyling';\nimport DropdownContent, { DropdownItem } from './DropdownContent';\nimport { Size } from '../types';\nimport { AutofilledMessage, ErrorMessage } from '../InputFields';\nimport { defaultOnMouseDownHandler, useActionWithin, useClickOutsideRef, useFocusOutsideRef, useFocusVisibleRef } from '../common';\nimport { IconButton } from '../Button';\nimport { SystemIcons } from '../icons';\n\ninterface DropdownFilterProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onSelect' | 'size' | 'list' | 'autoComplete' | 'type' | 'placeholder' | 'onKeyDown' | 'value' | 'onChange' | 'required' | 'tabIndex' | 'disabled' | 'readOnly'> {\n list: DropdownItem[];\n placeholder?: string;\n\n value?: string;\n onSelect?: (value: string) => void;\n onInputChange?: (input: string) => void;\n\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n\n disableFiltering?: boolean;\n\n messageOnNoResults?: string;\n activeValidationMessage?: string;\n autofilledMessage?: string;\n size?: Size.Small | Size.Medium;\n\n buttonFontSize?: string;\n margin?: string;\n scrollable?: boolean;\n}\n\nconst DropdownFilter = React.forwardRef( ({\n id,\n list,\n placeholder,\n onSelect,\n onInputChange,\n value,\n required,\n messageOnNoResults,\n disabled,\n readOnly,\n scrollable,\n activeValidationMessage,\n autofilledMessage,\n size,\n disableFiltering,\n buttonFontSize,\n margin = '4px 0',\n loading,\n onFocus,\n onBlur,\n ...rest\n }: DropdownFilterProps, ref) => {\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\n const [input, setInput] = React.useState<string>();\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [selectedItem, setSelectedItem] = React.useState<DropdownItem>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [inputFocused, setInputFocused] = React.useState<boolean>(false);\n const [init, setInit] = React.useState<boolean>(true);\n\n const styledFieldRef = useFocusVisibleRef();\n const inputRef = useFocusVisibleRef([styledFieldRef]);\n const clearButtonRef = React.useRef<HTMLButtonElement>(null);\n\n useActionWithin(styledFieldRef, input && !readOnly && !disabled ? [clearButtonRef] : []);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const containerRef = useClickOutsideRef(\n () => setIsOpen(false),\n [],\n useFocusOutsideRef(() => setIsOpen(false)),\n );\n\n const handleInputKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Esc' || e.key === 'Escape') {\n e.preventDefault();\n }\n if (e.key === 'ArrowDown' || e.key === 'Down' || e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n }\n }\n };\n\n React.useEffect(() => {\n setInit(true);\n setSelectedValues(!!value ? [value] : []);\n }, [value]);\n\n React.useEffect(() => {\n if (selectedValues?.length) {\n const val = selectedValues[0];\n const item = list.find((a) => a.value === val);\n setSelectedItem(item);\n setInput(item?.displayLabel ?? item?.value ?? '');\n onSelect && !init && onSelect(val);\n } else {\n setSelectedItem(undefined);\n onSelect && !init && onSelect('');\n setInput('');\n }\n }, [selectedValues]);\n\n React.useEffect(() => {\n if (!isOpen) {\n if (!!selectedItem) {\n setInput(selectedItem?.displayLabel ?? selectedItem?.value ?? '');\n } else {\n setInput('');\n }\n }\n\n setRestartFilter(true);\n }, [isOpen, selectedItem]);\n\n const handleInputClear = (e: any) => {\n setInput('');\n setSelectedValues([]);\n onSelect && onSelect('');\n inputRef.current?.focus({ focusVisible: e?.detail !== 1 } as any);\n };\n\n const renderInput = () => {\n return (\n <StyledField\n ref={styledFieldRef}\n className={size ? size : ''}\n onClick={(e: any) => {\n if (!readOnly && !disabled) {\n e.stopPropagation();\n setIsOpen(!isOpen);\n if (isOpen) {\n inputRef.current?.blur();\n } else {\n inputRef.current?.focus();\n }\n }\n }}\n disabled={disabled || false}\n readOnly={readOnly || false}\n isPlaceholder={!input}\n fontSize={buttonFontSize}\n showValidationMessage={!!activeValidationMessage}\n onMouseDown={defaultOnMouseDownHandler}\n data-testid={`otherdiv_${id}`}>\n <InputField\n id={id}\n ref={inputRef}\n autoComplete={'off-' + Math.floor(Math.random() * 999999999999)}\n type=\"search\"\n placeholder={inputFocused ? '' : placeholder}\n onKeyDown={handleInputKeyDown}\n value={input || ''}\n onChange={(e: any) => {\n if (!e.target.value) {\n setSelectedValues([]);\n }\n if (!readOnly && !disabled && e.target.value !== input) {\n setRestartFilter(false);\n setIsOpen(true);\n setInput(e.target.value);\n if (onInputChange) {\n onInputChange(e.target.value || '');\n }\n }\n }}\n onFocus={(e) => {\n setInputFocused(true);\n onFocus && onFocus(e);\n }}\n onBlur={(e) => {\n setInputFocused(false);\n onBlur && onBlur(e);\n }}\n required={required}\n tabIndex={disabled || readOnly ? -1 : 0}\n disabled={disabled || false}\n {...rest}\n />\n {input && !readOnly && !disabled && !loading && (\n <IconButton action={handleInputClear} ref={clearButtonRef} useTransparentBackground={true} shape={'circular'} style={{ marginLeft: '-4px' }} variant={'secondary'}>\n <SystemIcons.Clear />\n </IconButton>\n )}\n\n {!disabled && !readOnly && loading && (\n <div style={{ marginLeft: '-4xp' }}>\n <LoadingIndicator size={Size.Small} color={COLORS.neutral_600} />\n </div>\n )}\n\n <div className={'dropdown-arrow'}>\n {isOpen && !readOnly && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''} /> : <ArrowDropDown size=\"24px\" className={size ? size : ''} />}\n </div>\n </StyledField>\n );\n };\n\n return (\n <>\n <Dropdown ref={containerRef}\n role=\"combobox\"\n aria-multiselectable={true} \n aria-controls={`${id}_dropdowncontent`}\n aria-activedescendant={activeDescendant}\n aria-expanded={isOpen ? true : false}\n disabled={disabled} isButton={false} readOnly={readOnly} className={size ? size : ''} margin={margin}>\n {renderInput()}\n {!readOnly && !disabled && (\n <DropdownContent\n containerRef={containerRef}\n isOpen={isOpen && !loading}\n messageOnNoResults={messageOnNoResults ?? ''}\n selectedValues={selectedValues}\n setSelectedValues={setSelectedValues}\n size={size ?? Size.Small}\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\n focused={focused}\n ariaRolesType=\"input\"\n setFocused={setFocused}\n outline={false}\n customizationProps={{\n itemsType: 'normal',\n scrollable: scrollable,\n multiSelect: false,\n action: () => {},\n onValueUpdate: (values: string[]) => {\n setRestartFilter(true);\n setInit(false);\n },\n items: list,\n }}\n filter={!disableFiltering && !restartFilter ? input || '' : ''}\n setIsOpen={setIsOpen}\n isButton={false}\n id={`${id}_dropdowncontent`}\n />\n )}\n </Dropdown>\n {activeValidationMessage && (\n <ErrorMessage className={size || ''}>\n <TechnicalWarning color={COLORS.critical_400} />\n <span>{activeValidationMessage}</span>\n </ErrorMessage>\n )}\n {autofilledMessage && (\n <AutofilledMessage className={size || ''}>\n <Information color={COLORS.neutral_600} />\n <span>{autofilledMessage}</span>\n </AutofilledMessage>\n )}\n </>\n );\n});\n\nexport default DropdownFilter;\n"],"mappings":";;;;;;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,MAAT,QAAuB,WAAvB;AACA,SAASC,aAAT,EAAwBC,WAAxB,EAAqCC,WAArC,EAAkDC,gBAAlD,QAA0E,kCAA1E;AACA,SAASC,gBAAT,QAAiC,qBAAjC;AACA,SAASC,WAAT,EAAsBC,QAAtB,EAAgCC,UAAhC,QAAkD,iBAAlD;AACA,OAAOC,eAAP,MAA8C,mBAA9C;AACA,SAASC,IAAT,QAAqB,UAArB;AACA,SAASC,iBAAT,EAA4BC,YAA5B,QAAgD,gBAAhD;AACA,SAASC,yBAAT,EAAoCC,eAApC,EAAqDC,kBAArD,EAAyEC,kBAAzE,EAA6FC,kBAA7F,QAAuH,WAAvH;AACA,SAASC,UAAT,QAA2B,WAA3B;AACA,SAASC,WAAT,QAA4B,UAA5B;;;;AA2BA,IAAMC,cAAc,gBAAGrB,KAAK,CAACsB,UAAN,CAAkB,gBAsByBC,GAtBzB,EAsBiC;EAAA,IArB9BC,EAqB8B,QArB9BA,EAqB8B;EAAA,IApB9BC,IAoB8B,QApB9BA,IAoB8B;EAAA,IAnB9BC,WAmB8B,QAnB9BA,WAmB8B;EAAA,IAlB9BC,QAkB8B,QAlB9BA,QAkB8B;EAAA,IAjB9BC,aAiB8B,QAjB9BA,aAiB8B;EAAA,IAhB9BC,KAgB8B,QAhB9BA,KAgB8B;EAAA,IAf9BC,QAe8B,QAf9BA,QAe8B;EAAA,IAd9BC,kBAc8B,QAd9BA,kBAc8B;EAAA,IAb9BC,QAa8B,QAb9BA,QAa8B;EAAA,IAZ9BC,QAY8B,QAZ9BA,QAY8B;EAAA,IAX9BC,UAW8B,QAX9BA,UAW8B;EAAA,IAV9BC,uBAU8B,QAV9BA,uBAU8B;EAAA,IAT9BC,iBAS8B,QAT9BA,iBAS8B;EAAA,IAR9BC,IAQ8B,QAR9BA,IAQ8B;EAAA,IAP9BC,gBAO8B,QAP9BA,gBAO8B;EAAA,IAN9BC,cAM8B,QAN9BA,cAM8B;EAAA,uBAL9BC,MAK8B;EAAA,IAL9BA,MAK8B,4BALrB,OAKqB;EAAA,IAJ9BC,OAI8B,QAJ9BA,OAI8B;EAAA,IAH9BC,QAG8B,QAH9BA,OAG8B;EAAA,IAF9BC,OAE8B,QAF9BA,MAE8B;EAAA,IAD3BC,IAC2B;;EACxE,sBAA4B5C,KAAK,CAAC6C,QAAN,CAAwB,KAAxB,CAA5B;EAAA;EAAA,IAAOC,MAAP;EAAA,IAAeC,SAAf;;EACA,uBAA0B/C,KAAK,CAAC6C,QAAN,EAA1B;EAAA;EAAA,IAAOG,KAAP;EAAA,IAAcC,QAAd;;EACA,uBAAgDjD,KAAK,CAAC6C,QAAN,EAAhD;EAAA;EAAA,IAAOK,gBAAP;EAAA,IAAyBC,mBAAzB;;EACA,uBAA0CnD,KAAK,CAAC6C,QAAN,CAAwB,KAAxB,CAA1C;EAAA;EAAA,IAAOO,aAAP;EAAA,IAAsBC,gBAAtB;;EACA,uBAAwCrD,KAAK,CAAC6C,QAAN,EAAxC;EAAA;EAAA,IAAOS,YAAP;EAAA,IAAqBC,eAArB;;EACA,wBAA4CvD,KAAK,CAAC6C,QAAN,CAAyB,EAAzB,CAA5C;EAAA;EAAA,IAAOW,cAAP;EAAA,IAAuBC,iBAAvB;;EACA,wBAA8BzD,KAAK,CAAC6C,QAAN,CAA8B,IAA9B,CAA9B;EAAA;EAAA,IAAOa,OAAP;EAAA,IAAgBC,UAAhB;;EACA,wBAAwC3D,KAAK,CAAC6C,QAAN,CAAwB,KAAxB,CAAxC;EAAA;EAAA,IAAOe,YAAP;EAAA,IAAqBC,eAArB;;EACA,wBAAwB7D,KAAK,CAAC6C,QAAN,CAAwB,IAAxB,CAAxB;EAAA;EAAA,IAAOiB,IAAP;EAAA,IAAaC,OAAb;;EAEA,IAAMC,cAAc,GAAG9C,kBAAkB,EAAzC;EACA,IAAM+C,QAAQ,GAAG/C,kBAAkB,CAAC,CAAC8C,cAAD,CAAD,CAAnC;EACA,IAAME,cAAc,GAAGlE,KAAK,CAACmE,MAAN,CAAgC,IAAhC,CAAvB;EAEApD,eAAe,CAACiD,cAAD,EAAiBhB,KAAK,IAAI,CAACf,QAAV,IAAsB,CAACD,QAAvB,GAAkC,CAACkC,cAAD,CAAlC,GAAqD,EAAtE,CAAf;EAEAlE,KAAK,CAACoE,mBAAN,CAA0B7C,GAA1B,EAA+B;IAAA,OAAM0C,QAAQ,CAACI,OAAf;EAAA,CAA/B,EAAuD,CAACJ,QAAD,CAAvD;EAEA,IAAMK,YAAY,GAAGtD,kBAAkB,CACrC;IAAA,OAAM+B,SAAS,CAAC,KAAD,CAAf;EAAA,CADqC,EAErC,EAFqC,EAGrC9B,kBAAkB,CAAC;IAAA,OAAM8B,SAAS,CAAC,KAAD,CAAf;EAAA,CAAD,CAHmB,CAAvC;;EAMA,IAAMwB,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,CAAD,EAA8C;IACvE,IAAIA,CAAC,CAACC,GAAF,KAAU,KAAV,IAAmBD,CAAC,CAACC,GAAF,KAAU,QAAjC,EAA2C;MACzCD,CAAC,CAACE,cAAF;IACD;;IACD,IAAIF,CAAC,CAACC,GAAF,KAAU,WAAV,IAAyBD,CAAC,CAACC,GAAF,KAAU,MAAnC,IAA6CD,CAAC,CAACC,GAAF,KAAU,SAAvD,IAAoED,CAAC,CAACC,GAAF,KAAU,IAAlF,EAAwF;MACtFD,CAAC,CAACE,cAAF;;MACA,IAAI,CAAC5B,MAAL,EAAa;QACXC,SAAS,CAAC,IAAD,CAAT;MACD;IACF;EACF,CAVD;;EAYA/C,KAAK,CAAC2E,SAAN,CAAgB,YAAM;IACpBZ,OAAO,CAAC,IAAD,CAAP;IACAN,iBAAiB,CAAC,CAAC,CAAC5B,KAAF,GAAU,CAACA,KAAD,CAAV,GAAoB,EAArB,CAAjB;EACD,CAHD,EAGG,CAACA,KAAD,CAHH;EAKA7B,KAAK,CAAC2E,SAAN,CAAgB,YAAM;IACpB,IAAInB,cAAJ,aAAIA,cAAJ,eAAIA,cAAc,CAAEoB,MAApB,EAA4B;MAAA;;MAC1B,IAAMC,GAAG,GAAGrB,cAAc,CAAC,CAAD,CAA1B;MACA,IAAMsB,IAAI,GAAGrD,IAAI,CAACsD,IAAL,CAAU,UAACC,CAAD;QAAA,OAAOA,CAAC,CAACnD,KAAF,KAAYgD,GAAnB;MAAA,CAAV,CAAb;MACAtB,eAAe,CAACuB,IAAD,CAAf;MACA7B,QAAQ,gCAAC6B,IAAD,aAACA,IAAD,uBAACA,IAAI,CAAEG,YAAP,mEAAuBH,IAAvB,aAAuBA,IAAvB,uBAAuBA,IAAI,CAAEjD,KAA7B,yCAAsC,EAAtC,CAAR;MACAF,QAAQ,IAAI,CAACmC,IAAb,IAAqBnC,QAAQ,CAACkD,GAAD,CAA7B;IACD,CAND,MAMO;MACLtB,eAAe,CAAC2B,SAAD,CAAf;MACAvD,QAAQ,IAAI,CAACmC,IAAb,IAAqBnC,QAAQ,CAAC,EAAD,CAA7B;MACAsB,QAAQ,CAAC,EAAD,CAAR;IACD;EACF,CAZD,EAYG,CAACO,cAAD,CAZH;EAcAxD,KAAK,CAAC2E,SAAN,CAAgB,YAAM;IACpB,IAAI,CAAC7B,MAAL,EAAa;MACX,IAAI,CAAC,CAACQ,YAAN,EAAoB;QAAA;;QAClBL,QAAQ,mCAACK,YAAD,aAACA,YAAD,uBAACA,YAAY,CAAE2B,YAAf,yEAA+B3B,YAA/B,aAA+BA,YAA/B,uBAA+BA,YAAY,CAAEzB,KAA7C,yCAAsD,EAAtD,CAAR;MACD,CAFD,MAEO;QACLoB,QAAQ,CAAC,EAAD,CAAR;MACD;IACF;;IAEDI,gBAAgB,CAAC,IAAD,CAAhB;EACD,CAVD,EAUG,CAACP,MAAD,EAASQ,YAAT,CAVH;;EAYA,IAAM6B,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACX,CAAD,EAAY;IAAA;;IACnCvB,QAAQ,CAAC,EAAD,CAAR;IACAQ,iBAAiB,CAAC,EAAD,CAAjB;IACA9B,QAAQ,IAAIA,QAAQ,CAAC,EAAD,CAApB;IACA,qBAAAsC,QAAQ,CAACI,OAAT,wEAAkBe,KAAlB,CAAwB;MAAEC,YAAY,EAAE,CAAAb,CAAC,SAAD,IAAAA,CAAC,WAAD,YAAAA,CAAC,CAAEc,MAAH,MAAc;IAA9B,CAAxB;EACD,CALD;;EAOA,IAAMC,WAAW,GAAG,SAAdA,WAAc,GAAM;IACxB,oBACE,MAAC,WAAD;MACE,GAAG,EAAEvB,cADP;MAEE,SAAS,EAAE3B,IAAI,GAAGA,IAAH,GAAU,EAF3B;MAGE,OAAO,EAAE,iBAACmC,CAAD,EAAY;QACnB,IAAI,CAACvC,QAAD,IAAa,CAACD,QAAlB,EAA4B;UAC1BwC,CAAC,CAACgB,eAAF;UACAzC,SAAS,CAAC,CAACD,MAAF,CAAT;;UACA,IAAIA,MAAJ,EAAY;YAAA;;YACV,sBAAAmB,QAAQ,CAACI,OAAT,0EAAkBoB,IAAlB;UACD,CAFD,MAEO;YAAA;;YACL,sBAAAxB,QAAQ,CAACI,OAAT,0EAAkBe,KAAlB;UACD;QACF;MACF,CAbH;MAcE,QAAQ,EAAEpD,QAAQ,IAAI,KAdxB;MAeE,QAAQ,EAAEC,QAAQ,IAAI,KAfxB;MAgBE,aAAa,EAAE,CAACe,KAhBlB;MAiBE,QAAQ,EAAET,cAjBZ;MAkBE,qBAAqB,EAAE,CAAC,CAACJ,uBAlB3B;MAmBE,WAAW,EAAErB,yBAnBf;MAoBE,kCAAyBU,EAAzB,CApBF;MAAA,wBAqBE,KAAC,UAAD;QACE,EAAE,EAAEA,EADN;QAEE,GAAG,EAAEyC,QAFP;QAGE,YAAY,EAAE,SAASyB,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,MAAL,KAAgB,YAA3B,CAHzB;QAIE,IAAI,EAAC,QAJP;QAKE,WAAW,EAAEhC,YAAY,GAAG,EAAH,GAAQlC,WALnC;QAME,SAAS,EAAE6C,kBANb;QAOE,KAAK,EAAEvB,KAAK,IAAI,EAPlB;QAQE,QAAQ,EAAE,kBAACwB,CAAD,EAAY;UACpB,IAAI,CAACA,CAAC,CAACqB,MAAF,CAAShE,KAAd,EAAqB;YACnB4B,iBAAiB,CAAC,EAAD,CAAjB;UACD;;UACD,IAAI,CAACxB,QAAD,IAAa,CAACD,QAAd,IAA0BwC,CAAC,CAACqB,MAAF,CAAShE,KAAT,KAAmBmB,KAAjD,EAAwD;YACtDK,gBAAgB,CAAC,KAAD,CAAhB;YACAN,SAAS,CAAC,IAAD,CAAT;YACAE,QAAQ,CAACuB,CAAC,CAACqB,MAAF,CAAShE,KAAV,CAAR;;YACA,IAAID,aAAJ,EAAmB;cACjBA,aAAa,CAAC4C,CAAC,CAACqB,MAAF,CAAShE,KAAT,IAAkB,EAAnB,CAAb;YACD;UACF;QACF,CApBH;QAqBE,OAAO,EAAE,iBAAC2C,CAAD,EAAO;UACdX,eAAe,CAAC,IAAD,CAAf;UACAnB,QAAO,IAAIA,QAAO,CAAC8B,CAAD,CAAlB;QACD,CAxBH;QAyBE,MAAM,EAAE,gBAACA,CAAD,EAAO;UACbX,eAAe,CAAC,KAAD,CAAf;UACAlB,OAAM,IAAIA,OAAM,CAAC6B,CAAD,CAAhB;QACD,CA5BH;QA6BE,QAAQ,EAAE1C,QA7BZ;QA8BE,QAAQ,EAAEE,QAAQ,IAAIC,QAAZ,GAAuB,CAAC,CAAxB,GAA4B,CA9BxC;QA+BE,QAAQ,EAAED,QAAQ,IAAI;MA/BxB,GAgCMY,IAhCN,EArBF,EAuDGI,KAAK,IAAI,CAACf,QAAV,IAAsB,CAACD,QAAvB,IAAmC,CAACS,OAApC,iBACC,KAAC,UAAD;QAAY,MAAM,EAAE0C,gBAApB;QAAsC,GAAG,EAAEjB,cAA3C;QAA2D,wBAAwB,EAAE,IAArF;QAA2F,KAAK,EAAE,UAAlG;QAA8G,KAAK,EAAE;UAAE4B,UAAU,EAAE;QAAd,CAArH;QAA6I,OAAO,EAAE,WAAtJ;QAAA,uBACE,KAAC,WAAD,CAAa,KAAb;MADF,EAxDJ,EA6DG,CAAC9D,QAAD,IAAa,CAACC,QAAd,IAA0BQ,OAA1B,iBACC;QAAK,KAAK,EAAE;UAAEqD,UAAU,EAAE;QAAd,CAAZ;QAAA,uBACE,KAAC,gBAAD;UAAkB,IAAI,EAAEnF,IAAI,CAACoF,KAA7B;UAAoC,KAAK,EAAE9F,MAAM,CAAC+F;QAAlD;MADF,EA9DJ,eAmEE;QAAK,SAAS,EAAE,gBAAhB;QAAA,UACGlD,MAAM,IAAI,CAACb,QAAX,IAAuB,CAACD,QAAxB,gBAAmC,KAAC,WAAD;UAAa,IAAI,EAAC,MAAlB;UAAyB,SAAS,EAAEK,IAAI,GAAGA,IAAH,GAAU;QAAlD,EAAnC,gBAA8F,KAAC,aAAD;UAAe,IAAI,EAAC,MAApB;UAA2B,SAAS,EAAEA,IAAI,GAAGA,IAAH,GAAU;QAApD;MADjG,EAnEF;IAAA,EADF;EAyED,CA1ED;;EA4EA,oBACE;IAAA,wBACE,MAAC,QAAD;MAAU,GAAG,EAAEiC,YAAf;MACA,IAAI,EAAC,UADL;MAEA,wBAAsB,IAFtB;MAGA,2BAAkB9C,EAAlB,qBAHA;MAIA,yBAAuB0B,gBAJvB;MAKA,iBAAeJ,MAAM,GAAG,IAAH,GAAU,KAL/B;MAMA,QAAQ,EAAEd,QANV;MAMoB,QAAQ,EAAE,KAN9B;MAMqC,QAAQ,EAAEC,QAN/C;MAMyD,SAAS,EAAEI,IAAI,GAAGA,IAAH,GAAU,EANlF;MAMsF,MAAM,EAAEG,MAN9F;MAAA,WAOG+C,WAAW,EAPd,EAQG,CAACtD,QAAD,IAAa,CAACD,QAAd,iBACC,KAAC,eAAD;QACE,YAAY,EAAEsC,YADhB;QAEE,MAAM,EAAExB,MAAM,IAAI,CAACL,OAFrB;QAGE,kBAAkB,EAAEV,kBAAF,aAAEA,kBAAF,cAAEA,kBAAF,GAAwB,EAH5C;QAIE,cAAc,EAAEyB,cAJlB;QAKE,iBAAiB,EAAEC,iBALrB;QAME,IAAI,EAAEpB,IAAF,aAAEA,IAAF,cAAEA,IAAF,GAAU1B,IAAI,CAACoF,KANrB;QAOE,yBAAyB,EAAE,mCAACvB,CAAD;UAAA,OAAOrB,mBAAmB,CAACqB,CAAD,CAA1B;QAAA,CAP7B;QAQE,OAAO,EAAEd,OARX;QASE,aAAa,EAAC,OAThB;QAUE,UAAU,EAAEC,UAVd;QAWE,OAAO,EAAE,KAXX;QAYE,kBAAkB,EAAE;UAClBsC,SAAS,EAAE,QADO;UAElB/D,UAAU,EAAEA,UAFM;UAGlBgE,WAAW,EAAE,KAHK;UAIlBC,MAAM,EAAE,kBAAM,CAAE,CAJE;UAKlBC,aAAa,EAAE,uBAACC,MAAD,EAAsB;YACnChD,gBAAgB,CAAC,IAAD,CAAhB;YACAU,OAAO,CAAC,KAAD,CAAP;UACD,CARiB;UASlBuC,KAAK,EAAE7E;QATW,CAZtB;QAuBE,MAAM,EAAE,CAACa,gBAAD,IAAqB,CAACc,aAAtB,GAAsCJ,KAAK,IAAI,EAA/C,GAAoD,EAvB9D;QAwBE,SAAS,EAAED,SAxBb;QAyBE,QAAQ,EAAE,KAzBZ;QA0BE,EAAE,YAAKvB,EAAL;MA1BJ,EATJ;IAAA,EADF,EAwCGW,uBAAuB,iBACtB,MAAC,YAAD;MAAc,SAAS,EAAEE,IAAI,IAAI,EAAjC;MAAA,wBACE,KAAC,gBAAD;QAAkB,KAAK,EAAEpC,MAAM,CAACsG;MAAhC,EADF,eAEE;QAAA,UAAOpE;MAAP,EAFF;IAAA,EAzCJ,EA8CGC,iBAAiB,iBAChB,MAAC,iBAAD;MAAmB,SAAS,EAAEC,IAAI,IAAI,EAAtC;MAAA,wBACE,KAAC,WAAD;QAAa,KAAK,EAAEpC,MAAM,CAAC+F;MAA3B,EADF,eAEE;QAAA,UAAO5D;MAAP,EAFF;IAAA,EA/CJ;EAAA,EADF;AAuDD,CApOsB,CAAvB;;EAxBEX,I;EACAC,W;EAEAG,K;EACAF,Q;EACAC,a;EAEAE,Q;EACAE,Q;EACAC,Q;EACAQ,O;EAEAH,gB;EAEAP,kB;EACAI,uB;EACAC,iB;EAGAG,c;EACAC,M;EACAN,U;;AAyOF,eAAeb,cAAf"}
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  interface Link {
3
2
  label: string;
4
3
  to: string;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { NavSection } from '../../types';
3
2
  interface FooterNavSectionProps {
4
3
  navSection: NavSection;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { NavOptions } from '../../types';
3
2
  interface FooterNavSectionProps {
4
3
  navOptions: NavOptions;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  interface FooterNewsletterAndSocialSection {
3
2
  actionOnNewsletterSignup?: (email: string) => void;
4
3
  newsletterLabel: string;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  interface FooterTopProps {
3
2
  sitename?: string;
4
3
  showBetaTag?: boolean;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const Footer: ({ children }: any) => JSX.Element;
3
2
  export default Footer;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { MenuNavigationItemTypeItem } from '../../index';
3
2
  declare type Props = {
4
3
  clickMenuAction: () => void;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { ProfileMenu } from '../types';
3
2
  interface UserMenuProps extends ProfileMenu {
4
3
  show?: boolean;
@@ -11,6 +11,8 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
11
11
 
12
12
  var _react = _interopRequireDefault(require("react"));
13
13
 
14
+ var _reactResponsive = require("react-responsive");
15
+
14
16
  var _styledComponents = _interopRequireDefault(require("styled-components"));
15
17
 
16
18
  var _Button = require("../../Button");
@@ -19,8 +21,6 @@ var _styles = require("../../styles");
19
21
 
20
22
  var _types = require("../../types");
21
23
 
22
- var _rooks = require("rooks");
23
-
24
24
  var _jsxRuntime = require("react/jsx-runtime");
25
25
 
26
26
  var _templateObject;
@@ -35,7 +35,9 @@ var MobileActionContainer = function MobileActionContainer(_ref) {
35
35
  label = _ref.label,
36
36
  isLoading = _ref.isLoading,
37
37
  action = _ref.action;
38
- var isSmallScreen = (0, _rooks.useMediaMatch)(_styles.BREAKPOINTS.SMALL.replace('@media ', ''));
38
+ var isSmallScreen = (0, _reactResponsive.useMediaQuery)({
39
+ query: _styles.BREAKPOINTS.SMALL.replace('@media ', '')
40
+ });
39
41
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionContainer, {
40
42
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.Button, {
41
43
  variant: variant,
@@ -1 +1 @@
1
- {"version":3,"file":"MobileActionContainer.cjs","names":["ActionContainer","styled","div","COLORS","neutral_200","BREAKPOINTS","SMALL","MobileActionContainer","disabled","variant","icon","label","isLoading","action","isSmallScreen","useMediaMatch","replace","Size","Medium","Small"],"sources":["../../../src/GlobalNavigationBar/mobile/MobileActionContainer.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { Button } from '../../Button';\nimport { BREAKPOINTS, COLORS } from '../../styles';\nimport { Size } from '../../types';\nimport { MenuButton } from '../types';\nimport {useMediaMatch} from \"rooks\";\n\nconst ActionContainer = styled.div`\n padding: 8px 16px;\n box-sizing: border-box;\n border-top: 1px solid ${COLORS.neutral_200};\n display: flex;\n flex-direction: column;\n\n ${BREAKPOINTS.SMALL} {\n padding: 16px;\n }\n`;\n\ninterface MobileActionContainerProps extends MenuButton {}\n\nexport const MobileActionContainer: React.FunctionComponent<MobileActionContainerProps> = ({ disabled, variant = 'secondary', icon, label, isLoading, action }) => {\n const isSmallScreen = useMediaMatch(BREAKPOINTS.SMALL.replace('@media ', ''));\n\n return (\n <ActionContainer>\n <Button variant={variant} size={isSmallScreen ? Size.Medium : Size.Small} disabled={disabled} icon={icon} loading={isLoading} onClick={action}>\n {label}\n </Button>\n </ActionContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;AAEA,IAAMA,eAAe,GAAGC,yBAAA,CAAOC,GAAV,wPAGKC,cAAA,CAAOC,WAHZ,EAOjBC,mBAAA,CAAYC,KAPK,CAArB;;AAcO,IAAMC,qBAA0E,GAAG,SAA7EA,qBAA6E,OAAyE;EAAA,IAAtEC,QAAsE,QAAtEA,QAAsE;EAAA,wBAA5DC,OAA4D;EAAA,IAA5DA,OAA4D,6BAAlD,WAAkD;EAAA,IAArCC,IAAqC,QAArCA,IAAqC;EAAA,IAA/BC,KAA+B,QAA/BA,KAA+B;EAAA,IAAxBC,SAAwB,QAAxBA,SAAwB;EAAA,IAAbC,MAAa,QAAbA,MAAa;EACjK,IAAMC,aAAa,GAAG,IAAAC,oBAAA,EAAcV,mBAAA,CAAYC,KAAZ,CAAkBU,OAAlB,CAA0B,SAA1B,EAAqC,EAArC,CAAd,CAAtB;EAEA,oBACE,qBAAC,eAAD;IAAA,uBACE,qBAAC,cAAD;MAAQ,OAAO,EAAEP,OAAjB;MAA0B,IAAI,EAAEK,aAAa,GAAGG,WAAA,CAAKC,MAAR,GAAiBD,WAAA,CAAKE,KAAnE;MAA0E,QAAQ,EAAEX,QAApF;MAA8F,IAAI,EAAEE,IAApG;MAA0G,OAAO,EAAEE,SAAnH;MAA8H,OAAO,EAAEC,MAAvI;MAAA,UACGF;IADH;EADF,EADF;AAOD,CAVM"}
1
+ {"version":3,"file":"MobileActionContainer.cjs","names":["ActionContainer","styled","div","COLORS","neutral_200","BREAKPOINTS","SMALL","MobileActionContainer","disabled","variant","icon","label","isLoading","action","isSmallScreen","useMediaQuery","query","replace","Size","Medium","Small"],"sources":["../../../src/GlobalNavigationBar/mobile/MobileActionContainer.tsx"],"sourcesContent":["import React from 'react';\nimport { useMediaQuery } from 'react-responsive';\nimport styled from 'styled-components';\nimport { Button } from '../../Button';\nimport { BREAKPOINTS, COLORS } from '../../styles';\nimport { Size } from '../../types';\nimport { MenuButton } from '../types';\n\nconst ActionContainer = styled.div`\n padding: 8px 16px;\n box-sizing: border-box;\n border-top: 1px solid ${COLORS.neutral_200};\n display: flex;\n flex-direction: column;\n\n ${BREAKPOINTS.SMALL} {\n padding: 16px;\n }\n`;\n\ninterface MobileActionContainerProps extends MenuButton {}\n\nexport const MobileActionContainer: React.FunctionComponent<MobileActionContainerProps> = ({ disabled, variant = 'secondary', icon, label, isLoading, action }) => {\n const isSmallScreen = useMediaQuery({ query: BREAKPOINTS.SMALL.replace('@media ', '') });\n\n return (\n <ActionContainer>\n <Button variant={variant} size={isSmallScreen ? Size.Medium : Size.Small} disabled={disabled} icon={icon} loading={isLoading} onClick={action}>\n {label}\n </Button>\n </ActionContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAGA,IAAMA,eAAe,GAAGC,yBAAA,CAAOC,GAAV,wPAGKC,cAAA,CAAOC,WAHZ,EAOjBC,mBAAA,CAAYC,KAPK,CAArB;;AAcO,IAAMC,qBAA0E,GAAG,SAA7EA,qBAA6E,OAAyE;EAAA,IAAtEC,QAAsE,QAAtEA,QAAsE;EAAA,wBAA5DC,OAA4D;EAAA,IAA5DA,OAA4D,6BAAlD,WAAkD;EAAA,IAArCC,IAAqC,QAArCA,IAAqC;EAAA,IAA/BC,KAA+B,QAA/BA,KAA+B;EAAA,IAAxBC,SAAwB,QAAxBA,SAAwB;EAAA,IAAbC,MAAa,QAAbA,MAAa;EACjK,IAAMC,aAAa,GAAG,IAAAC,8BAAA,EAAc;IAAEC,KAAK,EAAEX,mBAAA,CAAYC,KAAZ,CAAkBW,OAAlB,CAA0B,SAA1B,EAAqC,EAArC;EAAT,CAAd,CAAtB;EAEA,oBACE,qBAAC,eAAD;IAAA,uBACE,qBAAC,cAAD;MAAQ,OAAO,EAAER,OAAjB;MAA0B,IAAI,EAAEK,aAAa,GAAGI,WAAA,CAAKC,MAAR,GAAiBD,WAAA,CAAKE,KAAnE;MAA0E,QAAQ,EAAEZ,QAApF;MAA8F,IAAI,EAAEE,IAApG;MAA0G,OAAO,EAAEE,SAAnH;MAA8H,OAAO,EAAEC,MAAvI;MAAA,UACGF;IADH;EADF,EADF;AAOD,CAVM"}