Skip to content

Commit d3a80e8

Browse files
committed
Move converse-caps into the headless build
1 parent a75c118 commit d3a80e8

File tree

6 files changed

+170
-90
lines changed

6 files changed

+170
-90
lines changed

dist/converse.js

Lines changed: 86 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -32702,6 +32702,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
3270232702

3270332703
//# sourceMappingURL=pluggable.js.map
3270432704

32705+
3270532706
/***/ }),
3270632707

3270732708
/***/ "./node_modules/process/browser.js":
@@ -48593,80 +48594,6 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins
4859348594

4859448595
/***/ }),
4859548596

48596-
/***/ "./src/converse-caps.js":
48597-
/*!******************************!*\
48598-
!*** ./src/converse-caps.js ***!
48599-
\******************************/
48600-
/*! no exports provided */
48601-
/***/ (function(module, __webpack_exports__, __webpack_require__) {
48602-
48603-
"use strict";
48604-
__webpack_require__.r(__webpack_exports__);
48605-
/* harmony import */ var _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @converse/headless/converse-core */ "./src/headless/converse-core.js");
48606-
// Converse.js
48607-
// https://conversejs.org
48608-
//
48609-
// Copyright (c) 2013-2019, the Converse.js developers
48610-
// Licensed under the Mozilla Public License (MPLv2)
48611-
48612-
const _converse$env = _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].env,
48613-
Strophe = _converse$env.Strophe,
48614-
$build = _converse$env.$build,
48615-
_ = _converse$env._,
48616-
b64_sha1 = _converse$env.b64_sha1;
48617-
Strophe.addNamespace('CAPS', "http://jabber.org/protocol/caps");
48618-
48619-
function propertySort(array, property) {
48620-
return array.sort((a, b) => {
48621-
return a[property] > b[property] ? -1 : 1;
48622-
});
48623-
}
48624-
48625-
function generateVerificationString(_converse) {
48626-
const identities = _converse.api.disco.own.identities.get(),
48627-
features = _converse.api.disco.own.features.get();
48628-
48629-
if (identities.length > 1) {
48630-
propertySort(identities, "category");
48631-
propertySort(identities, "type");
48632-
propertySort(identities, "lang");
48633-
}
48634-
48635-
let S = _.reduce(identities, (result, id) => `${result}${id.category}/${id.type}/${_.get(id, 'lang', '')}/${id.name}<`, "");
48636-
48637-
features.sort();
48638-
S = _.reduce(features, (result, feature) => `${result}${feature}<`, S);
48639-
return b64_sha1(S);
48640-
}
48641-
48642-
function createCapsNode(_converse) {
48643-
return $build("c", {
48644-
'xmlns': Strophe.NS.CAPS,
48645-
'hash': "sha-1",
48646-
'node': "https://conversejs.org",
48647-
'ver': generateVerificationString(_converse)
48648-
}).nodeTree;
48649-
}
48650-
48651-
_converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-caps', {
48652-
overrides: {
48653-
// Overrides mentioned here will be picked up by converse.js's
48654-
// plugin architecture they will replace existing methods on the
48655-
// relevant objects or classes.
48656-
XMPPStatus: {
48657-
constructPresence() {
48658-
const presence = this.__super__.constructPresence.apply(this, arguments);
48659-
48660-
presence.root().cnode(createCapsNode(this.__super__._converse));
48661-
return presence;
48662-
}
48663-
48664-
}
48665-
}
48666-
});
48667-
48668-
/***/ }),
48669-
4867048597
/***/ "./src/converse-chatboxviews.js":
4867148598
/*!**************************************!*\
4867248599
!*** ./src/converse-chatboxviews.js ***!
@@ -60503,13 +60430,13 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_1__["default"].plugins
6050360430

6050460431
"use strict";
6050560432
__webpack_require__.r(__webpack_exports__);
60506-
/* harmony import */ var _converse_headless_converse_mam__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @converse/headless/converse-mam */ "./src/headless/converse-mam.js");
60507-
/* harmony import */ var _converse_headless_converse_ping__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @converse/headless/converse-ping */ "./src/headless/converse-ping.js");
60508-
/* harmony import */ var _converse_headless_converse_pubsub__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @converse/headless/converse-pubsub */ "./src/headless/converse-pubsub.js");
60509-
/* harmony import */ var _converse_headless_converse_vcard__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @converse/headless/converse-vcard */ "./src/headless/converse-vcard.js");
60510-
/* harmony import */ var converse_autocomplete__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! converse-autocomplete */ "./src/converse-autocomplete.js");
60511-
/* harmony import */ var converse_bookmarks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! converse-bookmarks */ "./src/converse-bookmarks.js");
60512-
/* harmony import */ var converse_caps__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! converse-caps */ "./src/converse-caps.js");
60433+
/* harmony import */ var _converse_headless_converse_caps__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @converse/headless/converse-caps */ "./src/headless/converse-caps.js");
60434+
/* harmony import */ var _converse_headless_converse_mam__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @converse/headless/converse-mam */ "./src/headless/converse-mam.js");
60435+
/* harmony import */ var _converse_headless_converse_ping__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @converse/headless/converse-ping */ "./src/headless/converse-ping.js");
60436+
/* harmony import */ var _converse_headless_converse_pubsub__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @converse/headless/converse-pubsub */ "./src/headless/converse-pubsub.js");
60437+
/* harmony import */ var _converse_headless_converse_vcard__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @converse/headless/converse-vcard */ "./src/headless/converse-vcard.js");
60438+
/* harmony import */ var converse_autocomplete__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! converse-autocomplete */ "./src/converse-autocomplete.js");
60439+
/* harmony import */ var converse_bookmarks__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! converse-bookmarks */ "./src/converse-bookmarks.js");
6051360440
/* harmony import */ var converse_chatview__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! converse-chatview */ "./src/converse-chatview.js");
6051460441
/* harmony import */ var converse_controlbox__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! converse-controlbox */ "./src/converse-controlbox.js");
6051560442
/* harmony import */ var converse_dragresize__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! converse-dragresize */ "./src/converse-dragresize.js");
@@ -60530,6 +60457,8 @@ __webpack_require__.r(__webpack_exports__);
6053060457
* --------------------
6053160458
* Any of the following components may be removed if they're not needed.
6053260459
*/
60460+
// XEP-0115 Entity Capabilities
60461+
6053360462
// XEP-0313 Message Archive Management
6053460463

