Commit Graph

375 Commits

Author SHA1 Message Date
JC Brand
b4dafcc45b Add support for XEP-0424 and XEP-0425
- Add support for switching ephemerality after message creation
- Move more methods from ChatBox and ChatRoom to utils/stanza.js
- Rename 'ephemeral' to 'is_ephemeral' since it's a boolean
2019-11-22 13:50:36 +01:00
JC Brand
4b3d427cff muc: only create view once model has finished initialization 2019-11-22 13:50:36 +01:00
JC Brand
caadb24310 Refactor logging out into its own module
So that we don't need to `_converse` obj in order to log messages
2019-11-22 13:50:36 +01:00
ndoell
b94e5653a9 Add resize functionality to occupants-list in MUC.
This adds the ability to resize the MUC-Member-List in all MUCs. The
MUC-Member-List can be scaled between 20% width of the MUC and 75% of
the MUC.
2019-11-13 19:39:35 +01:00
Dele Olajide
1f673b7aae StartinBlox PR to fix issues
1. enable avatars in autocomplete
2. change search/filter type for automcomplete
2019-11-12 16:22:37 +01:00
JC Brand
1fa203c990 Support for IndexedDB. updates #1105
Depend on latest backbone.browserStorage which has support for IndexedDB
via localforage.

Storage operations are now asynchronous and transactional.

Bugs fixed (mostly by waiting for operations to complete):

* Rooms are now fetched asynchronously, so wait before triggering `show`
  or when closing.
* Make sure chat create/update transactions complete before firing events
* Make sure chats and messages have been fetched before creating new ones.
* When doing a `fetch` with `wait: false` on a collection and then
  creating a model in that collection, then once the read
  operation finishes (after creating the model), the collection is emptied again.
* Patch and wait when saving.
  Otherwise we have previously set attributes overriding later ones.
* Make sure api.roomviews.close returns a promise

Test fixes:

* Chats are now asynchronously returned, so we need to use `await`
* Wait for the storage transaction to complete when creating and updating messages
* Wait for all chatboxes to close
    Otherwise we get sessionStorage inconsistencies due to the async nature of localforage.
* Wait for room views to close in spec/chatroom.js

In the process, remove the `closeAllChatBoxes` override in
converse-controlbox by letting the `close` method decide whether it
should be closed or not.
2019-10-30 13:02:23 +01:00
JC Brand
b71500104b Move emoji-picker out so that its width can expand 2019-10-29 17:19:33 +01:00
JC Brand
82bce1e946 Move creation of browserStorage into a separate method
This is in anticipation of the localforage/IndexDB merge
2019-10-11 20:40:31 +02:00
JC Brand
54e9c51a1a Don't rely on getUniqueId of Strophe.Connection
since we can't assume it's always available.
2019-10-11 17:46:13 +02:00
JC Brand
8780f7a128 Fix linting errors (no-unused-vars) 2019-10-09 16:27:58 +02:00
JC Brand
26c1dbb0eb Updates #1705. Add getRoomsPanel method to avoid dangling pointer 2019-09-11 11:28:28 +02:00
JC Brand
3fee5540a0 modtools: Also allow querying and setting no affliation 2019-09-09 11:25:46 +02:00
JC Brand
90ef4b0c9d Don't let non-mods open the modtools modal
Bugfix: fall back to nick if the JID is not available.
2019-09-08 00:15:05 +02:00
JC Brand
768ed4a577 Replace lodash methods with built-ins, convert docstrings to JSDoc 2019-09-07 23:14:33 +02:00
JC Brand
cc91f3751e Add listenTo instead of on to avoid memory leaks 2019-09-06 16:04:06 +02:00
JC Brand
93de11d167 Dynamically load the dayjs translation.
Also, remove the Promise polyfill. We don't support browsers which don't support promises.
2019-08-23 14:03:52 +02:00
JC Brand
1cf9a936a4 Move Views associated to emojis into a new plugin 2019-08-22 13:56:47 +02:00
JC Brand
4cb9fd88a8 Refactor emojis so that JSON is fetch asynchronously 2019-08-22 13:56:47 +02:00
JC Brand
aee6a192d1 Add a new command /modtools
in which you can set user affiliations and roles.

Also, let getAffiliationList return an Error instead of `null` if you're
not allowed to fetch a particular affiliation list.
2019-08-09 23:30:14 +02:00
JC Brand
bea073a5a2 Fix erroneous "is no longer an admin/owner" messages in MUCs
Don't remove affiliation for occupants if we weren't allowed to
fetch that particular affiliation list.

