Split mam-views plugin into multiple files
This commit is contained in:
parent
573cc3e8d9
commit
42581b1d12
|
@ -31,7 +31,6 @@ module.exports = function(config) {
|
||||||
{ pattern: "spec/emojis.js", type: 'module' },
|
{ pattern: "spec/emojis.js", type: 'module' },
|
||||||
{ pattern: "spec/eventemitter.js", type: 'module' },
|
{ pattern: "spec/eventemitter.js", type: 'module' },
|
||||||
{ pattern: "spec/http-file-upload.js", type: 'module' },
|
{ pattern: "spec/http-file-upload.js", type: 'module' },
|
||||||
{ pattern: "spec/mam.js", type: 'module' },
|
|
||||||
{ pattern: "spec/markers.js", type: 'module' },
|
{ pattern: "spec/markers.js", type: 'module' },
|
||||||
{ pattern: "spec/ping.js", type: 'module' },
|
{ pattern: "spec/ping.js", type: 'module' },
|
||||||
{ pattern: "spec/presence.js", type: 'module' },
|
{ pattern: "spec/presence.js", type: 'module' },
|
||||||
|
@ -54,6 +53,7 @@ module.exports = function(config) {
|
||||||
{ pattern: "src/plugins/controlbox/tests/controlbox.js", type: 'module' },
|
{ pattern: "src/plugins/controlbox/tests/controlbox.js", type: 'module' },
|
||||||
{ pattern: "src/plugins/controlbox/tests/login.js", type: 'module' },
|
{ pattern: "src/plugins/controlbox/tests/login.js", type: 'module' },
|
||||||
{ pattern: "src/plugins/headlines-view/tests/headline.js", type: 'module' },
|
{ pattern: "src/plugins/headlines-view/tests/headline.js", type: 'module' },
|
||||||
|
{ pattern: "src/plugins/mam-views/tests/mam.js", type: 'module' },
|
||||||
{ pattern: "src/plugins/minimize/tests/minchats.js", type: 'module' },
|
{ pattern: "src/plugins/minimize/tests/minchats.js", type: 'module' },
|
||||||
{ pattern: "src/plugins/muc-views/tests/autocomplete.js", type: 'module' },
|
{ pattern: "src/plugins/muc-views/tests/autocomplete.js", type: 'module' },
|
||||||
{ pattern: "src/plugins/muc-views/tests/hats.js", type: 'module' },
|
{ pattern: "src/plugins/muc-views/tests/hats.js", type: 'module' },
|
||||||
|
|
|
@ -21,7 +21,7 @@ import "./plugins/controlbox/index.js"; // The control box
|
||||||
import "./plugins/dragresize/index.js"; // Allows chat boxes to be resized by dragging them
|
import "./plugins/dragresize/index.js"; // Allows chat boxes to be resized by dragging them
|
||||||
import "./plugins/fullscreen/index.js";
|
import "./plugins/fullscreen/index.js";
|
||||||
import "./plugins/headlines-view/index.js";
|
import "./plugins/headlines-view/index.js";
|
||||||
import "./plugins/mam-views.js";
|
import "./plugins/mam-views/index.js";
|
||||||
import "./plugins/minimize/index.js"; // Allows chat boxes to be minimized
|
import "./plugins/minimize/index.js"; // Allows chat boxes to be minimized
|
||||||
import "./plugins/muc-views/index.js"; // Views related to MUC
|
import "./plugins/muc-views/index.js"; // Views related to MUC
|
||||||
import "./plugins/notifications/index.js";
|
import "./plugins/notifications/index.js";
|
||||||
|
|
16
src/plugins/mam-views/index.js
Normal file
16
src/plugins/mam-views/index.js
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
/**
|
||||||
|
* @description UI code XEP-0313 Message Archive Management
|
||||||
|
* @copyright 2021, the Converse.js contributors
|
||||||
|
* @license Mozilla Public License (MPLv2)
|
||||||
|
*/
|
||||||
|
import { api, converse } from '@converse/headless/core';
|
||||||
|
import { fetchMessagesOnScrollUp } from './utils.js';
|
||||||
|
|
||||||
|
|
||||||
|
converse.plugins.add('converse-mam-views', {
|
||||||
|
dependencies: ['converse-mam', 'converse-chatview', 'converse-muc-views'],
|
||||||
|
|
||||||
|
initialize () {
|
||||||
|
api.listen.on('chatBoxScrolledUp', fetchMessagesOnScrollUp);
|
||||||
|
}
|
||||||
|
});
|
|
@ -1,12 +1,7 @@
|
||||||
/**
|
|
||||||
* @description UI code XEP-0313 Message Archive Management
|
|
||||||
* @copyright 2020, the Converse.js contributors
|
|
||||||
* @license Mozilla Public License (MPLv2)
|
|
||||||
*/
|
|
||||||
import { fetchArchivedMessages } from '@converse/headless/plugins/mam/utils';
|
import { fetchArchivedMessages } from '@converse/headless/plugins/mam/utils';
|
||||||
import { _converse, api, converse } from '@converse/headless/core';
|
import { _converse } from '@converse/headless/core';
|
||||||
|
|
||||||
async function fetchMessagesOnScrollUp (view) {
|
export async function fetchMessagesOnScrollUp (view) {
|
||||||
if (view.model.messages.length) {
|
if (view.model.messages.length) {
|
||||||
const is_groupchat = view.model.get('type') === _converse.CHATROOMS_TYPE;
|
const is_groupchat = view.model.get('type') === _converse.CHATROOMS_TYPE;
|
||||||
const oldest_message = view.model.getOldestMessage();
|
const oldest_message = view.model.getOldestMessage();
|
||||||
|
@ -24,11 +19,3 @@ async function fetchMessagesOnScrollUp (view) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
converse.plugins.add('converse-mam-views', {
|
|
||||||
dependencies: ['converse-mam', 'converse-chatview', 'converse-muc-views'],
|
|
||||||
|
|
||||||
initialize () {
|
|
||||||
api.listen.on('chatBoxScrolledUp', fetchMessagesOnScrollUp);
|
|
||||||
}
|
|
||||||
});
|
|
Loading…
Reference in New Issue
Block a user