6053560464
// XEP-0199 XMPP Ping
@@ -60541,8 +60470,6 @@ __webpack_require__.r(__webpack_exports__);
6054160470

6054260471
// XEP-0048 Bookmarks
6054360472

60544-
// XEP-0115 Entity Capabilities
60545-
6054660473
// Renders standalone chat boxes for single user chat
6054760474

6054860475
// The control box
@@ -60571,7 +60498,7 @@ __webpack_require__.r(__webpack_exports__);
6057160498
/* END: Removable components */
6057260499

6057360500

60574-
const WHITELISTED_PLUGINS = ['converse-autocomplete', 'converse-bookmarks', 'converse-caps', 'converse-chatboxviews', 'converse-chatview', 'converse-controlbox', 'converse-dragresize', 'converse-embedded', 'converse-fullscreen', 'converse-headline', 'converse-mam-views', 'converse-message-view', 'converse-minimize', 'converse-modal', 'converse-muc-views', 'converse-notification', 'converse-omemo', 'converse-profile', 'converse-push', 'converse-register', 'converse-roomslist', 'converse-rosterview', 'converse-singleton'];
60501+
const WHITELISTED_PLUGINS = ['converse-autocomplete', 'converse-bookmarks', 'converse-chatboxviews', 'converse-chatview', 'converse-controlbox', 'converse-dragresize', 'converse-embedded', 'converse-fullscreen', 'converse-headline', 'converse-mam-views', 'converse-message-view', 'converse-minimize', 'converse-modal', 'converse-muc-views', 'converse-notification', 'converse-omemo', 'converse-profile', 'converse-push', 'converse-register', 'converse-roomslist', 'converse-rosterview', 'converse-singleton'];
6057560502
const initialize = _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_22__["default"].initialize;
6057660503