Previously, if fetching the list failed, we would return an empty array,
which would imply that the affiliation list is empty and that all
users with the given affiliation should have their affiliations removed.

Instead we now return `null` and properly account for that when setting
affiliations on existing contacts based on the returned member lists.
2019-08-08 16:19:04 +02:00
JC Brand
db550b3ec7 Rename controlboxInitialized to controlBoxInitialized
to conform to conventions
2019-08-05 11:10:39 +02:00
JC Brand
7a590f7c22 Stop using certain lodash methods.
* _.isNil
* _.noop
* _.isNull
2019-08-05 10:56:22 +02:00
JC Brand
cd392bb197 Fixes #1561 Don't clear localStorage and sessionStorage 2019-08-01 11:34:14 +02:00
JC Brand
e20b654876 Stop using _.isUndefined 2019-07-29 10:32:29 +02:00
JC Brand
9be43ccea7 Don't inform of role change which accompanies an affiliation change
given that it's implicit and can cause confusion
2019-07-22 18:45:30 +02:00
JC Brand
bcbff1b024 Don't assume user had voice before 2019-07-22 16:51:44 +02:00
JC Brand
2fca442f57 Also render bottom panel when own occupant is added
So that we can remove the textarea if we're a visitor in a moderated room.
2019-07-12 13:50:39 +02:00
JC Brand
2849adf857 Stop debouncing show
Instead optimize in other ways.

Also:
- Don't fade in when `animate` is false.
- `trimChats` now gets called in `afterShown`.
- Add now event `beforeShowingChatView`
2019-07-12 12:42:41 +02:00
JC Brand
8a98ef87fe Various small fixes. (Unused imports, unused vars etc). 2019-07-11 12:37:17 +02:00
JC Brand
d95a7987ce Fix linting errors and add @module jsdoc directives 2019-07-11 10:48:52 +02:00
JC Brand
8a405ee88c Various bugfixes based on the previous refactoring.
These two commit should ideally be one, but I inadvertently pushed to
remote too early.
2019-07-10 16:55:55 +02:00
JC Brand
ded9945ed9 MUC: Don't send XEP-0085 CSNs when we don't have voice
Includes some refactoring:

- Don't send an `active` chat state notification when entering a MUC
  I can't think of a good reason why this might be necessary or desired.
- Move `setChatState` form the view to the model
- Remove unused method `handleChatStateNotification`
- Don't store `role` and `affiliation` for the current user on the
  ChatRoom object, but instead on the ChatRoomOccupant object representing
  the user.
2019-07-10 14:24:00 +02:00
JC Brand
216a67c165 Only show leave notifications when we're in the MUC
Otherwise when `removeNonMembers` gets called as we reconnect, we get a
long list of erroneous leave notifications.
2019-07-08 13:33:59 +02:00
JC Brand
f17edee827 Bugfix. Should be possible to kick/ban/etc without providing a reason 2019-07-04 08:28:12 +02:00
JC Brand
11da69b0d7 Use native methods instead of DayJS
Results in a 4x speedup
2019-06-26 17:52:48 +02:00
JC Brand
e83b0ff39e Update wording to clarify what /revoke means 2019-06-25 16:59:00 +02:00
JC Brand
c32070c9bb Autocomplete fixes
- Fixes #1575. Height not properly set on MUC invitation list
- Add new configuration setting: `muc_mention_autocomplete_min_chars`
- Bugfix. `min_chars` setting for MUC mentions wasn't having an effect
2019-06-19 15:01:30 +02:00
JC Brand
36549bf61d Revert flexbox, column-reverse changes
Unfortunately this doesn't work on Firefox and there's no proper
workaround. https://github.com/philipwalton/flexbugs/issues/108

Reverts:

Revert "Bugfix. Properly insert error messages and spinner"
This reverts commit 6a419cc145.

Revert "Use flexbox to keep the chat scrolled down"
This reverts commit dd91d3cc55.
2019-06-19 11:45:54 +02:00
JC Brand
b2553a44e1 New configuration setting: auto_focus 2019-06-18 14:04:26 +02:00
JC Brand
4f67f352f5 Fix /${command} parsing bug 2019-06-18 13:01:38 +02:00
JC Brand
dd91d3cc55 Use flexbox to keep the chat scrolled down
By using `display: flex` and `flex-direction: column-reverse`, the chat
now automatically scrolls down when loaded, without requiring any
extra JavaScript.

