@redsift/pickers 12.5.2 → 12.5.3-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/_internal/Combobox2.js
CHANGED
|
@@ -79,6 +79,25 @@ const CLASSNAME = 'redsift-combobox';
|
|
|
79
79
|
* {suggestions.map(email => <Item key={email} value={email}>{email}</Item>)}
|
|
80
80
|
* </Combobox.Content>
|
|
81
81
|
* </Combobox>
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* // Multi-select with custom pill content
|
|
85
|
+
* <Combobox selectionMode="multiple" variant="options">
|
|
86
|
+
* <Combobox.Trigger
|
|
87
|
+
* renderPillContent={(value) => (
|
|
88
|
+
* <Flexbox alignItems="center" gap="4px">
|
|
89
|
+
* <Icon icon={icons[value]} size="small" />
|
|
90
|
+
* <Text color={colors[value]}>{value}</Text>
|
|
91
|
+
* </Flexbox>
|
|
92
|
+
* )}
|
|
93
|
+
* >
|
|
94
|
+
* <TextField label="Pick items" />
|
|
95
|
+
* </Combobox.Trigger>
|
|
96
|
+
* <Combobox.Content>
|
|
97
|
+
* <Item value="cat">Cat</Item>
|
|
98
|
+
* <Item value="dog">Dog</Item>
|
|
99
|
+
* </Combobox.Content>
|
|
100
|
+
* </Combobox>
|
|
82
101
|
*/
|
|
83
102
|
const BaseCombobox = props => {
|
|
84
103
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox2.js","sources":["../../src/components/combobox/Combobox.tsx"],"sourcesContent":["import React, { RefObject, useEffect, useMemo, useReducer, useRef, useState } from 'react';\nimport { ComboboxContent } from '../combobox-content';\nimport { ComboboxTrigger } from '../combobox-trigger';\n\nimport { ComboboxProps, ComboboxSelectionMode, ComboboxValue, ComboboxVariant } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { ComboboxContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Combobox';\nconst CLASSNAME = 'redsift-combobox';\n\n/**\n * Combobox combines a text input with a filterable dropdown list.\n * Supports single or multiple selection with type-ahead filtering.\n *\n * Variants:\n * - `options`: Shows predefined options only (default)\n * - `freeform`: Allows custom values not in the list\n *\n * Selection modes: `single`, `multiple`\n *\n * @example\n * // Basic single-select combobox\n * <Combobox label=\"Country\" onChange={(value) => setCountry(value)}>\n * <Combobox.Trigger placeholder=\"Search countries...\" />\n * <Combobox.Content>\n * <Item value=\"us\">United States</Item>\n * <Item value=\"uk\">United Kingdom</Item>\n * <Item value=\"ca\">Canada</Item>\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Multi-select combobox\n * <Combobox\n * label=\"Tags\"\n * selectionMode=\"multiple\"\n * value={selectedTags}\n * onChange={setSelectedTags}\n * >\n * <Combobox.Trigger placeholder=\"Add tags...\" />\n * <Combobox.Content>\n * <Item value=\"urgent\">Urgent</Item>\n * <Item value=\"bug\">Bug</Item>\n * <Item value=\"feature\">Feature</Item>\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Open dropdown on focus (for autocomplete fields)\n * <Combobox label=\"Assignee\">\n * <Combobox.Trigger openOnFocus placeholder=\"Search users...\" />\n * <Combobox.Content>...</Combobox.Content>\n * </Combobox>\n *\n * @example\n * // With Header and Footer\n * <Combobox label=\"Recipients\">\n * <Combobox.Trigger />\n * <Combobox.Content>\n * <Combobox.Content.Header>\n * <Text variant=\"small\">Recent contacts</Text>\n * </Combobox.Content.Header>\n * <Combobox.Content.Listbox>\n * <Item value=\"alice\">Alice</Item>\n * <Item value=\"bob\">Bob</Item>\n * </Combobox.Content.Listbox>\n * <Combobox.Content.Footer>\n * <Button variant=\"text\">Add new contact</Button>\n * </Combobox.Content.Footer>\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Freeform variant (allows custom entries)\n * <Combobox label=\"Email\" variant=\"freeform\">\n * <Combobox.Trigger placeholder=\"Enter or select email\" />\n * <Combobox.Content>\n * {suggestions.map(email => <Item key={email} value={email}>{email}</Item>)}\n * </Combobox.Content>\n * </Combobox>\n */\nexport const BaseCombobox: React.FC<ComboboxProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n defaultValue,\n description,\n descriptionProps,\n filter = {\n type: 'startsWith',\n caseSensitive: false,\n },\n formRef,\n submitRef,\n inputValue: propsInputValue,\n isDisabled,\n isInvalid,\n maxOptionsLength,\n minWidth = 'trigger-width',\n onChange,\n onInputChange,\n selectionMode = ComboboxSelectionMode.single,\n theme: propsTheme,\n triggerClassName,\n value,\n variant = ComboboxVariant.options,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<ComboboxValue>(\n value || defaultValue || (selectionMode === 'multiple' ? [] : '')\n );\n const [inputValue, setInputValue] = useState<string>(propsInputValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n useEffect(() => {\n if (propsInputValue) {\n state.setInputValue(propsInputValue);\n }\n }, [propsInputValue]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: selectionMode === ComboboxSelectionMode.multiple ? selectedValue : [selectedValue],\n selectionMode,\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled]);\n\n const freeTextItemRef = useRef<HTMLDivElement>();\n const [freeTextItemId] = useId();\n\n /** Combobox context. */\n const state = {\n filter,\n formRef,\n submitRef,\n value: selectedValue,\n inputValue,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n selectionMode,\n variant,\n freeTextItemRef: freeTextItemRef as RefObject<HTMLDivElement>,\n freeTextItemId,\n triggerClassName,\n setValue(value: ComboboxValue) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n setInputValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = inputValue;\n setInputValue(value);\n if (value !== previousValue && onInputChange) {\n onInputChange(value);\n }\n },\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false} maxOptionsLength={maxOptionsLength}>\n <ComboboxContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseCombobox","props","defaultValue","description","descriptionProps","filter","type","caseSensitive","formRef","submitRef","inputValue","propsInputValue","isDisabled","isInvalid","maxOptionsLength","minWidth","onChange","onInputChange","selectionMode","ComboboxSelectionMode","single","theme","propsTheme","triggerClassName","value","variant","ComboboxVariant","options","wrapperProps","useTheme","selectedValue","setValue","useState","setInputValue","useEffect","state","listboxState","listboxDispatch","useReducer","ListboxReducer","selectedValues","multiple","listboxContext","useMemo","dispatch","ListboxActionType","UPDATE_OPTIONS","payload","freeTextItemRef","useRef","freeTextItemId","useId","previousValue","React","createElement","ThemeProvider","FocusWithinGroup","focusType","focusOnInit","ComboboxContext","Provider","ListboxContext","Flexbox","_extends","flexDirection","alignItems","gap","Popover","overrideDisplayName","content","trigger","placement","role","Text","marginTop","color","Theme","light","isValidElement","className","displayName","Combobox","Object","assign","Trigger","ComboboxTrigger","Content","ComboboxContent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Combobox2.js","sources":["../../src/components/combobox/Combobox.tsx"],"sourcesContent":["import React, { RefObject, useEffect, useMemo, useReducer, useRef, useState } from 'react';\nimport { ComboboxContent } from '../combobox-content';\nimport { ComboboxTrigger } from '../combobox-trigger';\n\nimport { ComboboxProps, ComboboxSelectionMode, ComboboxValue, ComboboxVariant } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { ComboboxContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Combobox';\nconst CLASSNAME = 'redsift-combobox';\n\n/**\n * Combobox combines a text input with a filterable dropdown list.\n * Supports single or multiple selection with type-ahead filtering.\n *\n * Variants:\n * - `options`: Shows predefined options only (default)\n * - `freeform`: Allows custom values not in the list\n *\n * Selection modes: `single`, `multiple`\n *\n * @example\n * // Basic single-select combobox\n * <Combobox label=\"Country\" onChange={(value) => setCountry(value)}>\n * <Combobox.Trigger placeholder=\"Search countries...\" />\n * <Combobox.Content>\n * <Item value=\"us\">United States</Item>\n * <Item value=\"uk\">United Kingdom</Item>\n * <Item value=\"ca\">Canada</Item>\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Multi-select combobox\n * <Combobox\n * label=\"Tags\"\n * selectionMode=\"multiple\"\n * value={selectedTags}\n * onChange={setSelectedTags}\n * >\n * <Combobox.Trigger placeholder=\"Add tags...\" />\n * <Combobox.Content>\n * <Item value=\"urgent\">Urgent</Item>\n * <Item value=\"bug\">Bug</Item>\n * <Item value=\"feature\">Feature</Item>\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Open dropdown on focus (for autocomplete fields)\n * <Combobox label=\"Assignee\">\n * <Combobox.Trigger openOnFocus placeholder=\"Search users...\" />\n * <Combobox.Content>...</Combobox.Content>\n * </Combobox>\n *\n * @example\n * // With Header and Footer\n * <Combobox label=\"Recipients\">\n * <Combobox.Trigger />\n * <Combobox.Content>\n * <Combobox.Content.Header>\n * <Text variant=\"small\">Recent contacts</Text>\n * </Combobox.Content.Header>\n * <Combobox.Content.Listbox>\n * <Item value=\"alice\">Alice</Item>\n * <Item value=\"bob\">Bob</Item>\n * </Combobox.Content.Listbox>\n * <Combobox.Content.Footer>\n * <Button variant=\"text\">Add new contact</Button>\n * </Combobox.Content.Footer>\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Freeform variant (allows custom entries)\n * <Combobox label=\"Email\" variant=\"freeform\">\n * <Combobox.Trigger placeholder=\"Enter or select email\" />\n * <Combobox.Content>\n * {suggestions.map(email => <Item key={email} value={email}>{email}</Item>)}\n * </Combobox.Content>\n * </Combobox>\n *\n * @example\n * // Multi-select with custom pill content\n * <Combobox selectionMode=\"multiple\" variant=\"options\">\n * <Combobox.Trigger\n * renderPillContent={(value) => (\n * <Flexbox alignItems=\"center\" gap=\"4px\">\n * <Icon icon={icons[value]} size=\"small\" />\n * <Text color={colors[value]}>{value}</Text>\n * </Flexbox>\n * )}\n * >\n * <TextField label=\"Pick items\" />\n * </Combobox.Trigger>\n * <Combobox.Content>\n * <Item value=\"cat\">Cat</Item>\n * <Item value=\"dog\">Dog</Item>\n * </Combobox.Content>\n * </Combobox>\n */\nexport const BaseCombobox: React.FC<ComboboxProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n defaultValue,\n description,\n descriptionProps,\n filter = {\n type: 'startsWith',\n caseSensitive: false,\n },\n formRef,\n submitRef,\n inputValue: propsInputValue,\n isDisabled,\n isInvalid,\n maxOptionsLength,\n minWidth = 'trigger-width',\n onChange,\n onInputChange,\n selectionMode = ComboboxSelectionMode.single,\n theme: propsTheme,\n triggerClassName,\n value,\n variant = ComboboxVariant.options,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<ComboboxValue>(\n value || defaultValue || (selectionMode === 'multiple' ? [] : '')\n );\n const [inputValue, setInputValue] = useState<string>(propsInputValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n useEffect(() => {\n if (propsInputValue) {\n state.setInputValue(propsInputValue);\n }\n }, [propsInputValue]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: selectionMode === ComboboxSelectionMode.multiple ? selectedValue : [selectedValue],\n selectionMode,\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled]);\n\n const freeTextItemRef = useRef<HTMLDivElement>();\n const [freeTextItemId] = useId();\n\n /** Combobox context. */\n const state = {\n filter,\n formRef,\n submitRef,\n value: selectedValue,\n inputValue,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n selectionMode,\n variant,\n freeTextItemRef: freeTextItemRef as RefObject<HTMLDivElement>,\n freeTextItemId,\n triggerClassName,\n setValue(value: ComboboxValue) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n setInputValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = inputValue;\n setInputValue(value);\n if (value !== previousValue && onInputChange) {\n onInputChange(value);\n }\n },\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false} maxOptionsLength={maxOptionsLength}>\n <ComboboxContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseCombobox","props","defaultValue","description","descriptionProps","filter","type","caseSensitive","formRef","submitRef","inputValue","propsInputValue","isDisabled","isInvalid","maxOptionsLength","minWidth","onChange","onInputChange","selectionMode","ComboboxSelectionMode","single","theme","propsTheme","triggerClassName","value","variant","ComboboxVariant","options","wrapperProps","useTheme","selectedValue","setValue","useState","setInputValue","useEffect","state","listboxState","listboxDispatch","useReducer","ListboxReducer","selectedValues","multiple","listboxContext","useMemo","dispatch","ListboxActionType","UPDATE_OPTIONS","payload","freeTextItemRef","useRef","freeTextItemId","useId","previousValue","React","createElement","ThemeProvider","FocusWithinGroup","focusType","focusOnInit","ComboboxContext","Provider","ListboxContext","Flexbox","_extends","flexDirection","alignItems","gap","Popover","overrideDisplayName","content","trigger","placement","role","Text","marginTop","color","Theme","light","isValidElement","className","displayName","Combobox","Object","assign","Trigger","ComboboxTrigger","Content","ComboboxContent"],"mappings":";;;;;;;;AAsBA,MAAMA,cAAc,GAAG,UAAU,CAAA;AACjC,MAAMC,SAAS,GAAG,kBAAkB,CAAA;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACaC,MAAAA,YAGZ,GAAIC,KAAK,IAAK;EACb,MAAM;IACJC,YAAY;IACZC,WAAW;IACXC,gBAAgB;AAChBC,IAAAA,MAAM,GAAG;AACPC,MAAAA,IAAI,EAAE,YAAY;AAClBC,MAAAA,aAAa,EAAE,KAAA;KAChB;IACDC,OAAO;IACPC,SAAS;AACTC,IAAAA,UAAU,EAAEC,eAAe;IAC3BC,UAAU;IACVC,SAAS;IACTC,gBAAgB;AAChBC,IAAAA,QAAQ,GAAG,eAAe;IAC1BC,QAAQ;IACRC,aAAa;IACbC,aAAa,GAAGC,qBAAqB,CAACC,MAAM;AAC5CC,IAAAA,KAAK,EAAEC,UAAU;IACjBC,gBAAgB;IAChBC,KAAK;IACLC,OAAO,GAAGC,eAAe,CAACC,OAAO;AACjCC,IAAAA,YAAAA;AACF,GAAC,GAAG3B,KAAK,CAAA;AAET,EAAA,MAAMoB,KAAK,GAAGQ,QAAQ,CAACP,UAAU,CAAC,CAAA;EAElC,MAAM,CAACQ,aAAa,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CACxCR,KAAK,IAAItB,YAAY,KAAKgB,aAAa,KAAK,UAAU,GAAG,EAAE,GAAG,EAAE,CAClE,CAAC,CAAA;EACD,MAAM,CAACR,UAAU,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"}
|
|
@@ -33,7 +33,7 @@ var intlMessages = {
|
|
|
33
33
|
'fr-FR': frFR
|
|
34
34
|
};
|
|
35
35
|
|
|
36
|
-
const _excluded = ["children", "hideExpandButton", "openOnFocus", "hideClearButton", "pillProps"],
|
|
36
|
+
const _excluded = ["children", "hideExpandButton", "openOnFocus", "hideClearButton", "pillProps", "renderPillContent"],
|
|
37
37
|
_excluded2 = ["aria-controls", "aria-expanded", "aria-haspopup", "role"];
|
|
38
38
|
const COMPONENT_NAME = 'ComboboxTrigger';
|
|
39
39
|
const CLASSNAME = 'redsift-combobox-trigger';
|
|
@@ -49,7 +49,8 @@ const ComboboxTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
49
49
|
hideExpandButton,
|
|
50
50
|
openOnFocus,
|
|
51
51
|
hideClearButton,
|
|
52
|
-
pillProps
|
|
52
|
+
pillProps,
|
|
53
|
+
renderPillContent
|
|
53
54
|
} = props,
|
|
54
55
|
otherProps = _objectWithoutProperties(props, _excluded);
|
|
55
56
|
const format = useMessageFormatter(intlMessages);
|
|
@@ -330,7 +331,7 @@ const ComboboxTrigger = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
330
331
|
},
|
|
331
332
|
pills: canHaveMultipleSelections ? (comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.value).map(v => _objectSpread2({
|
|
332
333
|
isDisabled: comboboxState === null || comboboxState === void 0 ? void 0 : comboboxState.isDisabled,
|
|
333
|
-
children: [v, /*#__PURE__*/React.createElement(IconButton, {
|
|
334
|
+
children: [renderPillContent ? renderPillContent(v) : v, /*#__PURE__*/React.createElement(IconButton, {
|
|
334
335
|
key: `${id}-pill-${v}-icon-button`,
|
|
335
336
|
icon: mdiClose,
|
|
336
337
|
"aria-label": format('unselect', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxTrigger.js","sources":["../../src/components/combobox/intl/index.ts","../../src/components/combobox-trigger/ComboboxTrigger.tsx"],"sourcesContent":["import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React, { KeyboardEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\n\nimport { useId, useMessageFormatter } from '@redsift/design-system';\nimport intlMessages from '../combobox/intl';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n IconButton,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { ComboboxContext } from '../combobox/context';\nimport { mdiChevronDown, mdiClose } from '@redsift/icons';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'ComboboxTrigger';\nconst CLASSNAME = 'redsift-combobox-trigger';\n\n/**\n * The ComboboxTrigger component.\n */\nexport const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const [id] = useId();\n const { children, hideExpandButton, openOnFocus, hideClearButton, pillProps, ...otherProps } = props;\n\n const format = useMessageFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const comboboxState = useContext(ComboboxContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\n\n const isTextArea = isComponent('TextArea')(renderedChildren);\n const isTextField = isComponent('TextField')(renderedChildren);\n const hasMultipleLines = isTextArea && comboboxState?.inputValue.includes('\\n');\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleChange = (value?: string) => {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: value || '', ...comboboxState?.filter! } },\n });\n\n comboboxState?.setInputValue(value!);\n };\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpenPopover(false);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText && comboboxState.inputValue) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n }\n }\n\n if ((/^.$/.test(event.key) || code === 'Backspace') && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n }\n\n if (canHaveMultipleSelections && comboboxState.inputValue === '' && code === 'Backspace') {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: (comboboxState.value as string[]).slice(0, (comboboxState.value as string[]).length - 1),\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n\n if (code === 'ArrowDown' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowDown : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'ArrowUp' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'Enter') {\n if (isTextField || (isTextArea && !event.shiftKey)) {\n event.preventDefault();\n }\n\n if (\n canHaveMultipleSelections &&\n canHaveFreeText &&\n focusContext.state.activedescendant?.[0] === comboboxState.freeTextItemId &&\n comboboxState.inputValue\n ) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n handleOpenPopover(false);\n } else if (isOpen && focusContext.state.selectedId) {\n if (canHaveMultipleSelections) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n } else {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n } else if (!event.shiftKey) {\n comboboxState?.formRef?.current?.submit();\n comboboxState?.submitRef?.current?.click();\n }\n }\n };\n\n const handleOpen = () => {\n if (isOpen) {\n handleOpenPopover(false);\n } else {\n handleOpenPopover(true);\n inputRef.current?.focus();\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0]!,\n filter: { value: '', ...comboboxState?.filter! },\n },\n },\n });\n }\n };\n\n const handleFocus = () => {\n if (openOnFocus) {\n handleOpen();\n }\n inputRef.current?.select();\n };\n\n const handleBlur = () => {\n if (canHaveMultipleSelections) {\n if (!canHaveFreeText) {\n comboboxState?.setInputValue('');\n }\n } else {\n if (canHaveFreeText) {\n comboboxState?.setValue(comboboxState.inputValue);\n } else {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n }\n };\n\n const handleClear = () => {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [],\n activedescendant: ['', ''],\n },\n });\n };\n\n useEffect(() => {\n if (canHaveMultipleSelections) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues);\n comboboxState?.setInputValue('');\n handleOpenPopover(false);\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: listboxState.state.selectedValues[0] || '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues[0]);\n if (listboxState.state.selectedValues.length) {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n handleOpenPopover(false);\n }\n }, [listboxState.state]);\n\n if (isTextField || isTextArea) {\n const {\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n role,\n ...forwardedProps\n } = getReferenceProps({\n ref: triggerRef,\n ...otherProps,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n });\n\n const inputProps = {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n autoComplete: 'off',\n autoCapitalize: 'off',\n autoCorrect: 'off',\n spellCheck: 'false',\n 'aria-autocomplete': canHaveMultipleSelections ? 'list' : undefined,\n 'aria-description': canHaveMultipleSelections\n ? format('selected', { count: comboboxState?.value.length })\n : undefined,\n onKeyDown: handleKeyDown,\n role,\n };\n\n return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n theme,\n className: classNames((renderedChildren as ReactElement).props.className, comboboxState?.triggerClassName),\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: comboboxState?.inputValue,\n ...(isTextField\n ? {\n inputProps,\n inputRef,\n onClear: handleClear,\n hasClearButton: hideClearButton\n ? false\n : {\n isDisabled: comboboxState?.isDisabled || (comboboxState?.value && comboboxState?.value?.length === 0),\n onClick: () => inputRef.current.focus(),\n },\n pills: canHaveMultipleSelections\n ? (comboboxState?.value as string[]).map((v) => ({\n isDisabled: comboboxState?.isDisabled,\n children: [\n v,\n <IconButton\n key={`${id}-pill-${v}-icon-button`}\n icon={mdiClose}\n aria-label={format('unselect', { label: v })}\n onClick={(event) => {\n event.preventDefault();\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: v,\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }}\n />,\n ],\n ...pillProps,\n }))\n : undefined,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <IconButton\n theme={theme}\n aria-label={format(!isOpen ? 'expand' : 'collapse')}\n color=\"grey\"\n icon={mdiChevronDown}\n onClick={handleOpen}\n isDisabled={isDisabled}\n tabIndex={-1}\n iconProps={{\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n }}\n />\n )}\n </>\n );\n },\n }\n : {\n textareaProps: inputProps,\n textareaRef: inputRef,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.displayName = COMPONENT_NAME;\n"],"names":["enUS","frFR","COMPONENT_NAME","CLASSNAME","ComboboxTrigger","forwardRef","props","ref","_renderedChildren$pro","id","useId","children","hideExpandButton","openOnFocus","hideClearButton","pillProps","otherProps","_objectWithoutProperties","_excluded","format","useMessageFormatter","intlMessages","getReferenceProps","isOpen","handleOpen","handleOpenPopover","refs","usePopoverContext","childrenRef","triggerRef","useMergeRefs","setReference","focusContext","useContext","FocusWithinGroupContext","comboboxState","ComboboxContext","listboxState","ListboxContext","theme","useTheme","canHaveMultipleSelections","selectionMode","ComboboxSelectionMode","multiple","canHaveFreeText","variant","ComboboxVariant","suggestions","renderedChildren","value","isTextArea","isComponent","isTextField","hasMultipleLines","inputValue","includes","_inputRef","useRef","inputRef","handleChange","dispatch","type","FocusWithinGroupActionType","FILTER_LIST","payload","filter","_objectSpread","setInputValue","handleKeyDown","event","code","ListboxActionType","TOGGLE","activedescendant","freeTextItemId","test","key","DELAY_ACTION","KEY_DOWN_ON_LIST","EventKey","Home","ctrlKey","SET","values","slice","length","state","selectedId","ArrowDown","preventDefault","ArrowUp","End","_focusContext$state$a","shiftKey","_focusContext$state$a2","_focusContext$state$a3","_focusContext$state$a4","_focusContext$state$a5","_comboboxState$formRe","_comboboxState$formRe2","_comboboxState$submit","_comboboxState$submit2","formRef","current","submit","submitRef","click","_inputRef$current","_focusContext$state$a6","focus","FOCUS_ON_LIST","handleFocus","_inputRef$current2","select","handleBlur","setValue","selectedValues","handleClear","useEffect","_props$children","_focusContext$state$a7","_comboboxState$value","_getReferenceProps","ariaControls","ariaExpanded","ariaHaspopup","role","forwardedProps","_excluded2","inputProps","undefined","autoComplete","autoCapitalize","autoCorrect","spellCheck","count","onKeyDown","React","cloneElement","className","classNames","triggerClassName","isDisabled","isInvalid","onChange","onBlur","onFocus","onClear","hasClearButton","onClick","pills","map","v","createElement","IconButton","icon","mdiClose","label","internal","isRequired","Fragment","color","mdiChevronDown","tabIndex","iconProps","style","transition","transform","textareaProps","textareaRef","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ComboboxTrigger.js","sources":["../../src/components/combobox/intl/index.ts","../../src/components/combobox-trigger/ComboboxTrigger.tsx"],"sourcesContent":["import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React, { KeyboardEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\n\nimport { useId, useMessageFormatter } from '@redsift/design-system';\nimport intlMessages from '../combobox/intl';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n IconButton,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { ComboboxContext } from '../combobox/context';\nimport { mdiChevronDown, mdiClose } from '@redsift/icons';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'ComboboxTrigger';\nconst CLASSNAME = 'redsift-combobox-trigger';\n\n/**\n * The ComboboxTrigger component.\n */\nexport const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const [id] = useId();\n const { children, hideExpandButton, openOnFocus, hideClearButton, pillProps, renderPillContent, ...otherProps } =\n props;\n\n const format = useMessageFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const comboboxState = useContext(ComboboxContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\n\n const isTextArea = isComponent('TextArea')(renderedChildren);\n const isTextField = isComponent('TextField')(renderedChildren);\n const hasMultipleLines = isTextArea && comboboxState?.inputValue.includes('\\n');\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleChange = (value?: string) => {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: value || '', ...comboboxState?.filter! } },\n });\n\n comboboxState?.setInputValue(value!);\n };\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpenPopover(false);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText && comboboxState.inputValue) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n }\n }\n\n if ((/^.$/.test(event.key) || code === 'Backspace') && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n }\n\n if (canHaveMultipleSelections && comboboxState.inputValue === '' && code === 'Backspace') {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: (comboboxState.value as string[]).slice(0, (comboboxState.value as string[]).length - 1),\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n\n if (code === 'ArrowDown' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowDown : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'ArrowUp' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'Enter') {\n if (isTextField || (isTextArea && !event.shiftKey)) {\n event.preventDefault();\n }\n\n if (\n canHaveMultipleSelections &&\n canHaveFreeText &&\n focusContext.state.activedescendant?.[0] === comboboxState.freeTextItemId &&\n comboboxState.inputValue\n ) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n handleOpenPopover(false);\n } else if (isOpen && focusContext.state.selectedId) {\n if (canHaveMultipleSelections) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n } else {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n } else if (!event.shiftKey) {\n comboboxState?.formRef?.current?.submit();\n comboboxState?.submitRef?.current?.click();\n }\n }\n };\n\n const handleOpen = () => {\n if (isOpen) {\n handleOpenPopover(false);\n } else {\n handleOpenPopover(true);\n inputRef.current?.focus();\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0]!,\n filter: { value: '', ...comboboxState?.filter! },\n },\n },\n });\n }\n };\n\n const handleFocus = () => {\n if (openOnFocus) {\n handleOpen();\n }\n inputRef.current?.select();\n };\n\n const handleBlur = () => {\n if (canHaveMultipleSelections) {\n if (!canHaveFreeText) {\n comboboxState?.setInputValue('');\n }\n } else {\n if (canHaveFreeText) {\n comboboxState?.setValue(comboboxState.inputValue);\n } else {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n }\n };\n\n const handleClear = () => {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [],\n activedescendant: ['', ''],\n },\n });\n };\n\n useEffect(() => {\n if (canHaveMultipleSelections) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues);\n comboboxState?.setInputValue('');\n handleOpenPopover(false);\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: listboxState.state.selectedValues[0] || '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues[0]);\n if (listboxState.state.selectedValues.length) {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n handleOpenPopover(false);\n }\n }, [listboxState.state]);\n\n if (isTextField || isTextArea) {\n const {\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n role,\n ...forwardedProps\n } = getReferenceProps({\n ref: triggerRef,\n ...otherProps,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n });\n\n const inputProps = {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n autoComplete: 'off',\n autoCapitalize: 'off',\n autoCorrect: 'off',\n spellCheck: 'false',\n 'aria-autocomplete': canHaveMultipleSelections ? 'list' : undefined,\n 'aria-description': canHaveMultipleSelections\n ? format('selected', { count: comboboxState?.value.length })\n : undefined,\n onKeyDown: handleKeyDown,\n role,\n };\n\n return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n theme,\n className: classNames((renderedChildren as ReactElement).props.className, comboboxState?.triggerClassName),\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: comboboxState?.inputValue,\n ...(isTextField\n ? {\n inputProps,\n inputRef,\n onClear: handleClear,\n hasClearButton: hideClearButton\n ? false\n : {\n isDisabled: comboboxState?.isDisabled || (comboboxState?.value && comboboxState?.value?.length === 0),\n onClick: () => inputRef.current.focus(),\n },\n pills: canHaveMultipleSelections\n ? (comboboxState?.value as string[]).map((v) => ({\n isDisabled: comboboxState?.isDisabled,\n children: [\n renderPillContent ? renderPillContent(v) : v,\n <IconButton\n key={`${id}-pill-${v}-icon-button`}\n icon={mdiClose}\n aria-label={format('unselect', { label: v })}\n onClick={(event) => {\n event.preventDefault();\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: v,\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }}\n />,\n ],\n ...pillProps,\n }))\n : undefined,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <IconButton\n theme={theme}\n aria-label={format(!isOpen ? 'expand' : 'collapse')}\n color=\"grey\"\n icon={mdiChevronDown}\n onClick={handleOpen}\n isDisabled={isDisabled}\n tabIndex={-1}\n iconProps={{\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n }}\n />\n )}\n </>\n );\n },\n }\n : {\n textareaProps: inputProps,\n textareaRef: inputRef,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.displayName = COMPONENT_NAME;\n"],"names":["enUS","frFR","COMPONENT_NAME","CLASSNAME","ComboboxTrigger","forwardRef","props","ref","_renderedChildren$pro","id","useId","children","hideExpandButton","openOnFocus","hideClearButton","pillProps","renderPillContent","otherProps","_objectWithoutProperties","_excluded","format","useMessageFormatter","intlMessages","getReferenceProps","isOpen","handleOpen","handleOpenPopover","refs","usePopoverContext","childrenRef","triggerRef","useMergeRefs","setReference","focusContext","useContext","FocusWithinGroupContext","comboboxState","ComboboxContext","listboxState","ListboxContext","theme","useTheme","canHaveMultipleSelections","selectionMode","ComboboxSelectionMode","multiple","canHaveFreeText","variant","ComboboxVariant","suggestions","renderedChildren","value","isTextArea","isComponent","isTextField","hasMultipleLines","inputValue","includes","_inputRef","useRef","inputRef","handleChange","dispatch","type","FocusWithinGroupActionType","FILTER_LIST","payload","filter","_objectSpread","setInputValue","handleKeyDown","event","code","ListboxActionType","TOGGLE","activedescendant","freeTextItemId","test","key","DELAY_ACTION","KEY_DOWN_ON_LIST","EventKey","Home","ctrlKey","SET","values","slice","length","state","selectedId","ArrowDown","preventDefault","ArrowUp","End","_focusContext$state$a","shiftKey","_focusContext$state$a2","_focusContext$state$a3","_focusContext$state$a4","_focusContext$state$a5","_comboboxState$formRe","_comboboxState$formRe2","_comboboxState$submit","_comboboxState$submit2","formRef","current","submit","submitRef","click","_inputRef$current","_focusContext$state$a6","focus","FOCUS_ON_LIST","handleFocus","_inputRef$current2","select","handleBlur","setValue","selectedValues","handleClear","useEffect","_props$children","_focusContext$state$a7","_comboboxState$value","_getReferenceProps","ariaControls","ariaExpanded","ariaHaspopup","role","forwardedProps","_excluded2","inputProps","undefined","autoComplete","autoCapitalize","autoCorrect","spellCheck","count","onKeyDown","React","cloneElement","className","classNames","triggerClassName","isDisabled","isInvalid","onChange","onBlur","onFocus","onClear","hasClearButton","onClick","pills","map","v","createElement","IconButton","icon","mdiClose","label","internal","isRequired","Fragment","color","mdiChevronDown","tabIndex","iconProps","style","transition","transform","textareaProps","textareaRef","displayName"],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -182,8 +182,8 @@ interface ComboboxTriggerProps extends Omit<PopoverTriggerProps, 'children'> {
|
|
|
182
182
|
openOnFocus?: boolean;
|
|
183
183
|
/** Props to forward to the Pills. */
|
|
184
184
|
pillProps?: Omit<PillProps, 'ref' | 'children'>;
|
|
185
|
-
/** Method used to customize the content of the
|
|
186
|
-
|
|
185
|
+
/** Method used to customize the content of the Pills. */
|
|
186
|
+
renderPillContent?: (value: string) => ReactNode;
|
|
187
187
|
}
|
|
188
188
|
|
|
189
189
|
/**
|
|
@@ -261,6 +261,25 @@ declare const ComboboxTrigger: Comp<ComboboxTriggerProps, HTMLButtonElement>;
|
|
|
261
261
|
* {suggestions.map(email => <Item key={email} value={email}>{email}</Item>)}
|
|
262
262
|
* </Combobox.Content>
|
|
263
263
|
* </Combobox>
|
|
264
|
+
*
|
|
265
|
+
* @example
|
|
266
|
+
* // Multi-select with custom pill content
|
|
267
|
+
* <Combobox selectionMode="multiple" variant="options">
|
|
268
|
+
* <Combobox.Trigger
|
|
269
|
+
* renderPillContent={(value) => (
|
|
270
|
+
* <Flexbox alignItems="center" gap="4px">
|
|
271
|
+
* <Icon icon={icons[value]} size="small" />
|
|
272
|
+
* <Text color={colors[value]}>{value}</Text>
|
|
273
|
+
* </Flexbox>
|
|
274
|
+
* )}
|
|
275
|
+
* >
|
|
276
|
+
* <TextField label="Pick items" />
|
|
277
|
+
* </Combobox.Trigger>
|
|
278
|
+
* <Combobox.Content>
|
|
279
|
+
* <Item value="cat">Cat</Item>
|
|
280
|
+
* <Item value="dog">Dog</Item>
|
|
281
|
+
* </Combobox.Content>
|
|
282
|
+
* </Combobox>
|
|
264
283
|
*/
|
|
265
284
|
declare const BaseCombobox: React.FC<ComboboxProps> & {
|
|
266
285
|
displayName?: string;
|
package/package.json
CHANGED
|
@@ -30,11 +30,11 @@
|
|
|
30
30
|
"test": "yarn test:unit && yarn test:storybook"
|
|
31
31
|
},
|
|
32
32
|
"types": "index.d.ts",
|
|
33
|
-
"version": "12.5.
|
|
33
|
+
"version": "12.5.3-alpha.0",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@redsift/design-system": "^12.5.
|
|
36
|
-
"@redsift/icons": "^12.5.
|
|
37
|
-
"@redsift/popovers": "^12.5.
|
|
35
|
+
"@redsift/design-system": "^12.5.3-alpha.0",
|
|
36
|
+
"@redsift/icons": "^12.5.3-alpha.0",
|
|
37
|
+
"@redsift/popovers": "^12.5.3-alpha.0",
|
|
38
38
|
"classnames": "^2.3.1",
|
|
39
39
|
"styled-components": "6.1.19"
|
|
40
40
|
},
|
|
@@ -87,12 +87,12 @@
|
|
|
87
87
|
"ts-jest": "^29.2.0"
|
|
88
88
|
},
|
|
89
89
|
"peerDependencies": {
|
|
90
|
-
"@redsift/design-system": "^12.5.
|
|
91
|
-
"@redsift/icons": "^12.5.
|
|
92
|
-
"@redsift/popovers": "^12.5.
|
|
90
|
+
"@redsift/design-system": "^12.5.3-0",
|
|
91
|
+
"@redsift/icons": "^12.5.3-0",
|
|
92
|
+
"@redsift/popovers": "^12.5.3-0",
|
|
93
93
|
"react": ">=17",
|
|
94
94
|
"react-dom": ">=17",
|
|
95
95
|
"styled-components": "6.1.19"
|
|
96
96
|
},
|
|
97
|
-
"gitHead": "
|
|
97
|
+
"gitHead": "bdd3b9e98e107e4c3bb309506942cfdb378974f0"
|
|
98
98
|
}
|