|
@@ -574,23 +574,30 @@
|
|
* lists of emojis in that category as values.
|
|
* lists of emojis in that category as values.
|
|
*/
|
|
*/
|
|
if (_.isUndefined(this.emojis_by_category)) {
|
|
if (_.isUndefined(this.emojis_by_category)) {
|
|
- var emojis = _.values(_.mapValues(emojione.emojioneList, function (value, key, o) {
|
|
|
|
|
|
+ const emojis = _.values(_.mapValues(emojione.emojioneList, function (value, key, o) {
|
|
value._shortname = key;
|
|
value._shortname = key;
|
|
return value
|
|
return value
|
|
}));
|
|
}));
|
|
- var tones = [':tone1:', ':tone2:', ':tone3:', ':tone4:', ':tone5:'];
|
|
|
|
- var excluded = [':kiss_ww:', ':kiss_mm:', ':kiss_woman_man:'];
|
|
|
|
- var excluded_substrings = [':woman', ':man', ':women_', ':men_', '_man_', '_woman_', '_woman:', '_man:'];
|
|
|
|
- var categories = _.uniq(_.map(emojis, _.partial(_.get, _, 'category')));
|
|
|
|
- var emojis_by_category = {};
|
|
|
|
- _.forEach(categories, function (cat) {
|
|
|
|
- var list = _.sortBy(_.filter(emojis, ['category', cat]), ['uc_base']);
|
|
|
|
- list = _.filter(list, function (item) {
|
|
|
|
- return !_.includes(_.concat(tones, excluded), item._shortname) &&
|
|
|
|
- !_.some(excluded_substrings, _.partial(_.includes, item._shortname));
|
|
|
|
- });
|
|
|
|
|
|
+ const tones = [':tone1:', ':tone2:', ':tone3:', ':tone4:', ':tone5:'];
|
|
|
|
+ const excluded = [':kiss_ww:', ':kiss_mm:', ':kiss_woman_man:'];
|
|
|
|
+ const excluded_substrings = [
|
|
|
|
+ ':woman', ':man', ':women_', ':men_', '_man_', '_woman_', '_woman:', '_man:'
|
|
|
|
+ ];
|
|
|
|
+ const excluded_categories = ['modifier'];
|
|
|
|
+ const categories = _.difference(
|
|
|
|
+ _.uniq(_.map(emojis, _.partial(_.get, _, 'category'))),
|
|
|
|
+ excluded_categories
|
|
|
|
+ );
|
|
|
|
+ const emojis_by_category = {};
|
|
|
|
+ _.forEach(categories, (cat) => {
|
|
|
|
+ let list = _.sortBy(_.filter(emojis, ['category', cat]), ['uc_base']);
|
|
|
|
+ list = _.filter(
|
|
|
|
+ list,
|
|
|
|
+ (item) => !_.includes(_.concat(tones, excluded), item._shortname) &&
|
|
|
|
+ !_.some(excluded_substrings, _.partial(_.includes, item._shortname))
|
|
|
|
+ );
|
|
if (cat === 'people') {
|
|
if (cat === 'people') {
|
|
- var idx = _.findIndex(list, ['uc_base', '1f600']);
|
|
|
|
|
|
+ const idx = _.findIndex(list, ['uc_base', '1f600']);
|
|
list = _.union(_.slice(list, idx), _.slice(list, 0, idx+1));
|
|
list = _.union(_.slice(list, idx), _.slice(list, 0, idx+1));
|
|
} else if (cat === 'activity') {
|
|
} else if (cat === 'activity') {
|
|
list = _.union(_.slice(list, 27-1), _.slice(list, 0, 27));
|
|
list = _.union(_.slice(list, 27-1), _.slice(list, 0, 27));
|