@redsift/pickers 10.4.0 → 10.5.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +3 -1
- package/index.js +4 -3
- package/index.js.map +1 -1
- package/package.json +5 -5
package/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _redsift_design_system from '@redsift/design-system';
|
|
2
|
-
import { ContainerProps, Comp, ValueOf, TextProps, Theme, FlexboxProps, ListboxContextProps, ItemProps, ButtonColor, ButtonVariant, TextFieldVariant } from '@redsift/design-system';
|
|
2
|
+
import { ContainerProps, Comp, ValueOf, TextProps, Theme, FlexboxProps, ListboxContextProps, PillProps, ItemProps, ButtonColor, ButtonVariant, TextFieldVariant } from '@redsift/design-system';
|
|
3
3
|
export { ItemProps } from '@redsift/design-system';
|
|
4
4
|
import React, { ComponentProps, RefObject, ReactElement, ReactNode } from 'react';
|
|
5
5
|
import { PopoverProps, PopoverContentProps, PopoverTriggerProps } from '@redsift/popovers';
|
|
@@ -175,6 +175,8 @@ interface ComboboxTriggerProps extends Omit<PopoverTriggerProps, 'children'> {
|
|
|
175
175
|
hideExpandButton?: boolean;
|
|
176
176
|
/** Whether the popover should open on focus. */
|
|
177
177
|
openOnFocus?: boolean;
|
|
178
|
+
/** Props to forward to the Pills. */
|
|
179
|
+
pillProps?: Omit<PillProps, 'ref' | 'children'>;
|
|
178
180
|
/** Method used to customize the content of the Button. */
|
|
179
181
|
render?: (value: string) => ReactNode;
|
|
180
182
|
}
|
package/index.js
CHANGED
|
@@ -388,7 +388,8 @@ const ComboboxTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
388
388
|
children,
|
|
389
389
|
hideExpandButton,
|
|
390
390
|
openOnFocus,
|
|
391
|
-
hideClearButton
|
|
391
|
+
hideClearButton,
|
|
392
|
+
pillProps
|
|
392
393
|
} = props;
|
|
393
394
|
const format = useMessageFormatter(intlMessages);
|
|
394
395
|
const {
|
|
@@ -666,7 +667,7 @@ const ComboboxTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
666
667
|
isDisabled: (comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.isDisabled) || (comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.value) && (comboboxState === null || comboboxState === void 0 ? void 0 : (_comboboxState$value = comboboxState.value) === null || _comboboxState$value === void 0 ? void 0 : _comboboxState$value.length) === 0,
|
|
667
668
|
onClick: () => inputRef.current.focus()
|
|
668
669
|
},
|
|
669
|
-
pills: canHaveMultipleSelections ? (comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.value).map(v => ({
|
|
670
|
+
pills: canHaveMultipleSelections ? (comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.value).map(v => _objectSpread2({
|
|
670
671
|
isDisabled: comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.isDisabled,
|
|
671
672
|
children: [v, /*#__PURE__*/React.createElement(IconButton, {
|
|
672
673
|
key: `${id}-pill-${v}-icon-button`,
|
|
@@ -685,7 +686,7 @@ const ComboboxTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
685
686
|
});
|
|
686
687
|
}
|
|
687
688
|
})]
|
|
688
|
-
})) : undefined,
|
|
689
|
+
}, pillProps)) : undefined,
|
|
689
690
|
internal: (value, isDisabled, isInvalid, isRequired) => {
|
|
690
691
|
return /*#__PURE__*/React.createElement(React.Fragment, null, typeof renderedChildren.props.internal === 'function' ? renderedChildren.props.internal(value, isDisabled, isInvalid, isRequired) : renderedChildren.props.internal, hideExpandButton ? null : /*#__PURE__*/React.createElement(IconButton, {
|
|
691
692
|
theme: theme,
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/combobox-content-footer/styles.ts","../src/components/combobox-content-footer/ComboboxContentFooter.tsx","../src/components/combobox-content-header/styles.ts","../src/components/combobox-content-header/ComboboxContentHeader.tsx","../src/components/combobox/context.ts","../src/components/combobox/types.ts","../src/components/combobox-content-listbox/ComboboxContentListbox.tsx","../src/components/combobox-content/ComboboxContent.tsx","../src/components/combobox/intl/index.ts","../src/components/combobox-trigger/ComboboxTrigger.tsx","../src/components/combobox/Combobox.tsx","../src/components/item/useMenuItem.ts","../src/components/item/Item.tsx","../src/components/menu-button-content-footer/styles.ts","../src/components/menu-button-content-footer/MenuButtonContentFooter.tsx","../src/components/menu-button-content-header/styles.ts","../src/components/menu-button-content-header/MenuButtonContentHeader.tsx","../src/components/menu-button-content-menu/MenuButtonContentMenu.tsx","../src/components/menu-button-content/MenuButtonContent.tsx","../src/components/menu-button/context.ts","../src/components/menu-button-trigger/MenuButtonTrigger.tsx","../src/components/menu-button/MenuButton.tsx","../src/components/select-content/SelectContent.tsx","../src/components/select/context.ts","../src/components/select-trigger/SelectTrigger.tsx","../src/components/select/Select.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledComboboxContentFooterProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledComboboxContentFooter = styled.div<StyledComboboxContentFooterProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledComboboxContentFooter } from './styles';\nimport { ComboboxContentFooterProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'ComboboxContentFooter';\nconst CLASSNAME = 'redsift-combobox-content-footer';\n\n/**\n * The ComboboxContentFooter component.\n */\nexport const ComboboxContentFooter: Comp<ComboboxContentFooterProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledComboboxContentFooter\n {...forwardedProps}\n className={classNames(ComboboxContentFooter.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledComboboxContentFooter>\n );\n});\nComboboxContentFooter.className = CLASSNAME;\nComboboxContentFooter.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledComboboxContentHeaderProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledComboboxContentHeader = styled.div<StyledComboboxContentHeaderProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledComboboxContentHeader } from './styles';\nimport { ComboboxContentHeaderProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'ComboboxContentHeader';\nconst CLASSNAME = 'redsift-combobox-content-header';\n\n/**\n * The ComboboxContentHeader component.\n */\nexport const ComboboxContentHeader: Comp<ComboboxContentHeaderProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledComboboxContentHeader\n {...forwardedProps}\n className={classNames(ComboboxContentHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledComboboxContentHeader>\n );\n});\nComboboxContentHeader.className = CLASSNAME;\nComboboxContentHeader.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { ComboboxState } from './types';\n\nexport const ComboboxContext = React.createContext<ComboboxState | null>(null);\n","import { FlexboxProps, TextProps, Theme, ValueOf } from '@redsift/design-system';\nimport { PopoverProps } from '@redsift/popovers';\nimport { ReactElement, RefObject } from 'react';\n\n/**\n * Component variant.\n */\nexport const ComboboxSelectionMode = {\n single: 'single',\n multiple: 'multiple',\n} as const;\nexport type ComboboxSelectionMode = ValueOf<typeof ComboboxSelectionMode>;\n\nexport const ComboboxVariant = {\n options: 'options',\n suggestions: 'suggestions',\n} as const;\nexport type ComboboxVariant = ValueOf<typeof ComboboxVariant>;\n\nexport type ComboboxValue = string | string[];\n\n/**\n * Context props.\n */\nexport type ComboboxState = {\n /** Filtering parameters. */\n readonly filter?: {\n type: 'startsWith' | 'contains' | 'endsWith';\n caseSensitive?: boolean;\n };\n /** Whether the combobox is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the combobox is invalid or not. */\n readonly isInvalid: boolean;\n /** Sets the selected value. */\n setValue(value: ComboboxValue): void;\n /** Current selected value. */\n readonly value: ComboboxValue;\n /** Sets the input value. */\n setInputValue(inputValue: string): void;\n /** Current input value. */\n readonly inputValue: string;\n /** Whether the Combobox allow multiple selection or not. */\n selectionMode?: ComboboxSelectionMode;\n /** If 'options', the input field cannot have free text, the selection has to be made within the options. If 'suggestions', then choosing from the list isn't mandatory and the user can write free text within the input. */\n variant?: ComboboxVariant;\n /** Ref to the first item used to create values. */\n freeTextItemRef?: RefObject<HTMLDivElement>;\n /** Id of the first item used to create values. */\n freeTextItemId?: string;\n /** Class name to append to the trigger. */\n readonly triggerClassName?: string;\n /** Ref to the form, if any. */\n formRef?: RefObject<HTMLFormElement>;\n /** Ref to the submit button, if any. */\n submitRef?: RefObject<HTMLButtonElement>;\n};\n\n/**\n * Component props.\n */\nexport interface ComboboxProps extends PopoverProps {\n /** If 'options', the input field cannot have free text, the selection has to be made within the options. If 'suggestions', then choosing from the list isn't mandatory and the user can write free text within the input. */\n variant?: ComboboxVariant;\n /**\n * Default selected value.\n * Used for uncontrolled version.\n */\n defaultValue?: ComboboxValue;\n /** Description of the combobox. */\n description?: string | ReactElement;\n /** Additional description properties. */\n descriptionProps?: Omit<TextProps, 'ref'>;\n /** Filtering parameters. */\n filter?: {\n type: 'startsWith' | 'contains' | 'endsWith';\n caseSensitive?: boolean;\n };\n /** Ref to the form, if any. */\n formRef?: RefObject<HTMLFormElement>;\n /** Ref to the submit button, if any. */\n submitRef?: RefObject<HTMLButtonElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Maximum number of options displayed. Useful when too many options are displayed. */\n maxOptionsLength?: number;\n /** Method to handle selection change. */\n onChange?(value: ComboboxValue): void;\n /** Method to handle input change. */\n onInputChange?(value: string): void;\n /**\n * Currently selected value.\n * Used for controlled version.\n */\n value?: ComboboxValue;\n /** Input value. */\n inputValue?: string;\n /** Whether the Combobox allow multiple selection or not. */\n selectionMode?: ComboboxSelectionMode;\n /** Theme. */\n theme?: Theme;\n /** Class name to append to the trigger. */\n triggerClassName?: string;\n /** Props to forward to the wrapper. */\n wrapperProps?: Omit<FlexboxProps, 'ref'>;\n}\n\nexport type StyledComboboxProps = ComboboxProps;\n","import React, { ReactNode, forwardRef, useContext, useEffect, RefObject, ReactElement } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n Item,\n ListboxContext,\n StyledItem,\n isComponent,\n useListboxItem,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxContentListboxProps } from './types';\nimport { ComboboxContext } from '../combobox/context';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\n\nconst COMPONENT_NAME = 'ComboboxContentListbox';\nconst CLASSNAME = 'redsift-combobox-content-listbox';\n\n/**\n * The ComboboxContentListbox component.\n */\nexport const ComboboxContentListbox: Comp<ComboboxContentListboxProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, renderFreeTextItem, ...forwardedProps } = props;\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const comboboxState = useContext(ComboboxContext);\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n });\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const cloneChildAndPush = (child: ReactElement, array: Array<ReactNode>) => {\n if (\n !canHaveMultipleSelections ||\n !canHaveFreeText ||\n (canHaveMultipleSelections && canHaveFreeText && !(comboboxState.value as string[]).includes(child.props.value))\n ) {\n array.push(\n React.cloneElement(child, {\n key: child.props.value,\n hasCheckbox: canHaveMultipleSelections && !canHaveFreeText,\n })\n );\n }\n };\n const renderedChildren: Array<ReactNode> = [];\n if (Array.isArray(children)) {\n for (const child of children) {\n if (isComponent(Item)(child)) {\n if (focusContext.state.maxOptionsLength) {\n if (renderedChildren.length < focusContext.state.maxOptionsLength) {\n if (!focusContext.state.filter) {\n cloneChildAndPush(child, renderedChildren);\n } else {\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n cloneChildAndPush(child, renderedChildren);\n } else if (\n caseSensitive &&\n ((type === 'startsWith' && child.props.value!.startsWith(filterValue)) ||\n (type === 'contains' && child.props.value!.includes(filterValue)) ||\n (type === 'endsWith' && child.props.value!.endsWith(filterValue)))\n ) {\n cloneChildAndPush(child, renderedChildren);\n } else if (\n !caseSensitive &&\n ((type === 'startsWith' && child.props.value!.toLowerCase().startsWith(filterValue.toLowerCase())) ||\n (type === 'contains' && child.props.value!.toLowerCase().includes(filterValue.toLowerCase())) ||\n (type === 'endsWith' && child.props.value!.toLowerCase().endsWith(filterValue.toLowerCase())))\n ) {\n cloneChildAndPush(child, renderedChildren);\n }\n }\n }\n } else {\n cloneChildAndPush(child, renderedChildren);\n }\n } else {\n renderedChildren.push(child);\n }\n }\n }\n\n const { tabIndex, isFocused, isSelected, isDisabled, handleKeyDown, handleClick } = useListboxItem({\n domElementRef: comboboxState?.freeTextItemRef as RefObject<Element>,\n value: comboboxState?.inputValue || '',\n id: comboboxState?.freeTextItemId,\n });\n const theme = useTheme();\n\n const renderedFreeTextItem = comboboxState?.inputValue\n ? renderFreeTextItem && typeof renderFreeTextItem === 'function'\n ? renderFreeTextItem(comboboxState?.inputValue, comboboxState, listboxState)\n : comboboxState?.inputValue\n : null;\n\n return (\n <Flexbox\n className={classNames(ComboboxContentListbox.className, className)}\n {...forwardedProps}\n ref={ref}\n flexDirection=\"column\"\n gap=\"0px\"\n margin=\"8px 0px\"\n style={{ outline: 'none' }}\n width=\"100%\"\n >\n {canHaveMultipleSelections && canHaveFreeText ? (\n <StyledItem\n role=\"option\"\n id={comboboxState.freeTextItemId}\n $color=\"primary\"\n $isActive={isSelected}\n $isDisabled={isDisabled}\n $isGradient={false}\n $isHovered={isFocused}\n $hasBorder={false}\n $hasCheckbox={false}\n $theme={theme}\n aria-selected={isSelected}\n className={classNames(Item.className, className)}\n onClick={handleClick}\n ref={comboboxState.freeTextItemRef as RefObject<HTMLDivElement>}\n onKeyDown={handleKeyDown}\n tabIndex={tabIndex}\n style={\n !comboboxState.inputValue\n ? {\n height: '0',\n visibility: 'hidden',\n padding: '0',\n }\n : undefined\n }\n >\n {renderedFreeTextItem}\n </StyledItem>\n ) : null}\n {Array.isArray(children) ? renderedChildren : children}\n </Flexbox>\n );\n});\nComboboxContentListbox.className = CLASSNAME;\nComboboxContentListbox.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n ListboxContext,\n getContainerProps,\n isComponent,\n partitionComponents,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n usePopoverContext,\n StyledPopoverContent,\n useMergeRefs,\n} from '@redsift/popovers';\nimport { ComboboxContentHeader } from '../combobox-content-header';\nimport { ComboboxContentFooter } from '../combobox-content-footer';\nimport { ComboboxContentListbox } from '../combobox-content-listbox/ComboboxContentListbox';\nimport { ComboboxContext } from '../combobox/context';\n\nconst COMPONENT_NAME = 'ComboboxContent';\nconst CLASSNAME = 'redsift-combobox-content';\n\n/**\n * The ComboboxContent component.\n */\nexport const BaseComboboxContent: Comp<ComboboxContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const comboboxState = useContext(ComboboxContext);\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const [[header], [listbox], [footer]] = partitionComponents(React.Children.toArray(children), [\n isComponent('ComboboxContentHeader'),\n isComponent('ComboboxContentListbox'),\n isComponent('ComboboxContentFooter'),\n ]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen && (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n ...(comboboxState?.inputValue?.length && focusContext.state.tabStops.length === 0\n ? { display: 'none' }\n : {}),\n }}\n className={classNames(PopoverContent.className, BaseComboboxContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n {header}\n {listbox}\n {footer}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nBaseComboboxContent.className = CLASSNAME;\nBaseComboboxContent.displayName = COMPONENT_NAME;\n\nexport const ComboboxContent = Object.assign(BaseComboboxContent, {\n Header: ComboboxContentHeader,\n Listbox: ComboboxContentListbox,\n Footer: ComboboxContentFooter,\n});\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React, { KeyboardEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\n\nimport { useId, useMessageFormatter } from '@redsift/design-system';\nimport intlMessages from '../combobox/intl';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n IconButton,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { ComboboxContext } from '../combobox/context';\nimport { mdiChevronDown, mdiClose } from '@redsift/icons';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'ComboboxTrigger';\nconst CLASSNAME = 'redsift-combobox-trigger';\n\n/**\n * The ComboboxTrigger component.\n */\nexport const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const [id] = useId();\n const { children, hideExpandButton, openOnFocus, hideClearButton } = props;\n\n const format = useMessageFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const comboboxState = useContext(ComboboxContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\n\n const isTextArea = isComponent('TextArea')(renderedChildren);\n const isTextField = isComponent('TextField')(renderedChildren);\n const hasMultipleLines = isTextArea && comboboxState?.inputValue.includes('\\n');\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleChange = (value?: string) => {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: value || '', ...comboboxState?.filter! } },\n });\n\n comboboxState?.setInputValue(value!);\n };\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpenPopover(false);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText && comboboxState.inputValue) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n }\n }\n\n if ((/^.$/.test(event.key) || code === 'Backspace') && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n }\n\n if (canHaveMultipleSelections && comboboxState.inputValue === '' && code === 'Backspace') {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: (comboboxState.value as string[]).slice(0, (comboboxState.value as string[]).length - 1),\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n\n if (code === 'ArrowDown' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowDown : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'ArrowUp' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'Enter') {\n if (isTextField || (isTextArea && !event.shiftKey)) {\n event.preventDefault();\n }\n\n if (\n canHaveMultipleSelections &&\n canHaveFreeText &&\n focusContext.state.activedescendant?.[0] === comboboxState.freeTextItemId &&\n comboboxState.inputValue\n ) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n handleOpenPopover(false);\n } else if (isOpen && focusContext.state.selectedId) {\n if (canHaveMultipleSelections) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n } else {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n } else if (!event.shiftKey) {\n comboboxState?.formRef?.current?.submit();\n comboboxState?.submitRef?.current?.click();\n }\n }\n };\n\n const handleOpen = () => {\n if (isOpen) {\n handleOpenPopover(false);\n } else {\n handleOpenPopover(true);\n inputRef.current?.focus();\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0]!,\n filter: { value: '', ...comboboxState?.filter! },\n },\n },\n });\n }\n };\n\n const handleFocus = () => {\n if (openOnFocus) {\n handleOpen();\n }\n inputRef.current?.select();\n };\n\n const handleBlur = () => {\n if (canHaveMultipleSelections) {\n if (!canHaveFreeText) {\n comboboxState?.setInputValue('');\n }\n } else {\n if (canHaveFreeText) {\n comboboxState?.setValue(comboboxState.inputValue);\n } else {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n }\n };\n\n const handleClear = () => {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [],\n activedescendant: ['', ''],\n },\n });\n };\n\n useEffect(() => {\n if (canHaveMultipleSelections) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues);\n comboboxState?.setInputValue('');\n handleOpenPopover(false);\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: listboxState.state.selectedValues[0] || '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues[0]);\n if (listboxState.state.selectedValues.length) {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n handleOpenPopover(false);\n }\n }, [listboxState.state]);\n\n if (isTextField || isTextArea) {\n const {\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n role,\n ...forwardedProps\n } = getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n });\n\n const inputProps = {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n autoComplete: 'off',\n autoCapitalize: 'off',\n autoCorrect: 'off',\n spellCheck: 'false',\n 'aria-autocomplete': canHaveMultipleSelections ? 'list' : undefined,\n 'aria-description': canHaveMultipleSelections\n ? format('selected', { count: comboboxState?.value.length })\n : undefined,\n onKeyDown: handleKeyDown,\n role,\n };\n\n return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n theme,\n className: classNames((renderedChildren as ReactElement).props.className, comboboxState?.triggerClassName),\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: comboboxState?.inputValue,\n ...(isTextField\n ? {\n inputProps,\n inputRef,\n onClear: handleClear,\n hasClearButton: hideClearButton\n ? false\n : {\n isDisabled: comboboxState?.isDisabled || (comboboxState?.value && comboboxState?.value?.length === 0),\n onClick: () => inputRef.current.focus(),\n },\n pills: canHaveMultipleSelections\n ? (comboboxState?.value as string[]).map((v) => ({\n isDisabled: comboboxState?.isDisabled,\n children: [\n v,\n <IconButton\n key={`${id}-pill-${v}-icon-button`}\n icon={mdiClose}\n aria-label={format('unselect', { label: v })}\n onClick={(event) => {\n event.preventDefault();\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: v,\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }}\n />,\n ],\n }))\n : undefined,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <IconButton\n theme={theme}\n aria-label={format(!isOpen ? 'expand' : 'collapse')}\n color=\"grey\"\n icon={mdiChevronDown}\n onClick={handleOpen}\n isDisabled={isDisabled}\n tabIndex={-1}\n iconProps={{\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n }}\n />\n )}\n </>\n );\n },\n }\n : {\n textareaProps: inputProps,\n textareaRef: inputRef,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.displayName = COMPONENT_NAME;\n","import React, { RefObject, useEffect, useMemo, useReducer, useRef, useState } from 'react';\nimport { ComboboxContent } from '../combobox-content';\nimport { ComboboxTrigger } from '../combobox-trigger';\n\nimport { ComboboxProps, ComboboxSelectionMode, ComboboxValue, ComboboxVariant } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { ComboboxContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Combobox';\nconst CLASSNAME = 'redsift-combobox';\n\n/**\n * The Combobox component.\n */\nexport const BaseCombobox: React.FC<ComboboxProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n defaultValue,\n description,\n descriptionProps,\n filter = {\n type: 'startsWith',\n caseSensitive: false,\n },\n formRef,\n submitRef,\n inputValue: propsInputValue,\n isDisabled,\n isInvalid,\n maxOptionsLength,\n minWidth = 'trigger-width',\n onChange,\n onInputChange,\n selectionMode = ComboboxSelectionMode.single,\n theme: propsTheme,\n triggerClassName,\n value,\n variant = ComboboxVariant.options,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<ComboboxValue>(\n value || defaultValue || (selectionMode === 'multiple' ? [] : '')\n );\n const [inputValue, setInputValue] = useState<string>(propsInputValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n useEffect(() => {\n if (propsInputValue) {\n state.setInputValue(propsInputValue);\n }\n }, [propsInputValue]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: selectionMode === ComboboxSelectionMode.multiple ? selectedValue : [selectedValue],\n selectionMode,\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled]);\n\n const freeTextItemRef = useRef<HTMLDivElement>();\n const [freeTextItemId] = useId();\n\n /** Combobox context. */\n const state = {\n filter,\n formRef,\n submitRef,\n value: selectedValue,\n inputValue,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n selectionMode,\n variant,\n freeTextItemRef: freeTextItemRef as RefObject<HTMLDivElement>,\n freeTextItemId,\n triggerClassName,\n setValue(value: ComboboxValue) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n setInputValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = inputValue;\n setInputValue(value);\n if (value !== previousValue && onInputChange) {\n onInputChange(value);\n }\n },\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false} maxOptionsLength={maxOptionsLength}>\n <ComboboxContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n","import { useCallback, useEffect, RefObject, KeyboardEvent } from 'react';\nimport { usePopoverContext } from '@redsift/popovers';\nimport { UseFocusWithinGroupProps, useFocusOnListItem } from '@redsift/design-system';\n\nexport function useMenuItem(props: {\n domElementRef: RefObject<Element>;\n id: string;\n isDisabled?: boolean;\n onClick?: () => void;\n isLinkMenuItem?: boolean;\n linkRef?: RefObject<HTMLAnchorElement>;\n hasPopup?: boolean;\n}): UseFocusWithinGroupProps & {\n isDisabled?: boolean;\n} {\n const { domElementRef, id, isDisabled, onClick, isLinkMenuItem, linkRef, hasPopup } = props;\n\n const { handleOpen, hideInsteadOfClose, setHideInsteadOfClose } = usePopoverContext();\n const {\n tabIndex,\n isFocused,\n handleKeyDown: handleFocusKeyDown,\n handleClick: handleFocusClick,\n } = useFocusOnListItem({ domElementRef, isDisabled: isDisabled!, id });\n\n useEffect(() => {\n if (hasPopup && !hideInsteadOfClose) {\n setHideInsteadOfClose?.(true);\n }\n }, [hasPopup, hideInsteadOfClose, setHideInsteadOfClose]);\n\n const handleKeyDown = useCallback((event: KeyboardEvent) => {\n const code = event.code;\n if (code === 'Enter' || code === 'Space') {\n if (isLinkMenuItem) {\n linkRef?.current?.click();\n } else {\n onClick?.();\n }\n }\n handleFocusKeyDown(event);\n handleOpen(false);\n }, []);\n\n const handleClick = useCallback(() => {\n handleFocusClick();\n onClick?.();\n handleOpen(false);\n }, []);\n\n useEffect(() => {\n if (isFocused && domElementRef.current) {\n (domElementRef as RefObject<SVGElement | HTMLElement>).current?.focus();\n }\n }, [isFocused]);\n\n return {\n tabIndex,\n isFocused,\n isDisabled,\n handleKeyDown,\n handleClick,\n };\n}\n","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useMenuItem } from './useMenuItem';\nimport { useMergeRefs } from '@redsift/popovers';\nimport {\n ButtonsColorPalette,\n Comp,\n ConditionalWrapper,\n FocusWithinGroupContext,\n isComponent,\n StyledGradientBorder,\n useTheme,\n RenderedListboxItem,\n ItemProps,\n StyledItem,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Item';\nconst CLASSNAME = 'redsift-item';\n\nconst RenderedMenuItem: Comp<Omit<ItemProps, 'value'>, HTMLElement> = forwardRef((props, ref) => {\n const {\n borderRadius = '0',\n children,\n className,\n color: propsColor,\n hasBorder,\n id: propsId,\n isActive,\n isDisabled: propsIsDisabled,\n isHovered,\n theme: propsTheme,\n onClick,\n ...forwardedProps\n } = props;\n const [_id] = useId();\n const id = propsId ?? _id;\n const _ref = useRef<HTMLElement>();\n const divRef = useMergeRefs([ref, _ref]);\n const linkRef = useRef<HTMLAnchorElement>(null);\n\n const isLinkMenuItem = isComponent('Link')(children);\n const { tabIndex, isFocused, isDisabled, handleKeyDown, handleClick } = useMenuItem({\n domElementRef: _ref as RefObject<Element>,\n id,\n isDisabled: propsIsDisabled!,\n onClick: onClick as any,\n isLinkMenuItem,\n linkRef,\n hasPopup: props['aria-haspopup'] !== undefined,\n });\n\n const theme = useTheme(propsTheme);\n const color = Object.values(ButtonsColorPalette).includes(propsColor!) ? propsColor : 'primary';\n const isGradient = color === ButtonsColorPalette.radar;\n\n return (\n <ConditionalWrapper\n condition={isGradient}\n wrapper={(children) => (\n <StyledGradientBorder\n $borderRadius={borderRadius}\n $color={color}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $isHovered={isHovered}\n $theme={theme}\n width=\"auto\"\n >\n {children}\n </StyledGradientBorder>\n )}\n >\n <StyledItem\n as=\"li\"\n role={isLinkMenuItem ? 'none' : 'menuitem'}\n {...forwardedProps}\n id={id}\n $borderRadius={borderRadius}\n $color={color}\n $hasBorder={hasBorder}\n $hasCheckbox={false}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $isGradient={isGradient}\n $isHovered={isHovered || isFocused}\n $theme={theme}\n aria-disabled={isDisabled}\n className={classNames(Item.className, className)}\n onClick={isDisabled ? undefined : handleClick}\n ref={divRef}\n onKeyDown={handleKeyDown}\n tabIndex={tabIndex}\n >\n {isLinkMenuItem\n ? React.cloneElement(children, {\n role: 'menuitem',\n ref: linkRef,\n })\n : children}\n </StyledItem>\n </ConditionalWrapper>\n );\n});\n\n/**\n * The Item component.\n */\nexport const Item: Comp<ItemProps, HTMLElement> = forwardRef((props, ref) => {\n const { value } = props;\n const focusContext = useContext(FocusWithinGroupContext);\n const isListbox = focusContext.state.listRole === 'listbox';\n\n if (!focusContext.state.filter) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n }\n\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n } else if (\n caseSensitive &&\n ((type === 'startsWith' && value!.startsWith(filterValue)) ||\n (type === 'contains' && value!.includes(filterValue)) ||\n (type === 'endsWith' && value!.endsWith(filterValue)))\n ) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n } else if (\n !caseSensitive &&\n ((type === 'startsWith' && value!.toLowerCase().startsWith(filterValue.toLowerCase())) ||\n (type === 'contains' && value!.toLowerCase().includes(filterValue.toLowerCase())) ||\n (type === 'endsWith' && value!.toLowerCase().endsWith(filterValue.toLowerCase())))\n ) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n }\n\n return null;\n});\nItem.className = CLASSNAME;\nItem.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledMenuButtonContentFooterProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledMenuButtonContentFooter = styled.div<StyledMenuButtonContentFooterProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledMenuButtonContentFooter } from './styles';\nimport { MenuButtonContentFooterProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButtonContentFooter';\nconst CLASSNAME = 'redsift-combobox-content-footer';\n\n/**\n * The MenuButtonContentFooter component.\n */\nexport const MenuButtonContentFooter: Comp<MenuButtonContentFooterProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledMenuButtonContentFooter\n {...forwardedProps}\n className={classNames(MenuButtonContentFooter.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledMenuButtonContentFooter>\n );\n});\nMenuButtonContentFooter.className = CLASSNAME;\nMenuButtonContentFooter.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledMenuButtonContentHeaderProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledMenuButtonContentHeader = styled.div<StyledMenuButtonContentHeaderProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledMenuButtonContentHeader } from './styles';\nimport { MenuButtonContentHeaderProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButtonContentHeader';\nconst CLASSNAME = 'redsift-combobox-content-header';\n\n/**\n * The MenuButtonContentHeader component.\n */\nexport const MenuButtonContentHeader: Comp<MenuButtonContentHeaderProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledMenuButtonContentHeader\n {...forwardedProps}\n className={classNames(MenuButtonContentHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledMenuButtonContentHeader>\n );\n});\nMenuButtonContentHeader.className = CLASSNAME;\nMenuButtonContentHeader.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, FocusWithinGroupContext } from '@redsift/design-system';\nimport { MenuButtonContentMenuProps } from './types';\n\nconst COMPONENT_NAME = 'MenuButtonContentMenu';\nconst CLASSNAME = 'redsift-menu-button-content-menu';\n\n/**\n * The MenuButtonContentMenu component.\n */\nexport const MenuButtonContentMenu: Comp<MenuButtonContentMenuProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const focusContext = useContext(FocusWithinGroupContext);\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n }, [focusContext.state.delayedAction, focusContext.state.tabStops.length]);\n\n return (\n <Flexbox\n flexDirection=\"column\"\n gap=\"8px\"\n margin=\"8px 0px\"\n width=\"100%\"\n className={classNames(MenuButtonContentMenu.className, className)}\n role=\"menu\"\n as=\"ul\"\n {...forwardedProps}\n ref={ref}\n >\n {children}\n </Flexbox>\n );\n});\nMenuButtonContentMenu.className = CLASSNAME;\nMenuButtonContentMenu.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext } from 'react';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n getContainerProps,\n isComponent,\n partitionComponents,\n useTheme,\n} from '@redsift/design-system';\nimport { MenuButtonContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n StyledPopoverContent,\n useMergeRefs,\n usePopoverContext,\n} from '@redsift/popovers';\nimport classNames from 'classnames';\nimport { MenuButtonContentFooter } from '../menu-button-content-footer';\nimport { MenuButtonContentHeader } from '../menu-button-content-header';\nimport { MenuButtonContentMenu } from '../menu-button-content-menu';\n\nconst COMPONENT_NAME = 'MenuButtonContent';\nconst CLASSNAME = 'redsift-menu-button-content';\n\n/**\n * The MenuButtonContent component.\n */\nexport const BaseMenuButtonContent: Comp<MenuButtonContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y, hideInsteadOfClose } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const theme = useTheme();\n\n const [[header], [menu], [footer]] = partitionComponents(React.Children.toArray(children), [\n isComponent('MenuButtonContentHeader'),\n isComponent('MenuButtonContentMenu'),\n isComponent('MenuButtonContentFooter'),\n ]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen || hideInsteadOfClose ? (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n display: hideInsteadOfClose && !isOpen ? 'none' : 'flex',\n ...style,\n }}\n className={classNames(PopoverContent.className, BaseMenuButtonContent.className, className)}\n >\n {!header && !menu && !footer ? (\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n <MenuButtonContentMenu>{children}</MenuButtonContentMenu>\n </Flexbox>\n ) : (\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n {header}\n {menu}\n {footer}\n </Flexbox>\n )}\n </StyledPopoverContent>\n ) : null}\n </FloatingPortal>\n );\n});\nBaseMenuButtonContent.className = CLASSNAME;\nBaseMenuButtonContent.displayName = COMPONENT_NAME;\n\nexport const MenuButtonContent = Object.assign(BaseMenuButtonContent, {\n Header: MenuButtonContentHeader,\n Menu: MenuButtonContentMenu,\n Footer: MenuButtonContentFooter,\n});\n","import React from 'react';\nimport { MenuButtonState } from './types';\n\nexport const MenuButtonContext = React.createContext<MenuButtonState | null>(null);\n","import React, { MouseEvent, ReactElement, forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { MenuButtonTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { MenuButtonContext } from '../menu-button/context';\n\nconst COMPONENT_NAME = 'MenuButtonTrigger';\nconst CLASSNAME = 'redsift-menu-button-trigger';\n\n/**\n * The MenuButtonTrigger component.\n */\nexport const MenuButtonTrigger: Comp<MenuButtonTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const menuButtonContext = useContext(MenuButtonContext);\n const theme = useTheme();\n\n const renderedChildren = typeof children === 'function' ? children({ isOpen }) : children;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpen(false);\n }\n } else if (code === 'ArrowDown') {\n if (!isOpen) {\n handleOpen(true);\n }\n if (focusContext.state.selectedId !== null) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.ArrowDown,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n event.preventDefault();\n } else if (code === 'ArrowUp') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Home') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'End') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Enter') {\n if (isOpen && focusContext.state.selectedId) {\n document.getElementById(focusContext.state.selectedId)?.click();\n document.getElementById(focusContext.state.selectedId)?.getElementsByTagName('a')?.[0]?.click();\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n event.preventDefault();\n if (isOpen) {\n handleOpen(false);\n } else {\n handleOpen(true);\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n };\n\n if (isComponent('Button')(renderedChildren) || isComponent('IconButton')(renderedChildren)) {\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n theme,\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n className: classNames((renderedChildren as ReactElement).props.className, menuButtonContext?.triggerClassName),\n color: menuButtonContext?.color ?? (renderedChildren as ReactElement).props.color,\n isActive: isOpen,\n isDisabled: menuButtonContext?.isDisabled,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n role: 'button',\n variant: menuButtonContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n });\n }\n\n return <>{renderedChildren}</>;\n});\nMenuButtonTrigger.className = CLASSNAME;\nMenuButtonTrigger.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { MenuButtonContent } from '../menu-button-content';\nimport { MenuButtonTrigger } from '../menu-button-trigger';\n\nimport { MenuButtonProps } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { MenuButtonContext } from './context';\nimport { FocusWithinGroup, Flexbox, Text, Theme, useTheme, ThemeProvider } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButton';\nconst CLASSNAME = 'redsift-menu-button';\n\n/**\n * The MenuButton component.\n */\nexport const BaseMenuButton: React.FC<MenuButtonProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n color,\n description,\n descriptionProps,\n isDisabled,\n label,\n labelProps,\n minWidth = 'trigger-width',\n theme: propsTheme,\n triggerClassName,\n variant,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n /** MenuButton context. */\n const state = {\n color,\n isDisabled: isDisabled || false,\n theme,\n triggerClassName,\n variant,\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" listRole=\"menu\" focusOnInit={false}>\n <MenuButtonContext.Provider value={state}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n {label && typeof label === 'string' ? <Text {...labelProps}>{label}</Text> : label ? label : null}\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'MenuButtonContent', trigger: 'MenuButtonTrigger' }}\n placement=\"bottom-end\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </MenuButtonContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseMenuButton.className = CLASSNAME;\nBaseMenuButton.displayName = COMPONENT_NAME;\n\nexport const MenuButton = Object.assign(BaseMenuButton, {\n Trigger: MenuButtonTrigger,\n Content: MenuButtonContent,\n});\n","import React, { forwardRef, useContext, useEffect } from 'react';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n ListboxContext,\n getContainerProps,\n useTheme,\n} from '@redsift/design-system';\nimport { SelectContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n StyledPopoverContent,\n useMergeRefs,\n usePopoverContext,\n} from '@redsift/popovers';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'SelectContent';\nconst CLASSNAME = 'redsift-select-content';\n\n/**\n * The SelectContent component.\n */\nexport const SelectContent: Comp<SelectContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n }, [focusContext.state.delayedAction, focusContext.state.tabStops.length]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen && (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n className={classNames(PopoverContent.className, SelectContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" margin=\"8px 0px\" width=\"100%\" {...containerProps}>\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nSelectContent.className = CLASSNAME;\nSelectContent.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { SelectState } from './types';\n\nexport const SelectContext = React.createContext<SelectState | null>(null);\n","import React, { MouseEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n Icon,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { SelectTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { SelectContext } from '../select/context';\nimport { mdiChevronDown } from '@redsift/icons';\n\nconst COMPONENT_NAME = 'SelectTrigger';\nconst CLASSNAME = 'redsift-select-trigger';\n\n/**\n * The SelectTrigger component.\n */\nexport const SelectTrigger: Comp<SelectTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children, hideExpandButton } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const selectContext = useContext(SelectContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: selectContext?.value, isOpen }) : children;\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape') {\n if (isOpen) {\n handleOpen(false);\n }\n } else if (code === 'ArrowDown') {\n if (!isOpen) {\n handleOpen(true);\n }\n if (focusContext.state.selectedId !== null) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.ArrowDown,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else if (!focusContext.state.activedescendant?.[0]) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n event.preventDefault();\n } else if (code === 'ArrowUp') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Home') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'End') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Enter') {\n if (isOpen && focusContext.state.selectedId) {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n event.preventDefault();\n if (isOpen) {\n handleOpen(false);\n } else {\n handleOpen(true);\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n };\n\n useEffect(() => {\n selectContext?.setValue(listboxState.state.selectedValues[0]);\n handleOpen(false);\n }, [listboxState.state]);\n\n if (isComponent('TextField')(renderedChildren)) {\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n className: classNames((renderedChildren as ReactElement).props.className, selectContext?.triggerClassName),\n color: selectContext?.color ?? (renderedChildren as ReactElement).props.color,\n inputRef,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <Icon\n color={isDisabled ? 'no-data' : 'question'}\n icon={mdiChevronDown}\n style={{\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n cursor: 'pointer',\n }}\n />\n )}\n </>\n );\n },\n isActive: isOpen,\n isDisabled: selectContext?.isDisabled,\n isReadOnly: true,\n theme,\n role: 'combobox',\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n style: { ...(renderedChildren as ReactElement).props.style, caretColor: 'transparent', cursor: 'pointer' },\n variant: selectContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n value: selectContext.value,\n }),\n inputProps: {\n ...(renderedChildren as ReactElement).props.inputProps,\n style: { ...(renderedChildren as ReactElement).props.inputProps?.style, cursor: 'pointer' },\n },\n });\n } else if (isComponent('Button')(renderedChildren)) {\n const children = (renderedChildren as ReactElement).props.children;\n const label = typeof children === 'string' ? children : children?.textContent;\n\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-label': (renderedChildren as ReactElement).props['aria-label'] ?? label,\n className: classNames((renderedChildren as ReactElement).props.className, selectContext?.triggerClassName),\n color: selectContext?.color ?? (renderedChildren as ReactElement).props.color,\n isActive: isOpen,\n isDisabled: selectContext?.isDisabled,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n rightIcon: (renderedChildren as ReactElement).props.rightIcon ?? mdiChevronDown,\n rightIconProps: (renderedChildren as ReactElement).props.rightIcon\n ? (renderedChildren as ReactElement).props.rightIconProps\n : (renderedChildren as ReactElement).props.rightIconProps ?? {\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n },\n role: 'combobox',\n theme,\n variant: selectContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nSelectTrigger.className = CLASSNAME;\nSelectTrigger.displayName = COMPONENT_NAME;\n","import React, { useEffect, useMemo, useReducer, useState } from 'react';\nimport { SelectContent } from '../select-content';\nimport { SelectTrigger } from '../select-trigger';\n\nimport { SelectProps } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { SelectContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Select';\nconst CLASSNAME = 'redsift-select';\n\n/**\n * The Select component.\n */\nexport const BaseSelect: React.FC<SelectProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n color,\n defaultValue,\n description,\n descriptionProps,\n isDisabled,\n isInvalid,\n minWidth = 'trigger-width',\n onChange,\n theme: propsTheme,\n triggerClassName,\n value,\n variant,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<string>(value || defaultValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: [selectedValue],\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled, theme]);\n\n /** Select context. */\n const state = {\n color,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n setValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n theme,\n triggerClassName,\n value: selectedValue,\n variant,\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false}>\n <SelectContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'SelectContent', trigger: 'SelectTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </SelectContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseSelect.className = CLASSNAME;\nBaseSelect.displayName = COMPONENT_NAME;\n\nexport const Select = Object.assign(BaseSelect, {\n Trigger: SelectTrigger,\n Content: SelectContent,\n});\n"],"names":["StyledComboboxContentFooter","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","ComboboxContentFooter","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","displayName","StyledComboboxContentHeader","ComboboxContentHeader","ComboboxContext","createContext","ComboboxSelectionMode","single","multiple","ComboboxVariant","options","suggestions","ComboboxContentListbox","renderFreeTextItem","focusContext","useContext","FocusWithinGroupContext","listboxState","ListboxContext","comboboxState","useEffect","state","delayedAction","tabStops","length","dispatch","canHaveMultipleSelections","selectionMode","canHaveFreeText","variant","cloneChildAndPush","child","array","value","includes","push","cloneElement","key","hasCheckbox","renderedChildren","Array","isArray","isComponent","Item","maxOptionsLength","filter","filterValue","type","caseSensitive","startsWith","endsWith","toLowerCase","tabIndex","isFocused","isSelected","isDisabled","handleKeyDown","handleClick","useListboxItem","domElementRef","freeTextItemRef","inputValue","id","freeTextItemId","theme","useTheme","renderedFreeTextItem","Flexbox","flexDirection","gap","margin","style","outline","width","StyledItem","role","$color","$isActive","$isDisabled","$isGradient","$isHovered","$hasBorder","$hasCheckbox","$theme","onClick","onKeyDown","height","visibility","padding","undefined","BaseComboboxContent","_comboboxState$inputV","containerProps","getContainerProps","getFloatingProps","isOpen","refs","strategy","x","y","usePopoverContext","popoverRef","useMergeRefs","setFloating","appContainerState","AppContainerContext","header","listbox","footer","partitionComponents","Children","toArray","FloatingPortal","root","appContainerRef","current","StyledPopoverContent","_objectSpread","position","top","left","display","PopoverContent","ComboboxContent","Object","assign","Header","Listbox","Footer","enUS","frFR","ComboboxTrigger","_renderedChildren$pro","useId","hideExpandButton","openOnFocus","hideClearButton","format","useMessageFormatter","intlMessages","getReferenceProps","handleOpen","handleOpenPopover","childrenRef","triggerRef","setReference","isTextArea","isTextField","hasMultipleLines","_inputRef","useRef","inputRef","handleChange","FocusWithinGroupActionType","FILTER_LIST","payload","setInputValue","event","code","ListboxActionType","TOGGLE","activedescendant","test","DELAY_ACTION","KEY_DOWN_ON_LIST","EventKey","Home","ctrlKey","SET","values","slice","selectedId","ArrowDown","preventDefault","ArrowUp","End","_focusContext$state$a","shiftKey","_focusContext$state$a2","_focusContext$state$a3","_focusContext$state$a4","_focusContext$state$a5","_comboboxState$formRe","_comboboxState$formRe2","_comboboxState$submit","_comboboxState$submit2","formRef","submit","submitRef","click","_inputRef$current","_focusContext$state$a6","focus","FOCUS_ON_LIST","handleFocus","_inputRef$current2","select","handleBlur","setValue","selectedValues","handleClear","_props$children","_focusContext$state$a7","_comboboxState$value","_getReferenceProps","ariaControls","ariaExpanded","ariaHaspopup","inputProps","autoComplete","autoCapitalize","autoCorrect","spellCheck","count","triggerClassName","isInvalid","onChange","onBlur","onFocus","onClear","hasClearButton","pills","map","v","IconButton","icon","mdiClose","label","internal","isRequired","Fragment","color","mdiChevronDown","iconProps","transition","transform","textareaProps","textareaRef","BaseCombobox","defaultValue","description","descriptionProps","propsInputValue","minWidth","onInputChange","propsTheme","wrapperProps","selectedValue","useState","listboxDispatch","useReducer","ListboxReducer","listboxContext","useMemo","UPDATE_OPTIONS","previousValue","ThemeProvider","FocusWithinGroup","focusType","focusOnInit","Provider","alignItems","Popover","overrideDisplayName","content","trigger","placement","Text","marginTop","Theme","light","isValidElement","Combobox","Trigger","Content","useMenuItem","isLinkMenuItem","linkRef","hasPopup","hideInsteadOfClose","setHideInsteadOfClose","handleFocusKeyDown","handleFocusClick","useFocusOnListItem","useCallback","_linkRef$current","_current","RenderedMenuItem","borderRadius","propsColor","hasBorder","propsId","isActive","propsIsDisabled","isHovered","_id","_ref","divRef","ButtonsColorPalette","isGradient","radar","ConditionalWrapper","condition","wrapper","StyledGradientBorder","$borderRadius","as","isListbox","listRole","RenderedListboxItem","StyledMenuButtonContentFooter","MenuButtonContentFooter","StyledMenuButtonContentHeader","MenuButtonContentHeader","MenuButtonContentMenu","BaseMenuButtonContent","menu","MenuButtonContent","Menu","MenuButtonContext","MenuButtonTrigger","menuButtonContext","_document$getElementB","_document$getElementB2","_document$getElementB3","_document$getElementB4","document","getElementById","getElementsByTagName","_menuButtonContext$co","_menuButtonContext$va","BaseMenuButton","labelProps","MenuButton","SelectContent","SelectContext","SelectTrigger","selectContext","_focusContext$state$a8","_selectContext$color","_selectContext$varian","_props$inputProps","Icon","cursor","isReadOnly","caretColor","_props$children2","_focusContext$state$a9","_props$ariaLabel","_selectContext$color2","_props$rightIcon","_props$rightIconProps","_selectContext$varian2","textContent","rightIcon","rightIconProps","BaseSelect","Select"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/combobox-content-footer/styles.ts","../src/components/combobox-content-footer/ComboboxContentFooter.tsx","../src/components/combobox-content-header/styles.ts","../src/components/combobox-content-header/ComboboxContentHeader.tsx","../src/components/combobox/context.ts","../src/components/combobox/types.ts","../src/components/combobox-content-listbox/ComboboxContentListbox.tsx","../src/components/combobox-content/ComboboxContent.tsx","../src/components/combobox/intl/index.ts","../src/components/combobox-trigger/ComboboxTrigger.tsx","../src/components/combobox/Combobox.tsx","../src/components/item/useMenuItem.ts","../src/components/item/Item.tsx","../src/components/menu-button-content-footer/styles.ts","../src/components/menu-button-content-footer/MenuButtonContentFooter.tsx","../src/components/menu-button-content-header/styles.ts","../src/components/menu-button-content-header/MenuButtonContentHeader.tsx","../src/components/menu-button-content-menu/MenuButtonContentMenu.tsx","../src/components/menu-button-content/MenuButtonContent.tsx","../src/components/menu-button/context.ts","../src/components/menu-button-trigger/MenuButtonTrigger.tsx","../src/components/menu-button/MenuButton.tsx","../src/components/select-content/SelectContent.tsx","../src/components/select/context.ts","../src/components/select-trigger/SelectTrigger.tsx","../src/components/select/Select.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledComboboxContentFooterProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledComboboxContentFooter = styled.div<StyledComboboxContentFooterProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledComboboxContentFooter } from './styles';\nimport { ComboboxContentFooterProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'ComboboxContentFooter';\nconst CLASSNAME = 'redsift-combobox-content-footer';\n\n/**\n * The ComboboxContentFooter component.\n */\nexport const ComboboxContentFooter: Comp<ComboboxContentFooterProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledComboboxContentFooter\n {...forwardedProps}\n className={classNames(ComboboxContentFooter.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledComboboxContentFooter>\n );\n});\nComboboxContentFooter.className = CLASSNAME;\nComboboxContentFooter.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledComboboxContentHeaderProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledComboboxContentHeader = styled.div<StyledComboboxContentHeaderProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledComboboxContentHeader } from './styles';\nimport { ComboboxContentHeaderProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'ComboboxContentHeader';\nconst CLASSNAME = 'redsift-combobox-content-header';\n\n/**\n * The ComboboxContentHeader component.\n */\nexport const ComboboxContentHeader: Comp<ComboboxContentHeaderProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledComboboxContentHeader\n {...forwardedProps}\n className={classNames(ComboboxContentHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledComboboxContentHeader>\n );\n});\nComboboxContentHeader.className = CLASSNAME;\nComboboxContentHeader.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { ComboboxState } from './types';\n\nexport const ComboboxContext = React.createContext<ComboboxState | null>(null);\n","import { FlexboxProps, TextProps, Theme, ValueOf } from '@redsift/design-system';\nimport { PopoverProps } from '@redsift/popovers';\nimport { ReactElement, RefObject } from 'react';\n\n/**\n * Component variant.\n */\nexport const ComboboxSelectionMode = {\n single: 'single',\n multiple: 'multiple',\n} as const;\nexport type ComboboxSelectionMode = ValueOf<typeof ComboboxSelectionMode>;\n\nexport const ComboboxVariant = {\n options: 'options',\n suggestions: 'suggestions',\n} as const;\nexport type ComboboxVariant = ValueOf<typeof ComboboxVariant>;\n\nexport type ComboboxValue = string | string[];\n\n/**\n * Context props.\n */\nexport type ComboboxState = {\n /** Filtering parameters. */\n readonly filter?: {\n type: 'startsWith' | 'contains' | 'endsWith';\n caseSensitive?: boolean;\n };\n /** Whether the combobox is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the combobox is invalid or not. */\n readonly isInvalid: boolean;\n /** Sets the selected value. */\n setValue(value: ComboboxValue): void;\n /** Current selected value. */\n readonly value: ComboboxValue;\n /** Sets the input value. */\n setInputValue(inputValue: string): void;\n /** Current input value. */\n readonly inputValue: string;\n /** Whether the Combobox allow multiple selection or not. */\n selectionMode?: ComboboxSelectionMode;\n /** If 'options', the input field cannot have free text, the selection has to be made within the options. If 'suggestions', then choosing from the list isn't mandatory and the user can write free text within the input. */\n variant?: ComboboxVariant;\n /** Ref to the first item used to create values. */\n freeTextItemRef?: RefObject<HTMLDivElement>;\n /** Id of the first item used to create values. */\n freeTextItemId?: string;\n /** Class name to append to the trigger. */\n readonly triggerClassName?: string;\n /** Ref to the form, if any. */\n formRef?: RefObject<HTMLFormElement>;\n /** Ref to the submit button, if any. */\n submitRef?: RefObject<HTMLButtonElement>;\n};\n\n/**\n * Component props.\n */\nexport interface ComboboxProps extends PopoverProps {\n /** If 'options', the input field cannot have free text, the selection has to be made within the options. If 'suggestions', then choosing from the list isn't mandatory and the user can write free text within the input. */\n variant?: ComboboxVariant;\n /**\n * Default selected value.\n * Used for uncontrolled version.\n */\n defaultValue?: ComboboxValue;\n /** Description of the combobox. */\n description?: string | ReactElement;\n /** Additional description properties. */\n descriptionProps?: Omit<TextProps, 'ref'>;\n /** Filtering parameters. */\n filter?: {\n type: 'startsWith' | 'contains' | 'endsWith';\n caseSensitive?: boolean;\n };\n /** Ref to the form, if any. */\n formRef?: RefObject<HTMLFormElement>;\n /** Ref to the submit button, if any. */\n submitRef?: RefObject<HTMLButtonElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Maximum number of options displayed. Useful when too many options are displayed. */\n maxOptionsLength?: number;\n /** Method to handle selection change. */\n onChange?(value: ComboboxValue): void;\n /** Method to handle input change. */\n onInputChange?(value: string): void;\n /**\n * Currently selected value.\n * Used for controlled version.\n */\n value?: ComboboxValue;\n /** Input value. */\n inputValue?: string;\n /** Whether the Combobox allow multiple selection or not. */\n selectionMode?: ComboboxSelectionMode;\n /** Theme. */\n theme?: Theme;\n /** Class name to append to the trigger. */\n triggerClassName?: string;\n /** Props to forward to the wrapper. */\n wrapperProps?: Omit<FlexboxProps, 'ref'>;\n}\n\nexport type StyledComboboxProps = ComboboxProps;\n","import React, { ReactNode, forwardRef, useContext, useEffect, RefObject, ReactElement } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n Item,\n ListboxContext,\n StyledItem,\n isComponent,\n useListboxItem,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxContentListboxProps } from './types';\nimport { ComboboxContext } from '../combobox/context';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\n\nconst COMPONENT_NAME = 'ComboboxContentListbox';\nconst CLASSNAME = 'redsift-combobox-content-listbox';\n\n/**\n * The ComboboxContentListbox component.\n */\nexport const ComboboxContentListbox: Comp<ComboboxContentListboxProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, renderFreeTextItem, ...forwardedProps } = props;\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const comboboxState = useContext(ComboboxContext);\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n });\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const cloneChildAndPush = (child: ReactElement, array: Array<ReactNode>) => {\n if (\n !canHaveMultipleSelections ||\n !canHaveFreeText ||\n (canHaveMultipleSelections && canHaveFreeText && !(comboboxState.value as string[]).includes(child.props.value))\n ) {\n array.push(\n React.cloneElement(child, {\n key: child.props.value,\n hasCheckbox: canHaveMultipleSelections && !canHaveFreeText,\n })\n );\n }\n };\n const renderedChildren: Array<ReactNode> = [];\n if (Array.isArray(children)) {\n for (const child of children) {\n if (isComponent(Item)(child)) {\n if (focusContext.state.maxOptionsLength) {\n if (renderedChildren.length < focusContext.state.maxOptionsLength) {\n if (!focusContext.state.filter) {\n cloneChildAndPush(child, renderedChildren);\n } else {\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n cloneChildAndPush(child, renderedChildren);\n } else if (\n caseSensitive &&\n ((type === 'startsWith' && child.props.value!.startsWith(filterValue)) ||\n (type === 'contains' && child.props.value!.includes(filterValue)) ||\n (type === 'endsWith' && child.props.value!.endsWith(filterValue)))\n ) {\n cloneChildAndPush(child, renderedChildren);\n } else if (\n !caseSensitive &&\n ((type === 'startsWith' && child.props.value!.toLowerCase().startsWith(filterValue.toLowerCase())) ||\n (type === 'contains' && child.props.value!.toLowerCase().includes(filterValue.toLowerCase())) ||\n (type === 'endsWith' && child.props.value!.toLowerCase().endsWith(filterValue.toLowerCase())))\n ) {\n cloneChildAndPush(child, renderedChildren);\n }\n }\n }\n } else {\n cloneChildAndPush(child, renderedChildren);\n }\n } else {\n renderedChildren.push(child);\n }\n }\n }\n\n const { tabIndex, isFocused, isSelected, isDisabled, handleKeyDown, handleClick } = useListboxItem({\n domElementRef: comboboxState?.freeTextItemRef as RefObject<Element>,\n value: comboboxState?.inputValue || '',\n id: comboboxState?.freeTextItemId,\n });\n const theme = useTheme();\n\n const renderedFreeTextItem = comboboxState?.inputValue\n ? renderFreeTextItem && typeof renderFreeTextItem === 'function'\n ? renderFreeTextItem(comboboxState?.inputValue, comboboxState, listboxState)\n : comboboxState?.inputValue\n : null;\n\n return (\n <Flexbox\n className={classNames(ComboboxContentListbox.className, className)}\n {...forwardedProps}\n ref={ref}\n flexDirection=\"column\"\n gap=\"0px\"\n margin=\"8px 0px\"\n style={{ outline: 'none' }}\n width=\"100%\"\n >\n {canHaveMultipleSelections && canHaveFreeText ? (\n <StyledItem\n role=\"option\"\n id={comboboxState.freeTextItemId}\n $color=\"primary\"\n $isActive={isSelected}\n $isDisabled={isDisabled}\n $isGradient={false}\n $isHovered={isFocused}\n $hasBorder={false}\n $hasCheckbox={false}\n $theme={theme}\n aria-selected={isSelected}\n className={classNames(Item.className, className)}\n onClick={handleClick}\n ref={comboboxState.freeTextItemRef as RefObject<HTMLDivElement>}\n onKeyDown={handleKeyDown}\n tabIndex={tabIndex}\n style={\n !comboboxState.inputValue\n ? {\n height: '0',\n visibility: 'hidden',\n padding: '0',\n }\n : undefined\n }\n >\n {renderedFreeTextItem}\n </StyledItem>\n ) : null}\n {Array.isArray(children) ? renderedChildren : children}\n </Flexbox>\n );\n});\nComboboxContentListbox.className = CLASSNAME;\nComboboxContentListbox.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n ListboxContext,\n getContainerProps,\n isComponent,\n partitionComponents,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n usePopoverContext,\n StyledPopoverContent,\n useMergeRefs,\n} from '@redsift/popovers';\nimport { ComboboxContentHeader } from '../combobox-content-header';\nimport { ComboboxContentFooter } from '../combobox-content-footer';\nimport { ComboboxContentListbox } from '../combobox-content-listbox/ComboboxContentListbox';\nimport { ComboboxContext } from '../combobox/context';\n\nconst COMPONENT_NAME = 'ComboboxContent';\nconst CLASSNAME = 'redsift-combobox-content';\n\n/**\n * The ComboboxContent component.\n */\nexport const BaseComboboxContent: Comp<ComboboxContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const comboboxState = useContext(ComboboxContext);\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const [[header], [listbox], [footer]] = partitionComponents(React.Children.toArray(children), [\n isComponent('ComboboxContentHeader'),\n isComponent('ComboboxContentListbox'),\n isComponent('ComboboxContentFooter'),\n ]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen && (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n ...(comboboxState?.inputValue?.length && focusContext.state.tabStops.length === 0\n ? { display: 'none' }\n : {}),\n }}\n className={classNames(PopoverContent.className, BaseComboboxContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n {header}\n {listbox}\n {footer}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nBaseComboboxContent.className = CLASSNAME;\nBaseComboboxContent.displayName = COMPONENT_NAME;\n\nexport const ComboboxContent = Object.assign(BaseComboboxContent, {\n Header: ComboboxContentHeader,\n Listbox: ComboboxContentListbox,\n Footer: ComboboxContentFooter,\n});\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React, { KeyboardEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\n\nimport { useId, useMessageFormatter } from '@redsift/design-system';\nimport intlMessages from '../combobox/intl';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n IconButton,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { ComboboxContext } from '../combobox/context';\nimport { mdiChevronDown, mdiClose } from '@redsift/icons';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'ComboboxTrigger';\nconst CLASSNAME = 'redsift-combobox-trigger';\n\n/**\n * The ComboboxTrigger component.\n */\nexport const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const [id] = useId();\n const { children, hideExpandButton, openOnFocus, hideClearButton, pillProps } = props;\n\n const format = useMessageFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const comboboxState = useContext(ComboboxContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\n\n const isTextArea = isComponent('TextArea')(renderedChildren);\n const isTextField = isComponent('TextField')(renderedChildren);\n const hasMultipleLines = isTextArea && comboboxState?.inputValue.includes('\\n');\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleChange = (value?: string) => {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: value || '', ...comboboxState?.filter! } },\n });\n\n comboboxState?.setInputValue(value!);\n };\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpenPopover(false);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText && comboboxState.inputValue) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n }\n }\n\n if ((/^.$/.test(event.key) || code === 'Backspace') && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n }\n\n if (canHaveMultipleSelections && comboboxState.inputValue === '' && code === 'Backspace') {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: (comboboxState.value as string[]).slice(0, (comboboxState.value as string[]).length - 1),\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n\n if (code === 'ArrowDown' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowDown : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'ArrowUp' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'Enter') {\n if (isTextField || (isTextArea && !event.shiftKey)) {\n event.preventDefault();\n }\n\n if (\n canHaveMultipleSelections &&\n canHaveFreeText &&\n focusContext.state.activedescendant?.[0] === comboboxState.freeTextItemId &&\n comboboxState.inputValue\n ) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n handleOpenPopover(false);\n } else if (isOpen && focusContext.state.selectedId) {\n if (canHaveMultipleSelections) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n } else {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n } else if (!event.shiftKey) {\n comboboxState?.formRef?.current?.submit();\n comboboxState?.submitRef?.current?.click();\n }\n }\n };\n\n const handleOpen = () => {\n if (isOpen) {\n handleOpenPopover(false);\n } else {\n handleOpenPopover(true);\n inputRef.current?.focus();\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0]!,\n filter: { value: '', ...comboboxState?.filter! },\n },\n },\n });\n }\n };\n\n const handleFocus = () => {\n if (openOnFocus) {\n handleOpen();\n }\n inputRef.current?.select();\n };\n\n const handleBlur = () => {\n if (canHaveMultipleSelections) {\n if (!canHaveFreeText) {\n comboboxState?.setInputValue('');\n }\n } else {\n if (canHaveFreeText) {\n comboboxState?.setValue(comboboxState.inputValue);\n } else {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n }\n };\n\n const handleClear = () => {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [],\n activedescendant: ['', ''],\n },\n });\n };\n\n useEffect(() => {\n if (canHaveMultipleSelections) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues);\n comboboxState?.setInputValue('');\n handleOpenPopover(false);\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: listboxState.state.selectedValues[0] || '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues[0]);\n if (listboxState.state.selectedValues.length) {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n handleOpenPopover(false);\n }\n }, [listboxState.state]);\n\n if (isTextField || isTextArea) {\n const {\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n role,\n ...forwardedProps\n } = getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n });\n\n const inputProps = {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n autoComplete: 'off',\n autoCapitalize: 'off',\n autoCorrect: 'off',\n spellCheck: 'false',\n 'aria-autocomplete': canHaveMultipleSelections ? 'list' : undefined,\n 'aria-description': canHaveMultipleSelections\n ? format('selected', { count: comboboxState?.value.length })\n : undefined,\n onKeyDown: handleKeyDown,\n role,\n };\n\n return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n theme,\n className: classNames((renderedChildren as ReactElement).props.className, comboboxState?.triggerClassName),\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: comboboxState?.inputValue,\n ...(isTextField\n ? {\n inputProps,\n inputRef,\n onClear: handleClear,\n hasClearButton: hideClearButton\n ? false\n : {\n isDisabled: comboboxState?.isDisabled || (comboboxState?.value && comboboxState?.value?.length === 0),\n onClick: () => inputRef.current.focus(),\n },\n pills: canHaveMultipleSelections\n ? (comboboxState?.value as string[]).map((v) => ({\n isDisabled: comboboxState?.isDisabled,\n children: [\n v,\n <IconButton\n key={`${id}-pill-${v}-icon-button`}\n icon={mdiClose}\n aria-label={format('unselect', { label: v })}\n onClick={(event) => {\n event.preventDefault();\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: v,\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }}\n />,\n ],\n ...pillProps,\n }))\n : undefined,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <IconButton\n theme={theme}\n aria-label={format(!isOpen ? 'expand' : 'collapse')}\n color=\"grey\"\n icon={mdiChevronDown}\n onClick={handleOpen}\n isDisabled={isDisabled}\n tabIndex={-1}\n iconProps={{\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n }}\n />\n )}\n </>\n );\n },\n }\n : {\n textareaProps: inputProps,\n textareaRef: inputRef,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.displayName = COMPONENT_NAME;\n","import React, { RefObject, useEffect, useMemo, useReducer, useRef, useState } from 'react';\nimport { ComboboxContent } from '../combobox-content';\nimport { ComboboxTrigger } from '../combobox-trigger';\n\nimport { ComboboxProps, ComboboxSelectionMode, ComboboxValue, ComboboxVariant } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { ComboboxContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Combobox';\nconst CLASSNAME = 'redsift-combobox';\n\n/**\n * The Combobox component.\n */\nexport const BaseCombobox: React.FC<ComboboxProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n defaultValue,\n description,\n descriptionProps,\n filter = {\n type: 'startsWith',\n caseSensitive: false,\n },\n formRef,\n submitRef,\n inputValue: propsInputValue,\n isDisabled,\n isInvalid,\n maxOptionsLength,\n minWidth = 'trigger-width',\n onChange,\n onInputChange,\n selectionMode = ComboboxSelectionMode.single,\n theme: propsTheme,\n triggerClassName,\n value,\n variant = ComboboxVariant.options,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<ComboboxValue>(\n value || defaultValue || (selectionMode === 'multiple' ? [] : '')\n );\n const [inputValue, setInputValue] = useState<string>(propsInputValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n useEffect(() => {\n if (propsInputValue) {\n state.setInputValue(propsInputValue);\n }\n }, [propsInputValue]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: selectionMode === ComboboxSelectionMode.multiple ? selectedValue : [selectedValue],\n selectionMode,\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled]);\n\n const freeTextItemRef = useRef<HTMLDivElement>();\n const [freeTextItemId] = useId();\n\n /** Combobox context. */\n const state = {\n filter,\n formRef,\n submitRef,\n value: selectedValue,\n inputValue,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n selectionMode,\n variant,\n freeTextItemRef: freeTextItemRef as RefObject<HTMLDivElement>,\n freeTextItemId,\n triggerClassName,\n setValue(value: ComboboxValue) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n setInputValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = inputValue;\n setInputValue(value);\n if (value !== previousValue && onInputChange) {\n onInputChange(value);\n }\n },\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false} maxOptionsLength={maxOptionsLength}>\n <ComboboxContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n","import { useCallback, useEffect, RefObject, KeyboardEvent } from 'react';\nimport { usePopoverContext } from '@redsift/popovers';\nimport { UseFocusWithinGroupProps, useFocusOnListItem } from '@redsift/design-system';\n\nexport function useMenuItem(props: {\n domElementRef: RefObject<Element>;\n id: string;\n isDisabled?: boolean;\n onClick?: () => void;\n isLinkMenuItem?: boolean;\n linkRef?: RefObject<HTMLAnchorElement>;\n hasPopup?: boolean;\n}): UseFocusWithinGroupProps & {\n isDisabled?: boolean;\n} {\n const { domElementRef, id, isDisabled, onClick, isLinkMenuItem, linkRef, hasPopup } = props;\n\n const { handleOpen, hideInsteadOfClose, setHideInsteadOfClose } = usePopoverContext();\n const {\n tabIndex,\n isFocused,\n handleKeyDown: handleFocusKeyDown,\n handleClick: handleFocusClick,\n } = useFocusOnListItem({ domElementRef, isDisabled: isDisabled!, id });\n\n useEffect(() => {\n if (hasPopup && !hideInsteadOfClose) {\n setHideInsteadOfClose?.(true);\n }\n }, [hasPopup, hideInsteadOfClose, setHideInsteadOfClose]);\n\n const handleKeyDown = useCallback((event: KeyboardEvent) => {\n const code = event.code;\n if (code === 'Enter' || code === 'Space') {\n if (isLinkMenuItem) {\n linkRef?.current?.click();\n } else {\n onClick?.();\n }\n }\n handleFocusKeyDown(event);\n handleOpen(false);\n }, []);\n\n const handleClick = useCallback(() => {\n handleFocusClick();\n onClick?.();\n handleOpen(false);\n }, []);\n\n useEffect(() => {\n if (isFocused && domElementRef.current) {\n (domElementRef as RefObject<SVGElement | HTMLElement>).current?.focus();\n }\n }, [isFocused]);\n\n return {\n tabIndex,\n isFocused,\n isDisabled,\n handleKeyDown,\n handleClick,\n };\n}\n","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useMenuItem } from './useMenuItem';\nimport { useMergeRefs } from '@redsift/popovers';\nimport {\n ButtonsColorPalette,\n Comp,\n ConditionalWrapper,\n FocusWithinGroupContext,\n isComponent,\n StyledGradientBorder,\n useTheme,\n RenderedListboxItem,\n ItemProps,\n StyledItem,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Item';\nconst CLASSNAME = 'redsift-item';\n\nconst RenderedMenuItem: Comp<Omit<ItemProps, 'value'>, HTMLElement> = forwardRef((props, ref) => {\n const {\n borderRadius = '0',\n children,\n className,\n color: propsColor,\n hasBorder,\n id: propsId,\n isActive,\n isDisabled: propsIsDisabled,\n isHovered,\n theme: propsTheme,\n onClick,\n ...forwardedProps\n } = props;\n const [_id] = useId();\n const id = propsId ?? _id;\n const _ref = useRef<HTMLElement>();\n const divRef = useMergeRefs([ref, _ref]);\n const linkRef = useRef<HTMLAnchorElement>(null);\n\n const isLinkMenuItem = isComponent('Link')(children);\n const { tabIndex, isFocused, isDisabled, handleKeyDown, handleClick } = useMenuItem({\n domElementRef: _ref as RefObject<Element>,\n id,\n isDisabled: propsIsDisabled!,\n onClick: onClick as any,\n isLinkMenuItem,\n linkRef,\n hasPopup: props['aria-haspopup'] !== undefined,\n });\n\n const theme = useTheme(propsTheme);\n const color = Object.values(ButtonsColorPalette).includes(propsColor!) ? propsColor : 'primary';\n const isGradient = color === ButtonsColorPalette.radar;\n\n return (\n <ConditionalWrapper\n condition={isGradient}\n wrapper={(children) => (\n <StyledGradientBorder\n $borderRadius={borderRadius}\n $color={color}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $isHovered={isHovered}\n $theme={theme}\n width=\"auto\"\n >\n {children}\n </StyledGradientBorder>\n )}\n >\n <StyledItem\n as=\"li\"\n role={isLinkMenuItem ? 'none' : 'menuitem'}\n {...forwardedProps}\n id={id}\n $borderRadius={borderRadius}\n $color={color}\n $hasBorder={hasBorder}\n $hasCheckbox={false}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $isGradient={isGradient}\n $isHovered={isHovered || isFocused}\n $theme={theme}\n aria-disabled={isDisabled}\n className={classNames(Item.className, className)}\n onClick={isDisabled ? undefined : handleClick}\n ref={divRef}\n onKeyDown={handleKeyDown}\n tabIndex={tabIndex}\n >\n {isLinkMenuItem\n ? React.cloneElement(children, {\n role: 'menuitem',\n ref: linkRef,\n })\n : children}\n </StyledItem>\n </ConditionalWrapper>\n );\n});\n\n/**\n * The Item component.\n */\nexport const Item: Comp<ItemProps, HTMLElement> = forwardRef((props, ref) => {\n const { value } = props;\n const focusContext = useContext(FocusWithinGroupContext);\n const isListbox = focusContext.state.listRole === 'listbox';\n\n if (!focusContext.state.filter) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n }\n\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n } else if (\n caseSensitive &&\n ((type === 'startsWith' && value!.startsWith(filterValue)) ||\n (type === 'contains' && value!.includes(filterValue)) ||\n (type === 'endsWith' && value!.endsWith(filterValue)))\n ) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n } else if (\n !caseSensitive &&\n ((type === 'startsWith' && value!.toLowerCase().startsWith(filterValue.toLowerCase())) ||\n (type === 'contains' && value!.toLowerCase().includes(filterValue.toLowerCase())) ||\n (type === 'endsWith' && value!.toLowerCase().endsWith(filterValue.toLowerCase())))\n ) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n }\n\n return null;\n});\nItem.className = CLASSNAME;\nItem.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledMenuButtonContentFooterProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledMenuButtonContentFooter = styled.div<StyledMenuButtonContentFooterProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledMenuButtonContentFooter } from './styles';\nimport { MenuButtonContentFooterProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButtonContentFooter';\nconst CLASSNAME = 'redsift-combobox-content-footer';\n\n/**\n * The MenuButtonContentFooter component.\n */\nexport const MenuButtonContentFooter: Comp<MenuButtonContentFooterProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledMenuButtonContentFooter\n {...forwardedProps}\n className={classNames(MenuButtonContentFooter.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledMenuButtonContentFooter>\n );\n});\nMenuButtonContentFooter.className = CLASSNAME;\nMenuButtonContentFooter.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledMenuButtonContentHeaderProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledMenuButtonContentHeader = styled.div<StyledMenuButtonContentHeaderProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledMenuButtonContentHeader } from './styles';\nimport { MenuButtonContentHeaderProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButtonContentHeader';\nconst CLASSNAME = 'redsift-combobox-content-header';\n\n/**\n * The MenuButtonContentHeader component.\n */\nexport const MenuButtonContentHeader: Comp<MenuButtonContentHeaderProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledMenuButtonContentHeader\n {...forwardedProps}\n className={classNames(MenuButtonContentHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledMenuButtonContentHeader>\n );\n});\nMenuButtonContentHeader.className = CLASSNAME;\nMenuButtonContentHeader.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, FocusWithinGroupContext } from '@redsift/design-system';\nimport { MenuButtonContentMenuProps } from './types';\n\nconst COMPONENT_NAME = 'MenuButtonContentMenu';\nconst CLASSNAME = 'redsift-menu-button-content-menu';\n\n/**\n * The MenuButtonContentMenu component.\n */\nexport const MenuButtonContentMenu: Comp<MenuButtonContentMenuProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const focusContext = useContext(FocusWithinGroupContext);\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n }, [focusContext.state.delayedAction, focusContext.state.tabStops.length]);\n\n return (\n <Flexbox\n flexDirection=\"column\"\n gap=\"8px\"\n margin=\"8px 0px\"\n width=\"100%\"\n className={classNames(MenuButtonContentMenu.className, className)}\n role=\"menu\"\n as=\"ul\"\n {...forwardedProps}\n ref={ref}\n >\n {children}\n </Flexbox>\n );\n});\nMenuButtonContentMenu.className = CLASSNAME;\nMenuButtonContentMenu.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext } from 'react';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n getContainerProps,\n isComponent,\n partitionComponents,\n useTheme,\n} from '@redsift/design-system';\nimport { MenuButtonContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n StyledPopoverContent,\n useMergeRefs,\n usePopoverContext,\n} from '@redsift/popovers';\nimport classNames from 'classnames';\nimport { MenuButtonContentFooter } from '../menu-button-content-footer';\nimport { MenuButtonContentHeader } from '../menu-button-content-header';\nimport { MenuButtonContentMenu } from '../menu-button-content-menu';\n\nconst COMPONENT_NAME = 'MenuButtonContent';\nconst CLASSNAME = 'redsift-menu-button-content';\n\n/**\n * The MenuButtonContent component.\n */\nexport const BaseMenuButtonContent: Comp<MenuButtonContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y, hideInsteadOfClose } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const theme = useTheme();\n\n const [[header], [menu], [footer]] = partitionComponents(React.Children.toArray(children), [\n isComponent('MenuButtonContentHeader'),\n isComponent('MenuButtonContentMenu'),\n isComponent('MenuButtonContentFooter'),\n ]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen || hideInsteadOfClose ? (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n display: hideInsteadOfClose && !isOpen ? 'none' : 'flex',\n ...style,\n }}\n className={classNames(PopoverContent.className, BaseMenuButtonContent.className, className)}\n >\n {!header && !menu && !footer ? (\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n <MenuButtonContentMenu>{children}</MenuButtonContentMenu>\n </Flexbox>\n ) : (\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n {header}\n {menu}\n {footer}\n </Flexbox>\n )}\n </StyledPopoverContent>\n ) : null}\n </FloatingPortal>\n );\n});\nBaseMenuButtonContent.className = CLASSNAME;\nBaseMenuButtonContent.displayName = COMPONENT_NAME;\n\nexport const MenuButtonContent = Object.assign(BaseMenuButtonContent, {\n Header: MenuButtonContentHeader,\n Menu: MenuButtonContentMenu,\n Footer: MenuButtonContentFooter,\n});\n","import React from 'react';\nimport { MenuButtonState } from './types';\n\nexport const MenuButtonContext = React.createContext<MenuButtonState | null>(null);\n","import React, { MouseEvent, ReactElement, forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { MenuButtonTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { MenuButtonContext } from '../menu-button/context';\n\nconst COMPONENT_NAME = 'MenuButtonTrigger';\nconst CLASSNAME = 'redsift-menu-button-trigger';\n\n/**\n * The MenuButtonTrigger component.\n */\nexport const MenuButtonTrigger: Comp<MenuButtonTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const menuButtonContext = useContext(MenuButtonContext);\n const theme = useTheme();\n\n const renderedChildren = typeof children === 'function' ? children({ isOpen }) : children;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpen(false);\n }\n } else if (code === 'ArrowDown') {\n if (!isOpen) {\n handleOpen(true);\n }\n if (focusContext.state.selectedId !== null) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.ArrowDown,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n event.preventDefault();\n } else if (code === 'ArrowUp') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Home') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'End') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Enter') {\n if (isOpen && focusContext.state.selectedId) {\n document.getElementById(focusContext.state.selectedId)?.click();\n document.getElementById(focusContext.state.selectedId)?.getElementsByTagName('a')?.[0]?.click();\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n event.preventDefault();\n if (isOpen) {\n handleOpen(false);\n } else {\n handleOpen(true);\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n };\n\n if (isComponent('Button')(renderedChildren) || isComponent('IconButton')(renderedChildren)) {\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n theme,\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n className: classNames((renderedChildren as ReactElement).props.className, menuButtonContext?.triggerClassName),\n color: menuButtonContext?.color ?? (renderedChildren as ReactElement).props.color,\n isActive: isOpen,\n isDisabled: menuButtonContext?.isDisabled,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n role: 'button',\n variant: menuButtonContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n });\n }\n\n return <>{renderedChildren}</>;\n});\nMenuButtonTrigger.className = CLASSNAME;\nMenuButtonTrigger.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { MenuButtonContent } from '../menu-button-content';\nimport { MenuButtonTrigger } from '../menu-button-trigger';\n\nimport { MenuButtonProps } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { MenuButtonContext } from './context';\nimport { FocusWithinGroup, Flexbox, Text, Theme, useTheme, ThemeProvider } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButton';\nconst CLASSNAME = 'redsift-menu-button';\n\n/**\n * The MenuButton component.\n */\nexport const BaseMenuButton: React.FC<MenuButtonProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n color,\n description,\n descriptionProps,\n isDisabled,\n label,\n labelProps,\n minWidth = 'trigger-width',\n theme: propsTheme,\n triggerClassName,\n variant,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n /** MenuButton context. */\n const state = {\n color,\n isDisabled: isDisabled || false,\n theme,\n triggerClassName,\n variant,\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" listRole=\"menu\" focusOnInit={false}>\n <MenuButtonContext.Provider value={state}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n {label && typeof label === 'string' ? <Text {...labelProps}>{label}</Text> : label ? label : null}\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'MenuButtonContent', trigger: 'MenuButtonTrigger' }}\n placement=\"bottom-end\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </MenuButtonContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseMenuButton.className = CLASSNAME;\nBaseMenuButton.displayName = COMPONENT_NAME;\n\nexport const MenuButton = Object.assign(BaseMenuButton, {\n Trigger: MenuButtonTrigger,\n Content: MenuButtonContent,\n});\n","import React, { forwardRef, useContext, useEffect } from 'react';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n ListboxContext,\n getContainerProps,\n useTheme,\n} from '@redsift/design-system';\nimport { SelectContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n StyledPopoverContent,\n useMergeRefs,\n usePopoverContext,\n} from '@redsift/popovers';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'SelectContent';\nconst CLASSNAME = 'redsift-select-content';\n\n/**\n * The SelectContent component.\n */\nexport const SelectContent: Comp<SelectContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n }, [focusContext.state.delayedAction, focusContext.state.tabStops.length]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen && (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n className={classNames(PopoverContent.className, SelectContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" margin=\"8px 0px\" width=\"100%\" {...containerProps}>\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nSelectContent.className = CLASSNAME;\nSelectContent.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { SelectState } from './types';\n\nexport const SelectContext = React.createContext<SelectState | null>(null);\n","import React, { MouseEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n Icon,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { SelectTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { SelectContext } from '../select/context';\nimport { mdiChevronDown } from '@redsift/icons';\n\nconst COMPONENT_NAME = 'SelectTrigger';\nconst CLASSNAME = 'redsift-select-trigger';\n\n/**\n * The SelectTrigger component.\n */\nexport const SelectTrigger: Comp<SelectTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children, hideExpandButton } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const selectContext = useContext(SelectContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: selectContext?.value, isOpen }) : children;\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape') {\n if (isOpen) {\n handleOpen(false);\n }\n } else if (code === 'ArrowDown') {\n if (!isOpen) {\n handleOpen(true);\n }\n if (focusContext.state.selectedId !== null) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.ArrowDown,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else if (!focusContext.state.activedescendant?.[0]) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n event.preventDefault();\n } else if (code === 'ArrowUp') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Home') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'End') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Enter') {\n if (isOpen && focusContext.state.selectedId) {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n event.preventDefault();\n if (isOpen) {\n handleOpen(false);\n } else {\n handleOpen(true);\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n };\n\n useEffect(() => {\n selectContext?.setValue(listboxState.state.selectedValues[0]);\n handleOpen(false);\n }, [listboxState.state]);\n\n if (isComponent('TextField')(renderedChildren)) {\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n className: classNames((renderedChildren as ReactElement).props.className, selectContext?.triggerClassName),\n color: selectContext?.color ?? (renderedChildren as ReactElement).props.color,\n inputRef,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <Icon\n color={isDisabled ? 'no-data' : 'question'}\n icon={mdiChevronDown}\n style={{\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n cursor: 'pointer',\n }}\n />\n )}\n </>\n );\n },\n isActive: isOpen,\n isDisabled: selectContext?.isDisabled,\n isReadOnly: true,\n theme,\n role: 'combobox',\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n style: { ...(renderedChildren as ReactElement).props.style, caretColor: 'transparent', cursor: 'pointer' },\n variant: selectContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n value: selectContext.value,\n }),\n inputProps: {\n ...(renderedChildren as ReactElement).props.inputProps,\n style: { ...(renderedChildren as ReactElement).props.inputProps?.style, cursor: 'pointer' },\n },\n });\n } else if (isComponent('Button')(renderedChildren)) {\n const children = (renderedChildren as ReactElement).props.children;\n const label = typeof children === 'string' ? children : children?.textContent;\n\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-label': (renderedChildren as ReactElement).props['aria-label'] ?? label,\n className: classNames((renderedChildren as ReactElement).props.className, selectContext?.triggerClassName),\n color: selectContext?.color ?? (renderedChildren as ReactElement).props.color,\n isActive: isOpen,\n isDisabled: selectContext?.isDisabled,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n rightIcon: (renderedChildren as ReactElement).props.rightIcon ?? mdiChevronDown,\n rightIconProps: (renderedChildren as ReactElement).props.rightIcon\n ? (renderedChildren as ReactElement).props.rightIconProps\n : (renderedChildren as ReactElement).props.rightIconProps ?? {\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n },\n role: 'combobox',\n theme,\n variant: selectContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nSelectTrigger.className = CLASSNAME;\nSelectTrigger.displayName = COMPONENT_NAME;\n","import React, { useEffect, useMemo, useReducer, useState } from 'react';\nimport { SelectContent } from '../select-content';\nimport { SelectTrigger } from '../select-trigger';\n\nimport { SelectProps } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { SelectContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Select';\nconst CLASSNAME = 'redsift-select';\n\n/**\n * The Select component.\n */\nexport const BaseSelect: React.FC<SelectProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n color,\n defaultValue,\n description,\n descriptionProps,\n isDisabled,\n isInvalid,\n minWidth = 'trigger-width',\n onChange,\n theme: propsTheme,\n triggerClassName,\n value,\n variant,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<string>(value || defaultValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: [selectedValue],\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled, theme]);\n\n /** Select context. */\n const state = {\n color,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n setValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n theme,\n triggerClassName,\n value: selectedValue,\n variant,\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false}>\n <SelectContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'SelectContent', trigger: 'SelectTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </SelectContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseSelect.className = CLASSNAME;\nBaseSelect.displayName = COMPONENT_NAME;\n\nexport const Select = Object.assign(BaseSelect, {\n Trigger: SelectTrigger,\n Content: SelectContent,\n});\n"],"names":["StyledComboboxContentFooter","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","ComboboxContentFooter","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","displayName","StyledComboboxContentHeader","ComboboxContentHeader","ComboboxContext","createContext","ComboboxSelectionMode","single","multiple","ComboboxVariant","options","suggestions","ComboboxContentListbox","renderFreeTextItem","focusContext","useContext","FocusWithinGroupContext","listboxState","ListboxContext","comboboxState","useEffect","state","delayedAction","tabStops","length","dispatch","canHaveMultipleSelections","selectionMode","canHaveFreeText","variant","cloneChildAndPush","child","array","value","includes","push","cloneElement","key","hasCheckbox","renderedChildren","Array","isArray","isComponent","Item","maxOptionsLength","filter","filterValue","type","caseSensitive","startsWith","endsWith","toLowerCase","tabIndex","isFocused","isSelected","isDisabled","handleKeyDown","handleClick","useListboxItem","domElementRef","freeTextItemRef","inputValue","id","freeTextItemId","theme","useTheme","renderedFreeTextItem","Flexbox","flexDirection","gap","margin","style","outline","width","StyledItem","role","$color","$isActive","$isDisabled","$isGradient","$isHovered","$hasBorder","$hasCheckbox","$theme","onClick","onKeyDown","height","visibility","padding","undefined","BaseComboboxContent","_comboboxState$inputV","containerProps","getContainerProps","getFloatingProps","isOpen","refs","strategy","x","y","usePopoverContext","popoverRef","useMergeRefs","setFloating","appContainerState","AppContainerContext","header","listbox","footer","partitionComponents","Children","toArray","FloatingPortal","root","appContainerRef","current","StyledPopoverContent","_objectSpread","position","top","left","display","PopoverContent","ComboboxContent","Object","assign","Header","Listbox","Footer","enUS","frFR","ComboboxTrigger","_renderedChildren$pro","useId","hideExpandButton","openOnFocus","hideClearButton","pillProps","format","useMessageFormatter","intlMessages","getReferenceProps","handleOpen","handleOpenPopover","childrenRef","triggerRef","setReference","isTextArea","isTextField","hasMultipleLines","_inputRef","useRef","inputRef","handleChange","FocusWithinGroupActionType","FILTER_LIST","payload","setInputValue","event","code","ListboxActionType","TOGGLE","activedescendant","test","DELAY_ACTION","KEY_DOWN_ON_LIST","EventKey","Home","ctrlKey","SET","values","slice","selectedId","ArrowDown","preventDefault","ArrowUp","End","_focusContext$state$a","shiftKey","_focusContext$state$a2","_focusContext$state$a3","_focusContext$state$a4","_focusContext$state$a5","_comboboxState$formRe","_comboboxState$formRe2","_comboboxState$submit","_comboboxState$submit2","formRef","submit","submitRef","click","_inputRef$current","_focusContext$state$a6","focus","FOCUS_ON_LIST","handleFocus","_inputRef$current2","select","handleBlur","setValue","selectedValues","handleClear","_props$children","_focusContext$state$a7","_comboboxState$value","_getReferenceProps","ariaControls","ariaExpanded","ariaHaspopup","inputProps","autoComplete","autoCapitalize","autoCorrect","spellCheck","count","triggerClassName","isInvalid","onChange","onBlur","onFocus","onClear","hasClearButton","pills","map","v","IconButton","icon","mdiClose","label","internal","isRequired","Fragment","color","mdiChevronDown","iconProps","transition","transform","textareaProps","textareaRef","BaseCombobox","defaultValue","description","descriptionProps","propsInputValue","minWidth","onInputChange","propsTheme","wrapperProps","selectedValue","useState","listboxDispatch","useReducer","ListboxReducer","listboxContext","useMemo","UPDATE_OPTIONS","previousValue","ThemeProvider","FocusWithinGroup","focusType","focusOnInit","Provider","alignItems","Popover","overrideDisplayName","content","trigger","placement","Text","marginTop","Theme","light","isValidElement","Combobox","Trigger","Content","useMenuItem","isLinkMenuItem","linkRef","hasPopup","hideInsteadOfClose","setHideInsteadOfClose","handleFocusKeyDown","handleFocusClick","useFocusOnListItem","useCallback","_linkRef$current","_current","RenderedMenuItem","borderRadius","propsColor","hasBorder","propsId","isActive","propsIsDisabled","isHovered","_id","_ref","divRef","ButtonsColorPalette","isGradient","radar","ConditionalWrapper","condition","wrapper","StyledGradientBorder","$borderRadius","as","isListbox","listRole","RenderedListboxItem","StyledMenuButtonContentFooter","MenuButtonContentFooter","StyledMenuButtonContentHeader","MenuButtonContentHeader","MenuButtonContentMenu","BaseMenuButtonContent","menu","MenuButtonContent","Menu","MenuButtonContext","MenuButtonTrigger","menuButtonContext","_document$getElementB","_document$getElementB2","_document$getElementB3","_document$getElementB4","document","getElementById","getElementsByTagName","_menuButtonContext$co","_menuButtonContext$va","BaseMenuButton","labelProps","MenuButton","SelectContent","SelectContext","SelectTrigger","selectContext","_focusContext$state$a8","_selectContext$color","_selectContext$varian","_props$inputProps","Icon","cursor","isReadOnly","caretColor","_props$children2","_focusContext$state$a9","_props$ariaLabel","_selectContext$color2","_props$rightIcon","_props$rightIconProps","_selectContext$varian2","textContent","rightIcon","rightIconProps","BaseSelect","Select"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -30,11 +30,11 @@
|
|
|
30
30
|
"test": "yarn test:unit && yarn test:storybook"
|
|
31
31
|
},
|
|
32
32
|
"types": "index.d.ts",
|
|
33
|
-
"version": "10.
|
|
33
|
+
"version": "10.5.0-alpha.0",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@redsift/design-system": "^10.
|
|
36
|
-
"@redsift/icons": "^10.
|
|
37
|
-
"@redsift/popovers": "^10.
|
|
35
|
+
"@redsift/design-system": "^10.5.0-alpha.0",
|
|
36
|
+
"@redsift/icons": "^10.5.0-alpha.0",
|
|
37
|
+
"@redsift/popovers": "^10.5.0-alpha.0",
|
|
38
38
|
"classnames": "^2.3.1",
|
|
39
39
|
"styled-components": "^5.3.5"
|
|
40
40
|
},
|
|
@@ -95,5 +95,5 @@
|
|
|
95
95
|
"react-dom": ">=17",
|
|
96
96
|
"styled-components": "^5.3.5"
|
|
97
97
|
},
|
|
98
|
-
"gitHead": "
|
|
98
|
+
"gitHead": "4b7bbaeac2d1dd4cd9fbfce2960adce150142737"
|
|
99
99
|
}
|