UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

45 lines (42 loc) 1.74 kB
import { useEffect, useCallback } from 'react'; import '../types/models.js'; import '../types/events.js'; import '../store/conversations/actions.js'; import 'tslib'; import { getConversationsStateByAccount } from '../store/conversations/selectors.js'; import { fetchConversationsByAccount } from '../store/conversations/commands.js'; import { useDispatch } from '../store/useDispatch.js'; import { useSelector } from 'react-redux'; import 'redux'; import '../store/rootReducer.js'; import '../store/accounts/actions.js'; import '../store/accounts/selectors.js'; import '../node_modules/.pnpm/invariant@2.2.4/node_modules/invariant/invariant.js'; import 'i18next'; import '../store/messages/actions.js'; import '../store/contacts/actions.js'; import '../node_modules/.pnpm/lodash.flatten@4.4.0/node_modules/lodash.flatten/index.js'; function useConversationList(accountId) { var _a; var dispatch = useDispatch(); useEffect(function () { if (accountId) { dispatch(fetchConversationsByAccount(accountId)); } }, [accountId]); var loadMore = useCallback(function () { if (accountId) { dispatch(fetchConversationsByAccount(accountId, true)); } }, [accountId]); var _b = useSelector(getConversationsStateByAccount(accountId)), conversations = _b.conversations, cursor = _b.cursor, loading = _b.loading, error = _b.error; return { loadMore: loadMore, conversations: conversations, loading: loading, error: error, hasMore: (_a = cursor === null || cursor === void 0 ? void 0 : cursor.has_next) !== null && _a !== void 0 ? _a : false, }; } export { useConversationList }; //# sourceMappingURL=useConversationList.js.map