UNPKG

@uimkit/uikit-react

Version:

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

45 lines (42 loc) 1.93 kB
import { createSelector } from '../../node_modules/.pnpm/reselect@4.1.7/node_modules/reselect/es/index.js'; import '../../types/models.js'; import '../../types/events.js'; import 'redux'; import '../rootReducer.js'; import './actions.js'; import 'tslib'; import '../../node_modules/.pnpm/invariant@2.2.4/node_modules/invariant/invariant.js'; import 'i18next'; import '../conversations/actions.js'; import '../../node_modules/.pnpm/lodash.flatten@4.4.0/node_modules/lodash.flatten/index.js'; import '../../node_modules/.pnpm/lodash.some@4.6.0/node_modules/lodash.some/index.js'; import '../messages/actions.js'; import '../contacts/actions.js'; var getAccountListStateSlice = function (state) { return state.accounts; }; // 获取所有账号 var getAccounts = createSelector([getAccountListStateSlice], function (state) { return state.accounts; }); // 是否正在查询账号列表 createSelector([getAccountListStateSlice], function (state) { return !!state.fetchingRequest; }); // 是否查询更多账号 createSelector([getAccountListStateSlice], function (state) { return !!state.fetchingRequest && !!state.fetchingRequest.offset; }); // useSelector 依赖状态,需要为每个 compoenent 创建自己的实例 // 参考: // https://react-redux.js.org/api/hooks#using-memoizing-selectors // https://github.com/reduxjs/reselect#q-can-i-share-a-selector-across-multiple-component-instances // 获取账号详情 var getAccountById = function (id) { return createSelector([getAccountListStateSlice], function (state) { var _a; return (_a = state.accounts.find(function (it) { return it.id === id; })) !== null && _a !== void 0 ? _a : null; }); }; // 获取开通的服务商 createSelector([getAccountListStateSlice], function (state) { return new Set(state.accounts.map(function (it) { return it.provider; })); }); export { getAccountById, getAccounts }; //# sourceMappingURL=selectors.js.map