@activecollab/components 2.0.201 → 2.0.203

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.js","names":["React","useCallback","useState","useEffect","useRef","useMemo","Fragment","RemoveScroll","classNames","StyledComboBoxCloseSmallIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","StyledComboBoxList","StyledChipWrapper","Portal","ConditionalWrapper","useIsFirstRender","useOnClickOutside","useForkRef","Autocomplete","isOptionGroup","Avatar","Checkbox","Chip","IconButton","InputAdornment","StyledInput","StyledInputWrapper","SpinnerLoader","MultiAvatar","Popper","RadioButton","OptionContent","Trigger","Typography","sizeMap","small","regular","big","biggest","ComboBox","_ref","_comboBoxRef$current2","_comboBoxRef$current3","options","selected","loading","loadingText","onChange","onInputChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","onDeselect","defaultValue","open","defaultOpen","onOpen","triggerMode","noResultText","emptyValue","prop","selectedName","value","map","v","find","q","id","name","setValue","focused","setFocused","handleOnChange","e","target","childNode","elementRef","handleRef","wrapperRef","chipWrapper","comboBoxRef","setOpen","isFirstRender","_comboBoxRef$current","current","contains","handleOnKeyDown","key","stopPropagation","_childNode$current","_childNode$current2","focus","blur","emptyAction","handleChange","selectedValue","handleOpen","handleRenderOption","option","props","createElement","imageUrl","image","color","textColor","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","startAdornment","_StyledAvatar","_extends","url","$_css","$_css2","undefined","Array","isArray","includes","newSelected","filter","item","showOnClose","className","label","backgroundColor","chipColor","autoSize","length","elements","total","forEach","isGrouped","push","groupedOptions","o","_index","hidden","splice","_StyledTypography","variant","optionItem","child","avatarSize","showXIcon","hasSelected","showMenu","hasOptions","valueExists","toString","isValueInOptions","some","_StyledStyledInputWrapper","$disabled","$size","$invalid","ref","onClick","_elementRef$current","click","$_css3","$_css4","_StyledStyledChipWrapper","$autoSize","$open","$_css5","onBlur","onFocus","onKeyDown","$mode","$loading","style","display","flex","alignSelf","width","_StyledTrigger","onMouseDown","wrapperClick","mode","wrapRef","endAdornment","disablePointerEvents","condition","wrap","children","anchorEl","placement","zIndex","clientWidth","strategy","noIsolation","allowPinchZoom","$width","$hide","inputEl","displayName","_styled","withConfig","componentId","p"],"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RemoveScroll } from \"react-remove-scroll\";\n\nimport classNames from \"classnames\";\nimport tw from \"twin.macro\";\n\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport { useIsFirstRender } from \"../../hooks/useIsFirstRender\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { IconButton } from \"../IconButton\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { InputMode, InputSize } from \"../Input/types\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { MultiAvatar } from \"../MultiAvatar\";\nimport { Popper } from \"../Popper\";\nimport { RadioButton } from \"../RadioButton\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\n\nconst sizeMap = {\n small: 18,\n regular: 24,\n big: 30,\n biggest: 40,\n};\n\nexport interface IComboBoxProps\n extends Omit<\n IAutocompleteProps,\n \"handleChange\" | \"inputEl\" | \"clearInputOnSelect\"\n > {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** onInputChange callback */\n onInputChange?: (text: string) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n /** scrollWrapper */\n scrollWrapper?: boolean;\n /** onClose (f) will be called when Popper closes */\n onClose?: () => void;\n /** onOpen (f) will be called when Popper opens */\n onOpen?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n onDeselect?: () => void;\n open?: boolean;\n triggerMode?: InputMode;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n onInputChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n scrollWrapper,\n onClose,\n onClear,\n onDeselect,\n defaultValue,\n open: defaultOpen = false,\n onOpen,\n triggerMode,\n noResultText,\n emptyValue,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const [focused, setFocused] = useState<boolean>(false);\n const handleOnChange = useCallback(\n (e) => {\n setValue(e.target.value);\n onInputChange?.(e.target.value);\n },\n [onInputChange]\n );\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(childNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(defaultOpen);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n\n if (e.key === \"Enter\" && !open && focused) {\n setOpen(true);\n onOpen?.();\n }\n },\n [focused, onOpen, open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.current?.focus();\n !open && childNode?.current?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (open !== defaultOpen) setOpen(defaultOpen);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultOpen]);\n\n useEffect(() => {\n if (!open && !isFirstRender && !focused) {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }\n }, [focused, isFirstRender, onClose, open]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (selectedValue !== selected && typeof onChange === \"function\") {\n onChange(selectedValue);\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange, selected]\n );\n\n const handleOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n onOpen?.();\n }\n }, [disabled, onOpen]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (typeof onDeselect === \"function\") {\n onDeselect();\n } else if (type === \"multiple\") {\n onChange?.([]);\n } else {\n onChange?.(\"\");\n }\n\n onClear?.();\n setOpen(false);\n },\n [type, onChange, onClear, onDeselect]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n setFocused(!focused);\n }, [focused, selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<AvatarProps> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const startAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n const onClose = (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter((item) => item !== option.id);\n onChange(newSelected);\n }\n }\n };\n\n let showOnClose = true;\n if (disabled) {\n showOnClose = false;\n }\n if (option.color) {\n showOnClose = false;\n }\n\n return (\n <Chip\n className=\"c-combo-box-chip\"\n startAdornment={startAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color={option.chipColor}\n onClose={showOnClose ? onClose : undefined}\n size={size}\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n if (type === \"single\" && selected) {\n let optionItem;\n options.forEach((option) => {\n if (isOptionGroup(option)) {\n optionItem = option.options.find((child) => child.id === selected);\n } else if (!optionItem && option.id === selected) {\n optionItem = option;\n }\n });\n if (optionItem && optionItem.image) {\n const avatarSize = size === \"big\" ? 22 : size === \"regular\" ? 18 : 14;\n if (Array.isArray(optionItem.image)) {\n return <MultiAvatar url={optionItem.image} size={avatarSize} />;\n }\n return <Avatar url={optionItem.image} size={avatarSize} />;\n }\n }\n\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n const showMenu = useMemo(() => {\n const hasOptions = options?.length > 0;\n\n const valueExists = (option: IOptionItemProps) =>\n option.id.toString().includes(value) || option.name.includes(value);\n\n const isValueInOptions = options?.some((option) =>\n isOptionGroup(option)\n ? option.options.some(valueExists)\n : valueExists(option)\n );\n\n return (\n (hasOptions && (!!defaultValue || !value)) ||\n (value && (isValueInOptions || emptyValue || noResultText))\n );\n }, [defaultValue, emptyValue, noResultText, options, value]);\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $disabled={disabled}\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n overflow-y: ${autoSize === \"auto\" && scrollWrapper\n ? \"scroll\"\n : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.click();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n css={`\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? sizeMap[size] * 3 + 8 + \"px\"\n : undefined};\n `}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={handleOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n $mode={triggerMode}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid=\"deselect-all\"\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n {showMenu && (\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n )}\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n wrapperClick={handleOpen}\n onFocus={() => {\n setFocused(!focused);\n handleOpen();\n }}\n onClick={handleOpen}\n mode={triggerMode}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n {showMenu && (\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n )}\n </InputAdornment>\n ) : null\n }\n />\n )}\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy=\"fixed\"\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList\n className=\"c-combo-box--list\"\n $width={comboBoxRef.current?.clientWidth}\n $hide={!showMenu}\n >\n <Autocomplete\n {...prop}\n emptyValue={emptyValue}\n noResultText={noResultText}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n defaultValue={defaultValue}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"ComboBox.js","names":["React","useCallback","useState","useEffect","useRef","useMemo","Fragment","RemoveScroll","classNames","StyledComboBoxCloseSmallIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","StyledComboBoxList","StyledChipWrapper","Portal","ConditionalWrapper","useIsFirstRender","useOnClickOutside","useForkRef","Autocomplete","isOptionGroup","Avatar","Checkbox","Chip","IconButton","InputAdornment","StyledInput","StyledInputWrapper","SpinnerLoader","MultiAvatar","Popper","RadioButton","OptionContent","Trigger","Typography","sizeMap","small","regular","big","biggest","ComboBox","_ref","_comboBoxRef$current2","_comboBoxRef$current3","options","selected","loading","loadingText","onChange","onInputChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","onDeselect","defaultValue","open","defaultOpen","onOpen","triggerMode","noResultText","emptyValue","prop","selectedName","value","map","v","find","q","id","name","setValue","focused","setFocused","handleOnChange","e","target","childNode","elementRef","handleRef","wrapperRef","chipWrapper","comboBoxRef","setOpen","isFirstRender","_comboBoxRef$current","current","contains","handleOnKeyDown","key","stopPropagation","_childNode$current","_childNode$current2","focus","blur","emptyAction","handleChange","selectedValue","handleOpen","handleRenderOption","option","props","createElement","imageUrl","image","color","textColor","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","startAdornment","_StyledAvatar","_extends","url","$_css","$_css2","undefined","Array","isArray","includes","newSelected","filter","item","showOnClose","className","label","backgroundColor","chipColor","autoSize","length","elements","total","forEach","isGrouped","push","groupedOptions","o","_index","hidden","splice","_StyledTypography","variant","optionItem","child","avatarSize","showXIcon","hasSelected","showMenu","hasOptions","valueExists","toString","isValueInOptions","some","_StyledStyledInputWrapper","$disabled","$size","$invalid","ref","$mode","onClick","_elementRef$current","click","$_css3","$_css4","_StyledStyledChipWrapper","$autoSize","$open","$_css5","onBlur","onFocus","onKeyDown","$loading","style","display","flex","alignSelf","width","_StyledTrigger","onMouseDown","wrapperClick","mode","wrapRef","endAdornment","disablePointerEvents","condition","wrap","children","anchorEl","placement","zIndex","clientWidth","strategy","noIsolation","allowPinchZoom","$width","$hide","inputEl","displayName","_styled","withConfig","componentId","p"],"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RemoveScroll } from \"react-remove-scroll\";\n\nimport classNames from \"classnames\";\nimport tw from \"twin.macro\";\n\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport { useIsFirstRender } from \"../../hooks/useIsFirstRender\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { IconButton } from \"../IconButton\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { InputMode, InputSize } from \"../Input/types\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { MultiAvatar } from \"../MultiAvatar\";\nimport { Popper } from \"../Popper\";\nimport { RadioButton } from \"../RadioButton\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\n\nconst sizeMap = {\n small: 18,\n regular: 24,\n big: 30,\n biggest: 40,\n};\n\nexport interface IComboBoxProps\n extends Omit<\n IAutocompleteProps,\n \"handleChange\" | \"inputEl\" | \"clearInputOnSelect\"\n > {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** onInputChange callback */\n onInputChange?: (text: string) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n /** scrollWrapper */\n scrollWrapper?: boolean;\n /** onClose (f) will be called when Popper closes */\n onClose?: () => void;\n /** onOpen (f) will be called when Popper opens */\n onOpen?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n onDeselect?: () => void;\n open?: boolean;\n triggerMode?: InputMode;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n onInputChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n scrollWrapper,\n onClose,\n onClear,\n onDeselect,\n defaultValue,\n open: defaultOpen = false,\n onOpen,\n triggerMode,\n noResultText,\n emptyValue,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const [focused, setFocused] = useState<boolean>(false);\n const handleOnChange = useCallback(\n (e) => {\n setValue(e.target.value);\n onInputChange?.(e.target.value);\n },\n [onInputChange]\n );\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(childNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(defaultOpen);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n\n if (e.key === \"Enter\" && !open && focused) {\n setOpen(true);\n onOpen?.();\n }\n },\n [focused, onOpen, open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.current?.focus();\n !open && childNode?.current?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (open !== defaultOpen) setOpen(defaultOpen);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultOpen]);\n\n useEffect(() => {\n if (!open && !isFirstRender && !focused) {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }\n }, [focused, isFirstRender, onClose, open]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (selectedValue !== selected && typeof onChange === \"function\") {\n onChange(selectedValue);\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange, selected]\n );\n\n const handleOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n onOpen?.();\n }\n }, [disabled, onOpen]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (typeof onDeselect === \"function\") {\n onDeselect();\n } else if (type === \"multiple\") {\n onChange?.([]);\n } else {\n onChange?.(\"\");\n }\n\n onClear?.();\n setOpen(false);\n },\n [type, onChange, onClear, onDeselect]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n setFocused(!focused);\n }, [focused, selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<AvatarProps> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const startAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n const onClose = (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter((item) => item !== option.id);\n onChange(newSelected);\n }\n }\n };\n\n let showOnClose = true;\n if (disabled) {\n showOnClose = false;\n }\n if (option.color) {\n showOnClose = false;\n }\n\n return (\n <Chip\n className=\"c-combo-box-chip\"\n startAdornment={startAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color={option.chipColor}\n onClose={showOnClose ? onClose : undefined}\n size={size}\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n if (type === \"single\" && selected) {\n let optionItem;\n options.forEach((option) => {\n if (isOptionGroup(option)) {\n optionItem = option.options.find((child) => child.id === selected);\n } else if (!optionItem && option.id === selected) {\n optionItem = option;\n }\n });\n if (optionItem && optionItem.image) {\n const avatarSize = size === \"big\" ? 22 : size === \"regular\" ? 18 : 14;\n if (Array.isArray(optionItem.image)) {\n return <MultiAvatar url={optionItem.image} size={avatarSize} />;\n }\n return <Avatar url={optionItem.image} size={avatarSize} />;\n }\n }\n\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n const showMenu = useMemo(() => {\n const hasOptions = options?.length > 0;\n\n const valueExists = (option: IOptionItemProps) =>\n option.id.toString().includes(value) || option.name.includes(value);\n\n const isValueInOptions = options?.some((option) =>\n isOptionGroup(option)\n ? option.options.some(valueExists)\n : valueExists(option)\n );\n\n return (\n (hasOptions && (!!defaultValue || !value)) ||\n (value && (isValueInOptions || emptyValue || noResultText))\n );\n }, [defaultValue, emptyValue, noResultText, options, value]);\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $disabled={disabled}\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n $mode={triggerMode}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n overflow-y: ${autoSize === \"auto\" && scrollWrapper\n ? \"scroll\"\n : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.click();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n css={`\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? sizeMap[size] * 3 + 8 + \"px\"\n : undefined};\n `}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={handleOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n $mode={triggerMode}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid=\"deselect-all\"\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n {showMenu && (\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n )}\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n wrapperClick={handleOpen}\n onFocus={() => {\n setFocused(!focused);\n handleOpen();\n }}\n onClick={handleOpen}\n mode={triggerMode}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n {showMenu && (\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n )}\n </InputAdornment>\n ) : null\n }\n />\n )}\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy=\"fixed\"\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList\n className=\"c-combo-box--list\"\n $width={comboBoxRef.current?.clientWidth}\n $hide={!showMenu}\n >\n <Autocomplete\n {...prop}\n emptyValue={emptyValue}\n noResultText={noResultText}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n defaultValue={defaultValue}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"mappings":"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"}
@@ -175,7 +175,7 @@ export const SelectDateV2 = _ref => {
175
175
  disabledDaysBefore: disableDaysBefore,
176
176
  disabledDaysAfter: disabledDaysAfter,
177
177
  backgroundElementClass: backgroundElementClass,
178
- disabled: weekendIsSelectable ? [] : [0, 6],
178
+ disabled: weekendIsSelectable ? [] : weekends,
179
179
  popperTooltipClassName: popperTooltipClassName,
180
180
  popperTooltipStyle: popperTooltipStyle,
181
181
  open: defaultShowDatePicker,
@@ -199,7 +199,7 @@ export const SelectDateV2 = _ref => {
199
199
  disabledDaysAfter: disabledDaysAfter,
200
200
  popperTooltipClassName: popperTooltipClassName,
201
201
  popperTooltipStyle: popperTooltipStyle,
202
- disabled: weekendIsSelectable ? [] : [0, 6],
202
+ disabled: weekendIsSelectable ? [] : weekends,
203
203
  onSave: onSave,
204
204
  onChange: onChange,
205
205
  modifiers: modifiers,
@@ -1 +1 @@
1
- {"version":3,"file":"SelectDateV2.js","names":["React","useMemo","classnames","SelectDateTarget","StyledSelectDate","StyledSelectDateButton","formatDate","DatePickerV2","toMoment","isDayInRange","day","data","repeating","from","Date","getFullYear","getMonth","getDate","to","SelectDateV2","_ref","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalHeaderText","modalDiscardMessage","modalDiscardBtnText","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","required","dateRequired","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","dateFormat","defaultMonth","daysToModify","weekends","weekendLabel","nonWorkingDaysOfWeek","nonWorkingDaysOfWeekLabel","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","enableYearPicker","disableAnimations","disabledDaysAfter","onChange","labelText","formattedEndDate","formattedStartDate","isSame","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","matchedData","find","matched","title","weekend","isWeekend","includes","getDay","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","className","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","displayName"],"sources":["../../../../src/components/SelectDate/SelectDateV2.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePickerV2,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePickerV2\";\n\nconst isDayInRange = (day: Date, data: DaysToModify): boolean => {\n if (data.repeating) {\n const from = new Date(\n day.getFullYear(),\n data.from.getMonth(),\n data.from.getDate()\n );\n const to = new Date(\n day.getFullYear(),\n data.to.getMonth(),\n data.to.getDate()\n );\n return day >= from && day <= to;\n }\n\n return day >= data.from && day <= data.to;\n};\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nexport interface ISelectDateV2 {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Moment, modifiers: string[]) => void;\n /** Save changes callback */\n onSave?: (dates?: TimestampDateRange) => void;\n /** Changing dates callback */\n onChange?: (dates?: TimestampDateRange) => void;\n /** On cancel closes datepicker or opens discard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: TimestampDateRange;\n /** Set month */\n defaultMonth?: Moment;\n /** Set selection range */\n selectionMode?: ChangeMode;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Moment;\n /** Disable days after specified date */\n disabledDaysAfter?: Moment;\n /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDateV2: FC<ISelectDateV2> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n enableYearPicker,\n disableAnimations,\n disabledDaysAfter,\n onChange,\n}) => {\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else if (!selectedDays.from && !selectedDays.to) {\n return defaultLabelText;\n } else {\n const formattedEndDate = selectedDays.to\n ? formatDate(toMoment(selectedDays.to), dateFormat, longDateFormat)\n : \"\";\n const formattedStartDate = selectedDays.from\n ? formatDate(toMoment(selectedDays?.from), dateFormat, longDateFormat)\n : \"\";\n\n if (\n selectedDays.to &&\n selectedDays.from &&\n toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))\n ) {\n return formattedEndDate;\n }\n\n if (!selectedDays.to && selectedDays.from) {\n return formattedStartDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [selectedDays, dateFormat, defaultLabelText, longDateFormat]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n userAvailability: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Date) => {\n const isWeekend = weekends.includes(day.getDay());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Date) => {\n if (weekends.includes(day.getDay())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Date) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.getDay());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : null,\n };\n },\n day_disabled: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(currentDay, data)\n );\n\n return {\n matched: !!globalDayOff,\n title: null,\n };\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n nonWorkingDaysOfWeekLabel,\n weekendLabel,\n weekends,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <DatePickerV2\n target={renderTargetEl}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n onSave={onSave}\n onChange={onChange}\n onClose={onCancel}\n modifiers={modifiers}\n modalHeaderText={modalHeaderText}\n modalDiscardMessage={modalDiscardMessage}\n modalDiscardBtnText={modalDiscardBtnText}\n modalCancelBtnText={modalCancelBtnText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n backgroundElementClass={backgroundElementClass}\n disabled={weekendIsSelectable ? [] : [0, 6]}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n open={defaultShowDatePicker}\n onCalendarToggle={onToggleDatePicker}\n onDayClick={onDayClick}\n enableConfirmModal={mode === \"atomic\" && !dateRequired}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n />\n ) : (\n <DatePickerV2\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : [0, 6]}\n onSave={onSave}\n onChange={onChange}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n open\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectDateV2.js","names":["React","useMemo","classnames","SelectDateTarget","StyledSelectDate","StyledSelectDateButton","formatDate","DatePickerV2","toMoment","isDayInRange","day","data","repeating","from","Date","getFullYear","getMonth","getDate","to","SelectDateV2","_ref","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalHeaderText","modalDiscardMessage","modalDiscardBtnText","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","required","dateRequired","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","dateFormat","defaultMonth","daysToModify","weekends","weekendLabel","nonWorkingDaysOfWeek","nonWorkingDaysOfWeekLabel","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","enableYearPicker","disableAnimations","disabledDaysAfter","onChange","labelText","formattedEndDate","formattedStartDate","isSame","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","matchedData","find","matched","title","weekend","isWeekend","includes","getDay","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","className","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","displayName"],"sources":["../../../../src/components/SelectDate/SelectDateV2.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePickerV2,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePickerV2\";\n\nconst isDayInRange = (day: Date, data: DaysToModify): boolean => {\n if (data.repeating) {\n const from = new Date(\n day.getFullYear(),\n data.from.getMonth(),\n data.from.getDate()\n );\n const to = new Date(\n day.getFullYear(),\n data.to.getMonth(),\n data.to.getDate()\n );\n return day >= from && day <= to;\n }\n\n return day >= data.from && day <= data.to;\n};\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nexport interface ISelectDateV2 {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Moment, modifiers: string[]) => void;\n /** Save changes callback */\n onSave?: (dates?: TimestampDateRange) => void;\n /** Changing dates callback */\n onChange?: (dates?: TimestampDateRange) => void;\n /** On cancel closes datepicker or opens discard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: TimestampDateRange;\n /** Set month */\n defaultMonth?: Moment;\n /** Set selection range */\n selectionMode?: ChangeMode;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Moment;\n /** Disable days after specified date */\n disabledDaysAfter?: Moment;\n /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDateV2: FC<ISelectDateV2> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n enableYearPicker,\n disableAnimations,\n disabledDaysAfter,\n onChange,\n}) => {\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else if (!selectedDays.from && !selectedDays.to) {\n return defaultLabelText;\n } else {\n const formattedEndDate = selectedDays.to\n ? formatDate(toMoment(selectedDays.to), dateFormat, longDateFormat)\n : \"\";\n const formattedStartDate = selectedDays.from\n ? formatDate(toMoment(selectedDays?.from), dateFormat, longDateFormat)\n : \"\";\n\n if (\n selectedDays.to &&\n selectedDays.from &&\n toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))\n ) {\n return formattedEndDate;\n }\n\n if (!selectedDays.to && selectedDays.from) {\n return formattedStartDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [selectedDays, dateFormat, defaultLabelText, longDateFormat]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n userAvailability: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Date) => {\n const isWeekend = weekends.includes(day.getDay());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Date) => {\n if (weekends.includes(day.getDay())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Date) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.getDay());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : null,\n };\n },\n day_disabled: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(currentDay, data)\n );\n\n return {\n matched: !!globalDayOff,\n title: null,\n };\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n nonWorkingDaysOfWeekLabel,\n weekendLabel,\n weekends,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <DatePickerV2\n target={renderTargetEl}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n onSave={onSave}\n onChange={onChange}\n onClose={onCancel}\n modifiers={modifiers}\n modalHeaderText={modalHeaderText}\n modalDiscardMessage={modalDiscardMessage}\n modalDiscardBtnText={modalDiscardBtnText}\n modalCancelBtnText={modalCancelBtnText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n backgroundElementClass={backgroundElementClass}\n disabled={weekendIsSelectable ? [] : weekends}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n open={defaultShowDatePicker}\n onCalendarToggle={onToggleDatePicker}\n onDayClick={onDayClick}\n enableConfirmModal={mode === \"atomic\" && !dateRequired}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n />\n ) : (\n <DatePickerV2\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : weekends}\n onSave={onSave}\n onChange={onChange}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n open\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -17344,6 +17344,7 @@
17344
17344
  $size: size,
17345
17345
  $invalid: invalid,
17346
17346
  ref: comboBoxRef,
17347
+ $mode: triggerMode,
17347
17348
  className: classNames__default["default"]("c-combo-box-input-wrapper", inputWrapperClassName),
17348
17349
  onClick: function onClick() {
17349
17350
  var _elementRef$current;
@@ -19431,7 +19432,7 @@
19431
19432
  disabledDaysBefore: disableDaysBefore,
19432
19433
  disabledDaysAfter: disabledDaysAfter,
19433
19434
  backgroundElementClass: backgroundElementClass,
19434
- disabled: weekendIsSelectable ? [] : [0, 6],
19435
+ disabled: weekendIsSelectable ? [] : weekends,
19435
19436
  popperTooltipClassName: popperTooltipClassName,
19436
19437
  popperTooltipStyle: popperTooltipStyle,
19437
19438
  open: defaultShowDatePicker,
@@ -19455,7 +19456,7 @@
19455
19456
  disabledDaysAfter: disabledDaysAfter,
19456
19457
  popperTooltipClassName: popperTooltipClassName,
19457
19458
  popperTooltipStyle: popperTooltipStyle,
19458
- disabled: weekendIsSelectable ? [] : [0, 6],
19459
+ disabled: weekendIsSelectable ? [] : weekends,
19459
19460
  onSave: onSave,
19460
19461
  onChange: onChange,
19461
19462
  modifiers: modifiers,