We still need to scroll down with JavaScript when sending a message.

By using `column-reverse`, the messages container now works in reverse.
So the newest message is the first element in the container and the
oldest message is the last. This is the reverse of before.

Due to this, this change will likely break some plugins.
2019-06-18 11:37:07 +02:00
JC Brand
38d0d8360b New config setting message_limit
for limiting messages to a certain number of characters.
2019-06-16 21:52:56 +02:00
JC Brand
de3099a9d8 converse-muc: Show <text> content of error presences 2019-06-16 12:14:32 +02:00
JC Brand
1d6ee5bf58 No need to mention 'permanent' 2019-06-16 11:23:36 +02:00
JC Brand
d3692755d0 Consolidate changed event handler that renders MUC heading 2019-06-14 09:27:10 +02:00
JC Brand
bbe2a62295 converse-muc: Create info and error messages on the model
instead of on the view.
2019-06-12 06:27:07 +02:00
JC Brand
a0f0240b92 Don't set nick before confirmation that it was successful 2019-06-11 14:05:30 +02:00
JC Brand
599f7596f6 Show policy violation errors to the user and make them ephemeral
Also, remove ephemeral messages after 10 seconds, not 20
2019-06-11 14:05:07 +02:00
JC Brand
789b47ddb3 Bugfix. Don't create view for chat which fails validation
Use-case is when an invalid MUC gets opened in singleton mode.
Without this fix a new chat with spinner appears, even though it
shouldn't.
2019-06-06 08:34:56 +02:00
JC Brand
b57e3e49c1 Fixes #1330. Missing room name in MUC invitation popup 2019-06-04 12:08:14 +02:00
JC Brand
5738b3748a Use getDisplayName for roster contacts 2019-06-03 09:43:24 +02:00
JC Brand
6dea4eabe7 Ensure nickname form is rendered across page loads
if the page is reloaded while the nickname form is shown
2019-06-01 16:16:34 +02:00
JC Brand
e362776b9f converse-muc-views: Don't prematurely insert MUC into the DOM 2019-05-31 09:14:42 +02:00
JC Brand
da713f3162 Improve chatroom name rendering
- Take locked_muc_domain into consideration in chatroom display name
- Use getDisplayName when rendering the heading name
- Give preference to bookmark name if it exists
2019-05-29 13:27:41 +02:00
JC Brand
85c4d144ed Only show mention autocomplete suggestions for MUC occupants with nicks 2019-05-27 22:45:54 +02:00
JC Brand
fcc9e8c31b Also allow @ in moderator commands 2019-05-27 12:27:24 +02:00
JC Brand
be0274f1f0 Fixes #1586. Not possible to kick someone with space in nick
Refactored moderation by moving certain methods to the model and
consolidating setting of roles and affiliations into new methods.
2019-05-27 12:27:12 +02:00
JC Brand
5e6c2b9982 Move role modifying method to the model
and also first check whether we have an occupant with that nickname.

Since roles are session based, it doesn't make any sense to try to
modify the role for a user not in the room.
2019-05-27 12:27:03 +02:00
JC Brand
e1762a1bb5 Rename key event handler methods to avoid confusion 2019-05-26 11:09:43 +02:00
JC Brand
5054ecca08 Check whether controlbox exists before assigning 2019-05-24 20:50:30 +02:00
JC Brand
f387c947f5 Allow the full app to be embedded.
- new config option `singleton`.
- new plugin `converse-uniview`
- removed `converse-embedded`.
- various CSS changes, to properly render an embedded full app
- don't re-open cached and non-autojoined chats in singleton mode

The goal here is to extend the `embedded` `view_mode` so that the full app can
also be embedded, not just a single MUC or private chat.

To do this, we'll need to differentiate between multi and singleton chat apps.

* A singleton chat app contains only a single chat.
* A multi-chat app can contain zero or more chats

So we introduce a new config option, `singleton`, which when used with
`view_mode` set to `embedded` will determine whether a single chat or the full
app is embedded.

Similarly, in `overlayed`, `fullscreen` and `mobile` view modes, `singleton`
set to true will allow only one chat within the parameters of that view mode.

We're appropriating the word `singleton` and introducing the concepts of
`uniview` and `multiview` (see a785ca8) to cover what was
previously meant with `singleton`.

