From 42581b1d12b4f1f4b7172a13c283e63c53d33794 Mon Sep 17 00:00:00 2001 From: JC Brand Date: Sun, 11 Apr 2021 21:10:21 +0200 Subject: [PATCH] Split mam-views plugin into multiple files --- karma.conf.js | 2 +- src/converse.js | 2 +- src/plugins/mam-views/index.js | 16 ++++++++++++++++ {spec => src/plugins/mam-views/tests}/mam.js | 0 .../{mam-views.js => mam-views/utils.js} | 17 ++--------------- 5 files changed, 20 insertions(+), 17 deletions(-) create mode 100644 src/plugins/mam-views/index.js rename {spec => src/plugins/mam-views/tests}/mam.js (100%) rename src/plugins/{mam-views.js => mam-views/utils.js} (63%) diff --git a/karma.conf.js b/karma.conf.js index d23da0f99..76288e14e 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -31,7 +31,6 @@ module.exports = function(config) { { pattern: "spec/emojis.js", type: 'module' }, { pattern: "spec/eventemitter.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/ping.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/login.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/muc-views/tests/autocomplete.js", type: 'module' }, { pattern: "src/plugins/muc-views/tests/hats.js", type: 'module' }, diff --git a/src/converse.js b/src/converse.js index 83e18bf91..8c427a798 100644 --- a/src/converse.js +++ b/src/converse.js @@ -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/fullscreen/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/muc-views/index.js"; // Views related to MUC import "./plugins/notifications/index.js"; diff --git a/src/plugins/mam-views/index.js b/src/plugins/mam-views/index.js new file mode 100644 index 000000000..45a79e520 --- /dev/null +++ b/src/plugins/mam-views/index.js @@ -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); + } +}); diff --git a/spec/mam.js b/src/plugins/mam-views/tests/mam.js similarity index 100% rename from spec/mam.js rename to src/plugins/mam-views/tests/mam.js diff --git a/src/plugins/mam-views.js b/src/plugins/mam-views/utils.js similarity index 63% rename from src/plugins/mam-views.js rename to src/plugins/mam-views/utils.js index a9bcc3dfa..dd1112749 100644 --- a/src/plugins/mam-views.js +++ b/src/plugins/mam-views/utils.js @@ -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 { _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) { const is_groupchat = view.model.get('type') === _converse.CHATROOMS_TYPE; 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); - } -});