stream-chat-react-native-core
Version:
The official React Native and Expo components for Stream Chat, a service for building chat applications
59 lines • 2.15 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.initiateClientWithChannels = void 0;
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _getOrCreateChannel = require("./getOrCreateChannel");
var _useMockedApis = require("./useMockedApis");
var _channel = require("../generator/channel");
var _member = require("../generator/member");
var _user = require("../generator/user");
var _mock = require("../mock");
var initChannelFromData = function () {
var _ref = (0, _asyncToGenerator2.default)(function* ({
channelData,
client,
defaultGenerateChannelOptions
}) {
var mockedChannelData = (0, _channel.generateChannel)({
...defaultGenerateChannelOptions,
...channelData
});
(0, _useMockedApis.useMockedApis)(client, [(0, _getOrCreateChannel.getOrCreateChannelApi)(mockedChannelData)]);
var channel = client.channel(mockedChannelData.type, mockedChannelData.id);
yield channel.watch();
jest.spyOn(channel, 'getConfig').mockImplementation(() => mockedChannelData.channel.config);
return channel;
});
return function initChannelFromData(_x) {
return _ref.apply(this, arguments);
};
}();
var initiateClientWithChannels = exports.initiateClientWithChannels = function () {
var _ref2 = (0, _asyncToGenerator2.default)(function* ({
channelsData,
customUser
} = {}) {
var user = customUser || (0, _user.generateUser)();
var client = yield (0, _mock.getTestClientWithUser)(user);
var defaultGenerateChannelOptions = {
members: [(0, _member.generateMember)({
user
})]
};
var channels = yield Promise.all((channelsData ?? [defaultGenerateChannelOptions]).map(channelData => initChannelFromData({
channelData,
client,
defaultGenerateChannelOptions
})));
return {
channels,
client
};
});
return function initiateClientWithChannels() {
return _ref2.apply(this, arguments);
};
}();
//# sourceMappingURL=initiateClientWithChannels.js.map