updates #1297
2019-05-24 20:39:19 +02:00
JC Brand
1ef29bee4e Use composition instead of overrides 2019-05-24 16:02:07 +02:00
JC Brand
b876500865 Update to latest backbone.overview 2019-05-23 14:44:10 +02:00
JC Brand
53520317fc Move locked_muc_domain and muc_domain to model 2019-05-21 13:05:58 +02:00
JC Brand
1269d53e02 Move enterRoom method to the model 2019-05-21 12:04:55 +02:00
JC Brand
bb0c0fcd81 Remove message views when messages get reset 2019-05-21 09:56:27 +02:00
JC Brand
7e515dd4b1 Move all MUC joining logic to the model 2019-05-20 10:06:37 +02:00
JC Brand
39363d495f Fetch messages in MUC model 2019-05-20 09:25:11 +02:00
JC Brand
46fef28601 Clear messages when closing a chat 2019-05-19 22:11:37 +02:00
JC Brand
7950f7c2ac Change muc_show_disconnection_status to muc_show_join_leave_status 2019-05-18 06:34:29 +02:00
JC Brand
a0f1a5cfaf Fetch chat messages in the model, not the view 2019-05-17 14:45:37 +02:00
JC Brand
ceb9d12957 Don't store ChatRoomOccupants on ChatRoomView
Helps with enforcing discipline of keeping them separate
2019-05-15 15:55:47 +02:00
JC Brand
7cd69726a8 Loosen coupling between ChatRoomOccupantsView and ChatRoomView
Hide/show the sidebar based on state and not imperatively in ChatRoomView
2019-05-15 14:50:12 +02:00
JC Brand
1bc425e596 Fetch cached occupants in the model instead of the view 2019-05-15 09:34:52 +02:00
JC Brand
69e8b071d8 Minor cleanups 2019-05-14 20:31:43 +02:00
JC Brand
1d9e1a62df Only show new moderator status when not already admin or owner 2019-05-14 13:55:19 +02:00
JC Brand
14708af715 Refactor callback method into instance method 2019-05-14 13:54:19 +02:00
JC Brand
d0ddda8244 New config option muc_show_disconnection_status 2019-05-14 13:29:43 +02:00
JC Brand
6193a9dc80 Replace lodash methods with native ones and remove lodash.fp 2019-05-14 12:41:47 +02:00
JC Brand
d91a5ca6de Remove alias for xss. Upgrade pluggable.js to version 2.0.1 2019-05-13 18:54:00 +02:00
JC Brand
c520a4e39b Trim nickname 2019-05-08 21:37:47 +02:00
JC Brand
c3dac272f8 Replace moment with DayJS 2019-05-06 14:27:18 +02:00
JC Brand
9528276be2 Use native Date methods instead of moment
- Use native `getTime` method instead of moment's `valueOf`
- Use toISOString() instead of moment().format()
  This makes the code timezone independent since we're now globally using UTC.
2019-05-06 10:28:03 +02:00
JC Brand
3290d6659f Bugfix. validation message should be set on the model 2019-05-02 14:53:07 +02:00
JC Brand
ba6de8844e Use Object.keys instead of _.keys 2019-04-29 09:29:40 +02:00
JC Brand
34469425d6 Use Object.assign instead of _.extend 2019-04-29 09:07:15 +02:00
JC Brand
dedede56f8 Rename muc_disable_moderator_commands to muc_disable_slash_commands
Since those commands aren't only about moderation
2019-04-25 11:32:07 +02:00
JC Brand
c72dc74022 In the menu, only show allowed commands 2019-04-25 10:48:33 +02:00
JC Brand
3bd9e09fd7 Don't wipe the nickname value when rerendering the form
Ideally Snabbdom wouldn't completely replace the input when we add the
`error` class, because that's what's causing the input value to be
cleared.
2019-04-25 08:35:44 +02:00
JC Brand
3ad93b56b3 Clicking the wrench icon again closes the config form 2019-04-24 14:51:12 +02:00
JC Brand
d311e14013 Render MUC forms with Backbone.VDOMView
That way we don't lose the user's input values, we avoid flashing and we
avoid unnecessary rendering.

In the process, fixed an annoying issue where Chrome auto-completes
what it thinks is the username into the "Language Tag" field of the MUC
config form.

Instead we tell Chrome that the MUC JID is the username, thereby also
letting it save the password to to that JID.
2019-04-24 14:51:12 +02:00
JC Brand
725a382e3b Refactor initialization and defaults for chat boxes
- Let box_id start with char for valid HTML.
- No need to use SHA1 for box id
- No need for the user_id attribute.
- Set nickname when we set the roster contact.