6057760504
_converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_22__["default"].initialize = function (settings, callback) {
@@ -61698,6 +61625,80 @@ _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_22__["default"].initia
6169861625

6169961626
/***/ }),
6170061627

61628+
/***/ "./src/headless/converse-caps.js":
61629+
/*!***************************************!*\
61630+
!*** ./src/headless/converse-caps.js ***!
61631+
\***************************************/
61632+
/*! no exports provided */
61633+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
61634+
61635+
"use strict";
61636+
__webpack_require__.r(__webpack_exports__);
61637+
/* harmony import */ var _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @converse/headless/converse-core */ "./src/headless/converse-core.js");
61638+
// Converse.js
61639+
// https://conversejs.org
61640+
//
61641+
// Copyright (c) 2013-2019, the Converse.js developers
61642+
// Licensed under the Mozilla Public License (MPLv2)
61643+
61644+
const _converse$env = _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].env,
61645+
Strophe = _converse$env.Strophe,
61646+
$build = _converse$env.$build,
61647+
_ = _converse$env._,
61648+
b64_sha1 = _converse$env.b64_sha1;
61649+
Strophe.addNamespace('CAPS', "http://jabber.org/protocol/caps");
61650+
61651+
function propertySort(array, property) {
61652+
return array.sort((a, b) => {
61653+
return a[property] > b[property] ? -1 : 1;
61654+
});
61655+
}
61656+
61657+
function generateVerificationString(_converse) {
61658+
const identities = _converse.api.disco.own.identities.get(),
61659+
features = _converse.api.disco.own.features.get();
61660+
61661+
if (identities.length > 1) {
61662+
propertySort(identities, "category");
61663+
propertySort(identities, "type");
61664+
propertySort(identities, "lang");
61665+
}
61666+
61667+
let S = _.reduce(identities, (result, id) => `${result}${id.category}/${id.type}/${_.get(id, 'lang', '')}/${id.name}<`, "");
61668+
61669+
features.sort();
61670+
S = _.reduce(features, (result, feature) => `${result}${feature}<`, S);
61671+
return b64_sha1(S);
61672+
}
61673+
61674+
function createCapsNode(_converse) {
61675+
return $build("c", {
61676+
'xmlns': Strophe.NS.CAPS,
61677+
'hash': "sha-1",
61678+
'node': "https://conversejs.org",
61679+
'ver': generateVerificationString(_converse)
61680+
}).nodeTree;
61681+
}
61682+
61683+
_converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-caps', {
61684+
overrides: {
61685+
// Overrides mentioned here will be picked up by converse.js's
61686+
// plugin architecture they will replace existing methods on the
61687+
// relevant objects or classes.
61688+
XMPPStatus: {
61689+
constructPresence() {
61690+
const presence = this.__super__.constructPresence.apply(this, arguments);
61691+
61692+
presence.root().cnode(createCapsNode(this.__super__._converse));
61693+
return presence;
61694+
}
61695+
61696+
}
61697+
}
61698+
});
61699+
61700+
/***/ }),
61701+
6170161702
/***/ "./src/headless/converse-chatboxes.js":
6170261703
/*!********************************************!*\
6170361704
!*** ./src/headless/converse-chatboxes.js ***!
@@ -63196,7 +63197,7 @@ pluggable_js_dist_pluggable__WEBPACK_IMPORTED_MODULE_8___default.a.enable(_conve
6319663197
// These are just the @converse/headless plugins, for the full converse,
6319763198
// the other plugins are whitelisted in src/converse.js
6319863199

63199-
_converse.core_plugins = ['converse-chatboxes', 'converse-disco', 'converse-mam', 'converse-muc', 'converse-ping', 'converse-pubsub', 'converse-roster', 'converse-vcard'];
63200+
_converse.core_plugins = ['converse-caps', 'converse-chatboxes', 'converse-disco', 'converse-mam', 'converse-muc', 'converse-ping', 'converse-pubsub', 'converse-roster', 'converse-vcard'];
6320063201
_converse.keycodes = {
6320163202
TAB: 9,
6320263203
ENTER: 13,

src/converse.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
* --------------------
33
* Any of the following components may be removed if they're not needed.
44
*/
5+
import "@converse/headless/converse-caps"; // XEP-0115 Entity Capabilities
56
import "@converse/headless/converse-mam"; // XEP-0313 Message Archive Management
67
import "@converse/headless/converse-ping"; // XEP-0199 XMPP Ping
78
import "@converse/headless/converse-pubsub"; // XEP-0060 PubSub
89
import "@converse/headless/converse-vcard"; // XEP-0054 VCard-temp
910
import "converse-autocomplete";
1011
import "converse-bookmarks"; // XEP-0048 Bookmarks
11-
import "converse-caps"; // XEP-0115 Entity Capabilities
1212
import "converse-chatview"; // Renders standalone chat boxes for single user chat
1313
import "converse-controlbox"; // The control box
1414
import "converse-dragresize"; // Allows chat boxes to be resized by dragging them
@@ -31,7 +31,6 @@ import converse from "@converse/headless/converse-core";
3131
const WHITELISTED_PLUGINS = [
3232
'converse-autocomplete',
3333
'converse-bookmarks',
34-
'converse-caps',
3534
'converse-chatboxviews',
3635
'converse-chatview',
3736
'converse-controlbox',
File renamed without changes.

src/headless/converse-core.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ pluggable.enable(_converse, '_converse', 'pluggable');
8383
// These are just the @converse/headless plugins, for the full converse,
8484
// the other plugins are whitelisted in src/converse.js
8585
_converse.core_plugins = [
86+
'converse-caps',
8687
'converse-chatboxes',
8788
'converse-disco',
8889
'converse-mam',

src/headless/dist/converse-headless.js

Lines changed: 81 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30205,6 +30205,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
3020530205

3020630206
//# sourceMappingURL=pluggable.js.map
3020730207

30208+
3020830209
/***/ }),
3020930210

