Commit Graph

4261 Commits

Author SHA1 Message Date
JC Brand
d4382fda19 OMEMO bugfix. Don't auto-create device list without JID 2022-04-20 09:52:17 +02:00
JC Brand
4c394c072e Don't wait for vcards before initializing the roster 2022-04-20 09:52:17 +02:00
JC Brand
699326547a Show MUC avatar 2022-04-20 09:52:17 +02:00
JC Brand
2a9a01bc32 Fix flashing of bookmarks on page load 2022-04-19 22:52:33 +02:00
JC Brand
ce22508344 Turn bookmarks list into a Lit component 2022-04-19 21:08:52 +02:00
JC Brand
230b72139a Set jid as id attribute for vcards, presence and roster contacts
This allows models to be retrieved from a dict instead of via array
traversal.
2022-04-19 09:28:06 +02:00
JC Brand
0b168e8439 Use listenTo 2022-04-16 14:25:39 +02:00
JC Brand
e492885ac0 Set jid as the id attribute of the VCards collection
This reduces lookup time for vcards greatly, since we don't can access a
map of ids instead of using `findWhere` through an array of models.
2022-04-16 00:15:27 +02:00
SilverYoCha
7cb86638b5 Fixing display problems with chatbox view with mobile view mode 2022-04-15 06:48:25 +02:00
JC Brand
2d5b0753e2 Remove local contacts not returned from a full roster response 2022-04-14 11:29:28 +02:00
JC Brand
8e1c3e47df Improve how the muc_domain setting is populated via disco
Remove brittle code that uses `querySelector` to get the rooms list model.
This code was causing a TypeError due to a race condition.
2022-04-09 10:57:55 +02:00
JC Brand
7b31f4d333 Remove allow_muc setting 2022-04-09 09:11:54 +02:00
JC Brand
8930201b99 Fixes #2746
Update to latest Strophe which adds a fallback handler for unhandled incoming "get" and "set" IQs.
2022-04-08 22:17:01 +02:00
JC Brand
ad11dce92f Call safeSave to avoid error when MUC is not yet persistable 2022-04-08 12:19:05 +02:00
JC Brand
0c049dd364 Resolve fetched promise when clearing messages
This fixes an issue where chats stay empty after reconnection when
`clear_messages_on_reconnection` is `true`.
2022-04-08 11:22:21 +02:00
JC Brand
ca0953e4bd Bump urijs, skeletor and localforage-getitems 2022-04-08 11:22:15 +02:00
JC Brand
a17e8bea1c Only warn when getting an error in safeDestroy 2022-04-08 10:58:06 +02:00
SilverYoCha
b331405658 Bugfix: selected emoji inserted into all open chat boxes
when in overlay view mode.
2022-04-08 08:21:19 +02:00
JC Brand
f0297fe075 Add status and show elements to MUC join presence in status plugin
and not in the muc plugin.