Also...

- _converse.api.contacts.get is now async
- _converse.api.chats.create is now async
2019-04-18 16:14:51 +02:00
JC Brand
b593b8deb6 Fixes #1533
Users can only be muted in moderated rooms
2019-04-11 23:10:57 +02:00
JC Brand
f84c201437 Hide the textarea when a user is muted in a groupchat 2019-04-11 01:40:16 +02:00
JC Brand
e987214555 For roomspanel, don't set muc_domain if its locked 2019-04-05 13:14:57 +02:00
JC Brand
a45bd8d14b Convert older docstrings to JSDoc syntax 2019-03-30 12:54:56 +01:00
JC Brand
f897703565 Rename emit to trigger for consistency with Backbone.Events 2019-03-29 21:56:56 +01:00
JC Brand
f6335dcabe Document fired events with JSDoc 2019-03-29 21:04:33 +01:00
JC Brand
d41a7a14c3 Use API to emit and listen to events 2019-03-29 14:16:07 +01:00
JC Brand
b726a2353c Remove Awesomeplete in favor of _converse.AutoComplete 2019-03-28 12:43:34 +01:00
JC Brand
616731b323 Don't show MUC domain if locked_muc_domain is set to 'hidden' 2019-03-27 13:13:07 +01:00
JC Brand
9f290dab25 New config setting locked_muc_nickname
When set, the "Nickname" field won't be shown in the "Add groupchat"
modal and instead the nickname will be automatically set (based on other
config settings).
2019-03-26 13:29:33 +01:00
JC Brand
32f0eb5488 Fixes #1407. Don't allow empty value for MUC nickname 2019-03-26 13:03:42 +01:00
JC Brand
a9ce9acff2 Make sure nickname config option takes precedence
above other nickname sources.
2019-03-26 11:31:11 +01:00
Christoph Scholz
0957b7086f Don't prompt for reason if auto_join_on_invite 2019-03-19 22:26:42 +02:00
JC Brand
11c1b01692 Add converse-headless.js dist file and recipes
updates #1352
2019-03-15 10:24:39 +01:00
Christoph Scholz
37800d92d3 allow drag & drop also in MUCs 2019-03-05 18:21:07 +01:00
JC Brand
0ebfc3fce8 Let converse-autocomplete also be triggered with backspace 2019-03-05 17:59:22 +01:00
JC Brand
7910447cf6 Use ev.key instead of ev.keyCode
Removes the need for maintaining a map of keycodes to keys
2019-03-05 17:59:22 +01:00
JC Brand
f8e31a7b49 Update converse-autocomplete to make it more flexible
* Accepts other triggers besides tab or @
* More finegrained control over whether the triggering char is
  included in the returned value or not.
2019-03-05 17:59:22 +01:00
Emmanuel Gil Peyrot
3aa9ee1ba0 Replace http: with https: in xmpp.org links 2019-03-04 17:49:44 +01:00
Emmanuel Gil Peyrot
b7ae9f212c Replace http: with https: in conversejs.org links 2019-03-04 17:47:45 +01:00
JC Brand
d3a4555165 Re-add support for muc_domain and add locked_muc_domain.
updates #1373
2019-02-26 11:58:01 +01:00
JC Brand
2ddd918f6a Fixes #1437. List of groupchats doesn't scroll 2019-02-26 11:57:36 +01:00
JC Brand
0ee08ee622 Use async/await for enterRoom 2019-02-22 23:14:35 +01:00
JC Brand
bfaa7e47f2 Add roomviews.get API method 2019-02-22 21:44:03 +01:00
JC Brand
0fc5112000 Found one more occurance of the word room 2019-02-22 21:44:03 +01:00
JC Brand
ce2ae87df2 Bugfix. Open groupchats not shown when logging in after disconnection
* Replace `tearDown` overrides with event handlers.
* Move presence listeners to `connected` event handler, otherwise they
  don't get called when logging in again after disconnection.
