eslint: Fix unicorn/no-array-callback-reference.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg
2021-01-22 17:36:54 -08:00
committed by Tim Abbott
parent 552f4e3d22
commit 6cd694b8e3
29 changed files with 89 additions and 93 deletions

View File

@@ -92,7 +92,6 @@
"unicorn/consistent-function-scoping": "off",
"unicorn/explicit-length-check": "off",
"unicorn/filename-case": "off",
"unicorn/no-fn-reference-in-iterator": "off",
"unicorn/no-nested-ternary": "off",
"unicorn/no-null": "off",
"unicorn/no-process-exit": "off",

View File

@@ -16,9 +16,10 @@ const {LazySet} = zrequire("lazy_set");
run_test("map", () => {
const ls = new LazySet([1, 2]);
const triple = (n) => n * 3;
assert.deepEqual(ls.map(triple), [3, 6]);
assert.deepEqual(
ls.map((n) => n * 3),
[3, 6],
);
});
run_test("conversions", () => {

View File

@@ -354,7 +354,7 @@ run_test("sorting", () => {
};
function html_for(people) {
return people.map(opts.modifier).join("");
return people.map((item) => opts.modifier(item)).join("");
}
list_render.create(container, list, opts);

View File

@@ -28,7 +28,7 @@ function make_msg(msg_id) {
}
function make_msgs(msg_ids) {
return msg_ids.map(make_msg);
return msg_ids.map((msg_id) => make_msg(msg_id));
}
function assert_contents(mld, msg_ids) {

View File

@@ -197,8 +197,8 @@ run_test("merge_message_groups", () => {
}
function assert_message_groups_list_equal(list1, list2) {
const ids1 = list1.map(extract_group);
const ids2 = list2.map(extract_group);
const ids1 = list1.map((group) => extract_group(group));
const ids2 = list2.map((group) => extract_group(group));
assert(ids1.length);
assert.deepEqual(ids1, ids2);
}

View File

@@ -35,7 +35,10 @@ const emojis = [emoji_japanese_post_office, emoji_panda_face, emoji_smile, emoji
run_test("get_emoji_matcher", () => {
function assert_matches(query, expected) {
const matcher = typeahead.get_emoji_matcher(query);
assert.deepEqual(emojis.filter(matcher), expected);
assert.deepEqual(
emojis.filter((emoji) => matcher(emoji)),
expected,
);
}
assert_matches("notaemoji", []);

View File

@@ -381,9 +381,8 @@ class CommonUtils {
*/
async get_rendered_messages(page, table = "zhome") {
return await page.evaluate((table) => {
const data = [];
const $recipient_rows = $(`#${table}`).find(".recipient_row");
$.map($recipient_rows, (element) => {
return $recipient_rows.toArray().map((element) => {
const $el = $(element);
const stream_name = $el.find(".stream_label").text().trim();
const topic_name = $el.find(".stream_topic a").text().trim();
@@ -395,15 +394,13 @@ class CommonUtils {
key = `${stream_name} > ${topic_name}`;
}
const messages = [];
$.map($el.find(".message_row .message_content"), (message_row) => {
messages.push(message_row.textContent.trim());
});
const messages = $el
.find(".message_row .message_content")
.toArray()
.map((message_row) => message_row.textContent.trim());
data.push([key, messages]);
return [key, messages];
});
return data;
}, table);
}

View File

@@ -118,9 +118,9 @@ function diff_strings(string_0, string_1) {
}
}
const emphasize_codes = (string) =>
"\u001B[34m" + string.slice(0, 1) + "\u001B[0m" + string.slice(1);
output_lines = output_lines.map(emphasize_codes);
output_lines = output_lines.map(
(string) => "\u001B[34m" + string.slice(0, 1) + "\u001B[0m" + string.slice(1),
);
return output_lines.join("\n");
}

View File

@@ -286,7 +286,7 @@ function maybe_shrink_list(user_ids, user_filter_text) {
return user_ids;
}
user_ids = user_ids.filter(user_is_recently_active);
user_ids = user_ids.filter((user_id) => user_is_recently_active(user_id));
return user_ids;
}
@@ -327,7 +327,7 @@ exports.get_filtered_and_sorted_user_ids = function (user_filter_text) {
};
exports.get_items_for_users = function (user_ids) {
const user_info = user_ids.map(exports.info_for);
const user_info = user_ids.map((user_id) => exports.info_for(user_id));
compose_fade.update_user_info(user_info, fade_config);
return user_info;
};

View File

@@ -23,8 +23,7 @@ class BuddyListConf {
get_li_from_key(opts) {
const user_id = opts.key;
const container = $(this.container_sel);
const sel = this.item_sel + "[data-user-id='" + user_id + "']";
return container.find(sel);
return container.find(this.item_sel + "[data-user-id='" + user_id + "']");
}
get_key_from_li(opts) {
@@ -97,7 +96,7 @@ class BuddyList extends BuddyListConf {
}
get_items() {
const obj = this.container.find(this.item_sel);
const obj = this.container.find(`${this.item_sel}`);
return obj.map((i, elem) => $(elem));
}

View File

@@ -826,7 +826,7 @@ exports.initialize = function () {
$("body").on("click", "[data-make-editable]", function () {
const selector = $(this).attr("data-make-editable");
const edit_area = $(this).parent().find(selector);
const edit_area = $(this).parent().find(`${selector}`);
$(selector).removeClass("stream-name-edit-box");
if (edit_area.attr("contenteditable") === "true") {
$("[data-finish-editing='" + selector + "']").hide();
@@ -857,7 +857,7 @@ exports.initialize = function () {
if (map[selector].on_save) {
map[selector].on_save(e);
$(this).hide();
$(this).parent().find(selector).attr("contenteditable", false);
$(this).parent().find(`${selector}`).attr("contenteditable", false);
$("[data-make-editable='" + selector + "']").html("");
}
});

View File

@@ -418,10 +418,6 @@ exports.get_pm_people = function (query) {
exports.get_person_suggestions = function (query, opts) {
query = typeahead.clean_query_lowercase(query);
const person_matcher = (item) => exports.query_matches_person(query, item);
const group_matcher = (item) => query_matches_name_description(query, item);
function filter_persons(all_persons) {
let persons;
@@ -434,7 +430,7 @@ exports.get_person_suggestions = function (query, opts) {
if (opts.want_broadcast) {
persons = persons.concat(exports.broadcast_mentions());
}
return persons.filter(person_matcher);
return persons.filter((item) => exports.query_matches_person(query, item));
}
let groups;
@@ -445,7 +441,7 @@ exports.get_person_suggestions = function (query, opts) {
groups = [];
}
const filtered_groups = groups.filter(group_matcher);
const filtered_groups = groups.filter((item) => query_matches_name_description(query, item));
/*
Let's say you're on a big realm and type

View File

@@ -332,7 +332,9 @@ exports.launch = function () {
(draft_a, draft_b) => draft_b.updatedAt - draft_a.updatedAt,
);
const sorted_formatted_drafts = sorted_raw_drafts.map(exports.format_draft).filter(Boolean);
const sorted_formatted_drafts = sorted_raw_drafts
.map((draft_row) => exports.format_draft(draft_row))
.filter(Boolean);
return sorted_formatted_drafts;
}

View File

@@ -699,9 +699,7 @@ class Filter {
}
_fix_redundant_is_private(terms) {
const is_pm_with = (term) => Filter.term_type(term) === "pm-with";
if (!terms.some(is_pm_with)) {
if (!terms.some((term) => Filter.term_type(term) === "pm-with")) {
return terms;
}
@@ -736,7 +734,7 @@ class Filter {
_build_sorted_term_types() {
const terms = this._operators;
const term_types = terms.map(Filter.term_type);
const term_types = terms.map((term) => Filter.term_type(term));
const sorted_terms = Filter.sorted_term_types(term_types);
return sorted_terms;
}

View File

@@ -35,14 +35,17 @@ exports.get_filtered_items = (value, list, opts) => {
if (!opts.filter) {
if (get_item) {
return list.map(get_item);
return list.map((key) => get_item(key));
}
return [...list];
}
if (opts.filter.filterer) {
if (get_item) {
return opts.filter.filterer(list.map(get_item), value);
return opts.filter.filterer(
list.map((key) => get_item(key)),
value,
);
}
return opts.filter.filterer(list, value);
}
@@ -62,7 +65,7 @@ exports.get_filtered_items = (value, list, opts) => {
return result;
}
return list.filter(predicate);
return list.filter((item) => predicate(item));
};
exports.alphabetic_sort = (prop) =>

View File

@@ -41,7 +41,9 @@ function maybe_add_narrowed_messages(messages, msg_list) {
// edited in between when they sent the message and when
// we hear back from the server and can echo the new
// message. Arguably, it's counterproductive complexity.
new_messages = new_messages.map(message_store.add_message_metadata);
new_messages = new_messages.map((message) =>
message_store.add_message_metadata(message),
);
message_util.add_new_messages(new_messages, msg_list);
unread_ops.process_visible();
@@ -61,7 +63,7 @@ function maybe_add_narrowed_messages(messages, msg_list) {
}
exports.insert_new_messages = function insert_new_messages(messages, sent_by_this_client) {
messages = messages.map(message_store.add_message_metadata);
messages = messages.map((message) => message_store.add_message_metadata(message));
unread.process_loaded_messages(messages);
huddle_data.process_loaded_messages(messages);

View File

@@ -167,7 +167,7 @@ class MessageListData {
filter_incoming(messages) {
const predicate = this._get_predicate();
return messages.filter(predicate);
return messages.filter((message) => predicate(message));
}
unmuted_messages(messages) {
@@ -304,10 +304,9 @@ class MessageListData {
this._local_only.delete(id);
}
const remove_messages = (msg) => !msg_ids_to_remove.has(msg.id);
this._items = this._items.filter(remove_messages);
this._items = this._items.filter((msg) => !msg_ids_to_remove.has(msg.id));
if (this.muting_enabled) {
this._all_items = this._all_items.filter(remove_messages);
this._all_items = this._all_items.filter((msg) => !msg_ids_to_remove.has(msg.id));
}
}

View File

@@ -49,33 +49,33 @@ exports.each = function (f) {
};
exports.get_pm_emails = function (message) {
function email(user_id) {
const person = people.get_by_user_id(user_id);
if (!person) {
blueslip.error("Unknown user id " + user_id);
return "?";
}
return person.email;
}
const user_ids = people.pm_with_user_ids(message);
const emails = user_ids.map(email).sort();
const emails = user_ids
.map((user_id) => {
const person = people.get_by_user_id(user_id);
if (!person) {
blueslip.error("Unknown user id " + user_id);
return "?";
}
return person.email;
})
.sort();
return emails.join(", ");
};
exports.get_pm_full_names = function (message) {
function name(user_id) {
const person = people.get_by_user_id(user_id);
if (!person) {
blueslip.error("Unknown user id " + user_id);
return "?";
}
return person.full_name;
}
const user_ids = people.pm_with_user_ids(message);
const names = user_ids.map(name).sort();
const names = user_ids
.map((user_id) => {
const person = people.get_by_user_id(user_id);
if (!person) {
blueslip.error("Unknown user id " + user_id);
return "?";
}
return person.full_name;
})
.sort();
return names.join(", ");
};

View File

@@ -24,7 +24,7 @@ function add_messages(messages, msg_list, opts) {
// one needs an outer element wrapping an object to use this
// construction.
function is_element_in_message_content(message, element_selector) {
return $(`<div>${message.content}</div>`).find(element_selector).length > 0;
return $(`<div>${message.content}</div>`).find(`${element_selector}`).length > 0;
}
exports.message_has_link = function (message) {

View File

@@ -153,11 +153,9 @@ export function huddle_string(message) {
let user_ids = message.display_recipient.map((recip) => recip.id);
function is_huddle_recip(user_id) {
return user_id && people_by_user_id_dict.has(user_id) && !is_my_user_id(user_id);
}
user_ids = user_ids.filter(is_huddle_recip);
user_ids = user_ids.filter(
(user_id) => user_id && people_by_user_id_dict.has(user_id) && !is_my_user_id(user_id),
);
if (user_ids.length <= 1) {
return undefined;
@@ -302,7 +300,7 @@ export function get_recipients(user_ids_string) {
return my_full_name();
}
const names = other_ids.map(get_full_name).sort();
const names = other_ids.map((user_id) => get_full_name(user_id)).sort();
return names.join(", ");
}
@@ -873,7 +871,7 @@ export function get_people_for_search_bar(query) {
const message_people = get_message_people();
const small_results = message_people.filter(pred);
const small_results = message_people.filter((item) => pred(item));
if (small_results.length >= 5) {
return small_results;
@@ -903,7 +901,7 @@ export function build_person_matcher(query) {
query = query.trim();
const termlets = query.toLowerCase().split(/\s+/);
const termlet_matchers = termlets.map(build_termlet_matcher);
const termlet_matchers = termlets.map((termlet) => build_termlet_matcher(termlet));
return function (user) {
const email = user.email.toLowerCase();

View File

@@ -26,7 +26,7 @@ exports.pm_ul = (convos) => {
];
return vdom.ul({
attrs,
keyed_nodes: convos.map(exports.keyed_pm_li),
keyed_nodes: convos.map((convo) => exports.keyed_pm_li(convo)),
});
};

View File

@@ -582,7 +582,9 @@ exports.save_discard_widget_status_handler = (subsection) => {
subsection.find(".subsection-failed-status p").hide();
subsection.find(".save-button").show();
const properties_elements = get_subsection_property_elements(subsection);
const show_change_process_button = properties_elements.some(check_property_changed);
const show_change_process_button = properties_elements.some((elem) =>
check_property_changed(elem),
);
const save_btn_controls = subsection.find(".subsection-header .save-button-controls");
const button_state = show_change_process_button ? "unsaved" : "discarded";

View File

@@ -76,8 +76,7 @@ class SettingsPanelMenu {
enter_panel() {
const panel = this.get_panel();
const sel = "input:visible,button:visible,select:visible";
const panel_elem = panel.find(sel).first();
const panel_elem = panel.find("input:visible,button:visible,select:visible").first();
panel_elem.trigger("focus");
return true;

View File

@@ -24,7 +24,7 @@ exports.build_default_stream_table = function () {
const table = $("#admin_default_streams_table").expectOne();
const stream_ids = stream_data.get_default_stream_ids();
const subs = stream_ids.map(stream_data.get_sub_by_id);
const subs = stream_ids.map((stream_id) => stream_data.get_sub_by_id(stream_id));
list_render.create(table, subs, {
name: "default_streams_list",

View File

@@ -228,9 +228,11 @@ function submit_add_subscriber_form(e) {
function invite_success(data) {
exports.pill_widget.clear();
const subscribed_users = Object.keys(data.subscribed).map(people.get_by_email);
const already_subscribed_users = Object.keys(data.already_subscribed).map(
people.get_by_email,
const subscribed_users = Object.keys(data.subscribed).map((email) =>
people.get_by_email(email),
);
const already_subscribed_users = Object.keys(data.already_subscribed).map((email) =>
people.get_by_email(email),
);
const html = render_stream_subscription_info({subscribed_users, already_subscribed_users});

View File

@@ -128,7 +128,7 @@ class TopicListWidget {
const attrs = [["class", "topic-list"]];
const nodes = list_info.items.map(exports.keyed_topic_li);
const nodes = list_info.items.map((convo) => exports.keyed_topic_li(convo));
if (spinner) {
nodes.push(exports.spinner_li());

View File

@@ -46,7 +46,7 @@ function get_users_typing_for_narrow() {
exports.render_notifications_for_narrow = function () {
const user_ids = get_users_typing_for_narrow();
const users_typing = user_ids.map(people.get_by_user_id);
const users_typing = user_ids.map((user_id) => people.get_by_user_id(user_id));
if (users_typing.length === 0) {
$("#typing_notifications").hide();
} else {

View File

@@ -218,14 +218,10 @@ exports.is_mobile = function () {
return new RegExp(regex, "i").test(window.navigator.userAgent);
};
function to_int(s) {
return Number.parseInt(s, 10);
}
exports.sorted_ids = function (ids) {
// This mapping makes sure we are using ints, and
// it also makes sure we don't mutate the list.
let id_list = ids.map(to_int);
let id_list = ids.map((s) => Number.parseInt(s, 10));
id_list.sort((a, b) => a - b);
id_list = _.sortedUniq(id_list);

View File

@@ -160,7 +160,7 @@ export function sort_emojis(objs, query) {
return popular_set.has(obj.emoji_code) && decent_match(obj.emoji_name);
}
const popular_emoji_matches = objs.filter(is_popular);
const popular_emoji_matches = objs.filter((obj) => is_popular(obj));
const others = objs.filter((obj) => !is_popular(obj));
const triage_results = triage(query, others, (x) => x.emoji_name);