This decouples the plugins more. Ideally we can remove the status plugin
entirely from a customized Converse build (but we're not there yet).
2022-04-07 11:08:00 +02:00
ubermanu
5c5825fb75 Add missing headless dependencies 2022-04-06 23:16:09 +02:00
ubermanu
e0e1fd4f02 Update lock file with root node version (16.3) 2022-04-06 23:10:13 +02:00
ubermanu
5e4fa98577 Add subdir to repo information 2022-04-06 23:10:13 +02:00
ubermanu
7e18873bcd Target to converse default export 2022-04-06 23:10:13 +02:00
ubermanu
592d982210 Include all headless files except tests 2022-04-06 23:10:13 +02:00
JC Brand
9d4382c754 Move emoji functions to utils.js
Also, move various emoji utility methods out of @converse/headless, and
thereby remove the dependency on lit-html
2022-04-06 23:07:16 +02:00
JC Brand
af342456c5 Add enterkeyhint attribute to message form inputs 2022-04-06 09:55:56 +02:00
JC Brand
5d3895078b Use the loading HTML attr to lazily load images 2022-04-06 08:33:23 +02:00
JC Brand
32a443408a Bugfix. GIF unfurl images not loading...
and causing `TypeError: this.shouldRenderMedia is not a function`
2022-04-04 16:31:32 +02:00
JC Brand
b429484501 Move csi_waiting_time setting to the converse-status plugin 2022-04-04 15:03:57 +02:00
JC Brand
6b1845ff39 Release 9.1.0 2022-04-02 19:31:37 +02:00
JC Brand
fb704fdf87 Don't import from i18n in headless 2022-04-02 15:55:56 +02:00
Ricky Tigg
f6a985c24f Translated using Weblate (Finnish)
Currently translated at 83.5% (426 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/fi/
2022-04-01 15:51:52 +02:00
Edward
44cd910154 Translated using Weblate (Romanian)
Currently translated at 45.0% (230 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/ro/
2022-04-01 15:51:52 +02:00
Γκουλιούμης Θεόδωρος
f21fc90629 Translated using Weblate (Greek)
Currently translated at 0.3% (2 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/el/
2022-04-01 15:51:52 +02:00
Hasan
21fb57ecfd
Translated using Weblate (Turkish)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/tr/
2022-03-31 09:33:27 +02:00
Xosé M
3bb645ce24
Translated using Weblate (Galician)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/gl/
2022-03-31 09:33:27 +02:00
JC Brand
fd991846f4 Replace ElementView with CustomElement for RoomsList 2022-03-30 09:50:36 +02:00
JC Brand
523566c218 Move MUC tests into their own files 2022-03-30 09:48:39 +02:00
JC Brand
c3933426b9 Refactor checkFileTypes
- Don't check the protocol in `checkFileTypes`, it should be doing one
    thing only, and that is check whether the URL ends with a particular
    file extension.
- Raise an error when a URI object can't be created from the passed in URL

Adds new function `isAllowedProtocolForMedia` which checks whether the
URL points to a file on the file system (`file:`), is in a Chrome
extension or uses HTTPs.

Use that in `shouldRenderMediaFromURL` to filter out URLs that shouldn't
be rendered.

Re-add utility methods to the `u` object so that 3rd party plugins can
use them.
2022-03-29 19:41:16 +02:00
Keith Maika
be561addfa Fix endless loop of adding .png to image URL. 2022-03-29 19:08:39 +02:00
JC Brand
c379fe80fb Handle 'forbidden' MUC errors with type 'cancel' and add fallthrough 2022-03-29 10:36:32 +02:00
JC Brand
5ef0f3ad5d CSS: various color fixes between light/dark themes 2022-03-29 10:35:25 +02:00
JC Brand
d570b6095e Don't make the connection URL input required
It might be that it's shown in response to a failed XEP-156 lookup
because the user mistyped.

In which case the user can just correct the JID and try again, without
entering a connection URL.
2022-03-25 08:54:38 +01:00
JC Brand
fca275b7c9 Refactor the login form
Render the form based on `api.settings` instead of its own model.

When the login form is submitted, save the JID, password and connection
URL to `api.settings`.

Set the `service` on the Strophe connection object just before
connecting for the first time, otherwise a user supplied URL (via the
login form) is never used.

New API setting: show_connection_url_input
2022-03-24 23:15:30 +01:00
JC Brand
e160ee2ed5 Add JID and password values to login form (if available) 2022-03-24 21:05:40 +01:00
JC Brand
fbfd6c3ac4 Updates #2849: add test for incoming MUC OMEMO corrections 2022-03-23 21:30:53 +01:00
JC Brand
7355c2c5fe Updates #2849
Add test case for incoming OMEMO message corrections.

The correction was being ignored because the parsed `msgid` of an
incoming correction was set to the `msgid` of the message being
replaced.
2022-03-22 23:12:45 +01:00
JC Brand
297869c59f Don't explicitly sort messages.
Apparently not necessary, I was wrong about the race condition in 82fb263438
2022-03-15 21:24:32 +01:00
JC Brand
defea1631c Bugfix. Don't ignore groupchat messages that contain receipt requests 2022-03-15 11:35:15 +01:00
JC Brand
82fb263438 Explicitly sort messages before pruning
to avoid a race-condition where messages aren't sorted and the wrong
message gets pruned.
2022-03-14 21:19:43 +01:00
JC Brand
d2b9c954d9 MUC: move some tests to headless plugin 2022-03-14 20:35:01 +01:00
JC Brand
f9a9d327d1 Use body as attribute for the message body text
For error messages we still use the `message` attribute, since error
messages generally don't have a body, and if one does, it likely refers
to the `body` of a rejected message that the error refers to.

We're still setting both `body` and `message` attributes, but usage of
`message` for a normal `chat`, `groupchat` or `headline` stanza should
be considered deprecated.
2022-03-14 09:28:34 +01:00
JC Brand
d2622f6fed Fixes #2557
Add the ability to send OMEMO corrections.

Refactor how OMEMO messages are sent to avoid having to override
`sendMessage` and thereby also allowing corrections of OMEMO messages to
be sent out.

Add two new hooks.
- getOutgoingMessageAttributes
- createMessageStanza
2022-03-13 10:02:34 +01:00
JC Brand
731e98b07c OMEMO fixes for completely new user
Fix bugs related to there not being a server-side device list (not even an empty one) for a new user.
2022-03-13 10:02:34 +01:00
JC Brand
89a3c81a19 OMEMO: don't wait for all device lists...
to be fetched from the server before triggering OMEMOInitialized.

For some contacts, the IQ to fetch the device list never receives a
response. IQ stanzas take 20 seconds to timeout, which means that all
OMEMO operations are blocked for 20 seconds (because everything waits
for `OMEMOInitialized`).

Create a new API method `api.omemo.devicelists.get` and use that to
fetch and `await` for any devicelist. That way we lazily wait for
devicelists to be fetched from the server and can continue with other
OMEMO operations unrelated to users who's clients don't respond to
devicelist queries.
2022-03-10 20:51:04 +01:00
JC Brand
2133241998 CSS: Fix chat title width and elipsis color
in overlayed view mode.
2022-03-10 20:51:04 +01:00
JC Brand
47b016599e Stop using this in tests.
It will be unsupported in future versions of Jasmine
2022-03-09 12:44:49 +01:00
JC Brand
e52056bb33 Refactor the emoji-picker somewhat
Trigger an `emojiSelected` event instead of manually calling `insertIntoTextArea` on the `converse-message-form` a component.
This loosens the coupling between the emoji picker and `converse-message-form`.

Call `disableArrowNavigation` when the emoji-picker is disconnected from
the DOM or when escape is pressed. See #2754
2022-03-09 12:44:33 +01:00
JC Brand
1c0ce25f12 Move keycodes and chat states to constants.js 2022-03-09 12:22:44 +01:00
JC Brand
c42bd90c9d Don't clear textarea on escape, unless we're correcting a message 2022-03-09 11:24:32 +01:00
SilverYoCha
7409668a5d Fixes #2754 2022-03-08 16:40:26 +01:00
JC Brand
d432bab73a Remove and recreate lockfiles
To see if that fixes Github Actions CI
2022-02-28 13:34:40 +01:00
JC Brand
9328db645d Update to latest Skeletor
So that we can use the `getAll` IndexedDB method to fetch multiple
entries at once. Should result in a significant speedup.
2022-02-28 10:37:58 +01:00
JC Brand
b7ad1eaade Fix failing tests 2022-02-22 11:44:53 +01:00
JC Brand
727bad01c7 Don't send <show>online</show> joining a MUC 2022-02-22 11:30:38 +01:00
JC Brand
b248803a4b Fixes #2822 2022-02-20 19:17:52 +01:00
JC Brand
7b63b7b30f Make various error messages ephemeral.
Also make it possible to specify the timeout for an ephemeral message.
2022-02-19 23:11:22 +01:00
JC Brand
ca20f687bf minimize: initialize chat via event instead of override 2022-02-19 23:10:17 +01:00
JC Brand
bbef09346a Various CSS fixes and use converse-icon for nav button 2022-02-19 23:09:39 +01:00
JC Brand
1c8085f00e CSS: Set modal header color for error alerts
Also fix various element colors for Dracula theme
2022-02-19 21:32:25 +01:00
JC Brand
beb220f188 Updates #2781
Only send presence status update when a MUC is entered, and when joining
a MUC, include the `<show>` element.
2022-02-18 10:55:20 +01:00
JC Brand
20cd90855f Dracula theme: Set correcting color 2022-02-16 10:14:53 +01:00
JC Brand
39e9ed8fe4 Updates #2733
Rather use `false` for a bool
2022-02-15 14:48:01 +01:00
JC Brand
22a7e1b35f Updates #2733
Set `is_error` to back to undefined
2022-02-15 14:46:00 +01:00
JC Brand
9a95c2d048 Normalize URL path
Udates #2814

Otherwise `"` gets escaped as `&quot;` by lit-html which is not correct.
2022-02-15 14:38:40 +01:00
JC Brand
9a2424fa26 Fixes #2814. Links are mangled on open/copy 2022-02-15 14:10:40 +01:00
JC Brand
b44e1c82f0 Updates #2733
- Clear timer when a messages changes from epehemeral to non-ephemeral
- Set MUC occupant on `groupchat` message when `type` changes to `groupchat` (from `error`)
- Set roster contact on `chat` message when `type` changes to `chat` (from `error`)

Thanks @afriedmanGlacier
2022-02-15 12:23:46 +01:00
JC Brand
a07bd7c817 Use SVG icons for refresh button and toggle switch 2022-02-15 11:17:41 +01:00
JC Brand
85d75a5494 Fixes #2745. Wraps MUC details in converse-rich-text
Also fixed an issue where the `config` model on the MUC wasn't being
properly persisted and fetched.
2022-02-15 11:17:33 +01:00
JC Brand
a2c7e83812 Take offset into account when parsing text for URLs 2022-02-14 19:08:26 +01:00
JC Brand
7c7b667745 MUC: Register handler to parse for commands in the plugin index.js 2022-02-14 15:17:05 +01:00
JC Brand
38519a6261 Updates #2733
Properly handle the same OMEMO message being recieved twice, with the
2nd one failing to decrypt.
2022-02-14 12:59:49 +01:00
JC Brand
f6c524f760 Move MUC modals to the muc-views plugin 2022-02-14 12:59:49 +01:00
JC Brand
0fb4dcac96 Translated using Weblate (Spanish)
Currently translated at 90.1% (460 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/es/
2022-02-10 14:24:06 +01:00
Xosé M
caf8360745 Translated using Weblate (Galician)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/gl/
2022-02-10 14:24:06 +01:00
Dalde Pro
ea63c9a17d Translated using Weblate (Spanish)
Currently translated at 90.1% (460 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/es/
2022-02-10 14:24:06 +01:00
ButterflyOfFire
6a293de86b Translated using Weblate (Arabic)
Currently translated at 74.3% (379 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/ar/
2022-02-10 14:24:06 +01:00
translator
5caa5aa9ae Translated using Weblate (French)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/fr/
2022-02-10 14:24:06 +01:00
Yaron Shahrabani
b8487cfaa6 Translated using Weblate (Hebrew)
Currently translated at 73.3% (374 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/he/
2022-02-10 14:24:06 +01:00
aitzol berasategi
203afea72b Translated using Weblate (Basque)
Currently translated at 99.8% (509 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/eu/
2022-02-10 14:24:06 +01:00
JC Brand
7f40d1a2f2 Fix #2627 2022-02-10 13:36:22 +01:00
JC Brand
47f3109957 Dracula: Set colors for unread messages indicator and nickname autocomplete 2022-02-10 13:03:47 +01:00
JC Brand
066d29d637 Fix alignment of close button for MUC sidebar 2022-02-10 12:09:02 +01:00
JC Brand
12a2354d9e CSS: Fix chat heading colors 2022-02-09 21:38:30 +01:00
JC Brand
d8f6a16936 Avoid unnecessary call to requestUpdate and use updateComplete 2022-02-09 21:22:38 +01:00
JC Brand
8a9e0f6d23 CSS fix for emoji picker when there are no search results 2022-02-09 20:47:29 +01:00
JC Brand
f4fdc36d31 Add modal for changing your nickname...
once you're already in a MUC.
2022-02-09 20:05:30 +01:00
JC Brand
ba52defdae Move nickname tests into a new file 2022-02-09 20:05:30 +01:00
JC Brand
505416a59e Let bookmarks be created/removed via a modal 2022-02-09 20:05:30 +01:00
JC Brand
9d250c3cbf Fix failing test due to converse-icon being used 2022-02-09 20:05:30 +01:00
JC Brand
46e6cfb0d4 Fix some failing tests after #2803 2022-02-09 20:05:30 +01:00
afriedmanGlacier
3d8a583101
Wait for parseMessages before queuing to UI (#2803)
* parse messages before queuing

* update CHANGES

* remove unused variable

Co-authored-by: aFriedmanGlacier <afriedman@glaciersecurity.com>
2022-02-05 22:02:24 +01:00
JC Brand
337638034f Fix TypeError when trying to use @converse/headless
Fixes #2788
2022-02-03 12:39:59 +01:00
JC Brand
0f648ed1eb Don't re-initialize OMEMO on reconnection
Promises only get recreated upon logout, not reconnection.

However OMEMO was getting re-initialized on reconnection and
`_converse.omemo_store` was also deleted.

This caused a race condition where an incoming MAM message would cause
`parseEncryptedMessage` that then throws an AttributeError because
`_converse.omemo_store` is undefined because OMEMO isn't yet
initialized.

Waiting for the `OMEMOInitialized` promise doesn't help because it's
still the old (already resolved) promise from before the reconnection.
2022-02-02 23:18:45 +01:00
JC Brand
d3fa925bff Move reconnection code to Connection class
And avoid calling `tearDown` twice
2022-02-02 13:53:05 +01:00
JC Brand
bef2cbb462 Use SVG icons and tweak message padding 2022-01-31 23:00:26 +01:00
Rob j Loranger
125f45c447
increase stanza timeout to 20s (#2799)
* increase stanza timeout to 20s

fixes issues with higher latency connections timing out fetching stanzas
2022-01-31 12:06:30 +01:00
JC Brand
817b1200ca CSS: fix hover color 2022-01-29 12:29:54 +01:00
JC Brand
8dcacd41bf Add hover color for svg icons 2022-01-29 12:12:36 +01:00
JC Brand
2e9f478c87 CSS: tweak padding for avatar in message 2022-01-29 11:46:02 +01:00
JC Brand
b13c674047 Show encrypted lock icon in message as svg 2022-01-29 11:31:09 +01:00
JC Brand
dd539c7675 CSS: fix unread msgs indicator in Dracula theme
Also try to create some initial structure with the CSS properties to
make theming easier
2022-01-29 11:19:00 +01:00
JC Brand
818ad0955a Add ability to switch between dark and light modes 2022-01-28 21:20:12 +01:00
JC Brand
ac473fd297 Add dark theme Dracula
https://draculatheme.com
2022-01-28 20:28:48 +01:00
JC Brand
11bbbb4899 Create separate theme files 2022-01-28 12:43:24 +01:00
JC Brand
0d0ee294ad Don't fetch vcard if failed attempt was already made today 2022-01-28 12:43:24 +01:00
JC Brand
7c51147023 Use the parseMessageForCommands hook to also parse MUC commands
Also fix issue where `model.getAllowedCommands()` prevents 3rd party
implementations.
2022-01-28 12:40:21 +01:00
JC Brand
003a90c71c Don't explicitly trigger the hook parseMessageForCommands
inside `parseMessageForMUCCommands`.

If the function doesn't find any core MUC commands, it calls
`parseMessageForCommands` which will trigger the hook.

I think it's appropriate to give built-in commands preference above
commands by 3rd party plugins and this also solves the issue of the hook
being triggered twice (once in `parseMessageForMUCCommands` and
then again in `parseMessageForCommands`).
2022-01-27 19:12:35 +01:00
JC Brand
d06761e2a8 Fix failing tests 2022-01-27 19:12:35 +01:00
Dele Olajide
c83cc69cef Implement new hook parseMessageForCommands for plugins to add custom commands 2022-01-27 14:34:20 +01:00
JC Brand
351212cd13 Move webpack files into dir 2022-01-27 13:08:40 +01:00
JC Brand
007b4bce2f Set BOSH wait period to 59 seconds also when attaching to a session 2022-01-25 13:13:14 +01:00
JC Brand
46a5a64dda Set id on MUC join presence
This is necessary for the Bifrost Matrix-XMPP bridge
2022-01-25 13:07:03 +01:00
JC Brand
72eb9d9595 Bump Strophe version 2022-01-21 20:25:01 +01:00
JC Brand
ba6da97416 Fix syntax error in po file 2022-01-12 11:17:58 +01:00
JC Brand
fab83139f8 Translated using Weblate (Afrikaans)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/af/
2022-01-10 15:19:05 +01:00
wroot
16626c80a7 Update Lithuanian (LT) translation 2022-01-10 14:54:27 +01:00
Andrey
c809141ee6 Translated using Weblate (Russian)
Currently translated at 98.2% (501 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/ru/
2022-01-10 14:54:02 +01:00
Reza Almanda
53df0f8942 Translated using Weblate (Indonesian)
Currently translated at 66.2% (338 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/id/
2022-01-10 14:54:02 +01:00
ssantos
17678f06f6 Translated using Weblate (Portuguese)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/pt/
2022-01-10 14:54:02 +01:00
Anas Yaseen
5da069d585 Translated using Weblate (Arabic)
Currently translated at 73.7% (376 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/ar/
2022-01-10 14:54:02 +01:00
Xosé M
10264e1647 Translated using Weblate (Galician)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/gl/
2022-01-10 14:54:02 +01:00
Allan Nordhøy
900bb11fb0 Translated using Weblate (Norwegian Bokmål)
Currently translated at 70.7% (361 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/nb_NO/
2022-01-10 14:54:02 +01:00
Wie Paw
1b3ab06614 Translated using Weblate (Polish)
Currently translated at 96.8% (494 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/pl/
2022-01-10 14:54:02 +01:00
aitzol berasategi
a20188e7a8 Translated using Weblate (Basque)
Currently translated at 86.0% (439 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/eu/
2022-01-10 14:54:02 +01:00
random r
d55fc92c1c Translated using Weblate (Italian)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/it/
2022-01-10 14:54:02 +01:00
nautilusx
0a9444c41b Translated using Weblate (German)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/de/
2022-01-10 14:54:02 +01:00
nautilusx
7ebb35d80c Translated using Weblate (German)
Currently translated at 99.4% (507 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/de/
2022-01-10 14:54:02 +01:00
Eric
cada8146b6 Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/zh_Hans/
2022-01-10 14:54:02 +01:00
Oğuz Ersen
68bcf51ed8 Translated using Weblate (Turkish)
Currently translated at 99.6% (508 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/tr/
2022-01-10 14:54:02 +01:00
Xosé M
ed089d0546 Translated using Weblate (Galician)
Currently translated at 100.0% (510 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/gl/
2022-01-10 14:54:02 +01:00
JC Brand
6ee3ddbc8c Make sure we're connected to MUC before sending status update 2021-12-17 20:55:57 +01:00
JC Brand
c3aafdf341 Fix TypeError and remove tab 2021-12-17 20:55:52 +01:00
JC Brand
4dc78c3742 Bump to Strophe 1.4.3 2021-12-17 17:27:03 +01:00
Dele Olajide
ee4ab47442 corrected as advised 2021-12-16 15:44:43 +01:00
Dele Olajide
4bb4f932cf fix #2751 - Media not rendered when Converse runs in a browser extension 2021-12-16 15:44:43 +01:00
JC Brand
f25f110e0e Avoid infinite loop when BOSH URL returns 404 2021-12-11 12:37:02 +01:00
JC Brand
e9ae5306e3 Bugfix. Avoid calling this.authenticate twice in one method 2021-12-11 12:28:04 +01:00
JC Brand
8ad097f23f Catch and log parser errors 2021-12-10 22:57:33 +01:00
JC Brand
048560908e Login form: Allow user to choose the connection URL
if `websocket_url` and `bosh_service_url` are not set and XEP-0156
lookup was unsuccessful.
2021-12-10 22:57:33 +01:00
JC Brand
0dee9897dd Use CustomElement instead of ElementView for login form 2021-12-10 22:57:33 +01:00
JC Brand
a673086941 Rename loginpanel to loginform
Run prettier and move constants to `constants.js`
2021-12-10 22:57:33 +01:00
JC Brand
b16d035975 Move setUserJID to init.js 2021-12-10 22:57:33 +01:00
JC Brand
dc66c3a101 Make sure converse.initialize still returns a Promise 2021-11-30 16:11:52 +01:00
JC Brand
47bab27f7b Fix JSDoc syntax error and update RELEASE.md 2021-11-29 10:11:56 +01:00
JC Brand
077162529d Release 9.0.0 2021-11-29 10:00:38 +01:00
Siddhesh Mhadnak
32bc8917ab Translated using Weblate (Marathi)
Currently translated at 5.5% (28 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/mr/
2021-11-29 09:35:28 +01:00
Kiiryth X
b418db5643 Translated using Weblate (Bulgarian)
Currently translated at 32.0% (163 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/bg/
2021-11-29 09:35:28 +01:00
Siw Falch
1c247969b4 Translated using Weblate (Norwegian Bokmål)
Currently translated at 71.1% (362 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/nb_NO/
2021-11-29 09:35:28 +01:00
Eric
c178cbbcd8 Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (509 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/zh_Hans/
2021-11-29 09:35:28 +01:00
52871299hzy
d31f1ce317 Translated using Weblate (Chinese (Simplified))
Currently translated at 99.2% (505 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/zh_Hans/
2021-11-29 09:35:28 +01:00
random r
209bea2fcc Translated using Weblate (Italian)
Currently translated at 100.0% (509 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/it/
2021-11-29 09:35:28 +01:00
Kim Alvefur
c820920b2c Translated using Weblate (Swedish)
Currently translated at 99.0% (504 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/sv/
2021-11-29 09:35:28 +01:00
Quentin PAGÈS
ed7efb2c61 Translated using Weblate (Occitan)
Currently translated at 80.5% (410 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/oc/
2021-11-29 09:35:28 +01:00
random r
801a21e049 Translated using Weblate (Italian)
Currently translated at 99.0% (504 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/it/
2021-11-29 09:35:28 +01:00
52871299hzy
a8a397d8b2 Translated using Weblate (Chinese (Simplified))
Currently translated at 97.0% (494 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/zh_Hans/
2021-11-29 09:35:28 +01:00
Ali Frh
bdc7390eca Translated using Weblate (Persian)
Currently translated at 23.9% (122 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/fa/
2021-11-29 09:35:28 +01:00
Nikita Epifanov
0f99d4833e Translated using Weblate (Russian)
Currently translated at 98.6% (502 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/ru/
2021-11-29 09:35:28 +01:00
Jakub Tabor
b96150a629 Translated using Weblate (Polish)
Currently translated at 92.3% (470 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/pl/
2021-11-29 09:35:28 +01:00
Emmanuel Gil Peyrot
6001273c6f Translated using Weblate (French)
Currently translated at 100.0% (509 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/fr/
2021-11-29 09:35:28 +01:00
Oğuz Ersen
430f1f5a0e Translated using Weblate (Turkish)
Currently translated at 100.0% (509 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/tr/
2021-11-29 09:35:28 +01:00
Gediminas Murauskas
128079f2a4 Translated using Weblate (Lithuanian)
Currently translated at 64.0% (326 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/lt/
2021-11-29 09:35:28 +01:00
Xosé M
8efafc7c25 Translated using Weblate (Galician)
Currently translated at 100.0% (509 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/gl/
2021-11-29 09:35:28 +01:00
nautilusx
20666a334e Translated using Weblate (German)
Currently translated at 100.0% (509 of 509 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/de/
2021-11-29 09:35:28 +01:00
JC Brand
c81841e036 Fix margin issues at different viewport sizes 2021-11-26 09:52:52 +01:00
JC Brand
3d74ed31c2 Fixes #2683, Updates #1317 2021-11-24 22:44:02 +01:00
JC Brand
1a6a7ade73 Fixes #2715 2021-11-24 21:52:40 +01:00
JC Brand
ee4e056125 Fixes #2718: Message is not displayed if it contains an invalid URL 2021-11-24 21:43:20 +01:00
JC Brand
e4da0f894d MUC: Make info messages ephemeral
Otherwise they pollute the history and it's not easy to dedupe them
because they can be created before the MAM history is fetched.
2021-11-24 21:28:11 +01:00
JC Brand
284eccf047 Create converse-omemo-profile component
Removes the need to override the ProfileModal
2021-11-24 21:14:11 +01:00
JC Brand
bad2577e5e OMEMO Refactoring
When calling `getDeviceList`, wait for the devices to be fetched

Otherwise a race condition might occur, whereby a new device gets
created in the collection, and then removed again as the collection is
replaced with the values fetched from the browser-storage cache.

Also created `converse-omemo-fingerprints` component to asynchronously
render fingerprints in the user details modal. Was done as part of this
commit because due to `getDeviceList` being async, the relevant test for
the modal were also failing
2021-11-24 21:14:11 +01:00
JC Brand
9b1a7c70a3 Wait on OMEMOInitialized promise...
before parsing message stanza for encryption parameters.

Otherwise we might not know what our own device-id/sid is, and therefore
can't decrypt the incoming message.

Fixes #2733
2021-11-24 21:14:11 +01:00
JC Brand
a06d180827 Could not find dependency "converse-controlbox" for plugin "converse-muc"
Fixes #2423
2021-11-21 12:13:13 +01:00
JC Brand
2af758e66d Not sending headers with upload request
Fixes #2728
2021-11-21 11:56:53 +01:00
JC Brand
fa562cabae Don't fetch member list if not affiliated
Fixes #1426
2021-11-21 11:05:23 +01:00
JC Brand
07b2425ff9 Don't show unnecessary errors for undecryptable OMEMO messages
As mentioned in the XEP, don't show error messages for OMEMO messages
that can't be decrypted because they were already decrypted before or
because they weren't encrypted for this device.
2021-11-20 13:43:27 +01:00
JC Brand
d48d748e30 Don't cache the most recent message.
Since messages are ordered by time, the call to get it isn't very
expensive and by not caching we avoid getting a stale cache value
2021-11-20 13:43:27 +01:00
JC Brand
33f3cb76ad Use the extended MAM message data to get the sender's real JID
That solves the problem of not being able to look up OMEMO session data
from incoming MAM messages.

See here: https://github.com/conversejs/converse.js/issues/2241#issuecomment-974626847

Updates #2241
2021-11-20 12:50:25 +01:00
JC Brand
78846ab984 Fix: don't show avatars for followup messages 2021-11-19 23:05:16 +01:00
JC Brand
afbb46bd8c Add converse-image custom element
And use that to render images in unfurls.

This solves the issue of github URL unfurl images not having an image
extension and then being rendered as a hyperlink by `converse-rich-text`.

Instead, we know that it's supposed to be a url, so we just use `converse-image`.
2021-11-19 22:32:46 +01:00
JC Brand
ed63902ac1 Send presence status change to all connected MUCs
Fixes #2725
2021-11-19 21:26:35 +01:00
JC Brand
35947e3d62 Show avatars in MUC occupants sidebar
Fixes #1322

(Also clean up some loose threads)
2021-11-19 21:08:51 +01:00
JC Brand
bdac6f1b47 Split vcard plugin up into multiple files 2021-11-19 13:42:59 +01:00
Andy Friedman
c76e6fb86b Compress new avatar images 2021-11-19 13:01:09 +01:00
JC Brand
664f290001 Use converse-avatar for setting avatar 2021-11-19 13:01:09 +01:00
JC Brand
c62ea03e2e Use converse-avatar for roster items 2021-11-19 13:01:09 +01:00
JC Brand
8db12e61bf Use converse-avatar and fix bug...
where avatar didn't show in 1:1 chat heading (due to a race condition)
2021-11-19 11:07:09 +01:00
JC Brand
f36c3fefdd Fix the MUC occupant modal and add more info
Fixes #1419
2021-11-19 11:07:09 +01:00
JC Brand
a5b73f0309 Create the converse-avatar custom element 2021-11-19 10:00:04 +01:00
JC Brand
e347621dc8 Add JSDoc example 2021-11-17 09:42:38 +01:00
JC Brand
1ee75b78b7 Replace more font icons with svg icons
Updates #1004
2021-11-14 22:53:04 +01:00
JC Brand
ecfc3e9fcf Implement support for XEP-0421 occupant ids
This let's us populate the `from_real_jid` attribute for messages in
cases where the user's nickname has changed.

Only save the occupant-id if the MUC supports it

Store all advertised features on the `chatbox.features` model.
This allows us to look up a feature without using the async
`disco.supports` API.

Updates #2241
2021-11-06 22:25:02 +01:00
JC Brand
a60127e66f Avoid possible exception when leaving/reconnecting in a MUC
- Unregister nickname before sending unavailable presence
- Send unavailable presence before destroying state
- Call `leave` after unregistering, otherwise the disco entry for the MUC gets removed in `leave` while it's still necessary to unregister
- Wrap `this.leave` in  try/except in `onConnectionStatusChanged` handler
- Add new MUC connection status, `CLOSING` to avoid `this.leave()` being called when `hidden` gets set to `true` while the MUC is in the process of being closed.
2021-11-04 19:21:29 +01:00
JC Brand
2fb8ea3ea0 Only register new nick if auto_register_muc_nickname is set 2021-10-30 21:30:53 +02:00
John Spurlock
1c6ada4af8 Fix send button not working in a muc room
Was looking at the wrong form
2021-10-30 21:16:11 +02:00
JC Brand
ca02bdcb61 Bugfix. Use real JID when setting up a device session in a MUC
Thanks to @orbitz, see: https://github.com/conversejs/converse.js/issues/1481#issuecomment-509183431

Updates #1481
2021-10-30 21:14:11 +02:00
JC Brand
90d93b364a Reregister nick when changing it in a members-only MUC 2021-10-30 20:56:23 +02:00
JC Brand
6177afd5b1 MUC: Don't send markers for non-groupchat messages.
I noticed that a marker was sent for an error message (created due to an
unencryptable OMEMO messages), and this caused the user to be kicked
from the MUC.
2021-10-30 20:56:23 +02:00
JC Brand
5abec5bff0 Remove tabs 2021-10-30 20:56:23 +02:00
Kim Alvefur
ec792abbda Map XEP-0122 data types to HTML5 form field types
This should invoke nicer UI some browsers have for certain types, like numbers.
2021-10-26 11:57:05 +02:00
Kim Alvefur
6890da11ed Factor out input field type mapping into a function to allow modified logic 2021-10-26 11:57:05 +02:00
JC Brand
1b31e80f25 Render MEP message reason as rich text 2021-10-21 10:43:24 +02:00
JC Brand
d2a33bc210 Add the ability to retract XEP-0316 MEP messages 2021-10-20 17:49:58 +02:00
JC Brand
3cfdf4c946 Fix trimming of chats in overlayed view mode 2021-10-14 17:49:20 +02:00
JC Brand
5a7f16b6f9 Bugfix. 'closed' value only relevant in overlayed view mode 2021-10-14 16:15:17 +02:00
JC Brand
32e521fdc7 Bugfix. MEP messages appear at bottom when returned from MAM 2021-10-13 21:14:57 +02:00
JC Brand
521f3d88d2 Move MUC MAM tests into a new file 2021-10-13 20:01:09 +02:00
JC Brand
cf8522b1ef Fix attribute error 2021-10-04 10:56:13 +02:00
JC Brand
6cff47c6d8 Remove muc_ogp_show_unfurls setting
And instead use the `render_media` setting to determine whether unfurls
should be shown.
2021-10-01 13:22:17 +02:00
JC Brand
366932e999 Allow render_media setting to be an array of domains
This allows for more flexibility in configuring which media URLs will
automatically render and which media URLs may be manually rendered by
the user (via the message actions dropdown).

For example, suppose you want to automatically render all media URLs
from https://xmpp.org, but still allow other media (which won't render
by default) to be rendered manually by the user (by clicking the "Show
URL previews" message dropdown action).

In this case, you set `render_media` to `['xmpp.org']` and
`allowed_image_domains` to `null` or `undefined`.

Or if you want to automatically render images from xmpp.org, and
restrict the domains users might manually click to render, you can add
those extra domains to `allowed_image_domains`.
2021-09-30 16:30:30 +02:00
JC Brand
be2ded3b7e No need to pass in render_media as a prop 2021-09-29 13:19:00 +02:00
JC Brand
1809e38911 Move isUniView function to utils 2021-09-29 12:03:21 +02:00
JC Brand
06ec539839 Update lit imports 2021-09-29 11:20:14 +02:00
JC Brand
84c6a0039c Fix embedded, singleton mode.
It's now necessary to add a `converse-root` element in the DOM where you
want Converse to render (previously it was any element with the id
`#conversejs`).

Also, turned `converse-chats` element into a Lit element and re-render
`converse-root` and `converse-chats` when the `view-mode` or `singleton`
settings change. This is a step towards being able to change the view
mode on the fly and have the entire chat re-render appropriately.

Fixes #2647
2021-09-24 11:53:49 +02:00
JC Brand
5ff57258ec Fix nickname form width 2021-09-23 22:31:30 +02:00
JC Brand
d4f6b040f3 Bugfix. Read jid from settings
Now that app settings are now longer saved directly on the `_converse` object
2021-09-23 22:27:49 +02:00
JC Brand
1104b28758 Bugfix. URL is passed in, not object 2021-09-23 21:56:32 +02:00
JC Brand
881a9a6d27 Re-render message if relevant config settings change 2021-09-23 21:50:24 +02:00
JC Brand
48f37aa1c0 Call initialize in CustomElement's connectedCallback method 2021-09-23 14:25:42 +02:00
JC Brand
7f2ab05f97 Move tests to separate file 2021-09-22 16:45:57 +02:00
JC Brand
de092f8f00 Emit events on the settings object
instead of on a separate object
2021-09-22 16:36:28 +02:00
JC Brand
9e48fdc91c Emit an event when a configuration setting gets changed 2021-09-21 17:08:30 +02:00
JC Brand
05dcb4e8d7 Breaking change: stop setting config variables on the _converse object 2021-09-21 17:08:30 +02:00
JC Brand
864e8910c4 Move settings related files into one directory 2021-09-21 17:08:30 +02:00
JC Brand
efafc2d691 Allow media to be invidually shown/rendered...
even if the global configuration is to disallow it.

* When parsing, include all media URLs, not just the ones from allowed domains.
  That makes it possible to change allowed domains on-the-fly,
  while still allowing media in individual messages to be shown manually
  (via the message actions dropdown).
* Merge `embed_audio`, `embed_video` and `show_images_inline` into `render_media`
* Create new config settings for allowable domains for images, video and audio
* Check the URL domain against a whitelist for the message actions dropdown
2021-09-21 17:08:30 +02:00
JC Brand
ed490fc202 Create directory for modal plugin 2021-09-20 11:13:26 +02:00
ayu
ae6dbeb287 Update vcard.js
Example code wouldn't work anymore.
2021-09-18 21:59:17 +02:00
JC Brand
75fee76693 Fixes #2650 2021-09-14 22:27:49 +02:00
JC Brand
caffcaaef2 Move occupant-related tests into new file 2021-09-14 22:03:10 +02:00
JC Brand
2b7624e622 Make sure all files are used when generating API docs 2021-09-14 15:04:12 +02:00
JC Brand
ad501d4309 Avoid AttributeError when _converse.disco_entities is undefined 2021-09-13 14:23:46 +02:00
Ariel Fuggini
d44abbb48e
Adds hook to fetchLoginCredentials function (#2640)
* Adds hook to fetchLoginCredentials function

* Adds documentation
2021-09-10 16:12:46 +02:00
JC Brand
40a49042e9 Postrelease 2021-09-09 22:43:37 +02:00
JC Brand
6b3f8a3f39 Release 8.0.1 2021-09-09 22:09:26 +02:00
Allan Nordhøy
2c1d6e3ecb Translated using Weblate (Norwegian Bokmål)
Currently translated at 70.9% (362 of 510 strings)

Translation: Converse.js/Translations
Translate-URL: https://hosted.weblate.org/projects/conversejs/translations/nb_NO/
2021-09-09 21:45:42 +02:00
JC Brand
906a606010 Get rid of unnecessary specificity and functions 2021-09-09 11:35:00 +02:00
JC Brand
ef2c206507 Fix failing test 2021-09-09 11:12:31 +02:00
JC Brand
b78c19f6f2 Fix showing of HTML5 notifications for MEP messages 2021-09-08 17:30:30 +02:00
JC Brand
8aa16ea0be Fix broken import 2021-09-08 10:52:37 +02:00
JC Brand
8d01d7a710 Use optional chaining and update changelog 2021-09-08 10:35:46 +02:00