mirror of https://github.com/zulip/zulip.git
js: Convert static/js/echo.js to ES6 module.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
parent
f66441adb2
commit
1a45d53f3a
|
@ -166,7 +166,6 @@
|
||||||
"current_msg_list": true,
|
"current_msg_list": true,
|
||||||
"drafts": false,
|
"drafts": false,
|
||||||
"dropdown_list_widget": false,
|
"dropdown_list_widget": false,
|
||||||
"echo": false,
|
|
||||||
"emoji_picker": false,
|
"emoji_picker": false,
|
||||||
"favicon": false,
|
"favicon": false,
|
||||||
"flatpickr": false,
|
"flatpickr": false,
|
||||||
|
|
|
@ -33,12 +33,6 @@ set_global("reload_state", {
|
||||||
// we also directly write to pointer
|
// we also directly write to pointer
|
||||||
set_global("pointer", {});
|
set_global("pointer", {});
|
||||||
|
|
||||||
set_global("echo", {
|
|
||||||
process_from_server(messages) {
|
|
||||||
return messages;
|
|
||||||
},
|
|
||||||
update_realm_filter_rules: noop,
|
|
||||||
});
|
|
||||||
set_global("ui_report", {
|
set_global("ui_report", {
|
||||||
hide_error() {
|
hide_error() {
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -84,7 +84,6 @@ ui.get_scroll_element = (element) => element;
|
||||||
|
|
||||||
zrequire("alert_words");
|
zrequire("alert_words");
|
||||||
zrequire("hash_util");
|
zrequire("hash_util");
|
||||||
zrequire("echo");
|
|
||||||
zrequire("colorspace");
|
zrequire("colorspace");
|
||||||
zrequire("stream_color");
|
zrequire("stream_color");
|
||||||
zrequire("stream_edit");
|
zrequire("stream_edit");
|
||||||
|
|
|
@ -57,7 +57,6 @@ import "../reload";
|
||||||
import "../compose_fade";
|
import "../compose_fade";
|
||||||
import "../markdown";
|
import "../markdown";
|
||||||
import "../local_message";
|
import "../local_message";
|
||||||
import "../echo";
|
|
||||||
import "../sent_messages";
|
import "../sent_messages";
|
||||||
import "../compose_state";
|
import "../compose_state";
|
||||||
import "../compose_actions";
|
import "../compose_actions";
|
||||||
|
|
|
@ -9,6 +9,7 @@ const render_compose_invite_users = require("../templates/compose_invite_users.h
|
||||||
const render_compose_not_subscribed = require("../templates/compose_not_subscribed.hbs");
|
const render_compose_not_subscribed = require("../templates/compose_not_subscribed.hbs");
|
||||||
const render_compose_private_stream_alert = require("../templates/compose_private_stream_alert.hbs");
|
const render_compose_private_stream_alert = require("../templates/compose_private_stream_alert.hbs");
|
||||||
|
|
||||||
|
const echo = require("./echo");
|
||||||
const peer_data = require("./peer_data");
|
const peer_data = require("./peer_data");
|
||||||
const people = require("./people");
|
const people = require("./people");
|
||||||
const rendered_markdown = require("./rendered_markdown");
|
const rendered_markdown = require("./rendered_markdown");
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
"use strict";
|
import * as people from "./people";
|
||||||
|
import * as util from "./util";
|
||||||
|
|
||||||
const people = require("./people");
|
|
||||||
const util = require("./util");
|
|
||||||
// Docs: https://zulip.readthedocs.io/en/latest/subsystems/sending-messages.html
|
// Docs: https://zulip.readthedocs.io/en/latest/subsystems/sending-messages.html
|
||||||
|
|
||||||
const waiting_for_id = new Map();
|
const waiting_for_id = new Map();
|
||||||
|
@ -36,7 +35,7 @@ function resend_message(message, row) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function on_error(response) {
|
function on_error(response) {
|
||||||
exports.message_send_error(message.id, response);
|
message_send_error(message.id, response);
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
retry_spinner.toggleClass("rotating", false);
|
retry_spinner.toggleClass("rotating", false);
|
||||||
}, 300);
|
}, 300);
|
||||||
|
@ -47,7 +46,7 @@ function resend_message(message, row) {
|
||||||
transmit.send_message(message, on_success, on_error);
|
transmit.send_message(message, on_success, on_error);
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.build_display_recipient = function (message) {
|
export function build_display_recipient(message) {
|
||||||
if (message.type === "stream") {
|
if (message.type === "stream") {
|
||||||
return message.stream;
|
return message.stream;
|
||||||
}
|
}
|
||||||
|
@ -108,9 +107,9 @@ exports.build_display_recipient = function (message) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return display_recipient;
|
return display_recipient;
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.insert_local_message = function (message_request, local_id_float) {
|
export function insert_local_message(message_request, local_id_float) {
|
||||||
// Shallow clone of message request object that is turned into something suitable
|
// Shallow clone of message request object that is turned into something suitable
|
||||||
// for zulip.js:add_message
|
// for zulip.js:add_message
|
||||||
// Keep this in sync with changes to compose.create_message_object
|
// Keep this in sync with changes to compose.create_message_object
|
||||||
|
@ -138,16 +137,16 @@ exports.insert_local_message = function (message_request, local_id_float) {
|
||||||
waiting_for_id.set(message.local_id, message);
|
waiting_for_id.set(message.local_id, message);
|
||||||
waiting_for_ack.set(message.local_id, message);
|
waiting_for_ack.set(message.local_id, message);
|
||||||
|
|
||||||
message.display_recipient = exports.build_display_recipient(message);
|
message.display_recipient = build_display_recipient(message);
|
||||||
local_message.insert_message(message);
|
local_message.insert_message(message);
|
||||||
return message;
|
return message;
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.is_slash_command = function (content) {
|
export function is_slash_command(content) {
|
||||||
return !content.startsWith("/me") && content.startsWith("/");
|
return !content.startsWith("/me") && content.startsWith("/");
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.try_deliver_locally = function (message_request) {
|
export function try_deliver_locally(message_request) {
|
||||||
if (markdown.contains_backend_only_syntax(message_request.content)) {
|
if (markdown.contains_backend_only_syntax(message_request.content)) {
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
@ -156,7 +155,7 @@ exports.try_deliver_locally = function (message_request) {
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (exports.is_slash_command(message_request.content)) {
|
if (is_slash_command(message_request.content)) {
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -180,11 +179,11 @@ exports.try_deliver_locally = function (message_request) {
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
const message = exports.insert_local_message(message_request, local_id_float);
|
const message = insert_local_message(message_request, local_id_float);
|
||||||
return message;
|
return message;
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.edit_locally = function (message, request) {
|
export function edit_locally(message, request) {
|
||||||
// Responsible for doing the rendering work of locally editing the
|
// Responsible for doing the rendering work of locally editing the
|
||||||
// content ofa message. This is used in several code paths:
|
// content ofa message. This is used in several code paths:
|
||||||
// * Editing a message where a message was locally echoed but
|
// * Editing a message where a message was locally echoed but
|
||||||
|
@ -260,9 +259,9 @@ exports.edit_locally = function (message, request) {
|
||||||
}
|
}
|
||||||
stream_list.update_streams_sidebar();
|
stream_list.update_streams_sidebar();
|
||||||
pm_list.update_private_messages();
|
pm_list.update_private_messages();
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.reify_message_id = function (local_id, server_id) {
|
export function reify_message_id(local_id, server_id) {
|
||||||
const message = waiting_for_id.get(local_id);
|
const message = waiting_for_id.get(local_id);
|
||||||
waiting_for_id.delete(local_id);
|
waiting_for_id.delete(local_id);
|
||||||
|
|
||||||
|
@ -281,9 +280,9 @@ exports.reify_message_id = function (local_id, server_id) {
|
||||||
message_store.reify_message_id(opts);
|
message_store.reify_message_id(opts);
|
||||||
notifications.reify_message_id(opts);
|
notifications.reify_message_id(opts);
|
||||||
recent_topics.reify_message_id_if_available(opts);
|
recent_topics.reify_message_id_if_available(opts);
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.process_from_server = function (messages) {
|
export function process_from_server(messages) {
|
||||||
const msgs_to_rerender = [];
|
const msgs_to_rerender = [];
|
||||||
const non_echo_messages = [];
|
const non_echo_messages = [];
|
||||||
|
|
||||||
|
@ -300,7 +299,7 @@ exports.process_from_server = function (messages) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.reify_message_id(local_id, message.id);
|
reify_message_id(local_id, message.id);
|
||||||
|
|
||||||
if (message_store.get(message.id).failed_request) {
|
if (message_store.get(message.id).failed_request) {
|
||||||
failed_message_success(message.id);
|
failed_message_success(message.id);
|
||||||
|
@ -346,18 +345,18 @@ exports.process_from_server = function (messages) {
|
||||||
}
|
}
|
||||||
|
|
||||||
return non_echo_messages;
|
return non_echo_messages;
|
||||||
};
|
}
|
||||||
|
|
||||||
exports._patch_waiting_for_ack = function (data) {
|
export function _patch_waiting_for_ack(data) {
|
||||||
// Only for testing
|
// Only for testing
|
||||||
waiting_for_ack = data;
|
waiting_for_ack = data;
|
||||||
};
|
}
|
||||||
|
|
||||||
exports.message_send_error = function (message_id, error_response) {
|
export function message_send_error(message_id, error_response) {
|
||||||
// Error sending message, show inline
|
// Error sending message, show inline
|
||||||
message_store.get(message_id).failed_request = true;
|
message_store.get(message_id).failed_request = true;
|
||||||
ui.show_message_failed(message_id, error_response);
|
ui.show_message_failed(message_id, error_response);
|
||||||
};
|
}
|
||||||
|
|
||||||
function abort_message(message) {
|
function abort_message(message) {
|
||||||
// Remove in all lists in which it exists
|
// Remove in all lists in which it exists
|
||||||
|
@ -366,7 +365,7 @@ function abort_message(message) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.initialize = function () {
|
export function initialize() {
|
||||||
function on_failed_action(selector, callback) {
|
function on_failed_action(selector, callback) {
|
||||||
$("#main_div").on("click", selector, function (e) {
|
$("#main_div").on("click", selector, function (e) {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
|
@ -389,6 +388,4 @@ exports.initialize = function () {
|
||||||
|
|
||||||
on_failed_action(".remove-failed-message", abort_message);
|
on_failed_action(".remove-failed-message", abort_message);
|
||||||
on_failed_action(".refresh-failed-message", resend_message);
|
on_failed_action(".refresh-failed-message", resend_message);
|
||||||
};
|
}
|
||||||
|
|
||||||
window.echo = exports;
|
|
||||||
|
|
|
@ -38,7 +38,6 @@ declare let copy_and_paste: any;
|
||||||
declare let csrf_token: any;
|
declare let csrf_token: any;
|
||||||
declare let current_msg_list: any;
|
declare let current_msg_list: any;
|
||||||
declare let drafts: any;
|
declare let drafts: any;
|
||||||
declare let echo: any;
|
|
||||||
declare let emoji: any;
|
declare let emoji: any;
|
||||||
declare let emoji_picker: any;
|
declare let emoji_picker: any;
|
||||||
declare let favicon: any;
|
declare let favicon: any;
|
||||||
|
|
|
@ -5,6 +5,8 @@ const ClipboardJS = require("clipboard");
|
||||||
const render_message_edit_form = require("../templates/message_edit_form.hbs");
|
const render_message_edit_form = require("../templates/message_edit_form.hbs");
|
||||||
const render_topic_edit_form = require("../templates/topic_edit_form.hbs");
|
const render_topic_edit_form = require("../templates/topic_edit_form.hbs");
|
||||||
|
|
||||||
|
const echo = require("./echo");
|
||||||
|
|
||||||
const currently_editing_messages = new Map();
|
const currently_editing_messages = new Map();
|
||||||
let currently_deleting_messages = [];
|
let currently_deleting_messages = [];
|
||||||
let currently_topic_editing_messages = [];
|
let currently_topic_editing_messages = [];
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
const _ = require("lodash");
|
const _ = require("lodash");
|
||||||
|
|
||||||
|
const echo = require("./echo");
|
||||||
// Docs: https://zulip.readthedocs.io/en/latest/subsystems/events-system.html
|
// Docs: https://zulip.readthedocs.io/en/latest/subsystems/events-system.html
|
||||||
|
|
||||||
let waiting_on_homeview_load = true;
|
let waiting_on_homeview_load = true;
|
||||||
|
|
|
@ -8,6 +8,7 @@ const emoji = require("../shared/js/emoji");
|
||||||
const fenced_code = require("../shared/js/fenced_code");
|
const fenced_code = require("../shared/js/fenced_code");
|
||||||
const render_edit_content_button = require("../templates/edit_content_button.hbs");
|
const render_edit_content_button = require("../templates/edit_content_button.hbs");
|
||||||
|
|
||||||
|
const echo = require("./echo");
|
||||||
const emojisets = require("./emojisets");
|
const emojisets = require("./emojisets");
|
||||||
const markdown_config = require("./markdown_config");
|
const markdown_config = require("./markdown_config");
|
||||||
const people = require("./people");
|
const people = require("./people");
|
||||||
|
|
Loading…
Reference in New Issue