UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

48 lines (45 loc) 1.5 kB
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