2016-03-07 17:35:08 +01:00
|
|
|
var config;
|
|
|
|
if (typeof(require) === 'undefined') {
|
|
|
|
/* XXX: Hack to work around r.js's stupid parsing.
|
|
|
|
* We want to save the configuration in a variable so that we can reuse it in
|
|
|
|
* tests/main.js.
|
|
|
|
*/
|
|
|
|
require = { // jshint ignore:line
|
|
|
|
config: function (c) {
|
|
|
|
config = c;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
require.config({
|
|
|
|
baseUrl: '.',
|
|
|
|
paths: {
|
|
|
|
"backbone": "components/backbone/backbone",
|
|
|
|
"backbone.browserStorage": "components/backbone.browserStorage/backbone.browserStorage",
|
|
|
|
"backbone.overview": "components/backbone.overview/backbone.overview",
|
|
|
|
"eventemitter": "components/otr/build/dep/eventemitter",
|
|
|
|
"jquery": "components/jquery/dist/jquery",
|
|
|
|
"jquery-private": "src/jquery-private",
|
|
|
|
"jquery.browser": "components/jquery.browser/dist/jquery.browser",
|
|
|
|
"jquery.easing": "components/jquery-easing-original/index", // XXX: Only required for https://conversejs.org website
|
|
|
|
"moment": "components/momentjs/moment",
|
|
|
|
"strophe": "components/strophejs/src/wrapper",
|
|
|
|
"strophe-base64": "components/strophejs/src/base64",
|
|
|
|
"strophe-bosh": "components/strophejs/src/bosh",
|
|
|
|
"strophe-core": "components/strophejs/src/core",
|
|
|
|
"strophe-md5": "components/strophejs/src/md5",
|
|
|
|
"strophe-polyfill": "components/strophejs/src/polyfills",
|
|
|
|
"strophe-sha1": "components/strophejs/src/sha1",
|
|
|
|
"strophe-utils": "components/strophejs/src/utils",
|
|
|
|
"strophe-websocket": "components/strophejs/src/websocket",
|
|
|
|
"strophe.disco": "components/strophejs-plugins/disco/strophe.disco",
|
|
|
|
"strophe.ping": "src/strophe.ping",
|
|
|
|
"strophe.rsm": "components/strophejs-plugins/rsm/strophe.rsm",
|
|
|
|
"strophe.vcard": "src/strophe.vcard",
|
|
|
|
"text": 'components/requirejs-text/text',
|
|
|
|
"tpl": 'components/requirejs-tpl-jcbrand/tpl',
|
|
|
|
"typeahead": "components/typeahead.js/index",
|
|
|
|
"underscore": "components/underscore/underscore",
|
|
|
|
"utils": "src/utils",
|
|
|
|
"polyfill": "src/polyfill",
|
|
|
|
|
|
|
|
// Converse
|
|
|
|
"converse-api": "src/converse-api",
|
2016-03-13 17:16:53 +01:00
|
|
|
"converse-chatview": "src/converse-chatview",
|
2016-03-07 17:35:08 +01:00
|
|
|
"converse-controlbox": "src/converse-controlbox",
|
|
|
|
"converse-core": "src/converse-core",
|
2016-04-01 14:46:19 +02:00
|
|
|
"converse-dragresize": "src/converse-dragresize",
|
2016-03-13 17:16:53 +01:00
|
|
|
"converse-headline": "src/converse-headline",
|
2016-03-13 18:41:16 +01:00
|
|
|
"converse-mam": "src/converse-mam",
|
2016-03-14 17:04:27 +01:00
|
|
|
"converse-minimize": "src/converse-minimize",
|
2016-03-07 17:35:08 +01:00
|
|
|
"converse-muc": "src/converse-muc",
|
|
|
|
"converse-notification": "src/converse-notification",
|
|
|
|
"converse-otr": "src/converse-otr",
|
|
|
|
"converse-ping": "src/converse-ping",
|
|
|
|
"converse-register": "src/converse-register",
|
2016-03-14 17:04:27 +01:00
|
|
|
"converse-rosterview": "src/converse-rosterview",
|
2016-03-07 17:35:08 +01:00
|
|
|
"converse-templates": "src/converse-templates",
|
2016-03-16 12:16:32 +01:00
|
|
|
"converse-vcard": "src/converse-vcard",
|
2016-03-07 17:35:08 +01:00
|
|
|
|
|
|
|
// Off-the-record-encryption
|
|
|
|
"bigint": "src/bigint",
|
|
|
|
"crypto": "src/crypto",
|
|
|
|
"crypto.aes": "components/otr/vendor/cryptojs/aes",
|
|
|
|
"crypto.cipher-core": "components/otr/vendor/cryptojs/cipher-core",
|
|
|
|
"crypto.core": "components/otr/vendor/cryptojs/core",
|
|
|
|
"crypto.enc-base64": "components/otr/vendor/cryptojs/enc-base64",
|
|
|
|
"crypto.evpkdf": "components/crypto-js-evanvosberg/src/evpkdf",
|
|
|
|
"crypto.hmac": "components/otr/vendor/cryptojs/hmac",
|
|
|
|
"crypto.md5": "components/crypto-js-evanvosberg/src/md5",
|
|
|
|
"crypto.mode-ctr": "components/otr/vendor/cryptojs/mode-ctr",
|
|
|
|
"crypto.pad-nopadding": "components/otr/vendor/cryptojs/pad-nopadding",
|
|
|
|
"crypto.sha1": "components/otr/vendor/cryptojs/sha1",
|
|
|
|
"crypto.sha256": "components/otr/vendor/cryptojs/sha256",
|
|
|
|
"salsa20": "components/otr/build/dep/salsa20",
|
|
|
|
"otr": "src/otr",
|
|
|
|
|
|
|
|
// Locales paths
|
|
|
|
"locales": "src/locales",
|
|
|
|
"jed": "components/jed/jed",
|
|
|
|
"af": "locale/af/LC_MESSAGES/converse.json",
|
|
|
|
"de": "locale/de/LC_MESSAGES/converse.json",
|
|
|
|
"en": "locale/en/LC_MESSAGES/converse.json",
|
|
|
|
"es": "locale/es/LC_MESSAGES/converse.json",
|
|
|
|
"fr": "locale/fr/LC_MESSAGES/converse.json",
|
|
|
|
"he": "locale/he/LC_MESSAGES/converse.json",
|
|
|
|
"hu": "locale/hu/LC_MESSAGES/converse.json",
|
|
|
|
"id": "locale/id/LC_MESSAGES/converse.json",
|
|
|
|
"it": "locale/it/LC_MESSAGES/converse.json",
|
|
|
|
"ja": "locale/ja/LC_MESSAGES/converse.json",
|
|
|
|
"nb": "locale/nb/LC_MESSAGES/converse.json",
|
|
|
|
"nl": "locale/nl/LC_MESSAGES/converse.json",
|
|
|
|
"pl": "locale/pl/LC_MESSAGES/converse.json",
|
|
|
|
"pt_BR": "locale/pt_BR/LC_MESSAGES/converse.json",
|
|
|
|
"ru": "locale/ru/LC_MESSAGES/converse.json",
|
|
|
|
"uk": "locale/uk/LC_MESSAGES/converse.json",
|
|
|
|
"zh": "locale/zh/LC_MESSAGES/converse.json",
|
|
|
|
|
|
|
|
"moment_with_locales": "src/moment_locales",
|
|
|
|
'moment_af': "components/momentjs/locale/af",
|
|
|
|
'moment_de': "components/momentjs/locale/de",
|
|
|
|
'moment_es': "components/momentjs/locale/es",
|
|
|
|
'moment_fr': "components/momentjs/locale/fr",
|
|
|
|
'moment_he': "components/momentjs/locale/he",
|
|
|
|
'moment_hu': "components/momentjs/locale/hu",
|
|
|
|
'moment_id': "components/momentjs/locale/id",
|
|
|
|
'moment_it': "components/momentjs/locale/it",
|
|
|
|
'moment_ja': "components/momentjs/locale/ja",
|
|
|
|
'moment_nb': "components/momentjs/locale/nb",
|
|
|
|
'moment_nl': "components/momentjs/locale/nl",
|
|
|
|
'moment_pl': "components/momentjs/locale/pl",
|
|
|
|
'moment_pt-br': "components/momentjs/locale/pt-br",
|
|
|
|
'moment_ru': "components/momentjs/locale/ru",
|
|
|
|
'moment_uk': "components/momentjs/locale/uk",
|
|
|
|
'moment_zh': "components/momentjs/locale/zh-cn",
|
|
|
|
|
|
|
|
// Templates
|
|
|
|
"action": "src/templates/action",
|
|
|
|
"add_contact_dropdown": "src/templates/add_contact_dropdown",
|
|
|
|
"add_contact_form": "src/templates/add_contact_form",
|
|
|
|
"change_status_message": "src/templates/change_status_message",
|
|
|
|
"chat_status": "src/templates/chat_status",
|
|
|
|
"chatarea": "src/templates/chatarea",
|
|
|
|
"chatbox": "src/templates/chatbox",
|
|
|
|
"chatroom": "src/templates/chatroom",
|
|
|
|
"chatroom_form": "src/templates/chatroom_form",
|
|
|
|
"chatroom_password_form": "src/templates/chatroom_password_form",
|
|
|
|
"chatroom_sidebar": "src/templates/chatroom_sidebar",
|
|
|
|
"chatrooms_tab": "src/templates/chatrooms_tab",
|
|
|
|
"chats_panel": "src/templates/chats_panel",
|
|
|
|
"choose_status": "src/templates/choose_status",
|
|
|
|
"contacts_panel": "src/templates/contacts_panel",
|
|
|
|
"contacts_tab": "src/templates/contacts_tab",
|
|
|
|
"controlbox": "src/templates/controlbox",
|
|
|
|
"controlbox_toggle": "src/templates/controlbox_toggle",
|
|
|
|
"field": "src/templates/field",
|
|
|
|
"form_captcha": "src/templates/form_captcha",
|
|
|
|
"form_checkbox": "src/templates/form_checkbox",
|
|
|
|
"form_input": "src/templates/form_input",
|
|
|
|
"form_select": "src/templates/form_select",
|
|
|
|
"form_textarea": "src/templates/form_textarea",
|
|
|
|
"form_username": "src/templates/form_username",
|
|
|
|
"group_header": "src/templates/group_header",
|
|
|
|
"info": "src/templates/info",
|
|
|
|
"login_panel": "src/templates/login_panel",
|
|
|
|
"login_tab": "src/templates/login_tab",
|
|
|
|
"message": "src/templates/message",
|
|
|
|
"new_day": "src/templates/new_day",
|
|
|
|
"occupant": "src/templates/occupant",
|
|
|
|
"pending_contact": "src/templates/pending_contact",
|
|
|
|
"pending_contacts": "src/templates/pending_contacts",
|
|
|
|
"register_panel": "src/templates/register_panel",
|
|
|
|
"register_tab": "src/templates/register_tab",
|
|
|
|
"registration_form": "src/templates/registration_form",
|
|
|
|
"registration_request": "src/templates/registration_request",
|
|
|
|
"requesting_contact": "src/templates/requesting_contact",
|
|
|
|
"requesting_contacts": "src/templates/requesting_contacts",
|
|
|
|
"room_description": "src/templates/room_description",
|
|
|
|
"room_item": "src/templates/room_item",
|
|
|
|
"room_panel": "src/templates/room_panel",
|
|
|
|
"roster": "src/templates/roster",
|
|
|
|
"roster_item": "src/templates/roster_item",
|
|
|
|
"search_contact": "src/templates/search_contact",
|
|
|
|
"select_option": "src/templates/select_option",
|
|
|
|
"status_option": "src/templates/status_option",
|
|
|
|
"toggle_chats": "src/templates/toggle_chats",
|
|
|
|
"toolbar": "src/templates/toolbar",
|
|
|
|
"toolbar_otr": "src/templates/toolbar_otr",
|
|
|
|
"trimmed_chat": "src/templates/trimmed_chat",
|
2016-03-31 10:40:25 +02:00
|
|
|
"vcard": "src/templates/vcard",
|
|
|
|
"chatbox_minimize": "src/templates/chatbox_minimize"
|
2016-03-07 17:35:08 +01:00
|
|
|
},
|
|
|
|
|
|
|
|
map: {
|
|
|
|
// '*' means all modules will get 'jquery-private'
|
|
|
|
// for their 'jquery' dependency.
|
|
|
|
'*': { 'jquery': 'jquery-private' },
|
|
|
|
// 'jquery-private' wants the real jQuery module
|
|
|
|
// though. If this line was not here, there would
|
|
|
|
// be an unresolvable cyclic dependency.
|
|
|
|
'jquery-private': { 'jquery': 'jquery' }
|
|
|
|
},
|
|
|
|
|
|
|
|
tpl: {
|
|
|
|
// Configuration for requirejs-tpl
|
|
|
|
// Use Mustache style syntax for variable interpolation
|
|
|
|
templateSettings: {
|
|
|
|
evaluate : /\{\[([\s\S]+?)\]\}/g,
|
|
|
|
interpolate : /\{\{([\s\S]+?)\}\}/g
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
|
|
|
// define module dependencies for modules not using define
|
|
|
|
shim: {
|
|
|
|
'crypto.aes': { deps: ['crypto.cipher-core'] },
|
|
|
|
'crypto.cipher-core': { deps: ['crypto.enc-base64', 'crypto.evpkdf'] },
|
|
|
|
'crypto.enc-base64': { deps: ['crypto.core'] },
|
|
|
|
'crypto.evpkdf': { deps: ['crypto.md5'] },
|
|
|
|
'crypto.hmac': { deps: ['crypto.core'] },
|
|
|
|
'crypto.md5': { deps: ['crypto.core'] },
|
|
|
|
'crypto.mode-ctr': { deps: ['crypto.cipher-core'] },
|
|
|
|
'crypto.pad-nopadding': { deps: ['crypto.cipher-core'] },
|
|
|
|
'crypto.sha1': { deps: ['crypto.core'] },
|
|
|
|
'crypto.sha256': { deps: ['crypto.core'] },
|
|
|
|
'bigint': { deps: ['crypto'] },
|
|
|
|
'strophe.ping': { deps: ['strophe'] },
|
|
|
|
'strophe.register': { deps: ['strophe'] },
|
|
|
|
'strophe.vcard': { deps: ['strophe'] }
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
|
2016-02-27 17:16:04 +01:00
|
|
|
/* Converse.js components configuration
|
2016-02-16 08:46:47 +01:00
|
|
|
*
|
|
|
|
* This file is used to tell require.js which components (or plugins) to load
|
|
|
|
* when it generates a build.
|
|
|
|
*/
|
2016-03-07 17:35:08 +01:00
|
|
|
if (typeof define !== 'undefined') {
|
|
|
|
/* When running tests, define is not defined. */
|
|
|
|
define("converse", [
|
2016-03-16 13:44:51 +01:00
|
|
|
"jquery",
|
2016-03-07 17:35:08 +01:00
|
|
|
"converse-api",
|
2016-02-20 16:06:12 +01:00
|
|
|
|
2016-03-07 17:35:08 +01:00
|
|
|
/* START: Removable components
|
|
|
|
* --------------------
|
|
|
|
* Any of the following components may be removed if they're not needed.
|
|
|
|
*/
|
|
|
|
"locales", // Translations for converse.js. This line can be removed
|
|
|
|
// to remove *all* translations, or you can modify the
|
|
|
|
// file src/locales.js to include only those
|
|
|
|
// translations that you care about.
|
|
|
|
|
2016-03-13 17:16:53 +01:00
|
|
|
"converse-chatview", // Renders standalone chat boxes for single user chat
|
2016-03-16 12:16:32 +01:00
|
|
|
"converse-mam", // XEP-0313 Message Archive Management
|
2016-03-07 17:35:08 +01:00
|
|
|
"converse-muc", // XEP-0045 Multi-user chat
|
2016-03-16 12:16:32 +01:00
|
|
|
"converse-vcard", // XEP-0054 VCard-temp
|
2016-03-07 17:35:08 +01:00
|
|
|
"converse-otr", // Off-the-record encryption for one-on-one messages
|
|
|
|
"converse-controlbox", // The control box
|
|
|
|
"converse-register", // XEP-0077 In-band registration
|
|
|
|
"converse-ping", // XEP-0199 XMPP Ping
|
|
|
|
"converse-notification",// HTML5 Notifications
|
2016-03-14 17:04:27 +01:00
|
|
|
"converse-minimize", // Allows chat boxes to be minimized
|
2016-04-01 14:46:19 +02:00
|
|
|
"converse-dragresize", // Allows chat boxes to be resized by dragging them
|
2016-03-09 09:14:09 +01:00
|
|
|
"converse-headline", // Support for headline messages
|
2016-03-07 17:35:08 +01:00
|
|
|
/* END: Removable components */
|
|
|
|
|
2016-03-16 13:44:51 +01:00
|
|
|
], function($, converse_api) {
|
2016-03-07 17:35:08 +01:00
|
|
|
window.converse = converse_api;
|
2016-03-16 13:05:16 +01:00
|
|
|
$(window).trigger('converse-loaded', converse_api);
|
2016-03-07 17:35:08 +01:00
|
|
|
return converse_api;
|
|
|
|
});
|
|
|
|
}
|