@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
48 lines (45 loc) • 1.5 kB
JavaScript
import 'react';
import './Icon/type.js';
import './Icon/config.js';
import { defaultGroupAvatarWork, defaultUserAvatar } from './Avatar/default.js';
import { ConversationType } from '../types/models.js';
import '../types/events.js';
// Determine if it is a JSON string
function isJSON(str) {
// eslint-disable-next-line no-useless-escape
if (/^[\],:{}\s]*$/.test(str
// eslint-disable-next-line no-useless-escape
.replace(/\\["\\\/bfnrtu]/g, '@')
// eslint-disable-next-line no-useless-escape
.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']')
.replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
return true;
}
return false;
}
// Determine if it is a JSON string
function JSONStringToParse(str) {
if (!isJSON(str)) {
return str;
}
return JSON.parse(str);
}
var handleDisplayAvatar = function (avatar, type) {
if (type === void 0) { type = ConversationType.Private; }
var displayImage = avatar;
if (!avatar) {
switch (type) {
case ConversationType.Private:
displayImage = defaultUserAvatar;
break;
case ConversationType.Group:
displayImage = defaultGroupAvatarWork;
break;
default:
displayImage = defaultGroupAvatarWork;
}
}
return displayImage;
};
export { JSONStringToParse, handleDisplayAvatar, isJSON };
//# sourceMappingURL=utils.js.map