New release 4.0.0
This commit is contained in:
parent
201b8559b6
commit
09bb6b494d
@ -1,6 +1,6 @@
|
||||
# Changelog
|
||||
|
||||
## 4.0.0 (Unreleased)
|
||||
## 4.0.0 (2018-09-07)
|
||||
|
||||
## New Features
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
*
|
||||
* An XMPP chat client that runs in the browser.
|
||||
*
|
||||
* Version: 3.3.4
|
||||
* Version: 4.0.0
|
||||
*
|
||||
* Copyright: JC Brand 2012-2017
|
||||
* Except for 3rd party dependencies.
|
||||
|
2
Makefile
2
Makefile
@ -71,7 +71,7 @@ serve_bg: dev
|
||||
########################################################################
|
||||
## Translation machinery
|
||||
|
||||
GETTEXT = xgettext --language="JavaScript" --keyword=__ --keyword=___ --from-code=UTF-8 --output=locale/converse.pot dist/converse-no-dependencies.js --package-name=Converse.js --copyright-holder="Jan-Carel Brand" --package-version=3.3.4 -c
|
||||
GETTEXT = xgettext --language="JavaScript" --keyword=__ --keyword=___ --from-code=UTF-8 --output=locale/converse.pot dist/converse-no-dependencies.js --package-name=Converse.js --copyright-holder="Jan-Carel Brand" --package-version=4.0.0 -c
|
||||
|
||||
.PHONY: pot
|
||||
pot: dist/converse-no-dependencies-es2015.js
|
||||
|
@ -5,6 +5,12 @@
|
||||
* Copyright (c) 2013-2018, JC Brand <jc@opkode.com>
|
||||
* Licensed under the Mozilla Public License
|
||||
*/
|
||||
@font-face {
|
||||
font-family: 'ConverseFontAwesomeBrands';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
src: url("webfonts/fa-brands-400.eot");
|
||||
src: url("webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("webfonts/fa-brands-400.woff2") format("woff2"), url("webfonts/fa-brands-400.woff") format("woff"), url("webfonts/fa-brands-400.ttf") format("truetype"), url("webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
|
||||
@font-face {
|
||||
font-family: 'ConverseFontAwesomeRegular';
|
||||
font-style: normal;
|
||||
@ -28,7 +34,10 @@
|
||||
font-family: 'ConverseFontAwesomeSolid' !important;
|
||||
font-weight: 900; }
|
||||
|
||||
.fa, .far, .fas {
|
||||
.fab {
|
||||
font-family: 'ConverseFontAwesomeBrands'; }
|
||||
|
||||
.fa, .far, .fas, .fab {
|
||||
display: inline-block;
|
||||
font-size: inherit;
|
||||
text-rendering: auto;
|
||||
@ -10899,7 +10908,7 @@ body.reset {
|
||||
#conversejs.converse-overlayed #minimized-chats {
|
||||
order: 100;
|
||||
width: 130px;
|
||||
margin-bottom: -1em;
|
||||
margin-bottom: 0;
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
color: white;
|
||||
|
5799
css/fonts.css
5799
css/fonts.css
File diff suppressed because it is too large
Load Diff
@ -241,6 +241,8 @@ section h4 {
|
||||
|
||||
.banner-social-buttons {
|
||||
padding-top: 3em; }
|
||||
.banner-social-buttons a {
|
||||
padding: 0.15em; }
|
||||
|
||||
::-moz-selection {
|
||||
text-shadow: none;
|
||||
|
35297
dist/converse-no-dependencies.js
vendored
35297
dist/converse-no-dependencies.js
vendored
File diff suppressed because one or more lines are too long
39
dist/converse.js
vendored
39
dist/converse.js
vendored
@ -58869,6 +58869,10 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
},
|
||||
|
||||
renderBookmarkToggle() {
|
||||
if (this.el.querySelector('.chat-head .toggle-bookmark')) {
|
||||
return;
|
||||
}
|
||||
|
||||
const _converse = this.__super__._converse,
|
||||
__ = _converse.__;
|
||||
const bookmark_button = tpl_chatroom_bookmark_toggle(_.assignIn(this.model.toJSON(), {
|
||||
@ -66874,16 +66878,14 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
msg.querySelector('.chat-msg__media').innerHTML = _.flow(_.partial(u.renderFileURL, _converse), _.partial(u.renderMovieURL, _converse), _.partial(u.renderAudioURL, _converse), _.partial(u.renderImageURL, _converse))(url);
|
||||
}
|
||||
|
||||
const encrypted = this.model.get('encrypted');
|
||||
let text = encrypted ? this.model.get('plaintext') : this.model.get('message');
|
||||
|
||||
if (is_me_message) {
|
||||
text = text.replace(/^\/me/, '');
|
||||
}
|
||||
|
||||
let text = this.getMessageText();
|
||||
const msg_content = msg.querySelector('.chat-msg__text');
|
||||
|
||||
if (text !== url) {
|
||||
if (text && text !== url) {
|
||||
if (is_me_message) {
|
||||
text = text.replace(/^\/me/, '');
|
||||
}
|
||||
|
||||
text = xss.filterXSS(text, {
|
||||
'whiteList': {}
|
||||
});
|
||||
@ -66961,8 +66963,16 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
this.model.message_versions_modal.show(ev);
|
||||
},
|
||||
|
||||
getMessageText() {
|
||||
if (this.model.get('is_encrypted')) {
|
||||
return this.model.get('plaintext') || (_converse.debug ? __('Unencryptable OMEMO message') : null);
|
||||
}
|
||||
|
||||
return this.model.get('message');
|
||||
},
|
||||
|
||||
isMeCommand() {
|
||||
const text = this.model.get('message');
|
||||
const text = this.getMessageText();
|
||||
|
||||
if (!text) {
|
||||
return false;
|
||||
@ -69767,7 +69777,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
}
|
||||
|
||||
if (feature.get('var') === Strophe.NS.MUC) {
|
||||
feature.getIdentity('conference', 'text').then(identity => {
|
||||
feature.entity.getIdentity('conference', 'text').then(identity => {
|
||||
if (identity) {
|
||||
setMUCDomain(feature.get('from'), controlboxview);
|
||||
}
|
||||
@ -71572,6 +71582,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
const _converse$env = converse.env,
|
||||
Strophe = _converse$env.Strophe,
|
||||
_ = _converse$env._,
|
||||
sizzle = _converse$env.sizzle,
|
||||
u = converse.env.utils;
|
||||
converse.plugins.add('converse-notification', {
|
||||
dependencies: ["converse-chatboxes"],
|
||||
@ -71725,10 +71736,13 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
} // TODO: we should suppress notifications if we cannot decrypt
|
||||
// the message...
|
||||
|
||||
|
||||
const body = sizzle(`encrypted[xmlns="${Strophe.NS.OMEMO}"]`, message).length ? __('OMEMO Message received') : message.querySelector('body').textContent;
|
||||
const n = new Notification(title, {
|
||||
body: message.querySelector('body').textContent,
|
||||
body: body,
|
||||
lang: _converse.locale,
|
||||
icon: _converse.notification_icon
|
||||
});
|
||||
@ -72299,6 +72313,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
|
||||
|
||||
if (this.get('omemo_active') && attrs.message) {
|
||||
attrs['is_encrypted'] = true;
|
||||
attrs['plaintext'] = attrs.message;
|
||||
const message = this.messages.create(attrs);
|
||||
this.getBundlesAndBuildSessions().then(devices => this.createOMEMOMessageStanza(message, devices)).then(stanza => this.sendMessageStanza(stanza)).catch(e => {
|
||||
this.messages.create({
|
||||
|
@ -48,9 +48,9 @@ copyright = u'2018, JC Brand'
|
||||
# built documents.
|
||||
#
|
||||
# The short X.Y version.
|
||||
version = '3.3.4'
|
||||
version = '4.0.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '3.3.4'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@ -22,8 +22,8 @@ The latest versions of these files are available at these URLs:
|
||||
|
||||
To load a specific version of Converse.js you can put the version in the URL, like so:
|
||||
|
||||
* https://cdn.conversejs.org/3.3.4/dist/converse.min.js
|
||||
* https://cdn.conversejs.org/3.3.4/css/converse.min.css
|
||||
* https://cdn.conversejs.org/4.0.0/dist/converse.min.js
|
||||
* https://cdn.conversejs.org/4.0.0/css/converse.min.css
|
||||
|
||||
You can include these two URLs inside the *<head>* element of your website
|
||||
via the *script* and *link* tags:
|
||||
|
@ -7,9 +7,9 @@
|
||||
<link rel="shortcut icon" type="image/ico" href="css/images/favicon.ico"/>
|
||||
<script type="text/javascript" src="inverse-analytics.js"></script>
|
||||
<noscript><p><img src="//stats.opkode.com/piwik.php?idsite=5" style="border:0;" alt="" /></p></noscript>
|
||||
<link type="text/css" rel="stylesheet" media="screen" href="css/converse.css" />
|
||||
<link type="text/css" rel="stylesheet" media="screen" href="css/converse.min.css" />
|
||||
<link type="text/css" rel="stylesheet" media="screen" href="css/fullpage.css" />
|
||||
<script src="dist/converse.js"></script>
|
||||
<script src="dist/converse.min.js"></script>
|
||||
</head>
|
||||
<body class="reset">
|
||||
<div class="converse-content" style="display:none">
|
||||
|
@ -77,9 +77,7 @@
|
||||
<h1 class="brand-heading converse-brand-heading"><i class="icon-conversejs"></i>Converse</h1>
|
||||
<div class="col-md-8 col-md-offset-2">
|
||||
<p class="intro-text">A free and open-source XMPP chat client in your browser</p>
|
||||
<p>Now also available in a fullscreen version.
|
||||
Check out <a href="https://inverse.chat" target="_blank" rel="noopener">inverse.chat</a>
|
||||
</p>
|
||||
<p>Also available as a <a href="https://conversejs.org/fullscreen.html">fullpage</a> app</p>
|
||||
|
||||
<p>
|
||||
<a href="https://inverse.chat/#converse/room?jid=discuss@conference.conversejs.org"
|
||||
@ -94,9 +92,9 @@
|
||||
<div class="row">
|
||||
<div class="col-md-8 col-md-offset-2 banner-social-buttons">
|
||||
<ul class="list-inline">
|
||||
<li><a href="https://twitter.com/jcopkode" class="btn btn-circle btn-lg" title="Twitter" target="_blank" rel="noopener"><i class="fa fa-twitter"></i></a></li>
|
||||
<li><a href="https://twitter.com/jcopkode" class="btn btn-circle btn-lg" title="Twitter" target="_blank" rel="noopener"><i class="fab fa-twitter"></i></a></li>
|
||||
<li><a href="https://mastodon.xyz/@jcbrand" class="btn btn-lg" title="Mastodon" target="_blank" rel="noopener"><img class="mastodon" src="/logo/mastodon.svg"/></a></li>
|
||||
<li><a href="https://github.com/jcbrand/converse.js" class="btn btn-circle btn-lg" title="GitHub" target="_blank" rel="noopener"><i class="fa fa-github"></i></a></li>
|
||||
<li><a href="https://github.com/jcbrand/converse.js" class="btn btn-circle btn-lg" title="GitHub" target="_blank" rel="noopener"><i class="fab fa-github"></i></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "converse.js",
|
||||
"version": "3.3.4",
|
||||
"version": "4.0.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "converse.js",
|
||||
"version": "3.3.4",
|
||||
"version": "4.0.0",
|
||||
"description": "Browser based XMPP chat client",
|
||||
"main": "dist/converse.js",
|
||||
"directories": {
|
||||
|
@ -3,7 +3,7 @@
|
||||
order: 100;
|
||||
|
||||
width: $minimized-chats-width;
|
||||
margin-bottom: -2*$chat-gutter;
|
||||
margin-bottom: 0;
|
||||
border-top-left-radius: $chatbox-border-radius;
|
||||
border-top-right-radius: $chatbox-border-radius;
|
||||
color: $inverse-link-color;
|
||||
|
@ -275,6 +275,10 @@ section {
|
||||
}
|
||||
.banner-social-buttons {
|
||||
padding-top: 3em;
|
||||
|
||||
a {
|
||||
padding: 0.15em;
|
||||
}
|
||||
}
|
||||
::-moz-selection {
|
||||
text-shadow: none;
|
||||
|
18
sass/font-awesome.scss
vendored
18
sass/font-awesome.scss
vendored
@ -1,3 +1,16 @@
|
||||
@font-face {
|
||||
font-family: 'ConverseFontAwesomeBrands';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
src: url('webfonts/fa-brands-400.eot');
|
||||
src: url('webfonts/fa-brands-400.eot?#iefix') format('embedded-opentype'),
|
||||
url('webfonts/fa-brands-400.woff2') format('woff2'),
|
||||
url('webfonts/fa-brands-400.woff') format('woff'),
|
||||
url('webfonts/fa-brands-400.ttf') format('truetype'),
|
||||
url('webfonts/fa-brands-400.svg#fontawesome') format('svg');
|
||||
}
|
||||
|
||||
|
||||
@font-face {
|
||||
font-family: 'ConverseFontAwesomeRegular';
|
||||
font-style: normal;
|
||||
@ -33,8 +46,11 @@
|
||||
font-family: 'ConverseFontAwesomeSolid' !important;
|
||||
font-weight: 900;
|
||||
}
|
||||
.fab {
|
||||
font-family: 'ConverseFontAwesomeBrands';
|
||||
}
|
||||
|
||||
.fa, .far, .fas {
|
||||
.fa, .far, .fas, .fab {
|
||||
display: inline-block;
|
||||
font-size: inherit;
|
||||
text-rendering: auto;
|
||||
|
@ -2,7 +2,7 @@
|
||||
*
|
||||
* An XMPP chat client that runs in the browser.
|
||||
*
|
||||
* Version: 3.3.4
|
||||
* Version: 4.0.0
|
||||
*/
|
||||
|
||||
/* jshint ignore:start */
|
||||
|
Loading…
Reference in New Issue
Block a user