stream-chat-react-native-core
Version:
The official React Native and Expo components for Stream Chat, a service for building chat applications
41 lines • 1.45 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.selectMessageForId = void 0;
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _schema = require("../../schema");
var _SqliteClient = require("../../SqliteClient");
var selectMessageForId = exports.selectMessageForId = function () {
var _ref = (0, _asyncToGenerator2.default)(function* (msgId) {
if (!msgId) {
return undefined;
}
var messagesColumnNames = Object.keys(_schema.tables.messages.columns).map(name => `'${name}', a.${name}`).join(', ');
var userColumnNames = Object.keys(_schema.tables.users.columns).map(name => `'${name}', b.${name}`).join(', ');
_SqliteClient.SqliteClient.logger?.('info', 'selectMessagesForId', {
msgId
});
var result = yield _SqliteClient.SqliteClient.executeSql(`SELECT
json_object(
'user', json_object(
${userColumnNames}
),
${messagesColumnNames}
) as value
FROM (
SELECT
*
FROM messages
WHERE id = ?
) a
LEFT JOIN
users b
ON b.id = a.userId`, [msgId]);
return result[0] ? JSON.parse(result[0].value) : undefined;
});
return function selectMessageForId(_x) {
return _ref.apply(this, arguments);
};
}();
//# sourceMappingURL=selectMessageById.js.map