UNPKG

@findify/react-components

Version:
23 lines (22 loc) 792 B
import { useCallback, useMemo } from 'react'; import { List } from 'immutable'; import { useSort } from '@findify/react-connect'; export default (function () { var _useSort = useSort(), config = _useSort.config, selected = _useSort.selected, onChangeSort = _useSort.onChangeSort; var items = config.getIn(['sorting', 'options'], List()); var selectedItem = useMemo(function () { if (!selected) return items.find(function (i) { return i.get('field') === 'default'; }); return items.find(function (i) { return i.delete('label').equals(selected); }); }, [selected]); var onChange = useCallback(function (item) { onChangeSort(item.get('field', 'default'), item.get('order', '')); }, []); return [items, selectedItem, onChange]; });