3021030211
/***/ "./node_modules/process/browser.js":
@@ -40146,6 +40147,80 @@ module.exports = function(module) {
4014640147

4014740148
/***/ }),
4014840149

40150+
/***/ "./src/headless/converse-caps.js":
40151+
/*!***************************************!*\
40152+
!*** ./src/headless/converse-caps.js ***!
40153+
\***************************************/
40154+
/*! no exports provided */
40155+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
40156+
40157+
"use strict";
40158+
__webpack_require__.r(__webpack_exports__);
40159+
/* harmony import */ var _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @converse/headless/converse-core */ "./src/headless/converse-core.js");
40160+
// Converse.js
40161+
// https://conversejs.org
40162+
//
40163+
// Copyright (c) 2013-2019, the Converse.js developers
40164+
// Licensed under the Mozilla Public License (MPLv2)
40165+
40166+
const _converse$env = _converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].env,
40167+
Strophe = _converse$env.Strophe,
40168+
$build = _converse$env.$build,
40169+
_ = _converse$env._,
40170+
b64_sha1 = _converse$env.b64_sha1;
40171+
Strophe.addNamespace('CAPS', "http://jabber.org/protocol/caps");
40172+
40173+
function propertySort(array, property) {
40174+
return array.sort((a, b) => {
40175+
return a[property] > b[property] ? -1 : 1;
40176+
});
40177+
}
40178+
40179+
function generateVerificationString(_converse) {
40180+
const identities = _converse.api.disco.own.identities.get(),
40181+
features = _converse.api.disco.own.features.get();
40182+
40183+
if (identities.length > 1) {
40184+
propertySort(identities, "category");
40185+
propertySort(identities, "type");
40186+
propertySort(identities, "lang");
40187+
}
40188+
40189+
let S = _.reduce(identities, (result, id) => `${result}${id.category}/${id.type}/${_.get(id, 'lang', '')}/${id.name}<`, "");
40190+
40191+
features.sort();
40192+
S = _.reduce(features, (result, feature) => `${result}${feature}<`, S);
40193+
return b64_sha1(S);
40194+
}
40195+
40196+
function createCapsNode(_converse) {
40197+
return $build("c", {
40198+
'xmlns': Strophe.NS.CAPS,
40199+
'hash': "sha-1",
40200+
'node': "https://conversejs.org",
40201+
'ver': generateVerificationString(_converse)
40202+
}).nodeTree;
40203+
}
40204+
40205+
_converse_headless_converse_core__WEBPACK_IMPORTED_MODULE_0__["default"].plugins.add('converse-caps', {
40206+
overrides: {
40207+
// Overrides mentioned here will be picked up by converse.js's
40208+
// plugin architecture they will replace existing methods on the
40209+
// relevant objects or classes.
40210+
XMPPStatus: {
40211+
constructPresence() {
40212+
const presence = this.__super__.constructPresence.apply(this, arguments);
40213+
40214+
presence.root().cnode(createCapsNode(this.__super__._converse));
40215+
return presence;
40216+
}
40217+
40218+
}
40219+
}
40220+
});
40221+
40222+
/***/ }),
40223+
4014940224
/***/ "./src/headless/converse-chatboxes.js":
4015040225
/*!********************************************!*\
4015140226
!*** ./src/headless/converse-chatboxes.js ***!
@@ -41644,7 +41719,7 @@ pluggable_js_dist_pluggable__WEBPACK_IMPORTED_MODULE_8___default.a.enable(_conve
4164441719
// These are just the @converse/headless plugins, for the full converse,
4164541720
// the other plugins are whitelisted in src/converse.js
4164641721

41647-
_converse.core_plugins = ['converse-chatboxes', 'converse-disco', 'converse-mam', 'converse-muc', 'converse-ping', 'converse-pubsub', 'converse-roster', 'converse-vcard'];
41722+
_converse.core_plugins = ['converse-caps', 'converse-chatboxes', 'converse-disco', 'converse-mam', 'converse-muc', 'converse-ping', 'converse-pubsub', 'converse-roster', 'converse-vcard'];
4164841723
_converse.keycodes = {
4164941724
TAB: 9,
4165041725
ENTER: 13,
@@ -48491,7 +48566,8 @@ __webpack_require__.r(__webpack_exports__);
4849148566
/* harmony import */ var _converse_ping__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./converse-ping */ "./src/headless/converse-ping.js");
4849248567
/* harmony import */ var _converse_roster__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./converse-roster */ "./src/headless/converse-roster.js");
4849348568
/* harmony import */ var _converse_vcard__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./converse-vcard */ "./src/headless/converse-vcard.js");
48494-
/* harmony import */ var _converse_core__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./converse-core */ "./src/headless/converse-core.js");
48569+
/* harmony import */ var _converse_caps__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./converse-caps */ "./src/headless/converse-caps.js");
48570+
/* harmony import */ var _converse_core__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./converse-core */ "./src/headless/converse-core.js");
4849548571
/* START: Removable components
4849648572
* --------------------
4849748573
* Any of the following components may be removed if they're not needed.
@@ -48512,10 +48588,12 @@ __webpack_require__.r(__webpack_exports__);
4851248588

4851348589
// XEP-0054 VCard-temp
4851448590

48591+
// XEP-0115 Entity Capabilities
48592+
4851548593
/* END: Removable components */
4851648594

4851748595

48518-
/* harmony default export */ __webpack_exports__["default"] = (_converse_core__WEBPACK_IMPORTED_MODULE_8__["default"]);
48596+
/* harmony default export */ __webpack_exports__["default"] = (_converse_core__WEBPACK_IMPORTED_MODULE_9__["default"]);
4851948597

4852048598
/***/ }),
4852148599

src/headless/headless.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import "./converse-muc"; // XEP-0045 Multi-user chat
1010
import "./converse-ping"; // XEP-0199 XMPP Ping
1111
import "./converse-roster"; // Contacts Roster
1212
import "./converse-vcard"; // XEP-0054 VCard-temp
13+
import "./converse-caps"; // XEP-0115 Entity Capabilities
1314
/* END: Removable components */
1415

1516
import converse from "./converse-core";

0 commit comments

Comments
 (0)