@mantine/core 5.0.0-alpha.21 → 5.0.0-alpha.22

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.
Files changed (53) hide show
  1. package/cjs/components/FileInput/FileInput.js +1 -1
  2. package/cjs/components/FileInput/FileInput.js.map +1 -1
  3. package/cjs/components/MultiSelect/MultiSelect.js +5 -1
  4. package/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
  5. package/cjs/components/Pagination/Pagination.js +4 -5
  6. package/cjs/components/Pagination/Pagination.js.map +1 -1
  7. package/cjs/components/Pagination/Pagination.styles.js +13 -14
  8. package/cjs/components/Pagination/Pagination.styles.js.map +1 -1
  9. package/cjs/components/Select/Select.js +5 -1
  10. package/cjs/components/Select/Select.js.map +1 -1
  11. package/cjs/components/Stepper/Step/Step.js +9 -5
  12. package/cjs/components/Stepper/Step/Step.js.map +1 -1
  13. package/cjs/components/Stepper/Step/Step.styles.js +10 -15
  14. package/cjs/components/Stepper/Step/Step.styles.js.map +1 -1
  15. package/cjs/components/Timeline/TimelineItem/TimelineItem.js +6 -2
  16. package/cjs/components/Timeline/TimelineItem/TimelineItem.js.map +1 -1
  17. package/cjs/components/Timeline/TimelineItem/TimelineItem.styles.js +19 -23
  18. package/cjs/components/Timeline/TimelineItem/TimelineItem.styles.js.map +1 -1
  19. package/esm/components/FileInput/FileInput.js +1 -1
  20. package/esm/components/FileInput/FileInput.js.map +1 -1
  21. package/esm/components/MultiSelect/MultiSelect.js +5 -1
  22. package/esm/components/MultiSelect/MultiSelect.js.map +1 -1
  23. package/esm/components/Pagination/Pagination.js +4 -5
  24. package/esm/components/Pagination/Pagination.js.map +1 -1
  25. package/esm/components/Pagination/Pagination.styles.js +13 -14
  26. package/esm/components/Pagination/Pagination.styles.js.map +1 -1
  27. package/esm/components/Select/Select.js +5 -1
  28. package/esm/components/Select/Select.js.map +1 -1
  29. package/esm/components/Stepper/Step/Step.js +9 -5
  30. package/esm/components/Stepper/Step/Step.js.map +1 -1
  31. package/esm/components/Stepper/Step/Step.styles.js +10 -15
  32. package/esm/components/Stepper/Step/Step.styles.js.map +1 -1
  33. package/esm/components/Timeline/TimelineItem/TimelineItem.js +6 -2
  34. package/esm/components/Timeline/TimelineItem/TimelineItem.js.map +1 -1
  35. package/esm/components/Timeline/TimelineItem/TimelineItem.styles.js +19 -23
  36. package/esm/components/Timeline/TimelineItem/TimelineItem.styles.js.map +1 -1
  37. package/lib/components/FileInput/FileInput.d.ts +4 -4
  38. package/lib/components/FileInput/FileInput.d.ts.map +1 -1
  39. package/lib/components/MultiSelect/MultiSelect.d.ts +1 -1
  40. package/lib/components/MultiSelect/MultiSelect.d.ts.map +1 -1
  41. package/lib/components/Pagination/Pagination.d.ts.map +1 -1
  42. package/lib/components/Pagination/Pagination.styles.d.ts +2 -2
  43. package/lib/components/Pagination/Pagination.styles.d.ts.map +1 -1
  44. package/lib/components/Select/Select.d.ts +1 -1
  45. package/lib/components/Select/Select.d.ts.map +1 -1
  46. package/lib/components/Stepper/Step/Step.d.ts.map +1 -1
  47. package/lib/components/Stepper/Step/Step.styles.d.ts +2 -2
  48. package/lib/components/Stepper/Step/Step.styles.d.ts.map +1 -1
  49. package/lib/components/Stepper/Stepper.styles.d.ts +2 -2
  50. package/lib/components/Timeline/TimelineItem/TimelineItem.d.ts.map +1 -1
  51. package/lib/components/Timeline/TimelineItem/TimelineItem.styles.d.ts +2 -2
  52. package/lib/components/Timeline/TimelineItem/TimelineItem.styles.d.ts.map +1 -1
  53. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"MultiSelect.js","sources":["../../../src/components/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n useUncontrolled,\n useMergedRef,\n useDidUpdate,\n useScrollIntoView,\n useId,\n} from '@mantine/hooks';\nimport {\n DefaultProps,\n Selectors,\n extractSystemStyles,\n getDefaultZIndex,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { groupOptions } from '@mantine/utils';\nimport { Input } from '../Input';\nimport { DefaultValue, DefaultValueStylesNames } from './DefaultValue/DefaultValue';\nimport { DefaultItem } from '../Select/DefaultItem/DefaultItem';\nimport { filterData } from './filter-data/filter-data';\nimport { getSelectRightSectionProps } from '../Select/SelectRightSection/get-select-right-section-props';\nimport { SelectScrollArea } from '../Select/SelectScrollArea/SelectScrollArea';\nimport { SelectPopover } from '../Select/SelectPopover/SelectPopover';\nimport { SelectItem, BaseSelectProps, BaseSelectStylesNames } from '../Select/types';\nimport { SelectItems } from '../Select/SelectItems/SelectItems';\nimport useStyles from './MultiSelect.styles';\nimport { SelectSharedProps } from '../Select/Select';\n\nexport type MultiSelectStylesNames =\n | DefaultValueStylesNames\n | Exclude<\n Selectors<typeof useStyles>,\n 'searchInputEmpty' | 'searchInputInputHidden' | 'searchInputPointer'\n >\n | Exclude<BaseSelectStylesNames, 'selected'>;\n\nexport interface MultiSelectProps\n extends DefaultProps<MultiSelectStylesNames>,\n BaseSelectProps,\n Omit<SelectSharedProps<SelectItem, string[]>, 'filter'> {\n /** Component used to render values */\n valueComponent?: React.FC<any>;\n\n /** Maximum dropdown height in px */\n maxDropdownHeight?: number;\n\n /** Enable items searching */\n searchable?: boolean;\n\n /** Function based on which items in dropdown are filtered */\n filter?(value: string, selected: boolean, item: SelectItem): boolean;\n\n /** Clear search value when item is selected */\n clearSearchOnChange?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** Clear search field value on blur */\n clearSearchOnBlur?: boolean;\n\n /** Called each time search query changes */\n onSearchChange?(query: string): void;\n\n /** Allow creatable option */\n creatable?: boolean;\n\n /** Function to get create Label */\n getCreateLabel?(query: string): React.ReactNode;\n\n /** Function to determine if create label should be displayed */\n shouldCreate?(query: string, data: SelectItem[]): boolean;\n\n /** Called when create option is selected */\n onCreate?(query: string): SelectItem;\n\n /** Change dropdown component, can be used to add custom scrollbars */\n dropdownComponent?: any;\n\n /** Limit amount of items selected */\n maxSelectedValues?: number;\n\n /** Select highlighted item on blur */\n selectOnBlur?: boolean;\n\n /** Set the clear button tab index to disabled or default after input field */\n clearButtonTabIndex?: -1 | 0;\n}\n\nexport function defaultFilter(value: string, selected: boolean, item: SelectItem) {\n if (selected) {\n return false;\n }\n return item.label.toLowerCase().trim().includes(value.toLowerCase().trim());\n}\n\nexport function defaultShouldCreate(query: string, data: SelectItem[]) {\n return !!query && !data.some((item) => item.value.toLowerCase() === query.toLowerCase());\n}\n\nconst defaultProps: Partial<MultiSelectProps> = {\n size: 'sm',\n valueComponent: DefaultValue,\n itemComponent: DefaultItem,\n transition: 'pop-top-left',\n transitionDuration: 0,\n maxDropdownHeight: 220,\n shadow: 'sm',\n searchable: false,\n filter: defaultFilter,\n limit: Infinity,\n clearSearchOnChange: true,\n clearable: false,\n clearSearchOnBlur: false,\n disabled: false,\n initiallyOpened: false,\n creatable: false,\n shouldCreate: defaultShouldCreate,\n switchDirectionOnFlip: false,\n zIndex: getDefaultZIndex('popover'),\n selectOnBlur: false,\n clearButtonTabIndex: 0,\n positionDependencies: [],\n};\n\nexport const MultiSelect = forwardRef<HTMLInputElement, MultiSelectProps>((props, ref) => {\n const {\n className,\n style,\n required,\n label,\n description,\n size,\n error,\n classNames,\n styles,\n wrapperProps,\n value,\n defaultValue,\n data,\n onChange,\n valueComponent: Value,\n itemComponent,\n id,\n transition,\n transitionDuration,\n transitionTimingFunction,\n maxDropdownHeight,\n shadow,\n nothingFound,\n onFocus,\n onBlur,\n searchable,\n placeholder,\n filter,\n limit,\n clearSearchOnChange,\n clearable,\n clearSearchOnBlur,\n clearButtonLabel,\n variant,\n onSearchChange,\n disabled,\n initiallyOpened,\n radius,\n icon,\n rightSection,\n rightSectionWidth,\n creatable,\n getCreateLabel,\n shouldCreate,\n onCreate,\n sx,\n dropdownComponent,\n onDropdownClose,\n onDropdownOpen,\n maxSelectedValues,\n withinPortal,\n switchDirectionOnFlip,\n zIndex,\n selectOnBlur,\n name,\n dropdownPosition,\n errorProps,\n labelProps,\n descriptionProps,\n clearButtonTabIndex,\n form,\n positionDependencies,\n onKeyDown,\n unstyled,\n inputContainer,\n inputWrapperOrder,\n ...others\n } = useComponentDefaultProps('MultiSelect', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { size, invalid: !!error },\n { classNames, styles, unstyled, name: 'MultiSelect' }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const inputRef = useRef<HTMLInputElement>();\n const wrapperRef = useRef<HTMLDivElement>();\n const itemsRefs = useRef<Record<string, HTMLDivElement>>({});\n const uuid = useId(id);\n const [dropdownOpened, _setDropdownOpened] = useState(initiallyOpened);\n const [hovered, setHovered] = useState(-1);\n const [direction, setDirection] = useState<React.CSSProperties['flexDirection']>('column');\n const [searchValue, setSearchValue] = useState('');\n const [IMEOpen, setIMEOpen] = useState(false);\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const isCreatable = creatable && typeof getCreateLabel === 'function';\n let createLabel = null;\n\n const setDropdownOpened = (opened: boolean) => {\n _setDropdownOpened(opened);\n const handler = opened ? onDropdownOpen : onDropdownClose;\n typeof handler === 'function' && handler();\n };\n\n const handleSearchChange = (val: string) => {\n typeof onSearchChange === 'function' && onSearchChange(val);\n setSearchValue(val);\n };\n\n const formattedData = data.map((item) =>\n typeof item === 'string' ? { label: item, value: item } : item\n );\n\n const sortedData = groupOptions({ data: formattedData });\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: [],\n onChange,\n });\n\n const valuesOverflow = useRef(!!maxSelectedValues && maxSelectedValues < _value.length);\n\n const handleValueRemove = (_val: string) => {\n const newValue = _value.filter((val) => val !== _val);\n setValue(newValue);\n\n if (!!maxSelectedValues && newValue.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n handleSearchChange(event.currentTarget.value);\n setDropdownOpened(true);\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n searchable && setDropdownOpened(true);\n };\n\n const filteredData = filterData({\n data: sortedData,\n searchable,\n searchValue,\n limit,\n filter,\n value: _value,\n });\n\n const getNextIndex = (\n index: number,\n nextItem: (index: number) => number,\n compareFn: (index: number) => boolean\n ) => {\n let i = index;\n while (compareFn(i)) {\n i = nextItem(i);\n if (!filteredData[i].disabled) return i;\n }\n return index;\n };\n\n useDidUpdate(() => {\n setHovered(-1);\n }, [searchValue]);\n\n useDidUpdate(() => {\n if (!disabled && _value.length >= data.length) {\n setDropdownOpened(false);\n }\n\n if (!!maxSelectedValues && _value.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n\n if (!!maxSelectedValues && _value.length >= maxSelectedValues) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n }, [_value]);\n\n const handleItemSelect = (item: SelectItem) => {\n clearSearchOnChange && handleSearchChange('');\n\n if (_value.includes(item.value)) {\n handleValueRemove(item.value);\n } else {\n if (item.creatable && typeof onCreate === 'function') {\n const createdItem = onCreate(item.value);\n setValue([..._value, createdItem.value]);\n } else {\n setValue([..._value, item.value]);\n }\n\n if (_value.length === maxSelectedValues - 1) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n if (hovered === filteredData.length - 1) {\n setHovered(filteredData.length - 2);\n }\n }\n\n // if (item.creatable) {\n // typeof onCreate === 'function' && onCreate(item.value);\n // }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n if (selectOnBlur && filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n }\n clearSearchOnBlur && handleSearchChange('');\n setDropdownOpened(false);\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (IMEOpen) {\n return;\n }\n\n onKeyDown?.(event);\n\n if (event.key !== 'Backspace' && !!maxSelectedValues && valuesOverflow.current) {\n return;\n }\n\n const isColumn = direction === 'column';\n\n const handleNext = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index + 1,\n (index) => index < filteredData.length - 1\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n\n return nextIndex;\n });\n };\n\n const handlePrevious = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index - 1,\n (index) => index > 0\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'start' : 'end',\n });\n }\n\n return nextIndex;\n });\n };\n\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handlePrevious() : handleNext();\n\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handleNext() : handlePrevious();\n\n break;\n }\n\n case 'Enter': {\n event.preventDefault();\n\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n\n break;\n }\n\n case ' ': {\n if (!searchable) {\n event.preventDefault();\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n }\n\n break;\n }\n\n case 'Backspace': {\n if (_value.length > 0 && searchValue.length === 0) {\n setValue(_value.slice(0, -1));\n setDropdownOpened(true);\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n }\n\n break;\n }\n\n case 'Home': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const firstItemIndex = filteredData.findIndex((item) => !item.disabled);\n setHovered(firstItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'End': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const lastItemIndex = filteredData.map((item) => !!item.disabled).lastIndexOf(false);\n setHovered(lastItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'Escape': {\n setDropdownOpened(false);\n }\n }\n };\n\n const selectedItems = _value\n .map((val) => {\n let selectedItem = sortedData.find((item) => item.value === val && !item.disabled);\n if (!selectedItem && isCreatable) {\n selectedItem = {\n value: val,\n label: val,\n };\n }\n return selectedItem;\n })\n .filter((val) => !!val)\n .map((item) => (\n <Value\n {...item}\n disabled={disabled}\n className={classes.value}\n onRemove={(event: React.MouseEvent<HTMLButtonElement>) => {\n if (dropdownOpened) {\n event.preventDefault();\n event.stopPropagation();\n }\n handleValueRemove(item.value);\n setDropdownOpened(true);\n }}\n key={item.value}\n size={size}\n styles={styles}\n classNames={classNames}\n radius={radius}\n />\n ));\n\n const handleClear = () => {\n handleSearchChange('');\n setValue([]);\n inputRef.current?.focus();\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n };\n\n if (isCreatable && shouldCreate(searchValue, sortedData)) {\n createLabel = getCreateLabel(searchValue);\n filteredData.push({ label: searchValue, value: searchValue, creatable: true });\n }\n\n const shouldRenderDropdown =\n filteredData.length > 0 ? dropdownOpened : dropdownOpened && !!nothingFound;\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n description={description}\n size={size}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n __staticSelector=\"MultiSelect\"\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n unstyled={unstyled}\n {...systemStyles}\n {...wrapperProps}\n >\n <SelectPopover\n opened={shouldRenderDropdown}\n transition={transition}\n transitionDuration={transitionDuration}\n shadow=\"sm\"\n withinPortal={withinPortal}\n __staticSelector=\"MultiSelect\"\n onDirectionChange={setDirection}\n switchDirectionOnFlip={switchDirectionOnFlip}\n zIndex={zIndex}\n dropdownPosition={dropdownPosition}\n positionDependencies={positionDependencies}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n >\n <SelectPopover.Target>\n <div\n className={classes.wrapper}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-owns={dropdownOpened && shouldRenderDropdown ? `${uuid}-items` : null}\n aria-controls={uuid}\n aria-expanded={dropdownOpened}\n onMouseLeave={() => setHovered(-1)}\n tabIndex={-1}\n ref={wrapperRef}\n >\n <input type=\"hidden\" name={name} value={_value.join(',')} form={form} />\n\n <Input<'div'>\n __staticSelector=\"MultiSelect\"\n style={{ overflow: 'hidden' }}\n component=\"div\"\n multiline\n size={size}\n variant={variant}\n disabled={disabled}\n invalid={!!error}\n required={required}\n radius={radius}\n icon={icon}\n unstyled={unstyled}\n onMouseDown={(event) => {\n event.preventDefault();\n !disabled && !valuesOverflow.current && setDropdownOpened(!dropdownOpened);\n inputRef.current?.focus();\n }}\n classNames={{\n ...classNames,\n input: cx({ [classes.input]: !searchable }, classNames?.input),\n }}\n {...getSelectRightSectionProps({\n theme,\n rightSection,\n rightSectionWidth,\n styles,\n size,\n shouldClear: clearable && _value.length > 0,\n clearButtonLabel,\n onClear: handleClear,\n error,\n disabled,\n clearButtonTabIndex,\n })}\n >\n <div className={classes.values}>\n {selectedItems}\n\n <input\n ref={useMergedRef(ref, inputRef)}\n type=\"search\"\n id={uuid}\n className={cx(classes.searchInput, {\n [classes.searchInputPointer]: !searchable,\n [classes.searchInputInputHidden]:\n (!dropdownOpened && _value.length > 0) || (!searchable && _value.length > 0),\n [classes.searchInputEmpty]: _value.length === 0,\n })}\n onKeyDown={handleInputKeydown}\n value={searchValue}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n readOnly={!searchable || valuesOverflow.current}\n placeholder={_value.length === 0 ? placeholder : undefined}\n disabled={disabled}\n data-mantine-stop-propagation={dropdownOpened}\n autoComplete=\"off\"\n onCompositionStart={() => setIMEOpen(true)}\n onCompositionEnd={() => setIMEOpen(false)}\n {...rest}\n />\n </div>\n </Input>\n </div>\n </SelectPopover.Target>\n\n <SelectPopover.Dropdown\n component={dropdownComponent || SelectScrollArea}\n maxHeight={maxDropdownHeight}\n direction={direction}\n id={uuid}\n innerRef={scrollableRef}\n >\n <SelectItems\n data={filteredData}\n hovered={hovered}\n classNames={classNames}\n styles={styles}\n uuid={uuid}\n __staticSelector=\"MultiSelect\"\n onItemHover={setHovered}\n onItemSelect={handleItemSelect}\n itemsRefs={itemsRefs}\n itemComponent={itemComponent}\n size={size}\n nothingFound={nothingFound}\n creatable={creatable && !!createLabel}\n createLabel={createLabel}\n unstyled={unstyled}\n />\n </SelectPopover.Dropdown>\n </SelectPopover>\n </Input.Wrapper>\n );\n});\n\nMultiSelect.displayName = '@mantine/core/MultiSelect';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiSelect.js","sources":["../../../src/components/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n useUncontrolled,\n useMergedRef,\n useDidUpdate,\n useScrollIntoView,\n useId,\n} from '@mantine/hooks';\nimport {\n DefaultProps,\n Selectors,\n extractSystemStyles,\n getDefaultZIndex,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { groupOptions } from '@mantine/utils';\nimport { Input } from '../Input';\nimport { DefaultValue, DefaultValueStylesNames } from './DefaultValue/DefaultValue';\nimport { DefaultItem } from '../Select/DefaultItem/DefaultItem';\nimport { filterData } from './filter-data/filter-data';\nimport { getSelectRightSectionProps } from '../Select/SelectRightSection/get-select-right-section-props';\nimport { SelectScrollArea } from '../Select/SelectScrollArea/SelectScrollArea';\nimport { SelectPopover } from '../Select/SelectPopover/SelectPopover';\nimport { SelectItem, BaseSelectProps, BaseSelectStylesNames } from '../Select/types';\nimport { SelectItems } from '../Select/SelectItems/SelectItems';\nimport useStyles from './MultiSelect.styles';\nimport { SelectSharedProps } from '../Select/Select';\n\nexport type MultiSelectStylesNames =\n | DefaultValueStylesNames\n | Exclude<\n Selectors<typeof useStyles>,\n 'searchInputEmpty' | 'searchInputInputHidden' | 'searchInputPointer'\n >\n | Exclude<BaseSelectStylesNames, 'selected'>;\n\nexport interface MultiSelectProps\n extends DefaultProps<MultiSelectStylesNames>,\n BaseSelectProps,\n Omit<SelectSharedProps<SelectItem, string[]>, 'filter'> {\n /** Component used to render values */\n valueComponent?: React.FC<any>;\n\n /** Maximum dropdown height in px */\n maxDropdownHeight?: number;\n\n /** Enable items searching */\n searchable?: boolean;\n\n /** Function based on which items in dropdown are filtered */\n filter?(value: string, selected: boolean, item: SelectItem): boolean;\n\n /** Clear search value when item is selected */\n clearSearchOnChange?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** Clear search field value on blur */\n clearSearchOnBlur?: boolean;\n\n /** Called each time search query changes */\n onSearchChange?(query: string): void;\n\n /** Allow creatable option */\n creatable?: boolean;\n\n /** Function to get create Label */\n getCreateLabel?(query: string): React.ReactNode;\n\n /** Function to determine if create label should be displayed */\n shouldCreate?(query: string, data: SelectItem[]): boolean;\n\n /** Called when create option is selected */\n onCreate?(query: string): SelectItem | string;\n\n /** Change dropdown component, can be used to add custom scrollbars */\n dropdownComponent?: any;\n\n /** Limit amount of items selected */\n maxSelectedValues?: number;\n\n /** Select highlighted item on blur */\n selectOnBlur?: boolean;\n\n /** Set the clear button tab index to disabled or default after input field */\n clearButtonTabIndex?: -1 | 0;\n}\n\nexport function defaultFilter(value: string, selected: boolean, item: SelectItem) {\n if (selected) {\n return false;\n }\n return item.label.toLowerCase().trim().includes(value.toLowerCase().trim());\n}\n\nexport function defaultShouldCreate(query: string, data: SelectItem[]) {\n return !!query && !data.some((item) => item.value.toLowerCase() === query.toLowerCase());\n}\n\nconst defaultProps: Partial<MultiSelectProps> = {\n size: 'sm',\n valueComponent: DefaultValue,\n itemComponent: DefaultItem,\n transition: 'pop-top-left',\n transitionDuration: 0,\n maxDropdownHeight: 220,\n shadow: 'sm',\n searchable: false,\n filter: defaultFilter,\n limit: Infinity,\n clearSearchOnChange: true,\n clearable: false,\n clearSearchOnBlur: false,\n disabled: false,\n initiallyOpened: false,\n creatable: false,\n shouldCreate: defaultShouldCreate,\n switchDirectionOnFlip: false,\n zIndex: getDefaultZIndex('popover'),\n selectOnBlur: false,\n clearButtonTabIndex: 0,\n positionDependencies: [],\n};\n\nexport const MultiSelect = forwardRef<HTMLInputElement, MultiSelectProps>((props, ref) => {\n const {\n className,\n style,\n required,\n label,\n description,\n size,\n error,\n classNames,\n styles,\n wrapperProps,\n value,\n defaultValue,\n data,\n onChange,\n valueComponent: Value,\n itemComponent,\n id,\n transition,\n transitionDuration,\n transitionTimingFunction,\n maxDropdownHeight,\n shadow,\n nothingFound,\n onFocus,\n onBlur,\n searchable,\n placeholder,\n filter,\n limit,\n clearSearchOnChange,\n clearable,\n clearSearchOnBlur,\n clearButtonLabel,\n variant,\n onSearchChange,\n disabled,\n initiallyOpened,\n radius,\n icon,\n rightSection,\n rightSectionWidth,\n creatable,\n getCreateLabel,\n shouldCreate,\n onCreate,\n sx,\n dropdownComponent,\n onDropdownClose,\n onDropdownOpen,\n maxSelectedValues,\n withinPortal,\n switchDirectionOnFlip,\n zIndex,\n selectOnBlur,\n name,\n dropdownPosition,\n errorProps,\n labelProps,\n descriptionProps,\n clearButtonTabIndex,\n form,\n positionDependencies,\n onKeyDown,\n unstyled,\n inputContainer,\n inputWrapperOrder,\n ...others\n } = useComponentDefaultProps('MultiSelect', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { size, invalid: !!error },\n { classNames, styles, unstyled, name: 'MultiSelect' }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const inputRef = useRef<HTMLInputElement>();\n const wrapperRef = useRef<HTMLDivElement>();\n const itemsRefs = useRef<Record<string, HTMLDivElement>>({});\n const uuid = useId(id);\n const [dropdownOpened, _setDropdownOpened] = useState(initiallyOpened);\n const [hovered, setHovered] = useState(-1);\n const [direction, setDirection] = useState<React.CSSProperties['flexDirection']>('column');\n const [searchValue, setSearchValue] = useState('');\n const [IMEOpen, setIMEOpen] = useState(false);\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const isCreatable = creatable && typeof getCreateLabel === 'function';\n let createLabel = null;\n\n const setDropdownOpened = (opened: boolean) => {\n _setDropdownOpened(opened);\n const handler = opened ? onDropdownOpen : onDropdownClose;\n typeof handler === 'function' && handler();\n };\n\n const handleSearchChange = (val: string) => {\n typeof onSearchChange === 'function' && onSearchChange(val);\n setSearchValue(val);\n };\n\n const formattedData = data.map((item) =>\n typeof item === 'string' ? { label: item, value: item } : item\n );\n\n const sortedData = groupOptions({ data: formattedData });\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: [],\n onChange,\n });\n\n const valuesOverflow = useRef(!!maxSelectedValues && maxSelectedValues < _value.length);\n\n const handleValueRemove = (_val: string) => {\n const newValue = _value.filter((val) => val !== _val);\n setValue(newValue);\n\n if (!!maxSelectedValues && newValue.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n handleSearchChange(event.currentTarget.value);\n setDropdownOpened(true);\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n searchable && setDropdownOpened(true);\n };\n\n const filteredData = filterData({\n data: sortedData,\n searchable,\n searchValue,\n limit,\n filter,\n value: _value,\n });\n\n const getNextIndex = (\n index: number,\n nextItem: (index: number) => number,\n compareFn: (index: number) => boolean\n ) => {\n let i = index;\n while (compareFn(i)) {\n i = nextItem(i);\n if (!filteredData[i].disabled) return i;\n }\n return index;\n };\n\n useDidUpdate(() => {\n setHovered(-1);\n }, [searchValue]);\n\n useDidUpdate(() => {\n if (!disabled && _value.length >= data.length) {\n setDropdownOpened(false);\n }\n\n if (!!maxSelectedValues && _value.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n\n if (!!maxSelectedValues && _value.length >= maxSelectedValues) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n }, [_value]);\n\n const handleItemSelect = (item: SelectItem) => {\n clearSearchOnChange && handleSearchChange('');\n\n if (_value.includes(item.value)) {\n handleValueRemove(item.value);\n } else {\n if (item.creatable && typeof onCreate === 'function') {\n const createdItem = onCreate(item.value);\n if (typeof createdItem === 'string') {\n setValue([..._value, createdItem]);\n } else {\n setValue([..._value, createdItem.value]);\n }\n } else {\n setValue([..._value, item.value]);\n }\n\n if (_value.length === maxSelectedValues - 1) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n if (hovered === filteredData.length - 1) {\n setHovered(filteredData.length - 2);\n }\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n if (selectOnBlur && filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n }\n clearSearchOnBlur && handleSearchChange('');\n setDropdownOpened(false);\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (IMEOpen) {\n return;\n }\n\n onKeyDown?.(event);\n\n if (event.key !== 'Backspace' && !!maxSelectedValues && valuesOverflow.current) {\n return;\n }\n\n const isColumn = direction === 'column';\n\n const handleNext = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index + 1,\n (index) => index < filteredData.length - 1\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n\n return nextIndex;\n });\n };\n\n const handlePrevious = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index - 1,\n (index) => index > 0\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'start' : 'end',\n });\n }\n\n return nextIndex;\n });\n };\n\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handlePrevious() : handleNext();\n\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handleNext() : handlePrevious();\n\n break;\n }\n\n case 'Enter': {\n event.preventDefault();\n\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n\n break;\n }\n\n case ' ': {\n if (!searchable) {\n event.preventDefault();\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n }\n\n break;\n }\n\n case 'Backspace': {\n if (_value.length > 0 && searchValue.length === 0) {\n setValue(_value.slice(0, -1));\n setDropdownOpened(true);\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n }\n\n break;\n }\n\n case 'Home': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const firstItemIndex = filteredData.findIndex((item) => !item.disabled);\n setHovered(firstItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'End': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const lastItemIndex = filteredData.map((item) => !!item.disabled).lastIndexOf(false);\n setHovered(lastItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'Escape': {\n setDropdownOpened(false);\n }\n }\n };\n\n const selectedItems = _value\n .map((val) => {\n let selectedItem = sortedData.find((item) => item.value === val && !item.disabled);\n if (!selectedItem && isCreatable) {\n selectedItem = {\n value: val,\n label: val,\n };\n }\n return selectedItem;\n })\n .filter((val) => !!val)\n .map((item) => (\n <Value\n {...item}\n disabled={disabled}\n className={classes.value}\n onRemove={(event: React.MouseEvent<HTMLButtonElement>) => {\n if (dropdownOpened) {\n event.preventDefault();\n event.stopPropagation();\n }\n handleValueRemove(item.value);\n setDropdownOpened(true);\n }}\n key={item.value}\n size={size}\n styles={styles}\n classNames={classNames}\n radius={radius}\n />\n ));\n\n const handleClear = () => {\n handleSearchChange('');\n setValue([]);\n inputRef.current?.focus();\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n };\n\n if (isCreatable && shouldCreate(searchValue, sortedData)) {\n createLabel = getCreateLabel(searchValue);\n filteredData.push({ label: searchValue, value: searchValue, creatable: true });\n }\n\n const shouldRenderDropdown =\n filteredData.length > 0 ? dropdownOpened : dropdownOpened && !!nothingFound;\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n description={description}\n size={size}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n __staticSelector=\"MultiSelect\"\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n unstyled={unstyled}\n {...systemStyles}\n {...wrapperProps}\n >\n <SelectPopover\n opened={shouldRenderDropdown}\n transition={transition}\n transitionDuration={transitionDuration}\n shadow=\"sm\"\n withinPortal={withinPortal}\n __staticSelector=\"MultiSelect\"\n onDirectionChange={setDirection}\n switchDirectionOnFlip={switchDirectionOnFlip}\n zIndex={zIndex}\n dropdownPosition={dropdownPosition}\n positionDependencies={positionDependencies}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n >\n <SelectPopover.Target>\n <div\n className={classes.wrapper}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-owns={dropdownOpened && shouldRenderDropdown ? `${uuid}-items` : null}\n aria-controls={uuid}\n aria-expanded={dropdownOpened}\n onMouseLeave={() => setHovered(-1)}\n tabIndex={-1}\n ref={wrapperRef}\n >\n <input type=\"hidden\" name={name} value={_value.join(',')} form={form} />\n\n <Input<'div'>\n __staticSelector=\"MultiSelect\"\n style={{ overflow: 'hidden' }}\n component=\"div\"\n multiline\n size={size}\n variant={variant}\n disabled={disabled}\n invalid={!!error}\n required={required}\n radius={radius}\n icon={icon}\n unstyled={unstyled}\n onMouseDown={(event) => {\n event.preventDefault();\n !disabled && !valuesOverflow.current && setDropdownOpened(!dropdownOpened);\n inputRef.current?.focus();\n }}\n classNames={{\n ...classNames,\n input: cx({ [classes.input]: !searchable }, classNames?.input),\n }}\n {...getSelectRightSectionProps({\n theme,\n rightSection,\n rightSectionWidth,\n styles,\n size,\n shouldClear: clearable && _value.length > 0,\n clearButtonLabel,\n onClear: handleClear,\n error,\n disabled,\n clearButtonTabIndex,\n })}\n >\n <div className={classes.values}>\n {selectedItems}\n\n <input\n ref={useMergedRef(ref, inputRef)}\n type=\"search\"\n id={uuid}\n className={cx(classes.searchInput, {\n [classes.searchInputPointer]: !searchable,\n [classes.searchInputInputHidden]:\n (!dropdownOpened && _value.length > 0) || (!searchable && _value.length > 0),\n [classes.searchInputEmpty]: _value.length === 0,\n })}\n onKeyDown={handleInputKeydown}\n value={searchValue}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n readOnly={!searchable || valuesOverflow.current}\n placeholder={_value.length === 0 ? placeholder : undefined}\n disabled={disabled}\n data-mantine-stop-propagation={dropdownOpened}\n autoComplete=\"off\"\n onCompositionStart={() => setIMEOpen(true)}\n onCompositionEnd={() => setIMEOpen(false)}\n {...rest}\n />\n </div>\n </Input>\n </div>\n </SelectPopover.Target>\n\n <SelectPopover.Dropdown\n component={dropdownComponent || SelectScrollArea}\n maxHeight={maxDropdownHeight}\n direction={direction}\n id={uuid}\n innerRef={scrollableRef}\n >\n <SelectItems\n data={filteredData}\n hovered={hovered}\n classNames={classNames}\n styles={styles}\n uuid={uuid}\n __staticSelector=\"MultiSelect\"\n onItemHover={setHovered}\n onItemSelect={handleItemSelect}\n itemsRefs={itemsRefs}\n itemComponent={itemComponent}\n size={size}\n nothingFound={nothingFound}\n creatable={creatable && !!createLabel}\n createLabel={createLabel}\n unstyled={unstyled}\n />\n </SelectPopover.Dropdown>\n </SelectPopover>\n </Input.Wrapper>\n );\n});\n\nMultiSelect.displayName = '@mantine/core/MultiSelect';\n"],"names":[],"mappings":"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"}
