Use Object.assign instead of _.extend

This commit is contained in:
JC Brand 2019-04-29 09:07:15 +02:00
parent 51d0dc8d23
commit 34469425d6
27 changed files with 172 additions and 198 deletions

View File

@ -21,9 +21,9 @@
"rules": { "rules": {
"lodash/prefer-lodash-method": [2, { "lodash/prefer-lodash-method": [2, {
"ignoreMethods": [ "ignoreMethods": [
"every", "keys", "find", "endsWith", "startsWith", "filter", "reduce", "isArray", "assign", "every", "keys", "find", "endsWith", "startsWith", "filter",
"create", "map", "replace", "some", "toLower", "split", "trim", "forEach", "reduce", "isArray", "create", "map", "replace", "some", "toLower",
"toUpperCase", "includes" "split", "trim", "forEach", "toUpperCase", "includes"
] ]
}], }],
"lodash/prefer-invoke-map": "off", "lodash/prefer-invoke-map": "off",

163
dist/converse.js vendored
View File

@ -32798,7 +32798,6 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
//# sourceMappingURL=pluggable.js.map //# sourceMappingURL=pluggable.js.map
/***/ }), /***/ }),
/***/ "./node_modules/process/browser.js": /***/ "./node_modules/process/browser.js":
@ -47959,8 +47958,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
} // Make it an event emitter } // Make it an event emitter
_.extend(AutoComplete.prototype, Backbone.Events); Object.assign(AutoComplete.prototype, Backbone.Events);
const helpers = { const helpers = {
getElement(expr, el) { getElement(expr, el) {
return typeof expr === "string" ? (el || document).querySelector(expr) : expr || null; return typeof expr === "string" ? (el || document).querySelector(expr) : expr || null;
@ -48235,7 +48233,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
_converse.api.promises.add('bookmarksInitialized'); // Pure functions on the _converse object _converse.api.promises.add('bookmarksInitialized'); // Pure functions on the _converse object
_.extend(_converse, { Object.assign(_converse, {
removeBookmarkViaEvent(ev) { removeBookmarkViaEvent(ev) {
/* Remove a bookmark as determined by the passed in /* Remove a bookmark as determined by the passed in
* event. * event.
@ -48266,7 +48264,6 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
} }
}); });
_converse.Bookmark = Backbone.Model; _converse.Bookmark = Backbone.Model;
_converse.Bookmarks = Backbone.Collection.extend({ _converse.Bookmarks = Backbone.Collection.extend({
model: _converse.Bookmark, model: _converse.Bookmark,
@ -49063,7 +49060,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
}, },
toHTML() { toHTML() {
return templates_emojis_html__WEBPACK_IMPORTED_MODULE_10___default()(_.extend(this.model.toJSON(), { return templates_emojis_html__WEBPACK_IMPORTED_MODULE_10___default()(Object.assign(this.model.toJSON(), {
'_': _, '_': _,
'transform': _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_21__["default"].getEmojiRenderer(_converse), 'transform': _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_21__["default"].getEmojiRenderer(_converse),
'emojis_by_category': _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_21__["default"].getEmojisByCategory(_converse), 'emojis_by_category': _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_21__["default"].getEmojisByCategory(_converse),
@ -49139,7 +49136,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
const vcard = _.get(this.model, 'vcard'), const vcard = _.get(this.model, 'vcard'),
vcard_json = vcard ? vcard.toJSON() : {}; vcard_json = vcard ? vcard.toJSON() : {};
this.el.innerHTML = templates_chatbox_head_html__WEBPACK_IMPORTED_MODULE_8___default()(_.extend(vcard_json, this.model.toJSON(), { this.el.innerHTML = templates_chatbox_head_html__WEBPACK_IMPORTED_MODULE_8___default()(Object.assign(vcard_json, this.model.toJSON(), {
'_converse': _converse, '_converse': _converse,
'info_close': __('Close this chat box'), 'info_close': __('Close this chat box'),
'display_name': this.model.getDisplayName() 'display_name': this.model.getDisplayName()
@ -49193,7 +49190,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
const vcard = _.get(this.model, 'vcard'), const vcard = _.get(this.model, 'vcard'),
vcard_json = vcard ? vcard.toJSON() : {}; vcard_json = vcard ? vcard.toJSON() : {};
return templates_user_details_modal_html__WEBPACK_IMPORTED_MODULE_20___default()(_.extend(this.model.toJSON(), vcard_json, { return templates_user_details_modal_html__WEBPACK_IMPORTED_MODULE_20___default()(Object.assign(this.model.toJSON(), vcard_json, {
'_': _, '_': _,
'__': __, '__': __,
'view': this, 'view': this,
@ -49331,7 +49328,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
render() { render() {
// XXX: Is this still needed? // XXX: Is this still needed?
this.el.setAttribute('id', this.model.get('box_id')); this.el.setAttribute('id', this.model.get('box_id'));
this.el.innerHTML = templates_chatbox_html__WEBPACK_IMPORTED_MODULE_7___default()(_.extend(this.model.toJSON(), { this.el.innerHTML = templates_chatbox_html__WEBPACK_IMPORTED_MODULE_7___default()(Object.assign(this.model.toJSON(), {
'unread_msgs': __('You have unread messages') 'unread_msgs': __('You have unread messages')
})); }));
this.content = this.el.querySelector('.chat-content'); this.content = this.el.querySelector('.chat-content');
@ -49372,7 +49369,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
} }
const form_container = this.el.querySelector('.bottom-panel'); const form_container = this.el.querySelector('.bottom-panel');
form_container.innerHTML = templates_chatbox_message_form_html__WEBPACK_IMPORTED_MODULE_9___default()(_.extend(this.model.toJSON(), { form_container.innerHTML = templates_chatbox_message_form_html__WEBPACK_IMPORTED_MODULE_9___default()(Object.assign(this.model.toJSON(), {
'hint_value': _.get(this.el.querySelector('.spoiler-hint'), 'value'), 'hint_value': _.get(this.el.querySelector('.spoiler-hint'), 'value'),
'label_message': placeholder, 'label_message': placeholder,
'label_send': __('Send'), 'label_send': __('Send'),
@ -49491,7 +49488,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
label_toggle_spoiler = __('Click to write your message as a spoiler'); label_toggle_spoiler = __('Click to write your message as a spoiler');
} }
return _.extend(options || {}, { return Object.assign(options || {}, {
'label_clear': __('Clear all messages'), 'label_clear': __('Clear all messages'),
'tooltip_insert_smiley': __('Insert emojis'), 'tooltip_insert_smiley': __('Insert emojis'),
'tooltip_start_call': __('Start a call'), 'tooltip_start_call': __('Start a call'),
@ -50445,7 +50442,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "chatview" namespace groups methods pertaining to views * The "chatview" namespace groups methods pertaining to views
* for one-on-one chats. * for one-on-one chats.
@ -50486,7 +50483,6 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -50780,7 +50776,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
} }
} }
this.el.innerHTML = templates_controlbox_html__WEBPACK_IMPORTED_MODULE_8___default()(_.extend(this.model.toJSON())); this.el.innerHTML = templates_controlbox_html__WEBPACK_IMPORTED_MODULE_8___default()(Object.assign(this.model.toJSON()));
if (!this.model.get('closed')) { if (!this.model.get('closed')) {
this.show(); this.show();
@ -50968,7 +50964,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
feedback_class = CONNECTION_STATUS_CSS_CLASS[pretty_status]; feedback_class = CONNECTION_STATUS_CSS_CLASS[pretty_status];
} }
return templates_login_panel_html__WEBPACK_IMPORTED_MODULE_10___default()(_.extend(this.model.toJSON(), { return templates_login_panel_html__WEBPACK_IMPORTED_MODULE_10___default()(Object.assign(this.model.toJSON(), {
'__': __, '__': __,
'_converse': _converse, '_converse': _converse,
'ANONYMOUS': _converse.ANONYMOUS, 'ANONYMOUS': _converse.ANONYMOUS,
@ -51236,7 +51232,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "controlbox" namespace groups methods pertaining to the * The "controlbox" namespace groups methods pertaining to the
* controlbox view * controlbox view
@ -51929,7 +51925,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
render() { render() {
this.el.setAttribute('id', this.model.get('box_id')); this.el.setAttribute('id', this.model.get('box_id'));
this.el.innerHTML = templates_chatbox_html__WEBPACK_IMPORTED_MODULE_2___default()(_.extend(this.model.toJSON(), { this.el.innerHTML = templates_chatbox_html__WEBPACK_IMPORTED_MODULE_2___default()(Object.assign(this.model.toJSON(), {
info_close: '', info_close: '',
label_personal_message: '', label_personal_message: '',
show_send_button: false, show_send_button: false,
@ -52128,7 +52124,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
this.addSpinner(); this.addSpinner();
_converse.api.archive.query(_.extend({ _converse.api.archive.query(Object.assign({
'groupchat': is_groupchat, 'groupchat': is_groupchat,
'before': '', 'before': '',
// Page backwards from the most recent message // Page backwards from the most recent message
@ -52320,7 +52316,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
_converse.MessageVersionsModal = _converse.BootstrapModal.extend({ _converse.MessageVersionsModal = _converse.BootstrapModal.extend({
toHTML() { toHTML() {
return templates_message_versions_modal_html__WEBPACK_IMPORTED_MODULE_8___default()(_.extend(this.model.toJSON(), { return templates_message_versions_modal_html__WEBPACK_IMPORTED_MODULE_8___default()(Object.assign(this.model.toJSON(), {
'__': __ '__': __
})); }));
} }
@ -52414,7 +52410,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
moment_time = moment(this.model.get('time')), moment_time = moment(this.model.get('time')),
role = this.model.vcard ? this.model.vcard.get('role') : null, role = this.model.vcard ? this.model.vcard.get('role') : null,
roles = role ? role.split(',') : []; roles = role ? role.split(',') : [];
const msg = _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_9__["default"].stringToElement(templates_message_html__WEBPACK_IMPORTED_MODULE_7___default()(_.extend(this.model.toJSON(), { const msg = _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_9__["default"].stringToElement(templates_message_html__WEBPACK_IMPORTED_MODULE_7___default()(Object.assign(this.model.toJSON(), {
'__': __, '__': __,
'is_me_message': is_me_message, 'is_me_message': is_me_message,
'roles': roles, 'roles': roles,
@ -52458,7 +52454,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
renderErrorMessage() { renderErrorMessage() {
const moment_time = moment(this.model.get('time')), const moment_time = moment(this.model.get('time')),
msg = _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_9__["default"].stringToElement(templates_info_html__WEBPACK_IMPORTED_MODULE_6___default()(_.extend(this.model.toJSON(), { msg = _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_9__["default"].stringToElement(templates_info_html__WEBPACK_IMPORTED_MODULE_6___default()(Object.assign(this.model.toJSON(), {
'extra_classes': 'chat-error', 'extra_classes': 'chat-error',
'isodate': moment_time.format() 'isodate': moment_time.format()
}))); })));
@ -52497,7 +52493,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
}, },
renderFileUploadProgresBar() { renderFileUploadProgresBar() {
const msg = _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_9__["default"].stringToElement(templates_file_progress_html__WEBPACK_IMPORTED_MODULE_5___default()(_.extend(this.model.toJSON(), { const msg = _converse_headless_utils_emoji__WEBPACK_IMPORTED_MODULE_9__["default"].stringToElement(templates_file_progress_html__WEBPACK_IMPORTED_MODULE_5___default()(Object.assign(this.model.toJSON(), {
'__': __, '__': __,
'filename': this.model.file.name, 'filename': this.model.file.name,
'filesize': filesize__WEBPACK_IMPORTED_MODULE_2___default()(this.model.file.size) 'filesize': filesize__WEBPACK_IMPORTED_MODULE_2___default()(this.model.file.size)
@ -52963,7 +52959,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
}, },
render() { render() {
const data = _.extend(this.model.toJSON(), { const data = Object.assign(this.model.toJSON(), {
'tooltip': __('Click to restore this chat') 'tooltip': __('Click to restore this chat')
}); });
@ -53160,7 +53156,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
}, },
render() { render() {
this.el.innerHTML = templates_toggle_chats_html__WEBPACK_IMPORTED_MODULE_4___default()(_.extend(this.model.toJSON(), { this.el.innerHTML = templates_toggle_chats_html__WEBPACK_IMPORTED_MODULE_4___default()(Object.assign(this.model.toJSON(), {
'Minimized': __('Minimized') 'Minimized': __('Minimized')
})); }));
@ -53307,8 +53303,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins
let alert; let alert;
Object.assign(_converse.api, {
_.extend(_converse.api, {
'alert': { 'alert': {
'show'(type, title, messages) { 'show'(type, title, messages) {
if (_.isString(messages)) { if (_.isString(messages)) {
@ -53711,7 +53706,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
toHTML() { toHTML() {
const muc_domain = this.model.get('muc_domain') || _converse.muc_domain; const muc_domain = this.model.get('muc_domain') || _converse.muc_domain;
return templates_list_chatrooms_modal_html__WEBPACK_IMPORTED_MODULE_22___default()(_.extend(this.model.toJSON(), { return templates_list_chatrooms_modal_html__WEBPACK_IMPORTED_MODULE_22___default()(Object.assign(this.model.toJSON(), {
'heading_list_chatrooms': __('Query for Groupchats'), 'heading_list_chatrooms': __('Query for Groupchats'),
'label_server_address': __('Server address'), 'label_server_address': __('Server address'),
'label_query': __('Show groupchats'), 'label_query': __('Show groupchats'),
@ -53854,7 +53849,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
placeholder = muc_domain ? `name@${muc_domain}` : __('name@conference.example.org'); placeholder = muc_domain ? `name@${muc_domain}` : __('name@conference.example.org');
} }
return templates_add_chatroom_modal_html__WEBPACK_IMPORTED_MODULE_7___default()(_.extend(this.model.toJSON(), { return templates_add_chatroom_modal_html__WEBPACK_IMPORTED_MODULE_7___default()(Object.assign(this.model.toJSON(), {
'__': _converse.__, '__': _converse.__,
'_converse': _converse, '_converse': _converse,
'label_room_address': _converse.muc_domain ? __('Groupchat name') : __('Groupchat address'), 'label_room_address': _converse.muc_domain ? __('Groupchat name') : __('Groupchat address'),
@ -53907,7 +53902,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
this.model.setDomain(jid); this.model.setDomain(jid);
} }
_converse.api.rooms.open(jid, _.extend(data, { _converse.api.rooms.open(jid, Object.assign(data, {
jid jid
})); }));
@ -53926,7 +53921,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
}, },
toHTML() { toHTML() {
return templates_chatroom_details_modal_html__WEBPACK_IMPORTED_MODULE_12___default()(_.extend(this.model.toJSON(), { return templates_chatroom_details_modal_html__WEBPACK_IMPORTED_MODULE_12___default()(Object.assign(this.model.toJSON(), {
'_': _, '_': _,
'__': __, '__': __,
'display_name': __('Groupchat info for %1$s', this.model.getDisplayName()), 'display_name': __('Groupchat info for %1$s', this.model.getDisplayName()),
@ -54196,7 +54191,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
generateHeadingHTML() { generateHeadingHTML() {
/* Returns the heading HTML to be rendered. /* Returns the heading HTML to be rendered.
*/ */
return templates_chatroom_head_html__WEBPACK_IMPORTED_MODULE_16___default()(_.extend(this.model.toJSON(), { return templates_chatroom_head_html__WEBPACK_IMPORTED_MODULE_16___default()(Object.assign(this.model.toJSON(), {
'_converse': _converse, '_converse': _converse,
'Strophe': Strophe, 'Strophe': Strophe,
'info_close': __('Close and leave this groupchat'), 'info_close': __('Close and leave this groupchat'),
@ -54246,7 +54241,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
}, },
getToolbarOptions() { getToolbarOptions() {
return _.extend(_converse.ChatBoxView.prototype.getToolbarOptions.apply(this, arguments), { return Object.assign(_converse.ChatBoxView.prototype.getToolbarOptions.apply(this, arguments), {
'label_hide_occupants': __('Hide the list of participants'), 'label_hide_occupants': __('Hide the list of participants'),
'show_occupants_toggle': this.is_chatroom && _converse.visible_toolbar_buttons.toggle_occupants 'show_occupants_toggle': this.is_chatroom && _converse.visible_toolbar_buttons.toggle_occupants
}); });
@ -55579,7 +55574,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
toHTML() { toHTML() {
const show = this.model.get('show'); const show = this.model.get('show');
return templates_occupant_html__WEBPACK_IMPORTED_MODULE_23___default()(_.extend({ return templates_occupant_html__WEBPACK_IMPORTED_MODULE_23___default()(Object.assign({
'_': _, '_': _,
'jid': '', 'jid': '',
'show': show, 'show': show,
@ -55624,7 +55619,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
}, },
render() { render() {
this.el.innerHTML = templates_chatroom_sidebar_html__WEBPACK_IMPORTED_MODULE_20___default()(_.extend(this.chatroomview.model.toJSON(), { this.el.innerHTML = templates_chatroom_sidebar_html__WEBPACK_IMPORTED_MODULE_20___default()(Object.assign(this.chatroomview.model.toJSON(), {
'allow_muc_invitations': _converse.allow_muc_invitations, 'allow_muc_invitations': _converse.allow_muc_invitations,
'label_occupants': __('Participants') 'label_occupants': __('Participants')
})); }));
@ -55662,7 +55657,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
if (_.reduce(_.values(picks), iteratee)) { if (_.reduce(_.values(picks), iteratee)) {
const el = this.el.querySelector('.chatroom-features'); const el = this.el.querySelector('.chatroom-features');
el.innerHTML = templates_chatroom_features_html__WEBPACK_IMPORTED_MODULE_14___default()(_.extend(features.toJSON(), { el.innerHTML = templates_chatroom_features_html__WEBPACK_IMPORTED_MODULE_14___default()(Object.assign(features.toJSON(), {
__ __
})); }));
this.setOccupantsHeight(); this.setOccupantsHeight();
@ -55860,7 +55855,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_5__["default"].plugins
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "roomviews" namespace groups methods relevant to chatroom * The "roomviews" namespace groups methods relevant to chatroom
* (aka groupchats) views. * (aka groupchats) views.
@ -56543,7 +56538,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
if (encrypted.payload) { if (encrypted.payload) {
const key = key_and_tag.slice(0, 16), const key = key_and_tag.slice(0, 16),
tag = key_and_tag.slice(16); tag = key_and_tag.slice(16);
const result = await this.decryptMessage(_.extend(encrypted, { const result = await this.decryptMessage(Object.assign(encrypted, {
'key': key, 'key': key,
'tag': tag 'tag': tag
})); }));
@ -56563,11 +56558,11 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
return _converse.omemo_store.generateMissingPreKeys(); return _converse.omemo_store.generateMissingPreKeys();
}).then(() => _converse.omemo_store.publishBundle()).then(() => { }).then(() => _converse.omemo_store.publishBundle()).then(() => {
if (plaintext) { if (plaintext) {
return _.extend(attrs, { return Object.assign(attrs, {
'plaintext': plaintext 'plaintext': plaintext
}); });
} else { } else {
return _.extend(attrs, { return Object.assign(attrs, {
'is_only_key': true 'is_only_key': true
}); });
} }
@ -56576,7 +56571,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
return attrs; return attrs;
}); });
} else { } else {
return session_cipher.decryptWhisperMessage(u.base64ToArrayBuffer(attrs.encrypted.key), 'binary').then(key_and_tag => this.handleDecryptedWhisperMessage(attrs, key_and_tag)).then(plaintext => _.extend(attrs, { return session_cipher.decryptWhisperMessage(u.base64ToArrayBuffer(attrs.encrypted.key), 'binary').then(key_and_tag => this.handleDecryptedWhisperMessage(attrs, key_and_tag)).then(plaintext => Object.assign(attrs, {
'plaintext': plaintext 'plaintext': plaintext
})).catch(e => { })).catch(e => {
this.reportDecryptionError(e); this.reportDecryptionError(e);
@ -56716,7 +56711,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
const _converse = this.__super__._converse, const _converse = this.__super__._converse,
__ = _converse.__, __ = _converse.__,
icon = this.el.querySelector('.toggle-omemo'), icon = this.el.querySelector('.toggle-omemo'),
html = templates_toolbar_omemo_html__WEBPACK_IMPORTED_MODULE_1___default()(_.extend(this.model.toJSON(), { html = templates_toolbar_omemo_html__WEBPACK_IMPORTED_MODULE_1___default()(Object.assign(this.model.toJSON(), {
'__': __ '__': __
})); }));
@ -57070,7 +57065,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
'pubKey': u.arrayBufferToBase64(key_pair.pubKey), 'pubKey': u.arrayBufferToBase64(key_pair.pubKey),
'privKey': u.arrayBufferToBase64(key_pair.privKey) 'privKey': u.arrayBufferToBase64(key_pair.privKey)
}; };
this.save('prekeys', _.extend(this.getPreKeys(), prekey)); this.save('prekeys', Object.assign(this.getPreKeys(), prekey));
return Promise.resolve(); return Promise.resolve();
}, },
@ -57194,7 +57189,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
device = devicelist.devices.get(this.get('device_id')); device = devicelist.devices.get(this.get('device_id'));
const bundle = await device.getBundle(); const bundle = await device.getBundle();
device.save('bundle', _.extend(bundle, { device.save('bundle', Object.assign(bundle, {
'prekeys': marshalled_keys 'prekeys': marshalled_keys
})); }));
}, },
@ -57699,7 +57694,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "omemo" namespace groups methods relevant to OMEMO * The "omemo" namespace groups methods relevant to OMEMO
* encryption. * encryption.
@ -57847,7 +57842,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
}, },
toHTML() { toHTML() {
return templates_profile_modal_html__WEBPACK_IMPORTED_MODULE_7___default()(_.extend(this.model.toJSON(), this.model.vcard.toJSON(), { return templates_profile_modal_html__WEBPACK_IMPORTED_MODULE_7___default()(Object.assign(this.model.toJSON(), this.model.vcard.toJSON(), {
'_': _, '_': _,
'__': __, '__': __,
'_converse': _converse, '_converse': _converse,
@ -57910,19 +57905,17 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
}; };
if (!image_file.size) { if (!image_file.size) {
_.extend(data, { Object.assign(data, {
'image': this.model.vcard.get('image'), 'image': this.model.vcard.get('image'),
'image_type': this.model.vcard.get('image_type') 'image_type': this.model.vcard.get('image_type')
}); });
this.setVCard(data); this.setVCard(data);
} else { } else {
reader.onloadend = () => { reader.onloadend = () => {
_.extend(data, { Object.assign(data, {
'image': btoa(reader.result), 'image': btoa(reader.result),
'image_type': image_file.type 'image_type': image_file.type
}); });
this.setVCard(data); this.setVCard(data);
}; };
@ -57938,7 +57931,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
}, },
toHTML() { toHTML() {
return templates_chat_status_modal_html__WEBPACK_IMPORTED_MODULE_5___default()(_.extend(this.model.toJSON(), this.model.vcard.toJSON(), { return templates_chat_status_modal_html__WEBPACK_IMPORTED_MODULE_5___default()(Object.assign(this.model.toJSON(), this.model.vcard.toJSON(), {
'label_away': __('Away'), 'label_away': __('Away'),
'label_close': __('Close'), 'label_close': __('Close'),
'label_busy': __('Busy'), 'label_busy': __('Busy'),
@ -57982,7 +57975,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
}); });
_converse.ClientInfoModal = _converse.BootstrapModal.extend({ _converse.ClientInfoModal = _converse.BootstrapModal.extend({
toHTML() { toHTML() {
return templates_client_info_modal_html__WEBPACK_IMPORTED_MODULE_6___default()(_.extend(this.model.toJSON(), this.model.vcard.toJSON(), { return templates_client_info_modal_html__WEBPACK_IMPORTED_MODULE_6___default()(Object.assign(this.model.toJSON(), this.model.vcard.toJSON(), {
'__': __, '__': __,
'modal_title': __('About'), 'modal_title': __('About'),
'version_name': _converse.VERSION_NAME, 'version_name': _converse.VERSION_NAME,
@ -58008,7 +58001,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
toHTML() { toHTML() {
const chat_status = this.model.get('status') || 'offline'; const chat_status = this.model.get('status') || 'offline';
return templates_profile_view_html__WEBPACK_IMPORTED_MODULE_8___default()(_.extend(this.model.toJSON(), this.model.vcard.toJSON(), { return templates_profile_view_html__WEBPACK_IMPORTED_MODULE_8___default()(Object.assign(this.model.toJSON(), this.model.vcard.toJSON(), {
'__': __, '__': __,
'fullname': this.model.vcard.get('fullname') || _converse.bare_jid, 'fullname': this.model.vcard.get('fullname') || _converse.bare_jid,
'status_message': this.model.get('status_message') || __("I am %1$s", this.getPrettyStatus(chat_status)), 'status_message': this.model.get('status_message') || __("I am %1$s", this.getPrettyStatus(chat_status)),
@ -58449,7 +58442,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
_converse.RegisterLinkView = Backbone.VDOMView.extend({ _converse.RegisterLinkView = Backbone.VDOMView.extend({
toHTML() { toHTML() {
return templates_register_link_html__WEBPACK_IMPORTED_MODULE_4___default()(_.extend(this.model.toJSON(), { return templates_register_link_html__WEBPACK_IMPORTED_MODULE_4___default()(Object.assign(this.model.toJSON(), {
'__': _converse.__, '__': _converse.__,
'_converse': _converse, '_converse': _converse,
'connection_status': _converse.connfeedback.get('connection_status') 'connection_status': _converse.connfeedback.get('connection_status')
@ -58606,11 +58599,10 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
domain: null, domain: null,
form_type: null form_type: null
}; };
Object.assign(this, defaults);
_.extend(this, defaults);
if (settings) { if (settings) {
_.extend(this, _.pick(settings, _.keys(defaults))); Object.assign(this, _.pick(settings, _.keys(defaults)));
} }
}, },
@ -59176,7 +59168,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
}, },
toHTML() { toHTML() {
return templates_rooms_list_item_html__WEBPACK_IMPORTED_MODULE_3___default()(_.extend(this.model.toJSON(), { return templates_rooms_list_item_html__WEBPACK_IMPORTED_MODULE_3___default()(Object.assign(this.model.toJSON(), {
// XXX: By the time this renders, the _converse.bookmarks // XXX: By the time this renders, the _converse.bookmarks
// collection should already exist if bookmarks are // collection should already exist if bookmarks are
// supported by the XMPP server. So we can use it // supported by the XMPP server. So we can use it
@ -59547,7 +59539,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
toHTML() { toHTML() {
const label_nickname = _converse.xhr_user_search_url ? __('Contact name') : __('Optional nickname'); const label_nickname = _converse.xhr_user_search_url ? __('Contact name') : __('Optional nickname');
return templates_add_contact_modal_html__WEBPACK_IMPORTED_MODULE_5___default()(_.extend(this.model.toJSON(), { return templates_add_contact_modal_html__WEBPACK_IMPORTED_MODULE_5___default()(Object.assign(this.model.toJSON(), {
'_converse': _converse, '_converse': _converse,
'heading_new_contact': __('Add a Contact'), 'heading_new_contact': __('Add a Contact'),
'label_xmpp_address': __('XMPP Address'), 'label_xmpp_address': __('XMPP Address'),
@ -59720,7 +59712,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
}, },
toHTML() { toHTML() {
return templates_roster_filter_html__WEBPACK_IMPORTED_MODULE_10___default()(_.extend(this.model.toJSON(), { return templates_roster_filter_html__WEBPACK_IMPORTED_MODULE_10___default()(Object.assign(this.model.toJSON(), {
visible: this.shouldBeVisible(), visible: this.shouldBeVisible(),
placeholder: __('Filter'), placeholder: __('Filter'),
title_contact_filter: __('Filter by contact name'), title_contact_filter: __('Filter by contact name'),
@ -59912,7 +59904,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
*/ */
const display_name = this.model.getDisplayName(); const display_name = this.model.getDisplayName();
this.el.classList.add('pending-xmpp-contact'); this.el.classList.add('pending-xmpp-contact');
this.el.innerHTML = templates_pending_contact_html__WEBPACK_IMPORTED_MODULE_7___default()(_.extend(this.model.toJSON(), { this.el.innerHTML = templates_pending_contact_html__WEBPACK_IMPORTED_MODULE_7___default()(Object.assign(this.model.toJSON(), {
'display_name': display_name, 'display_name': display_name,
'desc_remove': __('Click to remove %1$s as a contact', display_name), 'desc_remove': __('Click to remove %1$s as a contact', display_name),
'allow_chat_pending_contacts': _converse.allow_chat_pending_contacts 'allow_chat_pending_contacts': _converse.allow_chat_pending_contacts
@ -59920,7 +59912,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
} else if (requesting === true) { } else if (requesting === true) {
const display_name = this.model.getDisplayName(); const display_name = this.model.getDisplayName();
this.el.classList.add('requesting-xmpp-contact'); this.el.classList.add('requesting-xmpp-contact');
this.el.innerHTML = templates_requesting_contact_html__WEBPACK_IMPORTED_MODULE_8___default()(_.extend(this.model.toJSON(), { this.el.innerHTML = templates_requesting_contact_html__WEBPACK_IMPORTED_MODULE_8___default()(Object.assign(this.model.toJSON(), {
'display_name': display_name, 'display_name': display_name,
'desc_accept': __("Click to accept the contact request from %1$s", display_name), 'desc_accept': __("Click to accept the contact request from %1$s", display_name),
'desc_decline': __("Click to decline the contact request from %1$s", display_name), 'desc_decline': __("Click to decline the contact request from %1$s", display_name),
@ -59965,7 +59957,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_4__["default"].plugins
} }
const display_name = item.getDisplayName(); const display_name = item.getDisplayName();
this.el.innerHTML = templates_roster_item_html__WEBPACK_IMPORTED_MODULE_11___default()(_.extend(item.toJSON(), { this.el.innerHTML = templates_roster_item_html__WEBPACK_IMPORTED_MODULE_11___default()(Object.assign(item.toJSON(), {
'display_name': display_name, 'display_name': display_name,
'desc_status': STATUSES[show], 'desc_status': STATUSES[show],
'status_icon': status_icon, 'status_icon': status_icon,
@ -62770,7 +62762,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
'type': 'error' 'type': 'error'
}); });
} else { } else {
const message = this.messages.create(_.extend(this.getOutgoingMessageAttributes(), { const message = this.messages.create(Object.assign(this.getOutgoingMessageAttributes(), {
'file': true, 'file': true,
'progress': 0, 'progress': 0,
'slot_request_url': slot_request_url 'slot_request_url': slot_request_url
@ -62868,7 +62860,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
text = this.getMessageBody(stanza) || undefined, text = this.getMessageBody(stanza) || undefined,
chat_state = stanza.getElementsByTagName(_converse.COMPOSING).length && _converse.COMPOSING || stanza.getElementsByTagName(_converse.PAUSED).length && _converse.PAUSED || stanza.getElementsByTagName(_converse.INACTIVE).length && _converse.INACTIVE || stanza.getElementsByTagName(_converse.ACTIVE).length && _converse.ACTIVE || stanza.getElementsByTagName(_converse.GONE).length && _converse.GONE; chat_state = stanza.getElementsByTagName(_converse.COMPOSING).length && _converse.COMPOSING || stanza.getElementsByTagName(_converse.PAUSED).length && _converse.PAUSED || stanza.getElementsByTagName(_converse.INACTIVE).length && _converse.INACTIVE || stanza.getElementsByTagName(_converse.ACTIVE).length && _converse.ACTIVE || stanza.getElementsByTagName(_converse.GONE).length && _converse.GONE;
const attrs = _.extend({ const attrs = Object.assign({
'chat_state': chat_state, 'chat_state': chat_state,
'is_archived': this.isArchived(original_stanza), 'is_archived': this.isArchived(original_stanza),
'is_delayed': !_.isNil(delay), 'is_delayed': !_.isNil(delay),
@ -63189,11 +63181,10 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
let chatbox = this.get(Strophe.getBareJidFromJid(jid)); let chatbox = this.get(Strophe.getBareJidFromJid(jid));
if (!chatbox && create) { if (!chatbox && create) {
_.extend(attrs, { Object.assign(attrs, {
'jid': jid, 'jid': jid,
'id': jid 'id': jid
}); });
chatbox = this.create(attrs, { chatbox = this.create(attrs, {
'error'(model, response) { 'error'(model, response) {
_converse.log(response.responseText); _converse.log(response.responseText);
@ -63267,7 +63258,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "chats" namespace (used for one-on-one chats) * The "chats" namespace (used for one-on-one chats)
* *
@ -63412,7 +63403,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -63522,9 +63512,7 @@ const _converse = {
'promises': {} 'promises': {}
}; };
_converse.VERSION_NAME = "v4.2.0"; _converse.VERSION_NAME = "v4.2.0";
Object.assign(_converse, Backbone.Events); // Make converse pluggable
_lodash_noconflict__WEBPACK_IMPORTED_MODULE_4___default.a.extend(_converse, Backbone.Events); // Make converse pluggable
pluggable_js_dist_pluggable__WEBPACK_IMPORTED_MODULE_8___default.a.enable(_converse, '_converse', 'pluggable'); // Core plugins are whitelisted automatically pluggable_js_dist_pluggable__WEBPACK_IMPORTED_MODULE_8___default.a.enable(_converse, '_converse', 'pluggable'); // Core plugins are whitelisted automatically
// These are just the @converse/headless plugins, for the full converse, // These are just the @converse/headless plugins, for the full converse,
@ -65944,7 +65932,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-dis
return true; return true;
} }
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The XEP-0030 service discovery API * The XEP-0030 service discovery API
* *
@ -66455,8 +66443,7 @@ function queryForArchivedMessages(_converse, options, callback, errback) {
rsm = new Strophe.RSM({ rsm = new Strophe.RSM({
xml: set xml: set
}); });
Object.assign(rsm, _.pick(options, _.concat(MAM_ATTRIBUTES, ['max'])));
_.extend(rsm, _.pick(options, _.concat(MAM_ATTRIBUTES, ['max'])));
} }
callback(messages, rsm); callback(messages, rsm);
@ -66515,7 +66502,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-mam
const attrs = this.__super__.getUpdatedMessageAttributes.apply(this, arguments); const attrs = this.__super__.getUpdatedMessageAttributes.apply(this, arguments);
if (message && !message.get('is_archived')) { if (message && !message.get('is_archived')) {
return _.extend(attrs, { return Object.assign(attrs, {
'is_archived': this.isArchived(stanza) 'is_archived': this.isArchived(stanza)
}, this.getStanzaIDs(stanza)); }, this.getStanzaIDs(stanza));
} }
@ -66613,7 +66600,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-mam
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management API * The [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management API
* *
@ -66793,7 +66780,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-mam
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -67457,11 +67443,9 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
}), 'attributes.value') }), 'attributes.value')
}); });
const features = await _converse.api.disco.getFeatures(this.get('jid')); const features = await _converse.api.disco.getFeatures(this.get('jid'));
const attrs = Object.assign(_.zipObject(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.map(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.stubFalse)), {
const attrs = _.extend(_.zipObject(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.map(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.stubFalse)), {
'fetched': moment().format() 'fetched': moment().format()
}); });
features.each(feature => { features.each(feature => {
const fieldname = feature.get('var'); const fieldname = feature.get('var');
@ -67871,8 +67855,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
} }
const jid = data.jid || ''; const jid = data.jid || '';
const attributes = Object.assign(data, {
const attributes = _.extend(data, {
'jid': Strophe.getBareJidFromJid(jid) || _.get(occupant, 'attributes.jid'), 'jid': Strophe.getBareJidFromJid(jid) || _.get(occupant, 'attributes.jid'),
'resource': Strophe.getResourceFromJid(jid) || _.get(occupant, 'attributes.resource') 'resource': Strophe.getResourceFromJid(jid) || _.get(occupant, 'attributes.resource')
}); });
@ -68214,7 +68197,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
}, },
initialize(attributes) { initialize(attributes) {
this.set(_.extend({ this.set(Object.assign({
'id': _converse.connection.getUniqueId() 'id': _converse.connection.getUniqueId()
}, attributes)); }, attributes));
this.on('change:image_hash', this.onAvatarChanged, this); this.on('change:image_hash', this.onAvatarChanged, this);
@ -68519,7 +68502,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
// We extend the default converse.js API to add methods specific to MUC groupchats. // We extend the default converse.js API to add methods specific to MUC groupchats.
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "rooms" namespace groups methods relevant to chatrooms * The "rooms" namespace groups methods relevant to chatrooms
* (aka groupchats). * (aka groupchats).
@ -68700,7 +68683,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -68880,7 +68862,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins.add('converse-pub
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
// We extend the default converse.js API to add methods specific to MUC groupchats. // We extend the default converse.js API to add methods specific to MUC groupchats.
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "pubsub" namespace groups methods relevant to PubSub * The "pubsub" namespace groups methods relevant to PubSub
* *
@ -68955,7 +68937,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins.add('converse-pub
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -70069,7 +70050,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
// API methods only available to plugins // API methods only available to plugins
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* @namespace _converse.api.contacts * @namespace _converse.api.contacts
* @memberOf _converse.api * @memberOf _converse.api
@ -70297,7 +70278,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-vca
return onVCardData(jid, iq); return onVCardData(jid, iq);
} }
/* Event handlers */ /************************ BEGIN Event Handlers ************************/
_converse.initVCardCollection = function () { _converse.initVCardCollection = function () {
@ -70325,8 +70306,10 @@ _converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-vca
_converse.api.listen.on('addClientFeatures', () => { _converse.api.listen.on('addClientFeatures', () => {
_converse.api.disco.own.features.add(Strophe.NS.VCARD); _converse.api.disco.own.features.add(Strophe.NS.VCARD);
}); });
/************************ BEGIN API ************************/
_.extend(_converse.api, {
Object.assign(_converse.api, {
/** /**
* The XEP-0054 VCard API * The XEP-0054 VCard API
* *

View File

@ -370,7 +370,7 @@ converse.plugins.add("converse-autocomplete", {
} }
// Make it an event emitter // Make it an event emitter
_.extend(AutoComplete.prototype, Backbone.Events); Object.assign(AutoComplete.prototype, Backbone.Events);
const helpers = { const helpers = {

View File

@ -190,7 +190,7 @@ converse.plugins.add('converse-bookmarks', {
_converse.api.promises.add('bookmarksInitialized'); _converse.api.promises.add('bookmarksInitialized');
// Pure functions on the _converse object // Pure functions on the _converse object
_.extend(_converse, { Object.assign(_converse, {
removeBookmarkViaEvent (ev) { removeBookmarkViaEvent (ev) {
/* Remove a bookmark as determined by the passed in /* Remove a bookmark as determined by the passed in
* event. * event.

View File

@ -102,7 +102,7 @@ converse.plugins.add('converse-chatview', {
toHTML () { toHTML () {
return tpl_emojis( return tpl_emojis(
_.extend( Object.assign(
this.model.toJSON(), { this.model.toJSON(), {
'_': _, '_': _,
'transform': u.getEmojiRenderer(_converse), 'transform': u.getEmojiRenderer(_converse),
@ -176,7 +176,7 @@ converse.plugins.add('converse-chatview', {
const vcard = _.get(this.model, 'vcard'), const vcard = _.get(this.model, 'vcard'),
vcard_json = vcard ? vcard.toJSON() : {}; vcard_json = vcard ? vcard.toJSON() : {};
this.el.innerHTML = tpl_chatbox_head( this.el.innerHTML = tpl_chatbox_head(
_.extend( Object.assign(
vcard_json, vcard_json,
this.model.toJSON(), this.model.toJSON(),
{ '_converse': _converse, { '_converse': _converse,
@ -232,7 +232,7 @@ converse.plugins.add('converse-chatview', {
toHTML () { toHTML () {
const vcard = _.get(this.model, 'vcard'), const vcard = _.get(this.model, 'vcard'),
vcard_json = vcard ? vcard.toJSON() : {}; vcard_json = vcard ? vcard.toJSON() : {};
return tpl_user_details_modal(_.extend( return tpl_user_details_modal(Object.assign(
this.model.toJSON(), this.model.toJSON(),
vcard_json, { vcard_json, {
'_': _, '_': _,
@ -369,7 +369,7 @@ converse.plugins.add('converse-chatview', {
// XXX: Is this still needed? // XXX: Is this still needed?
this.el.setAttribute('id', this.model.get('box_id')); this.el.setAttribute('id', this.model.get('box_id'));
this.el.innerHTML = tpl_chatbox( this.el.innerHTML = tpl_chatbox(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'unread_msgs': __('You have unread messages') 'unread_msgs': __('You have unread messages')
} }
)); ));
@ -410,7 +410,7 @@ converse.plugins.add('converse-chatview', {
} }
const form_container = this.el.querySelector('.bottom-panel'); const form_container = this.el.querySelector('.bottom-panel');
form_container.innerHTML = tpl_chatbox_message_form( form_container.innerHTML = tpl_chatbox_message_form(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'hint_value': _.get(this.el.querySelector('.spoiler-hint'), 'value'), 'hint_value': _.get(this.el.querySelector('.spoiler-hint'), 'value'),
'label_message': placeholder, 'label_message': placeholder,
'label_send': __('Send'), 'label_send': __('Send'),
@ -516,7 +516,7 @@ converse.plugins.add('converse-chatview', {
} else { } else {
label_toggle_spoiler = __('Click to write your message as a spoiler'); label_toggle_spoiler = __('Click to write your message as a spoiler');
} }
return _.extend(options || {}, { return Object.assign(options || {}, {
'label_clear': __('Clear all messages'), 'label_clear': __('Clear all messages'),
'tooltip_insert_smiley': __('Insert emojis'), 'tooltip_insert_smiley': __('Insert emojis'),
'tooltip_start_call': __('Start a call'), 'tooltip_start_call': __('Start a call'),
@ -1400,7 +1400,7 @@ converse.plugins.add('converse-chatview', {
}); });
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "chatview" namespace groups methods pertaining to views * The "chatview" namespace groups methods pertaining to views
* for one-on-one chats. * for one-on-one chats.

View File

@ -244,7 +244,7 @@ converse.plugins.add('converse-controlbox', {
this.model.set('closed', !_converse.show_controlbox_by_default); this.model.set('closed', !_converse.show_controlbox_by_default);
} }
} }
this.el.innerHTML = tpl_controlbox(_.extend(this.model.toJSON())); this.el.innerHTML = tpl_controlbox(Object.assign(this.model.toJSON()));
if (!this.model.get('closed')) { if (!this.model.get('closed')) {
this.show(); this.show();
@ -416,7 +416,7 @@ converse.plugins.add('converse-controlbox', {
feedback_class = CONNECTION_STATUS_CSS_CLASS[pretty_status]; feedback_class = CONNECTION_STATUS_CSS_CLASS[pretty_status];
} }
return tpl_login_panel( return tpl_login_panel(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'__': __, '__': __,
'_converse': _converse, '_converse': _converse,
'ANONYMOUS': _converse.ANONYMOUS, 'ANONYMOUS': _converse.ANONYMOUS,
@ -658,7 +658,7 @@ converse.plugins.add('converse-controlbox', {
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "controlbox" namespace groups methods pertaining to the * The "controlbox" namespace groups methods pertaining to the
* controlbox view * controlbox view

View File

@ -96,7 +96,7 @@ converse.plugins.add('converse-headline', {
render () { render () {
this.el.setAttribute('id', this.model.get('box_id')) this.el.setAttribute('id', this.model.get('box_id'))
this.el.innerHTML = tpl_chatbox( this.el.innerHTML = tpl_chatbox(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
info_close: '', info_close: '',
label_personal_message: '', label_personal_message: '',
show_send_button: false, show_send_button: false,

View File

@ -101,7 +101,7 @@ converse.plugins.add('converse-mam-views', {
} }
this.addSpinner(); this.addSpinner();
_converse.api.archive.query( _converse.api.archive.query(
_.extend({ Object.assign({
'groupchat': is_groupchat, 'groupchat': is_groupchat,
'before': '', // Page backwards from the most recent message 'before': '', // Page backwards from the most recent message
'max': _converse.archived_messages_page_size, 'max': _converse.archived_messages_page_size,

View File

@ -67,7 +67,7 @@ converse.plugins.add('converse-message-view', {
_converse.MessageVersionsModal = _converse.BootstrapModal.extend({ _converse.MessageVersionsModal = _converse.BootstrapModal.extend({
toHTML () { toHTML () {
return tpl_message_versions_modal(_.extend( return tpl_message_versions_modal(Object.assign(
this.model.toJSON(), { this.model.toJSON(), {
'__': __ '__': __
})); }));
@ -154,7 +154,7 @@ converse.plugins.add('converse-message-view', {
roles = role ? role.split(',') : []; roles = role ? role.split(',') : [];
const msg = u.stringToElement(tpl_message( const msg = u.stringToElement(tpl_message(
_.extend( Object.assign(
this.model.toJSON(), { this.model.toJSON(), {
'__': __, '__': __,
'is_me_message': is_me_message, 'is_me_message': is_me_message,
@ -203,7 +203,7 @@ converse.plugins.add('converse-message-view', {
renderErrorMessage () { renderErrorMessage () {
const moment_time = moment(this.model.get('time')), const moment_time = moment(this.model.get('time')),
msg = u.stringToElement( msg = u.stringToElement(
tpl_info(_.extend(this.model.toJSON(), { tpl_info(Object.assign(this.model.toJSON(), {
'extra_classes': 'chat-error', 'extra_classes': 'chat-error',
'isodate': moment_time.format() 'isodate': moment_time.format()
}))); })));
@ -244,7 +244,7 @@ converse.plugins.add('converse-message-view', {
renderFileUploadProgresBar () { renderFileUploadProgresBar () {
const msg = u.stringToElement(tpl_file_progress( const msg = u.stringToElement(tpl_file_progress(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'__': __, '__': __,
'filename': this.model.file.name, 'filename': this.model.file.name,
'filesize': filesize(this.model.file.size) 'filesize': filesize(this.model.file.size)

View File

@ -348,7 +348,7 @@ converse.plugins.add('converse-minimize', {
}, },
render () { render () {
const data = _.extend( const data = Object.assign(
this.model.toJSON(), this.model.toJSON(),
{ 'tooltip': __('Click to restore this chat') } { 'tooltip': __('Click to restore this chat') }
); );
@ -510,7 +510,7 @@ converse.plugins.add('converse-minimize', {
render () { render () {
this.el.innerHTML = tpl_toggle_chats( this.el.innerHTML = tpl_toggle_chats(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'Minimized': __('Minimized') 'Minimized': __('Minimized')
}) })
); );

View File

@ -75,7 +75,7 @@ converse.plugins.add('converse-modal', {
// We extend the default converse.js API to add methods specific to MUC chat rooms. // We extend the default converse.js API to add methods specific to MUC chat rooms.
let alert let alert
_.extend(_converse.api, { Object.assign(_converse.api, {
'alert': { 'alert': {
'show' (type, title, messages) { 'show' (type, title, messages) {
if (_.isString(messages)) { if (_.isString(messages)) {

View File

@ -289,7 +289,7 @@ converse.plugins.add('converse-muc-views', {
toHTML () { toHTML () {
const muc_domain = this.model.get('muc_domain') || _converse.muc_domain; const muc_domain = this.model.get('muc_domain') || _converse.muc_domain;
return tpl_list_chatrooms_modal(_.extend(this.model.toJSON(), { return tpl_list_chatrooms_modal(Object.assign(this.model.toJSON(), {
'heading_list_chatrooms': __('Query for Groupchats'), 'heading_list_chatrooms': __('Query for Groupchats'),
'label_server_address': __('Server address'), 'label_server_address': __('Server address'),
'label_query': __('Show groupchats'), 'label_query': __('Show groupchats'),
@ -420,7 +420,7 @@ converse.plugins.add('converse-muc-views', {
const muc_domain = this.model.get('muc_domain') || _converse.muc_domain; const muc_domain = this.model.get('muc_domain') || _converse.muc_domain;
placeholder = muc_domain ? `name@${muc_domain}` : __('name@conference.example.org'); placeholder = muc_domain ? `name@${muc_domain}` : __('name@conference.example.org');
} }
return tpl_add_chatroom_modal(_.extend(this.model.toJSON(), { return tpl_add_chatroom_modal(Object.assign(this.model.toJSON(), {
'__': _converse.__, '__': _converse.__,
'_converse': _converse, '_converse': _converse,
'label_room_address': _converse.muc_domain ? __('Groupchat name') : __('Groupchat address'), 'label_room_address': _converse.muc_domain ? __('Groupchat name') : __('Groupchat address'),
@ -466,7 +466,7 @@ converse.plugins.add('converse-muc-views', {
jid = data.jid jid = data.jid
this.model.setDomain(jid); this.model.setDomain(jid);
} }
_converse.api.rooms.open(jid, _.extend(data, {jid})); _converse.api.rooms.open(jid, Object.assign(data, {jid}));
this.modal.hide(); this.modal.hide();
ev.target.reset(); ev.target.reset();
} }
@ -483,7 +483,7 @@ converse.plugins.add('converse-muc-views', {
}, },
toHTML () { toHTML () {
return tpl_chatroom_details_modal(_.extend( return tpl_chatroom_details_modal(Object.assign(
this.model.toJSON(), { this.model.toJSON(), {
'_': _, '_': _,
'__': __, '__': __,
@ -728,7 +728,7 @@ converse.plugins.add('converse-muc-views', {
/* Returns the heading HTML to be rendered. /* Returns the heading HTML to be rendered.
*/ */
return tpl_chatroom_head( return tpl_chatroom_head(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'_converse': _converse, '_converse': _converse,
'Strophe': Strophe, 'Strophe': Strophe,
'info_close': __('Close and leave this groupchat'), 'info_close': __('Close and leave this groupchat'),
@ -774,7 +774,7 @@ converse.plugins.add('converse-muc-views', {
}, },
getToolbarOptions () { getToolbarOptions () {
return _.extend( return Object.assign(
_converse.ChatBoxView.prototype.getToolbarOptions.apply(this, arguments), _converse.ChatBoxView.prototype.getToolbarOptions.apply(this, arguments),
{ {
'label_hide_occupants': __('Hide the list of participants'), 'label_hide_occupants': __('Hide the list of participants'),
@ -1989,7 +1989,7 @@ converse.plugins.add('converse-muc-views', {
toHTML () { toHTML () {
const show = this.model.get('show'); const show = this.model.get('show');
return tpl_occupant( return tpl_occupant(
_.extend( Object.assign(
{ '_': _, { '_': _,
'jid': '', 'jid': '',
'show': show, 'show': show,
@ -2040,7 +2040,7 @@ converse.plugins.add('converse-muc-views', {
render () { render () {
this.el.innerHTML = tpl_chatroom_sidebar( this.el.innerHTML = tpl_chatroom_sidebar(
_.extend(this.chatroomview.model.toJSON(), { Object.assign(this.chatroomview.model.toJSON(), {
'allow_muc_invitations': _converse.allow_muc_invitations, 'allow_muc_invitations': _converse.allow_muc_invitations,
'label_occupants': __('Participants') 'label_occupants': __('Participants')
}) })
@ -2078,7 +2078,7 @@ converse.plugins.add('converse-muc-views', {
if (_.reduce(_.values(picks), iteratee)) { if (_.reduce(_.values(picks), iteratee)) {
const el = this.el.querySelector('.chatroom-features'); const el = this.el.querySelector('.chatroom-features');
el.innerHTML = tpl_chatroom_features(_.extend(features.toJSON(), {__})); el.innerHTML = tpl_chatroom_features(Object.assign(features.toJSON(), {__}));
this.setOccupantsHeight(); this.setOccupantsHeight();
} }
return this; return this;
@ -2253,7 +2253,7 @@ converse.plugins.add('converse-muc-views', {
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "roomviews" namespace groups methods relevant to chatroom * The "roomviews" namespace groups methods relevant to chatroom
* (aka groupchats) views. * (aka groupchats) views.

View File

@ -82,7 +82,7 @@ converse.plugins.add("converse-oauth", {
initialize () { initialize () {
_.each(_converse.user_settings.oauth_providers, (provider) => { _.each(_converse.user_settings.oauth_providers, (provider) => {
const item = new Backbone.Model(_.extend(provider, { const item = new Backbone.Model(Object.assign(provider, {
'login_text': __('Log in with %1$s', provider.name) 'login_text': __('Log in with %1$s', provider.name)
})); }));
this.add(item, {'silent': true}); this.add(item, {'silent': true});
@ -99,7 +99,7 @@ converse.plugins.add("converse-oauth", {
toHTML () { toHTML () {
return tpl_oauth_providers( return tpl_oauth_providers(
_.extend({ Object.assign({
'_': _, '_': _,
'__': _converse.__, '__': _converse.__,
'providers': this.model.toJSON() 'providers': this.model.toJSON()

View File

@ -242,7 +242,7 @@ converse.plugins.add('converse-omemo', {
if (encrypted.payload) { if (encrypted.payload) {
const key = key_and_tag.slice(0, 16), const key = key_and_tag.slice(0, 16),
tag = key_and_tag.slice(16); tag = key_and_tag.slice(16);
const result = await this.decryptMessage(_.extend(encrypted, {'key': key, 'tag': tag})); const result = await this.decryptMessage(Object.assign(encrypted, {'key': key, 'tag': tag}));
device.save('active', true); device.save('active', true);
return result; return result;
} }
@ -263,9 +263,9 @@ converse.plugins.add('converse-omemo', {
}).then(() => _converse.omemo_store.publishBundle()) }).then(() => _converse.omemo_store.publishBundle())
.then(() => { .then(() => {
if (plaintext) { if (plaintext) {
return _.extend(attrs, {'plaintext': plaintext}); return Object.assign(attrs, {'plaintext': plaintext});
} else { } else {
return _.extend(attrs, {'is_only_key': true}); return Object.assign(attrs, {'is_only_key': true});
} }
}).catch(e => { }).catch(e => {
this.reportDecryptionError(e); this.reportDecryptionError(e);
@ -274,7 +274,7 @@ converse.plugins.add('converse-omemo', {
} else { } else {
return session_cipher.decryptWhisperMessage(u.base64ToArrayBuffer(attrs.encrypted.key), 'binary') return session_cipher.decryptWhisperMessage(u.base64ToArrayBuffer(attrs.encrypted.key), 'binary')
.then(key_and_tag => this.handleDecryptedWhisperMessage(attrs, key_and_tag)) .then(key_and_tag => this.handleDecryptedWhisperMessage(attrs, key_and_tag))
.then(plaintext => _.extend(attrs, {'plaintext': plaintext})) .then(plaintext => Object.assign(attrs, {'plaintext': plaintext}))
.catch(e => { .catch(e => {
this.reportDecryptionError(e); this.reportDecryptionError(e);
return attrs; return attrs;
@ -407,7 +407,7 @@ converse.plugins.add('converse-omemo', {
const { _converse } = this.__super__, const { _converse } = this.__super__,
{ __ } = _converse, { __ } = _converse,
icon = this.el.querySelector('.toggle-omemo'), icon = this.el.querySelector('.toggle-omemo'),
html = tpl_toolbar_omemo(_.extend(this.model.toJSON(), {'__': __})); html = tpl_toolbar_omemo(Object.assign(this.model.toJSON(), {'__': __}));
if (icon) { if (icon) {
icon.outerHTML = html; icon.outerHTML = html;
@ -727,7 +727,7 @@ converse.plugins.add('converse-omemo', {
'pubKey': u.arrayBufferToBase64(key_pair.pubKey), 'pubKey': u.arrayBufferToBase64(key_pair.pubKey),
'privKey': u.arrayBufferToBase64(key_pair.privKey) 'privKey': u.arrayBufferToBase64(key_pair.privKey)
} }
this.save('prekeys', _.extend(this.getPreKeys(), prekey)); this.save('prekeys', Object.assign(this.getPreKeys(), prekey));
return Promise.resolve(); return Promise.resolve();
}, },
@ -834,7 +834,7 @@ converse.plugins.add('converse-omemo', {
device = devicelist.devices.get(this.get('device_id')); device = devicelist.devices.get(this.get('device_id'));
const bundle = await device.getBundle(); const bundle = await device.getBundle();
device.save('bundle', _.extend(bundle, {'prekeys': marshalled_keys})); device.save('bundle', Object.assign(bundle, {'prekeys': marshalled_keys}));
}, },
async generateBundle () { async generateBundle () {
@ -1242,7 +1242,7 @@ converse.plugins.add('converse-omemo', {
}); });
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "omemo" namespace groups methods relevant to OMEMO * The "omemo" namespace groups methods relevant to OMEMO
* encryption. * encryption.

View File

@ -58,7 +58,7 @@ converse.plugins.add('converse-profile', {
}, },
toHTML () { toHTML () {
return tpl_profile_modal(_.extend( return tpl_profile_modal(Object.assign(
this.model.toJSON(), this.model.toJSON(),
this.model.vcard.toJSON(), { this.model.vcard.toJSON(), {
'_': _, '_': _,
@ -128,14 +128,14 @@ converse.plugins.add('converse-profile', {
'url': form_data.get('url'), 'url': form_data.get('url'),
}; };
if (!image_file.size) { if (!image_file.size) {
_.extend(data, { Object.assign(data, {
'image': this.model.vcard.get('image'), 'image': this.model.vcard.get('image'),
'image_type': this.model.vcard.get('image_type') 'image_type': this.model.vcard.get('image_type')
}); });
this.setVCard(data); this.setVCard(data);
} else { } else {
reader.onloadend = () => { reader.onloadend = () => {
_.extend(data, { Object.assign(data, {
'image': btoa(reader.result), 'image': btoa(reader.result),
'image_type': image_file.type 'image_type': image_file.type
}); });
@ -155,7 +155,7 @@ converse.plugins.add('converse-profile', {
toHTML () { toHTML () {
return tpl_chat_status_modal( return tpl_chat_status_modal(
_.extend( Object.assign(
this.model.toJSON(), this.model.toJSON(),
this.model.vcard.toJSON(), { this.model.vcard.toJSON(), {
'label_away': __('Away'), 'label_away': __('Away'),
@ -202,7 +202,7 @@ converse.plugins.add('converse-profile', {
toHTML () { toHTML () {
return tpl_client_info_modal( return tpl_client_info_modal(
_.extend( Object.assign(
this.model.toJSON(), this.model.toJSON(),
this.model.vcard.toJSON(), { this.model.vcard.toJSON(), {
'__': __, '__': __,
@ -239,7 +239,7 @@ converse.plugins.add('converse-profile', {
toHTML () { toHTML () {
const chat_status = this.model.get('status') || 'offline'; const chat_status = this.model.get('status') || 'offline';
return tpl_profile_view(_.extend( return tpl_profile_view(Object.assign(
this.model.toJSON(), this.model.toJSON(),
this.model.vcard.toJSON(), { this.model.vcard.toJSON(), {
'__': __, '__': __,

View File

@ -151,7 +151,7 @@ converse.plugins.add('converse-register', {
_converse.RegisterLinkView = Backbone.VDOMView.extend({ _converse.RegisterLinkView = Backbone.VDOMView.extend({
toHTML () { toHTML () {
return tpl_register_link( return tpl_register_link(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'__': _converse.__, '__': _converse.__,
'_converse': _converse, '_converse': _converse,
'connection_status': _converse.connfeedback.get('connection_status'), 'connection_status': _converse.connfeedback.get('connection_status'),
@ -294,9 +294,9 @@ converse.plugins.add('converse-register', {
domain: null, domain: null,
form_type: null form_type: null
}; };
_.extend(this, defaults); Object.assign(this, defaults);
if (settings) { if (settings) {
_.extend(this, _.pick(settings, _.keys(defaults))); Object.assign(this, _.pick(settings, _.keys(defaults)));
} }
}, },

View File

@ -113,7 +113,7 @@ converse.plugins.add('converse-roomslist', {
toHTML () { toHTML () {
return tpl_rooms_list_item( return tpl_rooms_list_item(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
// XXX: By the time this renders, the _converse.bookmarks // XXX: By the time this renders, the _converse.bookmarks
// collection should already exist if bookmarks are // collection should already exist if bookmarks are
// supported by the XMPP server. So we can use it // supported by the XMPP server. So we can use it

View File

@ -119,7 +119,7 @@ converse.plugins.add('converse-rosterview', {
toHTML () { toHTML () {
const label_nickname = _converse.xhr_user_search_url ? __('Contact name') : __('Optional nickname'); const label_nickname = _converse.xhr_user_search_url ? __('Contact name') : __('Optional nickname');
return tpl_add_contact_modal(_.extend(this.model.toJSON(), { return tpl_add_contact_modal(Object.assign(this.model.toJSON(), {
'_converse': _converse, '_converse': _converse,
'heading_new_contact': __('Add a Contact'), 'heading_new_contact': __('Add a Contact'),
'label_xmpp_address': __('XMPP Address'), 'label_xmpp_address': __('XMPP Address'),
@ -276,7 +276,7 @@ converse.plugins.add('converse-rosterview', {
toHTML () { toHTML () {
return tpl_roster_filter( return tpl_roster_filter(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
visible: this.shouldBeVisible(), visible: this.shouldBeVisible(),
placeholder: __('Filter'), placeholder: __('Filter'),
title_contact_filter: __('Filter by contact name'), title_contact_filter: __('Filter by contact name'),
@ -454,7 +454,7 @@ converse.plugins.add('converse-rosterview', {
const display_name = this.model.getDisplayName(); const display_name = this.model.getDisplayName();
this.el.classList.add('pending-xmpp-contact'); this.el.classList.add('pending-xmpp-contact');
this.el.innerHTML = tpl_pending_contact( this.el.innerHTML = tpl_pending_contact(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'display_name': display_name, 'display_name': display_name,
'desc_remove': __('Click to remove %1$s as a contact', display_name), 'desc_remove': __('Click to remove %1$s as a contact', display_name),
'allow_chat_pending_contacts': _converse.allow_chat_pending_contacts 'allow_chat_pending_contacts': _converse.allow_chat_pending_contacts
@ -464,7 +464,7 @@ converse.plugins.add('converse-rosterview', {
const display_name = this.model.getDisplayName(); const display_name = this.model.getDisplayName();
this.el.classList.add('requesting-xmpp-contact'); this.el.classList.add('requesting-xmpp-contact');
this.el.innerHTML = tpl_requesting_contact( this.el.innerHTML = tpl_requesting_contact(
_.extend(this.model.toJSON(), { Object.assign(this.model.toJSON(), {
'display_name': display_name, 'display_name': display_name,
'desc_accept': __("Click to accept the contact request from %1$s", display_name), 'desc_accept': __("Click to accept the contact request from %1$s", display_name),
'desc_decline': __("Click to decline the contact request from %1$s", display_name), 'desc_decline': __("Click to decline the contact request from %1$s", display_name),
@ -507,7 +507,7 @@ converse.plugins.add('converse-rosterview', {
} }
const display_name = item.getDisplayName(); const display_name = item.getDisplayName();
this.el.innerHTML = tpl_roster_item( this.el.innerHTML = tpl_roster_item(
_.extend(item.toJSON(), { Object.assign(item.toJSON(), {
'display_name': display_name, 'display_name': display_name,
'desc_status': STATUSES[show], 'desc_status': STATUSES[show],
'status_icon': status_icon, 'status_icon': status_icon,

View File

@ -639,7 +639,7 @@ converse.plugins.add('converse-chatboxes', {
}); });
} else { } else {
const message = this.messages.create( const message = this.messages.create(
_.extend( Object.assign(
this.getOutgoingMessageAttributes(), { this.getOutgoingMessageAttributes(), {
'file': true, 'file': true,
'progress': 0, 'progress': 0,
@ -736,7 +736,7 @@ converse.plugins.add('converse-chatboxes', {
stanza.getElementsByTagName(_converse.ACTIVE).length && _converse.ACTIVE || stanza.getElementsByTagName(_converse.ACTIVE).length && _converse.ACTIVE ||
stanza.getElementsByTagName(_converse.GONE).length && _converse.GONE; stanza.getElementsByTagName(_converse.GONE).length && _converse.GONE;
const attrs = _.extend({ const attrs = Object.assign({
'chat_state': chat_state, 'chat_state': chat_state,
'is_archived': this.isArchived(original_stanza), 'is_archived': this.isArchived(original_stanza),
'is_delayed': !_.isNil(delay), 'is_delayed': !_.isNil(delay),
@ -1030,7 +1030,7 @@ converse.plugins.add('converse-chatboxes', {
let chatbox = this.get(Strophe.getBareJidFromJid(jid)); let chatbox = this.get(Strophe.getBareJidFromJid(jid));
if (!chatbox && create) { if (!chatbox && create) {
_.extend(attrs, {'jid': jid, 'id': jid}); Object.assign(attrs, {'jid': jid, 'id': jid});
chatbox = this.create(attrs, { chatbox = this.create(attrs, {
'error' (model, response) { 'error' (model, response) {
_converse.log(response.responseText); _converse.log(response.responseText);
@ -1095,7 +1095,7 @@ converse.plugins.add('converse-chatboxes', {
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "chats" namespace (used for one-on-one chats) * The "chats" namespace (used for one-on-one chats)
* *

View File

@ -75,7 +75,7 @@ const _converse = {
_converse.VERSION_NAME = "v4.2.0"; _converse.VERSION_NAME = "v4.2.0";
_.extend(_converse, Backbone.Events); Object.assign(_converse, Backbone.Events);
// Make converse pluggable // Make converse pluggable
pluggable.enable(_converse, '_converse', 'pluggable'); pluggable.enable(_converse, '_converse', 'pluggable');

View File

@ -362,7 +362,7 @@ converse.plugins.add('converse-disco', {
} }
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The XEP-0030 service discovery API * The XEP-0030 service discovery API
* *

View File

@ -89,7 +89,7 @@ function queryForArchivedMessages (_converse, options, callback, errback) {
let rsm; let rsm;
if (!_.isUndefined(set)) { if (!_.isUndefined(set)) {
rsm = new Strophe.RSM({xml: set}); rsm = new Strophe.RSM({xml: set});
_.extend(rsm, _.pick(options, _.concat(MAM_ATTRIBUTES, ['max']))); Object.assign(rsm, _.pick(options, _.concat(MAM_ATTRIBUTES, ['max'])));
} }
callback(messages, rsm); callback(messages, rsm);
} }
@ -142,7 +142,7 @@ converse.plugins.add('converse-mam', {
getUpdatedMessageAttributes (message, stanza) { getUpdatedMessageAttributes (message, stanza) {
const attrs = this.__super__.getUpdatedMessageAttributes.apply(this, arguments); const attrs = this.__super__.getUpdatedMessageAttributes.apply(this, arguments);
if (message && !message.get('is_archived')) { if (message && !message.get('is_archived')) {
return _.extend(attrs, { return Object.assign(attrs, {
'is_archived': this.isArchived(stanza) 'is_archived': this.isArchived(stanza)
}, this.getStanzaIDs(stanza)) }, this.getStanzaIDs(stanza))
} }
@ -226,7 +226,7 @@ converse.plugins.add('converse-mam', {
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management API * The [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management API
* *

View File

@ -559,7 +559,7 @@ converse.plugins.add('converse-muc', {
}); });
const features = await _converse.api.disco.getFeatures(this.get('jid')); const features = await _converse.api.disco.getFeatures(this.get('jid'));
const attrs = _.extend( const attrs = Object.assign(
_.zipObject(converse.ROOM_FEATURES, _.map(converse.ROOM_FEATURES, _.stubFalse)), _.zipObject(converse.ROOM_FEATURES, _.map(converse.ROOM_FEATURES, _.stubFalse)),
{'fetched': moment().format()} {'fetched': moment().format()}
); );
@ -921,7 +921,7 @@ converse.plugins.add('converse-muc', {
} }
} }
const jid = data.jid || ''; const jid = data.jid || '';
const attributes = _.extend(data, { const attributes = Object.assign(data, {
'jid': Strophe.getBareJidFromJid(jid) || _.get(occupant, 'attributes.jid'), 'jid': Strophe.getBareJidFromJid(jid) || _.get(occupant, 'attributes.jid'),
'resource': Strophe.getResourceFromJid(jid) || _.get(occupant, 'attributes.resource') 'resource': Strophe.getResourceFromJid(jid) || _.get(occupant, 'attributes.resource')
}); });
@ -1224,10 +1224,10 @@ converse.plugins.add('converse-muc', {
}, },
initialize (attributes) { initialize (attributes) {
this.set(_.extend({ this.set(Object.assign(
'id': _converse.connection.getUniqueId(), {'id': _converse.connection.getUniqueId()},
}, attributes)); attributes)
);
this.on('change:image_hash', this.onAvatarChanged, this); this.on('change:image_hash', this.onAvatarChanged, this);
}, },
@ -1501,7 +1501,7 @@ converse.plugins.add('converse-muc', {
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
// We extend the default converse.js API to add methods specific to MUC groupchats. // We extend the default converse.js API to add methods specific to MUC groupchats.
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "rooms" namespace groups methods relevant to chatrooms * The "rooms" namespace groups methods relevant to chatrooms
* (aka groupchats). * (aka groupchats).

View File

@ -26,7 +26,7 @@ converse.plugins.add('converse-pubsub', {
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
// We extend the default converse.js API to add methods specific to MUC groupchats. // We extend the default converse.js API to add methods specific to MUC groupchats.
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "pubsub" namespace groups methods relevant to PubSub * The "pubsub" namespace groups methods relevant to PubSub
* *

View File

@ -968,7 +968,7 @@ converse.plugins.add('converse-roster', {
/************************ API ************************/ /************************ API ************************/
// API methods only available to plugins // API methods only available to plugins
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* @namespace _converse.api.contacts * @namespace _converse.api.contacts
* @memberOf _converse.api * @memberOf _converse.api

View File

@ -118,7 +118,7 @@ converse.plugins.add('converse-vcard', {
return onVCardData(jid, iq); return onVCardData(jid, iq);
} }
/* Event handlers */ /************************ BEGIN Event Handlers ************************/
_converse.initVCardCollection = function () { _converse.initVCardCollection = function () {
_converse.vcards = new _converse.VCards(); _converse.vcards = new _converse.VCards();
const id = `${_converse.bare_jid}-converse.vcards`; const id = `${_converse.bare_jid}-converse.vcards`;
@ -139,7 +139,8 @@ converse.plugins.add('converse-vcard', {
_converse.api.disco.own.features.add(Strophe.NS.VCARD); _converse.api.disco.own.features.add(Strophe.NS.VCARD);
}); });
_.extend(_converse.api, { /************************ BEGIN API ************************/
Object.assign(_converse.api, {
/** /**
* The XEP-0054 VCard API * The XEP-0054 VCard API
* *

View File

@ -30205,7 +30205,6 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
//# sourceMappingURL=pluggable.js.map //# sourceMappingURL=pluggable.js.map
/***/ }), /***/ }),
/***/ "./node_modules/process/browser.js": /***/ "./node_modules/process/browser.js":
@ -40994,7 +40993,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
'type': 'error' 'type': 'error'
}); });
} else { } else {
const message = this.messages.create(_.extend(this.getOutgoingMessageAttributes(), { const message = this.messages.create(Object.assign(this.getOutgoingMessageAttributes(), {
'file': true, 'file': true,
'progress': 0, 'progress': 0,
'slot_request_url': slot_request_url 'slot_request_url': slot_request_url
@ -41092,7 +41091,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
text = this.getMessageBody(stanza) || undefined, text = this.getMessageBody(stanza) || undefined,
chat_state = stanza.getElementsByTagName(_converse.COMPOSING).length && _converse.COMPOSING || stanza.getElementsByTagName(_converse.PAUSED).length && _converse.PAUSED || stanza.getElementsByTagName(_converse.INACTIVE).length && _converse.INACTIVE || stanza.getElementsByTagName(_converse.ACTIVE).length && _converse.ACTIVE || stanza.getElementsByTagName(_converse.GONE).length && _converse.GONE; chat_state = stanza.getElementsByTagName(_converse.COMPOSING).length && _converse.COMPOSING || stanza.getElementsByTagName(_converse.PAUSED).length && _converse.PAUSED || stanza.getElementsByTagName(_converse.INACTIVE).length && _converse.INACTIVE || stanza.getElementsByTagName(_converse.ACTIVE).length && _converse.ACTIVE || stanza.getElementsByTagName(_converse.GONE).length && _converse.GONE;
const attrs = _.extend({ const attrs = Object.assign({
'chat_state': chat_state, 'chat_state': chat_state,
'is_archived': this.isArchived(original_stanza), 'is_archived': this.isArchived(original_stanza),
'is_delayed': !_.isNil(delay), 'is_delayed': !_.isNil(delay),
@ -41413,11 +41412,10 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
let chatbox = this.get(Strophe.getBareJidFromJid(jid)); let chatbox = this.get(Strophe.getBareJidFromJid(jid));
if (!chatbox && create) { if (!chatbox && create) {
_.extend(attrs, { Object.assign(attrs, {
'jid': jid, 'jid': jid,
'id': jid 'id': jid
}); });
chatbox = this.create(attrs, { chatbox = this.create(attrs, {
'error'(model, response) { 'error'(model, response) {
_converse.log(response.responseText); _converse.log(response.responseText);
@ -41491,7 +41489,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "chats" namespace (used for one-on-one chats) * The "chats" namespace (used for one-on-one chats)
* *
@ -41636,7 +41634,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-cha
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -41746,9 +41743,7 @@ const _converse = {
'promises': {} 'promises': {}
}; };
_converse.VERSION_NAME = "v4.2.0"; _converse.VERSION_NAME = "v4.2.0";
Object.assign(_converse, Backbone.Events); // Make converse pluggable
_lodash_noconflict__WEBPACK_IMPORTED_MODULE_4___default.a.extend(_converse, Backbone.Events); // Make converse pluggable
pluggable_js_dist_pluggable__WEBPACK_IMPORTED_MODULE_8___default.a.enable(_converse, '_converse', 'pluggable'); // Core plugins are whitelisted automatically pluggable_js_dist_pluggable__WEBPACK_IMPORTED_MODULE_8___default.a.enable(_converse, '_converse', 'pluggable'); // Core plugins are whitelisted automatically
// These are just the @converse/headless plugins, for the full converse, // These are just the @converse/headless plugins, for the full converse,
@ -44168,7 +44163,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-dis
return true; return true;
} }
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The XEP-0030 service discovery API * The XEP-0030 service discovery API
* *
@ -44679,8 +44674,7 @@ function queryForArchivedMessages(_converse, options, callback, errback) {
rsm = new Strophe.RSM({ rsm = new Strophe.RSM({
xml: set xml: set
}); });
Object.assign(rsm, _.pick(options, _.concat(MAM_ATTRIBUTES, ['max'])));
_.extend(rsm, _.pick(options, _.concat(MAM_ATTRIBUTES, ['max'])));
} }
callback(messages, rsm); callback(messages, rsm);
@ -44739,7 +44733,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-mam
const attrs = this.__super__.getUpdatedMessageAttributes.apply(this, arguments); const attrs = this.__super__.getUpdatedMessageAttributes.apply(this, arguments);
if (message && !message.get('is_archived')) { if (message && !message.get('is_archived')) {
return _.extend(attrs, { return Object.assign(attrs, {
'is_archived': this.isArchived(stanza) 'is_archived': this.isArchived(stanza)
}, this.getStanzaIDs(stanza)); }, this.getStanzaIDs(stanza));
} }
@ -44837,7 +44831,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-mam
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management API * The [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management API
* *
@ -45017,7 +45011,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_2__["default"].plugins.add('converse-mam
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -45681,11 +45674,9 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
}), 'attributes.value') }), 'attributes.value')
}); });
const features = await _converse.api.disco.getFeatures(this.get('jid')); const features = await _converse.api.disco.getFeatures(this.get('jid'));
const attrs = Object.assign(_.zipObject(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.map(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.stubFalse)), {
const attrs = _.extend(_.zipObject(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.map(_converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].ROOM_FEATURES, _.stubFalse)), {
'fetched': moment().format() 'fetched': moment().format()
}); });
features.each(feature => { features.each(feature => {
const fieldname = feature.get('var'); const fieldname = feature.get('var');
@ -46095,8 +46086,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
} }
const jid = data.jid || ''; const jid = data.jid || '';
const attributes = Object.assign(data, {
const attributes = _.extend(data, {
'jid': Strophe.getBareJidFromJid(jid) || _.get(occupant, 'attributes.jid'), 'jid': Strophe.getBareJidFromJid(jid) || _.get(occupant, 'attributes.jid'),
'resource': Strophe.getResourceFromJid(jid) || _.get(occupant, 'attributes.resource') 'resource': Strophe.getResourceFromJid(jid) || _.get(occupant, 'attributes.resource')
}); });
@ -46438,7 +46428,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
}, },
initialize(attributes) { initialize(attributes) {
this.set(_.extend({ this.set(Object.assign({
'id': _converse.connection.getUniqueId() 'id': _converse.connection.getUniqueId()
}, attributes)); }, attributes));
this.on('change:image_hash', this.onAvatarChanged, this); this.on('change:image_hash', this.onAvatarChanged, this);
@ -46743,7 +46733,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
// We extend the default converse.js API to add methods specific to MUC groupchats. // We extend the default converse.js API to add methods specific to MUC groupchats.
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "rooms" namespace groups methods relevant to chatrooms * The "rooms" namespace groups methods relevant to chatrooms
* (aka groupchats). * (aka groupchats).
@ -46924,7 +46914,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_3__["default"].plugins.add('converse-muc
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -47104,7 +47093,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins.add('converse-pub
/************************ BEGIN API ************************/ /************************ BEGIN API ************************/
// We extend the default converse.js API to add methods specific to MUC groupchats. // We extend the default converse.js API to add methods specific to MUC groupchats.
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* The "pubsub" namespace groups methods relevant to PubSub * The "pubsub" namespace groups methods relevant to PubSub
* *
@ -47179,7 +47168,6 @@ _converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins.add('converse-pub
} }
}); });
/************************ END API ************************/ /************************ END API ************************/
} }
}); });
@ -48293,7 +48281,7 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
// API methods only available to plugins // API methods only available to plugins
_.extend(_converse.api, { Object.assign(_converse.api, {
/** /**
* @namespace _converse.api.contacts * @namespace _converse.api.contacts
* @memberOf _converse.api * @memberOf _converse.api
@ -48521,7 +48509,7 @@ _converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-vca
return onVCardData(jid, iq); return onVCardData(jid, iq);
} }
/* Event handlers */ /************************ BEGIN Event Handlers ************************/
_converse.initVCardCollection = function () { _converse.initVCardCollection = function () {
@ -48549,8 +48537,10 @@ _converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-vca
_converse.api.listen.on('addClientFeatures', () => { _converse.api.listen.on('addClientFeatures', () => {
_converse.api.disco.own.features.add(Strophe.NS.VCARD); _converse.api.disco.own.features.add(Strophe.NS.VCARD);
}); });
/************************ BEGIN API ************************/
_.extend(_converse.api, {
Object.assign(_converse.api, {
/** /**
* The XEP-0054 VCard API * The XEP-0054 VCard API
* *