import { __ } from '@converse/headless/i18n';
import { _converse, converse, api } from "@converse/headless/converse-core";
import { html } from "lit-html";
const u = converse.env.utils;
const i18n_search = __('Search');
const i18n_search_results = __('Search results');
const skintones = ['tone1', 'tone2', 'tone3', 'tone4', 'tone5'];
const emoji_category = (o) => {
return html`
${o.transformCategory(o.emoji_categories[o.category])}
`;
}
const emoji_picker_header = (o) => html`
${ Object.keys(o.emoji_categories).map(category => (o.emoji_categories[category] ? emoji_category(Object.assign({category}, o)) : '')) }
`;
const emoji_item = (o) => {
return html`
${u.shortnamesToEmojis(o.emoji.sn)}
`;
}
const search_results = (o) => html`
${i18n_search_results}
${ o.search_results.map(emoji => emoji_item(Object.assign({emoji}, o))) }
`;
const emojis_for_category = (o) => html`
${ __(api.settings.get('emoji_category_labels')[o.category]) }
${ Object.values(o.emojis_by_category[o.category]).map(emoji => emoji_item(Object.assign({emoji}, o))) }
`;
const skintone_emoji = (o) => {
return html`
${u.shortnamesToEmojis(':'+o.skintone+':')}
`;
}
const all_emojis = (o) => html`
${Object.keys(o.emoji_categories).map(category => (o.emoji_categories[category] ? emojis_for_category(Object.assign({category}, o)) : ''))}
`;
export default (o) => {
o.emoji_categories = api.settings.get('emoji_categories');
o.emojis_by_category = _converse.emojis.json;
o.toned_emojis = _converse.emojis.toned;
return html`
${search_results(o)}
${all_emojis(o)}
${ skintones.map(skintone => skintone_emoji(Object.assign({skintone}, o))) }
`;
}