mirror of
https://github.com/zulip/zulip.git
synced 2025-11-10 00:46:03 +00:00
refactor: Move list of frequent emojis to emoji.js.
All of our data related to emojis is in emoji.js. Now typeahead_helper no longer depends on emoji_picker. Generally we want typeahead_helper to only depend on data modules to avoid complicated circular dependencies (or at least mitigate them).
This commit is contained in:
@@ -3,7 +3,7 @@ zrequire('dict');
|
||||
zrequire('compose_state');
|
||||
zrequire('ui_util');
|
||||
zrequire('pm_conversations');
|
||||
zrequire('emoji_picker');
|
||||
zrequire('emoji');
|
||||
zrequire('util');
|
||||
zrequire('Handlebars', 'handlebars');
|
||||
zrequire('templates');
|
||||
@@ -116,10 +116,9 @@ set_global('compose', {
|
||||
finish: noop,
|
||||
});
|
||||
|
||||
set_global('emoji', {
|
||||
active_realm_emojis: {},
|
||||
emojis: emoji_list,
|
||||
});
|
||||
emoji.active_realm_emojis = {};
|
||||
emoji.emojis = emoji_list;
|
||||
|
||||
set_global('pygments_data', {langs:
|
||||
{python: 0, javscript: 1, html: 2, css: 3},
|
||||
});
|
||||
|
||||
@@ -8,7 +8,7 @@ zrequire('Handlebars', 'handlebars');
|
||||
zrequire('recent_senders');
|
||||
zrequire('pm_conversations');
|
||||
zrequire('people');
|
||||
zrequire('emoji_picker');
|
||||
zrequire('emoji');
|
||||
zrequire('util');
|
||||
zrequire('stream_data');
|
||||
zrequire('narrow');
|
||||
@@ -498,15 +498,13 @@ run_test('render_stream', () => {
|
||||
run_test('render_emoji', () => {
|
||||
// Test render_emoji with normal emoji.
|
||||
var rendered = false;
|
||||
var emoji = {
|
||||
var test_emoji = {
|
||||
emoji_name: 'thumbs_up',
|
||||
codepoint: '1f44d',
|
||||
};
|
||||
set_global('emoji', {
|
||||
active_realm_emojis: {
|
||||
emoji.active_realm_emojis = {
|
||||
realm_emoji: 'TBD',
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
global.templates.render = function (template_name, args) {
|
||||
assert.equal(template_name, 'typeahead_list_item');
|
||||
@@ -520,12 +518,12 @@ run_test('render_emoji', () => {
|
||||
rendered = true;
|
||||
return 'typeahead-item-stub';
|
||||
};
|
||||
assert.equal(th.render_emoji(emoji), 'typeahead-item-stub');
|
||||
assert.equal(th.render_emoji(test_emoji), 'typeahead-item-stub');
|
||||
assert(rendered);
|
||||
|
||||
// Test render_emoji with normal emoji.
|
||||
rendered = false;
|
||||
emoji = {
|
||||
test_emoji = {
|
||||
emoji_name: 'realm_emoji',
|
||||
emoji_url: 'TBD',
|
||||
};
|
||||
@@ -542,7 +540,7 @@ run_test('render_emoji', () => {
|
||||
rendered = true;
|
||||
return 'typeahead-item-stub';
|
||||
};
|
||||
assert.equal(th.render_emoji(emoji), 'typeahead-item-stub');
|
||||
assert.equal(th.render_emoji(test_emoji), 'typeahead-item-stub');
|
||||
assert(rendered);
|
||||
});
|
||||
|
||||
|
||||
@@ -12,6 +12,19 @@ exports.all_realm_emojis = {};
|
||||
exports.active_realm_emojis = {};
|
||||
exports.default_emoji_aliases = {};
|
||||
|
||||
// Unfortunately, this list does not currently match on
|
||||
// alias names like party_popper, simple_smile, and
|
||||
// hammer_and_wrench. But thumbs_up sorts to the top
|
||||
// for some other reason.
|
||||
exports.frequently_used_emojis_list = [
|
||||
'1f44d', // +1
|
||||
'1f389', // tada
|
||||
'1f642', // slight_smile
|
||||
'2764', // heart
|
||||
'1f6e0', // working_on_it
|
||||
'1f419', // octopus
|
||||
];
|
||||
|
||||
var default_emojis = [];
|
||||
|
||||
var zulip_emoji = {
|
||||
|
||||
@@ -12,18 +12,6 @@ var APPROX_WIDTH = 255;
|
||||
// implemented as the emoji_popover.
|
||||
exports.complete_emoji_catalog = [];
|
||||
|
||||
// Unfortunately, this list does not currently match on
|
||||
// alias names like party_popper, simple_smile, and
|
||||
// hammer_and_wrench. But thumbs_up sorts to the top
|
||||
// for some other reason.
|
||||
exports.frequently_used_emojis_list = [
|
||||
'1f44d', // +1
|
||||
'1f389', // tada
|
||||
'1f642', // slight_smile
|
||||
'2764', // heart
|
||||
'1f6e0', // working_on_it
|
||||
'1f419', // octopus
|
||||
];
|
||||
var current_message_emoji_popover_elem;
|
||||
var emoji_catalog_last_coordinates = {
|
||||
section: 0,
|
||||
@@ -129,7 +117,7 @@ exports.generate_emoji_picker_data = function (realm_emojis) {
|
||||
});
|
||||
|
||||
exports.complete_emoji_catalog.Popular = [];
|
||||
_.each(exports.frequently_used_emojis_list, function (codepoint) {
|
||||
_.each(emoji.frequently_used_emojis_list, function (codepoint) {
|
||||
if (emoji_codes.codepoint_to_name.hasOwnProperty(codepoint)) {
|
||||
var emoji_name = emoji_codes.codepoint_to_name[codepoint];
|
||||
if (emoji.emojis_by_name.hasOwnProperty(emoji_name)) {
|
||||
|
||||
@@ -168,7 +168,7 @@ function emoji_prefix_sort(query, objs, get_item) {
|
||||
var popular_emoji_matches = [];
|
||||
var other_emoji_matches = [];
|
||||
prefix_sort.matches.forEach(function (obj) {
|
||||
if (emoji_picker.frequently_used_emojis_list.indexOf(obj.codepoint) !== -1) {
|
||||
if (emoji.frequently_used_emojis_list.indexOf(obj.codepoint) !== -1) {
|
||||
popular_emoji_matches.push(obj);
|
||||
} else {
|
||||
other_emoji_matches.push(obj);
|
||||
|
||||
Reference in New Issue
Block a user