UNPKG

@uimkit/uikit-react

Version:

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

45 lines (40 loc) 1.89 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib = require('tslib'); var EmoticonItem = require('../../EmoticonItem/EmoticonItem.js'); var emojiMart = require('emoji-mart'); var index = require('../../../node_modules/.pnpm/lodash.first@3.0.0/node_modules/lodash.first/index.js'); var useEmojiTrigger = function () { return { component: EmoticonItem.EmoticonItem, dataProvider: function (query, _, onReady) { return tslib.__awaiter(void 0, void 0, void 0, function () { var emojis, result; return tslib.__generator(this, function (_a) { switch (_a.label) { case 0: if (query.length === 0 || query.charAt(0).match(/[^a-zA-Z0-9+-]/)) { return [2 /*return*/, []]; } return [4 /*yield*/, (emojiMart.SearchIndex === null || emojiMart.SearchIndex === void 0 ? void 0 : emojiMart.SearchIndex.search(query))]; case 1: emojis = (_a.sent()) || []; console.log('emojis: ', emojis, query); result = emojis.filter(Boolean).slice(0, /* TODO themeVersion === '2' ? 7 : */ 10); if (onReady) onReady(result, query); return [2 /*return*/, result]; } }); }); }, output: function (entity) { var _a, _b; return ({ caretPosition: 'next', key: entity.id, text: (_b = (_a = index(entity.skins)) === null || _a === void 0 ? void 0 : _a.native) !== null && _b !== void 0 ? _b : entity.name, }); }, }; }; exports.useEmojiTrigger = useEmojiTrigger; //# sourceMappingURL=useEmojiTrigger.js.map