@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
50 lines (45 loc) • 2.09 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var index = require('../../node_modules/.pnpm/reselect@4.1.7/node_modules/reselect/es/index.js');
require('../../types/models.js');
require('../../types/events.js');
require('redux');
require('../rootReducer.js');
require('./actions.js');
require('tslib');
require('../../node_modules/.pnpm/invariant@2.2.4/node_modules/invariant/invariant.js');
require('i18next');
require('../conversations/actions.js');
require('../../node_modules/.pnpm/lodash.flatten@4.4.0/node_modules/lodash.flatten/index.js');
require('../../node_modules/.pnpm/lodash.some@4.6.0/node_modules/lodash.some/index.js');
require('../messages/actions.js');
require('../contacts/actions.js');
var getAccountListStateSlice = function (state) { return state.accounts; };
// 获取所有账号
var getAccounts = index.createSelector([getAccountListStateSlice], function (state) {
return state.accounts;
});
// 是否正在查询账号列表
index.createSelector([getAccountListStateSlice], function (state) {
return !!state.fetchingRequest;
});
// 是否查询更多账号
index.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 index.createSelector([getAccountListStateSlice], function (state) {
var _a;
return (_a = state.accounts.find(function (it) { return it.id === id; })) !== null && _a !== void 0 ? _a : null;
}); };
// 获取开通的服务商
index.createSelector([getAccountListStateSlice], function (state) {
return new Set(state.accounts.map(function (it) { return it.provider; }));
});
exports.getAccountById = getAccountById;
exports.getAccounts = getAccounts;
//# sourceMappingURL=selectors.js.map