@redsift/pickers 9.0.0-alpha.13 → 9.0.0-alpha.14
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 +9 -1
- package/index.js +19 -26
- 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 { TextProps, ContainerProps, Comp, FlexboxProps } from '@redsift/design-system';
|
|
2
|
+
import { TextProps, ContainerProps, Comp, FlexboxProps, ButtonColor, ButtonVariant } from '@redsift/design-system';
|
|
3
3
|
import { PopoverProps, PopoverContentProps, PopoverTriggerProps } from '@redsift/popovers';
|
|
4
4
|
import React, { ReactElement, ComponentProps, ReactNode } from 'react';
|
|
5
5
|
|
|
@@ -161,13 +161,19 @@ declare const Combobox: React.FC<ComboboxProps> & {
|
|
|
161
161
|
* Context props.
|
|
162
162
|
*/
|
|
163
163
|
type MenuButtonState = {
|
|
164
|
+
/** Button color that will be forward to the trigger. */
|
|
165
|
+
readonly color?: ButtonColor;
|
|
164
166
|
/** Whether the trigger is disabled or not. */
|
|
165
167
|
readonly isDisabled: boolean;
|
|
168
|
+
/** Button variant that will be forward to the trigger. */
|
|
169
|
+
readonly variant?: ButtonVariant;
|
|
166
170
|
};
|
|
167
171
|
/**
|
|
168
172
|
* Component props.
|
|
169
173
|
*/
|
|
170
174
|
interface MenuButtonProps extends PopoverProps {
|
|
175
|
+
/** Button color that will be forward to the trigger. */
|
|
176
|
+
color?: ButtonColor;
|
|
171
177
|
/** Description of the menu button. */
|
|
172
178
|
description?: string | ReactElement;
|
|
173
179
|
/** Additional description properties. */
|
|
@@ -178,6 +184,8 @@ interface MenuButtonProps extends PopoverProps {
|
|
|
178
184
|
label?: string | ReactElement;
|
|
179
185
|
/** Additional label properties. */
|
|
180
186
|
labelProps?: Omit<TextProps, 'ref'>;
|
|
187
|
+
/** Button variant that will be forward to the trigger. */
|
|
188
|
+
variant?: ButtonVariant;
|
|
181
189
|
}
|
|
182
190
|
type StyledMenuButtonProps = MenuButtonProps;
|
|
183
191
|
|
package/index.js
CHANGED
|
@@ -685,18 +685,17 @@ const MenuButtonTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
685
685
|
const childrenRef = children.ref;
|
|
686
686
|
const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);
|
|
687
687
|
const focusContext = useContext(FocusWithinGroupContext);
|
|
688
|
-
const
|
|
688
|
+
const menuButtonContext = useContext(MenuButtonContext);
|
|
689
689
|
const renderedChildren = typeof children === 'function' ? children({
|
|
690
690
|
isOpen
|
|
691
691
|
}) : children;
|
|
692
692
|
const handleKeyDown = event => {
|
|
693
693
|
const code = event.code;
|
|
694
|
-
if (code === 'Escape') {
|
|
694
|
+
if (code === 'Escape' || code === 'Tab') {
|
|
695
695
|
if (isOpen) {
|
|
696
696
|
handleOpen(false);
|
|
697
697
|
}
|
|
698
698
|
} else if (code === 'ArrowDown') {
|
|
699
|
-
var _focusContext$state$a;
|
|
700
699
|
if (!isOpen) {
|
|
701
700
|
handleOpen(true);
|
|
702
701
|
}
|
|
@@ -711,7 +710,7 @@ const MenuButtonTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
711
710
|
}
|
|
712
711
|
}
|
|
713
712
|
});
|
|
714
|
-
} else
|
|
713
|
+
} else {
|
|
715
714
|
focusContext.dispatch({
|
|
716
715
|
type: FocusWithinGroupActionType.DELAY_ACTION,
|
|
717
716
|
payload: {
|
|
@@ -722,17 +721,6 @@ const MenuButtonTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
722
721
|
}
|
|
723
722
|
}
|
|
724
723
|
});
|
|
725
|
-
} else {
|
|
726
|
-
var _focusContext$state$a2, _focusContext$state$a3;
|
|
727
|
-
focusContext.dispatch({
|
|
728
|
-
type: FocusWithinGroupActionType.DELAY_ACTION,
|
|
729
|
-
payload: {
|
|
730
|
-
type: FocusWithinGroupActionType.FOCUS_ON_LIST,
|
|
731
|
-
payload: {
|
|
732
|
-
id: (_focusContext$state$a2 = (_focusContext$state$a3 = focusContext.state.activedescendant) === null || _focusContext$state$a3 === void 0 ? void 0 : _focusContext$state$a3[0]) !== null && _focusContext$state$a2 !== void 0 ? _focusContext$state$a2 : ''
|
|
733
|
-
}
|
|
734
|
-
}
|
|
735
|
-
});
|
|
736
724
|
}
|
|
737
725
|
event.preventDefault();
|
|
738
726
|
} else if (code === 'ArrowUp') {
|
|
@@ -792,33 +780,34 @@ const MenuButtonTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
792
780
|
if (isOpen) {
|
|
793
781
|
handleOpen(false);
|
|
794
782
|
} else {
|
|
795
|
-
var _focusContext$state$
|
|
783
|
+
var _focusContext$state$a, _focusContext$state$a2;
|
|
796
784
|
handleOpen(true);
|
|
797
785
|
focusContext.dispatch({
|
|
798
786
|
type: FocusWithinGroupActionType.DELAY_ACTION,
|
|
799
787
|
payload: {
|
|
800
788
|
type: FocusWithinGroupActionType.FOCUS_ON_LIST,
|
|
801
789
|
payload: {
|
|
802
|
-
id: (_focusContext$state$
|
|
790
|
+
id: (_focusContext$state$a = (_focusContext$state$a2 = focusContext.state.activedescendant) === null || _focusContext$state$a2 === void 0 ? void 0 : _focusContext$state$a2[0]) !== null && _focusContext$state$a !== void 0 ? _focusContext$state$a : ''
|
|
803
791
|
}
|
|
804
792
|
}
|
|
805
793
|
});
|
|
806
794
|
}
|
|
807
795
|
};
|
|
808
796
|
if (isComponent('Button')(renderedChildren) || isComponent('IconButton')(renderedChildren)) {
|
|
809
|
-
var _props$children, _focusContext$state$
|
|
797
|
+
var _props$children, _focusContext$state$a3, _menuButtonContext$co, _menuButtonContext$va;
|
|
810
798
|
return /*#__PURE__*/React.cloneElement(renderedChildren, _objectSpread2(_objectSpread2({}, getReferenceProps(_objectSpread2(_objectSpread2(_objectSpread2({
|
|
811
799
|
ref: triggerRef
|
|
812
800
|
}, props), renderedChildren.props), {}, {
|
|
813
801
|
children: (_props$children = renderedChildren.props.children) !== null && _props$children !== void 0 ? _props$children : ''
|
|
814
802
|
}))), {}, {
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
803
|
+
'aria-activedescendant': isOpen ? (_focusContext$state$a3 = focusContext.state.activedescendant) === null || _focusContext$state$a3 === void 0 ? void 0 : _focusContext$state$a3[0] : undefined,
|
|
804
|
+
color: (_menuButtonContext$co = menuButtonContext === null || menuButtonContext === void 0 ? void 0 : menuButtonContext.color) !== null && _menuButtonContext$co !== void 0 ? _menuButtonContext$co : renderedChildren.props.color,
|
|
805
|
+
isActive: isOpen,
|
|
806
|
+
isDisabled: menuButtonContext === null || menuButtonContext === void 0 ? void 0 : menuButtonContext.isDisabled,
|
|
819
807
|
onClick: handleClick,
|
|
820
|
-
|
|
821
|
-
|
|
808
|
+
onKeyDown: handleKeyDown,
|
|
809
|
+
role: 'button',
|
|
810
|
+
variant: (_menuButtonContext$va = menuButtonContext === null || menuButtonContext === void 0 ? void 0 : menuButtonContext.variant) !== null && _menuButtonContext$va !== void 0 ? _menuButtonContext$va : renderedChildren.props.variant
|
|
822
811
|
}));
|
|
823
812
|
}
|
|
824
813
|
return /*#__PURE__*/React.createElement(React.Fragment, null, renderedChildren);
|
|
@@ -838,16 +827,20 @@ const DEFAULT_PROPS$3 = {
|
|
|
838
827
|
*/
|
|
839
828
|
const BaseMenuButton = props => {
|
|
840
829
|
const {
|
|
830
|
+
color,
|
|
841
831
|
isDisabled,
|
|
842
832
|
label,
|
|
843
833
|
labelProps,
|
|
844
834
|
description,
|
|
845
|
-
descriptionProps
|
|
835
|
+
descriptionProps,
|
|
836
|
+
variant
|
|
846
837
|
} = props;
|
|
847
838
|
|
|
848
839
|
/** MenuButton context. */
|
|
849
840
|
const state = {
|
|
850
|
-
isDisabled: isDisabled || false
|
|
841
|
+
isDisabled: isDisabled || false,
|
|
842
|
+
color,
|
|
843
|
+
variant
|
|
851
844
|
};
|
|
852
845
|
return /*#__PURE__*/React.createElement(FocusWithinGroup, {
|
|
853
846
|
focusType: "virtual-focus",
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/combobox-content-header/styles.ts","../src/components/combobox-content-header/ComboboxContentHeader.tsx","../src/components/combobox-content-footer/styles.ts","../src/components/combobox-content-footer/ComboboxContentFooter.tsx","../src/components/combobox-content-listbox/ComboboxContentListbox.tsx","../src/components/combobox-content/ComboboxContent.tsx","../src/components/combobox/intl/index.ts","../src/components/combobox/context.ts","../src/components/combobox-trigger/ComboboxTrigger.tsx","../src/components/combobox/Combobox.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 { 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';\nconst DEFAULT_PROPS: Partial<ComboboxContentHeaderProps> = {};\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.defaultProps = DEFAULT_PROPS;\nComboboxContentHeader.displayName = COMPONENT_NAME;\n","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';\nconst DEFAULT_PROPS: Partial<ComboboxContentFooterProps> = {};\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.defaultProps = DEFAULT_PROPS;\nComboboxContentFooter.displayName = COMPONENT_NAME;\n","import React, { ReactNode, forwardRef, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, FocusWithinGroupContext, Item, isComponent } from '@redsift/design-system';\nimport { ComboboxContentListboxProps } from './types';\n\nconst COMPONENT_NAME = 'ComboboxContentListbox';\nconst CLASSNAME = 'redsift-combobox-content-listbox';\nconst DEFAULT_PROPS: Partial<ComboboxContentListboxProps> = {};\n\n/**\n * The ComboboxContentListbox component.\n */\nexport const ComboboxContentListbox: Comp<ComboboxContentListboxProps, 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 });\n\n const renderedChildren: Array<ReactNode> = [];\n if (Array.isArray(children) && focusContext.state.maxOptionsLength) {\n for (const child of children) {\n if (isComponent(Item)(child)) {\n if (renderedChildren.length <= focusContext.state.maxOptionsLength) {\n if (!focusContext.state.filter) {\n renderedChildren.push(child);\n } else {\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n renderedChildren.push(child);\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 renderedChildren.push(child);\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 renderedChildren.push(child);\n }\n }\n }\n } else {\n renderedChildren.push(child);\n }\n }\n }\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 {Array.isArray(children) && focusContext.state.maxOptionsLength ? renderedChildren : children}\n </Flexbox>\n );\n});\nComboboxContentListbox.className = CLASSNAME;\nComboboxContentListbox.defaultProps = DEFAULT_PROPS;\nComboboxContentListbox.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, ListboxContext, isComponent, partitionComponents } 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';\n\nconst COMPONENT_NAME = 'ComboboxContent';\nconst CLASSNAME = 'redsift-combobox-content';\nconst DEFAULT_PROPS: Partial<ComboboxContentProps> = {};\n\n/**\n * The ComboboxContent component.\n */\nexport const BaseComboboxContent: Comp<ComboboxContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const listboxState = useContext(ListboxContext);\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 id=\"redsift-app-container\">\n {isOpen && (\n <StyledPopoverContent\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n {...getFloatingProps(props)}\n className={classNames(PopoverContent.className, BaseComboboxContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n aria-multiselectable={listboxState.state.selectionMode === 'multiple'}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\">\n {header}\n {listbox}\n {footer}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nBaseComboboxContent.className = CLASSNAME;\nBaseComboboxContent.defaultProps = DEFAULT_PROPS;\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 from 'react';\nimport { ComboboxState } from './types';\n\nexport const ComboboxContext = React.createContext<ComboboxState | null>(null);\n","import React, { KeyboardEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from '../combobox/intl';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n IconButton,\n ListboxActionType,\n ListboxContext,\n isComponent,\n} from '@redsift/design-system';\nimport { ComboboxTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { ComboboxContext } from '../combobox/context';\nimport { mdiChevronDown } from '@redsift/icons';\n\nconst COMPONENT_NAME = 'ComboboxTrigger';\nconst CLASSNAME = 'redsift-combobox-trigger';\nconst DEFAULT_PROPS: Partial<ComboboxTriggerProps> = {};\n\n/**\n * The ComboboxTrigger component.\n */\nexport const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children, hideExpandButton, openOnFocus } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const inputRef = useRef<HTMLInputElement>();\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\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\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 if (value === '') {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\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\n if (/^.$/u.test(event.key) || code === 'Backspace') {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n }\n\n if (code === 'ArrowDown') {\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') {\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 (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 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 handleBlur = () => {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n };\n\n useEffect(() => {\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 comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n handleOpenPopover(false);\n }, [listboxState.state]);\n\n if (isComponent('TextField')(renderedChildren)) {\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 return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n inputProps: {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n onKeyDown: handleKeyDown,\n role,\n },\n inputRef,\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n ...(openOnFocus && {\n onFocus: () => {\n handleOpen();\n inputRef.current?.select();\n },\n }),\n onBlur: handleBlur,\n value: comboboxState?.inputValue,\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 aria-label={stringFormatter.format(!isOpen ? 'expand' : 'collapse')}\n color=\"question\"\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\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.defaultProps = DEFAULT_PROPS;\nComboboxTrigger.displayName = COMPONENT_NAME;\n","import React, { useEffect, useMemo, useReducer, useState } from 'react';\nimport { ComboboxContent } from '../combobox-content';\nimport { ComboboxTrigger } from '../combobox-trigger';\n\nimport { ComboboxProps } 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} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Combobox';\nconst CLASSNAME = 'redsift-combobox';\nconst DEFAULT_PROPS: Partial<ComboboxProps> = {\n filter: {\n type: 'startsWith',\n caseSensitive: false,\n },\n minWidth: 'trigger-width',\n};\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 isDisabled,\n isInvalid,\n maxOptionsLength,\n onChange,\n value,\n onInputChange,\n inputValue: propsInputValue,\n } = props;\n\n const [selectedValue, setValue] = useState<string>(value || defaultValue || '');\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: [selectedValue],\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n\n /** Combobox context. */\n const state = {\n filter,\n value: selectedValue,\n inputValue,\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 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 <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\">\n <Popover\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text marginTop=\"8px\" variant=\"caption\" color={isInvalid ? 'error' : 'darkgrey'} {...descriptionProps}>\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.defaultProps = DEFAULT_PROPS;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n","import React, { forwardRef, useContext, useEffect } from 'react';\n\nimport { Comp, Flexbox, FocusWithinGroupContext, ListboxContext } 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';\n\nconst COMPONENT_NAME = 'MenuButtonContent';\nconst CLASSNAME = 'redsift-menu-button-content';\nconst DEFAULT_PROPS: Partial<MenuButtonContentProps> = {};\n\n/**\n * The MenuButtonContent component.\n */\nexport const MenuButtonContent: Comp<MenuButtonContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\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 id=\"redsift-app-container\">\n {isOpen && (\n <StyledPopoverContent\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n {...getFloatingProps(props)}\n className={classNames(PopoverContent.className, MenuButtonContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"8px\" margin=\"8px 0px\" width=\"100%\">\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nMenuButtonContent.className = CLASSNAME;\nMenuButtonContent.defaultProps = DEFAULT_PROPS;\nMenuButtonContent.displayName = COMPONENT_NAME;\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';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n isComponent,\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';\nconst DEFAULT_PROPS: Partial<MenuButtonTriggerProps> = {};\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 selectContext = useContext(MenuButtonContext);\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') {\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 document.getElementById(focusContext.state.selectedId)?.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 role: 'button',\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n isDisabled: selectContext?.isDisabled,\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n onBlur: () => handleOpen(false),\n isActive: isOpen,\n });\n }\n\n return <>{renderedChildren}</>;\n});\nMenuButtonTrigger.className = CLASSNAME;\nMenuButtonTrigger.defaultProps = DEFAULT_PROPS;\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 } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButton';\nconst CLASSNAME = 'redsift-menu-button';\nconst DEFAULT_PROPS: Partial<MenuButtonProps> = {\n minWidth: 'trigger-width',\n};\n\n/**\n * The MenuButton component.\n */\nexport const BaseMenuButton: React.FC<MenuButtonProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { isDisabled, label, labelProps, description, descriptionProps } = props;\n\n /** MenuButton context. */\n const state = {\n isDisabled: isDisabled || false,\n };\n\n return (\n <FocusWithinGroup focusType=\"virtual-focus\" listRole=\"menu\" focusOnInit={false}>\n <MenuButtonContext.Provider value={state}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\">\n {label && typeof label === 'string' ? <Text {...labelProps}>{label}</Text> : label ? label : null}\n <Popover\n overrideDisplayName={{ content: 'MenuButtonContent', trigger: 'MenuButtonTrigger' }}\n placement=\"bottom-start\"\n role=\"menu\"\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text marginTop=\"8px\" variant=\"caption\" color=\"darkgrey\" {...descriptionProps}>\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </MenuButtonContext.Provider>\n </FocusWithinGroup>\n );\n};\nBaseMenuButton.className = CLASSNAME;\nBaseMenuButton.defaultProps = DEFAULT_PROPS;\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 { Comp, Flexbox, FocusWithinGroupContext, ListboxContext } 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';\nconst DEFAULT_PROPS: Partial<SelectContentProps> = {};\n\n/**\n * The SelectContent component.\n */\nexport const SelectContent: Comp<SelectContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\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 id=\"redsift-app-container\">\n {isOpen && (\n <StyledPopoverContent\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n {...getFloatingProps(props)}\n className={classNames(PopoverContent.className, SelectContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n aria-multiselectable={listboxState.state.selectionMode === 'multiple'}\n >\n <Flexbox flexDirection=\"column\" gap=\"8px\" margin=\"8px 0px\" width=\"100%\">\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nSelectContent.className = CLASSNAME;\nSelectContent.defaultProps = DEFAULT_PROPS;\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 } from 'react';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n Icon,\n ListboxActionType,\n ListboxContext,\n isComponent,\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';\nconst DEFAULT_PROPS: Partial<SelectTriggerProps> = {};\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\n const renderedChildren =\n typeof children === 'function' ? children({ value: selectContext?.value, isOpen }) : children;\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 role: 'combobox',\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n isDisabled: selectContext?.isDisabled,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n isReadOnly: true,\n isActive: isOpen,\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\n style: { ...(renderedChildren as ReactElement).props.style, caretColor: 'transparent', cursor: 'pointer' },\n inputProps: {\n ...(renderedChildren as ReactElement).props.inputProps,\n style: { ...(renderedChildren as ReactElement).props.inputProps?.style, cursor: 'pointer' },\n },\n value: selectContext?.value,\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 });\n } else if (isComponent('Button')(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 role: 'combobox',\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n isDisabled: selectContext?.isDisabled,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n isActive: isOpen,\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\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 });\n }\n\n return <>{renderedChildren}</>;\n});\nSelectTrigger.className = CLASSNAME;\nSelectTrigger.defaultProps = DEFAULT_PROPS;\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} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Select';\nconst CLASSNAME = 'redsift-select';\nconst DEFAULT_PROPS: Partial<SelectProps> = {\n minWidth: 'trigger-width',\n};\n\n/**\n * The Select component.\n */\nexport const BaseSelect: React.FC<SelectProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { defaultValue, isDisabled, onChange, value, description, descriptionProps, isInvalid } = props;\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\n /** Select context. */\n const state = {\n value: selectedValue,\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 };\n\n return (\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\">\n <Popover\n overrideDisplayName={{ content: 'SelectContent', trigger: 'SelectTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text marginTop=\"8px\" variant=\"caption\" color={isInvalid ? 'error' : 'darkgrey'} {...descriptionProps}>\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </SelectContext.Provider>\n </FocusWithinGroup>\n );\n};\nBaseSelect.className = CLASSNAME;\nBaseSelect.defaultProps = DEFAULT_PROPS;\nBaseSelect.displayName = COMPONENT_NAME;\n\nexport const Select = Object.assign(BaseSelect, {\n Trigger: SelectTrigger,\n Content: SelectContent,\n});\n"],"names":["StyledComboboxContentHeader","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","ComboboxContentHeader","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","defaultProps","displayName","StyledComboboxContentFooter","ComboboxContentFooter","ComboboxContentListbox","focusContext","useContext","FocusWithinGroupContext","useEffect","state","delayedAction","tabStops","length","dispatch","renderedChildren","Array","isArray","maxOptionsLength","child","isComponent","Item","filter","push","value","filterValue","type","caseSensitive","startsWith","includes","endsWith","toLowerCase","Flexbox","flexDirection","gap","margin","style","outline","width","BaseComboboxContent","getFloatingProps","isOpen","refs","strategy","x","y","usePopoverContext","popoverRef","useMergeRefs","setFloating","listboxState","ListboxContext","header","listbox","footer","partitionComponents","Children","toArray","FloatingPortal","id","StyledPopoverContent","_objectSpread","position","top","left","PopoverContent","isDisabled","selectionMode","ComboboxContent","Object","assign","Header","Listbox","Footer","enUS","frFR","ComboboxContext","createContext","ComboboxTrigger","hideExpandButton","openOnFocus","stringFormatter","useLocalizedStringFormatter","intlMessages","getReferenceProps","handleOpen","handleOpenPopover","childrenRef","inputRef","useRef","triggerRef","setReference","comboboxState","handleChange","FocusWithinGroupActionType","FILTER_LIST","payload","setInputValue","_focusContext$state$a","_focusContext$state$a2","ListboxActionType","TOGGLE","activedescendant","handleKeyDown","event","code","test","key","DELAY_ACTION","KEY_DOWN_ON_LIST","selectedId","EventKey","ArrowDown","Home","ctrlKey","preventDefault","ArrowUp","End","_focusContext$state$a3","_focusContext$state$a4","SET","values","_inputRef$current","_focusContext$state$a5","current","focus","FOCUS_ON_LIST","handleBlur","selectedValues","setValue","_props$children","_focusContext$state$a6","_getReferenceProps","ariaControls","ariaExpanded","ariaHaspopup","role","cloneElement","inputProps","undefined","onKeyDown","isInvalid","onChange","onFocus","_inputRef$current2","select","onBlur","inputValue","internal","isRequired","Fragment","IconButton","format","color","icon","mdiChevronDown","onClick","tabIndex","iconProps","transition","transform","minWidth","BaseCombobox","defaultValue","description","descriptionProps","onInputChange","propsInputValue","selectedValue","useState","listboxDispatch","useReducer","ListboxReducer","listboxContext","useMemo","previousValue","FocusWithinGroup","focusType","focusOnInit","Provider","alignItems","Popover","overrideDisplayName","content","trigger","placement","Text","marginTop","variant","isValidElement","Combobox","Trigger","Content","MenuButtonContent","MenuButtonContext","MenuButtonTrigger","selectContext","_document$getElementB","document","getElementById","click","handleClick","isActive","BaseMenuButton","label","labelProps","listRole","MenuButton","SelectContent","SelectContext","SelectTrigger","_focusContext$state$a7","_focusContext$state$a8","_props$inputProps","isReadOnly","caretColor","cursor","Icon","_props$children2","_focusContext$state$a9","_props$rightIcon","_props$rightIconProps","rightIcon","rightIconProps","BaseSelect","Select"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/combobox-content-header/styles.ts","../src/components/combobox-content-header/ComboboxContentHeader.tsx","../src/components/combobox-content-footer/styles.ts","../src/components/combobox-content-footer/ComboboxContentFooter.tsx","../src/components/combobox-content-listbox/ComboboxContentListbox.tsx","../src/components/combobox-content/ComboboxContent.tsx","../src/components/combobox/intl/index.ts","../src/components/combobox/context.ts","../src/components/combobox-trigger/ComboboxTrigger.tsx","../src/components/combobox/Combobox.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 { 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';\nconst DEFAULT_PROPS: Partial<ComboboxContentHeaderProps> = {};\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.defaultProps = DEFAULT_PROPS;\nComboboxContentHeader.displayName = COMPONENT_NAME;\n","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';\nconst DEFAULT_PROPS: Partial<ComboboxContentFooterProps> = {};\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.defaultProps = DEFAULT_PROPS;\nComboboxContentFooter.displayName = COMPONENT_NAME;\n","import React, { ReactNode, forwardRef, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, FocusWithinGroupContext, Item, isComponent } from '@redsift/design-system';\nimport { ComboboxContentListboxProps } from './types';\n\nconst COMPONENT_NAME = 'ComboboxContentListbox';\nconst CLASSNAME = 'redsift-combobox-content-listbox';\nconst DEFAULT_PROPS: Partial<ComboboxContentListboxProps> = {};\n\n/**\n * The ComboboxContentListbox component.\n */\nexport const ComboboxContentListbox: Comp<ComboboxContentListboxProps, 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 });\n\n const renderedChildren: Array<ReactNode> = [];\n if (Array.isArray(children) && focusContext.state.maxOptionsLength) {\n for (const child of children) {\n if (isComponent(Item)(child)) {\n if (renderedChildren.length <= focusContext.state.maxOptionsLength) {\n if (!focusContext.state.filter) {\n renderedChildren.push(child);\n } else {\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n renderedChildren.push(child);\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 renderedChildren.push(child);\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 renderedChildren.push(child);\n }\n }\n }\n } else {\n renderedChildren.push(child);\n }\n }\n }\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 {Array.isArray(children) && focusContext.state.maxOptionsLength ? renderedChildren : children}\n </Flexbox>\n );\n});\nComboboxContentListbox.className = CLASSNAME;\nComboboxContentListbox.defaultProps = DEFAULT_PROPS;\nComboboxContentListbox.displayName = COMPONENT_NAME;\n","import React, { forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, ListboxContext, isComponent, partitionComponents } 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';\n\nconst COMPONENT_NAME = 'ComboboxContent';\nconst CLASSNAME = 'redsift-combobox-content';\nconst DEFAULT_PROPS: Partial<ComboboxContentProps> = {};\n\n/**\n * The ComboboxContent component.\n */\nexport const BaseComboboxContent: Comp<ComboboxContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const listboxState = useContext(ListboxContext);\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 id=\"redsift-app-container\">\n {isOpen && (\n <StyledPopoverContent\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n {...getFloatingProps(props)}\n className={classNames(PopoverContent.className, BaseComboboxContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n aria-multiselectable={listboxState.state.selectionMode === 'multiple'}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\">\n {header}\n {listbox}\n {footer}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nBaseComboboxContent.className = CLASSNAME;\nBaseComboboxContent.defaultProps = DEFAULT_PROPS;\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 from 'react';\nimport { ComboboxState } from './types';\n\nexport const ComboboxContext = React.createContext<ComboboxState | null>(null);\n","import React, { KeyboardEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from '../combobox/intl';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n IconButton,\n ListboxActionType,\n ListboxContext,\n isComponent,\n} from '@redsift/design-system';\nimport { ComboboxTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { ComboboxContext } from '../combobox/context';\nimport { mdiChevronDown } from '@redsift/icons';\n\nconst COMPONENT_NAME = 'ComboboxTrigger';\nconst CLASSNAME = 'redsift-combobox-trigger';\nconst DEFAULT_PROPS: Partial<ComboboxTriggerProps> = {};\n\n/**\n * The ComboboxTrigger component.\n */\nexport const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children, hideExpandButton, openOnFocus } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const inputRef = useRef<HTMLInputElement>();\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\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\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 if (value === '') {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\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\n if (/^.$/u.test(event.key) || code === 'Backspace') {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n }\n\n if (code === 'ArrowDown') {\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') {\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 (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 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 handleBlur = () => {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n };\n\n useEffect(() => {\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 comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n handleOpenPopover(false);\n }, [listboxState.state]);\n\n if (isComponent('TextField')(renderedChildren)) {\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 return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n inputProps: {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n onKeyDown: handleKeyDown,\n role,\n },\n inputRef,\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n ...(openOnFocus && {\n onFocus: () => {\n handleOpen();\n inputRef.current?.select();\n },\n }),\n onBlur: handleBlur,\n value: comboboxState?.inputValue,\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 aria-label={stringFormatter.format(!isOpen ? 'expand' : 'collapse')}\n color=\"question\"\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\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.defaultProps = DEFAULT_PROPS;\nComboboxTrigger.displayName = COMPONENT_NAME;\n","import React, { useEffect, useMemo, useReducer, useState } from 'react';\nimport { ComboboxContent } from '../combobox-content';\nimport { ComboboxTrigger } from '../combobox-trigger';\n\nimport { ComboboxProps } 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} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Combobox';\nconst CLASSNAME = 'redsift-combobox';\nconst DEFAULT_PROPS: Partial<ComboboxProps> = {\n filter: {\n type: 'startsWith',\n caseSensitive: false,\n },\n minWidth: 'trigger-width',\n};\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 isDisabled,\n isInvalid,\n maxOptionsLength,\n onChange,\n value,\n onInputChange,\n inputValue: propsInputValue,\n } = props;\n\n const [selectedValue, setValue] = useState<string>(value || defaultValue || '');\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: [selectedValue],\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n\n /** Combobox context. */\n const state = {\n filter,\n value: selectedValue,\n inputValue,\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 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 <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\">\n <Popover\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text marginTop=\"8px\" variant=\"caption\" color={isInvalid ? 'error' : 'darkgrey'} {...descriptionProps}>\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.defaultProps = DEFAULT_PROPS;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n","import React, { forwardRef, useContext, useEffect } from 'react';\n\nimport { Comp, Flexbox, FocusWithinGroupContext, ListboxContext } 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';\n\nconst COMPONENT_NAME = 'MenuButtonContent';\nconst CLASSNAME = 'redsift-menu-button-content';\nconst DEFAULT_PROPS: Partial<MenuButtonContentProps> = {};\n\n/**\n * The MenuButtonContent component.\n */\nexport const MenuButtonContent: Comp<MenuButtonContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\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 id=\"redsift-app-container\">\n {isOpen && (\n <StyledPopoverContent\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n {...getFloatingProps(props)}\n className={classNames(PopoverContent.className, MenuButtonContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"8px\" margin=\"8px 0px\" width=\"100%\">\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nMenuButtonContent.className = CLASSNAME;\nMenuButtonContent.defaultProps = DEFAULT_PROPS;\nMenuButtonContent.displayName = COMPONENT_NAME;\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';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n isComponent,\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';\nconst DEFAULT_PROPS: Partial<MenuButtonTriggerProps> = {};\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\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 }\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 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\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.defaultProps = DEFAULT_PROPS;\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 } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButton';\nconst CLASSNAME = 'redsift-menu-button';\nconst DEFAULT_PROPS: Partial<MenuButtonProps> = {\n minWidth: 'trigger-width',\n};\n\n/**\n * The MenuButton component.\n */\nexport const BaseMenuButton: React.FC<MenuButtonProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { color, isDisabled, label, labelProps, description, descriptionProps, variant } = props;\n\n /** MenuButton context. */\n const state = {\n isDisabled: isDisabled || false,\n color,\n variant,\n };\n\n return (\n <FocusWithinGroup focusType=\"virtual-focus\" listRole=\"menu\" focusOnInit={false}>\n <MenuButtonContext.Provider value={state}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\">\n {label && typeof label === 'string' ? <Text {...labelProps}>{label}</Text> : label ? label : null}\n <Popover\n overrideDisplayName={{ content: 'MenuButtonContent', trigger: 'MenuButtonTrigger' }}\n placement=\"bottom-start\"\n role=\"menu\"\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text marginTop=\"8px\" variant=\"caption\" color=\"darkgrey\" {...descriptionProps}>\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </MenuButtonContext.Provider>\n </FocusWithinGroup>\n );\n};\nBaseMenuButton.className = CLASSNAME;\nBaseMenuButton.defaultProps = DEFAULT_PROPS;\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 { Comp, Flexbox, FocusWithinGroupContext, ListboxContext } 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';\nconst DEFAULT_PROPS: Partial<SelectContentProps> = {};\n\n/**\n * The SelectContent component.\n */\nexport const SelectContent: Comp<SelectContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\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 id=\"redsift-app-container\">\n {isOpen && (\n <StyledPopoverContent\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n {...getFloatingProps(props)}\n className={classNames(PopoverContent.className, SelectContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n aria-multiselectable={listboxState.state.selectionMode === 'multiple'}\n >\n <Flexbox flexDirection=\"column\" gap=\"8px\" margin=\"8px 0px\" width=\"100%\">\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nSelectContent.className = CLASSNAME;\nSelectContent.defaultProps = DEFAULT_PROPS;\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 } from 'react';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n Icon,\n ListboxActionType,\n ListboxContext,\n isComponent,\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';\nconst DEFAULT_PROPS: Partial<SelectTriggerProps> = {};\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\n const renderedChildren =\n typeof children === 'function' ? children({ value: selectContext?.value, isOpen }) : children;\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 role: 'combobox',\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n isDisabled: selectContext?.isDisabled,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n isReadOnly: true,\n isActive: isOpen,\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\n style: { ...(renderedChildren as ReactElement).props.style, caretColor: 'transparent', cursor: 'pointer' },\n inputProps: {\n ...(renderedChildren as ReactElement).props.inputProps,\n style: { ...(renderedChildren as ReactElement).props.inputProps?.style, cursor: 'pointer' },\n },\n value: selectContext?.value,\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 });\n } else if (isComponent('Button')(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 role: 'combobox',\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n isDisabled: selectContext?.isDisabled,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n isActive: isOpen,\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\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 });\n }\n\n return <>{renderedChildren}</>;\n});\nSelectTrigger.className = CLASSNAME;\nSelectTrigger.defaultProps = DEFAULT_PROPS;\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} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Select';\nconst CLASSNAME = 'redsift-select';\nconst DEFAULT_PROPS: Partial<SelectProps> = {\n minWidth: 'trigger-width',\n};\n\n/**\n * The Select component.\n */\nexport const BaseSelect: React.FC<SelectProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { defaultValue, isDisabled, onChange, value, description, descriptionProps, isInvalid } = props;\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\n /** Select context. */\n const state = {\n value: selectedValue,\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 };\n\n return (\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\">\n <Popover\n overrideDisplayName={{ content: 'SelectContent', trigger: 'SelectTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text marginTop=\"8px\" variant=\"caption\" color={isInvalid ? 'error' : 'darkgrey'} {...descriptionProps}>\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </SelectContext.Provider>\n </FocusWithinGroup>\n );\n};\nBaseSelect.className = CLASSNAME;\nBaseSelect.defaultProps = DEFAULT_PROPS;\nBaseSelect.displayName = COMPONENT_NAME;\n\nexport const Select = Object.assign(BaseSelect, {\n Trigger: SelectTrigger,\n Content: SelectContent,\n});\n"],"names":["StyledComboboxContentHeader","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","ComboboxContentHeader","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","defaultProps","displayName","StyledComboboxContentFooter","ComboboxContentFooter","ComboboxContentListbox","focusContext","useContext","FocusWithinGroupContext","useEffect","state","delayedAction","tabStops","length","dispatch","renderedChildren","Array","isArray","maxOptionsLength","child","isComponent","Item","filter","push","value","filterValue","type","caseSensitive","startsWith","includes","endsWith","toLowerCase","Flexbox","flexDirection","gap","margin","style","outline","width","BaseComboboxContent","getFloatingProps","isOpen","refs","strategy","x","y","usePopoverContext","popoverRef","useMergeRefs","setFloating","listboxState","ListboxContext","header","listbox","footer","partitionComponents","Children","toArray","FloatingPortal","id","StyledPopoverContent","_objectSpread","position","top","left","PopoverContent","isDisabled","selectionMode","ComboboxContent","Object","assign","Header","Listbox","Footer","enUS","frFR","ComboboxContext","createContext","ComboboxTrigger","hideExpandButton","openOnFocus","stringFormatter","useLocalizedStringFormatter","intlMessages","getReferenceProps","handleOpen","handleOpenPopover","childrenRef","inputRef","useRef","triggerRef","setReference","comboboxState","handleChange","FocusWithinGroupActionType","FILTER_LIST","payload","setInputValue","_focusContext$state$a","_focusContext$state$a2","ListboxActionType","TOGGLE","activedescendant","handleKeyDown","event","code","test","key","DELAY_ACTION","KEY_DOWN_ON_LIST","selectedId","EventKey","ArrowDown","Home","ctrlKey","preventDefault","ArrowUp","End","_focusContext$state$a3","_focusContext$state$a4","SET","values","_inputRef$current","_focusContext$state$a5","current","focus","FOCUS_ON_LIST","handleBlur","selectedValues","setValue","_props$children","_focusContext$state$a6","_getReferenceProps","ariaControls","ariaExpanded","ariaHaspopup","role","cloneElement","inputProps","undefined","onKeyDown","isInvalid","onChange","onFocus","_inputRef$current2","select","onBlur","inputValue","internal","isRequired","Fragment","IconButton","format","color","icon","mdiChevronDown","onClick","tabIndex","iconProps","transition","transform","minWidth","BaseCombobox","defaultValue","description","descriptionProps","onInputChange","propsInputValue","selectedValue","useState","listboxDispatch","useReducer","ListboxReducer","listboxContext","useMemo","previousValue","FocusWithinGroup","focusType","focusOnInit","Provider","alignItems","Popover","overrideDisplayName","content","trigger","placement","Text","marginTop","variant","isValidElement","Combobox","Trigger","Content","MenuButtonContent","MenuButtonContext","MenuButtonTrigger","menuButtonContext","_document$getElementB","document","getElementById","click","handleClick","_menuButtonContext$co","_menuButtonContext$va","isActive","BaseMenuButton","label","labelProps","listRole","MenuButton","SelectContent","SelectContext","SelectTrigger","selectContext","_focusContext$state$a7","_focusContext$state$a8","_props$inputProps","isReadOnly","caretColor","cursor","Icon","_props$children2","_focusContext$state$a9","_props$rightIcon","_props$rightIconProps","rightIcon","rightIconProps","BaseSelect","Select"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -30,12 +30,12 @@
|
|
|
30
30
|
"test": "yarn test:unit && yarn test:storybook"
|
|
31
31
|
},
|
|
32
32
|
"types": "index.d.ts",
|
|
33
|
-
"version": "9.0.0-alpha.
|
|
33
|
+
"version": "9.0.0-alpha.14",
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@react-aria/i18n": "3.7.2",
|
|
36
|
-
"@redsift/design-system": "^9.0.0-alpha.
|
|
37
|
-
"@redsift/icons": "^9.0.0-alpha.
|
|
38
|
-
"@redsift/popovers": "^9.0.0-alpha.
|
|
36
|
+
"@redsift/design-system": "^9.0.0-alpha.14",
|
|
37
|
+
"@redsift/icons": "^9.0.0-alpha.14",
|
|
38
|
+
"@redsift/popovers": "^9.0.0-alpha.14",
|
|
39
39
|
"classnames": "^2.3.1",
|
|
40
40
|
"styled-components": "^5.3.5"
|
|
41
41
|
},
|
|
@@ -96,5 +96,5 @@
|
|
|
96
96
|
"react-dom": ">=17",
|
|
97
97
|
"styled-components": "^5.3.5"
|
|
98
98
|
},
|
|
99
|
-
"gitHead": "
|
|
99
|
+
"gitHead": "988f6f50efc9631e82a0aa125a9c0c5aa25d3f91"
|
|
100
100
|
}
|