peertube-plugin-livechat/conversejs/custom/index.js
John Livingston 0c4a5999f8
New livechat-converse-size ConverseJS plugin:
* New plugin that handles the size of the converse-root, so we can adapt
  content to it
* Fixed some styling when chatbox is small (hidding avatars).
2024-05-13 10:53:40 +02:00

64 lines
2.4 KiB
JavaScript

/**
* @description This files will override the original ConverseJS index.js file.
*/
import '@converse/headless'
import './i18n/index.js'
import 'shared/registry.js'
import { CustomElement } from 'shared/components/element'
import { VIEW_PLUGINS } from './shared/constants.js'
import { _converse, converse } from '@converse/headless/core'
import 'shared/styles/index.scss'
/* START: Removable plugins
* ------------------------
* Any of the following plugin imports may be removed if the plugin is not needed
*
* Comments line were removed for the peertube-plugin-livechat.
*/
import './plugins/modal/index.js'
import './plugins/adhoc-views/index.js' // Views for XEP-0050 Ad-Hoc commands
import './plugins/bookmark-views/index.js' // Views for XEP-0048 Bookmarks
import './plugins/chatview/index.js' // Renders standalone chat boxes for single user chat
import './plugins/controlbox/index.js' // The control box
import './plugins/headlines-view/index.js'
import './plugins/mam-views/index.js'
import './plugins/muc-views/index.js' // Views related to MUC
// import './plugins/minimize/index.js' // Allows chat boxes to be minimized
// import './plugins/notifications/index.js'
// import './plugins/profile/index.js'
// import './plugins/omemo/index.js'
// import './plugins/push/index.js' // XEP-0357 Push Notifications
import './plugins/register/index.js' // XEP-0077 In-band registration
// import './plugins/roomslist/index.js' // Show currently open chat rooms
import './plugins/rootview/index.js'
import './plugins/rosterview/index.js'
import './plugins/singleton/index.js'
// import './plugins/dragresize/index.js' // Allows chat boxes to be resized by dragging them
import './plugins/fullscreen/index.js'
import '../custom/plugins/size/index.js'
import '../custom/plugins/tasks/index.js'
/* END: Removable components */
// We must add our custom plugins to CORE_PLUGINS (so it is white listed):
import { CORE_PLUGINS } from './headless/shared/constants.js'
CORE_PLUGINS.push('livechat-converse-size')
CORE_PLUGINS.push('livechat-converse-tasks')
_converse.CustomElement = CustomElement
const initialize = converse.initialize
converse.initialize = function (settings, callback) {
if (Array.isArray(settings.whitelisted_plugins)) {
settings.whitelisted_plugins = settings.whitelisted_plugins.concat(VIEW_PLUGINS)
} else {
settings.whitelisted_plugins = VIEW_PLUGINS
}
return initialize(settings, callback)
}
export default converse