@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
111 lines (104 loc) • 5.87 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var tslib = require('tslib');
var React = require('react');
var models = require('../types/models.js');
require('../types/events.js');
require('../context/TranslationContext.js');
var UIKitContext = require('../context/UIKitContext.js');
require('../context/ComponentContext.js');
require('../context/ChatActionContext.js');
require('../context/MessageInputContext.js');
require('../context/UIMessageContext.js');
require('../context/ChatStateContext.js');
function useCreateMessage(props) {
var conversation = props.conversation, _a = props.to, to = _a === void 0 ? '' : _a, propType = props.type, cloudCustomData = props.cloudCustomData;
var client = UIKitContext.useUIKit().client;
var conversationType = (conversation !== null && conversation !== void 0 ? conversation : {}).type;
var type = propType || conversationType;
var _b = React.useState({
from: conversation.account,
to: to || (type === models.ConversationType.Private ? conversation === null || conversation === void 0 ? void 0 : conversation.id : conversation === null || conversation === void 0 ? void 0 : conversation.id),
conversationType: type,
cloudCustomData: cloudCustomData,
}), basicConfig = _b[0], setBasicConfig = _b[1];
React.useEffect(function () {
basicConfig.cloudCustomData = cloudCustomData;
setBasicConfig(basicConfig);
}, [cloudCustomData]);
var createTextMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createTextMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createFaceMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createFaceMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createImageMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createImageMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createVideoMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createVideoMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createFileMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createFileMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
/*
const createForwardMessage = useCallback((
params: CreateForwardMessageProps,
) => {
const { conversation: forwardConversation, message, ...other } = params;
const {
type: forwardType,
userProfile: forwardUserProfile,
groupProfile: forwardGroupProfile,
} = forwardConversation;
const forwardTo = forwardType === ConversationType.Private
? forwardUserProfile?.userID : forwardGroupProfile?.groupID;
return client.createForwardMessage({
to: forwardTo,
conversationType: forwardType,
payload: message,
...other,
});
}, [client]);
*/
var createCustomMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createCustomMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createAudioMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createAudioMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createTextAtMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createTextAtMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createLocationMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createLocationMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
var createMergerMessage = React.useCallback(function (params) {
var _a;
return (_a = client === null || client === void 0 ? void 0 : client.createMergerMessage) === null || _a === void 0 ? void 0 : _a.call(client, tslib.__assign(tslib.__assign({}, basicConfig), params));
}, [client]);
return {
createTextMessage: createTextMessage,
createFaceMessage: createFaceMessage,
createImageMessage: createImageMessage,
createVideoMessage: createVideoMessage,
createFileMessage: createFileMessage,
// createForwardMessage,
createCustomMessage: createCustomMessage,
createAudioMessage: createAudioMessage,
createTextAtMessage: createTextAtMessage,
createLocationMessage: createLocationMessage,
createMergerMessage: createMergerMessage,
};
}
exports.useCreateMessage = useCreateMessage;
//# sourceMappingURL=useCreateMessage.js.map