@@ -83,7 +83,7 @@ const Pagination = forwardRef((props, ref) => {
83
83
  "sx",
84
84
  "unstyled"
85
85
  ]);
86
- const { classes, cx, theme } = useStyles({ color, size, radius }, { classNames, styles, unstyled, name: "Pagination" });
86
+ const { classes, theme } = useStyles({ color, size, radius }, { classNames, styles, unstyled, name: "Pagination" });
87
87
  const { range, setPage, next, previous, active, first, last } = usePagination({
88
88
  page,
89
89
  siblings,
@@ -99,10 +99,9 @@ const Pagination = forwardRef((props, ref) => {
99
99
  "aria-current": pageNumber === active ? "page" : void 0,
100
100
  "aria-label": typeof getItemAriaLabel === "function" ? getItemAriaLabel(pageNumber) : null,
101
101
  tabIndex: pageNumber === "dots" ? -1 : 0,
102
- className: cx(classes.item, {
103
- [classes.active]: pageNumber === active,
104
- [classes.dots]: pageNumber === "dots"
105
- }),
102
+ "data-dots": pageNumber === "dots" || void 0,
103
+ "data-active": pageNumber === active || void 0,
104
+ className: classes.item,
106
105
  onClick: pageNumber !== "dots" ? () => setPage(pageNumber) : void 0
107
106
  }));
108
107
  return /* @__PURE__ */ React.createElement(Group, __spreadValues({
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","sources":["../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { usePagination } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n Selectors,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { Group, GroupProps } from '../Group/Group';\nimport { DefaultItem, PaginationItemProps } from './DefaultItem/DefaultItem';\nimport useStyles, { PaginationStylesParams } from './Pagination.styles';\n\nexport type PaginationStylesNames = Selectors<typeof useStyles>;\n\nexport interface PaginationProps\n extends DefaultProps<PaginationStylesNames, PaginationStylesParams>,\n Omit<GroupProps, 'classNames' | 'styles' | 'onChange'> {\n /** Change item component */\n itemComponent?: React.FC<PaginationItemProps>;\n\n /** Active item color from theme, defaults to theme.primaryColor */\n color?: MantineColor;\n\n /** Active initial page for uncontrolled component */\n initialPage?: number;\n\n /** Controlled active page number */\n page?: number;\n\n /** Total amount of pages */\n total: number;\n\n /** Siblings amount on left/right side of selected page */\n siblings?: number;\n\n /** Amount of elements visible on left/right edges */\n boundaries?: number;\n\n /** Callback fired after change of each page */\n onChange?: (page: number) => void;\n\n /** Callback to control aria-labels */\n getItemAriaLabel?: (\n page: number | 'dots' | 'prev' | 'next' | 'first' | 'last'\n ) => string | undefined;\n\n /** Spacing between items from theme or number to set value in px, defaults to theme.spacing.xs / 2 */\n spacing?: MantineNumberSize;\n\n /** Predefined item size or number to set width and height in px */\n size?: MantineNumberSize;\n\n /** Predefined item radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Show/hide jump to start/end controls */\n withEdges?: boolean;\n\n /** Show/hide prev/next controls */\n withControls?: boolean;\n}\n\nconst defaultProps: Partial<PaginationProps> = {\n itemComponent: DefaultItem,\n initialPage: 1,\n siblings: 1,\n boundaries: 1,\n size: 'md',\n radius: 'sm',\n withEdges: false,\n withControls: true,\n};\n\nexport const Pagination = forwardRef<HTMLDivElement, PaginationProps>((props, ref) => {\n const {\n itemComponent: Item,\n classNames,\n styles,\n page,\n initialPage,\n color,\n total,\n siblings,\n boundaries,\n size,\n radius,\n onChange,\n getItemAriaLabel,\n spacing,\n withEdges,\n withControls,\n sx,\n unstyled,\n ...others\n } = useComponentDefaultProps('Pagination', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { color, size, radius },\n { classNames, styles, unstyled, name: 'Pagination' }\n );\n\n const { range, setPage, next, previous, active, first, last } = usePagination({\n page,\n siblings,\n total,\n onChange,\n initialPage,\n boundaries,\n });\n\n const items = range.map((pageNumber, index) => (\n <Item\n key={index}\n page={pageNumber}\n active={pageNumber === active}\n aria-current={pageNumber === active ? 'page' : undefined}\n aria-label={typeof getItemAriaLabel === 'function' ? getItemAriaLabel(pageNumber) : null}\n tabIndex={pageNumber === 'dots' ? -1 : 0}\n className={cx(classes.item, {\n [classes.active]: pageNumber === active,\n [classes.dots]: pageNumber === 'dots',\n })}\n onClick={pageNumber !== 'dots' ? () => setPage(pageNumber) : undefined}\n />\n ));\n\n return (\n <Group\n role=\"navigation\"\n spacing={spacing || theme.fn.size({ size, sizes: theme.spacing }) / 2}\n ref={ref}\n sx={sx}\n unstyled={unstyled}\n {...others}\n >\n {withEdges && (\n <Item\n page=\"first\"\n onClick={first}\n aria-label={getItemAriaLabel ? getItemAriaLabel('first') : undefined}\n aria-disabled={active === 1}\n className={classes.item}\n disabled={active === 1}\n />\n )}\n\n {withControls && (\n <Item\n page=\"prev\"\n onClick={previous}\n aria-label={getItemAriaLabel ? getItemAriaLabel('prev') : undefined}\n aria-disabled={active === 1}\n className={classes.item}\n disabled={active === 1}\n />\n )}\n\n {items}\n\n {withControls && (\n <Item\n page=\"next\"\n onClick={next}\n aria-label={getItemAriaLabel ? getItemAriaLabel('next') : undefined}\n aria-disabled={active === total}\n className={classes.item}\n disabled={active === total}\n />\n )}\n\n {withEdges && (\n <Item\n page=\"last\"\n onClick={last}\n aria-label={getItemAriaLabel ? getItemAriaLabel('last') : undefined}\n aria-disabled={active === total}\n className={classes.item}\n disabled={active === total}\n />\n )}\n </Group>\n );\n});\n\nPagination.displayName = '@mantine/core/Pagination';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.js","sources":["../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { usePagination } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n Selectors,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { Group, GroupProps } from '../Group/Group';\nimport { DefaultItem, PaginationItemProps } from './DefaultItem/DefaultItem';\nimport useStyles, { PaginationStylesParams } from './Pagination.styles';\n\nexport type PaginationStylesNames = Selectors<typeof useStyles>;\n\nexport interface PaginationProps\n extends DefaultProps<PaginationStylesNames, PaginationStylesParams>,\n Omit<GroupProps, 'classNames' | 'styles' | 'onChange'> {\n /** Change item component */\n itemComponent?: React.FC<PaginationItemProps>;\n\n /** Active item color from theme, defaults to theme.primaryColor */\n color?: MantineColor;\n\n /** Active initial page for uncontrolled component */\n initialPage?: number;\n\n /** Controlled active page number */\n page?: number;\n\n /** Total amount of pages */\n total: number;\n\n /** Siblings amount on left/right side of selected page */\n siblings?: number;\n\n /** Amount of elements visible on left/right edges */\n boundaries?: number;\n\n /** Callback fired after change of each page */\n onChange?: (page: number) => void;\n\n /** Callback to control aria-labels */\n getItemAriaLabel?: (\n page: number | 'dots' | 'prev' | 'next' | 'first' | 'last'\n ) => string | undefined;\n\n /** Spacing between items from theme or number to set value in px, defaults to theme.spacing.xs / 2 */\n spacing?: MantineNumberSize;\n\n /** Predefined item size or number to set width and height in px */\n size?: MantineNumberSize;\n\n /** Predefined item radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Show/hide jump to start/end controls */\n withEdges?: boolean;\n\n /** Show/hide prev/next controls */\n withControls?: boolean;\n}\n\nconst defaultProps: Partial<PaginationProps> = {\n itemComponent: DefaultItem,\n initialPage: 1,\n siblings: 1,\n boundaries: 1,\n size: 'md',\n radius: 'sm',\n withEdges: false,\n withControls: true,\n};\n\nexport const Pagination = forwardRef<HTMLDivElement, PaginationProps>((props, ref) => {\n const {\n itemComponent: Item,\n classNames,\n styles,\n page,\n initialPage,\n color,\n total,\n siblings,\n boundaries,\n size,\n radius,\n onChange,\n getItemAriaLabel,\n spacing,\n withEdges,\n withControls,\n sx,\n unstyled,\n ...others\n } = useComponentDefaultProps('Pagination', defaultProps, props);\n\n const { classes, theme } = useStyles(\n { color, size, radius },\n { classNames, styles, unstyled, name: 'Pagination' }\n );\n\n const { range, setPage, next, previous, active, first, last } = usePagination({\n page,\n siblings,\n total,\n onChange,\n initialPage,\n boundaries,\n });\n\n const items = range.map((pageNumber, index) => (\n <Item\n key={index}\n page={pageNumber}\n active={pageNumber === active}\n aria-current={pageNumber === active ? 'page' : undefined}\n aria-label={typeof getItemAriaLabel === 'function' ? getItemAriaLabel(pageNumber) : null}\n tabIndex={pageNumber === 'dots' ? -1 : 0}\n data-dots={pageNumber === 'dots' || undefined}\n data-active={pageNumber === active || undefined}\n className={classes.item}\n onClick={pageNumber !== 'dots' ? () => setPage(pageNumber) : undefined}\n />\n ));\n\n return (\n <Group\n role=\"navigation\"\n spacing={spacing || theme.fn.size({ size, sizes: theme.spacing }) / 2}\n ref={ref}\n sx={sx}\n unstyled={unstyled}\n {...others}\n >\n {withEdges && (\n <Item\n page=\"first\"\n onClick={first}\n aria-label={getItemAriaLabel ? getItemAriaLabel('first') : undefined}\n aria-disabled={active === 1}\n className={classes.item}\n disabled={active === 1}\n />\n )}\n\n {withControls && (\n <Item\n page=\"prev\"\n onClick={previous}\n aria-label={getItemAriaLabel ? getItemAriaLabel('prev') : undefined}\n aria-disabled={active === 1}\n className={classes.item}\n disabled={active === 1}\n />\n )}\n\n {items}\n\n {withControls && (\n <Item\n page=\"next\"\n onClick={next}\n aria-label={getItemAriaLabel ? getItemAriaLabel('next') : undefined}\n aria-disabled={active === total}\n className={classes.item}\n disabled={active === total}\n />\n )}\n\n {withEdges && (\n <Item\n page=\"last\"\n onClick={last}\n aria-label={getItemAriaLabel ? getItemAriaLabel('last') : undefined}\n aria-disabled={active === total}\n className={classes.item}\n disabled={active === total}\n />\n )}\n </Group>\n );\n});\n\nPagination.displayName = '@mantine/core/Pagination';\n"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ const sizes = {
26
26
  lg: 38,
27
27
  xl: 44
28
28
  };
29
- var useStyles = createStyles((theme, { size, radius, color }, getRef) => {
29
+ var useStyles = createStyles((theme, { size, radius, color }) => {
30
30
  const colors = theme.fn.variant({ color, variant: "filled" });
31
31
  return {
32
32
  item: __spreadProps(__spreadValues({}, theme.fn.focusStyles()), {
@@ -45,24 +45,23 @@ var useStyles = createStyles((theme, { size, radius, color }, getRef) => {
45
45
  borderRadius: theme.fn.radius(radius),
46
46
  lineHeight: 1,
47
47
  backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[6] : theme.white,
48
- [`&:active:not(:disabled):not(.${getRef("dots")})`]: theme.activeStyles,
48
+ "&:active:not(:disabled):not([data-dots])": theme.activeStyles,
49
49
  "&:disabled": {
50
50
  opacity: 0.6,
51
51
  cursor: "not-allowed",
52
52
  color: theme.colorScheme === "dark" ? theme.colors.dark[3] : theme.colors.gray[5]
53
+ },
54
+ "&[data-dots]": {
55
+ cursor: "default",
56
+ borderColor: "transparent",
57
+ backgroundColor: "transparent"
58
+ },
59
+ "&[data-active]": {
60
+ borderColor: "transparent",
61
+ color: colors.color,
62
+ backgroundColor: colors.background
53
63
  }
54
- }),
55
- active: {
56
- borderColor: "transparent",
57
- color: colors.color,
58
- backgroundColor: colors.background
59
- },
60
- dots: {
61
- ref: getRef("dots"),
62
- cursor: "default",
63
- borderColor: "transparent",
64
- backgroundColor: "transparent"
65
- }
64
+ })
66
65
  };
67
66
  });
68
67
 
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.styles.js","sources":["../../../src/components/Pagination/Pagination.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineColor } from '@mantine/styles';\n\nexport interface PaginationStylesParams {\n size: MantineNumberSize;\n radius: MantineNumberSize;\n color: MantineColor;\n}\n\nconst sizes = {\n xs: 22,\n sm: 26,\n md: 32,\n lg: 38,\n xl: 44,\n};\n\nexport default createStyles((theme, { size, radius, color }: PaginationStylesParams, getRef) => {\n const colors = theme.fn.variant({ color, variant: 'filled' });\n\n return {\n item: {\n ...theme.fn.focusStyles(),\n cursor: 'pointer',\n userSelect: 'none',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontWeight: 500,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n height: theme.fn.size({ size, sizes }),\n minWidth: theme.fn.size({ size, sizes }),\n padding: `0 ${theme.fn.size({ size, sizes: theme.spacing }) / 2}px`,\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n borderRadius: theme.fn.radius(radius),\n lineHeight: 1,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.white,\n\n [`&:active:not(:disabled):not(.${getRef('dots')})`]: theme.activeStyles,\n\n '&:disabled': {\n opacity: 0.6,\n cursor: 'not-allowed',\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n },\n\n active: {\n borderColor: 'transparent',\n color: colors.color,\n backgroundColor: colors.background,\n },\n\n dots: {\n ref: getRef('dots'),\n cursor: 'default',\n borderColor: 'transparent',\n backgroundColor: 'transparent',\n },\n };\n});\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.styles.js","sources":["../../../src/components/Pagination/Pagination.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineColor } from '@mantine/styles';\n\nexport interface PaginationStylesParams {\n size: MantineNumberSize;\n radius: MantineNumberSize;\n color: MantineColor;\n}\n\nconst sizes = {\n xs: 22,\n sm: 26,\n md: 32,\n lg: 38,\n xl: 44,\n};\n\nexport default createStyles((theme, { size, radius, color }: PaginationStylesParams) => {\n const colors = theme.fn.variant({ color, variant: 'filled' });\n\n return {\n item: {\n ...theme.fn.focusStyles(),\n cursor: 'pointer',\n userSelect: 'none',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontWeight: 500,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n height: theme.fn.size({ size, sizes }),\n minWidth: theme.fn.size({ size, sizes }),\n padding: `0 ${theme.fn.size({ size, sizes: theme.spacing }) / 2}px`,\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n borderRadius: theme.fn.radius(radius),\n lineHeight: 1,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.white,\n\n '&:active:not(:disabled):not([data-dots])': theme.activeStyles,\n\n '&:disabled': {\n opacity: 0.6,\n cursor: 'not-allowed',\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n\n '&[data-dots]': {\n cursor: 'default',\n borderColor: 'transparent',\n backgroundColor: 'transparent',\n },\n\n '&[data-active]': {\n borderColor: 'transparent',\n color: colors.color,\n backgroundColor: colors.background,\n },\n },\n };\n});\n"],"names":[],"mappings":"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"}
@@ -240,7 +240,11 @@ const Select = forwardRef((props, ref) => {
240
240
  } else {
241
241
  if (item.creatable && typeof onCreate === "function") {
242
242
  const createdItem = onCreate(item.value);
243
- handleChange(createdItem.value);
243
+ if (typeof createdItem === "string") {
244
+ handleChange(createdItem);
245
+ } else {
246
+ handleChange(createdItem.value);
247
+ }
244
248
  } else {
245
249
  handleChange(item.value);
246
250
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef, forwardRef } from 'react';\nimport { useUncontrolled, useMergedRef, useDidUpdate, useScrollIntoView } from '@mantine/hooks';\nimport { DefaultProps, MantineSize, MantineShadow, getDefaultZIndex } from '@mantine/styles';\nimport { groupOptions } from '@mantine/utils';\nimport { SelectScrollArea } from './SelectScrollArea/SelectScrollArea';\nimport { Input, useInputProps } from '../Input';\nimport { MantineTransition } from '../Transition';\nimport { DefaultItem } from './DefaultItem/DefaultItem';\nimport { getSelectRightSectionProps } from './SelectRightSection/get-select-right-section-props';\nimport { SelectItems } from './SelectItems/SelectItems';\nimport { SelectPopover } from './SelectPopover/SelectPopover';\nimport { SelectItem, BaseSelectStylesNames, BaseSelectProps } from './types';\nimport { filterData } from './filter-data/filter-data';\nimport useStyles from './Select.styles';\n\nexport interface SelectSharedProps<Item, Value> {\n /** Select data used to renderer items in dropdown */\n data: (string | Item)[];\n\n /** Controlled input value */\n value?: Value;\n\n /** Uncontrolled input defaultValue */\n defaultValue?: Value;\n\n /** Controlled input onChange handler */\n onChange?(value: Value): void;\n\n /** Function based on which items in dropdown are filtered */\n filter?(value: string, item: Item): boolean;\n\n /** Input size */\n size?: MantineSize;\n\n /** Dropdown body appear/disappear transition */\n transition?: MantineTransition;\n\n /** Dropdown body transition duration */\n transitionDuration?: number;\n\n /** Dropdown body transition timing function, defaults to theme.transitionTimingFunction */\n transitionTimingFunction?: string;\n\n /** Dropdown shadow from theme or any value to set box-shadow */\n shadow?: MantineShadow;\n\n /** Initial dropdown opened state */\n initiallyOpened?: boolean;\n\n /** Change item renderer */\n itemComponent?: React.FC<any>;\n\n /** Called when dropdown is opened */\n onDropdownOpen?(): void;\n\n /** Called when dropdown is closed */\n onDropdownClose?(): void;\n\n /** Whether to render the dropdown in a Portal */\n withinPortal?: boolean;\n\n /** Limit amount of items displayed at a time for searchable select */\n limit?: number;\n\n /** Nothing found label */\n nothingFound?: React.ReactNode;\n\n /** Dropdown z-index */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Dropdown positioning behavior */\n dropdownPosition?: 'bottom' | 'top' | 'flip';\n\n /** Whether to switch item order and keyboard navigation on dropdown position flip */\n switchDirectionOnFlip?: boolean;\n\n /** useEffect dependencies to force update dropdown position */\n positionDependencies?: any[];\n}\n\nexport interface SelectProps\n extends DefaultProps<BaseSelectStylesNames>,\n BaseSelectProps,\n SelectSharedProps<SelectItem, string | null> {\n /** Maximum dropdown height in px */\n maxDropdownHeight?: number;\n\n /** Set to true to enable search */\n searchable?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** Called each time search value changes */\n onSearchChange?(query: string): void;\n\n /** Allow creatable option */\n creatable?: boolean;\n\n /** Function to get create Label */\n getCreateLabel?(query: string): React.ReactNode;\n\n /** Function to determine if create label should be displayed */\n shouldCreate?(query: string, data: SelectItem[]): boolean;\n\n /** Called when create option is selected */\n onCreate?(query: string): SelectItem;\n\n /** Change dropdown component, can be used to add native scrollbars */\n dropdownComponent?: any;\n\n /** Select highlighted item on blur */\n selectOnBlur?: boolean;\n\n /** Allow deselecting items on click */\n allowDeselect?: boolean;\n\n /** Should data be filtered when search value exactly matches selected item */\n filterDataOnExactSearchMatch?: boolean;\n\n /** Set the clear button tab index to disabled or default after input field */\n clearButtonTabIndex?: -1 | 0;\n}\n\nexport function defaultFilter(value: string, item: SelectItem) {\n return item.label.toLowerCase().trim().includes(value.toLowerCase().trim());\n}\n\nexport function defaultShouldCreate(query: string, data: SelectItem[]) {\n return !!query && !data.some((item) => item.label.toLowerCase() === query.toLowerCase());\n}\n\nconst defaultProps: Partial<SelectProps> = {\n required: false,\n size: 'sm',\n shadow: 'sm',\n itemComponent: DefaultItem,\n transition: 'fade',\n transitionDuration: 0,\n initiallyOpened: false,\n filter: defaultFilter,\n maxDropdownHeight: 220,\n searchable: false,\n clearable: false,\n limit: Infinity,\n disabled: false,\n creatable: false,\n shouldCreate: defaultShouldCreate,\n selectOnBlur: false,\n switchDirectionOnFlip: false,\n filterDataOnExactSearchMatch: false,\n zIndex: getDefaultZIndex('popover'),\n clearButtonTabIndex: 0,\n positionDependencies: [],\n dropdownPosition: 'flip',\n};\n\nexport const Select = forwardRef<HTMLInputElement, SelectProps>((props, ref) => {\n const {\n inputProps,\n wrapperProps,\n shadow,\n data,\n value,\n defaultValue,\n onChange,\n itemComponent,\n onKeyDown,\n onBlur,\n onFocus,\n transition,\n transitionDuration,\n initiallyOpened,\n transitionTimingFunction,\n unstyled,\n classNames,\n styles,\n filter,\n maxDropdownHeight,\n searchable,\n clearable,\n nothingFound,\n clearButtonLabel,\n limit,\n disabled,\n onSearchChange,\n rightSection,\n rightSectionWidth,\n creatable,\n getCreateLabel,\n shouldCreate,\n selectOnBlur,\n onCreate,\n dropdownComponent,\n onDropdownClose,\n onDropdownOpen,\n withinPortal,\n switchDirectionOnFlip,\n zIndex,\n name,\n dropdownPosition,\n allowDeselect,\n placeholder,\n filterDataOnExactSearchMatch,\n clearButtonTabIndex,\n form,\n positionDependencies,\n ...others\n } = useInputProps('Select', defaultProps, props);\n\n const { classes, cx, theme } = useStyles();\n const [dropdownOpened, _setDropdownOpened] = useState(initiallyOpened);\n const [hovered, setHovered] = useState(-1);\n const inputRef = useRef<HTMLInputElement>();\n const itemsRefs = useRef<Record<string, HTMLDivElement>>({});\n const [direction, setDirection] = useState<React.CSSProperties['flexDirection']>('column');\n const isColumn = direction === 'column';\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const isDeselectable = allowDeselect === undefined ? clearable : allowDeselect;\n\n const setDropdownOpened = (opened: boolean) => {\n if (dropdownOpened !== opened) {\n _setDropdownOpened(opened);\n const handler = opened ? onDropdownOpen : onDropdownClose;\n typeof handler === 'function' && handler();\n }\n };\n\n const isCreatable = creatable && typeof getCreateLabel === 'function';\n let createLabel = null;\n\n const formattedData = data.map((item) =>\n typeof item === 'string' ? { label: item, value: item } : item\n );\n\n const sortedData = groupOptions({ data: formattedData });\n\n const [_value, handleChange, controlled] = useUncontrolled({\n value,\n defaultValue,\n finalValue: null,\n onChange,\n });\n\n const selectedValue = sortedData.find((item) => item.value === _value);\n const [inputValue, setInputValue] = useState(selectedValue?.label || '');\n\n const handleSearchChange = (val: string) => {\n setInputValue(val);\n if (searchable && typeof onSearchChange === 'function') {\n onSearchChange(val);\n }\n };\n\n const handleClear = () => {\n handleChange(null);\n if (!controlled) {\n handleSearchChange('');\n }\n inputRef.current?.focus();\n };\n\n useEffect(() => {\n const newSelectedValue = sortedData.find((item) => item.value === _value);\n\n if (newSelectedValue) {\n handleSearchChange(newSelectedValue.label);\n } else if (!isCreatable || !_value) {\n handleSearchChange('');\n }\n }, [_value]);\n\n useEffect(() => {\n if (selectedValue && (!searchable || !dropdownOpened)) {\n handleSearchChange(selectedValue.label);\n }\n }, [selectedValue?.label]);\n\n const handleItemSelect = (item: SelectItem) => {\n if (isDeselectable && selectedValue?.value === item.value) {\n handleChange(null);\n setDropdownOpened(false);\n } else {\n if (item.creatable && typeof onCreate === 'function') {\n const createdItem = onCreate(item.value);\n handleChange(createdItem.value);\n } else {\n handleChange(item.value);\n }\n\n if (!controlled) {\n handleSearchChange(item.label);\n }\n\n setHovered(-1);\n setDropdownOpened(false);\n inputRef.current.focus();\n }\n };\n\n const filteredData = filterData({\n data: sortedData,\n searchable,\n limit,\n searchValue: inputValue,\n filter,\n filterDataOnExactSearchMatch,\n value: _value,\n });\n\n if (isCreatable && shouldCreate(inputValue, filteredData)) {\n createLabel = getCreateLabel(inputValue);\n filteredData.push({ label: inputValue, value: inputValue, creatable: true });\n }\n\n const getNextIndex = (\n index: number,\n nextItem: (index: number) => number,\n compareFn: (index: number) => boolean\n ) => {\n let i = index;\n while (compareFn(i)) {\n i = nextItem(i);\n if (!filteredData[i].disabled) return i;\n }\n return index;\n };\n\n useDidUpdate(() => {\n setHovered(-1);\n }, [inputValue]);\n\n const selectedItemIndex = _value ? filteredData.findIndex((el) => el.value === _value) : 0;\n\n const handlePrevious = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index - 1,\n (index) => index > 0\n );\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n scrollIntoView({ alignment: isColumn ? 'start' : 'end' });\n return nextIndex;\n });\n };\n\n const handleNext = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index + 1,\n (index) => index < filteredData.length - 1\n );\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n return nextIndex;\n });\n };\n\n const scrollSelectedItemIntoView = () =>\n window.setTimeout(() => {\n targetRef.current = itemsRefs.current[filteredData[selectedItemIndex]?.value];\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n }, 0);\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n typeof onKeyDown === 'function' && onKeyDown(event);\n\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setHovered(selectedItemIndex);\n setDropdownOpened(true);\n scrollSelectedItemIntoView();\n } else {\n isColumn ? handlePrevious() : handleNext();\n }\n\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setHovered(selectedItemIndex);\n setDropdownOpened(true);\n scrollSelectedItemIntoView();\n } else {\n isColumn ? handleNext() : handlePrevious();\n }\n\n break;\n }\n\n case 'Home': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const firstItemIndex = filteredData.findIndex((item) => !item.disabled);\n setHovered(firstItemIndex);\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n }\n break;\n }\n\n case 'End': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const lastItemIndex = filteredData.map((item) => !!item.disabled).lastIndexOf(false);\n setHovered(lastItemIndex);\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n }\n break;\n }\n\n case 'Escape': {\n event.preventDefault();\n setDropdownOpened(false);\n setHovered(-1);\n break;\n }\n\n case ' ': {\n if (!searchable) {\n if (filteredData[hovered] && dropdownOpened) {\n event.preventDefault();\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n setHovered(selectedItemIndex);\n scrollSelectedItemIntoView();\n }\n }\n\n break;\n }\n\n case 'Enter': {\n if (!searchable) {\n event.preventDefault();\n }\n\n if (filteredData[hovered] && dropdownOpened) {\n event.preventDefault();\n handleItemSelect(filteredData[hovered]);\n }\n }\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n const selected = sortedData.find((item) => item.value === _value);\n if (selectOnBlur && filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n }\n handleSearchChange(selected?.label || '');\n setDropdownOpened(false);\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n if (searchable) {\n setDropdownOpened(true);\n scrollSelectedItemIntoView();\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n handleSearchChange(event.currentTarget.value);\n\n if (clearable && event.currentTarget.value === '') {\n handleChange(null);\n }\n\n setHovered(-1);\n setDropdownOpened(true);\n };\n\n const handleInputClick = () => {\n let dropdownOpen = true;\n\n if (!searchable) {\n dropdownOpen = !dropdownOpened;\n }\n\n setDropdownOpened(dropdownOpen);\n\n if (_value && dropdownOpen) {\n setHovered(selectedItemIndex);\n scrollSelectedItemIntoView();\n }\n };\n\n const shouldShowDropdown =\n filteredData.length > 0 ? dropdownOpened : dropdownOpened && !!nothingFound;\n\n return (\n <Input.Wrapper {...wrapperProps} __staticSelector=\"Select\">\n <SelectPopover\n opened={shouldShowDropdown}\n transition={transition}\n transitionDuration={transitionDuration}\n shadow=\"sm\"\n withinPortal={withinPortal}\n __staticSelector=\"Select\"\n onDirectionChange={setDirection}\n switchDirectionOnFlip={switchDirectionOnFlip}\n zIndex={zIndex}\n dropdownPosition={dropdownPosition}\n positionDependencies={positionDependencies}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n >\n <SelectPopover.Target>\n <div\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-owns={shouldShowDropdown ? `${inputProps.id}-items` : null}\n aria-controls={inputProps.id}\n aria-expanded={shouldShowDropdown}\n onMouseLeave={() => setHovered(-1)}\n tabIndex={-1}\n >\n <input type=\"hidden\" name={name} value={_value || ''} form={form} />\n\n <Input<'input'>\n autoComplete=\"off\"\n type=\"search\"\n {...inputProps}\n {...others}\n ref={useMergedRef(ref, inputRef)}\n onKeyDown={handleInputKeydown}\n __staticSelector=\"Select\"\n value={inputValue}\n placeholder={placeholder}\n onChange={handleInputChange}\n aria-autocomplete=\"list\"\n aria-controls={shouldShowDropdown ? `${inputProps.id}-items` : null}\n aria-activedescendant={hovered >= 0 ? `${inputProps.id}-${hovered}` : null}\n onClick={handleInputClick}\n onBlur={handleInputBlur}\n onFocus={handleInputFocus}\n readOnly={!searchable}\n disabled={disabled}\n data-mantine-stop-propagation={shouldShowDropdown}\n name={null}\n classNames={{\n ...classNames,\n input: cx({ [classes.input]: !searchable }, (classNames as any)?.input),\n }}\n {...getSelectRightSectionProps({\n theme,\n rightSection,\n rightSectionWidth,\n styles,\n size: inputProps.size,\n shouldClear: clearable && !!selectedValue,\n clearButtonLabel,\n onClear: handleClear,\n error: wrapperProps.error,\n clearButtonTabIndex,\n })}\n />\n </div>\n </SelectPopover.Target>\n\n <SelectPopover.Dropdown\n component={dropdownComponent || SelectScrollArea}\n maxHeight={maxDropdownHeight}\n direction={direction}\n id={inputProps.id}\n innerRef={scrollableRef}\n >\n <SelectItems\n data={filteredData}\n hovered={hovered}\n classNames={classNames}\n styles={styles}\n isItemSelected={(val) => val === _value}\n uuid={inputProps.id}\n __staticSelector=\"Select\"\n onItemHover={setHovered}\n onItemSelect={handleItemSelect}\n itemsRefs={itemsRefs}\n itemComponent={itemComponent}\n size={inputProps.size}\n nothingFound={nothingFound}\n creatable={isCreatable && !!createLabel}\n createLabel={createLabel}\n aria-label={wrapperProps.label}\n unstyled={unstyled}\n />\n </SelectPopover.Dropdown>\n </SelectPopover>\n </Input.Wrapper>\n );\n});\n\nSelect.displayName = '@mantine/core/Select';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef, forwardRef } from 'react';\nimport { useUncontrolled, useMergedRef, useDidUpdate, useScrollIntoView } from '@mantine/hooks';\nimport { DefaultProps, MantineSize, MantineShadow, getDefaultZIndex } from '@mantine/styles';\nimport { groupOptions } from '@mantine/utils';\nimport { SelectScrollArea } from './SelectScrollArea/SelectScrollArea';\nimport { Input, useInputProps } from '../Input';\nimport { MantineTransition } from '../Transition';\nimport { DefaultItem } from './DefaultItem/DefaultItem';\nimport { getSelectRightSectionProps } from './SelectRightSection/get-select-right-section-props';\nimport { SelectItems } from './SelectItems/SelectItems';\nimport { SelectPopover } from './SelectPopover/SelectPopover';\nimport { SelectItem, BaseSelectStylesNames, BaseSelectProps } from './types';\nimport { filterData } from './filter-data/filter-data';\nimport useStyles from './Select.styles';\n\nexport interface SelectSharedProps<Item, Value> {\n /** Select data used to renderer items in dropdown */\n data: (string | Item)[];\n\n /** Controlled input value */\n value?: Value;\n\n /** Uncontrolled input defaultValue */\n defaultValue?: Value;\n\n /** Controlled input onChange handler */\n onChange?(value: Value): void;\n\n /** Function based on which items in dropdown are filtered */\n filter?(value: string, item: Item): boolean;\n\n /** Input size */\n size?: MantineSize;\n\n /** Dropdown body appear/disappear transition */\n transition?: MantineTransition;\n\n /** Dropdown body transition duration */\n transitionDuration?: number;\n\n /** Dropdown body transition timing function, defaults to theme.transitionTimingFunction */\n transitionTimingFunction?: string;\n\n /** Dropdown shadow from theme or any value to set box-shadow */\n shadow?: MantineShadow;\n\n /** Initial dropdown opened state */\n initiallyOpened?: boolean;\n\n /** Change item renderer */\n itemComponent?: React.FC<any>;\n\n /** Called when dropdown is opened */\n onDropdownOpen?(): void;\n\n /** Called when dropdown is closed */\n onDropdownClose?(): void;\n\n /** Whether to render the dropdown in a Portal */\n withinPortal?: boolean;\n\n /** Limit amount of items displayed at a time for searchable select */\n limit?: number;\n\n /** Nothing found label */\n nothingFound?: React.ReactNode;\n\n /** Dropdown z-index */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Dropdown positioning behavior */\n dropdownPosition?: 'bottom' | 'top' | 'flip';\n\n /** Whether to switch item order and keyboard navigation on dropdown position flip */\n switchDirectionOnFlip?: boolean;\n\n /** useEffect dependencies to force update dropdown position */\n positionDependencies?: any[];\n}\n\nexport interface SelectProps\n extends DefaultProps<BaseSelectStylesNames>,\n BaseSelectProps,\n SelectSharedProps<SelectItem, string | null> {\n /** Maximum dropdown height in px */\n maxDropdownHeight?: number;\n\n /** Set to true to enable search */\n searchable?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** Called each time search value changes */\n onSearchChange?(query: string): void;\n\n /** Allow creatable option */\n creatable?: boolean;\n\n /** Function to get create Label */\n getCreateLabel?(query: string): React.ReactNode;\n\n /** Function to determine if create label should be displayed */\n shouldCreate?(query: string, data: SelectItem[]): boolean;\n\n /** Called when create option is selected */\n onCreate?(query: string): SelectItem | string;\n\n /** Change dropdown component, can be used to add native scrollbars */\n dropdownComponent?: any;\n\n /** Select highlighted item on blur */\n selectOnBlur?: boolean;\n\n /** Allow deselecting items on click */\n allowDeselect?: boolean;\n\n /** Should data be filtered when search value exactly matches selected item */\n filterDataOnExactSearchMatch?: boolean;\n\n /** Set the clear button tab index to disabled or default after input field */\n clearButtonTabIndex?: -1 | 0;\n}\n\nexport function defaultFilter(value: string, item: SelectItem) {\n return item.label.toLowerCase().trim().includes(value.toLowerCase().trim());\n}\n\nexport function defaultShouldCreate(query: string, data: SelectItem[]) {\n return !!query && !data.some((item) => item.label.toLowerCase() === query.toLowerCase());\n}\n\nconst defaultProps: Partial<SelectProps> = {\n required: false,\n size: 'sm',\n shadow: 'sm',\n itemComponent: DefaultItem,\n transition: 'fade',\n transitionDuration: 0,\n initiallyOpened: false,\n filter: defaultFilter,\n maxDropdownHeight: 220,\n searchable: false,\n clearable: false,\n limit: Infinity,\n disabled: false,\n creatable: false,\n shouldCreate: defaultShouldCreate,\n selectOnBlur: false,\n switchDirectionOnFlip: false,\n filterDataOnExactSearchMatch: false,\n zIndex: getDefaultZIndex('popover'),\n clearButtonTabIndex: 0,\n positionDependencies: [],\n dropdownPosition: 'flip',\n};\n\nexport const Select = forwardRef<HTMLInputElement, SelectProps>((props, ref) => {\n const {\n inputProps,\n wrapperProps,\n shadow,\n data,\n value,\n defaultValue,\n onChange,\n itemComponent,\n onKeyDown,\n onBlur,\n onFocus,\n transition,\n transitionDuration,\n initiallyOpened,\n transitionTimingFunction,\n unstyled,\n classNames,\n styles,\n filter,\n maxDropdownHeight,\n searchable,\n clearable,\n nothingFound,\n clearButtonLabel,\n limit,\n disabled,\n onSearchChange,\n rightSection,\n rightSectionWidth,\n creatable,\n getCreateLabel,\n shouldCreate,\n selectOnBlur,\n onCreate,\n dropdownComponent,\n onDropdownClose,\n onDropdownOpen,\n withinPortal,\n switchDirectionOnFlip,\n zIndex,\n name,\n dropdownPosition,\n allowDeselect,\n placeholder,\n filterDataOnExactSearchMatch,\n clearButtonTabIndex,\n form,\n positionDependencies,\n ...others\n } = useInputProps('Select', defaultProps, props);\n\n const { classes, cx, theme } = useStyles();\n const [dropdownOpened, _setDropdownOpened] = useState(initiallyOpened);\n const [hovered, setHovered] = useState(-1);\n const inputRef = useRef<HTMLInputElement>();\n const itemsRefs = useRef<Record<string, HTMLDivElement>>({});\n const [direction, setDirection] = useState<React.CSSProperties['flexDirection']>('column');\n const isColumn = direction === 'column';\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const isDeselectable = allowDeselect === undefined ? clearable : allowDeselect;\n\n const setDropdownOpened = (opened: boolean) => {\n if (dropdownOpened !== opened) {\n _setDropdownOpened(opened);\n const handler = opened ? onDropdownOpen : onDropdownClose;\n typeof handler === 'function' && handler();\n }\n };\n\n const isCreatable = creatable && typeof getCreateLabel === 'function';\n let createLabel = null;\n\n const formattedData = data.map((item) =>\n typeof item === 'string' ? { label: item, value: item } : item\n );\n\n const sortedData = groupOptions({ data: formattedData });\n\n const [_value, handleChange, controlled] = useUncontrolled({\n value,\n defaultValue,\n finalValue: null,\n onChange,\n });\n\n const selectedValue = sortedData.find((item) => item.value === _value);\n const [inputValue, setInputValue] = useState(selectedValue?.label || '');\n\n const handleSearchChange = (val: string) => {\n setInputValue(val);\n if (searchable && typeof onSearchChange === 'function') {\n onSearchChange(val);\n }\n };\n\n const handleClear = () => {\n handleChange(null);\n if (!controlled) {\n handleSearchChange('');\n }\n inputRef.current?.focus();\n };\n\n useEffect(() => {\n const newSelectedValue = sortedData.find((item) => item.value === _value);\n\n if (newSelectedValue) {\n handleSearchChange(newSelectedValue.label);\n } else if (!isCreatable || !_value) {\n handleSearchChange('');\n }\n }, [_value]);\n\n useEffect(() => {\n if (selectedValue && (!searchable || !dropdownOpened)) {\n handleSearchChange(selectedValue.label);\n }\n }, [selectedValue?.label]);\n\n const handleItemSelect = (item: SelectItem) => {\n if (isDeselectable && selectedValue?.value === item.value) {\n handleChange(null);\n setDropdownOpened(false);\n } else {\n if (item.creatable && typeof onCreate === 'function') {\n const createdItem = onCreate(item.value);\n if (typeof createdItem === 'string') {\n handleChange(createdItem);\n } else {\n handleChange(createdItem.value);\n }\n } else {\n handleChange(item.value);\n }\n\n if (!controlled) {\n handleSearchChange(item.label);\n }\n\n setHovered(-1);\n setDropdownOpened(false);\n inputRef.current.focus();\n }\n };\n\n const filteredData = filterData({\n data: sortedData,\n searchable,\n limit,\n searchValue: inputValue,\n filter,\n filterDataOnExactSearchMatch,\n value: _value,\n });\n\n if (isCreatable && shouldCreate(inputValue, filteredData)) {\n createLabel = getCreateLabel(inputValue);\n filteredData.push({ label: inputValue, value: inputValue, creatable: true });\n }\n\n const getNextIndex = (\n index: number,\n nextItem: (index: number) => number,\n compareFn: (index: number) => boolean\n ) => {\n let i = index;\n while (compareFn(i)) {\n i = nextItem(i);\n if (!filteredData[i].disabled) return i;\n }\n return index;\n };\n\n useDidUpdate(() => {\n setHovered(-1);\n }, [inputValue]);\n\n const selectedItemIndex = _value ? filteredData.findIndex((el) => el.value === _value) : 0;\n\n const handlePrevious = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index - 1,\n (index) => index > 0\n );\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n scrollIntoView({ alignment: isColumn ? 'start' : 'end' });\n return nextIndex;\n });\n };\n\n const handleNext = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index + 1,\n (index) => index < filteredData.length - 1\n );\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n return nextIndex;\n });\n };\n\n const scrollSelectedItemIntoView = () =>\n window.setTimeout(() => {\n targetRef.current = itemsRefs.current[filteredData[selectedItemIndex]?.value];\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n }, 0);\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n typeof onKeyDown === 'function' && onKeyDown(event);\n\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setHovered(selectedItemIndex);\n setDropdownOpened(true);\n scrollSelectedItemIntoView();\n } else {\n isColumn ? handlePrevious() : handleNext();\n }\n\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setHovered(selectedItemIndex);\n setDropdownOpened(true);\n scrollSelectedItemIntoView();\n } else {\n isColumn ? handleNext() : handlePrevious();\n }\n\n break;\n }\n\n case 'Home': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const firstItemIndex = filteredData.findIndex((item) => !item.disabled);\n setHovered(firstItemIndex);\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n }\n break;\n }\n\n case 'End': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const lastItemIndex = filteredData.map((item) => !!item.disabled).lastIndexOf(false);\n setHovered(lastItemIndex);\n scrollIntoView({ alignment: isColumn ? 'end' : 'start' });\n }\n break;\n }\n\n case 'Escape': {\n event.preventDefault();\n setDropdownOpened(false);\n setHovered(-1);\n break;\n }\n\n case ' ': {\n if (!searchable) {\n if (filteredData[hovered] && dropdownOpened) {\n event.preventDefault();\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n setHovered(selectedItemIndex);\n scrollSelectedItemIntoView();\n }\n }\n\n break;\n }\n\n case 'Enter': {\n if (!searchable) {\n event.preventDefault();\n }\n\n if (filteredData[hovered] && dropdownOpened) {\n event.preventDefault();\n handleItemSelect(filteredData[hovered]);\n }\n }\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n const selected = sortedData.find((item) => item.value === _value);\n if (selectOnBlur && filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n }\n handleSearchChange(selected?.label || '');\n setDropdownOpened(false);\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n if (searchable) {\n setDropdownOpened(true);\n scrollSelectedItemIntoView();\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n handleSearchChange(event.currentTarget.value);\n\n if (clearable && event.currentTarget.value === '') {\n handleChange(null);\n }\n\n setHovered(-1);\n setDropdownOpened(true);\n };\n\n const handleInputClick = () => {\n let dropdownOpen = true;\n\n if (!searchable) {\n dropdownOpen = !dropdownOpened;\n }\n\n setDropdownOpened(dropdownOpen);\n\n if (_value && dropdownOpen) {\n setHovered(selectedItemIndex);\n scrollSelectedItemIntoView();\n }\n };\n\n const shouldShowDropdown =\n filteredData.length > 0 ? dropdownOpened : dropdownOpened && !!nothingFound;\n\n return (\n <Input.Wrapper {...wrapperProps} __staticSelector=\"Select\">\n <SelectPopover\n opened={shouldShowDropdown}\n transition={transition}\n transitionDuration={transitionDuration}\n shadow=\"sm\"\n withinPortal={withinPortal}\n __staticSelector=\"Select\"\n onDirectionChange={setDirection}\n switchDirectionOnFlip={switchDirectionOnFlip}\n zIndex={zIndex}\n dropdownPosition={dropdownPosition}\n positionDependencies={positionDependencies}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n >\n <SelectPopover.Target>\n <div\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-owns={shouldShowDropdown ? `${inputProps.id}-items` : null}\n aria-controls={inputProps.id}\n aria-expanded={shouldShowDropdown}\n onMouseLeave={() => setHovered(-1)}\n tabIndex={-1}\n >\n <input type=\"hidden\" name={name} value={_value || ''} form={form} />\n\n <Input<'input'>\n autoComplete=\"off\"\n type=\"search\"\n {...inputProps}\n {...others}\n ref={useMergedRef(ref, inputRef)}\n onKeyDown={handleInputKeydown}\n __staticSelector=\"Select\"\n value={inputValue}\n placeholder={placeholder}\n onChange={handleInputChange}\n aria-autocomplete=\"list\"\n aria-controls={shouldShowDropdown ? `${inputProps.id}-items` : null}\n aria-activedescendant={hovered >= 0 ? `${inputProps.id}-${hovered}` : null}\n onClick={handleInputClick}\n onBlur={handleInputBlur}\n onFocus={handleInputFocus}\n readOnly={!searchable}\n disabled={disabled}\n data-mantine-stop-propagation={shouldShowDropdown}\n name={null}\n classNames={{\n ...classNames,\n input: cx({ [classes.input]: !searchable }, (classNames as any)?.input),\n }}\n {...getSelectRightSectionProps({\n theme,\n rightSection,\n rightSectionWidth,\n styles,\n size: inputProps.size,\n shouldClear: clearable && !!selectedValue,\n clearButtonLabel,\n onClear: handleClear,\n error: wrapperProps.error,\n clearButtonTabIndex,\n })}\n />\n </div>\n </SelectPopover.Target>\n\n <SelectPopover.Dropdown\n component={dropdownComponent || SelectScrollArea}\n maxHeight={maxDropdownHeight}\n direction={direction}\n id={inputProps.id}\n innerRef={scrollableRef}\n >\n <SelectItems\n data={filteredData}\n hovered={hovered}\n classNames={classNames}\n styles={styles}\n isItemSelected={(val) => val === _value}\n uuid={inputProps.id}\n __staticSelector=\"Select\"\n onItemHover={setHovered}\n onItemSelect={handleItemSelect}\n itemsRefs={itemsRefs}\n itemComponent={itemComponent}\n size={inputProps.size}\n nothingFound={nothingFound}\n creatable={isCreatable && !!createLabel}\n createLabel={createLabel}\n aria-label={wrapperProps.label}\n unstyled={unstyled}\n />\n </SelectPopover.Dropdown>\n </SelectPopover>\n </Input.Wrapper>\n );\n});\n\nSelect.displayName = '@mantine/core/Select';\n"],"names":[],"mappings":"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"}
@@ -88,15 +88,19 @@ const Step = forwardRef((_a, ref) => {
88
88
  const { classes, cx, theme } = useStyles({ color, iconSize, size, radius, allowStepClick, iconPosition }, { name: __staticSelector, classNames, styles, unstyled });
89
89
  const _iconSize = theme.fn.size({ size, sizes: defaultIconSizes });
90
90
  const _icon = state === "stepCompleted" ? null : state === "stepProgress" ? progressIcon : icon;
91
- return /* @__PURE__ */ React.createElement(UnstyledButton, __spreadValues({
92
- className: cx(classes.step, classes[state], className),
91
+ const dataAttributes = {
92
+ "data-progress": state === "stepProgress" || void 0,
93
+ "data-completed": state === "stepCompleted" || void 0
94
+ };
95
+ return /* @__PURE__ */ React.createElement(UnstyledButton, __spreadValues(__spreadValues({
96
+ className: cx(classes.step, className),
93
97
  tabIndex: allowStepClick ? 0 : -1,
94
98
  ref
95
- }, others), withIcon && /* @__PURE__ */ React.createElement("div", {
99
+ }, dataAttributes), others), withIcon && /* @__PURE__ */ React.createElement("div", {
96
100
  className: classes.stepWrapper
97
- }, /* @__PURE__ */ React.createElement("div", {
101
+ }, /* @__PURE__ */ React.createElement("div", __spreadValues({
98
102
  className: classes.stepIcon
99
- }, /* @__PURE__ */ React.createElement(Transition, {
103
+ }, dataAttributes), /* @__PURE__ */ React.createElement(Transition, {
100
104
  mounted: state === "stepCompleted",
101
105
  transition: "pop",
102
106
  duration: 200