@redsift/pickers 11.6.0-muiv5-alpha.10 → 11.6.0-muiv5-alpha.11
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 → _virtual/_internal}/_rollupPluginBabelHelpers.js +1 -1
- package/{_internal → components/combobox/_internal}/Combobox2.js +6 -5
- package/components/combobox/_internal/Combobox2.js.map +1 -0
- package/components/combobox/_internal/combobox.js +3 -0
- package/components/combobox/_internal/context.js +6 -0
- package/components/combobox/_internal/context.js.map +1 -0
- package/{_internal → components/combobox/_internal}/types.js +1 -5
- package/components/combobox/_internal/types.js.map +1 -0
- package/components/combobox/intl/_internal/en-US.js +13 -0
- package/components/combobox/intl/_internal/en-US.js.map +1 -0
- package/components/combobox/intl/_internal/fr-FR.js +13 -0
- package/components/combobox/intl/_internal/fr-FR.js.map +1 -0
- package/components/combobox/intl/index.js +10 -0
- package/components/combobox/intl/index.js.map +1 -0
- package/{_internal → components/combobox-content/_internal}/ComboboxContent.js +6 -6
- package/components/combobox-content/_internal/ComboboxContent.js.map +1 -0
- package/components/combobox-content/_internal/combobox-content.js +2 -0
- package/{_internal → components/combobox-content-footer/_internal}/ComboboxContentFooter.js +3 -11
- package/components/combobox-content-footer/_internal/ComboboxContentFooter.js.map +1 -0
- package/components/combobox-content-footer/_internal/combobox-content-footer.js +2 -0
- package/components/combobox-content-footer/_internal/styles.js +12 -0
- package/components/combobox-content-footer/_internal/styles.js.map +1 -0
- package/{_internal → components/combobox-content-header/_internal}/ComboboxContentHeader.js +3 -11
- package/components/combobox-content-header/_internal/ComboboxContentHeader.js.map +1 -0
- package/components/combobox-content-header/_internal/combobox-content-header.js +2 -0
- package/components/combobox-content-header/_internal/styles.js +12 -0
- package/components/combobox-content-header/_internal/styles.js.map +1 -0
- package/{_internal → components/combobox-content-listbox/_internal}/ComboboxContentListbox.js +4 -3
- package/components/combobox-content-listbox/_internal/ComboboxContentListbox.js.map +1 -0
- package/components/combobox-content-listbox/_internal/combobox-content-listbox.js +2 -0
- package/{_internal → components/combobox-trigger/_internal}/ComboboxTrigger.js +5 -30
- package/components/combobox-trigger/_internal/ComboboxTrigger.js.map +1 -0
- package/components/combobox-trigger/_internal/combobox-trigger.js +2 -0
- package/{_internal → components/item/_internal}/Item2.js +6 -68
- package/components/item/_internal/Item2.js.map +1 -0
- package/components/item/_internal/item.js +2 -0
- package/components/item/_internal/useMenuItem.js +69 -0
- package/components/item/_internal/useMenuItem.js.map +1 -0
- package/{_internal → components/menu-button/_internal}/MenuButton.js +5 -4
- package/components/menu-button/_internal/MenuButton.js.map +1 -0
- package/components/menu-button/_internal/context.js +6 -0
- package/components/menu-button/_internal/context.js.map +1 -0
- package/components/menu-button/_internal/menu-button.js +2 -0
- package/{_internal → components/menu-button-content/_internal}/MenuButtonContent.js +5 -5
- package/components/menu-button-content/_internal/MenuButtonContent.js.map +1 -0
- package/components/menu-button-content/_internal/menu-button-content.js +2 -0
- package/{_internal → components/menu-button-content-footer/_internal}/MenuButtonContentFooter.js +3 -11
- package/components/menu-button-content-footer/_internal/MenuButtonContentFooter.js.map +1 -0
- package/components/menu-button-content-footer/_internal/menu-button-content-footer.js +2 -0
- package/components/menu-button-content-footer/_internal/styles.js +12 -0
- package/components/menu-button-content-footer/_internal/styles.js.map +1 -0
- package/{_internal → components/menu-button-content-header/_internal}/MenuButtonContentHeader.js +3 -11
- package/components/menu-button-content-header/_internal/MenuButtonContentHeader.js.map +1 -0
- package/components/menu-button-content-header/_internal/menu-button-content-header.js +2 -0
- package/components/menu-button-content-header/_internal/styles.js +12 -0
- package/components/menu-button-content-header/_internal/styles.js.map +1 -0
- package/{_internal → components/menu-button-content-menu/_internal}/MenuButtonContentMenu.js +2 -2
- package/components/menu-button-content-menu/_internal/MenuButtonContentMenu.js.map +1 -0
- package/components/menu-button-content-menu/_internal/menu-button-content-menu.js +2 -0
- package/{_internal → components/menu-button-trigger/_internal}/MenuButtonTrigger.js +3 -4
- package/components/menu-button-trigger/_internal/MenuButtonTrigger.js.map +1 -0
- package/components/menu-button-trigger/_internal/menu-button-trigger.js +2 -0
- package/{_internal → components/select/_internal}/Select2.js +5 -4
- package/components/select/_internal/Select2.js.map +1 -0
- package/components/select/_internal/context.js +6 -0
- package/components/select/_internal/context.js.map +1 -0
- package/components/select/_internal/select.js +2 -0
- package/{_internal → components/select-content/_internal}/SelectContent.js +2 -2
- package/components/select-content/_internal/SelectContent.js.map +1 -0
- package/components/select-content/_internal/select-content.js +2 -0
- package/{_internal → components/select-trigger/_internal}/SelectTrigger.js +3 -4
- package/components/select-trigger/_internal/SelectTrigger.js.map +1 -0
- package/components/select-trigger/_internal/select-trigger.js +2 -0
- package/index.js +17 -17
- package/package.json +5 -5
- package/_internal/Combobox2.js.map +0 -1
- package/_internal/ComboboxContent.js.map +0 -1
- package/_internal/ComboboxContentFooter.js.map +0 -1
- package/_internal/ComboboxContentHeader.js.map +0 -1
- package/_internal/ComboboxContentListbox.js.map +0 -1
- package/_internal/ComboboxTrigger.js.map +0 -1
- package/_internal/Item2.js.map +0 -1
- package/_internal/MenuButton.js.map +0 -1
- package/_internal/MenuButtonContent.js.map +0 -1
- package/_internal/MenuButtonContentFooter.js.map +0 -1
- package/_internal/MenuButtonContentHeader.js.map +0 -1
- package/_internal/MenuButtonContentMenu.js.map +0 -1
- package/_internal/MenuButtonTrigger.js.map +0 -1
- package/_internal/Select2.js.map +0 -1
- package/_internal/SelectContent.js.map +0 -1
- package/_internal/SelectTrigger.js.map +0 -1
- package/_internal/combobox-content-footer.js +0 -2
- package/_internal/combobox-content-header.js +0 -2
- package/_internal/combobox-content-listbox.js +0 -2
- package/_internal/combobox-content.js +0 -2
- package/_internal/combobox-trigger.js +0 -2
- package/_internal/combobox.js +0 -3
- package/_internal/item.js +0 -2
- package/_internal/menu-button-content-footer.js +0 -2
- package/_internal/menu-button-content-header.js +0 -2
- package/_internal/menu-button-content-menu.js +0 -2
- package/_internal/menu-button-content.js +0 -2
- package/_internal/menu-button-trigger.js +0 -2
- package/_internal/menu-button.js +0 -2
- package/_internal/select-content.js +0 -2
- package/_internal/select-trigger.js +0 -2
- package/_internal/select.js +0 -2
- package/_internal/types.js.map +0 -1
- /package/{_internal → _virtual/_internal}/_rollupPluginBabelHelpers.js.map +0 -0
- /package/{_internal → components/combobox/_internal}/combobox.js.map +0 -0
- /package/{_internal → components/combobox-content/_internal}/combobox-content.js.map +0 -0
- /package/{_internal → components/combobox-content-footer/_internal}/combobox-content-footer.js.map +0 -0
- /package/{_internal → components/combobox-content-header/_internal}/combobox-content-header.js.map +0 -0
- /package/{_internal → components/combobox-content-listbox/_internal}/combobox-content-listbox.js.map +0 -0
- /package/{_internal → components/combobox-trigger/_internal}/combobox-trigger.js.map +0 -0
- /package/{_internal → components/item/_internal}/item.js.map +0 -0
- /package/{_internal → components/menu-button/_internal}/menu-button.js.map +0 -0
- /package/{_internal → components/menu-button-content/_internal}/menu-button-content.js.map +0 -0
- /package/{_internal → components/menu-button-content-footer/_internal}/menu-button-content-footer.js.map +0 -0
- /package/{_internal → components/menu-button-content-header/_internal}/menu-button-content-header.js.map +0 -0
- /package/{_internal → components/menu-button-content-menu/_internal}/menu-button-content-menu.js.map +0 -0
- /package/{_internal → components/menu-button-trigger/_internal}/menu-button-trigger.js.map +0 -0
- /package/{_internal → components/select/_internal}/select.js.map +0 -0
- /package/{_internal → components/select-content/_internal}/select-content.js.map +0 -0
- /package/{_internal → components/select-trigger/_internal}/select-trigger.js.map +0 -0
package/index.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
13
|
-
export {
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
1
|
+
export { ComboboxContentFooter } from './components/combobox-content-footer/_internal/ComboboxContentFooter.js';
|
|
2
|
+
export { ComboboxContentHeader } from './components/combobox-content-header/_internal/ComboboxContentHeader.js';
|
|
3
|
+
export { ComboboxContentListbox } from './components/combobox-content-listbox/_internal/ComboboxContentListbox.js';
|
|
4
|
+
export { BaseComboboxContent, ComboboxContent } from './components/combobox-content/_internal/ComboboxContent.js';
|
|
5
|
+
export { ComboboxTrigger } from './components/combobox-trigger/_internal/ComboboxTrigger.js';
|
|
6
|
+
export { ComboboxSelectionMode, ComboboxVariant } from './components/combobox/_internal/types.js';
|
|
7
|
+
export { BaseCombobox, Combobox } from './components/combobox/_internal/Combobox2.js';
|
|
8
|
+
export { Item } from './components/item/_internal/Item2.js';
|
|
9
|
+
export { MenuButtonContentFooter } from './components/menu-button-content-footer/_internal/MenuButtonContentFooter.js';
|
|
10
|
+
export { MenuButtonContentHeader } from './components/menu-button-content-header/_internal/MenuButtonContentHeader.js';
|
|
11
|
+
export { MenuButtonContentMenu } from './components/menu-button-content-menu/_internal/MenuButtonContentMenu.js';
|
|
12
|
+
export { BaseMenuButtonContent, MenuButtonContent } from './components/menu-button-content/_internal/MenuButtonContent.js';
|
|
13
|
+
export { MenuButtonTrigger } from './components/menu-button-trigger/_internal/MenuButtonTrigger.js';
|
|
14
|
+
export { BaseMenuButton, MenuButton } from './components/menu-button/_internal/MenuButton.js';
|
|
15
|
+
export { SelectContent } from './components/select-content/_internal/SelectContent.js';
|
|
16
|
+
export { SelectTrigger } from './components/select-trigger/_internal/SelectTrigger.js';
|
|
17
|
+
export { BaseSelect, Select } from './components/select/_internal/Select2.js';
|
|
18
18
|
//# sourceMappingURL=index.js.map
|
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": "11.6.0-muiv5-alpha.
|
|
33
|
+
"version": "11.6.0-muiv5-alpha.11",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@redsift/design-system": "^11.6.0-muiv5-alpha.
|
|
36
|
-
"@redsift/icons": "^11.6.0-muiv5-alpha.
|
|
37
|
-
"@redsift/popovers": "^11.6.0-muiv5-alpha.
|
|
35
|
+
"@redsift/design-system": "^11.6.0-muiv5-alpha.11",
|
|
36
|
+
"@redsift/icons": "^11.6.0-muiv5-alpha.11",
|
|
37
|
+
"@redsift/popovers": "^11.6.0-muiv5-alpha.11",
|
|
38
38
|
"classnames": "^2.3.1",
|
|
39
39
|
"styled-components": "^5.3.5"
|
|
40
40
|
},
|
|
@@ -95,5 +95,5 @@
|
|
|
95
95
|
"react-dom": ">=17",
|
|
96
96
|
"styled-components": "^5.3.5"
|
|
97
97
|
},
|
|
98
|
-
"gitHead": "
|
|
98
|
+
"gitHead": "aa2b60078c31ab64a6d5d7d77aa7a9dc71eb4031"
|
|
99
99
|
}
|
|
@@ -1 +0,0 @@
|
|
|
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 * The Combobox component.\n */\nexport const BaseCombobox: React.FC<ComboboxProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n defaultValue,\n description,\n descriptionProps,\n filter = {\n type: 'startsWith',\n caseSensitive: false,\n },\n formRef,\n submitRef,\n inputValue: propsInputValue,\n isDisabled,\n isInvalid,\n maxOptionsLength,\n minWidth = 'trigger-width',\n onChange,\n onInputChange,\n selectionMode = ComboboxSelectionMode.single,\n theme: propsTheme,\n triggerClassName,\n value,\n variant = ComboboxVariant.options,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<ComboboxValue>(\n value || defaultValue || (selectionMode === 'multiple' ? [] : '')\n );\n const [inputValue, setInputValue] = useState<string>(propsInputValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n useEffect(() => {\n if (propsInputValue) {\n state.setInputValue(propsInputValue);\n }\n }, [propsInputValue]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: selectionMode === ComboboxSelectionMode.multiple ? selectedValue : [selectedValue],\n selectionMode,\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled]);\n\n const freeTextItemRef = useRef<HTMLDivElement>();\n const [freeTextItemId] = useId();\n\n /** Combobox context. */\n const state = {\n filter,\n formRef,\n submitRef,\n value: selectedValue,\n inputValue,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n selectionMode,\n variant,\n freeTextItemRef: freeTextItemRef as RefObject<HTMLDivElement>,\n freeTextItemId,\n triggerClassName,\n setValue(value: ComboboxValue) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n setInputValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = inputValue;\n setInputValue(value);\n if (value !== previousValue && onInputChange) {\n onInputChange(value);\n }\n },\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false} maxOptionsLength={maxOptionsLength}>\n <ComboboxContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'ComboboxContent', trigger: 'ComboboxTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : React.isValidElement(description) ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </ComboboxContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseCombobox.className = CLASSNAME;\nBaseCombobox.displayName = COMPONENT_NAME;\n\nexport const Combobox = Object.assign(BaseCombobox, {\n Trigger: ComboboxTrigger,\n Content: ComboboxContent,\n});\n"],"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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxContent.js","sources":["../../src/components/combobox-content/ComboboxContent.tsx"],"sourcesContent":["import React, { forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n ListboxContext,\n getContainerProps,\n isComponent,\n partitionComponents,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n usePopoverContext,\n StyledPopoverContent,\n useMergeRefs,\n} from '@redsift/popovers';\nimport { ComboboxContentHeader } from '../combobox-content-header';\nimport { ComboboxContentFooter } from '../combobox-content-footer';\nimport { ComboboxContentListbox } from '../combobox-content-listbox/ComboboxContentListbox';\nimport { ComboboxContext } from '../combobox/context';\n\nconst COMPONENT_NAME = 'ComboboxContent';\nconst CLASSNAME = 'redsift-combobox-content';\n\n/**\n * The ComboboxContent component.\n */\nexport const BaseComboboxContent: Comp<ComboboxContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const comboboxState = useContext(ComboboxContext);\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const [[header], [listbox], [footer]] = partitionComponents(React.Children.toArray(children), [\n isComponent('ComboboxContentHeader'),\n isComponent('ComboboxContentListbox'),\n isComponent('ComboboxContentFooter'),\n ]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen && (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n ...(comboboxState?.inputValue?.length && focusContext.state.tabStops.length === 0\n ? { display: 'none' }\n : {}),\n }}\n className={classNames(PopoverContent.className, BaseComboboxContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n {header}\n {listbox}\n {footer}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nBaseComboboxContent.className = CLASSNAME;\nBaseComboboxContent.displayName = COMPONENT_NAME;\n\nexport const ComboboxContent = Object.assign(BaseComboboxContent, {\n Header: ComboboxContentHeader,\n Listbox: ComboboxContentListbox,\n Footer: ComboboxContentFooter,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseComboboxContent","forwardRef","props","ref","_comboboxState$inputV","children","className","style","containerProps","getContainerProps","getFloatingProps","isOpen","refs","strategy","x","y","usePopoverContext","popoverRef","useMergeRefs","setFloating","appContainerState","useContext","AppContainerContext","comboboxState","ComboboxContext","focusContext","FocusWithinGroupContext","listboxState","ListboxContext","theme","useTheme","header","listbox","footer","partitionComponents","React","Children","toArray","isComponent","createElement","FloatingPortal","root","appContainerRef","current","StyledPopoverContent","_extends","$theme","_objectSpread","position","top","left","inputValue","length","state","tabStops","display","classNames","PopoverContent","isDisabled","Flexbox","flexDirection","gap","width","displayName","ComboboxContent","Object","assign","Header","ComboboxContentHeader","Listbox","ComboboxContentListbox","Footer","ComboboxContentFooter"],"mappings":";;;;;;;;;;AA2BA,MAAMA,cAAc,GAAG,iBAAiB,CAAA;AACxC,MAAMC,SAAS,GAAG,0BAA0B,CAAA;;AAE5C;AACA;AACA;AACO,MAAMC,mBAA+D,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;AAAA,EAAA,IAAAC,qBAAA,CAAA;EACxG,MAAM;IAAEC,QAAQ;IAAEC,SAAS;AAAEC,IAAAA,KAAAA;AAAM,GAAC,GAAGL,KAAK,CAAA;AAC5C,EAAA,MAAMM,cAAc,GAAGC,iBAAiB,CAACP,KAAK,CAAC,CAAA;EAE/C,MAAM;IAAEQ,gBAAgB;IAAEC,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC,CAAC;AAAEC,IAAAA,CAAAA;GAAG,GAAGC,iBAAiB,EAAE,CAAA;EAC9E,MAAMC,UAAU,GAAGC,YAAY,CAAC,CAACN,IAAI,CAACO,WAAW,EAAEhB,GAAG,CAAC,CAAC,CAAA;AAExD,EAAA,MAAMiB,iBAAiB,GAAGC,UAAU,CAACC,mBAAmB,CAAC,CAAA;AACzD,EAAA,MAAMC,aAAa,GAAGF,UAAU,CAACG,eAAe,CAAC,CAAA;AACjD,EAAA,MAAMC,YAAY,GAAGJ,UAAU,CAACK,uBAAuB,CAAC,CAAA;AACxD,EAAA,MAAMC,YAAY,GAAGN,UAAU,CAACO,cAAc,CAAC,CAAA;AAC/C,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AAExB,EAAA,MAAM,CAAC,CAACC,MAAM,CAAC,EAAE,CAACC,OAAO,CAAC,EAAE,CAACC,MAAM,CAAC,CAAC,GAAGC,mBAAmB,CAACC,KAAK,CAACC,QAAQ,CAACC,OAAO,CAAChC,QAAQ,CAAC,EAAE,CAC5FiC,WAAW,CAAC,uBAAuB,CAAC,EACpCA,WAAW,CAAC,wBAAwB,CAAC,EACrCA,WAAW,CAAC,uBAAuB,CAAC,CACrC,CAAC,CAAA;AAEF,EAAA,oBACEH,KAAA,CAAAI,aAAA,CAACC,cAAc,EAAA;IAACC,IAAI,EAAErB,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,uBAAjBA,iBAAiB,CAAEsB,eAAe,CAACC,OAAAA;GACtDhC,EAAAA,MAAM,iBACLwB,KAAA,CAAAI,aAAA,CAACK,oBAAoB,EAAAC,QAAA,CAAA;AACnBC,IAAAA,MAAM,EAAEjB,KAAO;AACf1B,IAAAA,GAAG,EAAEc,UAAAA;GACDP,EAAAA,gBAAgB,CAACR,KAAK,CAAC,EAAA;IAC3BK,KAAK,EAAAwC,cAAA,CAAAA,cAAA,CAAA;AACHC,MAAAA,QAAQ,EAAEnC,QAAQ;AAClBoC,MAAAA,GAAG,EAAElC,CAAC,KAAA,IAAA,IAADA,CAAC,KAADA,KAAAA,CAAAA,GAAAA,CAAC,GAAI,CAAC;AACXmC,MAAAA,IAAI,EAAEpC,CAAC,KAAA,IAAA,IAADA,CAAC,KAAA,KAAA,CAAA,GAADA,CAAC,GAAI,CAAA;KACRP,EAAAA,KAAK,CACJgB,EAAAA,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAAnB,KAAAA,CAAAA,IAAAA,CAAAA,qBAAA,GAAbmB,aAAa,CAAE4B,UAAU,MAAA/C,IAAAA,IAAAA,qBAAA,KAAzBA,KAAAA,CAAAA,IAAAA,qBAAA,CAA2BgD,MAAM,IAAI3B,YAAY,CAAC4B,KAAK,CAACC,QAAQ,CAACF,MAAM,KAAK,CAAC,GAC7E;AAAEG,MAAAA,OAAO,EAAE,MAAA;KAAQ,GACnB,EAAE,CACN;AACFjD,IAAAA,SAAS,EAAEkD,UAAU,CAACC,cAAc,CAACnD,SAAS,EAAEN,mBAAmB,CAACM,SAAS,EAAEA,SAAS,CAAE;IAC1F,eAAeqB,EAAAA,YAAY,CAAC0B,KAAK,CAACK,UAAAA;AAAW,GAAA,CAAA,eAE7CvB,KAAA,CAAAI,aAAA,CAACoB,OAAO,EAAAd,QAAA,CAAA;AAACe,IAAAA,aAAa,EAAC,QAAQ;AAACC,IAAAA,GAAG,EAAC,KAAK;AAACC,IAAAA,KAAK,EAAC,MAAA;GAAWtD,EAAAA,cAAc,GACtEuB,MAAM,EACNC,OAAO,EACPC,MACM,CACW,CAEV,CAAC,CAAA;AAErB,CAAC,EAAC;AACFjC,mBAAmB,CAACM,SAAS,GAAGP,SAAS,CAAA;AACzCC,mBAAmB,CAAC+D,WAAW,GAAGjE,cAAc,CAAA;AAEzC,MAAMkE,eAAe,GAAGC,MAAM,CAACC,MAAM,CAAClE,mBAAmB,EAAE;AAChEmE,EAAAA,MAAM,EAAEC,qBAAqB;AAC7BC,EAAAA,OAAO,EAAEC,sBAAsB;AAC/BC,EAAAA,MAAM,EAAEC,qBAAAA;AACV,CAAC;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxContentFooter.js","sources":["../../src/components/combobox-content-footer/styles.ts","../../src/components/combobox-content-footer/ComboboxContentFooter.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledComboboxContentFooterProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledComboboxContentFooter = styled.div<StyledComboboxContentFooterProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledComboboxContentFooter } from './styles';\nimport { ComboboxContentFooterProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'ComboboxContentFooter';\nconst CLASSNAME = 'redsift-combobox-content-footer';\n\n/**\n * The ComboboxContentFooter component.\n */\nexport const ComboboxContentFooter: Comp<ComboboxContentFooterProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledComboboxContentFooter\n {...forwardedProps}\n className={classNames(ComboboxContentFooter.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledComboboxContentFooter>\n );\n});\nComboboxContentFooter.className = CLASSNAME;\nComboboxContentFooter.displayName = COMPONENT_NAME;\n"],"names":["StyledComboboxContentFooter","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","ComboboxContentFooter","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","displayName"],"mappings":";;;;;;AAIA;AACA;AACA;AACO,MAAMA,2BAA2B,GAAGC,MAAM,CAACC,GAAsC,CAAA;AACxF,EAAA,EAAIC,aAAc,CAAA;AAClB,CAAC;;;ACFD,MAAMC,cAAc,GAAG,uBAAuB,CAAA;AAC9C,MAAMC,SAAS,GAAG,iCAAiC,CAAA;;AAEnD;AACA;AACA;AACO,MAAMC,qBAAuE,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAChH,MAAM;MAAEC,QAAQ;AAAEC,MAAAA,SAAAA;AAA6B,KAAC,GAAGH,KAAK;AAAxBI,IAAAA,cAAc,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA,CAAA,CAAA;EAExD,oBACEC,KAAA,CAAAC,aAAA,CAAChB,2BAA2B,EAAAiB,QAAA,KACtBL,cAAc,EAAA;IAClBD,SAAS,EAAEO,UAAU,CAACZ,qBAAqB,CAACK,SAAS,EAAEA,SAAS,CAAE;AAClEF,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EAErCC,QAC0B,CAAC,CAAA;AAElC,CAAC,EAAC;AACFJ,qBAAqB,CAACK,SAAS,GAAGN,SAAS,CAAA;AAC3CC,qBAAqB,CAACa,WAAW,GAAGf,cAAc;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxContentHeader.js","sources":["../../src/components/combobox-content-header/styles.ts","../../src/components/combobox-content-header/ComboboxContentHeader.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';\n\n/**\n * The ComboboxContentHeader component.\n */\nexport const ComboboxContentHeader: Comp<ComboboxContentHeaderProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledComboboxContentHeader\n {...forwardedProps}\n className={classNames(ComboboxContentHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledComboboxContentHeader>\n );\n});\nComboboxContentHeader.className = CLASSNAME;\nComboboxContentHeader.displayName = COMPONENT_NAME;\n"],"names":["StyledComboboxContentHeader","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","ComboboxContentHeader","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","displayName"],"mappings":";;;;;;AAIA;AACA;AACA;AACO,MAAMA,2BAA2B,GAAGC,MAAM,CAACC,GAAsC,CAAA;AACxF,EAAA,EAAIC,aAAc,CAAA;AAClB,CAAC;;;ACFD,MAAMC,cAAc,GAAG,uBAAuB,CAAA;AAC9C,MAAMC,SAAS,GAAG,iCAAiC,CAAA;;AAEnD;AACA;AACA;AACO,MAAMC,qBAAuE,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAChH,MAAM;MAAEC,QAAQ;AAAEC,MAAAA,SAAAA;AAA6B,KAAC,GAAGH,KAAK;AAAxBI,IAAAA,cAAc,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA,CAAA,CAAA;EAExD,oBACEC,KAAA,CAAAC,aAAA,CAAChB,2BAA2B,EAAAiB,QAAA,KACtBL,cAAc,EAAA;IAClBD,SAAS,EAAEO,UAAU,CAACZ,qBAAqB,CAACK,SAAS,EAAEA,SAAS,CAAE;AAClEF,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EAErCC,QAC0B,CAAC,CAAA;AAElC,CAAC,EAAC;AACFJ,qBAAqB,CAACK,SAAS,GAAGN,SAAS,CAAA;AAC3CC,qBAAqB,CAACa,WAAW,GAAGf,cAAc;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxContentListbox.js","sources":["../../src/components/combobox-content-listbox/ComboboxContentListbox.tsx"],"sourcesContent":["import React, { ReactNode, forwardRef, useContext, useEffect, RefObject, ReactElement } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n Item,\n ListboxContext,\n StyledItem,\n isComponent,\n useListboxItem,\n useTheme,\n} from '@redsift/design-system';\nimport { ComboboxContentListboxProps } from './types';\nimport { ComboboxContext } from '../combobox/context';\nimport { ComboboxSelectionMode, ComboboxVariant } from '../combobox/types';\n\nconst COMPONENT_NAME = 'ComboboxContentListbox';\nconst CLASSNAME = 'redsift-combobox-content-listbox';\n\n/**\n * The ComboboxContentListbox component.\n */\nexport const ComboboxContentListbox: Comp<ComboboxContentListboxProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, renderFreeTextItem, ...forwardedProps } = props;\n\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const comboboxState = useContext(ComboboxContext);\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n });\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const cloneChildAndPush = (child: ReactElement, array: Array<ReactNode>) => {\n if (\n !canHaveMultipleSelections ||\n !canHaveFreeText ||\n (canHaveMultipleSelections && canHaveFreeText && !(comboboxState.value as string[]).includes(child.props.value))\n ) {\n array.push(\n React.cloneElement(child, {\n key: child.props.value,\n hasCheckbox: canHaveMultipleSelections && !canHaveFreeText,\n })\n );\n }\n };\n const renderedChildren: Array<ReactNode> = [];\n if (Array.isArray(children)) {\n for (const child of children) {\n if (isComponent(Item)(child)) {\n if (focusContext.state.maxOptionsLength) {\n if (renderedChildren.length < focusContext.state.maxOptionsLength) {\n if (!focusContext.state.filter) {\n cloneChildAndPush(child, renderedChildren);\n } else {\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n cloneChildAndPush(child, renderedChildren);\n } else if (\n caseSensitive &&\n ((type === 'startsWith' && child.props.value!.startsWith(filterValue)) ||\n (type === 'contains' && child.props.value!.includes(filterValue)) ||\n (type === 'endsWith' && child.props.value!.endsWith(filterValue)))\n ) {\n cloneChildAndPush(child, renderedChildren);\n } else if (\n !caseSensitive &&\n ((type === 'startsWith' && child.props.value!.toLowerCase().startsWith(filterValue.toLowerCase())) ||\n (type === 'contains' && child.props.value!.toLowerCase().includes(filterValue.toLowerCase())) ||\n (type === 'endsWith' && child.props.value!.toLowerCase().endsWith(filterValue.toLowerCase())))\n ) {\n cloneChildAndPush(child, renderedChildren);\n }\n }\n }\n } else {\n cloneChildAndPush(child, renderedChildren);\n }\n } else {\n renderedChildren.push(child);\n }\n }\n }\n\n const { tabIndex, isFocused, isSelected, isDisabled, handleKeyDown, handleClick } = useListboxItem({\n domElementRef: comboboxState?.freeTextItemRef as RefObject<Element>,\n value: comboboxState?.inputValue || '',\n id: comboboxState?.freeTextItemId,\n });\n const theme = useTheme();\n\n const renderedFreeTextItem = comboboxState?.inputValue\n ? renderFreeTextItem && typeof renderFreeTextItem === 'function'\n ? renderFreeTextItem(comboboxState?.inputValue, comboboxState, listboxState)\n : comboboxState?.inputValue\n : null;\n\n return (\n <Flexbox\n className={classNames(ComboboxContentListbox.className, className)}\n {...forwardedProps}\n ref={ref}\n flexDirection=\"column\"\n gap=\"0px\"\n margin=\"8px 0px\"\n style={{ outline: 'none' }}\n width=\"100%\"\n >\n {canHaveMultipleSelections && canHaveFreeText ? (\n <StyledItem\n role=\"option\"\n id={comboboxState.freeTextItemId}\n $color=\"primary\"\n $isActive={isSelected}\n $isDisabled={isDisabled}\n $isGradient={false}\n $isHovered={isFocused}\n $hasBorder={false}\n $hasCheckbox={false}\n $theme={theme}\n aria-selected={isSelected}\n className={classNames(Item.className, className)}\n onClick={handleClick}\n ref={comboboxState.freeTextItemRef as RefObject<HTMLDivElement>}\n onKeyDown={handleKeyDown}\n tabIndex={tabIndex}\n style={\n !comboboxState.inputValue\n ? {\n height: '0',\n visibility: 'hidden',\n padding: '0',\n }\n : undefined\n }\n >\n {renderedFreeTextItem}\n </StyledItem>\n ) : null}\n {Array.isArray(children) ? renderedChildren : children}\n </Flexbox>\n );\n});\nComboboxContentListbox.className = CLASSNAME;\nComboboxContentListbox.displayName = COMPONENT_NAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","ComboboxContentListbox","forwardRef","props","ref","children","className","renderFreeTextItem","forwardedProps","_objectWithoutProperties","_excluded","focusContext","useContext","FocusWithinGroupContext","listboxState","ListboxContext","comboboxState","ComboboxContext","useEffect","state","delayedAction","tabStops","length","dispatch","canHaveMultipleSelections","selectionMode","ComboboxSelectionMode","multiple","canHaveFreeText","variant","ComboboxVariant","suggestions","cloneChildAndPush","child","array","value","includes","push","React","cloneElement","key","hasCheckbox","renderedChildren","Array","isArray","isComponent","Item","maxOptionsLength","filter","filterValue","type","caseSensitive","startsWith","endsWith","toLowerCase","tabIndex","isFocused","isSelected","isDisabled","handleKeyDown","handleClick","useListboxItem","domElementRef","freeTextItemRef","inputValue","id","freeTextItemId","theme","useTheme","renderedFreeTextItem","createElement","Flexbox","_extends","classNames","flexDirection","gap","margin","style","outline","width","StyledItem","role","$color","$isActive","$isDisabled","$isGradient","$isHovered","$hasBorder","$hasCheckbox","$theme","onClick","onKeyDown","height","visibility","padding","undefined","displayName"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
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 } = props;\n\n const format = useMessageFormatter(intlMessages);\n\n const { getReferenceProps, isOpen, handleOpen: handleOpenPopover, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const comboboxState = useContext(ComboboxContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const canHaveMultipleSelections = comboboxState?.selectionMode === ComboboxSelectionMode.multiple;\n const canHaveFreeText = comboboxState?.variant === ComboboxVariant.suggestions;\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: comboboxState?.value, isOpen }) : children;\n\n const isTextArea = isComponent('TextArea')(renderedChildren);\n const isTextField = isComponent('TextField')(renderedChildren);\n const hasMultipleLines = isTextArea && comboboxState?.inputValue.includes('\\n');\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleChange = (value?: string) => {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: value || '', ...comboboxState?.filter! } },\n });\n\n comboboxState?.setInputValue(value!);\n };\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpenPopover(false);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText && comboboxState.inputValue) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n }\n }\n\n if ((/^.$/.test(event.key) || code === 'Backspace') && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n\n if (canHaveMultipleSelections && canHaveFreeText) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n }\n\n if (canHaveMultipleSelections && comboboxState.inputValue === '' && code === 'Backspace') {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: (comboboxState.value as string[]).slice(0, (comboboxState.value as string[]).length - 1),\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n\n if (code === 'ArrowDown' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowDown : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'ArrowUp' && !hasMultipleLines) {\n if (!isOpen) {\n handleOpenPopover(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n }\n\n if (code === 'Enter') {\n if (isTextField || (isTextArea && !event.shiftKey)) {\n event.preventDefault();\n }\n\n if (\n canHaveMultipleSelections &&\n canHaveFreeText &&\n focusContext.state.activedescendant?.[0] === comboboxState.freeTextItemId &&\n comboboxState.inputValue\n ) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: comboboxState.inputValue,\n activedescendant: [comboboxState.freeTextItemId as string, comboboxState.inputValue],\n },\n });\n handleOpenPopover(false);\n } else if (isOpen && focusContext.state.selectedId) {\n if (canHaveMultipleSelections) {\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: focusContext.state.activedescendant?.[1] ?? '',\n activedescendant: focusContext.state.activedescendant,\n },\n });\n } else {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n } else if (!event.shiftKey) {\n comboboxState?.formRef?.current?.submit();\n comboboxState?.submitRef?.current?.click();\n }\n }\n };\n\n const handleOpen = () => {\n if (isOpen) {\n handleOpenPopover(false);\n } else {\n handleOpenPopover(true);\n inputRef.current?.focus();\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0]!,\n filter: { value: '', ...comboboxState?.filter! },\n },\n },\n });\n }\n };\n\n const handleFocus = () => {\n if (openOnFocus) {\n handleOpen();\n }\n inputRef.current?.select();\n };\n\n const handleBlur = () => {\n if (canHaveMultipleSelections) {\n if (!canHaveFreeText) {\n comboboxState?.setInputValue('');\n }\n } else {\n if (canHaveFreeText) {\n comboboxState?.setValue(comboboxState.inputValue);\n } else {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n }\n };\n\n const handleClear = () => {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [],\n activedescendant: ['', ''],\n },\n });\n };\n\n useEffect(() => {\n if (canHaveMultipleSelections) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues);\n comboboxState?.setInputValue('');\n handleOpenPopover(false);\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.FILTER_LIST,\n payload: { filter: { value: listboxState.state.selectedValues[0] || '', ...comboboxState?.filter! } },\n });\n comboboxState?.setValue(listboxState.state.selectedValues[0]);\n if (listboxState.state.selectedValues.length) {\n comboboxState?.setInputValue(listboxState.state.selectedValues[0]);\n }\n handleOpenPopover(false);\n }\n }, [listboxState.state]);\n\n if (isTextField || isTextArea) {\n const {\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n role,\n ...forwardedProps\n } = getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n });\n\n const inputProps = {\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n autoComplete: 'off',\n autoCapitalize: 'off',\n autoCorrect: 'off',\n spellCheck: 'false',\n 'aria-autocomplete': canHaveMultipleSelections ? 'list' : undefined,\n 'aria-description': canHaveMultipleSelections\n ? format('selected', { count: comboboxState?.value.length })\n : undefined,\n onKeyDown: handleKeyDown,\n role,\n };\n\n return React.cloneElement(renderedChildren, {\n ...forwardedProps,\n theme,\n className: classNames((renderedChildren as ReactElement).props.className, comboboxState?.triggerClassName),\n isDisabled: comboboxState?.isDisabled,\n isInvalid: comboboxState?.isInvalid,\n onChange: handleChange,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: comboboxState?.inputValue,\n ...(isTextField\n ? {\n inputProps,\n inputRef,\n onClear: handleClear,\n hasClearButton: hideClearButton\n ? false\n : {\n isDisabled: comboboxState?.isDisabled || (comboboxState?.value && comboboxState?.value?.length === 0),\n onClick: () => inputRef.current.focus(),\n },\n pills: canHaveMultipleSelections\n ? (comboboxState?.value as string[]).map((v) => ({\n isDisabled: comboboxState?.isDisabled,\n children: [\n v,\n <IconButton\n key={`${id}-pill-${v}-icon-button`}\n icon={mdiClose}\n aria-label={format('unselect', { label: v })}\n onClick={(event) => {\n event.preventDefault();\n listboxState.dispatch({\n type: ListboxActionType.TOGGLE,\n payload: {\n value: v,\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }}\n />,\n ],\n ...pillProps,\n }))\n : undefined,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <IconButton\n theme={theme}\n aria-label={format(!isOpen ? 'expand' : 'collapse')}\n color=\"grey\"\n icon={mdiChevronDown}\n onClick={handleOpen}\n isDisabled={isDisabled}\n tabIndex={-1}\n iconProps={{\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n }}\n />\n )}\n </>\n );\n },\n }\n : {\n textareaProps: inputProps,\n textareaRef: inputRef,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nComboboxTrigger.className = CLASSNAME;\nComboboxTrigger.displayName = COMPONENT_NAME;\n"],"names":["enUS","frFR","COMPONENT_NAME","CLASSNAME","ComboboxTrigger","forwardRef","props","ref","_renderedChildren$pro","id","useId","children","hideExpandButton","openOnFocus","hideClearButton","pillProps","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","_objectWithoutProperties","_excluded","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/_internal/Item2.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Item2.js","sources":["../../src/components/item/useMenuItem.ts","../../src/components/item/Item.tsx"],"sourcesContent":["import { useCallback, useEffect, RefObject, KeyboardEvent } from 'react';\nimport { usePopoverContext } from '@redsift/popovers';\nimport { UseFocusWithinGroupProps, useFocusOnListItem } from '@redsift/design-system';\n\nexport function useMenuItem(props: {\n domElementRef: RefObject<Element>;\n id: string;\n isDisabled?: boolean;\n onClick?: () => void;\n isLinkMenuItem?: boolean;\n linkRef?: RefObject<HTMLAnchorElement>;\n hasPopup?: boolean;\n}): UseFocusWithinGroupProps & {\n isDisabled?: boolean;\n} {\n const { domElementRef, id, isDisabled, onClick, isLinkMenuItem, linkRef, hasPopup } = props;\n\n const { handleOpen, hideInsteadOfClose, setHideInsteadOfClose } = usePopoverContext();\n const {\n tabIndex,\n isFocused,\n handleKeyDown: handleFocusKeyDown,\n handleClick: handleFocusClick,\n } = useFocusOnListItem({ domElementRef, isDisabled: isDisabled!, id });\n\n useEffect(() => {\n if (hasPopup && !hideInsteadOfClose) {\n setHideInsteadOfClose?.(true);\n }\n }, [hasPopup, hideInsteadOfClose, setHideInsteadOfClose]);\n\n const handleKeyDown = useCallback((event: KeyboardEvent) => {\n const code = event.code;\n if (code === 'Enter' || code === 'Space') {\n if (isLinkMenuItem) {\n linkRef?.current?.click();\n } else {\n onClick?.();\n }\n }\n handleFocusKeyDown(event);\n handleOpen(false);\n }, []);\n\n const handleClick = useCallback(() => {\n handleFocusClick();\n onClick?.();\n handleOpen(false);\n }, []);\n\n useEffect(() => {\n if (isFocused && domElementRef.current) {\n (domElementRef as RefObject<SVGElement | HTMLElement>).current?.focus();\n }\n }, [isFocused]);\n\n return {\n tabIndex,\n isFocused,\n isDisabled,\n handleKeyDown,\n handleClick,\n };\n}\n","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useMenuItem } from './useMenuItem';\nimport { useMergeRefs } from '@redsift/popovers';\nimport {\n ButtonsColorPalette,\n Comp,\n ConditionalWrapper,\n FocusWithinGroupContext,\n isComponent,\n StyledGradientBorder,\n useTheme,\n RenderedListboxItem,\n ItemProps,\n StyledItem,\n useId,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Item';\nconst CLASSNAME = 'redsift-item';\n\nconst RenderedMenuItem: Comp<Omit<ItemProps, 'value'>, HTMLElement> = forwardRef((props, ref) => {\n const {\n borderRadius = '0',\n children,\n className,\n color: propsColor,\n hasBorder,\n id: propsId,\n isActive,\n isDisabled: propsIsDisabled,\n isHovered,\n theme: propsTheme,\n onClick,\n ...forwardedProps\n } = props;\n const [_id] = useId();\n const id = propsId ?? _id;\n const _ref = useRef<HTMLElement>();\n const divRef = useMergeRefs([ref, _ref]);\n const linkRef = useRef<HTMLAnchorElement>(null);\n\n const isLinkMenuItem = isComponent('Link')(children);\n const { tabIndex, isFocused, isDisabled, handleKeyDown, handleClick } = useMenuItem({\n domElementRef: _ref as RefObject<Element>,\n id,\n isDisabled: propsIsDisabled!,\n onClick: onClick as any,\n isLinkMenuItem,\n linkRef,\n hasPopup: props['aria-haspopup'] !== undefined,\n });\n\n const theme = useTheme(propsTheme);\n const color = Object.values(ButtonsColorPalette).includes(propsColor!) ? propsColor : 'primary';\n const isGradient = color === ButtonsColorPalette.radar;\n\n return (\n <ConditionalWrapper\n condition={isGradient}\n wrapper={(children) => (\n <StyledGradientBorder\n $borderRadius={borderRadius}\n $color={color}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $isHovered={isHovered}\n $theme={theme}\n width=\"auto\"\n >\n {children}\n </StyledGradientBorder>\n )}\n >\n <StyledItem\n as=\"li\"\n role={isLinkMenuItem ? 'none' : 'menuitem'}\n {...forwardedProps}\n id={id}\n $borderRadius={borderRadius}\n $color={color}\n $hasBorder={hasBorder}\n $hasCheckbox={false}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $isGradient={isGradient}\n $isHovered={isHovered || isFocused}\n $theme={theme}\n aria-disabled={isDisabled}\n className={classNames(Item.className, className)}\n onClick={isDisabled ? undefined : handleClick}\n ref={divRef}\n onKeyDown={handleKeyDown}\n tabIndex={tabIndex}\n >\n {isLinkMenuItem\n ? React.cloneElement(children, {\n role: 'menuitem',\n ref: linkRef,\n })\n : children}\n </StyledItem>\n </ConditionalWrapper>\n );\n});\n\n/**\n * The Item component.\n */\nexport const Item: Comp<ItemProps, HTMLElement> = forwardRef((props, ref) => {\n const { value } = props;\n const focusContext = useContext(FocusWithinGroupContext);\n const isListbox = focusContext.state.listRole === 'listbox';\n\n if (!focusContext.state.filter) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n }\n\n const { value: filterValue, type, caseSensitive } = focusContext.state.filter;\n\n if (!filterValue) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n } else if (\n caseSensitive &&\n ((type === 'startsWith' && value!.startsWith(filterValue)) ||\n (type === 'contains' && value!.includes(filterValue)) ||\n (type === 'endsWith' && value!.endsWith(filterValue)))\n ) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n } else if (\n !caseSensitive &&\n ((type === 'startsWith' && value!.toLowerCase().startsWith(filterValue.toLowerCase())) ||\n (type === 'contains' && value!.toLowerCase().includes(filterValue.toLowerCase())) ||\n (type === 'endsWith' && value!.toLowerCase().endsWith(filterValue.toLowerCase())))\n ) {\n return isListbox ? (\n <RenderedListboxItem {...props} value={props.value!} ref={ref} />\n ) : (\n <RenderedMenuItem {...props} ref={ref} />\n );\n }\n\n return null;\n});\nItem.className = CLASSNAME;\nItem.displayName = COMPONENT_NAME;\n"],"names":["useMenuItem","props","domElementRef","id","isDisabled","onClick","isLinkMenuItem","linkRef","hasPopup","handleOpen","hideInsteadOfClose","setHideInsteadOfClose","usePopoverContext","tabIndex","isFocused","handleKeyDown","handleFocusKeyDown","handleClick","handleFocusClick","useFocusOnListItem","useEffect","useCallback","event","code","_linkRef$current","current","click","_current","focus","COMPONENT_NAME","CLASSNAME","RenderedMenuItem","forwardRef","ref","borderRadius","children","className","color","propsColor","hasBorder","propsId","isActive","propsIsDisabled","isHovered","theme","propsTheme","forwardedProps","_objectWithoutProperties","_excluded","_id","useId","_ref","useRef","divRef","useMergeRefs","isComponent","undefined","useTheme","Object","values","ButtonsColorPalette","includes","isGradient","radar","React","createElement","ConditionalWrapper","condition","wrapper","StyledGradientBorder","$borderRadius","$color","$isActive","$isDisabled","$isHovered","$theme","width","StyledItem","_extends","as","role","$hasBorder","$hasCheckbox","$isGradient","classNames","Item","onKeyDown","cloneElement","value","focusContext","useContext","FocusWithinGroupContext","isListbox","state","listRole","filter","RenderedListboxItem","filterValue","type","caseSensitive","startsWith","endsWith","toLowerCase","displayName"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButton.js","sources":["../../src/components/menu-button/MenuButton.tsx"],"sourcesContent":["import React from 'react';\nimport { MenuButtonContent } from '../menu-button-content';\nimport { MenuButtonTrigger } from '../menu-button-trigger';\n\nimport { MenuButtonProps } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { MenuButtonContext } from './context';\nimport { FocusWithinGroup, Flexbox, Text, Theme, useTheme, ThemeProvider } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButton';\nconst CLASSNAME = 'redsift-menu-button';\n\n/**\n * The MenuButton component.\n */\nexport const BaseMenuButton: React.FC<MenuButtonProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n color,\n description,\n descriptionProps,\n isDisabled,\n label,\n labelProps,\n minWidth = 'trigger-width',\n theme: propsTheme,\n triggerClassName,\n variant,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n /** MenuButton context. */\n const state = {\n color,\n isDisabled: isDisabled || false,\n theme,\n triggerClassName,\n variant,\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" listRole=\"menu\" focusOnInit={false}>\n <MenuButtonContext.Provider value={state}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n {label && typeof label === 'string' ? <Text {...labelProps}>{label}</Text> : label ? label : null}\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'MenuButtonContent', trigger: 'MenuButtonTrigger' }}\n placement=\"bottom-end\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </MenuButtonContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseMenuButton.className = CLASSNAME;\nBaseMenuButton.displayName = COMPONENT_NAME;\n\nexport const MenuButton = Object.assign(BaseMenuButton, {\n Trigger: MenuButtonTrigger,\n Content: MenuButtonContent,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseMenuButton","props","color","description","descriptionProps","isDisabled","label","labelProps","minWidth","theme","propsTheme","triggerClassName","variant","wrapperProps","useTheme","state","React","createElement","ThemeProvider","value","FocusWithinGroup","focusType","listRole","focusOnInit","MenuButtonContext","Provider","Flexbox","_extends","flexDirection","alignItems","gap","Text","Popover","overrideDisplayName","content","trigger","placement","marginTop","Theme","light","className","displayName","MenuButton","Object","assign","Trigger","MenuButtonTrigger","Content","MenuButtonContent"],"mappings":";;;;;;;AASA,MAAMA,cAAc,GAAG,YAAY,CAAA;AACnC,MAAMC,SAAS,GAAG,qBAAqB,CAAA;;AAEvC;AACA;AACA;AACaC,MAAAA,cAGZ,GAAIC,KAAK,IAAK;EACb,MAAM;IACJC,KAAK;IACLC,WAAW;IACXC,gBAAgB;IAChBC,UAAU;IACVC,KAAK;IACLC,UAAU;AACVC,IAAAA,QAAQ,GAAG,eAAe;AAC1BC,IAAAA,KAAK,EAAEC,UAAU;IACjBC,gBAAgB;IAChBC,OAAO;AACPC,IAAAA,YAAAA;AACF,GAAC,GAAGZ,KAAK,CAAA;AAET,EAAA,MAAMQ,KAAK,GAAGK,QAAQ,CAACJ,UAAU,CAAC,CAAA;;AAElC;AACA,EAAA,MAAMK,KAAK,GAAG;IACZb,KAAK;IACLG,UAAU,EAAEA,UAAU,IAAI,KAAK;IAC/BI,KAAK;IACLE,gBAAgB;AAChBC,IAAAA,OAAAA;GACD,CAAA;AAED,EAAA,oBACEI,KAAA,CAAAC,aAAA,CAACC,aAAa,EAAA;AAACC,IAAAA,KAAK,EAAE;AAAEV,MAAAA,KAAAA;AAAM,KAAA;AAAE,GAAA,eAC9BO,KAAA,CAAAC,aAAA,CAACG,gBAAgB,EAAA;AAACC,IAAAA,SAAS,EAAC,eAAe;AAACC,IAAAA,QAAQ,EAAC,MAAM;AAACC,IAAAA,WAAW,EAAE,KAAA;AAAM,GAAA,eAC7EP,KAAA,CAAAC,aAAA,CAACO,iBAAiB,CAACC,QAAQ,EAAA;AAACN,IAAAA,KAAK,EAAEJ,KAAAA;AAAM,GAAA,eACvCC,KAAA,CAAAC,aAAA,CAACS,OAAO,EAAAC,QAAA,CAAA;AAACC,IAAAA,aAAa,EAAC,QAAQ;AAACC,IAAAA,UAAU,EAAC,YAAY;AAACC,IAAAA,GAAG,EAAC,KAAA;AAAK,GAAA,EAAKjB,YAAY,CAAA,EAC/EP,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,gBAAGU,KAAA,CAAAC,aAAA,CAACc,IAAI,EAAKxB,UAAU,EAAGD,KAAY,CAAC,GAAGA,KAAK,GAAGA,KAAK,GAAG,IAAI,eACjGU,KAAA,CAAAC,aAAA,CAACe,OAAO,EAAAL,QAAA,CAAA;AACNlB,IAAAA,KAAK,EAAEA,KAAM;AACbwB,IAAAA,mBAAmB,EAAE;AAAEC,MAAAA,OAAO,EAAE,mBAAmB;AAAEC,MAAAA,OAAO,EAAE,mBAAA;KAAsB;AACpFC,IAAAA,SAAS,EAAC,YAAY;AACtB5B,IAAAA,QAAQ,EAAEA,QAAAA;AAAS,GAAA,EACfP,KAAK,CACV,CAAC,EACDE,WAAW,IAAI,OAAOA,WAAW,KAAK,QAAQ,gBAC7Ca,KAAA,CAAAC,aAAA,CAACc,IAAI,EAAAJ,QAAA,CAAA;AACHlB,IAAAA,KAAK,EAAEA,KAAM;AACb4B,IAAAA,SAAS,EAAC,KAAK;AACfzB,IAAAA,OAAO,EAAC,SAAS;IACjBV,KAAK,EAAEO,KAAK,KAAK6B,KAAK,CAACC,KAAK,GAAG,WAAW,GAAG,OAAA;AAAQ,GAAA,EACjDnC,gBAAgB,CAAA,EAEnBD,WACG,CAAC,GACLA,WAAW,GACbA,WAAW,GACT,IACG,CACiB,CACZ,CACL,CAAC,CAAA;AAEpB,EAAC;AACDH,cAAc,CAACwC,SAAS,GAAGzC,SAAS,CAAA;AACpCC,cAAc,CAACyC,WAAW,GAAG3C,cAAc,CAAA;AAEpC,MAAM4C,UAAU,GAAGC,MAAM,CAACC,MAAM,CAAC5C,cAAc,EAAE;AACtD6C,EAAAA,OAAO,EAAEC,iBAAiB;AAC1BC,EAAAA,OAAO,EAAEC,iBAAAA;AACX,CAAC;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButtonContent.js","sources":["../../src/components/menu-button-content/MenuButtonContent.tsx"],"sourcesContent":["import React, { forwardRef, useContext } from 'react';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n getContainerProps,\n isComponent,\n partitionComponents,\n useTheme,\n} from '@redsift/design-system';\nimport { MenuButtonContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n StyledPopoverContent,\n useMergeRefs,\n usePopoverContext,\n} from '@redsift/popovers';\nimport classNames from 'classnames';\nimport { MenuButtonContentFooter } from '../menu-button-content-footer';\nimport { MenuButtonContentHeader } from '../menu-button-content-header';\nimport { MenuButtonContentMenu } from '../menu-button-content-menu';\n\nconst COMPONENT_NAME = 'MenuButtonContent';\nconst CLASSNAME = 'redsift-menu-button-content';\n\n/**\n * The MenuButtonContent component.\n */\nexport const BaseMenuButtonContent: Comp<MenuButtonContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y, hideInsteadOfClose } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const theme = useTheme();\n\n const [[header], [menu], [footer]] = partitionComponents(React.Children.toArray(children), [\n isComponent('MenuButtonContentHeader'),\n isComponent('MenuButtonContentMenu'),\n isComponent('MenuButtonContentFooter'),\n ]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen || hideInsteadOfClose ? (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n display: hideInsteadOfClose && !isOpen ? 'none' : 'flex',\n ...style,\n }}\n className={classNames(PopoverContent.className, BaseMenuButtonContent.className, className)}\n >\n {!header && !menu && !footer ? (\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n <MenuButtonContentMenu>{children}</MenuButtonContentMenu>\n </Flexbox>\n ) : (\n <Flexbox flexDirection=\"column\" gap=\"0px\" width=\"100%\" {...containerProps}>\n {header}\n {menu}\n {footer}\n </Flexbox>\n )}\n </StyledPopoverContent>\n ) : null}\n </FloatingPortal>\n );\n});\nBaseMenuButtonContent.className = CLASSNAME;\nBaseMenuButtonContent.displayName = COMPONENT_NAME;\n\nexport const MenuButtonContent = Object.assign(BaseMenuButtonContent, {\n Header: MenuButtonContentHeader,\n Menu: MenuButtonContentMenu,\n Footer: MenuButtonContentFooter,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseMenuButtonContent","forwardRef","props","ref","children","className","style","containerProps","getContainerProps","getFloatingProps","isOpen","refs","strategy","x","y","hideInsteadOfClose","usePopoverContext","popoverRef","useMergeRefs","setFloating","appContainerState","useContext","AppContainerContext","theme","useTheme","header","menu","footer","partitionComponents","React","Children","toArray","isComponent","createElement","FloatingPortal","root","appContainerRef","current","StyledPopoverContent","_extends","$theme","_objectSpread","position","top","left","display","classNames","PopoverContent","Flexbox","flexDirection","gap","width","MenuButtonContentMenu","displayName","MenuButtonContent","Object","assign","Header","MenuButtonContentHeader","Menu","Footer","MenuButtonContentFooter"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButtonContentFooter.js","sources":["../../src/components/menu-button-content-footer/styles.ts","../../src/components/menu-button-content-footer/MenuButtonContentFooter.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledMenuButtonContentFooterProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledMenuButtonContentFooter = styled.div<StyledMenuButtonContentFooterProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledMenuButtonContentFooter } from './styles';\nimport { MenuButtonContentFooterProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButtonContentFooter';\nconst CLASSNAME = 'redsift-combobox-content-footer';\n\n/**\n * The MenuButtonContentFooter component.\n */\nexport const MenuButtonContentFooter: Comp<MenuButtonContentFooterProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledMenuButtonContentFooter\n {...forwardedProps}\n className={classNames(MenuButtonContentFooter.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledMenuButtonContentFooter>\n );\n});\nMenuButtonContentFooter.className = CLASSNAME;\nMenuButtonContentFooter.displayName = COMPONENT_NAME;\n"],"names":["StyledMenuButtonContentFooter","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","MenuButtonContentFooter","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","displayName"],"mappings":";;;;;;AAIA;AACA;AACA;AACO,MAAMA,6BAA6B,GAAGC,MAAM,CAACC,GAAwC,CAAA;AAC5F,EAAA,EAAIC,aAAc,CAAA;AAClB,CAAC;;;ACFD,MAAMC,cAAc,GAAG,yBAAyB,CAAA;AAChD,MAAMC,SAAS,GAAG,iCAAiC,CAAA;;AAEnD;AACA;AACA;AACO,MAAMC,uBAA2E,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACpH,MAAM;MAAEC,QAAQ;AAAEC,MAAAA,SAAAA;AAA6B,KAAC,GAAGH,KAAK;AAAxBI,IAAAA,cAAc,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA,CAAA,CAAA;EAExD,oBACEC,KAAA,CAAAC,aAAA,CAAChB,6BAA6B,EAAAiB,QAAA,KACxBL,cAAc,EAAA;IAClBD,SAAS,EAAEO,UAAU,CAACZ,uBAAuB,CAACK,SAAS,EAAEA,SAAS,CAAE;AACpEF,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EAErCC,QAC4B,CAAC,CAAA;AAEpC,CAAC,EAAC;AACFJ,uBAAuB,CAACK,SAAS,GAAGN,SAAS,CAAA;AAC7CC,uBAAuB,CAACa,WAAW,GAAGf,cAAc;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButtonContentHeader.js","sources":["../../src/components/menu-button-content-header/styles.ts","../../src/components/menu-button-content-header/MenuButtonContentHeader.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledMenuButtonContentHeaderProps } from './types';\nimport { baseContainer } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledMenuButtonContentHeader = styled.div<StyledMenuButtonContentHeaderProps>`\n ${baseContainer}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { StyledMenuButtonContentHeader } from './styles';\nimport { MenuButtonContentHeaderProps } from './types';\nimport { Comp } from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'MenuButtonContentHeader';\nconst CLASSNAME = 'redsift-combobox-content-header';\n\n/**\n * The MenuButtonContentHeader component.\n */\nexport const MenuButtonContentHeader: Comp<MenuButtonContentHeaderProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledMenuButtonContentHeader\n {...forwardedProps}\n className={classNames(MenuButtonContentHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledMenuButtonContentHeader>\n );\n});\nMenuButtonContentHeader.className = CLASSNAME;\nMenuButtonContentHeader.displayName = COMPONENT_NAME;\n"],"names":["StyledMenuButtonContentHeader","styled","div","baseContainer","COMPONENT_NAME","CLASSNAME","MenuButtonContentHeader","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","classNames","displayName"],"mappings":";;;;;;AAIA;AACA;AACA;AACO,MAAMA,6BAA6B,GAAGC,MAAM,CAACC,GAAwC,CAAA;AAC5F,EAAA,EAAIC,aAAc,CAAA;AAClB,CAAC;;;ACFD,MAAMC,cAAc,GAAG,yBAAyB,CAAA;AAChD,MAAMC,SAAS,GAAG,iCAAiC,CAAA;;AAEnD;AACA;AACA;AACO,MAAMC,uBAA2E,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACpH,MAAM;MAAEC,QAAQ;AAAEC,MAAAA,SAAAA;AAA6B,KAAC,GAAGH,KAAK;AAAxBI,IAAAA,cAAc,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA,CAAA,CAAA;EAExD,oBACEC,KAAA,CAAAC,aAAA,CAAChB,6BAA6B,EAAAiB,QAAA,KACxBL,cAAc,EAAA;IAClBD,SAAS,EAAEO,UAAU,CAACZ,uBAAuB,CAACK,SAAS,EAAEA,SAAS,CAAE;AACpEF,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EAErCC,QAC4B,CAAC,CAAA;AAEpC,CAAC,EAAC;AACFJ,uBAAuB,CAACK,SAAS,GAAGN,SAAS,CAAA;AAC7CC,uBAAuB,CAACa,WAAW,GAAGf,cAAc;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButtonContentMenu.js","sources":["../../src/components/menu-button-content-menu/MenuButtonContentMenu.tsx"],"sourcesContent":["import React, { forwardRef, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, Flexbox, FocusWithinGroupContext } from '@redsift/design-system';\nimport { MenuButtonContentMenuProps } from './types';\n\nconst COMPONENT_NAME = 'MenuButtonContentMenu';\nconst CLASSNAME = 'redsift-menu-button-content-menu';\n\n/**\n * The MenuButtonContentMenu component.\n */\nexport const MenuButtonContentMenu: Comp<MenuButtonContentMenuProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const focusContext = useContext(FocusWithinGroupContext);\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n }, [focusContext.state.delayedAction, focusContext.state.tabStops.length]);\n\n return (\n <Flexbox\n flexDirection=\"column\"\n gap=\"8px\"\n margin=\"8px 0px\"\n width=\"100%\"\n className={classNames(MenuButtonContentMenu.className, className)}\n role=\"menu\"\n as=\"ul\"\n {...forwardedProps}\n ref={ref}\n >\n {children}\n </Flexbox>\n );\n});\nMenuButtonContentMenu.className = CLASSNAME;\nMenuButtonContentMenu.displayName = COMPONENT_NAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","MenuButtonContentMenu","forwardRef","props","ref","children","className","forwardedProps","_objectWithoutProperties","_excluded","focusContext","useContext","FocusWithinGroupContext","useEffect","state","delayedAction","tabStops","length","dispatch","React","createElement","Flexbox","_extends","flexDirection","gap","margin","width","classNames","role","as","displayName"],"mappings":";;;;;;AAMA,MAAMA,cAAc,GAAG,uBAAuB,CAAA;AAC9C,MAAMC,SAAS,GAAG,kCAAkC,CAAA;;AAEpD;AACA;AACA;AACO,MAAMC,qBAAuE,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAChH,MAAM;MAAEC,QAAQ;AAAEC,MAAAA,SAAAA;AAA6B,KAAC,GAAGH,KAAK;AAAxBI,IAAAA,cAAc,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA,CAAA,CAAA;AAExD,EAAA,MAAMC,YAAY,GAAGC,UAAU,CAACC,uBAAuB,CAAC,CAAA;AAExDC,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAIH,YAAY,IAAIA,YAAY,CAACI,KAAK,CAACC,aAAa,IAAIL,YAAY,CAACI,KAAK,CAACE,QAAQ,CAACC,MAAM,EAAE;MAC1FP,YAAY,CAACQ,QAAQ,CAACR,YAAY,CAACI,KAAK,CAACC,aAAa,CAAC,CAAA;AACzD,KAAA;AACF,GAAC,EAAE,CAACL,YAAY,CAACI,KAAK,CAACC,aAAa,EAAEL,YAAY,CAACI,KAAK,CAACE,QAAQ,CAACC,MAAM,CAAC,CAAC,CAAA;AAE1E,EAAA,oBACEE,KAAA,CAAAC,aAAA,CAACC,OAAO,EAAAC,QAAA,CAAA;AACNC,IAAAA,aAAa,EAAC,QAAQ;AACtBC,IAAAA,GAAG,EAAC,KAAK;AACTC,IAAAA,MAAM,EAAC,SAAS;AAChBC,IAAAA,KAAK,EAAC,MAAM;IACZpB,SAAS,EAAEqB,UAAU,CAAC1B,qBAAqB,CAACK,SAAS,EAAEA,SAAS,CAAE;AAClEsB,IAAAA,IAAI,EAAC,MAAM;AACXC,IAAAA,EAAE,EAAC,IAAA;AAAI,GAAA,EACHtB,cAAc,EAAA;AAClBH,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,CAAA,EAERC,QACM,CAAC,CAAA;AAEd,CAAC,EAAC;AACFJ,qBAAqB,CAACK,SAAS,GAAGN,SAAS,CAAA;AAC3CC,qBAAqB,CAAC6B,WAAW,GAAG/B,cAAc;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButtonTrigger.js","sources":["../../src/components/menu-button/context.ts","../../src/components/menu-button-trigger/MenuButtonTrigger.tsx"],"sourcesContent":["import React from 'react';\nimport { MenuButtonState } from './types';\n\nexport const MenuButtonContext = React.createContext<MenuButtonState | null>(null);\n","import React, { MouseEvent, ReactElement, forwardRef, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { MenuButtonTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { MenuButtonContext } from '../menu-button/context';\n\nconst COMPONENT_NAME = 'MenuButtonTrigger';\nconst CLASSNAME = 'redsift-menu-button-trigger';\n\n/**\n * The MenuButtonTrigger component.\n */\nexport const MenuButtonTrigger: Comp<MenuButtonTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const menuButtonContext = useContext(MenuButtonContext);\n const theme = useTheme();\n\n const renderedChildren = typeof children === 'function' ? children({ isOpen }) : children;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape' || code === 'Tab') {\n if (isOpen) {\n handleOpen(false);\n }\n } else if (code === 'ArrowDown') {\n if (!isOpen) {\n handleOpen(true);\n }\n if (focusContext.state.selectedId !== null) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.ArrowDown,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n }\n event.preventDefault();\n event.stopPropagation();\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 event.stopPropagation();\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 event.stopPropagation();\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 event.stopPropagation();\n } else if (code === 'Enter') {\n if (isOpen && focusContext.state.selectedId) {\n document.getElementById(focusContext.state.selectedId)?.click();\n document.getElementById(focusContext.state.selectedId)?.getElementsByTagName('a')?.[0]?.click();\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n if (isOpen) {\n handleOpen(false);\n } else {\n handleOpen(true);\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n };\n\n if (isComponent('Button')(renderedChildren) || isComponent('IconButton')(renderedChildren)) {\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n theme,\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n className: classNames((renderedChildren as ReactElement).props.className, menuButtonContext?.triggerClassName),\n color: menuButtonContext?.color ?? (renderedChildren as ReactElement).props.color,\n isActive: isOpen,\n isDisabled: menuButtonContext?.isDisabled,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n role: 'button',\n variant: menuButtonContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n });\n }\n\n return <>{renderedChildren}</>;\n});\nMenuButtonTrigger.className = CLASSNAME;\nMenuButtonTrigger.displayName = COMPONENT_NAME;\n"],"names":["MenuButtonContext","React","createContext","COMPONENT_NAME","CLASSNAME","MenuButtonTrigger","forwardRef","props","ref","children","getReferenceProps","isOpen","handleOpen","refs","usePopoverContext","childrenRef","triggerRef","useMergeRefs","setReference","focusContext","useContext","FocusWithinGroupContext","menuButtonContext","theme","useTheme","renderedChildren","handleKeyDown","event","code","state","selectedId","dispatch","type","FocusWithinGroupActionType","DELAY_ACTION","payload","KEY_DOWN_ON_LIST","key","EventKey","ArrowDown","ctrlKey","Home","preventDefault","stopPropagation","ArrowUp","End","_document$getElementB","_document$getElementB2","_document$getElementB3","_document$getElementB4","document","getElementById","click","getElementsByTagName","handleClick","_focusContext$state$a","_focusContext$state$a2","FOCUS_ON_LIST","id","activedescendant","isComponent","_props$children","_focusContext$state$a3","_menuButtonContext$co","_menuButtonContext$va","cloneElement","_objectSpread","undefined","className","classNames","triggerClassName","color","isActive","isDisabled","onClick","onKeyDown","role","variant","createElement","Fragment","displayName"],"mappings":"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"}
|
package/_internal/Select2.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select2.js","sources":["../../src/components/select/Select.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useReducer, useState } from 'react';\nimport { SelectContent } from '../select-content';\nimport { SelectTrigger } from '../select-trigger';\n\nimport { SelectProps } from './types';\nimport { Popover } from '@redsift/popovers';\nimport { SelectContext } from './context';\nimport {\n ListboxReducer,\n ListboxState,\n ListboxContextProps,\n FocusWithinGroup,\n ListboxContext,\n Flexbox,\n Text,\n ListboxActionType,\n Theme,\n useTheme,\n ThemeProvider,\n} from '@redsift/design-system';\n\nconst COMPONENT_NAME = 'Select';\nconst CLASSNAME = 'redsift-select';\n\n/**\n * The Select component.\n */\nexport const BaseSelect: React.FC<SelectProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n color,\n defaultValue,\n description,\n descriptionProps,\n isDisabled,\n isInvalid,\n minWidth = 'trigger-width',\n onChange,\n theme: propsTheme,\n triggerClassName,\n value,\n variant,\n wrapperProps,\n } = props;\n\n const theme = useTheme(propsTheme);\n\n const [selectedValue, setValue] = useState<string>(value || defaultValue || '');\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n /** Listbox context */\n const [listboxState, listboxDispatch] = useReducer(ListboxReducer, {\n isDisabled,\n selectedValues: [selectedValue],\n } as ListboxState);\n const listboxContext = useMemo<ListboxContextProps>(\n () => ({\n state: listboxState,\n dispatch: listboxDispatch,\n }),\n [listboxState]\n );\n useEffect(() => {\n listboxDispatch({\n type: ListboxActionType.UPDATE_OPTIONS,\n payload: {\n isDisabled: isDisabled || false,\n },\n });\n }, [isDisabled, theme]);\n\n /** Select context. */\n const state = {\n color,\n isDisabled: isDisabled || false,\n isInvalid: isInvalid || false,\n setValue(value: string) {\n if (isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n theme,\n triggerClassName,\n value: selectedValue,\n variant,\n };\n\n return (\n <ThemeProvider value={{ theme }}>\n <FocusWithinGroup focusType=\"virtual-focus\" focusOnInit={false}>\n <SelectContext.Provider value={state}>\n <ListboxContext.Provider value={listboxContext}>\n <Flexbox flexDirection=\"column\" alignItems=\"flex-start\" gap=\"0px\" {...wrapperProps}>\n <Popover\n theme={theme}\n overrideDisplayName={{ content: 'SelectContent', trigger: 'SelectTrigger' }}\n placement=\"bottom-start\"\n role=\"listbox\"\n minWidth={minWidth}\n {...props}\n />\n {description && typeof description === 'string' ? (\n <Text\n theme={theme}\n marginTop=\"8px\"\n variant=\"caption\"\n color={isInvalid ? 'error' : theme === Theme.light ? 'dark-grey' : 'white'}\n {...descriptionProps}\n >\n {description}\n </Text>\n ) : description ? (\n description\n ) : null}\n </Flexbox>\n </ListboxContext.Provider>\n </SelectContext.Provider>\n </FocusWithinGroup>\n </ThemeProvider>\n );\n};\nBaseSelect.className = CLASSNAME;\nBaseSelect.displayName = COMPONENT_NAME;\n\nexport const Select = Object.assign(BaseSelect, {\n Trigger: SelectTrigger,\n Content: SelectContent,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseSelect","props","color","defaultValue","description","descriptionProps","isDisabled","isInvalid","minWidth","onChange","theme","propsTheme","triggerClassName","value","variant","wrapperProps","useTheme","selectedValue","setValue","useState","useEffect","state","listboxState","listboxDispatch","useReducer","ListboxReducer","selectedValues","listboxContext","useMemo","dispatch","type","ListboxActionType","UPDATE_OPTIONS","payload","previousValue","React","createElement","ThemeProvider","FocusWithinGroup","focusType","focusOnInit","SelectContext","Provider","ListboxContext","Flexbox","_extends","flexDirection","alignItems","gap","Popover","overrideDisplayName","content","trigger","placement","role","Text","marginTop","Theme","light","className","displayName","Select","Object","assign","Trigger","SelectTrigger","Content","SelectContent"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectContent.js","sources":["../../src/components/select-content/SelectContent.tsx"],"sourcesContent":["import React, { forwardRef, useContext, useEffect } from 'react';\n\nimport {\n AppContainerContext,\n Comp,\n Flexbox,\n FocusWithinGroupContext,\n ListboxContext,\n getContainerProps,\n useTheme,\n} from '@redsift/design-system';\nimport { SelectContentProps } from './types';\nimport {\n FloatingPortal,\n PopoverContent,\n StyledPopoverContent,\n useMergeRefs,\n usePopoverContext,\n} from '@redsift/popovers';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'SelectContent';\nconst CLASSNAME = 'redsift-select-content';\n\n/**\n * The SelectContent component.\n */\nexport const SelectContent: Comp<SelectContentProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, style } = props;\n const containerProps = getContainerProps(props);\n\n const { getFloatingProps, isOpen, refs, strategy, x, y } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const appContainerState = useContext(AppContainerContext);\n const focusContext = useContext(FocusWithinGroupContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n useEffect(() => {\n if (focusContext && focusContext.state.delayedAction && focusContext.state.tabStops.length) {\n focusContext.dispatch(focusContext.state.delayedAction);\n }\n }, [focusContext.state.delayedAction, focusContext.state.tabStops.length]);\n\n return (\n <FloatingPortal root={appContainerState?.appContainerRef.current}>\n {isOpen && (\n <StyledPopoverContent\n $theme={theme!}\n ref={popoverRef}\n {...getFloatingProps(props)}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n ...style,\n }}\n className={classNames(PopoverContent.className, SelectContent.className, className)}\n aria-disabled={listboxState.state.isDisabled}\n >\n <Flexbox flexDirection=\"column\" gap=\"0px\" margin=\"8px 0px\" width=\"100%\" {...containerProps}>\n {children}\n </Flexbox>\n </StyledPopoverContent>\n )}\n </FloatingPortal>\n );\n});\nSelectContent.className = CLASSNAME;\nSelectContent.displayName = COMPONENT_NAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","SelectContent","forwardRef","props","ref","children","className","style","containerProps","getContainerProps","getFloatingProps","isOpen","refs","strategy","x","y","usePopoverContext","popoverRef","useMergeRefs","setFloating","appContainerState","useContext","AppContainerContext","focusContext","FocusWithinGroupContext","listboxState","ListboxContext","theme","useTheme","useEffect","state","delayedAction","tabStops","length","dispatch","React","createElement","FloatingPortal","root","appContainerRef","current","StyledPopoverContent","_extends","$theme","_objectSpread","position","top","left","classNames","PopoverContent","isDisabled","Flexbox","flexDirection","gap","margin","width","displayName"],"mappings":";;;;;;AAqBA,MAAMA,cAAc,GAAG,eAAe,CAAA;AACtC,MAAMC,SAAS,GAAG,wBAAwB,CAAA;;AAE1C;AACA;AACA;AACO,MAAMC,aAAuD,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAChG,MAAM;IAAEC,QAAQ;IAAEC,SAAS;AAAEC,IAAAA,KAAAA;AAAM,GAAC,GAAGJ,KAAK,CAAA;AAC5C,EAAA,MAAMK,cAAc,GAAGC,iBAAiB,CAACN,KAAK,CAAC,CAAA;EAE/C,MAAM;IAAEO,gBAAgB;IAAEC,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC,CAAC;AAAEC,IAAAA,CAAAA;GAAG,GAAGC,iBAAiB,EAAE,CAAA;EAC9E,MAAMC,UAAU,GAAGC,YAAY,CAAC,CAACN,IAAI,CAACO,WAAW,EAAEf,GAAG,CAAC,CAAC,CAAA;AAExD,EAAA,MAAMgB,iBAAiB,GAAGC,UAAU,CAACC,mBAAmB,CAAC,CAAA;AACzD,EAAA,MAAMC,YAAY,GAAGF,UAAU,CAACG,uBAAuB,CAAC,CAAA;AACxD,EAAA,MAAMC,YAAY,GAAGJ,UAAU,CAACK,cAAc,CAAC,CAAA;AAC/C,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AAExBC,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAIN,YAAY,IAAIA,YAAY,CAACO,KAAK,CAACC,aAAa,IAAIR,YAAY,CAACO,KAAK,CAACE,QAAQ,CAACC,MAAM,EAAE;MAC1FV,YAAY,CAACW,QAAQ,CAACX,YAAY,CAACO,KAAK,CAACC,aAAa,CAAC,CAAA;AACzD,KAAA;AACF,GAAC,EAAE,CAACR,YAAY,CAACO,KAAK,CAACC,aAAa,EAAER,YAAY,CAACO,KAAK,CAACE,QAAQ,CAACC,MAAM,CAAC,CAAC,CAAA;AAE1E,EAAA,oBACEE,KAAA,CAAAC,aAAA,CAACC,cAAc,EAAA;IAACC,IAAI,EAAElB,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,uBAAjBA,iBAAiB,CAAEmB,eAAe,CAACC,OAAAA;GACtD7B,EAAAA,MAAM,iBACLwB,KAAA,CAAAC,aAAA,CAACK,oBAAoB,EAAAC,QAAA,CAAA;AACnBC,IAAAA,MAAM,EAAEhB,KAAO;AACfvB,IAAAA,GAAG,EAAEa,UAAAA;GACDP,EAAAA,gBAAgB,CAACP,KAAK,CAAC,EAAA;AAC3BI,IAAAA,KAAK,EAAAqC,cAAA,CAAA;AACHC,MAAAA,QAAQ,EAAEhC,QAAQ;AAClBiC,MAAAA,GAAG,EAAE/B,CAAC,KAAA,IAAA,IAADA,CAAC,KAADA,KAAAA,CAAAA,GAAAA,CAAC,GAAI,CAAC;AACXgC,MAAAA,IAAI,EAAEjC,CAAC,KAAA,IAAA,IAADA,CAAC,KAAA,KAAA,CAAA,GAADA,CAAC,GAAI,CAAA;AAAC,KAAA,EACTP,KAAK,CACR;AACFD,IAAAA,SAAS,EAAE0C,UAAU,CAACC,cAAc,CAAC3C,SAAS,EAAEL,aAAa,CAACK,SAAS,EAAEA,SAAS,CAAE;IACpF,eAAemB,EAAAA,YAAY,CAACK,KAAK,CAACoB,UAAAA;AAAW,GAAA,CAAA,eAE7Cf,KAAA,CAAAC,aAAA,CAACe,OAAO,EAAAT,QAAA,CAAA;AAACU,IAAAA,aAAa,EAAC,QAAQ;AAACC,IAAAA,GAAG,EAAC,KAAK;AAACC,IAAAA,MAAM,EAAC,SAAS;AAACC,IAAAA,KAAK,EAAC,MAAA;AAAM,GAAA,EAAK/C,cAAc,CAAA,EACvFH,QACM,CACW,CAEV,CAAC,CAAA;AAErB,CAAC,EAAC;AACFJ,aAAa,CAACK,SAAS,GAAGN,SAAS,CAAA;AACnCC,aAAa,CAACuD,WAAW,GAAGzD,cAAc;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.js","sources":["../../src/components/select/context.ts","../../src/components/select-trigger/SelectTrigger.tsx"],"sourcesContent":["import React from 'react';\nimport { SelectState } from './types';\n\nexport const SelectContext = React.createContext<SelectState | null>(null);\n","import React, { MouseEvent, ReactElement, forwardRef, useContext, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n EventKey,\n FocusWithinGroupActionType,\n FocusWithinGroupContext,\n Icon,\n ListboxActionType,\n ListboxContext,\n isComponent,\n useTheme,\n} from '@redsift/design-system';\nimport { SelectTriggerProps } from './types';\nimport { useMergeRefs, usePopoverContext } from '@redsift/popovers';\nimport { SelectContext } from '../select/context';\nimport { mdiChevronDown } from '@redsift/icons';\n\nconst COMPONENT_NAME = 'SelectTrigger';\nconst CLASSNAME = 'redsift-select-trigger';\n\n/**\n * The SelectTrigger component.\n */\nexport const SelectTrigger: Comp<SelectTriggerProps, HTMLButtonElement> = forwardRef((props, ref) => {\n const { children, hideExpandButton } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n const focusContext = useContext(FocusWithinGroupContext);\n const selectContext = useContext(SelectContext);\n const listboxState = useContext(ListboxContext);\n const theme = useTheme();\n\n const renderedChildren =\n typeof children === 'function' ? children({ value: selectContext?.value, isOpen }) : children;\n\n const _inputRef = useRef<HTMLInputElement>();\n const inputRef = renderedChildren.props.inputRef ?? _inputRef;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const code = event.code;\n\n if (code === 'Escape') {\n if (isOpen) {\n handleOpen(false);\n }\n } else if (code === 'ArrowDown') {\n if (!isOpen) {\n handleOpen(true);\n }\n if (focusContext.state.selectedId !== null) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.ArrowDown,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else if (!focusContext.state.activedescendant?.[0]) {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n } else {\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n event.preventDefault();\n } else if (code === 'ArrowUp') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: focusContext.state.selectedId !== null ? EventKey.ArrowUp : EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Home') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.Home,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'End') {\n if (!isOpen) {\n handleOpen(true);\n }\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.KEY_DOWN_ON_LIST,\n payload: {\n key: EventKey.End,\n ctrlKey: event.ctrlKey,\n },\n },\n });\n event.preventDefault();\n } else if (code === 'Enter') {\n if (isOpen && focusContext.state.selectedId) {\n listboxState.dispatch({\n type: ListboxActionType.SET,\n payload: {\n values: [focusContext.state.activedescendant?.[1] ?? ''],\n activedescendant: focusContext.state.activedescendant,\n },\n });\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n event.preventDefault();\n if (isOpen) {\n handleOpen(false);\n } else {\n handleOpen(true);\n focusContext.dispatch({\n type: FocusWithinGroupActionType.DELAY_ACTION,\n payload: {\n type: FocusWithinGroupActionType.FOCUS_ON_LIST,\n payload: {\n id: focusContext.state.activedescendant?.[0] ?? '',\n },\n },\n });\n }\n };\n\n useEffect(() => {\n selectContext?.setValue(listboxState.state.selectedValues[0]);\n handleOpen(false);\n }, [listboxState.state]);\n\n if (isComponent('TextField')(renderedChildren)) {\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n className: classNames((renderedChildren as ReactElement).props.className, selectContext?.triggerClassName),\n color: selectContext?.color ?? (renderedChildren as ReactElement).props.color,\n inputRef,\n internal: (value?: string, isDisabled?: boolean, isInvalid?: boolean, isRequired?: boolean) => {\n return (\n <>\n {typeof (renderedChildren as ReactElement).props.internal === 'function'\n ? (renderedChildren as ReactElement).props.internal(value, isDisabled, isInvalid, isRequired)\n : (renderedChildren as ReactElement).props.internal}\n {hideExpandButton ? null : (\n <Icon\n color={isDisabled ? 'no-data' : 'question'}\n icon={mdiChevronDown}\n style={{\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n cursor: 'pointer',\n }}\n />\n )}\n </>\n );\n },\n isActive: isOpen,\n isDisabled: selectContext?.isDisabled,\n isReadOnly: true,\n theme,\n role: 'combobox',\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n style: { ...(renderedChildren as ReactElement).props.style, caretColor: 'transparent', cursor: 'pointer' },\n variant: selectContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n value: selectContext.value,\n }),\n inputProps: {\n ...(renderedChildren as ReactElement).props.inputProps,\n style: { ...(renderedChildren as ReactElement).props.inputProps?.style, cursor: 'pointer' },\n },\n });\n } else if (isComponent('Button')(renderedChildren)) {\n const children = (renderedChildren as ReactElement).props.children;\n const label = typeof children === 'string' ? children : children?.textContent;\n\n return React.cloneElement(renderedChildren, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(renderedChildren as ReactElement).props,\n children: (renderedChildren as ReactElement).props.children ?? '',\n }),\n 'aria-activedescendant': isOpen ? focusContext.state.activedescendant?.[0] : undefined,\n 'aria-label': (renderedChildren as ReactElement).props['aria-label'] ?? label,\n className: classNames((renderedChildren as ReactElement).props.className, selectContext?.triggerClassName),\n color: selectContext?.color ?? (renderedChildren as ReactElement).props.color,\n isActive: isOpen,\n isDisabled: selectContext?.isDisabled,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n rightIcon: (renderedChildren as ReactElement).props.rightIcon ?? mdiChevronDown,\n rightIconProps: (renderedChildren as ReactElement).props.rightIcon\n ? (renderedChildren as ReactElement).props.rightIconProps\n : (renderedChildren as ReactElement).props.rightIconProps ?? {\n style: {\n transition: 'transform 300ms ease-out',\n transform: `rotate(${isOpen ? '-180deg' : '0'})`,\n },\n },\n role: 'combobox',\n theme,\n variant: selectContext?.variant ?? (renderedChildren as ReactElement).props.variant,\n ...(selectContext?.isInvalid === true && { color: 'error' }),\n ...(typeof children !== 'function' &&\n selectContext?.value && {\n children: selectContext.value,\n }),\n });\n }\n\n return <>{renderedChildren}</>;\n});\nSelectTrigger.className = CLASSNAME;\nSelectTrigger.displayName = COMPONENT_NAME;\n"],"names":["SelectContext","React","createContext","COMPONENT_NAME","CLASSNAME","SelectTrigger","forwardRef","props","ref","_renderedChildren$pro","children","hideExpandButton","getReferenceProps","isOpen","handleOpen","refs","usePopoverContext","childrenRef","triggerRef","useMergeRefs","setReference","focusContext","useContext","FocusWithinGroupContext","selectContext","listboxState","ListboxContext","theme","useTheme","renderedChildren","value","_inputRef","useRef","inputRef","handleKeyDown","event","code","_focusContext$state$a","state","selectedId","dispatch","type","FocusWithinGroupActionType","DELAY_ACTION","payload","KEY_DOWN_ON_LIST","key","EventKey","ArrowDown","ctrlKey","activedescendant","Home","_focusContext$state$a2","_focusContext$state$a3","FOCUS_ON_LIST","id","preventDefault","ArrowUp","End","_focusContext$state$a4","_focusContext$state$a5","ListboxActionType","SET","values","handleClick","_focusContext$state$a6","_focusContext$state$a7","useEffect","setValue","selectedValues","isComponent","_props$children","_focusContext$state$a8","_selectContext$color","_selectContext$varian","_props$inputProps","cloneElement","_objectSpread","undefined","className","classNames","triggerClassName","color","internal","isDisabled","isInvalid","isRequired","createElement","Fragment","Icon","icon","mdiChevronDown","style","transition","transform","cursor","isActive","isReadOnly","role","onClick","onKeyDown","caretColor","variant","inputProps","_props$children2","_focusContext$state$a9","_props$ariaLabel","_selectContext$color2","_props$rightIcon","_props$rightIconProps","_selectContext$varian2","label","textContent","rightIcon","rightIconProps","displayName"],"mappings":"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"}
|
package/_internal/combobox.js
DELETED
package/_internal/item.js
DELETED
package/_internal/menu-button.js
DELETED
package/_internal/select.js
DELETED
package/_internal/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../src/components/combobox/context.ts","../../src/components/combobox/types.ts"],"sourcesContent":["import React from 'react';\nimport { ComboboxState } from './types';\n\nexport const ComboboxContext = React.createContext<ComboboxState | null>(null);\n","import { FlexboxProps, TextProps, Theme, ValueOf } from '@redsift/design-system';\nimport { PopoverProps } from '@redsift/popovers';\nimport { ReactElement, RefObject } from 'react';\n\n/**\n * Component variant.\n */\nexport const ComboboxSelectionMode = {\n single: 'single',\n multiple: 'multiple',\n} as const;\nexport type ComboboxSelectionMode = ValueOf<typeof ComboboxSelectionMode>;\n\nexport const ComboboxVariant = {\n options: 'options',\n suggestions: 'suggestions',\n} as const;\nexport type ComboboxVariant = ValueOf<typeof ComboboxVariant>;\n\nexport type ComboboxValue = string | string[];\n\n/**\n * Context props.\n */\nexport type ComboboxState = {\n /** Filtering parameters. */\n readonly filter?: {\n type: 'startsWith' | 'contains' | 'endsWith';\n caseSensitive?: boolean;\n };\n /** Whether the combobox is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the combobox is invalid or not. */\n readonly isInvalid: boolean;\n /** Sets the selected value. */\n setValue(value: ComboboxValue): void;\n /** Current selected value. */\n readonly value: ComboboxValue;\n /** Sets the input value. */\n setInputValue(inputValue: string): void;\n /** Current input value. */\n readonly inputValue: string;\n /** Whether the Combobox allow multiple selection or not. */\n selectionMode?: ComboboxSelectionMode;\n /** If 'options', the input field cannot have free text, the selection has to be made within the options. If 'suggestions', then choosing from the list isn't mandatory and the user can write free text within the input. */\n variant?: ComboboxVariant;\n /** Ref to the first item used to create values. */\n freeTextItemRef?: RefObject<HTMLDivElement>;\n /** Id of the first item used to create values. */\n freeTextItemId?: string;\n /** Class name to append to the trigger. */\n readonly triggerClassName?: string;\n /** Ref to the form, if any. */\n formRef?: RefObject<HTMLFormElement>;\n /** Ref to the submit button, if any. */\n submitRef?: RefObject<HTMLButtonElement>;\n};\n\n/**\n * Component props.\n */\nexport interface ComboboxProps extends PopoverProps {\n /** If 'options', the input field cannot have free text, the selection has to be made within the options. If 'suggestions', then choosing from the list isn't mandatory and the user can write free text within the input. */\n variant?: ComboboxVariant;\n /**\n * Default selected value.\n * Used for uncontrolled version.\n */\n defaultValue?: ComboboxValue;\n /** Description of the combobox. */\n description?: string | ReactElement;\n /** Additional description properties. */\n descriptionProps?: Omit<TextProps, 'ref'>;\n /** Filtering parameters. */\n filter?: {\n type: 'startsWith' | 'contains' | 'endsWith';\n caseSensitive?: boolean;\n };\n /** Ref to the form, if any. */\n formRef?: RefObject<HTMLFormElement>;\n /** Ref to the submit button, if any. */\n submitRef?: RefObject<HTMLButtonElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Maximum number of options displayed. Useful when too many options are displayed. */\n maxOptionsLength?: number;\n /** Method to handle selection change. */\n onChange?(value: ComboboxValue): void;\n /** Method to handle input change. */\n onInputChange?(value: string): void;\n /**\n * Currently selected value.\n * Used for controlled version.\n */\n value?: ComboboxValue;\n /** Input value. */\n inputValue?: string;\n /** Whether the Combobox allow multiple selection or not. */\n selectionMode?: ComboboxSelectionMode;\n /** Theme. */\n theme?: Theme;\n /** Class name to append to the trigger. */\n triggerClassName?: string;\n /** Props to forward to the wrapper. */\n wrapperProps?: Omit<FlexboxProps, 'ref'>;\n}\n\nexport type StyledComboboxProps = ComboboxProps;\n"],"names":["ComboboxContext","React","createContext","ComboboxSelectionMode","single","multiple","ComboboxVariant","options","suggestions"],"mappings":";;AAGO,MAAMA,eAAe,gBAAGC,KAAK,CAACC,aAAa,CAAuB,IAAI;;ACC7E;AACA;AACA;AACO,MAAMC,qBAAqB,GAAG;AACnCC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,QAAQ,EAAE,UAAA;AACZ,EAAU;AAGH,MAAMC,eAAe,GAAG;AAC7BC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,WAAW,EAAE,aAAA;AACf,EAAU;;AAKV;AACA;AACA;;AAmCA;AACA;AACA;;;;"}
|