* Add `clearSession` listeners to clean up upon disconnection.
* Use `Promise.all` instead of listening for multiple events.
2019-02-20 23:08:27 +01:00
JC Brand
4463b44773 Use "XMPP address" instead of "XMPP username" 2019-02-19 15:00:38 +01:00
JC Brand
c026dc8a86 New copyright year 2019-02-18 20:23:18 +01:00
JC Brand
9233087548 Don't hash web storage ids.
Makes debugging more difficult and uses up extra CPU cycles for no real security benefit.
2019-02-18 20:23:18 +01:00
JC Brand
af0093bd39 Bugfix: MUC invite form not shown 2019-02-18 15:42:56 +01:00
Christoph Scholz
5e1f5785f9 fix moderator commands that change affiliation 2019-02-05 12:47:53 -07:00
Christoph Scholz
b667eae1c8 muc moderator commands can be disabled selectively 2019-01-30 03:42:12 +01:00
JC Brand
10f629310e Need to declare muc_show_join_leave as setting 2019-01-29 05:50:43 +01:00
Holger Weiss
af091faf33 Resurrect muc_show_join_leave option
The option got lost in commit 9528d81c00.

Fixes #1263
2019-01-29 05:45:35 +01:00
Christoph Scholz
84be0fb9f7 new config option "roomconfig_whitelist" 2019-01-12 21:51:47 +01:00
JC Brand
a4d608dcdf Save room features in separate model
As a namespacing mechanism to avoid clashes.
Fixes bug where two chats are shown as currently being active in the rooms list.
2019-01-10 12:15:59 +01:00
JC Brand
0c1363c103 The hide_muc_server option no longer exists 2019-01-03 14:12:36 +01:00
Christoph Scholz
eacd7fd933 implement /destroy command in muc 2019-01-03 13:09:13 +01:00
JC Brand
82bfe66cac Simplify setting of MUC features.
We don't need an event handler that sets the "opposite" features to
false if we set all features properly in getFeatures
2018-12-17 15:18:20 +01:00
JC Brand
b7c01993b7 User-facing term is "groupchat", not "room" 2018-12-16 11:22:12 +01:00
JC Brand
ccb8662ef7 Bugfix. First match for MUC commands 2018-12-10 15:40:30 +01:00
JC Brand
01c3d35db2 Remove unnecessary webpack aliases 2018-11-15 11:29:28 +01:00
JC Brand
5e7d5d7fb1 Add own class and style for controlbox heading buttons 2018-11-07 11:11:20 +01:00
JC Brand
2cfea7cb51 Add description for translateable text 2018-10-28 23:24:33 +01:00
JC Brand
6a87caad6e Don't use template literals for translated strings 2018-10-27 23:12:17 +02:00
JC Brand
11ac846b31 Fixes #1259 2018-10-27 22:56:05 +02:00
JC Brand
36f63d9000 Fixes #1272 Hiding MUC occupants leaves a blank space 2018-10-26 16:37:56 +02:00
JC Brand
b05b57192d In these two cases I prefer explicit Promise callbacks
In both cases we need the `catch` statement due to the fact that a
sendIQ call gets made which rejects for error stanzas (and I find the
Promise form much compacter).

Additionally, we don't want to hold up subsequent execution until
the element has been faded out.
2018-10-25 23:08:19 +02:00
JC Brand
55fce912df
Merge branch 'master' into async-await 2018-10-25 18:36:04 +02:00
JC Brand
c583678c86 Use _coverse.api.sendIQ instead of _converse.connection.sendIQ
So that we know an event will be emitted when the stanza is sent.
2018-10-25 18:29:29 +02:00
Emmanuel Gil Peyrot
35b7dbe389 Convert a few functions to async/await. 2018-10-24 21:23:32 +02:00
JC Brand
7b2d64b066 Use _converse.api.send instead of _converse.connection.send
so that we can emit an event when sending a stanza.
2018-10-23 16:06:43 +02:00
JC Brand
6904f9a897 Use es2015 modules instead of UMD 2018-10-23 12:25:58 +02:00
cmrd Senya
8ba8eb02fa Update main converse.js package to use @converse/headless
* Update moved dependencies references to @converse/headless
* Remove unused webpack resolve aliases
2018-10-22 12:44:38 +02:00
JC Brand
e181aaf99b Make the message view's render method async
So that we first render dynamic content (e.g. images) before inserting
it into the chat.

Also, add the `show_images_inline` setting (which is the cause of this
whole change).

Updated tests to handle this new change and start using async/await
instead of promise callbacks.
2018-10-15 22:19:04 +02:00
JC Brand
e425f25753 Listen for xmpp: URIs in all of Converse, not only chatrooms
updates #537
2018-10-13 20:55:05 +02:00
JC Brand
99c0687684 Fixes #537 Open xmpp: URIs inside Converse 2018-10-13 20:16:00 +02:00
JC Brand
d77802da86 Avoid showing notification messages twice
For example `This groupchat is not anonymous`
2018-10-13 14:41:16 +02:00