JC Brand
16edc2954d
Add support for rendering unfurls via Prosody's mod_ogp
...
See here: https://modules.prosody.im/mod_ogp.html
2021-02-22 17:55:20 +01:00
JC Brand
9ce4092a7c
Turn the bottom panel into a custom element
2021-02-12 14:32:55 +01:00
JC Brand
8b052e20b9
Fix tests by pinning to latest @converse/skeletor
2021-02-10 16:14:34 +01:00
JC Brand
95c14e5a26
Don't pass chatview object to converse-chat-content
...
and any child components.
This makes it easier to use these components independently of one
another and the overarching view.
2021-02-09 16:40:00 +01:00
JC Brand
790caf9f5a
Render converse-chat-content
declaratively
2021-02-09 15:48:21 +01:00
JC Brand
7abc81f8a4
MUC: Wait until occupants are fetched before updating them
2021-02-09 15:48:21 +01:00
JC Brand
ea6e370347
MUC: Fix error message logging
2021-02-09 15:48:21 +01:00
JC Brand
9f5dbad589
Turn roster into a custom element
2021-02-09 15:48:21 +01:00
JC Brand
b8d710800a
Move more methods from ChatBoxView to shared base class
2021-02-09 15:48:21 +01:00
JC Brand
bb317d1abb
Combine RoomsPanel with RoomsList element
2021-02-09 15:48:21 +01:00
JC Brand
05c00c5e1c
Call minimize on the model
...
Fix minimizing by listening to change event
Fixes around showing/hiding and minimizing/maximizing
Don't trigger a `show` event on the model to show a chat, instead rely
on the `hidden` attribute which causes a rerender and will show/hide
chats.
2021-02-09 15:48:21 +01:00
JC Brand
1949356ede
Work on turning chat views into custom elements
...
The eventual goal is to avoid UI-related stanza processing if the relevant chats
aren't in the DOM.
With the current architecture, chatboxes are created (and the stanzas
related to them processed) even if `#conversejs` isn't in the DOM.
* Initial work on making controlbox an element
* Create a shared base class
* Ceate ChatBoxViews proxy
* Update sass now that certain classes are moved to converse-chats element
2021-02-09 15:48:21 +01:00
JC Brand
581f892613
Add JSDoc string
2021-02-06 11:26:25 +01:00
JC Brand
0a1cbf87b8
MUC: Ensure that MAM query is from latest cached messages
...
In some cases a race condition can occur where a new message is received
before the MAM query starts.
Previously, the newly received message would be considered the latest
message to query from, thereby causing a gap in the history.
2021-02-03 10:27:46 +01:00
JC Brand
5feaab9a95
MUC: Add test for showing cached messages before entering
2021-02-02 15:12:31 +01:00
JC Brand
7f851208aa
Move converse-roster plugin into folder and split up
2021-01-26 14:34:36 +01:00
JC Brand
2c7b220453
RAI: Always send the presence to enable RAI when leaving a MUC
...
Looking at the Prosody code, it appears to be cheap since
Prosody will do nothing if you're already registered and this works
around a bug in mod_muc_rai where events aren't fired for each resource
of the same joined nick joining or leaving the MUC.
2021-01-15 13:55:40 +01:00
JC Brand
8bd2114d8a
MUC has its own method for sending markers
2021-01-15 11:39:09 +01:00
JC Brand
c0249b9c28
New configuration setting send_chat_markers
...
Can be used to fine-tune which (if any) of the XEP-0333 chat markers
will be sent out.
2021-01-15 11:11:38 +01:00
JC Brand
26c1c483da
MAM fix: Get newest page when not paging
...
This is done by using `before: ''` and filtering by `start`.
Otherwise we get the oldest page.
2021-01-13 13:33:28 +01:00
JC Brand
dcd1407109
New config setting mam_request_all_pages
2021-01-13 10:42:22 +01:00
JC Brand
58c5e9676a
Handle forwarded mentions coming from the MUC, not the host
2021-01-08 18:25:36 +01:00
JC Brand
5e6a6ba6ac
Fix failing bookmark tests
2021-01-08 14:36:48 +01:00
JC Brand
9a2678450a
Move converse-bookmarks plugin into folder
2021-01-08 14:28:36 +01:00
JC Brand
bb8c7423b6
Ignore XEP-0437 indicators and forwarded mentions in a joined MUC
...
Otherwise the mentions will be counted twice.
2021-01-08 10:38:03 +01:00
JC Brand
2f5cc3b271
Bugfix. Make sure arguments are passed to all triggered events
2021-01-08 09:39:35 +01:00
JC Brand
11023dfef9
Don't clear occupants when leaving a MUC, only when closing it
...
Otherwise, when leaving as part of RAI and in a MUC where we only get
presence info based on probes, we lose occupant info that doesn't get
recreated when we rejoin.
2021-01-07 15:08:29 +01:00
JC Brand
3f47c4d3dd
Use real JID in XEP-0372 references only when the MUC is non-anonymous
2021-01-04 14:24:23 +01:00
JC Brand
9a2ded5a9a
Remove global lodash
2020-12-29 15:12:45 +01:00
JC Brand
62dbb1062f
Add support for protoXEP: MUC mention notifications
2020-12-21 14:02:43 +01:00
JC Brand
6b9c718df7
RAI: Handle MUCs that start out hidden
...
When a MUC starts out hidden, we first need to join in order to find out
whether we're affiliated before we can know whether we should enable RAI
or join the MUC as usual.
2020-12-21 12:07:00 +01:00
JC Brand
986f7550f3
Clear messages upon reconnection as late as possible
...
To avoid a long empty flash while new messages are being fetched again.
2020-12-17 16:23:47 +01:00
JC Brand
1f476b8793
Move converse-mam plugin into own folder
2020-12-17 14:48:50 +01:00
JC Brand
8db1f3e3f3
MAM: refactor to functions instead of extending chats with methods
2020-12-17 14:10:28 +01:00
JC Brand
4349b016eb
MUC: Only clear messages when MUC is left intentionally
...
by the user, and not as part of cleanup during logout or when leaving
automatically in order to receive XEP-0437 activity indicators.
2020-12-17 14:00:18 +01:00
JC Brand
18e6ebe9af
MUC: Bugfix, don't set state to entered on unavailable presence
2020-12-17 13:04:24 +01:00
JC Brand
594332181b
Call 'clearMessages'
2020-12-17 13:04:24 +01:00
JC Brand
2121766623
More RAI improvements
...
- Add test for incoming RAI message
- Only enable RAI if the user is affilated in MUC being left
- Handle error presence indicating a resouce-constraint
- Don't unregister stanza handlers in `leave`, since we still want to
listen to RAI-related stanzas. Instead unregister upon the `destroy`
event.
2020-12-17 13:04:24 +01:00
JC Brand
eed9ee8033
RAI: Add tests
2020-12-16 13:48:14 +01:00
JC Brand
e80afbfe39
Move MUC and stanza utils into shared and plugin-specific files
2020-12-14 16:30:13 +01:00
JC Brand
e8eea6324e
MUC: Send XEP-0333 markers with the MUC stanza id
...
See: https://xmpp.org/extensions/xep-0333.html#rules-muc
2020-12-14 16:30:13 +01:00
JC Brand
c457081597
WIP: Add support for XEP-437: Room Activity Indicators
...
- Send marker for last message before leaving and before subscribing to RAI
- clear cache of RAI-subscribed domains on reconnection
2020-12-14 13:11:24 +01:00
JC Brand
e6e416306e
Properly handle child nodes for api.presence.send
2020-12-14 13:11:24 +01:00
JC Brand
14c9b2f4ae
Clear message cache when closing a MUC
2020-12-11 13:57:16 +01:00
JC Brand
5a82478381
Declare sizzle as a dependency for @converse/headless
2020-12-10 17:13:40 +01:00
JC Brand
c855d2f4ce
Updates #2350 Avoid bundling Strophe twice
...
by not importing Strophe outside of @converse/headless
2020-12-10 16:32:01 +01:00
JC Brand
4ece50d07c
Add ability to pass child nodes to api.user.presence.send
2020-12-10 14:39:24 +01:00
JC Brand
c0fafcec70
Move converse-muc into a folder
2020-12-08 09:50:17 +01:00
JC Brand
ecfaba0781
Move converse-chatboxviews plugin into folder
2020-12-08 09:50:17 +01:00
JC Brand
e3ebde9741
Move converse-chat plugin into folder
2020-12-07 16:30:11 +01:00
JC Brand
01e03fc677
Bump to Strophe 1.4.1
2020-12-04 14:06:04 +01:00
JC Brand
824bf2ed30
Move all plugin files to ./plugin folders
...
Rename converse-core.js to core.js
2020-12-03 16:41:15 +01:00
Xavi Ferrer
f4b6b93b8b
update info messages visibility
2020-12-03 11:45:25 +01:00
JC Brand
21dfd8a325
Bugfix: Set protocol after discovering connection methods
...
Otherwise if an endpoint was passed in with `converse.initialize`, then
that endpoint's protocol is (wrongly) used.
2020-11-30 18:21:33 +01:00
JC Brand
c608958eb3
Handle special case of two @
signs preceding a nickname
2020-11-27 22:06:22 +01:00
JC Brand
f86efca9a6
autocomplete: Use regex instead of hardcoded list...
...
to determine valid characters to form a boundary before an `@` mention
Also fixed an issue with mentions looking like they're part of URLs, by
first processing mentions separately.
2020-11-27 22:06:22 +01:00
Xavi Ferrer
8b9c97745f
Allow selected characters to precede a mention
2020-11-27 14:12:29 +01:00
JC Brand
30e784b8ec
Fix: use_system_emojis
was false
but unicode emojis shown in picker
2020-11-27 10:26:06 +01:00
JC Brand
33f62bb93c
Update changelog for previous revert and add title
for img emoji
2020-11-26 14:25:54 +01:00
JC Brand
f9650f33be
Add support for XEP-0393 message styling
...
Fixes #1083
Directives are rendered as templates and their bodies are MessageText instances.
We thereby achieve the necessary nesting of directives (and other rich
elements inside directives) by letting each directive
body render itself similarly to how the whole message body is rendered.
2020-11-24 16:06:48 +01:00
JC Brand
357b6406e2
Postrelease
2020-11-23 10:29:42 +01:00
JC Brand
db1905fdb6
Release 7.0.2
2020-11-23 10:18:35 +01:00
JC Brand
4e3a81d697
Fixes #2337
...
Newly opened headline chat isn't hidden by default in fullscreen view
Also include some CSS fixes for fullscreen headlines boxes
2020-11-19 13:20:02 +01:00
JC Brand
4520a04be9
Postrelease
2020-11-19 11:37:56 +01:00
JC Brand
85375842a8
Release 7.0.1
2020-11-19 11:23:04 +01:00
JC Brand
76aa1ef3ec
make postrelease
2020-11-18 13:07:51 +01:00
JC Brand
357cad8a49
Release 7.0.0
2020-11-18 12:10:32 +01:00
JC Brand
74ee783685
Fixes #1471
...
Wait when fetching config, otherwise default of `true` for `trusted` is used erroneously.
2020-11-18 11:43:53 +01:00
JC Brand
8a857e39f4
Move tab update to notification plugin
...
Updating tab notifications is not something that should be done in the headless part of Converse.
Don't update the tab title, having a favicon is enough.
2020-11-18 10:42:31 +01:00
Ariel Fuggini
6de07c5c29
Adds setting to toggle showing unread message counter in page title
2020-11-05 14:27:10 +01:00
JC Brand
cf94a5193a
Move dependency to headless package.json
2020-11-05 14:26:04 +01:00
Dele Olajide
9f548ae8de
fix #1250 ( #2323 )
...
Fixes #1250 Change favicon color when unread messages
2020-11-02 09:10:07 +01:00
Dele Olajide
285bbbc2f1
fix #2321 ( #2322 )
...
When Converse runs inside a browser extension, enable browser sync and local storage for persistent storage
2020-10-30 12:51:55 +01:00
JC Brand
4f7ff1f3cf
headlines-view: Update to match changes to the normal chat view
2020-10-29 11:10:55 +01:00
JC Brand
fbc4adff99
Remove updateAfterMessagesFetched
method
...
In MUCs, messages are fetched too late in order for it to be practical
to wait for messages before rendering various parts of the MUC view.
Previously there was a bug, in the sense that `messages.fetched` was
`undefined` when being `await`ed in `updateAfterMessagesFetched`.
Once this was fixed, this issue became clear.
2020-10-29 10:37:29 +01:00
JC Brand
59e216ad34
muc: no need for message_queue
...
...
since we create the `fetched` promise earlier
2020-10-29 10:36:28 +01:00
JC Brand
c750748b8d
Only create new message models once messages have been fetched
...
Fixes #2241
2020-10-29 10:36:28 +01:00
JC Brand
c08ee00fcd
Enforce uni-view in headless code
...
When we're showing only one chat at a time, we want to make sure that
all other chats have their `hidden` flag set to `true`.
Previously this was done in chatboxviews, but given that we want to
render UI based on state, this should be done in the headless part of
Converse.
As a result of the changes, the `beforeShowingChatView` has been
removed.
2020-10-27 13:00:43 +01:00
JC Brand
00466cd550
Let the converse-loaded
event conform to the CustomEvent spec
...
https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent
2020-10-26 13:09:15 +01:00
JC Brand
5a2d361c81
Fixes #2293 : Message carbons not re-enabled when reconnecting
2020-10-23 21:58:47 +02:00
JC Brand
4252a17f62
Fixes #1642 Add option to hide participant list by default
...
In the process, turn it into a component
2020-10-23 21:18:05 +02:00
JC Brand
8c1e886af9
Fixes #2302 Bookmarks get duplicated on server push
2020-10-23 16:22:40 +02:00
Xavi
15f5b185c3
Fix message reorder issue after edit ( #2300 )
...
* keep message in place after edition by assigning previous message original timestamp
* update time displayed to keep current behaviour
* add test to check a message remains in the same position of the history after being edited
* briefly describe pr changes in changelog
2020-10-23 15:07:56 +02:00
Dele Olajide
646542602f
fix #2304 - Custom emojis (stickers) images not shown
2020-10-21 11:01:08 +02:00
JC Brand
7803fd2335
Clear chat boxes when clearing cache
2020-10-20 14:28:09 +02:00
JC Brand
19dc66900d
Split the trusted
setting into two new ones:
...
- `allow_user_trust_override`
- `clear_cache_on_logout`
The `persistent_store` setting can now also be set to `sessionStorage`
The `trusted` settings was in effect playing the role of two separate settings
and implicitly affecting a third ('persistent_store').
By breaking it up, we make things more explicit and allow for new
configurations. For example, clearing the cache on logout, while using
some kind of persistent store.
2020-10-20 11:29:03 +02:00
JC Brand
5341a1ea49
MUC: warn instead of error when we're no longer connected
2020-10-19 12:07:28 +02:00
Bernard Ngandu
e49f97472a
#2280 notify changes to client on bookmark-update ( #2287 )
...
* notify changes to client on bookmark-update
* update XEP-115 caps verification string
2020-10-14 13:09:33 +02:00
JC Brand
48f119b673
MAM: use bare JID as by
attribute for archive-id
...
in 1:1 chats.
See: https://xmpp.org/extensions/xep-0313.html#archives_id
2020-10-13 04:48:21 +02:00
JC Brand
fb773d5d9b
smacks: Unregister smack stanza handlers on disconnect
2020-10-09 15:26:29 +02:00
JC Brand
ab0521ebfb
smacks: move functions out of plugin's initialize
method
2020-10-09 14:52:56 +02:00
ChaosKid42
c9ba42d0a0
regression of #1317 : Don't show errors for CSI messages ( #2276 )
...
* regression of #1317 : Don't show errors for CSI messages
* fix failing tests
2020-10-08 12:13:04 +02:00
JC Brand
af4fd3b0c2
MUC: connect with stored password, if available
2020-10-07 15:42:17 +02:00
JC Brand
7aee9c4432
muc: simplify api.rooms
methods.
...
- Let `api.rooms.open` call `api.rooms.get` directly, instead of indirectly via `api.rooms.create`
- Remove the `createChatRoom` function
- Also strip URI parts from JID in `api.rooms.get` and use utility method for doing so
2020-10-07 15:31:13 +02:00
Xavi
86c04b876b
Allow mention autocomplete to trigger right after a new line ( #2267 )
...
* catch all whitespace characters instead of just new line
2020-10-07 11:05:18 +02:00
Christoph Scholz
f68eb65cd7
check against own jid when detecting forged mam messages
2020-10-06 20:30:40 +02:00
JC Brand
30d550596b
Remove converse-rsm as whitelisted plugin and dependency
2020-10-05 21:09:02 +02:00
JC Brand
8ef3b10d39
Don't hide chats when singleton
is true
2020-10-01 13:43:42 +02:00
JC Brand
6d9752645f
Replace lodash methods with native ones
...
filter
find
has
isEmpty
isString
isUndefined
noop
reject
uniq
2020-10-01 12:56:00 +02:00
JC Brand
e761923cc9
Bump @converse/skeletor and localForage
2020-09-30 18:51:21 +02:00
JC Brand
02a9126ab6
Log errors when failing to save a message to storage
2020-09-30 18:51:21 +02:00
JC Brand
b5783c0668
Refactor converse-api.query
and the RSM class
...
- The `converse.api.query` method now no longer accepts an RSM instance.
- The RSM class now separates `query` parameters from `result` attributes
- Improve JSDoc docs and remove need to make `converse-rsm` a plugin
- Add typedefs for the options expected by RSM and `api.archive.query`
2020-09-30 18:51:21 +02:00
Christoph Scholz
ff5a046922
Revert "fix i18n of label group name"
...
This reverts commit 5a874a4956
.
2020-09-30 10:59:39 +02:00
Christoph Scholz
5ea2ccfc17
fixes #2238 i18n not working reliably
2020-09-28 13:31:19 +02:00
Kim Alvefur
76b488a672
Bugfix. Promise.resolve is not a constructor
2020-09-28 10:49:14 +02:00
JC Brand
0ca2e5ae08
Remove need for lodash templates in headless build
2020-09-26 09:58:34 +02:00
JC Brand
3fc6f7fa23
Fixes #1924
2020-09-25 18:46:45 +02:00
JC Brand
3a88831b9d
Bugfix. MUC tries multiple times to register nick
2020-09-25 15:30:53 +02:00
JC Brand
5350cb107f
Don't throw timeout errors for sent IQ#result or IQ#error stanzas
2020-09-25 14:12:12 +02:00
JC Brand
78f8f73fea
Get rid of converse-uniview
plugin
...
Instead of overriding createChatBox, set 'hidden' flag via defaults
2020-09-21 18:08:48 +02:00
Christoph Scholz
5a874a4956
fix i18n of label group name
2020-09-18 21:13:08 +02:00
JC Brand
0a7dff442c
Fixes #2235
2020-09-18 15:09:55 +02:00
JC Brand
7330530d13
omemo: better error handling when some bundles can't be fetched
2020-09-18 15:09:55 +02:00
JC Brand
32847e860f
pubsub: await IQ response when publishing
2020-09-18 15:09:23 +02:00
JC Brand
2e393d260b
Update to @converse/skeletor 0.0.2
2020-09-18 11:34:14 +02:00
JC Brand
5162f3f674
connection: Fix typo
...
This fixes anonymous logins
2020-09-18 11:34:03 +02:00
JC Brand
a0ae8135ce
Fixes #1481
...
For OMEMO in MUC, use the real JID of the user, not the MUC JID
2020-09-17 17:12:06 +02:00
JC Brand
ccbf049000
emoji: raise an error if getShortnameReferences
is called too soon
2020-09-17 12:24:18 +02:00
JC Brand
49cda74971
Update package-lock
2020-09-17 10:42:57 +02:00
JC Brand
0a82a177c4
OMEMO: ensure reflected encrypted MUC messages are identified
2020-09-17 10:37:09 +02:00
JC Brand
9fe7bfcd64
Include chatbox
in 'message' event data
2020-09-16 19:08:56 +02:00
dependabot[bot]
522e7706c1
Bump lodash from 4.17.15 to 4.17.19
...
Bumps [lodash](https://github.com/lodash/lodash ) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases )
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-09-15 15:43:41 +02:00
JC Brand
8d3cd687e7
Pass chatbox or _converse as context
2020-09-11 16:44:28 +02:00
JC Brand
bbcfc9f998
Bugfix. 2nd parameter for api.hook
is the context
2020-09-11 16:23:51 +02:00
JC Brand
71cfc7aba1
Bugfix. Include model when manually triggering change event
2020-09-11 16:01:15 +02:00
JC Brand
c0fc3c38f3
Bump to strophe 1.4 and add sprintf
2020-09-10 14:08:43 +02:00
JC Brand
543a29bcce
Fixes #2116
2020-09-10 11:08:27 +02:00
JC Brand
0e03640ebe
Fixes #2195
2020-09-10 10:17:13 +02:00
JC Brand
5d8e5468ba
Refactor converse-notifications to used parsed message attributes
...
instead of querying the stanza.
Also fixes a bug where typing notifications triggered an AttributeError
inside `shouldNotifyOfGroupMessage`
2020-09-10 10:10:59 +02:00
JC Brand
1873003624
Add new plugin converse-carbons
...
Fixes a bug whereby carbons weren't being enabled because the listener
for `afterResourceBinding` was registered before `converse.initialize`
was called,(which means it was removed as soon as `cleanup` was called
inside `converse.initialize`).
This shows that event `api.listen` API calls can/should only be called
inside the `initialize` method of a plugin (or at least once plugins
have been initialized).
2020-09-10 09:27:27 +02:00
JC Brand
2c042cc3fa
Fixes #2184 : Headless build relies on locale directory
...
Removed Jed from the headless build and instead let `__` call sprintf.
It's now up to downstream users for `@converse/headless` to decide
whether they want i18n support for the few translatable strings in that package
and to implement it themselves.
2020-09-10 08:55:38 +02:00
JC Brand
ffbab33a26
Create own occupant before setting connection_status
to ENTERED
...
This makes it possible to wait for the connection_status before trying
to call `getOwnOccupant` in plugins
2020-09-09 15:33:50 +02:00
JC Brand
7c43d0435c
Refactor OMEMO.
...
- Add hooks to the stanza parsers so that plugins can do additional parsing.
- Change ChatBox instance methods to functions and use them for stanza parsing.
- Move encrypt and decrypt messages to `converse.env.omemo`
Apparently, when receving a 1:1 carbon message, a device was wrongly created
for the contact's device list, instead of our own.
2020-09-09 14:04:24 +02:00
Ariel Fuggini
fce337e352
New configuration setting: notify_nicknames_without_references
2020-09-09 13:11:45 +02:00
Christoph Scholz
6319f566dd
fix emojis in case use_system_emojis == false
2020-09-05 11:33:25 +02:00
JC Brand
0594c480ff
Only consider chat 'hidden' flag in relevant view modes
2020-09-04 13:13:07 +02:00
JC Brand
c3d8f12050
Make api.user.status
API methods async
...
So that `_converse.xmppstatus` is defined before trying to set the
status.
2020-09-04 13:13:07 +02:00
JC Brand
4e7b29e417
Make sure initialize
can be awaited...
...
before `converse.initialize` has been called
In the process, remove other "core" promises. There is no core or
community plugins code awaiting on them and since it's possible to
call `converse.initialize` twice, I'm not sure it makes sense to even have them.
Also removed unused error class IllegalMessage.
2020-09-03 17:07:44 +02:00
JC Brand
d5c93eb024
Create converse-root
custom element
...
This element can be used to declaratively insert Converse into the DOM.
You can put `<converse-root>` into the DOM (e.g. by rendering it inside
a React component) before or afer Converse has loaded and/or has been
initialized.
2020-09-03 13:06:17 +02:00
Christoph Scholz
4d9d391365
add CustomElement to env
2020-08-31 17:03:23 +02:00
JC Brand
9348ac80b5
Override isHidden
in converse-minimize
...
Otherwise `isHidden` might return true because `minimized` is set to
`true` but `converse-minimize` is not enabled.
2020-08-28 15:32:58 +02:00
Christoph Scholz
823134d762
add html to converse.env
2020-08-24 23:48:24 +02:00
Xavi Ferrer
d50151c9dd
fix BOSH session restore
2020-08-24 11:46:24 +02:00
JC Brand
9f0dfcdbdb
Wait before firing roomsAutoJoined
event
2020-08-24 11:05:51 +02:00
JC Brand
f7ef334fac
Rename method to better describe what it does
2020-08-18 21:09:39 +02:00
JC Brand
11cd6b8321
Fixes #2193 .
...
Translations called at the top of template files don't apply, since the
trnaslations aren't yet fetched at that point.
2020-08-16 23:45:53 +02:00
JC Brand
3e8b3f73bd
Move pot and po files to src/i18n and regenerate
2020-08-16 22:54:45 +02:00
JC Brand
d615cebcfe
Use proper i18n func
2020-08-13 15:37:50 +02:00
JC Brand
6e86fe3300
Fixes #1913 . Can't connect to non-ascii JID
2020-08-13 11:26:02 +02:00
JC Brand
09371712b0
Updates #1896 : Properly identify archived one-on-one messages
...
Also, rename attribute from `is_receipt_request` to `is_valid_receipt_request` to avoid confusion.
2020-08-13 11:09:22 +02:00
JC Brand
cd84feefff
connection: Re-add debouncedReconnect
2020-08-12 17:50:18 +02:00
JC Brand
6fbb9463ee
Bugfix. Include nick in output messages
2020-08-12 14:39:10 +02:00
Xavi
7cdc592ed9
merge only relevant settings when calling api.settings.extend ( #2187 )
...
* merge only relevant settings when calling api.settings.extend
* test behaviour is the one expected and change doesn't break previous tests
2020-08-12 10:12:10 +02:00
Xavi
bd21f27f4f
fix api.settings.update warning message ( #2182 )
2020-08-10 08:06:24 +02:00
JC Brand
696c8e3522
Don't clear #conversejs
via innerHTML
...
It appears to break subsequent lit-html `render` calls on the
`#conversejs` element because lit-html still remembers parts from before
the element was cleared.
2020-07-30 12:17:23 +02:00
JC Brand
2fcce78144
Add a cleanup
hook
...
- Move view-related cleanup code out of core.
- Call `remove` on `_converse.chatboxviews` during cleanup
2020-07-30 11:04:07 +02:00
JC Brand
16ca8044f8
Add experimental support for running the XMPP conneciton inside a shared worker
...
Still lacks inter-tab communication to update state across tabs, i.e.
when sending a 1-on-1 message in one tab, it doesn't appear in another,
because that information is not available via the websocket connection.
- Create a new `Connection` class that extends Strophe.Connection and
move related code from `converse-core.js` into this class.
- Store the session in localStorage when using a worker
- Move XEP-0156 code to connection.js
This allows us to initialize the connection without needing to know the
domain.
2020-07-27 12:43:47 +02:00
JC Brand
a6c821be95
Use optional chaining
2020-07-24 11:50:54 +02:00
JC Brand
1419b4fc96
MUC: Add support for status code 333
2020-07-22 10:11:05 +02:00
JC Brand
cb50de16e2
Update 3rd party dependencies
2020-07-20 13:19:12 +02:00
JC Brand
1335a96dad
Bugfix. Handle emojis for which we don't have shortnames
2020-07-17 12:59:05 +02:00
JC Brand
0da8067129
MAM: Fix a MUC timing issue.
...
If a message comes in after joining the MUC but before the MAM messages
have been fetched, then converse-mam will query for MAM messages newer
than that message, causing an empty history (except for that one message).
2020-07-14 22:41:26 +02:00
JC Brand
4de9816f24
Make sure emojis are initialized before parsing a message
...
for emoji related data
2020-07-13 15:45:37 +02:00
JC Brand
d7bc129ce3
Get rid of Twemoji as a dependency
...
Fixes #2126
2020-07-10 11:21:45 +02:00
JC Brand
1269cb7252
Don't attempt to fetch a VCard if we don't have a JID
2020-07-09 22:29:06 +02:00
JC Brand
8943609d10
Refactor the body directive
...
Changes how rich message markup is generated and kept track of.
We now have a MessageText class which subclasses String and which keeps
track of the rich markup associated with the message.
2020-07-09 20:50:25 +02:00
JC Brand
78925b011d
Updates #2126
...
Wait for emojis to be initialized before parsing MAM messages
2020-07-08 14:08:08 +02:00
JC Brand
c3d6b64f4b
Turn the chat toolbar into a component
...
- Declaratively render the emoji picker dropup
- Got rid of converse-emoji-views
- Adapt OMEMO to the new buttons stuff
- Make emojis json global, to try and speed up tests
- omemo: Move functions to the top of the module
2020-07-08 10:17:06 +02:00
JC Brand
b7a40dad41
Add a title attribute to emojis in messages
...
so that you can see the shortname when you hover your mouse over an emoji.
2020-06-25 11:19:07 +02:00
JC Brand
be20b8e1a0
emojis: fix rendering of custom emojis
2020-06-25 10:24:45 +02:00
Ariel Fuggini
77a0a01eff
Makes message with errors non-editable ( #2089 )
...
* Makes message with errors non-editable
2020-06-25 10:22:44 +02:00
JC Brand
b6dabf7381
muc: Ensure that exact nicknames (and not substrings) are matched
2020-06-22 13:57:44 +02:00
Ariel Fuggini
73d33e1161
Makes mentions case-insensitive, plus parsing functionality refactor ( #2061 )
2020-06-18 11:19:01 +02:00
JC Brand
2009a94ba4
Update to Strophe 1.3.6
...
Fixes #2067
2020-06-15 15:39:33 +02:00
JC Brand
6b55907ddd
Bugfix. Don't remove affiliated members on probe response
...
by checking for the affiliation data on the probe response presence and
not on the occupant model (which might be created from a message and
therefore not yet have up to date affiliation data).
2020-06-15 12:42:20 +02:00
JC Brand
80c955f267
Fix "retry" feature for message errors.
...
By registering a one-time event handler for a unique event name
2020-06-11 17:29:44 +02:00
JC Brand
b0cb489769
Use @converse/skeletor, lodash-es and latest webpack-dev-server
2020-06-08 19:38:16 +02:00
JC Brand
b511f1d950
Updates #1896 : Use right flag to checked if message is archived
2020-06-08 12:25:49 +02:00
JC Brand
dd7bb28d86
Report traceback when waitUntil
times out
2020-06-05 15:49:18 +02:00
JC Brand
95b015f01a
Allow disabling of the bosh plugin
2020-06-03 17:43:57 +02:00
JC Brand
c82e3e9bda
Update api.vcard.set
to also update the VCard model
2020-06-03 13:32:44 +02:00
JC Brand
b4e4248f40
Fixes #1960
2020-06-03 13:26:38 +02:00
JC Brand
9f7b6d6fa1
Fixes #2035
2020-06-03 10:56:38 +02:00
JC Brand
85e9169b35
Use the API to read settings
2020-06-03 10:15:05 +02:00
JC Brand
830e060568
Rename api.settings.update
to api.settings.extend
...
This is to try and make it clearer that this method won't override
initialization settings, and is instead simply to add to the default
settings.
2020-06-03 09:32:16 +02:00
JC Brand
1ff6ced3ab
Don't override initialization settings via api.settings.update
...
This is a problem that could occur when calling converse.initialize twice
2020-06-03 09:15:35 +02:00
JC Brand
5a57ded243
Add support for the XEP-0333 displayed
chat marker
...
Credit for this work goes to @deleolajide
2020-06-01 18:01:02 +02:00
JC Brand
ac36adddfe
Re-add support for a new messages indicator
...
Fixes #2040
2020-06-01 16:52:12 +02:00
JC Brand
7651d58470
Render chat messages as web components
...
- Render chat content as a <converse-chat-content> component
- Create new component for rendering the message body
- Get rid of `showMessage` method
2020-06-01 09:53:19 +02:00
JC Brand
ca7adeedbd
Save hat URI, not id
2020-05-20 13:44:29 +02:00
JC Brand
1e44f45a68
core: Don't expect Strophe.BOSH to be defined
2020-05-18 18:51:40 +02:00
JC Brand
bf4b3efa5b
Import _converse and api
2020-05-18 10:54:37 +02:00
JC Brand
3cca2fdb7f
roster: Filter contacts via all available information
2020-05-14 12:20:23 +02:00
JC Brand
35cde98e71
Fix i18n string parsing error
2020-05-14 11:18:13 +02:00
JC Brand
b8f2db6e33
Move ModeratorToolsModal to separate file
2020-05-13 15:16:46 +02:00
Dele Olajide
cae5e9c875
Updates #1999 - Demarcate first unread message
2020-05-13 13:39:33 +02:00
JC Brand
2f60c4399a
core: SimplifyonDisconnected
2020-05-12 14:52:21 +02:00
JC Brand
2e6bfb6717
Set connection status values via constants
2020-05-12 14:51:34 +02:00
JC Brand
c2143f617a
Bugfix. Converse.js stopped reconnecting
...
When `_doDisconnect` is called in Strophe, `authentication` is set to
`false`, so reconnection wouldn't happen anymnore
Updates #1490
2020-05-12 11:50:13 +02:00
JC Brand
2b5aeb5ed1
Document interaction between muc_send_probes and muc_fetch_members
2020-05-12 11:23:35 +02:00
JC Brand
555c0966cc
muc: save error response to a sent message onto the original model
2020-05-07 13:32:56 +02:00
JC Brand
3319398f17
muc: Don't show unnecessary affiliation change message
2020-05-07 10:03:28 +02:00
JC Brand
b64b20c44d
muc: fall back to finding occupant by nick
2020-05-06 18:01:59 +02:00
JC Brand
d49b630bdc
Enable sending of MUC presence probes
2020-05-06 18:01:59 +02:00
JC Brand
98faa71e65
muc: Ensure message rerenders when occupant is added
2020-05-06 18:01:59 +02:00
JC Brand
e621362471
mam: include chatbox in data sent via MAMResult
2020-05-06 18:01:59 +02:00
JC Brand
fa30563937
Don't assume that window.converse is always defined
2020-04-30 13:27:01 +02:00
JC Brand
089a54281e
Bump various 3rd party dependencies
2020-04-29 16:01:33 +02:00
JC Brand
5546085f0d
Add keywords
2020-04-29 11:17:21 +02:00
JC Brand
f20e14282a
Re-add log to _converse object
2020-04-29 10:19:57 +02:00
JC Brand
2963830916
Trigger sendMessage
event
2020-04-28 17:46:57 +02:00
JC Brand
b5eea12d49
Refactor so that message attributes are parsed early
...
It's better to parse an incoming message stanza early, than to have
all kinds of methods throughout the codebase that does querySelector
etc.
Firstly, it allows us to catch and report errors and malicious stanzas early on.
It also simplifies programming because you don't need to try and
remember how to properly parse a stanza, all the work is done upfront
for you.
2020-04-27 16:34:37 +02:00
JC Brand
27008aff66
Bugfix. Add missing variable for string interpolation
2020-04-27 16:30:46 +02:00
JC Brand
bad815b429
Bugfix. Don't create multiple RosterContactView objects
2020-04-27 16:30:33 +02:00
JC Brand
958379682a
muc: Render role change messages as ephemeral notifications
2020-04-23 15:11:36 +02:00
JC Brand
c6f8ef0c46
Various JSDoc related fixes and improvements
...
Using the `@method` directive on a `@class` means that the method
doesn't appear.
2020-04-23 13:55:08 +02:00
JC Brand
b44c0c266c
mam: Add MAMResult
hook
2020-04-23 13:55:08 +02:00
JC Brand
ad4999384d
Reduce unnecessary logging in tests
2020-04-23 13:52:21 +02:00
JC Brand
7e2552bd8c
core: Allow multiple imports
2020-04-23 13:50:35 +02:00
JC Brand
7eb6a17fd2
Add the ability to run tests via the webpack devserver
2020-04-21 20:18:43 +02:00
JC Brand
ac3e87965f
Remove unused import
2020-04-20 19:48:09 +02:00
JC Brand
d9c41f62cf
Add install
recipe as alias to build
and dist
2020-04-20 18:49:02 +02:00
JC Brand
c1efb0d2b4
Add an external API for sending presences
2020-04-19 09:41:38 +02:00
JC Brand
5e91adbf4e
Update various 3rd party dependencies
2020-04-17 11:40:14 +02:00
JC Brand
78b60a3bd9
Fixes #515 Add support for XEP-0050 Ad-Hoc commands
2020-04-17 11:01:44 +02:00
JC Brand
be3cbe6dc3
Downgrade dayjs
...
Due to this bug: https://github.com/iamkun/dayjs/issues/792
2020-04-15 17:47:50 +02:00
JC Brand
f68f577b71
muc-views: Update ListChatRoomsModal to make better use of lit-html
2020-04-15 11:54:07 +02:00
JC Brand
5cb65d84f1
Bugfix. Don't assume OMEMO store is always there
2020-04-14 14:04:26 +02:00
JC Brand
5ea7a4d127
MUC: Small updates to message fetching and queueing
...
- Always clear queue after fetching messages from cache
- Empty `message_queue` without waiting for all messages to first be processed.
- Don't assume that `this.messages` is set by the time `queueMessage` is called
2020-04-14 12:29:12 +02:00
JC Brand
df9612f937
Add support for XEP-0317 MUC Hats
2020-04-13 22:57:29 +02:00
JC Brand
e2a7045e22
Move MUC presence parsing code to src/headless/utils/stanza.js
2020-04-13 18:22:15 +02:00
JC Brand
a1d5563963
Move OMEMO-related message parsing to utils/stanza.js
2020-04-13 17:44:47 +02:00
JC Brand
ce1f7e090e
Rename getMessageAttributesFromStanza
to parseMessage
2020-04-13 17:44:47 +02:00
JC Brand
2dd6bc85ea
Fixes #1961
...
Make sure dist dir is included in headless NPM package
2020-04-13 11:45:02 +02:00
JC Brand
8824bb26c4
Bump various dependencies
2020-04-13 11:39:00 +02:00
JC Brand
e91a38547a
MUC: create role/affiliation change message objects
...
in @converse/headless instead of injecting HTML via the view
2020-04-13 11:21:40 +02:00
JC Brand
08b402a9c1
MUC: check for author to avoid "cleared" message for empty subject
2020-04-10 20:47:07 +02:00
JC Brand
c4c7e41981
MAM: better error logging
2020-04-10 16:04:46 +02:00
JC Brand
8b496d085e
Enable XEP-0156 support by default
2020-04-10 15:25:49 +02:00
JC Brand
35de251ce7
Make sure IQ timeouts are properly logged
2020-04-10 14:41:23 +02:00
JC Brand
4425c3dde7
Always show a new topic, even if the previous one was hidden
2020-04-08 14:31:18 +02:00
JC Brand
bc4d016557
Don't show duplicate topic change notifications
2020-04-08 13:08:15 +02:00
JC Brand
c4ba6735ba
Bugfix. Can't cast undefined to array
2020-04-07 22:15:36 +02:00
JC Brand
a065b0c88c
MUC: Clear typing notification when a message is received
2020-04-07 22:04:25 +02:00
JC Brand
c7e702368b
Properly clear user settings
...
by first waiting until the model has been set up.
2020-04-07 19:07:51 +02:00
JC Brand
fe635989a1
Add support for Finnish translations
2020-04-07 13:47:34 +02:00
JC Brand
5fd316816d
MUC: Don't show topic change notification for old changes.
...
Also, show topic by creating a message object, instead of directly
inserting HTML into the DOM. This is a necessary precursor to being able
to render chat messages via lit-html/lit-element.
2020-04-07 11:49:12 +02:00
JC Brand
75d64c04d9
Add a hooks API
...
for triggering interceptable events with the goal of modifying data.
2020-04-06 17:22:06 +02:00
JC Brand
531ebf335c
Properly test and fix show/hide of MUC topic
2020-04-06 15:27:32 +02:00
JC Brand
bb9e394e93
muc: handle join/leave notifications similarly to CSNs
...
Remove the `muc_show_join_leave_status` config setting.
We don't show the optional statuses at all now.
2020-04-01 14:34:11 +02:00
JC Brand
c20dbbbbbd
Store in user settings whether a MUC topic is hidden or not
2020-03-31 22:57:22 +02:00
JC Brand
e498657323
Add API for setting and accessing user settings
2020-03-31 15:01:02 +02:00
JC Brand
6391cc0803
Rename applyUserSettings to applySiteSettings
2020-03-31 14:08:34 +02:00
JC Brand
030c26a8ab
Use api
shortcut instead of _converse.api
2020-03-31 13:16:24 +02:00
JC Brand
d057177f1b
core: Further cleanup and refactoring
2020-03-31 12:51:30 +02:00
JC Brand
8b1d4e0e9d
core: refactor initialize method to make it as small as possible
2020-03-31 12:28:11 +02:00
JC Brand
631b9bb438
Use the settings API for setting and getting config settings
...
This is an initial step towards no longer storing and accessing settings
directly via the `_converse` object
2020-03-31 11:57:03 +02:00
JC Brand
095a1bc56b
Fixes #1490 . Don't reconnect if were weren't auth'd to begin with.
2020-03-30 05:29:21 +02:00
JC Brand
690ff1fba1
Fixes #1860
2020-03-30 04:13:46 +02:00
JC Brand
321a54323e
Allow moderators to retract their own messages...
...
when retractions are restricted to mods only
2020-03-26 10:35:08 +01:00
JC Brand
967154d314
Use optional chaining instead of lodash.get
2020-03-24 12:30:45 +01:00
JC Brand
5e27579ebe
Don't ignore groupchat messages that also contain a CSN
2020-03-23 20:54:27 +01:00
JC Brand
57709b2e78
Sort modtools search results by nickname
2020-03-23 18:06:36 +01:00
JC Brand
b5d57f0ef8
Handle and render chat state notifications separately from messages
2020-03-21 17:21:53 +01:00
JC Brand
ca012d4479
Update to newer Skeletor.js
...
`.forEach` on a Collection no longer returns the models, so need to
update some tests.
2020-03-12 15:24:29 +01:00
JC Brand
6fe802a96b
Replace lodash methods with native ones
2020-03-06 15:49:48 +01:00
JC Brand
366dee0aa5
Bugfix. Allow moderators to retract their own messages
2020-03-05 13:42:58 +01:00
JC Brand
a7f28cd61d
When creating message objects, wait for confirmation from storage
...
Queue messages and handle them sequentially, each time waiting for promises to
resolve before handling the next message.
Updates #1899 , which likely happens because an error message is received
before messages have been fetched.
2020-03-04 15:14:57 +01:00
JC Brand
8aaa1a6417
core: Make clearSession
a synchronous event
...
In order to give plugins time to properly clear data from the browser storage.
2020-03-03 10:23:46 +01:00
Dele Olajide
5a9f8218c8
Fix issue 1896 ( #1897 )
...
* fix issue https://github.com/conversejs/converse.js/issues/1896
* Added issue to CHANGES.md
2020-02-28 11:24:25 +01:00
JC Brand
f02caff854
Rejoin the MUC if we receive an empty message
2020-02-27 16:40:29 +01:00
JC Brand
34c4b2aa5e
Prevent empty messages from being created
2020-02-27 15:09:54 +01:00
JC Brand
e5341d54a9
Bugfix. Dangling moderation messages not applied
2020-02-22 22:59:30 +01:00
JC Brand
5fe23f477f
modtools: Fetch affiliation list when we haven't fetched it by default
2020-02-21 16:20:30 +01:00
JC Brand
3c9ec96350
MUC: create references for nicks gathered from messages
2020-02-21 12:30:40 +01:00
JC Brand
62ef18a027
muc_fetch_members now accepts an array of affiliations
2020-02-20 18:39:56 +01:00
JC Brand
590a8862bc
Don't validate message creation
...
This causes messages to be created but then not populated, causing empty
messages appearing in the chat after page relaod.
Fixes #1886
2020-02-20 13:08:12 +01:00
JC Brand
49817a850f
MUC: Queue messages received before we're ready
2020-02-20 07:13:04 +01:00
JC Brand
58f6d36564
MUC: wait for messages collection to be initialized
...
before processing MUC messages received prematurely due to SMACKS
resumption.
2020-02-19 14:22:24 +01:00
JC Brand
0137eb88ae
Smacks: Handle MUC messages received before the MUC exists
2020-02-19 13:39:07 +01:00
JC Brand
5b5c4595cc
Rename hide_subject
to subject_hidden
2020-02-18 17:26:49 +01:00
JC Brand
ce08819a43
Retracted moderated sent message should not be editable.
2020-02-18 16:47:52 +01:00
JC Brand
ead8cdbcd6
Retracted moderated message should not be editable.
...
Also, don't set retracted MUC messages as ephemeral, we want to keep on
showing them to provide context in a MUC.
2020-02-18 16:06:59 +01:00
JC Brand
227b70339c
Bugfix. Retracted messages shouldn't be editable.
2020-02-18 15:45:55 +01:00
JC Brand
004d2b7f23
Fix method name in log
2020-02-18 15:45:55 +01:00
JC Brand
bcbde04530
Copy sounds dir to dist and use assets_path
for sounds_path
2020-02-16 12:30:25 +01:00
JC Brand
f564a1edaf
Show reason and actor for ban/kick events
2020-02-14 13:19:12 +01:00
JC Brand
39d140005e
Change when/how chats are shown
...
Goal is to fix a timing bug that results in `show` being triggered
before the `ChatBoxView` has been initialized, which means that 1:1
chats aren't opened when you reload the page.
2020-02-14 11:06:04 +01:00
JC Brand
3400acbfeb
Show MUC buttons in a dropdown menu
...
- Get rid of the ChatBoxHeading class
- Add support for showing standalone buttons in overlay viewmode
2020-02-13 20:57:47 +01:00
JC Brand
ed411c226d
Avoid creating Message objects for empty messages
2020-02-13 16:31:13 +01:00
JC Brand
181d18fcfe
Translation and undefined variable fixes
2020-02-11 10:13:23 +01:00
JC Brand
faa02b058d
Make sure messages Collection exists when we receive an error message
2020-02-10 18:41:32 +01:00
JC Brand
7d91b17552
Rename methods to clarify their purpose
2020-02-07 12:42:19 +01:00
JC Brand
fb9fe280ac
Updates to how dupes are detected.
...
- Collapse 3 different loops into one.
- Check all saved stanza ids in the parsed attrs, not just the archive id
- Remove check for archive id in converse-mam since it just duplicates what's now being done in converse-chat
- Don't use disco to check for support, XEP-359 mandates that services SHOULD advertise support,
which is not a strong enough guarantee that they do.
updates #1856
2020-02-07 12:35:45 +01:00
JC Brand
746fe441e2
Updates the message parsing.
...
Only set `id` once we've actually parsed the sender attributes,
otherwise `attrs.from` is `undefined`.
Use `Array.prototype.reduce` to generate stanza_ids attributes map.
Add `from_muc` attribute which contains the MUC JID
2020-02-07 12:12:38 +01:00
JC Brand
d2b6b41128
emoji-picker: Make sure that emojis as images are rendered properly
2020-02-06 16:27:44 +01:00
JC Brand
a1670462ca
Remove jquery and undersscore shims
2020-02-06 14:51:50 +01:00
JC Brand
7279f08a34
Update to newer skeletor which can return a promise on create
2020-02-03 23:24:44 +01:00
JC Brand
f78837cbc5
Refactor identification of duplicates...
...
to rely on the parsed stanza attributes
This was to fix a bug whereby a full stanza was used to query for 1:1
messages with a full JID when the bare JID is stored.
We now are sure that the attributes we're using to query for duplicates
are the same attributes that get saved for a messages.
2020-02-03 23:24:44 +01:00
JC Brand
73fa24a844
headlines: move view code into converse-headlines-view.js
2020-01-30 18:18:27 +01:00