Denis 3 lat temu
commit
346b78aee1
100 zmienionych plików z 31308 dodań i 0 usunięć
  1. 1774 0
      CHANGES.md
  2. 12 0
      COPYRIGHT
  3. 373 0
      LICENSE
  4. 250 0
      Makefile
  5. 193 0
      README.md
  6. 19 0
      RELEASE.md
  7. 15 0
      buildout.cfg
  8. 10 0
      composer.json
  9. 23 0
      converse-logs/README.md
  10. 5 0
      converse-logs/converse-logs.js
  11. 288 0
      conversejs.doap
  12. 127 0
      demo/anonymous.html
  13. 103 0
      demo/embedded.html
  14. 113 0
      demo/index.html
  15. 46 0
      dev.html
  16. 6 0
      dist/converse.css
  17. 0 0
      dist/converse.css.map
  18. 26760 0
      dist/converse.js
  19. 0 0
      dist/converse.js.map
  20. 6 0
      dist/converse.min.css
  21. 0 0
      dist/converse.min.css.map
  22. 1 0
      dist/converse.min.js
  23. 371 0
      dist/converse.min.js.LICENSE.txt
  24. 0 0
      dist/converse.min.js.map
  25. 6 0
      dist/emojis.js
  26. BIN
      dist/images/custom_emojis/converse.png
  27. BIN
      dist/images/custom_emojis/xmpp.png
  28. BIN
      dist/images/favicon.ico
  29. BIN
      dist/images/logo/conversejs-filled-192.png
  30. 90 0
      dist/images/logo/conversejs-filled-192.svg
  31. BIN
      dist/images/logo/conversejs-filled-512.png
  32. 310 0
      dist/images/logo/conversejs-filled-512.svg
  33. 19 0
      dist/images/logo/conversejs-filled.svg
  34. 6 0
      dist/locales/af-LC_MESSAGES-converse-po.js
  35. 6 0
      dist/locales/ar-LC_MESSAGES-converse-po.js
  36. 6 0
      dist/locales/bg-LC_MESSAGES-converse-po.js
  37. 6 0
      dist/locales/ca-LC_MESSAGES-converse-po.js
  38. 6 0
      dist/locales/cs-LC_MESSAGES-converse-po.js
  39. 6 0
      dist/locales/da-LC_MESSAGES-converse-po.js
  40. 11 0
      dist/locales/dayjs/af-js.js
  41. 1 0
      dist/locales/dayjs/af-js.js.map
  42. 11 0
      dist/locales/dayjs/am-js.js
  43. 1 0
      dist/locales/dayjs/am-js.js.map
  44. 11 0
      dist/locales/dayjs/ar-dz-js.js
  45. 1 0
      dist/locales/dayjs/ar-dz-js.js.map
  46. 11 0
      dist/locales/dayjs/ar-iq-js.js
  47. 1 0
      dist/locales/dayjs/ar-iq-js.js.map
  48. 11 0
      dist/locales/dayjs/ar-js.js
  49. 0 0
      dist/locales/dayjs/ar-js.js.map
  50. 11 0
      dist/locales/dayjs/ar-kw-js.js
  51. 1 0
      dist/locales/dayjs/ar-kw-js.js.map
  52. 11 0
      dist/locales/dayjs/ar-ly-js.js
  53. 1 0
      dist/locales/dayjs/ar-ly-js.js.map
  54. 11 0
      dist/locales/dayjs/ar-ma-js.js
  55. 1 0
      dist/locales/dayjs/ar-ma-js.js.map
  56. 11 0
      dist/locales/dayjs/ar-sa-js.js
  57. 1 0
      dist/locales/dayjs/ar-sa-js.js.map
  58. 11 0
      dist/locales/dayjs/ar-tn-js.js
  59. 1 0
      dist/locales/dayjs/ar-tn-js.js.map
  60. 11 0
      dist/locales/dayjs/az-js.js
  61. 1 0
      dist/locales/dayjs/az-js.js.map
  62. 11 0
      dist/locales/dayjs/be-js.js
  63. 1 0
      dist/locales/dayjs/be-js.js.map
  64. 11 0
      dist/locales/dayjs/bg-js.js
  65. 1 0
      dist/locales/dayjs/bg-js.js.map
  66. 11 0
      dist/locales/dayjs/bi-js.js
  67. 1 0
      dist/locales/dayjs/bi-js.js.map
  68. 11 0
      dist/locales/dayjs/bm-js.js
  69. 1 0
      dist/locales/dayjs/bm-js.js.map
  70. 5 0
      dist/locales/dayjs/bn-bd-js.js
  71. 0 0
      dist/locales/dayjs/bn-bd-js.js.map
  72. 11 0
      dist/locales/dayjs/bn-js.js
  73. 0 0
      dist/locales/dayjs/bn-js.js.map
  74. 5 0
      dist/locales/dayjs/bo-js.js
  75. 0 0
      dist/locales/dayjs/bo-js.js.map
  76. 11 0
      dist/locales/dayjs/br-js.js
  77. 0 0
      dist/locales/dayjs/br-js.js.map
  78. 11 0
      dist/locales/dayjs/bs-js.js
  79. 1 0
      dist/locales/dayjs/bs-js.js.map
  80. 11 0
      dist/locales/dayjs/ca-js.js
  81. 1 0
      dist/locales/dayjs/ca-js.js.map
  82. 11 0
      dist/locales/dayjs/cs-js.js
  83. 0 0
      dist/locales/dayjs/cs-js.js.map
  84. 11 0
      dist/locales/dayjs/cv-js.js
  85. 1 0
      dist/locales/dayjs/cv-js.js.map
  86. 11 0
      dist/locales/dayjs/cy-js.js
  87. 1 0
      dist/locales/dayjs/cy-js.js.map
  88. 11 0
      dist/locales/dayjs/da-js.js
  89. 1 0
      dist/locales/dayjs/da-js.js.map
  90. 11 0
      dist/locales/dayjs/de-at-js.js
  91. 1 0
      dist/locales/dayjs/de-at-js.js.map
  92. 11 0
      dist/locales/dayjs/de-ch-js.js
  93. 1 0
      dist/locales/dayjs/de-ch-js.js.map
  94. 11 0
      dist/locales/dayjs/de-js.js
  95. 1 0
      dist/locales/dayjs/de-js.js.map
  96. 11 0
      dist/locales/dayjs/dv-js.js
  97. 0 0
      dist/locales/dayjs/dv-js.js.map
  98. 11 0
      dist/locales/dayjs/el-js.js
  99. 1 0
      dist/locales/dayjs/el-js.js.map
  100. 11 0
      dist/locales/dayjs/en-au-js.js

+ 1774 - 0
CHANGES.md

@@ -0,0 +1,1774 @@
+# Changelog
+
+## 9.1.1 (2022-05-05)
+
+- GIFs don't render inside unfurls and cause a TypeError
+- Improve how the `muc_domain` setting is populated via service discovery
+- Remove local (non-requesting) contacts not returned from a full roster response
+- Improve performance by looking up VCards via map instead of traversing an array
+- Fix infinite loop when receiving service discovery entities with a circular dependency
+- #1130: Display the room’s vCard-temp avatar
+- #2746: Always reply to all iqs, even those not understood
+- #2794: Some display problems with mobile view mode
+- #2868: Selected emoji is inserted into all open chat boxes
+
+Remove the very old and largely unused config option `allow_muc`.
+If you don't want MUC support, you can add `'converse-muc'` to the
+`blacklisted_plugins` setting.
+
+## 9.1.0 (2022-04-02)
+
+- Updated translations: af, ar, es, eu, fr, gl, he, lt
+- Increased stanza timeout from 10 to 20 seconds
+- Replace various font icons with SVG icons
+- Fix bug where MUC config wasn't persisted across page loads
+- Add support for calling the IndexedDB `getAll` method to speed up fetching models from storage.
+- #1761: Add a new dark theme based on the [Dracula](https://draculatheme.com/) theme
+- #2557: Allow OMEMO encrypted messages to be edited
+- #2627: Spoiler toggles only after switching to another tab and back
+- #2733: Fix OMEMO race condition related to automatic reconnection and SMACKS
+- #2733: Wait for decrypted/parsed message before queuing to UI
+- #2751: Media not rendered when Converse runs in a browser extension
+- #2754: Navigation keys doesn't work anymore into chat input message
+- #2781: Flashing error when connecting to a room
+- #2786: Fix webpack configuration not working on Windows OS
+- #2788: `TypeError` when trying to use `@converse/headless`
+- #2789: Implement new hook `parseMessageForCommands` for plugins to add custom commands
+- #2814: Links are mangled on open/copy
+- #2822: Singleton doesn't work in overlayed view mode
+
+- New config option [show_connection_url_input](https://conversejs.org/docs/html/configuration.html#show-connection-url-input)
+
+## 9.0.0 (2021-11-26)
+
+- Compress new avatar images before uploading them
+- Add initial support for XEP-0421 occupant Ids.
+- Use more specific types for form fields based on XEP-0122
+- Fix trimming of chats in overlayed view mode
+- OMEMO bugfix: Always create device session based on real JID.
+- If `auto_register_muc_nickname` is set, make sure to register when the user changes current nick.
+- #1322: Display occupants’ avatars in the occupants list
+- #1419: Clicking on avatar should show bigger version
+- #1426: Don't fetch member list if not affiliated
+- #2423: Could not find dependency "converse-controlbox" for plugin "converse-muc"
+- #2640: Add `beforeFetchLoginCredentials` hook
+- #2647: Singleton mode doesn't work
+- #2650: Clicking on occupant in sidebar should add nickname to textarea
+- #2683: Show error messages that don't refer to specific chat messages
+- #2704: Send button doesn't work in a multi-user chat
+- #2715: Singleton + fullscreen mode styling issue
+- #2718: Message is not displayed if it contains an invalid URL
+- #2725: Send new presence status to all connected MUCs
+- #2728: Not sending headers with upload request
+- #2733: OMEMO Messages received while client closed not decrypted
+
+- Emit a `change` event when a configuration setting changes
+- 3 New configuration settings:
+  - [render_media](https://conversejs.org/docs/html/configuration.html#render-media)
+  - [allowed_audio_domains](https://conversejs.org/docs/html/configuration.html#allowed-audio-domains)
+  - [allowed_video_domains](https://conversejs.org/docs/html/configuration.html#allowed-video-domains)
+  - [allowed_image_domains](https://conversejs.org/docs/html/configuration.html#allowed-image-domains)
+
+Three config settings have been obsoleted:
+  - embed_audio
+  - embed_video
+  - show_images_inline
+  - muc_show_ogp_unfurls
+
+### Breaking Changes
+
+Configuration settings are no longer available on the `_converse` object.
+Instead, use `api.settings.get` and `api.settings.set`.
+
+
+## 8.0.1 (2021-09-09)
+
+- #2326: 404 for asset /logo/conversejs-filled.svg
+- #2628: Open groupchats toggle emits an error
+- #2629: OMEMO button tooltip is wrong in private chat
+- #2633: Excessive logging of warning
+- #2634: Image previews not loading when not serving Converse locally
+- #2636: Don't fail when setting up a new XEP-0198 managed stream and `_converse.session` is undefined
+- Bugfix: Don't show minimized chats when logged out
+
+## 8.0.0 (2021-09-03)
+
+- Requires Node 12 or above
+
+### Issues and features
+
+- #1083: Add support for XEP-0393 Message Styling
+- #1182: Add support for XEP-0454 OMEMO Media sharing
+- #1823: New config options [mam_request_all_pages](https://conversejs.org/docs/html/configuration.html#mam-request-all-pages)
+- #2275: Allow punctuation to immediately precede a mention
+- #2348: `auto_join_room` not showing the room in `fullscreen` `view_mode`.
+- #2400: Fixes infinite loop bug when appending .png to allowed image urls
+- #2409: Integrate App Badging API for unread messages
+- #2464: New configuration setting [allow_url_history_change](https://conversejs.org/docs/html/configuration.html#allow-url-history-change)
+- #2497: Bugfix /nick command is not working
+- Add a Description Of A Project (DOAP) file
+- Add ability to deregister nickname when closing a MUC by setting `auto_register_muc_nickname` to `'unregister'`.
+- Add support for XEP-0437 Room Activity Indicators see [muc-subscribe-to-rai](https://conversejs.org/docs/html/configuration.html#muc-subscribe-to-rai)
+- Add support for rendering unfurls via [mod_ogp](https://modules.prosody.im/mod_ogp.html)
+- Bugfix: Connection protocol not updated based on XEP-0156 connection methods
+- Bugfix: Use real JID in XEP-0372 references only when the MUC is non-anonymous
+- Bugfix: `null` inserted by emoji picker and can't switch between skintones
+- File structure reordering: All plugins are now in `./plugins` folders.
+- Show a gap placeholder when there are gaps in the chat history. The user can click these to fill the gaps.
+- Use the MUC stanza id when sending XEP-0333 markers
+- Add support for pausing Gif images
+- Add limited support for XEP-0316 MUC notifications
+
+### New configuration setings
+
+- [show_tab_notifications](https://conversejs.org/docs/html/configuration.html#show-tab-notifications)
+- [muc_clear_messages_on_leave](https://conversejs.org/docs/html/configuration.html#muc-clear-messages-on-leave)
+- [send_chat_markers](https://conversejs.org/docs/html/configuration.html#send-chat-markers)
+- [muc_show_ogp_unfurls](https://conversejs.org/docs/html/configuration.html#muc-show-ogp-unfurls)
+- [prune-messages-above](https://conversejs.org/docs/html/configuration.html#prune-messages-above)
+- [pruning_behavior](https://conversejs.org/docs/html/configuration.html#pruning-behavior)
+
+### New hooks and events
+
+- New hook: [getMessageActionButtons](https://conversejs.org/docs/html/api/-_converse.html#event:getMessageActionButtons)
+- New hook: [shouldNotifyOfGroupMessage](https://conversejs.org/docs/html/api/-_converse.html#event:shouldNotifyOfGroupMessage)
+- New hook: [presenceConstructed](https://conversejs.org/docs/html/api/-_converse.html#event:presenceConstructed)
+- New event: [historyPruned](https://conversejs.org/docs/html/api/-_converse.html#event:historyPruned)
+
+### Breaking Changes
+
+The default persistent store, set via the [persistent_store](https://conversejs.org/docs/html/configuration.html#persistent-store),
+is now IndexedDB. This main advantage of using IndexedDB is that it doesn't
+have a fixed size limit. We don't provide a tool to migrate data from
+localStorage to IndexedDB. For almost all data this is not a problem since
+the data can be fetched again from the XMPP server. However,
+decrypted OMEMO messages cannot be fetched again from the server, since the
+double ratchet makes it impossible to again decrypt them. This means your
+decrypted OMEMO history will be lost in the transition.
+
+The [afterMessageBodyTransformed](https://conversejs.org/docs/html/api/-_converse.html#event:afterMessageBodyTransformed) and [beforeMessageBodyTransformed](https://conversejs.org/docs/html/api/-_converse.html#event:beforeMessageBodyTransformed) events now has a different signatures.
+When leaving a MUC, the message history is deleted. This means that decrypted
+OMEMO messages are gone and cannot be recovered on that device. See [muc_clear_messages_on_leave](https://conversejs.org/docs/html/configuration.html#muc-clear-messages-on-leave).
+
+Removed events:
+* `bookmarkViewsInitialized`
+* `chatBoxInsertedIntoDOM`
+* `contactStatusMessageChanged`
+* `messageSend` (use `sendMessage` instead)
+* `rosterGroupsFetched`
+
+The `chatBoxClosed`, `chatBoxMaximized` and `chatBoxMinimized` events now have the `model` as
+payload and not the `view`.
+
+The `api.chatviews` and `api.roomviews` API groupings and methods have been
+removed. The original "views" don't really exist anymore, the UI is now composed web
+components which should update reactively based on changes made on the models.
+
+## 7.0.6 (2021-06-11)
+
+- #2500: Wrong assignment in OMEMO code
+
+## 7.0.5 (2021-03-16)
+
+- #2377: The @converse/headless NPM package is missing the dist directory, causing import errors
+- #2396: @converse/headless wrongly depends on `CustomElement` from the view layer
+- #2381: Converse does not reflect the browser language
+
+## 7.0.4 (2020-12-09)
+
+Bugfix: Set protocol after discovering connection methods
+
+Otherwise if an endpoint was passed in with `converse.initialize`, then
+that endpoint's protocol is (potentially wrongly) used.
+
+## 7.0.3 (2020-12-02)
+
+- Bugfix: `null` inserted by emoji picker and can't switch between skintones
+
+
+## 7.0.2 (2020-11-23)
+
+- Updated translations: de, nb, gl, tr
+- Still more necessary files not included in the 7.0.1 NPM package, causing `Module not found` errors.
+- #2337: Newly opened headline chat isn't hidden by default
+
+## 7.0.1 (2020-11-19)
+
+- Updated translations: de, es, fi, fr, gl, hu, nb_NO, oc, pl, pt, pt_BR, ru, tr, uk, zh
+- #2328: Honor `use_system_emojis` in emoji-picker
+- Not all template/*.js files were included in the 7.0.0 NPM package, causing:
+  `Module not found: Error: Can't resolve 'templates/*.js'`
+
+## 7.0.0 (2020-11-18)
+
+*Note for plugin authors:*
+configuration settings should now be accessed via `_converse.api.settings.get` and not directly on the `_converse` object.
+Soon we'll deprecate the latter, so prepare now.
+
+- #515 Add support for XEP-0050 Ad-Hoc commands
+- #2231: add sort_by_query and remove sort_by_length
+- #1313: Stylistic improvements to the send button
+- #1481: MUC OMEMO: Error No record for device
+- #1490: Busy-loop when fetching registration form fails
+- #1535: Add option to destroy a MUC
+- #1715: Update chat state notification after receiving a message correction.
+- #1793: Send button doesn't appear in Firefox in 1:1 chats
+- #1820: Set focus on jid field after controlbox is loaded
+- #1822: Don't log error if user has no bookmarks
+- #1823: New config options [muc_roomid_policy](https://conversejs.org/docs/html/configuration.html#muc-roomid-policy)
+    and [muc_roomid_policy_hint](https://conversejs.org/docs/html/configuration.html#muc-roomid-policy-hint)
+- #1826: A user can now add himself as a contact
+- #1839: Headline messages are shown in controlbox
+- #1924: Configuring an ejabberd room fails
+- #1896: Don't send receipts for messages fetched from the archive
+- #1937: Editing a message removes the mentions highlight
+- #1963: Mentions are visually incorrect when used in message replies
+- #1999: Demarcate first unread message
+- #2002: fix rendering of `muc_roomid_policy_hint`
+- #2006: fix rendering of emojis in case `use_system_emojis == false`
+- #2028: Implement XEP-0333 `displayed` chat marker
+- #2101: Improve contrast of text in control box
+- #2187: Avoid merging initial settings with themselves every time settings are extended.
+- #2199: Fix BOSH session restore.
+- #2201: added html to converse.env
+- #2213: added CustomElement to converse.env
+- #2220: fix rendering of emojis in case `use_system_emojis == false` (again).
+- #2092: fixes room list update loop when having the `locked_muc_domain` truthy or `'hidden'`
+- #2259: Rename configuration setting `muc_show_join_leave` to `muc_show_info_messages`. Now accepts a list of events to show instead of a boolean.
+- #2285: Rename config option `muc_hats_from_vcard` to [muc_hats](https://conversejs.org/docs/html/configuration.html#muc-hats). Now accepts a list instead of a boolean and allows for more flexible choices regarding user badges.
+- #2300: Fix message reorder issue after message correction.
+- #2304: Custom emojis (stickers) images not shown
+- #2307: BootstrapModal is not accessible to plugins
+- #2308: Allow getHats method to be overriden in the `overrides` object in plugins.
+- #2321: When Converse runs inside a browser extension, enable browser sync and local storage for persistent storage
+- #1250: Change favicon color when unread messages
+- Updated translations: de, es, fi, fr, gl, hu, nb_NO, oc, pl, pt, pt_BR, ru, tr, uk, zh
+- The `trusted` configuration setting has been removed in favor of two new settings:
+    [allow_user_trust_override](https://conversejs.org/docs/html/configuration.html#allow-user-trust-override)
+    [clear_cache_on_logout](https://conversejs.org/docs/html/configuration.html#clear-cache-on-logout)
+- The `persistent_store` setting can now also be set to `sessionStorage`
+- The `api.archive.query` method no longer accepts an RSM instance as argument.
+- The plugin `converse-uniview` has been removed and its functionality merged into `converse-chatboxviews`
+- Removed the mockups from the project. Recommended to use tests instead.
+- The API method `api.settings.update` has been deprecated in favor of `api.settings.extend`.
+- The API methods under the `api.user.status` namespace are now asynchronous and need to be `await`ed.
+- Filter roster contacts via all available information (JID, nickname and VCard full name).
+- Allow ignoring of bootstrap modules at build using environment variable. For xample: `export BOOTSTRAP_IGNORE_MODULES="Modal,Dropdown" && make dist`
+- Bugfix. Handle stanza that clears the MUC subject
+- Replace Backbone with [Skeletor](https://github.com/skeletorjs/skeletor)
+- Start using [lit-html](https://lit-html.polymer-project.org/) instead of lodash for templating.
+- [muc_fetch_members](https://conversejs.org/docs/html/configuration.html#muc-fetch-members) now also accepts an array of affiliations to fetch.
+- Remove the configuration setting `muc_show_join_leave_status`. The optional status message is no longer shown at all.
+- Support for XEP-0156 is now enabled by default (which means that
+  [discover_connection_methods](https://conversejs.org/docs/html/configuration.html#discover-connection-methods) now has a default value of `true`).
+- [show_send_button](https://conversejs.org/docs/html/configuration.html#show-send-button) now has a default value of `true`.
+- The [api.confirm](https://conversejs.org/docs/html/api/-_converse.api.html#.confirm) method now accepts a list of fields and returns the filled in list upon confirmation.
+- New config option [allow_adhoc_commands](https://conversejs.org/docs/html/configuration.html#allow-adhoc-commands)
+- New config option [modtools_disable_assign](https://conversejs.org/docs/html/configuration.html#modtools-disable-assign)
+- New config option [modtools_disable_query](https://conversejs.org/docs/html/configuration.html#modtools-disable-query)
+- New config option [muc_hats_from_vcard](https://conversejs.org/docs/html/configuration.html#muc-hats-from-vcard).
+- New config option [muc_send_probes](https://conversejs.org/docs/html/configuration.html#muc-send-probes).
+- New config option [notify_nicknames_without_references](https://conversejs.org/docs/html/configuration.html#notify-nicknames-without-references).
+- New config option [show_message_avatar](https://conversejs.org/docs/html/configuration.html#show-message-avatar).
+- New public API [converse.insertInto](https://conversejs.org/docs/html/api/converse.html#.insertInto)
+
+## 6.0.0 (2020-01-09)
+
+- [enable_smacks](https://conversejs.org/docs/html/configuration.html#enable-smacks) is not set to `true` by default.
+- Refactor some presence and status handling code from `converse-core` into `@converse/headless/converse-status`.
+- It's now possible to navigate the emoji-picker via the keyboard arrow keys.
+
+- Add support for [notifications about affiliation change for users not in a room](https://xmpp.org/extensions/xep-0045.html#example-196)
+- Add support for [XEP-0424 Message Retraction](http://xmpps.org/extensions/xep-0424.html)
+- Add support for [XEP-0425 Message Moderation](http://xmpps.org/extensions/xep-0425.html)
+
+- New API [\_converse.api.headlines](https://conversejs.org/docs/html/api/-_converse.api.headlines.html#.get)
+- New config option [allow_message_retraction](https://conversejs.org/docs/html/configuration.html#allow-message-retraction)
+- New config option [muc-show-logs-before-join](https://conversejs.org/docs/html/configuration.html#muc-show-logs-before-join)
+- New config option [muc_mention_autocomplete_filter](https://conversejs.org/docs/html/configuration.html#muc-mention-autocomplete-filter)
+- New config option [muc_mention_autocomplete_show_avatar](https://conversejs.org/docs/html/configuration.html#muc-mention-autocomplete-show-avatar)
+- New config option [persistent_store](https://conversejs.org/docs/html/configuration.html#persistent-store)
+
+- Initial support for sending custom emojis. Currently only between Converse
+  instances. Still working out a wire protocol for compatibility with other clients.
+  To add custom emojis, edit the `emojis.json` file.
+
+- #129: Add support for [XEP-0156: Disovering Alternative XMPP Connection Methods](https://xmpp.org/extensions/xep-0156.html). Only XML is supported for now.
+- #1105: Support for storing persistent data in IndexedDB
+- #1253: Show contacts with unread messages at the top of the roster
+- #1322 Display occupants’ avatars in the occupants list
+- #1640: Add the ability to resize the occupants sidebar in MUCs
+- #1666: Allow scrolling of the OMEMO fingerprints list
+- #1691: Fix `collection.chatbox is undefined` errors
+- #1767: `credentials_url` is not called when logging out and then in again
+- #1764: Incorrect URI encoding in "mention" references
+- #1772: `_converse.api.contact.add(jid, nick)` fails, says not a function
+- #1791: `auto_focus` set to `false` is ignored when switching back to a MUC
+- #1792: Fix: modals don't have scrollbars
+- #1796: Don't show "back" arrow navigation (on mobile) in the chat header when in `singleton` mode
+- #1821: Errors caused by malformed URLs are now handled
+- #1819: Click on a desktop notification now opens corresponding chat.
+- #1836: MUC invites appear to come from the MUC name
+
+### Breaking changes
+
+- The ``debug`` configuration option has been replaced with [loglevel](https://conversejs.org/docs/html/configuration.html#loglevel).
+
+- In contrast to sessionStorage and localStorage, IndexedDB is an asynchronous database.
+  A lot of code that relied on database access to be synchronous had to be
+  updated to work with asynchronous access via promises.
+
+- In order to add support for XEP-0156, the XMPP connection needs to be created
+  only once we know the JID of the user that's logging in. This means that the
+  [connectionInitialized](https://conversejs.org/docs/html/api/-_converse.html#event:connectionInitialized)
+  event now fires much later than before. Plugins that rely on `connectionInitialized`
+  being triggered before the user's JID has been provided will need to be updated.
+
+- The following API methods now return promises:
+  * `_converse.api.chats.get`
+  * `_converse.api.chats.create`
+  * `_converse.api.rooms.get`
+  * `_converse.api.rooms.create`
+  * `_converse.api.roomviews.close`
+
+- Changes the events:
+  * The `chatBoxInitialized` event now triggers when a `_converse.ChatBox` (not the view) is opened.
+  * Renamed the old `chatBoxInitialized` to `chatBoxViewInitialized` and trigger only for `ChatBoxView` instances.
+  * Renamed `chatRoomOpened` event to `chatRoomViewInitialized`
+  * The order of certain events have now changed: `statusInitialized` is now triggered after `initialized` and `connected` and `reconnected`.
+
+- `_converse.api.chats.get()` now only returns one-on-one chats, not the control box or headline notifications.
+- The `show_only_online_users` setting has been removed.
+- `_converse.api.alert.show` is now `_converse.api.show` and instead of taking
+  an integer for the `type`, "info", "warn" or "error" should be passed in.
+- The `converse-headline` plugin has been split up into `converse-headlines` and `converse-headlines-view`.
+
+## 5.0.5 (2019-11-20)
+
+- Prevent editing of sent file uploads.
+- #1089: When filtering the roster for `online` users, show all non-offline users.
+- #1733: New message notifications for a minimized chat stack on top of each other
+- #1757: Chats are hidden behind the controlbox on mobile
+- #1760: Private messages no longer received after websocket reconnect
+
+## 5.0.4 (2019-10-08)
+
+- New config option [allow_message_corrections](https://conversejs.org/docs/html/configuration.html#allow-message-corrections)
+  which, if set to `last`, limits editing of sent messages to the last message sent.
+- Bugfix: Don't treat every duplicate message ID as a message correction; since some clients don't use globally unique ID's this causes false positives.
+- Bugfix: process stanzas from mam one-by-one in order to correctly process message receipts
+- #1712: `TypeError: plugin._features is not a function`
+- #1714: Don't notify the user in case we're receiving a message delivery receipt only
+- #1739: New config option [assets_path](https://conversejs.org/docs/html/configuration.html#assets-path)
+  which lets you set the path from which "chunks" are loaded.
+
+## 5.0.3 (2019-09-13)
+
+- Emit `chatBoxFocused` and `chatBoxBlurred` events for emoji picker input
+- SECURITY FIX: Reject unencapsulated forwarded messages, since we don't support XEP-0297 on its own
+
+## 5.0.2 (2019-09-11)
+
+- `po` translations files are now loaded via Webpack. As a result the `locales_url`
+  config option is now removed given that the path to the locale JSON files is now
+  determined by the webpack config and can't be changed at runtime.
+- The JSON representing emojis is now fetched asynchronously as a separate file `converse.emojis.js`.
+- Webpack is now configured with a `publicPath` set to `/dist/`. This is necessary
+  so that chunks (such as the emojis and locales JSON files) can be fetched asynchronously.
+  This means that all your assets need to be served at `/dist`. If you need to set a
+  different path, you'll need to set `publicPath` in `webpack.config.js` to
+  your preferred path and then rebuild all assets (e.g. `make dist`).
+- Use `listenTo` to avoid memory leaks when views get removed.
+- SECURITY FIX: Ignore MAM `chat` messages not sent from yourself
+- #1692 Bugfix: `TypeError: oldest_message is undefined`
+- #1704: SECURITY FIX: Impersonation by misusage of groupchat carbons
+- #1705: Bugfix: `this.roomspanel` is `undefined` after hibernating
+
+## 5.0.1 (2019-08-14)
+
+- Add a new GUI for moderator actions. You can trigger it by entering `/modtools` in a MUC.
+- Reconnect if the server doesn't respond to a `ping` within 10 seconds.
+- Don't query for MAM MUC messages before the cached messages have been restored (another cause of duplicate messages).
+- Show an error message and option to retry when fetching of the MAM archive times out
+- Bugfix: `TypeError: o.getAttribute is not a function converse-chatview.js` (can cause messages to not appear).
+- #1679: Room invitation fails with singleton and random server assigned room name
+
+## 5.0.0 (2019-08-08)
+
+- BOSH support has been moved to a plugin.
+- Support for XEP-0410 to check whether we're still present in a room
+- Initial support for the [CredentialsContainer](https://developer.mozilla.org/en-US/docs/Web/API/CredentialsContainer) web API
+- Allow for synchronous events. When a synchronous event is fired, Converse will
+  wait for all promises returned by the event's handlers to finish before continuing.
+- Properly handle message correction being received before the corrected message
+- Groupchat default configuration now supports `list-multi` fields
+- Bugfix: Don't set `muc_domain` for roomspanel if `locked_muc_domain` is `true`.
+- Bugfix: Modal auto-closes when you open it for a second time.
+- Bugfix: `Cannot read property 'parentElement' of null` in shadow DOM
+- Take roster nickname into consideration when rendering messages and chat headings.
+- Hide the textarea when a user is muted in a groupchat.
+- Don't restore a BOSH session without knowing the JID
+- In the `/help` menu, only show allowed commands
+- Message deduplication bugfixes and improvements
+- Continuously retry (in 2s intervals) to fetch login credentials (via [credentials_url](https://conversejs.org/docs/html/configuration.html#credentials-url)) in case of failure
+- Replace `moment` with [DayJS](https://github.com/iamkun/dayjs).
+- New config option [auto_focus](https://conversejs.org/docs/html/configuration.html#auto-focus)
+- New config option [clear_messages_on_reconnection](https://conversejs.org/docs/html/configuration.html#clear-messages-on-reconnection)
+- New config option [enable_smacks](https://conversejs.org/docs/html/configuration.html#enable-smacks)
+- New config option [message_limit](https://conversejs.org/docs/html/configuration.html#message-limit)
+- New config option [muc_fetch_members](https://conversejs.org/docs/html/configuration.html#muc-fetch-members)
+- New config option [muc_mention_autocomplete_min_chars](https://conversejs.org/docs/html/configuration.html#muc-mention-autocomplete-min-chars)
+- New config option [muc_show_join_leave_status](https://conversejs.org/docs/html/configuration.html#muc-show-join-leave-status)
+- New config option [singleton](https://conversejs.org/docs/html/configuration.html#singleton)
+  By setting this option to `false` and `view_mode` to `'embedded'`, it's now possible to
+  "embed" the full app and not just a single chat. To embed just a single chat, it's now
+  necessary to explicitly set `singleton` to `true`.
+- Re-add the previously removed config option [keepalive](https://conversejs.org/docs/html/configuration.html#keepalive)
+- New event: [chatBoxBlurred](https://conversejs.org/docs/html/api/-_converse.html#event:chatBoxBlurred)
+- New event: [chatReconnected](https://conversejs.org/docs/html/api/-_converse.html#event:chatReconnected)
+- #316: Add support for XEP-0198 Stream Management
+- #1071: x clear cross of same size as text
+- #1142: Up/down arrow shouldn't erase current message
+- #1196: Use alternative connection method upon connfail
+- #1296: `embedded` view mode shows `chatbox-navback` arrow in header
+- #1330: Missing room name in MUC invitation popup
+- #1445: Participants list uses big font in embedded mode
+- #1455: Avatar in controlbox status-view not updated
+- #1465: When highlighting a roster contact, they're incorrectly shown as online
+- #1476: Support OMEMO on by default for chats via a config variable
+- #1494: Trim whitespace around messages
+- #1495: Mentions should always include a URI attribute
+- #1502: Fatal error when using prebind
+- #1524: OMEMO libsignal-protocol.js Invalid signature
+- #1532: Converse reloads on enter pressed in the filter box
+- #1538: Allow adding self as contact
+- #1548: Add support for paging through the MAM results when filling in the blanks
+- #1550: Legitimate carbons being blocked due to erroneous forgery check
+- #1554: Room auto-configuration broke if the config form contained fields with type `fixed`
+- #1558: `this.get` is not a function error when `forward_messages` is set to `true`.
+- #1561: Don't call `clear` on local or session storage
+- #1572: In `fullscreen` view mode the top is cut off on iOS
+- #1575: MUC invitation autocomplete list doesn't appear
+- #1576: Converse gets stuck with spinner when logging out with `auto_login` set to `true`
+- #1579: Trim spaces at the beginning and end of a JID (when adding contact)
+- #1585: Upload files by pasting from clipboard
+- #1586: Not possible to kick someone with a space in their nickname
+- #1664: Blacklisting converse-profile makes the control box totally blank
+
+### Breaking changes
+
+- The minimum required NodeJS version for making builds is now 8.9.0
+- Rename `muc_disable_moderator_commands` to [muc_disable_slash_commands](https://conversejs.org/docs/html/configuration.html#muc-disable-slash-commands).
+- `_converse.api.archive.query` now returns a Promise instead of accepting a callback functions.
+- `_converse.api.disco.supports` now returns a Promise which resolves to a Boolean instead of an Array.
+- The `forward_messages` config option (which was set to `false` by default) has been removed.
+  Use [message_carbons](https://conversejs.org/docs/html/configuration.html#message-carbons) instead.
+- Remove the `keepalive` configuration setting. It is now always implicitly `true`.
+- Remove the `expose_rid_and_sid` configuration setting.
+- A `prebind_url` is now mandatory when setting `authentication` to `prebind`.
+  It's no longer possible to pass in `rid` and `sid` values to `converse.initialize.
+- Removed events `statusChanged` and `statusMessageChanged`. Instead, you can
+  listen on the `change:status` or `change:status\_message` events on
+  `_converse.xmppstatus`.
+- #1403: Rename show_chatstate_notifications to show_chat_state_notifications
+
+### API changes
+
+- `_converse.chats.open` and `_converse.rooms.open` now take a `force`
+  parameter to force maximizing (in `overlayed` view mode) or bringing a
+  background chat into the foreground (in `fullscreen` view mode). Previously
+  this was the default behavior.
+- `_converse.api.emit` has been removed in favor of [\_converse.api.trigger](https://conversejs.org/docs/html/api/-_converse.api.html#.trigger)
+- `_converse.updateSettings` has been removed in favor of [\_converse.api.settings.update](https://conversejs.org/docs/html/api/-_converse.api.settings.html#.update)
+- `_converse.api.roster.get` now returns a promise.
+- New API method [\_converse.api.disco.features.get](https://conversejs.org/docs/html/api/-_converse.api.disco.features.html#.get)
+- New API method [\_converse.api.connection.reconnect](https://conversejs.org/docs/html/api/-_converse.api.connection.html#.reconnect)
+
+## 4.2.0 (2019-04-04)
+
+**Note:** This release introduces a hard requirement on [MAM:2](https://xmpp.org/extensions/xep-0313.html),
+specifically the requirement that the MAM archive ID matches the [XEP-0359 stanza-id](https://xmpp.org/extensions/xep-0359.html).
+Patches intended to make Converse work with MAM:1 will cause problems and
+unexpected behaviour due to the above requirement, which is not met with MAM:1.
+This will affect OpenFire users who use the [monitoring plugin](https://www.igniterealtime.org/projects/openfire/plugin-archive.jsp?plugin=monitoring)
+version 1.7.0 and below. You're advised to stay on Converse version 4.1.2 until an update to that plugin has been released.
+
+- Updated translation: af, cz, de, es, gl, he, lt, nl, nl_BE, ru
+- Upgrade to Backbone 1.4.0, Strophe 1.3.2 and Jasmine 2.99.2
+- Remove dependency on (our fork of) Awesomplete
+- Prevent user from adding themselves as contact
+- Fix "flashing" of roster filter when you have less than 5 roster contacts
+- Fix handling of CAPTCHAs offered by ejabberd
+- Don't send out receipts or markers for MAM messages
+- Allow setting of debug mode via URL with `/#converse?debug=true`
+- Render inline images served over HTTP if Converse itself was loaded on an unsecured (HTTP) page.
+- Make sure `nickname` passed in via `_converse.initialize` has first preference as MUC nickname
+- Make sure required registration fields have "required" attribute
+- New config setting [autocomplete_add_contact](https://conversejs.org/docs/html/configuration.html#autocomplete-add-contact)
+- New config setting [locked_muc_domain](https://conversejs.org/docs/html/configuration.html#locked-muc-domain)
+- New config setting [locked_muc_nickname](https://conversejs.org/docs/html/configuration.html#locked-muc-nickname)
+- New config setting [show_client_info](https://conversejs.org/docs/html/configuration.html#show-client-info)
+- Document new API method [sendMessage](https://conversejs.org/docs/html/api/-_converse.ChatBox.html#sendMessage)
+- Don't filter out own device when sending an OMEMO message
+- #1149: With `xhr_user_search_url`, contact requests are not being sent out
+- #1213: Switch roster filter input and icons
+- #1327: fix False mentions positives in URLs and Email addresses
+- #1352: Add [Jed](https://github.com/messageformat/Jed) as dependency of `@converse/headless`
+- #1373: Re-add support for the [muc_domain](https://conversejs.org/docs/html/configuration.html#muc-domain) setting
+- #1400: When a chat message is just an emoji, enlarge the emoji
+- #1407: Silent errors when trying to use whitespace as MUC nickname
+- #1437: List of groupchats in modal doesn't scroll
+- #1457: Wrong tooltip shown for "unbookmark" icon
+- #1467: Fix rendering of URLs enclosed with sharp brackets such as <https://example.org>
+- #1479: Allow file upload by drag & drop also in MUCs
+- #1487: New config option [muc_respect_autojoin](https://conversejs.org/docs/html/configuration.html#muc-respect-autojoin)
+- #1488: In error message, fall back to JID if name is not available.
+- #1501: Don't prompt for a reason if [auto_join_on_invite](https://conversejs.org/docs/html/configuration.html#auto-join-on-invite) is `true`
+- #1507: Make message id and origin-id identical in order to fix LMC with Conversations
+- #1508: Minimized bookmarked chatboxes should not be always maximized after page reload.
+- #1512: Allow manual entry of jid even with [xhr_user_search_url](https://conversejs.org/docs/html/configuration.html#xhr-user-search-url).
+         The JID input field is now also visible. To hide it simply hide `.add-xmpp-contact__jid` via CSS.
+
+## 4.1.2 (2019-02-22)
+
+- Updated translations: af, cz, de, es, he, it, nl, nl_BE, pt_BR, zh_CN
+- Bugfix. Prevent duplicate messages by comparing MAM archive id to XEP-0359 stanza ids.
+- Bugfix. Open groupchats not shown when logging in after disconnection.
+- #1406: `TypeError: e.devicelists is undefined` when unchecking the "trusted device" checkbox
+
+## 4.1.1 (2019-02-18)
+
+- Updated translations: af, cz, de, es, eu, ga, he, hi, ja, nb, nl_BE, zh_CN
+- New language supported: Esperanto
+- Accessibility: Tag the chat-content as an ARIA live region, for screen readers
+- Set releases URL to new Github repo
+- Rudimentary support for XEP-0333 chat markers
+- Better support for XEP-0359 `stanza-id` and `origin-id` elements.
+- Bugfix: restore textarea size after sending a message
+- Bugfix: MUC invite form not appearing
+- #1369 Don't wrongly interpret message with `subject` as a topic change.
+- #1405 Status of contacts list are not displayed properly
+- #1408 New config option [roomconfig_whitelist](https://conversejs.org/docs/html/configuration.html#roomconfig-whitelist)
+- #1410 HTTP upload not working if conversations push proxy is used
+- #1412 MUC moderator commands can be disabled selectively by config
+- #1413 Fix moderator commands that change affiliation
+- #1414 Prevent duplicate messages on MUC join
+- #1417 Margin between nickname and badge
+- #1421 Fix direct invite for membersonly room
+- #1422 Resurrect the `muc_show_join_leave` option
+- #1438 Update contact nickname when receiving a roster push
+- #1442 MUC read receipts causing empty lines
+
+## 4.1.0 (2019-01-11)
+
+- Bugfix: MUC commands were being ignored
+- Bugfix: Multiple rooms shown active in the rooms list
+- Bugfix: Don't open chats when receiving messages without a `body`
+- Bugfix: Typing in the textarea can become very slow in large MUCs
+- UI: Always show the OMEMO lock icon (grayed out if not available).
+- Use `publish-options` with `pubsub#access_model` set to `open` when publishing OMEMO public keys and devices
+- Add a new `converse-pubsub` plugin, for generic PubSub operations
+- #1180 It's now possible to use OMEMO in a MUC (if it's members-only and non-anonymous)
+- #1334 Force avatar refetch when receiving `vcard-temp:x:update`
+- #1337 `send_chat_state_notifications` doesn't work in MUCs
+- #1353 Message Delivery Receipts not working because of the message "type" attribute
+- #1356 Make triangle icon usable
+- #1374 Can't load embedded chat when changing `view_mode` between page reloads
+- #1376 Fixed some alignment issues in the sidebar
+- #1378 Message Delivery Receipts were being sent for carbons and own messages
+- #1379 MUC unread messages indicator is failing
+- #1382 Message Delivery Receipts: Set store hint and type='chat'
+- #1388 implement muc-owner command `/destroy`
+
+## 4.0.6 (2018-12-07)
+
+- Updated translations: ar, cs, de, es, eu, fr, gl, hu, id, it, ja, nb, pt_BR
+- Don't render http (i.e. non-TLS) resources
+- Bugfix: Converse caused `RID out of range` errors on Prosody
+- Bugfix: MUC messages sometimes appear twice after resync.
+- #1331 Fix missing checkmarks in old muc messages
+- #1333 Don't send receipt requests in MUCs
+- #1348 Font gets cut off in Firefox #1348
+
+## 4.0.5 (2018-11-15)
+
+- Error `FATAL: TypeError: Cannot read property 'extend' of undefined` when using `embedded` view mode.
+- Default paths in converse-notifications.js are now relative
+- Add a button to regenerate OMEMO keys
+- Add client info modal which shows Converse's version number
+- New config setting [theme](https://conversejs.org/docs/html/configuration.html#theme)
+- #141 XEP-0184: Message Delivery Receipts
+- #1033 Setting show_send_button to true didn't work
+- #1188 Feature request: drag and drop file to HTTP Upload
+- #1268 Switch from SASS variables to CSS custom properties
+- #1278 Replace the default avatar with a SVG version
+- #1288 Add CSS classes to differentiate between incoming and outgoing messages
+- #1305 added value 'all' for 'show_desktop_notifications' to notifiy even if converse.js is open
+- #1306 added option `notification_delay`
+- #1312 Error `unrecognized expression` in Safari
+- #1316 show version info in login dialog
+- #1317 Don't show errors for CSI messages
+- #1318 added values 'on' and 'off' for 'trusted' option which removes the "This is a trusted device" checkbox from the login form
+- #1319 Implement sending of presences according to XEP-0319: Last User Interaction in Presence
+
+## 4.0.4 (2018-10-29)
+
+- Use [Lerna](https://lernajs.io/) to create the @converse/headless package
+- Use ES2015 modules instead of UMD.
+- #1252 Correctly reflect the state in bookmark icon title.
+- #1257 Prefer 'probably' over 'maybe' when evaluating audio play support.
+- #1259 Don't inform of affiliation change after user leaves MUC
+- #1261 File upload not working
+- #1264 Right Align badges of room occupants
+- #1272 Hiding MUC occupants leaves a blank space
+- #1278 Replace the default avatar with a SVG version
+
+## 4.0.3 (2018-10-22)
+
+- New translations: Arabic, Basque, Czech, French, German, Hungarian, Japanese, Norwegian Bokmål, Polish, Romanian, Spanish
+- Bugfix. Converse continuously publishes an empty OMEMO devicelist for itself
+- Bugfix. Handler not triggered when submitting MUC password form 2nd time
+- Bugfix. MUC features weren't being refreshed when saving the config form
+- Don't show duplicate notification messages
+- New config setting [show_images_inline](https://conversejs.org/docs/html/configuration.html#show-images-inline)
+- Disable OMEMO when the user has indicated that Converse is running on an untrusted device.
+- #537 Render `xmpp:` URI as link
+- #1058 Send an inactive chat state notification when the user switches to another tab
+- #1062 Collapse multiple join/leave messages into one
+- #1063 URLs in the topic / subject are not clickable
+- #1140 Add support for destroyed chatrooms
+- #1169 Non-joined participants display an unwanted status message
+- #1185 Added Contact still shown as pending
+- #1190 MUC Participants column disappears in certain viewport widths
+- #1193 OMEMO messages without a `<body>` fallback are ignored
+- #1199 Can't get back from to login screen from registration screen
+- #1204 Link encoding issue
+- #1209 Bring color codes of users' status in line with other clients
+- #1214 Setting `allow_contact_requests` to `false` has no effect
+- #1221 Avoid creating a headlines box if we don't have anything to show inside it
+- #1222 Adding a bookmark should prefill the room name
+- #1228 Converse automatically visits links (to try and determine whether they're images to show inline)
+
+## 4.0.2 (2018-10-02)
+
+- M4A and WEBM files, when sent as XEP-0066 Out of Band Data, are now playable directly in chat
+- Updated French and Spanish translations
+- Two new languages supported, [Hindi](https://hosted.weblate.org/languages/hi/conversejs/) and [Romanian](https://hosted.weblate.org/languages/ro/conversejs/)
+- #1176 Add config setting [send_chat_state_notifications](https://conversejs.org/docs/html/configuration.html#send-chat-state-notifications)
+- #1187 UTF-8 characters have the wrong encoding when using OMEMO
+- #1189 Video playback failure
+- #1220 Converse not working in Edge
+- #1225 User profile sometimes not displayed when libsignal-protocol.js is used
+- #1227 Login form does not work in Epiphany
+
+## 4.0.1 (2018-09-19)
+
+- Use https://compliance.conversations.im instead of dead link tot st https://xmpp.net
+- New config  setting [auto_register_muc_nickname](https://conversejs.org/docs/html/configuration.html#auto-register-muc-nickname)
+- New config setting [enable_muc_push](https://conversejs.org/docs/html/configuration.html#enable-muc-push)
+- #1182 MUC occupants without nick or JID created
+- #1184 Notification error when message has no body
+- #1201 Emoji picker appears when pressing enter
+
+## 4.0.0 (2018-09-07)
+
+## New Features
+
+- #161 XEP-0363: HTTP File Upload
+- #194 Include entity capabilities in outgoing presence stanzas
+- #337 API call to update a VCard
+- #421 XEP-0308: Last Message Correction
+- #497 XEP-0384: OMEMO encrypted messaging
+- #968 Use nickname from VCard when joining a room
+- #986 Affiliation changes aren't displayed in the chat
+- #1081 Allow for shift-enter to insert newlines
+- #1091 There's now only one CSS file for all view modes.
+- #1094 Show room members who aren't currently online
+- #1106 Support for Roster Versioning
+- #1137 Autocompletion and support for [XEP-0372 References](https://xmpp.org/extensions/xep-0372.html), specifically section "3.2 Mentions".
+- It's now also possible to edit your VCard via the UI
+- Automatically grow/shrink input as text is entered/removed
+- MP4 and MP3 files when sent as XEP-0066 Out of Band Data, are now playable directly in chat
+- Support for rendering URLs sent according to XEP-0066 Out of Band Data.
+- Geo-URIs (e.g. from Conversations) are now replaced by links to openstreetmap (works in reverse also)
+- Add a checkbox to indicate whether a trusted device is being used or not.
+  If the device is not trusted, sessionStorage is used and all user data is deleted from the browser cache upon logout.
+  If the device is trusted, localStorage is used and user data is cached indefinitely.
+- Initial support for [XEP-0357 Push Notifications](https://xmpp.org/extensions/xep-0357.html), specifically registering an "App Server".
+- Add support for logging in via OAuth (see the [oauth_providers](https://conversejs.org/docs/html/configuration.html#oauth-providers) setting)
+
+### Bugfixes
+
+- Spoiler messages didn't include the message author's name.
+- Documentation includes utf-8 charset to make minfied versions compatible across platforms. #1017
+- #1026 Typing in MUC shows "Typing from another device"
+- #1039 Multi-option data form elements not shown and saved correctly
+- #1143 Able to send blank message
+
+### API changes
+
+- `_converse.api.vcard.get` now also accepts a `Backbone.Model` instance and
+  has an additional `force` parameter to force fetching the vcard even if it
+  has already been fetched.
+- New API method `_converse.api.vcard.update`.
+- The `contactStatusChanged` event has been renamed to `contactPresenceChanged`
+  and a event `presenceChanged` is now also triggered on the contact.
+- `_converse.api.chats.open` and `_converse.api.rooms.open` now returns a
+  `Presence` which resolves with the `Backbone.Model` representing the chat
+  object.
+
+## UI changes
+
+- #956 Conversation pane should show my own identity in pane header
+- The UI is now based on Bootstrap4 and Flexbox is used extensively.
+- Fontawesome 5 is used for icons.
+- User Avatars are now shown in chat messages.
+
+## Configuration changes
+
+- Removed the `storage` configuration setting, use [trusted](https://conversejs.org/docs/html/configuration.html#trusted) instead.
+- Removed the `use_vcards` configuration setting, instead VCards are always used.
+- Removed the `xhr_custom_status` and `xhr_custom_status_url` configuration
+  settings. If you relied on these settings, you can instead listen for the
+  [statusMessageChanged](https://conversejs.org/docs/html/events.html#contactstatusmessagechanged)
+  event and make the XMLHttpRequest yourself.
+- Removed  `xhr_user_search` in favor of only accepting `xhr_user_search_url` as configuration option.
+- `xhr_user_search_url` has to include the `?` character now in favor of more flexibility. See example in the documentation.
+- The data returned from the `xhr_user_search_url` must now include the user's
+  `jid` instead of just an `id`.
+- New configuration settings [nickname](https://conversejs.org/docs/html/configuration.html#nickname)
+  and [auto_join_private_chats](https://conversejs.org/docs/html/configuration.html#auto-join-private-chats).
+
+## Architectural changes
+
+- Extracted the views from `converse-muc.js` into `converse-muc-views.js` and
+  where appropriate moved methods from the views into the models/collections.
+  This makes MUC possible in headless mode.
+- Created a new core plugin `converse-roster.js` which contains the models for
+  roster-related data. Previously this code was in `converse-core.js`.
+- VCards are now stored separately from chats and roster contacts.
+
+## Other
+
+- Support for OTR (off-the-record) encryption has been dropped.
+
+## 3.3.4 (2018-03-05)
+
+- Don't show bookmark toggles when PEP bookmarking not supported by the XMPP server.
+- Emojis are now sent in unicode instead of short names (also in MUCs)
+
+### Bugfixes
+
+- Server field in `Rooms` tab showed MUC supporting clients instead of only components.
+- Avatars weren't being shown.
+- Bookmarks list and open rooms list weren't recreated after logging in for a 2nd time (without reloading the browser).
+- #1022 Status message not sent out on subsequent presences
+- #1024 null reference on MUC Invite
+- #1025 OTR lock icon disappears
+- #1027 `new Event` not supported in IE11
+- #1028 Avoid `eval` (crept in via `_.template` from lodash).
+
+### Translation changes
+
+- New locale: Bulgarian
+- Updated German, Russian, Chinese (traditional), Norwegian Bokmål and French translations.
+
+## 3.3.3 (2018-02-14)
+
+### Bugfixes
+- Attribute error when empty IQ stanza is returned for vCard query
+- In fullscreen view, sometimes a background MUC would come into the foreground
+  when a new message appears inside it.
+
+### Security fixes
+
+- CVE-2018-6591: Don't allow PEP bookmarks if `pubsub#publish-options` is not advertised by the server.
+
+    In previous versions of converse.js, bookmarks sent to servers that don't
+    support `pubsub#publish-options` were visible to all your contacts, even
+    though they should be kept private. This is due to those servers simply
+    ignoring the `pubsub#publish-options` directive and converse.js not checking
+    first whether `pubsub#publish-options` is supported before setting bookmarks
+    via PEP.
+
+    More info here: https://gultsch.de/converse_bookmarks.html
+
+### New features
+- XEP-0382 Spoiler Messages (currently only for private chats)
+- Listen for new room bookmarks pushed from the user's PEP service.
+- Simplified the [embedded](https://conversejs.org/demo/embedded.html) usecase.
+    - No need to manually blacklist or whitelist any plugins.
+    - Relies on the [view_mode](https://conversejs.org/docs/html/configuration.html#view-mode) being set to `'embedded'`.
+    - The main `converse.js` build can be used for the embedded usecase.
+    - Maintain MUC session upon page reload
+
+### API changes
+- New API method `_converse.api.disco.getIdentity` to check whether a JID has a given identity.
+
+### Configuration settings
+- `auto_reconnect` is now set to `true` by default.
+- New configuration setting [allow_public_bookmarks](https://conversejs.org/docs/html/configuration.html#allow-public-bookmarks)
+- New configuration setting [root](https://conversejs.org/docs/html/configuration.html#root)
+- The [view_mode](https://conversejs.org/docs/html/configuration.html#view-mode) setting now has a new possible value: `embedded`
+
+### Translation updates
+- Chinese (Traditional), French, German, Portuguese (Brazil), Russian, Ukrainian
+
+## 3.3.2 (2018-01-29)
+
+### Bugfixes
+
+- Various fixes for IE11.
+- Could not register on Ejabberd 18. `"Missing attribute 'id' in tag qualified by namespace 'jabber:client'"`
+- #878 Ending slash in link not recognized
+- #921 FATAL error when `visible_toolbar_buttons.emoji = false`
+- #959 Add padding for the iPhone X (to the mobile CSS).
+- #993 `moment.format` is not a function error when sending a message.
+- #994 TypeError when using the `user.login` API.
+- #995 `ChildNode.replaceWith` is not available in Internet Explorer or Safari. Use `Node.replaceChild` instead.
+- #999 MUC Chat Send button causes page reload
+- #1000 Scroll to bottom when maximizing a chat room.
+- #1003 Handle bare MUC room JIDs
+
+### Translation changes
+
+- Updated Dutch, French, Japanese, Norwegian Bokmål and Ukrainian translations
+
+## 3.3.1 (2018-01-18)
+
+### UI/UX changes
+- Add new configuration option
+  [show_message_load_animation](https://conversejs.org/docs/html/configuration.html#show-message-load-animation)
+  with a default value of `false`. The message load animations (added in 3.3.0)
+  cause slowness and performance issues in Firefox, so they're now disabled by default.
+
+### Translation changes
+- Updated Spanish and French translations.
+- New translation: "Simplified Chinese"
+- Rename `zh` language code to `zh_TW` and add Simplified Chinese as `zh_CN`
+
+## 3.3.0 (2018-01-17)
+
+### Bugfixes
+- #800 Could not register successfully in ejabberd 17.01
+- #949 Don't flash the roster contacts filter (i.e. hide by default)
+- #951 Duplicate messages received in an MUC chat room.
+- #953 MUC "Features" displayed when exiting configuration
+- #967 Rooms list doesn't show when the server doesn't support bookmarks
+- Don't require `auto_login` to be `true` when using the API to log in.
+- Moment locale wasn't being set to the value passed via the `i18n` option.
+- In the chat heading, two avatars sometimes get rendered.
+- Refetch the roster from the server after reconnection.
+  From the perspective of the XMPP server, this is an entirely new login,
+  and therefore as per [RFC-6121](https://tools.ietf.org/html/rfc6121#section-2.1.6)
+  the roster SHOULD be queried, making the client an "interested resource".
+  Otherwise connected contacts might not get your presence updates.
+- The way the archive ID of a MAM message is specified, has changed.
+  See https://xmpp.org/extensions/xep-0313.html#archives_id
+- Fixed error building DOM toggle_chats.html span.unread-message-count class attribute
+- Bugfix. In a MUC the `/help` command didn't render properly.
+- The `/voice` MUC command didn't set the right role in order to grant voice again.
+
+### New Features
+- Emojis are now sent in unicode instead of short names
+- #314 Add support for opening chat rooms with a URL fragment such as `#converse/room?jid=room@domain`
+  and private chats with a URL fragment such as `#converse/chat?jid=user@domain`
+- #828 Add routing for the `#converse/login` and `#converse/register` URL
+  fragments, which will render the registration and login forms respectively.
+- New configuration setting [view_mode](https://conversejs.org/docs/html/configuration.html#view-mode)
+  This removes the need for separate `inverse.js` and `converse-mobile.js`
+  builds. Instead the `converse.js` build is now used with `view_mode` set to
+  `fullscreen` and `mobile` respectively.
+- Fetch VCard when starting a chat with someone not in the user's roster.
+- Show status messages in an MUC room when a user's role changes.
+- In MUC chat rooms, collapse multiple, consecutive join/leave messages.
+- Performance improvements for rendering private chats, rooms and the contacts roster.
+- MUC Leave/Join messages now also show a new day indicator if applicable.
+
+### API changes
+- New API method `_converse.disco.supports` to check whether a certain
+  service discovery feature is supported by an entity.
+- New API method `_converse.api.vcard.get` which fetches the VCard for a
+  particular JID.
+
+### Configuration changes
+- `hide_open_bookmarks` is now by default `true`.
+
+### UX/UI changes
+- #984 Improve loading of archived messages via "infinite scroll"
+- Use CSS3 fade transitions to render various elements.
+- Remove `Login` and `Registration` tabs and consolidate into one panel.
+- Show validation error messages on the login form.
+- Don't hang indefinitely and provide nicer error messages when a connection
+  can't be established.
+- Consolidate error and validation reporting on the registration form.
+- Don't close the emojis panel after inserting an emoji.
+- Focus the message textarea when the emojis panel is opened or closed.
+- MUC chatroom occupants are now sorted alphabetically and according to their roles.
+
+### Technical changes
+- Converse.js now includes a [Virtual DOM](https://github.com/snabbdom/snabbdom)
+  via [backbone.vdomview](https://github.com/jcbrand/backbone.vdomview) and uses
+  it to render various views.
+- Converse.js no longer includes all the translations in its build. Instead,
+  only the currently relevant translation is requested. This results in a much
+  smaller filesize but means that the translations you want to provide need to
+  be available. See the [locales_url](https://conversejs.org/docs/html/configuration.html#locales-url)
+  configuration setting for more info.
+- The translation machinery has now been moved to a separate module in `src/i18n.js`.
+- jQuery has been completely removed as a dependency (still used in tests though).
+
+## 3.2.1 (2017-08-29)
+
+### Bugfixes
+- Various IE11 fixes.
+- #907 Unnecessary login validation error when `default_domain` or `locked_domain` are set.
+- #908 Login form for inVerse is only 200px when `allow_registration` is set to `false`.
+- #909 Translations written as template literals [aren't parsed properly by xgettext](https://savannah.gnu.org/bugs/?50920).
+- #911 Use `getDefaultNickName` consistently to allow better overrides via plugins.
+- #912 `maximize` method in `converse-minimize` fails if the `controlbox` is not there.
+
+## 3.2.0 (2017-08-09)
+
+### New Plugins
+- New plugin `converse-disco` which replaces the original support for
+  [XEP-0030](https://xmpp.org/extensions/xep-0030.html) and which has been
+  refactored to allow features for multiple entities to be stored.
+
+### New features and improvements
+- Add support for Emojis (either native, or via <a href="https://www.emojione.com/">Emojione</a>).
+- Add JID validation to the contact add form, the occupant invite form and the login form.
+- #896 Consistently use `XMPP username` in user-facing text (instead of JID, Jabber ID etc.).
+
+### New configuration settings
+* The `visible_toolbar_buttons.emoticons` configuration option is now changed to `visible_toolbar_buttons.emoji`.
+* [use_emojione](https://conversejs.org/docs/html/configuration.html#use-emojione)
+  is used to determine whether Emojione should be used to render emojis,
+  otherwise rendering falls back to native browser or OS support.
+* [emojione_image_path](https://conversejs.org/docs/html/configuration.html#emojione-image-path)
+  is used to specify from where Emojione will load images for rendering emojis.
+
+### New events
+* ['discoInitialized'](https://conversejs.org/docs/html/development.html#discoInitialized)
+* ['afterMessagesFetched'](https://conversejs.org/docs/html/development.html#afterMessagesFetched)
+
+### Code changes
+- Removed jQuery from `converse-core`, `converse-vcard` and `converse-roomslist`.
+- Remove `jquery.easing` from the full build. Was only being used by the
+  [conversejs.org](https://conversejs.org) website, which has been updated to not rely on it.
+- All promises are now native (or polyfilled) ES2015 Promises instead of jQuery's Deferred.
+- #866 Add babel in order to support ES2015 syntax
+
+#### Bugfixes:
+- The domain was queried for MAM:2 support, instead of the JID.
+- Roster filter is not shown when all groups are collapsed.
+- When filtering, contacts in closed groups appear.
+- Room name wasn't being updated after changing it in the configuration form.
+- Server disco features were "forgotten" after logging out and then logging in again.
+- Don't show duplicate sent groupchat messages in Slack chat rooms.
+- Bookmark icon shown in the open rooms list when `allow_bookmarks` is to `false`.
+- It wasn't possible to add or remove bookmarks via the "Open Rooms" list.
+- #879 Text in links are converted to smileys leading to non-clickable links.
+- #899: Only touch `stamp-npm` if `npm install` was successful
+- #902 `make build` dependends on non-existing files
+
+## 3.1.1 (2017-07-12)
+
+- Use a patched version of [awesomplete](https://github.com/LeaVerou/awesomplete)
+  which doesn't render suggestions as HTML (possible XSS attack vector). [jcbrand]
+
+More info here: https://github.com/LeaVerou/awesomplete/pull/17082
+
+## 3.1.0 (2017-07-05)
+
+### API changes
+- Deprecate the `updateSettings` method in favour of
+  `_converse.settings.update`. [jcbrand]
+- Add a new API method `_converse.promises.add` for exposing promises to be
+  used with `_converse.waitUntil`. [jcbrand]
+- The `message` event now returns a data object with `stanza` and
+  `chatbox` attributes, instead of just the stanza. [jcbrand]
+
+### New Plugins
+- New non-core plugin `converse-singleton` which ensures that no more than
+  one chat is visible at any given time. Used in the mobile build:
+  `converse-mobile.js` and makes the unread messages counter possible there.
+  [jcbrand]
+- New non-core plugin `converse-roomslist`, which shows a list of open rooms
+  in the `Rooms` tab of the control box. [jcbrand]
+
+### New configuration settings
+- New setting for `converse-bookmarks`:
+  [hide_open_bookmarks](https://conversejs.org/docs/html/configuration.html#hide-open-bookmarks)
+  It is meant to be set to `true` when using `converse-roomslist` so that open
+  rooms aren't listed twice (in the rooms list and the bookmarks list).
+  [jcbrand]
+
+### Github tickets resolved
+- #567 Unreaded message count reset on page load [novokrest]
+- #575 Logging out from converse.js doesn't clear the connection status from the
+  sessionStorage [jcbrand]
+- #591 Unread message counter is reset when the chatbox is closed [novokrest]
+- #754 Show unread messages next to roster contacts. [jcbrand]
+- #864 Remove all inline CSS to comply with strict Content-Security-Policy headers [mathiasertl]
+- #873 Inconsistent unread messages count updating [novokrest]
+- #887 Make embedded images clickabe [jcbrand]
+- #890 Message carbons not sent out after reconnection [jcbrand]
+- #894 Room affiliation lost when connection jid and room presence jid are of different case [Rayzen]
+
+### Miscellaneous
+
+- Support for [XMPP-0313 Message Archive Management](https://xmpp.org/extensions/xep-0313.html)
+  has been upgraded to version 2. [jcbrand]
+- Show unread messages for minimized chats. [jcbrand]
+- Render nickname form when entering a room via invitation. [jcbrand]
+
+## 3.0.2 (2017-04-23)
+
+*Dependency updates*:
+- Jasmine 2.5.3
+- Phantomjs 2.1.14
+- moment 2.18.1
+- sinon 2.1.0
+- eslint 3.19.0
+
+- Don't rerender the text input when filtering contacts. [jcbrand]
+- Show the MUC server in a bookmarked room's info view (in the bookmarks list). [jcbrand]
+- Enable creation of `dist/converse-muc-embedded.js` build file for the
+  embedded MUC room demo. [jcbrand]
+- Use `noConflict` to avoid polluting globale namespace with lodash and Backbone. [jcbrand]
+- Bugfix: MUC user's nickname wasn't being shown in HTML5 notification messages. [jcbrand]
+- Bugfix: OTR meta-messages were being shown in HTML5 notifications. [jcbrand]
+- CSS fix: Icon lock wasn't showing. [jcbrand]
+- #626 Open chat minimised [novokrest]
+- #842 Persistent muc room creation not working [jcbrand]
+- #848 OTR doesn't start when `cache_otr_key` is set to `true`. [jcbrand]
+- #849 `TypeError: _converse.i18n.locale_data is undefined` when reconnecting. [jcbrand]
+- #850 Roster not loading when group names are numbers. [jcbrand]
+
+## 3.0.1 (2017-04-04)
+
+- Bugfix. Endless spinner when trying to log in after rendering the registration form. [jcbrand]
+- #585 Duplicate contact created due to JID case sensivity [saganshul]
+- #628 Fixes the bug in displaying chat status during private chat. [saganshul]
+- #628 Changes the message displayed while typing from a different resource of the same user. [smitbose]
+- #675 Time format made configurable.
+   See [time_format](https://conversejs.org/docs/html/configuration.html#time-format)
+   [smitbose]
+- #682 Add "Send" button to input box in chat dialog window.
+   See [show_send_button](https://conversejs.org/docs/html/configuration.html#show-send-button)
+   [saganshul]
+- #704 Automatic fetching of registration form when
+   [registration_domain](https://conversejs.org/docs/html/configuration.html#registration-domain)
+   is set. [smitbose]
+- #806 The `_converse.listen` API event listeners aren't triggered. [jcbrand]
+- #807 Error: Plugin "converse-dragresize" tried to override HeadlinesBoxView but it's not found. [jcbrand]
+- #811 jQuery wasn't being closured in builds. [jcbrand]
+- #814 Images from URLs with query strings aren't being rendered. [novokrest]
+- #820 Inconsistency in displaying room features. [jcbrand]
+
+## 3.0.0 (2017-03-05)
+
+- **Breaking changes**:
+    * Plugins must now be whitelisted.
+      See the [whitelisted_plugins](https://conversejs.org/docs/html/configuration.html#whitelisted-plugins) setting.
+    * Callbacks for `converse.on` now no longer receive an event object as first parameter.
+    * The API has been split into public and private parts.
+      The private API methods are now only available to plugins.
+      For more info, read [developer API](https://conversejs.org/docs/html/developer_api.html)
+      and the [plugin_development](https://conversejs.org/docs/html/plugin_development.html)
+      documentation.
+    * To prevent confusion the private, closured object, only
+      available to plugins, has been renamed from `converse` to `_converse`.
+      The public API is accessible via a global `converse` object.
+    * The `keepalive` and `roster_groups` options are now set to `true` by default.
+    * Templates are no longer stored as attributes on the `_converse` object.
+      If you need a particular template, use `require` to load it.
+
+- Bugfix. After bookmarking a room for which a nickname is required, return to
+  the nickname form. [jcbrand]
+- Show the chat states of room occupants. [jcbrand]
+- The no-jQuery build has been renamed from `converse.nojquery.js` to
+  `converse-no-jquery.js` to fit the convention used for other build names.
+  [jcbrand]
+- 50 is the new default [archived_messages_page_size](https://conversejs.org/docs/html/configuration.html#archived-messages-page-size)
+  [jcbrand]
+- Better support for delayed delivery of presence stanzas (XEP-0203). [jcbrand]
+- The chat room `description` is now shown in the heading, not the `subject`.
+  [jcbrand]
+- Chat room features are shown in the sidebar. [jcbrand]
+- Hide the chat room invite widget if the room is not open or if the room is members-only
+  and the user is not the owner. [jcbrand]
+- Created a new non-core plugin `converse-muc-embedded` which embeds a single
+  chat room into a page. An example can be found at https://conversejs.org/demo/embedded.html
+  [jcbrand]
+- Use lodash instead of underscore.js [jcbrand]
+- Case insensitive matching of moderation commands. [jcbrand]
+- Add `/subject` as alias to `/topic` [jcbrand]
+- `message_carbons`, `play_sounds` and `allow_chat_pending_contacts` now default to `true` [jcbrand]
+- Improved roster filter UX. [jcbrand]
+- Render the login form again upon authfail. [jcbrand]
+- New promises API: [waitUntil](https://conversejs.org/docs/html/developer_api.html#waituntil)
+  [jcbrand]
+- New configuration setting:
+  [show_chatstate_notifications](https://conversejs.org/docs/html/configuration.html#show-chatstate-notifications)
+  [jcbrand]
+- New configuration setting:
+  [whitelisted_plugins](https://conversejs.org/docs/html/configuration.html#whitelisted-plugins)
+  [jcbrand]
+- New configuration setting:
+  [blacklisted_plugins](https://conversejs.org/docs/html/configuration.html#blacklisted-plugins)
+  [jcbrand]
+- The API now no longer returns wrapped chatboxes (or rooms) but instead a
+  Backbone.View object. This means the API of the returned object has changed.
+  You're still able to do everything from before but now also much more.
+  [jcbrand]
+- Allow JIDs not on the roster to be invited to a chat room. [jcbrand]
+- Bugfix. `TypeError: this.sendConfiguration(...).then is not a function` when
+  an instant room is created. [jcbrand]
+- Ensure consistent behavior from `show_controlbox_by_default` [jcbrand]
+- #365 Show join/leave messages for chat rooms.
+  New configuration setting:
+  [muc_show_join_leave](https://conversejs.org/docs/html/configuration.html#muc-show-join-leave)
+- #366 Show the chat room occupant's JID in the tooltip (if you're allowed to see it). [jcbrand]
+- #610, #785 Add presence priority handling [w3host, jcbrand]
+- #620 `auto_away` shouldn't change the user's status if it's set to `dnd`. [jcbrand]
+- #694 The `notification_option` wasn't being used consistently. [jcbrand]
+- #745 New config option [priority](https://conversejs.org/docs/html/configuration.html#priority) [jcbrand]
+- #770 Allow setting contact attrs on chats.open [Ape]
+- #790 MAM retrieval broken [jcbrand]
+
+## 2.0.6 (2017-02-13)
+- Escape user-generated input to prevent JS-injection attacks. (Thanks to SamWhited) [jcbrand]
+- #486 Honor existing mam user configuration [throwaway42]
+- #749 /me will show your contact's name in the sent field [jcbrand]
+- #774 Browser language (fr-fr or fr) is not detected by default [jcbrand]
+- #775 Anonymous login form is a text field instead of a push button [jcbrand]
+
+## 2.0.5 (2017-02-01)
+- #743, #751, #753 Update to Strophe 1.2.12. SASL-EXTERNAL now has reduced priority, so it won't
+  be prioritized above other auth mechanisms. [jcbrand]
+- #755: create composer.json to add this project in packagist.org [fabiomontefuscolo]
+- #758: Bugfix. Render all resize drag handles for ChatRoomView. [LeoYReyes]
+- #762 Allow chatting with users not in your roster. [Ape, jcbrand]
+- Bugfix. Cancel button shown while registration form is being fetched wasn't working
+  properly. [jcbrand]
+- Bugfix. Login form wasn't rendered after logging out (when `auto_reconnect` is `true`). [jcbrand]
+- Bugfix. Properly disconnect upon "host-unknown" error. [jcbrand]
+- Bugfix. Minimized chats weren't removed when logging out. [jcbrand]
+- Security fix: Prevent message forging via carbons. (Thanks to ge0rg) [jcbrand]
+
+## 2.0.4 (2016-12-13)
+- #737: Bugfix. Translations weren't being applied. [jcbrand]
+- Fetch room info and store it on the room model.
+  For context, see: https://xmpp.org/extensions/xep-0045.html#disco-roominfo [jcbrand]
+- Bugfix. Switching from bookmarks form to config form shows only the spinner. [jcbrand]
+- Bugfix. Other room occupants sometimes not shown when reloading the page. [jcbrand]
+- Bugfix. Due to changes in `converse-core` the controlbox wasn't aware anymore of
+  disconnection or reconnection events. [jcbrand]
+- Optimize fetching of MAM messages (in some cases happened on each page load). [jcbrand]
+- Fix empty controlbox toggle after disconnect. [jcbrand]
+- When inviting someone to a members-only room, first add them to the member
+  list. [jcbrand]
+- New configuration setting [muc_disable_moderator_commands](https://conversejs.org/docs/html/configuration.html#muc-disable-moderator-commands) [jcbrand]
+
+## 2.0.3 (2016-11-30)
+- #735 Room configuration button not visible. [jcbrand]
+- CSS fix for fadeIn animation. [jcbrand]
+
+## 2.0.2 (2016-11-30)
+- #721 keepalive not working with anonymous authentication [jcbrand]
+- #723 Bugfix: Arrays in configuration settings were ignored. [jcbrand]
+- #734 Bugfix. `converse.rooms.open` ignored the `muc_nickname_from_jid` setting. [jcbrand]
+- Enable new rooms to be configured automatically, with a default config, via `rooms.open`.
+  For details, refer to the [relevant documentation](https://conversejs.org/docs/html/developer_api.html#the-rooms-grouping) [jcbrand]
+- Bugfix: Chatboxes aren't closed when logging out. [jcbrand]
+- Bugfix: Trying to save data on the `ControlBox` model before `ChatBoxes`
+  collection has its `browserStorage` configured.
+  Causes `Error: A "url" property or function must be specified`. [jcbrand]
+- Don't open the controlbox on contact requests. [jcbrand]
+- Bugfix: Reconnection fails when original connection was never established. [jcbrand]
+- If a `credentials_url` is provided, then keep on attempting to reconnect when connection is down.  [jcbrand]
+- Remove (undocumented) `callback` config parameter for `converse.initialize`.
+  Instead, `converse.initialize` returns a promise which will resolve once
+  initialization is complete. [jcbrand]
+- New event ['reconnecting'](https://conversejs.org/docs/html/development.html#reconnecting) [jcbrand]
+- New configuration setting [allow_bookmarks](https://conversejs.org/docs/html/configuration.html#allow-bookmarks) [jcbrand]
+- The `rooms.open` API method will no longer maximize rooms that are minimized (unless `maximize: true` is passed in). [jcbrand]
+
+## 2.0.1 (2016-11-07)
+- #203 New configuration setting [muc_domain](https://conversejs.org/docs/html/configuration.html#muc-domain) [jcbrand]
+- #705 White content after submitting password on chat rooms [jcbrand]
+- #712 Controlbox clicks stop responding after auto-reconnect [jcbrand]
+- Removed shared state between tests. All tests are now isolated. [jcbrand]
+- Allow the context (i.e. `this` value) to be passed in when registering event
+  listeners with `converse.listen.on` and `converse.listen.once`. [jcbrand]
+- New event ['rosterContactsFetched'](https://conversejs.org/docs/html/development.html#rosterContactsFetched) [jcbrand]
+- New event ['rosterGroupsFetched'](https://conversejs.org/docs/html/development.html#rosterGroupsFetched) [jcbrand]
+- HTML templates are now loaded in the respective modules/plugins. [jcbrand]
+- Start improving Content-Security-Policy compatibility by removing inline CSS. [mathiasertl]
+- Add support for XEP-0048, chat room bookmarks [jcbrand]
+- New configuration setting [connection_options](https://conversejs.org/docs/html/configuration.html#connection-options) [jcbrand]
+
+## 2.0.0 (2016-09-16)
+- #656 Online users count not shown initially [amanzur]
+- #674 Polish translation updated [ser]
+- Backwards incompatible change: the `_super` attribute in plugins is now named `__super__`. [jcbrand]
+- Continuously attempt to resurrect dead connections when `auto_reconnect` is `true`. [jcbrand]
+- Update the 'rooms' API to allow user to pass in room attributes. [jcbrand]
+- New configuration setting [message_storage](https://conversejs.org/docs/html/configuration.html#message-storage) [jcbrand]
+- Hardcode the storage for roster contacts and chat room occupants to `sessionStorage`. [jcbrand]
+- Fixed wrong chat state value, should be `chat`, not `chatty`.
+  See [RFC 3921](https://xmpp.org/rfcs/rfc3921.html#rfc.section.2.1.2.2). [jcbrand]
+- Adds support for SASL-EXTERNAL. [jcbrand]
+
+## 1.0.6 (2016-08-12)
+- #632 Offline and Logout states do not properly update once users start
+  chatting. [chrisuehlinger, jcband]
+- #674 Polish translation updated to the current master. [ser]
+- #677 Chatbox does not open after close. [jcbrand]
+- The behavior of `converse.chats.get` has changed. If the chat box is not
+  already open, then `undefined` will be returned. [jcbrand]
+- Typing (i.e. chat state) notifications are now also sent out from MUC rooms. [jcbrand]
+- `ChatRoomView.onChatRoomMessageSubmitted` has been renamed to
+  `onMessageSubmitted`, to make it the same as the method on `ChatBoxView`. [jcbrand]
+- New configuration setting [muc_nickname_from_jid](https://conversejs.org/docs/html/configuration.html#muc-nickname-from-jid) [jcbrand]
+- New configuration setting [muc_instant_rooms](https://conversejs.org/docs/html/configuration.html#muc-instant-rooms) [jcbrand]
+
+## 1.0.5 (2016-07-28)
+- In case of nickname conflict when joining a room, allow the user to choose a new one.
+  [jcbrand]
+- Check whether the user has a reserved nickname before entering a room, and if so,
+  use it. [jcbrand]
+- Mention someone in your chat room message by clicking on their name in the occupants
+  list. [jcbrand]
+- #645 When accepting a contact request, the contact didn't appear in the
+  pending contacts group. [jcbrand]
+- Bugfix: allow multiple MAM queries to be made simultaneously. [jcbrand]
+
+## 1.0.4 (2016-07-26)
+
+- Restrict occupants sidebar to 30% chat room width. [jcbrand]
+- Made requesting contacts more visible, by placing them at the top of the roster. [jcbrand]
+- `insertIntoPage` method of `ChatBoxView` has been renamed to `insertIntoDOM`,
+  to make it the same as the method of `ChatRoomView`. [jcbrand]
+- Render error messages received from the server (for undelivered chat messages). [jcbrand]
+- Don't hide requesting contacts when filtering by chat state. [jcbrand]
+- When logging in anonymously, the server JID can now be passed in via `converse.initialize`
+  or via `converse.user.login`. [jcbrand]
+
+## 1.0.3 (2016-06-20)
+
+- Update the plugin architecture to allow plugins to have optional dependencies [jcbrand]
+- Bugfix. Login form doesn't render after logging out, when `auto_reconnect = false` [jcbrand]
+- Also indicate new day for the first day's messages. [jcbrand]
+- Chat bot messages don't appear when they have the same ids as their commands. [jcbrand]
+- Updated onDisconnected method to fire disconnected event even if `auto_reconnect = false`. [kamranzafar]
+- Bugfix: MAM messages weren't being fetched oldest first. [jcbrand]
+- Add processing hints to chat state notifications [jcbrand]
+- Don't use sound and desktop notifications for OTR messages (when setting up the session) [jcbrand]
+- New config option [default_state](https://conversejs.org/docs/html/configuration.html#default_state) [jcbrand]
+- New API method `converse.rooms.close()` [jcbrand]
+- New configuration setting [allow_muc_invites](https://conversejs.org/docs/html/configuration.html#allow-muc-invites) [jcbrand]
+- Add new event [pluginsInitialized](https://conversejs.org/docs/html/development.html#pluginsInitialized) [jcbrand]
+- #553 Add processing hints to OTR messages [jcbrand]
+- #650 Don't ignore incoming messages with same JID as current user (might be MAM archived) [jcbrand]
+- #656 online users count in minimized chat window on initialization corrected [amanzur]
+
+## 1.0.2 (2016-05-24)
+
+- Bugfix. Bind `sendPresence` to the right context. Bug that slipped in during
+  the release of `1.0.1`. [jcbrand]
+
+## 1.0.1 (2016-05-24)
+
+- Bugfix. Roster filter sometimes gets hidden when it shouldn't. [jcbrand]
+- Chat boxes weren't being initialized due to typo. [jcbrand]
+- Flush request queue just after connection. Solves a problem with PubSub and
+  Prosody, whereby BOSH HTTP responses weren't being received. [jcbrand]
+
+## 1.0.0 (2016-05-03)
+
+- Add catalan language [JoseMariaRubioMoral]
+- Split converse.js up into different plugin modules. [jcbrand]
+- Better Sass/CSS for responsive/mobile views. New mobile-only build. [jcbrand]
+- Roster contacts can now be filtered by chat state and roster filters are
+  remembered across page loads. [jcbrand]
+- Add support for messages with type `headline`, often used for notifications
+  from the server. [jcbrand]
+- Add stanza-specific event listener `converse.listen.stanza`.
+  As a result `converse.listen.on('message');` has been deprecated, use
+  `converse.stanza.on('message');` instead. [jcbrand]
+- Emit an event `chatBoxInitialized` once a chat box's initialize method has been called. [jcbrand]
+- Emit an event `statusInitialized` once the user's own status has been initialized upon startup. [jcbrand]
+- New config option [chatstate_notification_blacklist](https://conversejs.org/docs/html/configuration.html#chatstate-notification-blacklist) [jcbrand]
+- New config option [sticky_controlbox](https://conversejs.org/docs/html/configuration.html#sticky-controlbox) [jcbrand]
+- New config option [credentials_url](https://conversejs.org/docs/html/configuration.html#credentials-url) [jcbrand]
+- Don't play sound notifications for OTR messages which are setting up an
+  encrypted session. [jcbrand]
+- Bugfix: RID, SID and JID tokens ignored when `keepalive` set to `true`. [jcbrand]
+- Removed the `account.logout` API, instead use `user.logout`. [jcbrand]
+- Use `rel=noopener` with links that contain `target=_blank` to prevent potential
+  phishing attacks. [More info here](https://mathiasbynens.github.io/rel-noopener/)
+  [jcbrand]
+- #156 Add the option `auto_join_rooms` which allows you to automatically
+  connect to certain rooms once logged in. [jcbrand]
+- #261 `show_controlbox_by_default` config not working [diditopher]
+- #443 HTML5 notifications of received messages [jcbrand]
+- #534 Updated Russian translation [badfiles]
+- #566 Do not steal the focus when the chatbox opens automatically [rlanvin]
+- #573 xgettext build error: `'javascript' unknown` [jcbrand]
+- #577 New config variable [message_archiving_timeout](https://conversejs.org/docs/html/configuration.html#message-archiving-timeout) [jcbrand]
+- #587 Fix issue when logging out with `auto_logout=true` [davec82]
+- #589 Save scroll position on minimize and restore it on maximize [rlanvin]
+- #592 Add random resource for `auto_login`, add method generateResource to
+  generate random resource [davec82]
+- #598 Add option `synchronize_availability` [davec82]
+- #600 Fix change xmpp status also on icon-status click [davec82]
+- #616 converse-otr should depend on converse-minimize  [jcbrand]
+- #609 Remove split of fullname [lixmal]
+
+## 0.10.1 (2016-02-06)
+
+- #352 When the user has manually scrolled up in a chat window, don't scroll
+  down on chat event notifications. [jcbrand]
+- #524 Added [auto_join_on_invite](https://conversejs.org/docs/html/configuration.html#auto_join_on_invite)
+  parameter for automatically joining chat rooms. [ben]
+- #520 Set specific domain. Two new options [default_domain](https://conversejs.org/docs/html/configuration.html#default_domain)
+  and [locked_domain](https://conversejs.org/docs/html/configuration.html#locked_domain). [jcbrand]
+- #521 Not sending presence when connecting after disconnection. [jcbrand]
+- #535 Messages not received when room with mixed-case JID is used. [jcbrand]
+- #536 Presence not sent out (in cases where it should) after page refresh. [jcbrand]
+- #540 `bind is not a function` error for plugins without `initialize` method. [jcbrand]
+- #547 By default the `offline` state is no longer choosable.
+  See [include_offline_state](https://conversejs.org/docs/html/configuration.html#include-offline-state) for details. [jcbrand]
+- A chat room invite might come from someone not in your roster list. [ben]
+- #487 Empty the resources array when the resource is null [rlanvin]
+- #534 Updated Russian translation [LaconicTranslator]
+- #555 The status restored from sessionStorage is never updated [jcbrand]
+- #559 Remove reconnection timer once connected succesfully [m0cs]
+
+## 0.10.0 (2015-11-05)
+
+**Note:**
+*This release drops CSS support for IE8 and IE9.*
+
+- #459 Wrong datatype passed to converse.chatboxes.getChatBox. [hobblegobber, jcbrand]
+- #493 Roster push fix [jcbrand]
+- #403 emit an event `rosterPush` when a roster push happens [teseo]
+- #502. Chat room not opened in non_amd version. [rjanbiah]
+- #505 Typo caused [object Object] in room info [gromiak]
+- #508 "Is typing" doesn't automatically disappear [jcbrand]
+- #509 Updated Polish translations [ser]
+- #510 MUC room memberlist is being cleared with page reload when keepalive option is set. [jcbrand]
+- Add the ability to also drag-resize chat boxes horizontally. [jcbrand]
+- Updated Sass files and created a new style. [jcbrand]
+
+
+## 0.9.6 (2015-10-12)
+
+- Bugfix. Spinner doesn't disappear when scrolling up (when server doesn't support XEP-0313). [jcbrand]
+- #462 Fix MUC rooms with names containing special characters not working [1st8]
+- #467 Fix outgoing chat messages not having a msgid when being put into sessionStorage [1st8]
+- #468 Fix [object Object] being sometimes shown as status [1st8]
+- #472 Fix "Cannot read property 'splitOnce' of undefined" when typing /clear in a chat room. [jcbrand]
+- #493 Roster wasn't being updated after a Roster push update [teseo, jcbrand]
+- #496 Bugfix. Pings weren't being sent out. [teseo, jcbrand]
+- #499 Message not received due to non-unique message ids. [jcbrand]
+
+## 0.9.5 (2015-08-24)
+
+- #306 XEP-0313: Message Archive Management [jcbrand]
+- #439 auto_login and keepalive not working [jcbrand]
+- #440 null added as resource to contact [jcbrand]
+- Add new event serviceDiscovered [jcbrand]
+- Add a new configuration setting [muc_history_max_stanzas](https://conversejs.org/docs/html/configuration.html#muc-history-max-stanzas>). [jcbrand]
+
+## 0.9.4 (2015-07-04)
+
+- #144 Add Ping functionality and Pong handler [thierrytiti]
+- #234, #431 Messages aren't received when the user logs in with a mixed-case JID. [jcbrand]
+- #367 API methods for changing chat status (online, busy, away etc.) and status message [jcbrand]
+- #389 Allow login panel placeholders and roster item 'Name' translations. [gbonvehi]
+- #394 Option to allow chatting with pending contacts [thierrytiti]
+- #396 Add automatic Away mode and XEP-0352 support [thierrytiti]
+- #400, #410 Allow offline pretty status and placeholder for "Insert a smiley" to be translated [thierrytiti]
+- #401 Updated French translation [thierrytiti]
+- #404 CSS fix: position and width of the div #conversejs [thierrytiti]
+- #407 CSS: Fonts Path: editabable $font-path via sass/variables.scss [thierrytiti]
+- #408 MUC: missing toggle call handler and updated documentation about call [thierrytiti]
+- #413 Auto-detect user's locale to show date and time in the right format [thierrytiti]
+- #415 closeAllChatBoxes is giving ReferenceError when 2 chats are open [nevcos, jcbrand]
+- #416 Add icon for XA status [thierrytiti]
+- #418 Logging out with `auto_reconnect=true` causes reconnection retries [jcbrand]
+- #420 Updated German translation [1st8]
+- #427 Converse.js does not subscribe back to a contact not in the roster. [emmanuel-florent]
+- Add offline pretty status to enable translation [thierrytiti]
+- Bugfix. ClearSessions during unload event would throw an error when not logged in. [gbonvehi]
+- Bugfix. Manual login doesn't work when only websocket_url is set and not bosh_service_url. [jcbrand]
+- Bugfix. Wrong callback argument mapping in XmppStatus initialize: fullname is null [thierrytiti]
+- CSS fix: room-info bug on hover after room description loaded [thierrytiti]
+- CSS: Fonts Path: editabable $font-path via sass/variables.scss [thierrytiti]
+- Chat boxes returned by the API now have an `is_chatroom` attribute [jcbrand]
+- Decouple automatic away and XEP-0352 support. [jcbrand]
+- Don't carbon copy OTR messages. [jcbrand]
+- I18N: Autodetection of User Locale if no i18n setting is set. [thierrytiti]
+- Refactored in order to remove the strophe.roster.js dependency. [jcbrand]
+- Refactored the plugin architecture. Add `overrides` convention for
+  automatically overriding converse.js's methods and Backbone views and models. [jcbrand]
+- With keepalive, don't send out a presence stanza on each page load [jcbrand]
+
+## 0.9.3 (2015-05-01)
+
+- Add the ability to log in automatically. [jcbrand]
+- Remove `type=email` from JID field in login form. Resulting validation error confuses people. [jcbrand]
+- Add Ukranian translations [Andriy Kopystyansky]
+- #244 Add the ability to log in anonymously. [jcbrand]
+- #344 Enable the path to the sound files to be configured [thierrytiti and jcbrand]
+- #370 Unable to register a new user to ejabberd 2.1.11. [gbonvehi]
+- #372 Some offline users have a visible empty `<dd>` in the roster. [floriancargoet]
+- #374 Fix collapsed group visibility on page load. [floriancargoet]
+- #378 Expect full JIDs to be returned via XHR user search [thierrytiti]
+- #379 Updated French translations [thierrytiti]
+- #379 Fix for bower not finding crypto-js-evanvosberg#3.1.2-5 any more. [jcbrand]
+
+## 0.9.2 (2015-04-09)
+
+- Bugfix. Prevent attaching twice during initialization. [jcbrand]
+- API method chats.get can now also return chat boxes which haven't been opened yet. [jcbrand]
+- Add API method contacts.add. [pzia]
+- #356 Fix the plugin extend function. [floriancargoet]
+- #357 Fix the known bug where a state notification reopens a chat box. [floriancargoet]
+- #358 Bugfix. Chat rooms show the same occupants bug. [floriancargoet]
+- #359 Fix a timeout bug in chat state notifications. [floriancargoet]
+- #360 Incorrect roster height when `allow_contact_requests=true`. [floriancargoet, jcbrand]
+- #362 Add API for retrieving and opening rooms. [pzia]
+- #364 Text selection in chat boxes not shown in Firefox. [jcbrand]
+
+## 0.9.1 (2015-03-26)
+
+- Set the JID input field in the login form to `type=email`. [chatme]
+- New configuration setting [allow_contact_removal](https://conversejs.org/docs/html/configuration.html#allow-contact-removal) [jcbrand]
+- Document that event handlers receive 'event' obj as first arg. [jcbrand]
+- Add a test to check that notifications are played in chat rooms. [jcbrand]
+- #333 Enable automatic reconnection when `prebind` and `prebind_url` are specified. [jcbrand]
+- #339 Require the JID to be specified when using `keepalive` with `prebind`. Also add a logout API method. [jcbrand]
+- #349 Indicate visitors in chat rooms. [c143]
+
+## 0.9.0 (2015-03-06)
+
+- #204 Support websocket connections. [jcbrand]
+- #252, 253 Add fullname and jid to contact's tooltip in roster. [gbonvehi]
+- #292 Better support for XEP-0085 Chat State Notifications. [jcbrand]
+- #295 Document "allow_registration". [gbonvehi]
+- #304 Added Polish translations. [ser]
+- #305 presence/show text in XMPP request isn't allowed by specification. [gbonvehi]
+- Add new API method `chats.open` to open chat boxes. [jcbrand]
+- Add new API method to set and get configuration settings. [jcbrand]
+- Add responsiveness to CSS. We now use Sass preprocessor for generating CSS. [jcbrand]
+- Bugfix. Custom status message form doesn't submit/disappear. [jcbrand]
+- Calling the API method `contacts.get()` without parameters now returns all contacts. [jcbrand]
+- Don't send out the message carbons IQ stanza on each page load. [jcbrand]
+- New Makefile.win to build in Windows environments. [gbonvehi]
+- Norwegian Bokmål translations. [Andreas Lorentsen]
+- Removed deprecated API methods. [jcbrand]
+- Strophe.log and Strophe.error now uses converse.log to output messages. [gbonvehi]
+- The API method `chats.get` now only returns already opened chat boxes. [jcbrand]
+- Updated Afrikaans translations. [jcbrand]
+- Add new configuration setting [prebind_url](https://conversejs.org/docs/html/configuration.html#prebind-url) [jcbrand]
+
+## 0.8.6 (2014-12-07)
+
+- Bugfix. Login panel didn't appear under certain conditions. [jcbrand]
+- Bugfix. Error when trying to render chat room configuration form. [jcbrand]
+- Text on the registration form was not configurable or i18n aware. [jcbrand]
+- #285 With prebind the jid, rid and sid settings were ignored. [jcbrand]
+
+## 0.8.5 (2014-12-01)
+
+- #117 JIDs or nicknames not shown in chat rooms. [jcbrand]
+- #282 XEP-0077 In-band registration. [jcbrand]
+
+## 0.8.4 (2014-11-15)
+
+**note:**
+*Certain API methods have been deprecated in favor of a new API and will be removed in the 0.9.0 release.*
+
+- Bugfix. Error when trying to use prebind and keepalive together. [heban and jcbrand]
+- Bugfix. Cannot read property "top" of undefined. [jcbrand]
+- Add new event, noResumeableSession, for when keepalive=true and there aren't
+  any prebind session tokens. [jcbrand]
+- #46 Refactor the API and add new methods. [jcbrand]
+- #151 Browser locks/freezes with many roster users. [jcbrand]
+- #177 Setting status to offline does nothing. [jcbrand]
+- #232 Always get full name from model. [jcbrand]
+- #237 Unable to create room when `hide_muc_server` is `true`. [jcbrand]
+- #238 Rooms are not shown when `hide_offline_users` is `true`. [jcbrand]
+- #251 Non-minified builds for debugging. [jcbrand]
+- #260 Sent message carbons are not displayed. [jcbrand]
+- #262 Contact requests are not shown if page is reloaded. [jcbrand]
+- #264 Remove unnecessary commas for ie8 compatibility. [Deuteu]
+- #267 Unread messages counter wrongly gets incremented by chat state notifications. [Deuteu]
+- #274 Roster filtering results change with presence changes. [jcbrand]
+- #275 Custom status message doesn't reset. [jcbrand]
+- #278 Unread messages counter doesn't unbind it's events. [Deuteu]
+- #279 Handle more field types for MUC config forms. [gbonvehi]
+- #280 New config option, `hide_offline_users` [gbonvehi]
+
+## 0.8.3 (2014-09-22)
+
+- The Javascript build files in the 0.8.2 release weren't updated due to a
+  unnoticed build error. [jcbrand]
+
+## 0.8.2 (2014-09-22)
+
+- Converse.js now has the ability to maintain sessions across page loads.
+  Previously, the session tokens had to be handled externally and passed in.
+  See the [keepalive](https://conversejs.org/docs/html/configuration.html#keepalive) configuration setting. [jcbrand]
+- Allow changing of nickname in a chat room via /nick command. [jcbrand]
+- Allow a chat room user to be muted or unmuted with the /mute and /voice commands. [jcbrand]
+- Add a chat room toolbar button for toggling the list of occupants. [jcbrand]
+- Converse.js now responds to XEP-0030: Service Discovery requests. [jcbrand]
+- Bugfix. Roster groups all appear offline after page reload (with prebind).
+  See http://librelist.com/browser//conversejs/2014/8/26/problem-with-contact-list-everyone-is-offline/ [heban and jcbrand]
+- Bugfix concerning trimmed chats. Chats were being trimmed even though there was enough room. [jcbrand]
+- #62 Sound notifications will now also play when you are mentioned in a chat room. [jcbrand]
+- #212 Bugfix. Groups weren't being show again after the live filter was cleared. [jcbrand]
+- #215 (and also #75) XEP-0249: Direct MUC Invitations. [jcbrand]
+- #216 Contacts tab empty when using xhr_user_search. [hcderaad and jcbrand]
+- #219 New contacts added need page refresh to be accepted and become visible. [hcderaad and jcbrand]
+- #220 Non-AMD example page was not working. [xavier83ar and jcbrand]
+- #222 Control box state not remembered. [priyadi and jcbrand]
+- #223 Provide API to query buddy status. [priyadi and jcbrand]
+- #227 Updated Hebrew translations [GreenLunar]
+
+## 0.8.1 (2014-08-23)
+
+- Bugfix: Roster contacts' cache key too vague. [jcbrand]
+- Bugfix: Roster contacts weren't properly sorted according to chat status. [jcbrand]
+- #63 Support for sound notification when message is received. [jcbrand]
+- #212 Provide a live filter of the roster contacts. [jcbrand]
+
+## 0.8.0 (2014-08-04)
+
+**note**:
+    1. Converse.js is now relicensed under the [Mozilla Public License](http://www.mozilla.org/MPL/2.0/).
+    2. Configuration options for the chat toolbar have changed. Please refer to the [relevant documentation](http://devbox:8890/docs/html/configuration.html#visible-toolbar-buttons).
+    3. This release has reduced support for IE8 (some features won't work).
+    4. Events have been renamed to remove "on" prefix (sorry for any inconvenience).
+
+- No initial HTML markup is now needed in the document body for converse.js to work. [jcbrand]
+- All date handling is now done with moment.js. [jcbrand]
+- Add a new toolbar button for clearing chat messages. [jcbrand]
+- Chat boxes and rooms can now be resized vertically. [jcbrand]
+- Upgraded dependencies to their latest versions. [jcbrand]
+- Add new configuration setting [forwarded_messages](https://conversejs.org/docs/html/configuration.html#forwarded-messages).
+  Message forwarding was before a default behavior but is now optional (and disabled by default). [jcbrand]
+- Newly opened chat boxes always appear immediately left of the controlbox. [jcbrand]
+- #71 Chat boxes and rooms can be minimized. [jcbrand]
+- #83 Roster contacts can be shown according to their groups. [jcbrand]
+    Note: Converse.js can show users under groups if you have assigned them
+    already via another client or server configuration. There is not yet a way
+    to assign contacts to groups from within converse.js itself.
+- #123 Show converse.js in the resource assigned to a user. [jcbrand]
+- #130 Fixed bootstrap conflicts. [jcbrand]
+- #132 Support for [XEP-0280: Message Carbons](https://xmpp.org/extensions/xep-0280.html).
+    Configured via [message_carbons](https://conversejs.org/docs/html/configuration.html#message-carbons) [hejazee]
+- #176 Add support for caching in sessionStorage as opposed to localStorage. [jcbrand]
+- #180 RID and SID undefined [g8g3]
+- #191 No messages history [heban]
+- #192 Error: xhr_user_search_url is not defined. [jcbrand]
+- #195 Chinese translations. [lancelothuxi]
+- #196 [Safari v7.0.5] TypeError: Attempted to assign to readonly property. [g8g3]
+- #199 Improved Spanish translations [chilicuil]
+- #201 Add zh-locale to fix build task [schoetty]
+
+## 0.7.4 (2014-03-05)
+
+**note:**
+*This release contains an important security fix. Thanks to Renaud Dubourguais from [Synacktiv](http://synacktiv.com) for reporting the vulnerability.*
+
+- #125 Bugfix: crypto dependencies loaded in wrong order [jcbrand]
+- Bugfix: action messages (i.e. /me) didn't work in OTR mode. [jcbrand]
+- Security fix: Ensure that message URLs are properly encoded. [jcbrand]
+
+## 0.7.3 (2014-02-23)
+
+- #93 Add API methods exposing the RID and SID values. Can be disabled. [jcbrand]
+- #102 Option to enable OTR by default. [Aupajo]
+- #103 Option to display a call button in the chatbox toolbar, to allow third-party libraries to provide a calling feature. [Aupajo]
+- #108 Japanese Translations [mako09]
+- #111 OTR not working when using converse.js with prebinding. [jseidl, jcbrand]
+- #114, #124 Hewbrew Translations [GreenLunar]
+- #115 Indonesian Translations [priyadi]
+
+## 0.7.2 (2013-12-18)
+
+**note**
+*This release contains an important security fix. Thanks to hejsan for reporting the vulnerability.*
+
+- #48 Add event emitter support and emit events. [jcbrand]
+- #97 Wrong number of online contacts shown with config option `show_only_online_users`. [jcbrand]
+- #100 Make the fetching of vCards optional (enabled by default). [jcbrand]
+- Sanitize message text to avoid Javascript injection attacks.  [jcbrand]
+
+## 0.7.1 (2013-11-17)
+
+- Don't load OTR crypto if the browser doesn't have a CSRNG [jcbrand]
+- Don't break when crypto libraries aren't defined. [jcbrand]
+- Check if canvas is supported before trying to render the user avatar [jcbrand]
+- Use newest strophe.muc plugin. Fixes #85 [jcbrand]
+
+**note:**
+If you are using the development libraries, you'll need to run ``bower update``
+to fetch the newest strophe.muc.plugin (for bugfix of #85).
+
+This release contains 3 different builds:
+- converse.min.js
+- converse-no-otr.min.js (Without OTR encryption)
+- converse-no-locales-no-otr.min.js (Without OTR encryption or any translations)
+
+## 0.7.0 (2013-11-13)
+
+### Important:
+
+This release includes support for [Off-the-record encryption](https://otr.cypherpunks.ca).
+For this to work, your browser needs a CSPRNG (Cryptographically secure pseudorandom number generator).
+
+Internet Explorer of all versions doesn't have one at all, neither does older versions of Firefox.
+
+If you need to support older browsers, please download the latest release from the 0.6 bran
+
+#### Features:
+
+- Add a toolbar to the chat boxes [jcbrand]
+- Add support for OTR (off-the-record) encryption [jcbrand]
+- Add support for smileys [jcbrand]
+- Simplified boilerplate markup [jcbrand]
+- New configuration settings, `xhr_custom_status_url` and `xhr_user_search_url` [jcbrand]
+
+**note:**
+*This release introduces a backward incompatible change. The boilerplate
+HTML needed in your webpage for converse.js to work has been reduced to a
+single div: `<div id="conversejs"></div>`*
+
+#### Bugfixes:
+
+- #58 Contact's name gets replaced with their JID [jcbrand]
+- #81 Requesting contacts appear as pending contacts [jcbrand]
+
+## 0.6.6 (2013-10-16)
+
+- Bugfix: Presence stanza must be sent out after roster has been initialized [jcbrand]
+- Bugfix: Don't reconnect while still disconnecting, causes endless authentication loops. [jcbrand]
+- Dutch translation [maartenkling]
+
+## 0.6.5 (2013-10-08)
+
+- Fetch vCards asynchronously once a roster contact is added [jcbrand]
+- Hungarian translation [w3host]
+- Russian translation [bkocherov]
+- Update CSS to avoid clash with bootstrap [seocam]
+- New config option `allow_muc` toggles multi-user chat (MUC) [jcbrand]
+- New config option `allow_contact_requests` toggles user adding [jcbrand]
+- New config option `show_only_online_users` [jcbrand]
+
+## 0.6.4 (2013-09-15)
+
+- Add icon for the unavailable chat state. [jcbrand]
+- Chat state descriptions weren't translation aware. [jcbrand]
+- Clear messages from localStorage when user types "/clear". [jcbrand]
+- The 'xa' chat state wasn't being handled properly. [jcbrand]
+- Updated pt-BR translations [seocam]
+- Updated af and de translations [jcbrand]
+
+## 0.6.3 (2013-09-12)
+
+*NB: This release contains an important security fix. Please don't use older
+versions of the 0.6 branch.*
+
+- French translations. [tdesvenain]
+- Bugfix: Messages were stored against buddy JID and not own JID. [jcbrand]
+
+## 0.6.2 (2013-08-29)
+
+- Bugfix. The remove icon wasn't appearing in the contacts roster. [jcbrand]
+- Bugfix. With auto_subscribe=True, the "Pending Contacts" header didn't disappear
+  after a new user was accepted. [jcbrand]
+
+## 0.6.1 (2013-08-28)
+
+- IE9 and IE8 CSS fixes. [jcbrand]
+- Bugfix: Pencil icon not visible (for setting status update). [jcbrand]
+- Bugfix: RID, JID and SID initialization values were being ignored. [jcbrand]
+- Bugfix: Fall back to English if a non-existing locale was specified. [jcbrand]
+
+## 0.6.0 (2013-08-26)
+
+- #39 Documentation for minifying JS is wrong. [jcbrand]
+- #41 prebind and show_controlbox_by_default true fails. [jcbrand]
+- With prebinding, attaching to the connection now happens inside Converse and
+  not as a separate step after initialization. [jcbrand]
+- Register presence and message handlers before fetching the roster. Otherwise
+  some presence notifications might be missed. [jcbrand]
+- Add a debug option (logs to the browser console). [jcbrand]
+- Use font icons from http://icomoon.io [jcbrand]
+- Added a static mockup to aid CSS/design process. [jcbrand]
+- Save language codes with hyphens. Thanks to @seocam. [jcbrand]
+- The combined and minified JS file now uses almond and not require.js. [jcbrand]
+
+## 0.5.2 (2013-08-05)
+
+- Important security update. Don't expose the Strophe connection object globally. [jcbrand]
+
+## 0.5.1 (2013-08-04)
+
+- #13, #14: Messages sent between to GTalk accounts weren't being received. [jcbrand]
+- #32: Default status was offline when user didn't have contacts. [jcbrand]
+- Attach panels to the DOM upon initialize. [jcbrand]
+
+## 0.5.0 (2013-07-30)
+
+- #09 Remove dependency on AMD/require.js [jcbrand]
+- #22 Fixed compare operator in strophe.muc [sonata82]
+- #23 Add Italian translations [ctrlaltca]
+- #24 Add Spanish translations [macagua]
+- #25 Using span with css instead of img [matheus-morfi]
+- #26 Only the first minute digit shown in chatbox. [jcbrand]
+- #28 Add Brazilian Portuguese translations [matheus-morfi]
+- Use Bower to manage 3rd party dependencies. [jcbrand]
+
+## 0.4.0 (2013-06-03)
+
+- CSS tweaks: fixed overflowing text in status message and chat rooms list. [jcbrand]
+- Bugfix: Couldn't join chat room when clicking from a list of rooms. [jcbrand]
+- Add better support for kicking or banning users from chat rooms. [jcbrand]
+- Fixed alignment of chat messages in Firefox. [jcbrand]
+- More intelligent fetching of vCards. [jcbrand]
+- Fixed a race condition bug. Make sure that the roster is populated before sending initial presence. [jcbrand]
+- Reconnect automatically when the connection drops. [jcbrand]
+- Add support for internationalization. [jcbrand]
+
+## 0.3.0 (2013-05-21)
+
+- Add vCard support [jcbrand]
+- Remember custom status messages upon reload. [jcbrand]
+- Remove jquery-ui dependency. [jcbrand]
+- Use backbone.localStorage to store the contacts roster, open chatboxes and chat messages. [jcbrand]
+- Fixed user status handling, which wasn't 100% according to the spec. [jcbrand]
+- Separate messages according to day in chats. [jcbrand]
+- Add support for specifying the BOSH bind URL as configuration setting. [jcbrand]
+- #8 Improve the message counter to only increment when the window is not focused [witekdev]
+- Make fetching of list of chat rooms on a server a configuration option. [jcbrand]
+- Use service discovery to show all available features on a room. [jcbrand]
+- Multi-user chat rooms are now configurable. [jcbrand]
+
+## 0.2.0 (2013-03-28)
+
+- Performance enhancements and general script cleanup [ichim-david]
+- Add "Connecting to chat..." info [alecghica]
+- Various smaller improvements and bugfixes [jcbrand]
+
+## 0.1.0 (2012-06-12)
+
+- Created [jcbrand]

+ 12 - 0
COPYRIGHT

@@ -0,0 +1,12 @@
+/** Converse.js
+ *
+ *  An XMPP chat client that runs in the browser.
+ *
+ *  Version: 9.1.1
+ *
+ *  Copyright: JC Brand 2013-2018
+ *  Except for 3rd party dependencies.
+ *  Please refer to the unminified version of this file for details.
+ *
+ *  You can download it at: https://github.com/conversejs/converse.js/releases
+ */

+ 373 - 0
LICENSE

@@ -0,0 +1,373 @@
+Mozilla Public License Version 2.0
+==================================
+
+1. Definitions
+--------------
+
+1.1. "Contributor"
+    means each individual or legal entity that creates, contributes to
+    the creation of, or owns Covered Software.
+
+1.2. "Contributor Version"
+    means the combination of the Contributions of others (if any) used
+    by a Contributor and that particular Contributor's Contribution.
+
+1.3. "Contribution"
+    means Covered Software of a particular Contributor.
+
+1.4. "Covered Software"
+    means Source Code Form to which the initial Contributor has attached
+    the notice in Exhibit A, the Executable Form of such Source Code
+    Form, and Modifications of such Source Code Form, in each case
+    including portions thereof.
+
+1.5. "Incompatible With Secondary Licenses"
+    means
+
+    (a) that the initial Contributor has attached the notice described
+        in Exhibit B to the Covered Software; or
+
+    (b) that the Covered Software was made available under the terms of
+        version 1.1 or earlier of the License, but not also under the
+        terms of a Secondary License.
+
+1.6. "Executable Form"
+    means any form of the work other than Source Code Form.
+
+1.7. "Larger Work"
+    means a work that combines Covered Software with other material, in 
+    a separate file or files, that is not Covered Software.
+
+1.8. "License"
+    means this document.
+
+1.9. "Licensable"
+    means having the right to grant, to the maximum extent possible,
+    whether at the time of the initial grant or subsequently, any and
+    all of the rights conveyed by this License.
+
+1.10. "Modifications"
+    means any of the following:
+
+    (a) any file in Source Code Form that results from an addition to,
+        deletion from, or modification of the contents of Covered
+        Software; or
+
+    (b) any new file in Source Code Form that contains any Covered
+        Software.
+
+1.11. "Patent Claims" of a Contributor
+    means any patent claim(s), including without limitation, method,
+    process, and apparatus claims, in any patent Licensable by such
+    Contributor that would be infringed, but for the grant of the
+    License, by the making, using, selling, offering for sale, having
+    made, import, or transfer of either its Contributions or its
+    Contributor Version.
+
+1.12. "Secondary License"
+    means either the GNU General Public License, Version 2.0, the GNU
+    Lesser General Public License, Version 2.1, the GNU Affero General
+    Public License, Version 3.0, or any later versions of those
+    licenses.
+
+1.13. "Source Code Form"
+    means the form of the work preferred for making modifications.
+
+1.14. "You" (or "Your")
+    means an individual or a legal entity exercising rights under this
+    License. For legal entities, "You" includes any entity that
+    controls, is controlled by, or is under common control with You. For
+    purposes of this definition, "control" means (a) the power, direct
+    or indirect, to cause the direction or management of such entity,
+    whether by contract or otherwise, or (b) ownership of more than
+    fifty percent (50%) of the outstanding shares or beneficial
+    ownership of such entity.
+
+2. License Grants and Conditions
+--------------------------------
+
+2.1. Grants
+
+Each Contributor hereby grants You a world-wide, royalty-free,
+non-exclusive license:
+
+(a) under intellectual property rights (other than patent or trademark)
+    Licensable by such Contributor to use, reproduce, make available,
+    modify, display, perform, distribute, and otherwise exploit its
+    Contributions, either on an unmodified basis, with Modifications, or
+    as part of a Larger Work; and
+
+(b) under Patent Claims of such Contributor to make, use, sell, offer
+    for sale, have made, import, and otherwise transfer either its
+    Contributions or its Contributor Version.
+
+2.2. Effective Date
+
+The licenses granted in Section 2.1 with respect to any Contribution
+become effective for each Contribution on the date the Contributor first
+distributes such Contribution.
+
+2.3. Limitations on Grant Scope
+
+The licenses granted in this Section 2 are the only rights granted under
+this License. No additional rights or licenses will be implied from the
+distribution or licensing of Covered Software under this License.
+Notwithstanding Section 2.1(b) above, no patent license is granted by a
+Contributor:
+
+(a) for any code that a Contributor has removed from Covered Software;
+    or
+
+(b) for infringements caused by: (i) Your and any other third party's
+    modifications of Covered Software, or (ii) the combination of its
+    Contributions with other software (except as part of its Contributor
+    Version); or
+
+(c) under Patent Claims infringed by Covered Software in the absence of
+    its Contributions.
+
+This License does not grant any rights in the trademarks, service marks,
+or logos of any Contributor (except as may be necessary to comply with
+the notice requirements in Section 3.4).
+
+2.4. Subsequent Licenses
+
+No Contributor makes additional grants as a result of Your choice to
+distribute the Covered Software under a subsequent version of this
+License (see Section 10.2) or under the terms of a Secondary License (if
+permitted under the terms of Section 3.3).
+
+2.5. Representation
+
+Each Contributor represents that the Contributor believes its
+Contributions are its original creation(s) or it has sufficient rights
+to grant the rights to its Contributions conveyed by this License.
+
+2.6. Fair Use
+
+This License is not intended to limit any rights You have under
+applicable copyright doctrines of fair use, fair dealing, or other
+equivalents.
+
+2.7. Conditions
+
+Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
+in Section 2.1.
+
+3. Responsibilities
+-------------------
+
+3.1. Distribution of Source Form
+
+All distribution of Covered Software in Source Code Form, including any
+Modifications that You create or to which You contribute, must be under
+the terms of this License. You must inform recipients that the Source
+Code Form of the Covered Software is governed by the terms of this
+License, and how they can obtain a copy of this License. You may not
+attempt to alter or restrict the recipients' rights in the Source Code
+Form.
+
+3.2. Distribution of Executable Form
+
+If You distribute Covered Software in Executable Form then:
+
+(a) such Covered Software must also be made available in Source Code
+    Form, as described in Section 3.1, and You must inform recipients of
+    the Executable Form how they can obtain a copy of such Source Code
+    Form by reasonable means in a timely manner, at a charge no more
+    than the cost of distribution to the recipient; and
+
+(b) You may distribute such Executable Form under the terms of this
+    License, or sublicense it under different terms, provided that the
+    license for the Executable Form does not attempt to limit or alter
+    the recipients' rights in the Source Code Form under this License.
+
+3.3. Distribution of a Larger Work
+
+You may create and distribute a Larger Work under terms of Your choice,
+provided that You also comply with the requirements of this License for
+the Covered Software. If the Larger Work is a combination of Covered
+Software with a work governed by one or more Secondary Licenses, and the
+Covered Software is not Incompatible With Secondary Licenses, this
+License permits You to additionally distribute such Covered Software
+under the terms of such Secondary License(s), so that the recipient of
+the Larger Work may, at their option, further distribute the Covered
+Software under the terms of either this License or such Secondary
+License(s).
+
+3.4. Notices
+
+You may not remove or alter the substance of any license notices
+(including copyright notices, patent notices, disclaimers of warranty,
+or limitations of liability) contained within the Source Code Form of
+the Covered Software, except that You may alter any license notices to
+the extent required to remedy known factual inaccuracies.
+
+3.5. Application of Additional Terms
+
+You may choose to offer, and to charge a fee for, warranty, support,
+indemnity or liability obligations to one or more recipients of Covered
+Software. However, You may do so only on Your own behalf, and not on
+behalf of any Contributor. You must make it absolutely clear that any
+such warranty, support, indemnity, or liability obligation is offered by
+You alone, and You hereby agree to indemnify every Contributor for any
+liability incurred by such Contributor as a result of warranty, support,
+indemnity or liability terms You offer. You may include additional
+disclaimers of warranty and limitations of liability specific to any
+jurisdiction.
+
+4. Inability to Comply Due to Statute or Regulation
+---------------------------------------------------
+
+If it is impossible for You to comply with any of the terms of this
+License with respect to some or all of the Covered Software due to
+statute, judicial order, or regulation then You must: (a) comply with
+the terms of this License to the maximum extent possible; and (b)
+describe the limitations and the code they affect. Such description must
+be placed in a text file included with all distributions of the Covered
+Software under this License. Except to the extent prohibited by statute
+or regulation, such description must be sufficiently detailed for a
+recipient of ordinary skill to be able to understand it.
+
+5. Termination
+--------------
+
+5.1. The rights granted under this License will terminate automatically
+if You fail to comply with any of its terms. However, if You become
+compliant, then the rights granted under this License from a particular
+Contributor are reinstated (a) provisionally, unless and until such
+Contributor explicitly and finally terminates Your grants, and (b) on an
+ongoing basis, if such Contributor fails to notify You of the
+non-compliance by some reasonable means prior to 60 days after You have
+come back into compliance. Moreover, Your grants from a particular
+Contributor are reinstated on an ongoing basis if such Contributor
+notifies You of the non-compliance by some reasonable means, this is the
+first time You have received notice of non-compliance with this License
+from such Contributor, and You become compliant prior to 30 days after
+Your receipt of the notice.
+
+5.2. If You initiate litigation against any entity by asserting a patent
+infringement claim (excluding declaratory judgment actions,
+counter-claims, and cross-claims) alleging that a Contributor Version
+directly or indirectly infringes any patent, then the rights granted to
+You by any and all Contributors for the Covered Software under Section
+2.1 of this License shall terminate.
+
+5.3. In the event of termination under Sections 5.1 or 5.2 above, all
+end user license agreements (excluding distributors and resellers) which
+have been validly granted by You or Your distributors under this License
+prior to termination shall survive termination.
+
+************************************************************************
+*                                                                      *
+*  6. Disclaimer of Warranty                                           *
+*  -------------------------                                           *
+*                                                                      *
+*  Covered Software is provided under this License on an "as is"       *
+*  basis, without warranty of any kind, either expressed, implied, or  *
+*  statutory, including, without limitation, warranties that the       *
+*  Covered Software is free of defects, merchantable, fit for a        *
+*  particular purpose or non-infringing. The entire risk as to the     *
+*  quality and performance of the Covered Software is with You.        *
+*  Should any Covered Software prove defective in any respect, You     *
+*  (not any Contributor) assume the cost of any necessary servicing,   *
+*  repair, or correction. This disclaimer of warranty constitutes an   *
+*  essential part of this License. No use of any Covered Software is   *
+*  authorized under this License except under this disclaimer.         *
+*                                                                      *
+************************************************************************
+
+************************************************************************
+*                                                                      *
+*  7. Limitation of Liability                                          *
+*  --------------------------                                          *
+*                                                                      *
+*  Under no circumstances and under no legal theory, whether tort      *
+*  (including negligence), contract, or otherwise, shall any           *
+*  Contributor, or anyone who distributes Covered Software as          *
+*  permitted above, be liable to You for any direct, indirect,         *
+*  special, incidental, or consequential damages of any character      *
+*  including, without limitation, damages for lost profits, loss of    *
+*  goodwill, work stoppage, computer failure or malfunction, or any    *
+*  and all other commercial damages or losses, even if such party      *
+*  shall have been informed of the possibility of such damages. This   *
+*  limitation of liability shall not apply to liability for death or   *
+*  personal injury resulting from such party's negligence to the       *
+*  extent applicable law prohibits such limitation. Some               *
+*  jurisdictions do not allow the exclusion or limitation of           *
+*  incidental or consequential damages, so this exclusion and          *
+*  limitation may not apply to You.                                    *
+*                                                                      *
+************************************************************************
+
+8. Litigation
+-------------
+
+Any litigation relating to this License may be brought only in the
+courts of a jurisdiction where the defendant maintains its principal
+place of business and such litigation shall be governed by laws of that
+jurisdiction, without reference to its conflict-of-law provisions.
+Nothing in this Section shall prevent a party's ability to bring
+cross-claims or counter-claims.
+
+9. Miscellaneous
+----------------
+
+This License represents the complete agreement concerning the subject
+matter hereof. If any provision of this License is held to be
+unenforceable, such provision shall be reformed only to the extent
+necessary to make it enforceable. Any law or regulation which provides
+that the language of a contract shall be construed against the drafter
+shall not be used to construe this License against a Contributor.
+
+10. Versions of the License
+---------------------------
+
+10.1. New Versions
+
+Mozilla Foundation is the license steward. Except as provided in Section
+10.3, no one other than the license steward has the right to modify or
+publish new versions of this License. Each version will be given a
+distinguishing version number.
+
+10.2. Effect of New Versions
+
+You may distribute the Covered Software under the terms of the version
+of the License under which You originally received the Covered Software,
+or under the terms of any subsequent version published by the license
+steward.
+
+10.3. Modified Versions
+
+If you create software not governed by this License, and you want to
+create a new license for such software, you may create and use a
+modified version of this License if you rename the license and remove
+any references to the name of the license steward (except to note that
+such modified license differs from this License).
+
+10.4. Distributing Source Code Form that is Incompatible With Secondary
+Licenses
+
+If You choose to distribute Source Code Form that is Incompatible With
+Secondary Licenses under the terms of this version of the License, the
+notice described in Exhibit B of this License must be attached.
+
+Exhibit A - Source Code Form License Notice
+-------------------------------------------
+
+  This Source Code Form is subject to the terms of the Mozilla Public
+  License, v. 2.0. If a copy of the MPL was not distributed with this
+  file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+If it is not possible or desirable to put the notice in a particular
+file, then You may include the notice in a location (such as a LICENSE
+file in a relevant directory) where a recipient would be likely to look
+for such a notice.
+
+You may add additional accurate notices of copyright ownership.
+
+Exhibit B - "Incompatible With Secondary Licenses" Notice
+---------------------------------------------------------
+
+  This Source Code Form is "Incompatible With Secondary Licenses", as
+  defined by the Mozilla Public License, v. 2.0.

+ 250 - 0
Makefile

@@ -0,0 +1,250 @@
+# You can set these variables from the command line.
+BABEL			?= node_modules/.bin/babel
+BOOTSTRAP		= ./node_modules/
+BUILDDIR		= ./docs
+KARMA			?= ./node_modules/.bin/karma
+CLEANCSS		?= ./node_modules/clean-css-cli/bin/cleancss
+ESLINT			?= ./node_modules/.bin/eslint
+HTTPSERVE	 	?= ./node_modules/.bin/http-server
+HTTPSERVE_PORT	?= 8000
+INKSCAPE		?= inkscape
+INSTALL			?= install
+JSDOC			?=	./node_modules/.bin/jsdoc
+LERNA			?= ./node_modules/.bin/lerna
+OXIPNG			?= oxipng
+PAPER		 	=
+RJS				?= ./node_modules/.bin/r.js
+NPX				?= ./node_modules/.bin/npx
+SASS			?= ./node_modules/.bin/sass
+SED				?= sed
+SPHINXBUILD	 	?= ./bin/sphinx-build
+SPHINXOPTS		=
+XGETTEXT		= xgettext
+
+
+# Internal variables.
+ALLSPHINXOPTS	= -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) ./docs/source
+VERSION_FORMAT	= [0-9]+\.[0-9]+\.[0-9]+
+
+.PHONY: all
+all: node_modules dist
+
+.PHONY: help
+help:
+	@echo "Please use \`make <target>' where <target> is one of the following:"
+	@echo ""
+	@echo " all         	Set up dev environment and create all builds"
+	@echo " dist       		Create minified builds of converse.js and all its dependencies."
+	@echo " clean       	Remove all NPM packages."
+	@echo " check       	Run all tests."
+	@echo " dev         	Set up the development environment and build unminified resources. To force a fresh start, run 'make clean' first."
+	@echo " devserver   	Set up the development environment and start the webpack dev server."
+	@echo " doc         	Make standalone HTML files of the documentation."
+	@echo " po          	Generate gettext PO files for each i18n language."
+	@echo " pot         	Generate a gettext POT file to be used for translations."
+	@echo " release     	Prepare a new release of converse.js. E.g. make release VERSION=0.9.5"
+	@echo " serve       	Serve this directory via a webserver on port 8000."
+	@echo " serve_bg    	Same as \"serve\", but do it in the background"
+	@echo " node_modules	Install NPM dependencies"
+	@echo " watch       	Watch for changes on JS and scss files and automatically update the generated files."
+	@echo " logo        	Generate PNG logos of multiple sizes."
+
+
+########################################################################
+## Miscellaneous
+
+.PHONY: serve
+serve: node_modules dist
+	$(HTTPSERVE) -p $(HTTPSERVE_PORT) -c-1
+
+.PHONY: serve_bg
+serve_bg: node_modules
+	$(HTTPSERVE) -p $(HTTPSERVE_PORT) -c-1 -s &
+
+########################################################################
+## Translation machinery
+
+dist/converse-no-dependencies.js: src webpack/webpack.common.js webpack/webpack.nodeps.js @converse/headless node_modules
+	npm run nodeps
+
+GETTEXT = $(XGETTEXT) --from-code=UTF-8 --language=JavaScript --keyword=__ --keyword=___ --keyword=i18n_ --force-po --output=src/i18n/converse.pot --package-name=Converse.js --copyright-holder="Jan-Carel Brand" --package-version=9.1.1 dist/converse-no-dependencies.js -c
+
+src/i18n/converse.pot: dist/converse-no-dependencies.js
+	$(GETTEXT) 2>&1 > /dev/null; exit $$?;
+	rm dist/converse-no-dependencies.js
+	rm dist/tmp.css
+
+.PHONY: pot
+pot: src/i18n/converse.pot
+
+.PHONY: po
+po:
+	find ./src/i18n -maxdepth 1 -mindepth 1 -type d -exec msgmerge {}/LC_MESSAGES/converse.po ./src/i18n/converse.pot -U \;
+
+########################################################################
+## Release management
+
+.PHONY: release
+release:
+	$(SED) -i '/^_converse.VERSION_NAME =/s/=.*/= "v$(VERSION)";/' src/headless/core.js
+	$(SED) -i '/Version:/s/:.*/: $(VERSION)/' COPYRIGHT
+	$(SED) -i '/Project-Id-Version:/s/:.*/: Converse.js $(VERSION)\n"/' src/i18n/converse.pot
+	$(SED) -i '/"version":/s/:.*/: "$(VERSION)",/' manifest.json
+	$(SED) -i '/"version":/s/:.*/: "$(VERSION)",/' package.json
+	$(SED) -i '/"version":/s/:.*/: "$(VERSION)",/' src/headless/package.json
+	$(SED) -ri 's/--package-version=$(VERSION_FORMAT)/--package-version=$(VERSION)/' Makefile
+	$(SED) -i -e "/version =/s/=.*/= '$(VERSION)'/" -e "/release =/s/=.*/= '$(VERSION)'/" docs/source/conf.py
+	$(SED) -i "s/[Uu]nreleased/`date +%Y-%m-%d`/" CHANGES.md
+	$(SED) -ri 's,cdn.conversejs.org/$(VERSION_FORMAT),cdn.conversejs.org/$(VERSION),' docs/source/quickstart.rst
+	$(SED) -ri 's,cdn.conversejs.org/$(VERSION_FORMAT),cdn.conversejs.org/$(VERSION),' *.html
+	$(SED) -ri 's,cdn.conversejs.org/$(VERSION_FORMAT),cdn.conversejs.org/$(VERSION),' demo/*.html
+	make pot
+	make po
+	make dist
+	npm pack
+	cd src/headless && npm pack
+
+.PHONY: postrelease
+postrelease:
+	$(SED) -i '/^_converse.VERSION_NAME =/s/=.*/= "v$(VERSION)dev";/' src/headless/core.js
+
+########################################################################
+## Install dependencies
+
+$(LERNA):
+	npm install lerna
+
+${NVM_DIR}/nvm.sh:
+	wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
+	source ~/.bashrc
+
+.PHONY: nvm
+nvm: ${NVM_DIR}/nvm.sh
+
+.PHONY: node
+node: .nvmrc
+	. $(HOME)/.nvm/nvm.sh && nvm install
+
+package-lock.json: package.json
+	npm install
+
+node_modules: $(LERNA) package.json package-lock.json src/headless/package.json src/headless/package-lock.json
+	npm run lerna
+
+.PHONY: clean
+clean:
+	npm run clean
+	rm -rf lib bin include parts
+
+.PHONY: dev
+dev: node_modules
+	npm run dev
+
+.PHONY: devserver
+devserver: node_modules
+	npm run serve
+
+########################################################################
+## Builds
+
+dist/converse.js:: node_modules
+	npm run build
+
+dist/converse.css:: node_modules
+	npm run build
+
+dist/website.css:: node_modules src/shared/styles/website.scss
+	$(SASS) --load-path=$(BOOTSTRAP) src/shared/styles/website.scss $@
+
+dist/website.min.css:: node_modules dist/website.css
+	$(CLEANCSS) dist/website.css > $@
+
+.PHONY: watch
+watch: node_modules
+	npm run watch
+
+.PHONY: logo
+logo: logo/conversejs-transparent16.png \
+		logo/conversejs-transparent19.png \
+		logo/conversejs-transparent48.png \
+		logo/conversejs-transparent128.png \
+		logo/conversejs-transparent512.png \
+		logo/conversejs-filled16.png \
+		logo/conversejs-filled19.png \
+		logo/conversejs-filled48.png \
+		logo/conversejs-filled128.png \
+		logo/conversejs-filled512.png \
+
+logo/conversejs-transparent%.png:: logo/conversejs-transparent.svg
+	$(INKSCAPE) -e $@ -w $* $<
+	$(OXIPNG) $@
+
+logo/conversejs-filled%.png:: logo/conversejs-filled.svg
+	$(INKSCAPE) -e $@ -w $* $<
+	$(OXIPNG) $@
+
+@converse/headless: src/headless
+
+src/headless/dist/converse-headless.js: src webpack/webpack.common.js node_modules @converse/headless
+	npm run headless-dev
+
+src/headless/dist/converse-headless.min.js: src webpack/webpack.common.js node_modules @converse/headless
+	npm run headless
+
+dist:: node_modules src/* | dist/website.css dist/website.min.css
+	npm run headless
+	npm run build
+
+.PHONY: install
+install:: dist
+
+.PHONY: cdn
+cdn:: node_modules
+	npm run cdn
+
+########################################################################
+## Tests
+
+.PHONY: eslint
+eslint: node_modules
+	$(ESLINT) src/*.js
+	$(ESLINT) src/utils/*.js
+	$(ESLINT) src/headless/*.js
+	$(ESLINT) src/headless/utils/*.js
+
+.PHONY: check
+check: eslint | dist/converse.js dist/converse.css
+	$(KARMA) start karma.conf.js $(ARGS)
+
+.PHONY: test
+test:
+	$(KARMA) start karma.conf.js $(ARGS)
+
+########################################################################
+## Documentation
+
+./bin/activate:
+	python3 -m venv .
+
+.installed.cfg: requirements.txt buildout.cfg
+	./bin/pip install -r requirements.txt
+	./bin/pip install --upgrade pip==21.3.1
+	./bin/pip install --upgrade setuptools==51.3.3
+	./bin/buildout -v
+
+docsdev: ./bin/activate .installed.cfg
+
+.PHONY: html
+html: doc
+
+.PHONY: doc
+doc: node_modules docsdev apidoc
+	rm -rf $(BUILDDIR)/html
+	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
+	make apidoc
+	@echo
+	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
+
+PHONY: apidoc
+apidoc:
+	find ./src -type d -name node_modules -prune -false -o -name "*.js" | xargs $(JSDOC) --private --readme docs/source/jsdoc_intro.md -c docs/source/conf.json -d docs/html/api

+ 193 - 0
README.md

@@ -0,0 +1,193 @@
+<h2 align="center">
+  <a href="https://conversejs.org" target="_blank" rel="noopener">
+    <img alt="Converse.js" src="https://github.com/conversejs/converse.js/blob/master/logo/readme.png" width="480">
+  </a>
+</h2>
+
+
+[![XMPP Chat](https://conference.conversejs.org/muc_badge/discuss@conference.conversejs.org)](https://inverse.chat/#converse/room?jid=discuss@conference.conversejs.org)
+[![CI Tests](https://github.com/conversejs/converse.js/actions/workflows/karma-tests.yml/badge.svg)](https://github.com/conversejs/converse.js/actions/workflows/karma-tests.yml)
+[![Bountysource bounties](https://img.shields.io/bountysource/team/converse.js/activity.svg?maxAge=2592000)](https://www.bountysource.com/teams/converse.js/issues?tracker_ids=194169)
+[![Translation status](https://hosted.weblate.org/widgets/conversejs/-/svg-badge.svg)](https://hosted.weblate.org/engage/conversejs/?utm_source=widget)
+
+[Converse](https://conversejs.org) is a web based [XMPP/Jabber](https://xmpp.org) chat client.
+
+You can either use it as a webchat app, or you can integrate it into your own website.
+
+It's 100% client-side JavaScript, HTML and CSS and the only backend required
+is a modern XMPP server.
+
+Please support this project via [Patreon](https://www.patreon.com/jcbrand) or [Liberapay](https://liberapay.com/jcbrand)
+
+## Demo
+
+Converse is hosted and can be used at [https://conversejs.org](https://conversejs.org).
+
+A demo showing anonymous login is available at [https://conversejs.org/demo/anonymous.html](https://conversejs.org/demo/anonymous.html)
+and a demo which shows how you can embed a single chat room into a page is
+avialable at [https://conversejs.org/demo/embedded.html](https://conversejs.org/demo/embedded.html).
+
+## Documentation
+
+The developer/integrator documentation can be found at [https://conversejs.org/docs/html](https://conversejs.org/docs/html).
+
+You'll probably want to begin with the [quickstart guide](https://conversejs.org/docs/html/quickstart.html),
+which shows you how to use the CDN (content delivery network) to quickly get a demo up and running.
+
+## Converse modes
+
+### Overlay
+
+In overlay mode, Converse appears overlayed chats on top of the website.
+
+![Screenshot of Converse in overlay mode](https://conversejs.org/screenshots/Converse-overlayed.png)
+
+### Fullpage
+
+In fullpage mode, Converse behaves like a single-page app that covers the whole browser viewport.
+
+![Screenshot of Converse 9.0.0 in fullpage mode](https://conversejs.org/screenshots/Converse-fullscreen.png)
+
+### Dark mode
+
+![Screenshot of Converse 9.1.0 with a dark theme](https://conversejs.org/screenshots/Converse-Dracula-Theme.png)
+
+### Embedded
+
+In embedded mode, Converse can be embedded into an element in the DOM.
+
+![Screenshot of Converse in embedded mode](https://conversejs.org/screenshots/Converse-embedded.png)
+
+## Features
+-   Available as overlayed chat boxes or as a fullscreen application. See [inverse.chat](https://inverse.chat) for the fullscreen version.
+-   Custom status messages
+-   Desktop notifications
+-   A [plugin architecture](https://conversejs.org/docs/html/plugin_development.html) based on [pluggable.js](https://conversejs.github.io/pluggable.js/)
+-   Chat statuses (online, busy, away, offline)
+-   Anonymous logins, see the [anonymous login demo](https://conversejs.org/demo/anonymous.html)
+-   URL Previews (requires server support, for example [mod_ogp](https://modules.prosody.im/mod_ogp.html)
+-   Translated into over 30 languages
+
+### Supported XMPP Extensions
+
+- [RFC-7395](https://tools.ietf.org/html/rfc7395) XMPP Subprotocol support for WebSocket
+- [XEP-0004](https://xmpp.org/extensions/xep-0004.html) Data Forms
+- [XEP-0030](https://xmpp.org/extensions/xep-0030.html) Service discovery
+- [XEP-0045](https://xmpp.org/extensions/xep-0045.html) Multi-user chat rooms
+- [XEP-0048](https://xmpp.org/extensions/xep-0048.html) Bookmarks
+- [XEP-0050](https://xmpp.org/extensions/xep-0050.html) Ad-Hoc Commands
+- [XEP-0054](https://xmpp.org/extensions/xep-0054.html) VCard-temp
+- [XEP-0059](https://xmpp.org/extensions/xep-0059.html) Result Set Management
+- [XEP-0060](https://xmpp.org/extensions/xep-0060.html) Publish-Subscribe (limited support)
+- [XEP-0066](https://xmpp.org/extensions/xep-0066.html) Out of Band Data
+- [XEP-0077](https://xmpp.org/extensions/xep-0077.html) In-band registration
+- [XEP-0085](https://xmpp.org/extensions/xep-0085.html) Chat State Notifications
+- [XEP-0115](https://xmpp.org/extensions/xep-0115.html) Entity Capabilities
+- [XEP-0124](https://xmpp.org/extensions/xep-0124.html) Bidirectional-streams Over Synchronous HTTP (BOSH)
+- [XEP-0144](https://xmpp.org/extensions/xep-0144.html) Roster item exchange
+- [XEP-0156](https://xmpp.org/extensions/xep-0156.html) Discovering Alternative XMPP Connection Methods
+- [XEP-0163](https://xmpp.org/extensions/xep-0163.html) Personal Eventing Protocol (limited support)
+- [XEP-0184](https://xmpp.org/extensions/xep-0184.html) Message Receipt
+- [XEP-0198](https://xmpp.org/extensions/xep-0198.html) Stream Management
+- [XEP-0199](https://xmpp.org/extensions/xep-0199.html) XMPP Ping
+- [XEP-0203](https://xmpp.org/extensions/xep-0203.html) Delayed Delivery
+- [XEP-0206](https://xmpp.org/extensions/xep-0206.html) XMPP Over BOSH
+- [XEP-0245](https://xmpp.org/extensions/xep-0245.html) The /me Command
+- [XEP-0249](https://xmpp.org/extensions/xep-0249.html) Direct MUC Invitations
+- [XEP-0280](https://xmpp.org/extensions/xep-0280.html) Message Carbons
+- [XEP-0297](https://xmpp.org/extensions/xep-0297.html) Stanza Forwarding (limited support)
+- [XEP-0308](https://xmpp.org/extensions/xep-0308.html) Last Message Correction
+- [XEP-0313](https://xmpp.org/extensions/xep-0313.html) Message Archive Management
+- [XEP-0316](https://xmpp.org/extensions/xep-0316.html) MUC Eventing protocol (limited support)
+- [XEP-0317](https://xmpp.org/extensions/xep-0317.html) Hats (limited support)
+- [XEP-0333](https://xmpp.org/extensions/xep-0333.html) Chat Markers (limited support)
+- [XEP-0352](https://xmpp.org/extensions/xep-0352.html) Client State Indication
+- [XEP-0357](https://xmpp.org/extensions/xep-0357.html) Push Notifications
+- [XEP-0359](https://xmpp.org/extensions/xep-0359.html) Unique and Stable Stanza IDs
+- [XEP-0363](https://xmpp.org/extensions/xep-0363.html) HTTP File Upload
+- [XEP-0372](https://xmpp.org/extensions/xep-0372.html) References
+- [XEP-0382](https://xmpp.org/extensions/xep-0382.html) Spoiler messages
+- [XEP-0384](https://xmpp.org/extensions/xep-0384.html) OMEMO Encryption
+- [XEP-0393](https://xmpp.org/extensions/xep-0393.html) Message styling
+- [XEP-0422](https://xmpp.org/extensions/xep-0422.html) Message Fastening (limited support)
+- [XEP-0424](https://xmpp.org/extensions/xep-0424.html) Message Retractions
+- [XEP-0425](https://xmpp.org/extensions/xep-0425.html) Message Moderation
+- [XEP-0437](https://xmpp.org/extensions/xep-0437.html) Room Activity Indicators
+- [XEP-0453](https://xmpp.org/extensions/xep-0453.html) DOAP Usage in XMPP
+- [XEP-0454](https://xmpp.org/extensions/xep-0454.html) OMEMO Media sharing
+
+## Integration into other servers and frameworks
+
+### XMPP servers
+
+-   **[Openfire](https://www.igniterealtime.org/projects/openfire/index.jsp)**: [inverse.jar](https://www.igniterealtime.org/projects/openfire/plugins.jsp)
+-   **[Prosody](https://prosody.im/)**: [mod_conversejs](https://modules.prosody.im/mod_conversejs.html)
+-   **[Ejabberd](https://ejabberd.im/)**: [mod-conversejs](https://docs.ejabberd.im/admin/configuration/modules/#mod-conversejs)
+
+### Other
+
+-   **[Alfresco](https://www.alfresco.com)**: [alfresco-js-chat-share](https://github.com/keensoft/alfresco-js-chat-share)
+-   **[Django](https://www.djangoproject.com)**: [django-conversejs](https://pypi.python.org/pypi/django-conversejs) or [django-xmpp](https://github.com/fpytloun/django-xmpp)
+-   **[Elgg](https://elgg.org)**: [plugin](https://elgg.org/plugins/2997196)
+-   **[Friendica](https://friendi.ca)**: [converse](https://github.com/friendica/friendica-addons/tree/master/xmpp/converse)
+-   **[Patternslib](http://patternslib.com)**: [patterns.converse](https://github.com/jcbrand/patterns.converse)
+-   **[Plone](https://plone.com)**: [collective.converse](https://github.com/collective/collective.converse)
+-   **[Pàdé](https://www.igniterealtime.org/projects/pade/index.jsp)**: [Pàdé](https://www.igniterealtime.org/projects/pade/index.jsp)
+-   **[Roundcube](https://roundcube.net)**: [roundcube-converse.js-xmpp-plugin](https://github.com/devurandom/roundcube-converse.js-xmpp-plugin)
+-   **[Ruby on Rails](https://rubyonrails.org)**: [conversejs-rails](https://github.com/mikemarsian/conversejs-rails)
+-   **[Tiki Wiki CMS Groupware](https://tiki.org)**: [built-in optional feature](https://doc.tiki.org/XMPP)
+-   **[Wordpress](https://wordpress.org)**: [ConverseJS](https://wordpress.org/plugins/conversejs/)
+
+
+## Tests
+
+We use behavior-driven tests written with [jasmine.js](https://jasmine.github.io/).
+
+Run `make check` to execute all the tests.
+
+## Licence
+
+`Converse.js` is released under the [Mozilla Public License (MPL)](https://www.mozilla.org/MPL/2.0/index.txt).
+
+## Attribution
+
+Emoji images are courtesy of [Twemoji](https://emojitwo.github.io/).
+
+## Support
+
+Issues can be logged on the [Github issue tracker](https://github.com/conversejs/converse.js/issues).
+
+## Donations
+
+A heartfelt thanks for everyone who has supported this project over the years.
+Many people have contributed testing, bugfixes, features and corrections.
+
+We accept donations via [Patreon](https://www.patreon.com/jcbrand) and [Liberapay](https://liberapay.com/jcbrand).
+
+## Sponsors
+
+<p>
+  <a href="https://blokt.com?utm_source=conversejs" target="_blank" rel="noopener">
+    <img alt="Blokt Crypto & Privacy" src="https://raw.githubusercontent.com/conversejs/converse.js/541613d1fea8aef364af00180f60e959162e5e4b/logo/blokt.png" width="200">
+  </a>
+</p>
+<p>
+  <a href="https://www.codefirst.co.uk?utm_source=conversejs" target="_blank" rel="noopener">
+    <img alt="Codefirst" src="https://raw.githubusercontent.com/conversejs/converse.js/541613d1fea8aef364af00180f60e959162e5e4b/logo/codefirst.png" width="200">
+  </a>
+</p>
+<p>
+  <a href="https://www.keycdn.com?utm_source=conversejs" target="_blank" rel="noopener">
+    <img alt="KeyCDN" src="https://raw.githubusercontent.com/conversejs/converse.js/541613d1fea8aef364af00180f60e959162e5e4b/logo/keycdn.png" width="200">
+  </a>
+</p>
+<p>
+  <a href="https://originalenergie.de/?utm_source=conversejs" target="_blank" rel="noopener">
+    <img alt="Original Energie" src="https://raw.githubusercontent.com/conversejs/converse.js/master/logo/originalenergie-black.png" width="200">
+  </a>
+</p>
+<p>
+  <a href="https://primesound.org/?utm_source=conversejs" target="_blank" rel="noopener">
+    <img alt="Prime Sound" src="https://raw.githubusercontent.com/conversejs/media/main/logos/primesound.png" width="200">
+  </a>
+</p>

+ 19 - 0
RELEASE.md

@@ -0,0 +1,19 @@
+# Release checklist
+
+1. Check that weblate translations are all merged in
+2. Run `make check` to check that all tests pass.
+3. Run `make release VERSION=9.1.1`
+4. Do a `git diff` to check if things look sane.
+5. Do a quick manual test with the `dist` files (via `index.html`)
+6. `git commit -am "Release 9.1.1"`
+7. `git tag -s v9.1.1 -m "Release 9.1.1"`
+8. Run `git push && git push origin v9.1.1`
+9. Update https://conversejs.org
+    * `cd /home/conversejs/converse.js`
+    * `git clone --branch v9.1.1 git@github.com:conversejs/converse.js.git 9.1.1`
+    * `cd 9.1.1 && nvm install && ASSET_PATH=https://cdn.conversejs.org/9.1.1/dist/ make dist && make doc`
+    * `cd .. && git pull && nvm install && ASSET_PATH=https://cdn.conversejs.org/dist/ make dist && make doc`
+10. Update release page on Github
+11. Run `npm publish && cd src/headless/ && npm publish`
+12. Update the repository on weblate
+13. Decide on next release number and run `make postrelease VERSION=9.1.2`

+ 15 - 0
buildout.cfg

@@ -0,0 +1,15 @@
+[buildout]
+parts =
+    sphinx
+
+versions = versions
+
+[sphinx]
+recipe = zc.recipe.egg
+eggs =
+    Sphinx
+    sphinx-bootstrap-theme
+
+[versions]
+Sphinx = 4.5.0
+docutils = 0.17.1

+ 10 - 0
composer.json

@@ -0,0 +1,10 @@
+{
+    "name": "jcbrand/converse.js",
+    "description": "Browser based XMPP instant messaging client",
+    "type": "library",
+    "license": "MPL-2.0",
+    "minimum-stability": "stable",
+    "homepage": "https://conversejs.org/",
+    "keywords": ["xmpp", "messaging", "chat", "presence"],
+    "require": {}
+}

+ 23 - 0
converse-logs/README.md

@@ -0,0 +1,23 @@
+# How to use saved Chrome/Chromium logs to replay events
+
+**NOTE**: This feature is very experimental and in many cases doesn't work
+without data massaging and ugly hacks.
+
+It's possible to save the log output from Chrome/Chromium (I haven't tried this
+yet with any other browser) and then to replay that log output in the browser.
+
+This can be a very helpful technique to track down bugs.
+
+To do this, follow the following steps:
+
+1. Save the log file (right click and then click "Save as" in the browser's console).
+2. Rename the log file, making sure it ends in `.html`
+3. Move the log file to the `converse-logs` directory in the converse.js repo.
+4. Add `<log>` to the top of the log file and `</log>` to the bottom of the log file.
+5. In `converse-logs/converse-logs.js`, add a new entry for the log file (don't
+   include the `.html` part of the file name.
+6. Make sure that `spec/transcripts` is "required"-ed in `tests/main.js`
+6. Open `tests.html` in your browser.
+
+Your logs will run first, and then all the other tests will run afterwards.
+

+ 5 - 0
converse-logs/converse-logs.js

@@ -0,0 +1,5 @@
+define("transcripts", [
+    "tpl!../../converse-logs/missing_messages",
+], function () {
+    return arguments;
+});

+ 288 - 0
conversejs.doap

@@ -0,0 +1,288 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<rdf:RDF xmlns:doap="http://usefulinc.com/ns/doap#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xmpp="https://linkmauve.fr/ns/xmpp-doap#" xml:lang="en">
+  <Project xmlns="http://usefulinc.com/ns/doap#">
+    <name>Converse.js</name>
+    <shortdesc>Browser based XMPP chat client</shortdesc>
+    <homepage rdf:resource="https://conversejs.org/"/>
+    <bug-database rdf:resource="https://github.com/conversejs/converse.js/issues"/>
+    <developer-forum rdf:resource="xmpp:discuss@conference.conversejs.org?join"/>
+    <support-forum rdf:resource="xmpp:discuss@conference.conversejs.org?join"/>
+    <category rdf:resource="https://linkmauve.fr/ns/xmpp-doap#category-client"/>
+    <programming-language>JavaScript</programming-language>
+    <repository>
+      <GitRepository>
+        <browse rdf:resource="https://github.com/conversejs/converse.js"/>
+        <location rdf:resource="https://github.com/conversejs/converse.js.git"/>
+      </GitRepository>
+    </repository>
+    <implements rdf:resource="https://www.rfc-editor.org/info/rfc6120"/>
+    <implements rdf:resource="https://www.rfc-editor.org/info/rfc6121"/>
+    <implements rdf:resource="https://www.rfc-editor.org/info/rfc6122"/>
+    <implements rdf:resource="https://www.rfc-editor.org/info/rfc7395"/>
+    <implements rdf:resource="https://www.rfc-editor.org/info/rfc7590"/>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0004.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0030.html"/>
+        <xmpp:since>0.8.2</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0045.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0048.html"/>
+        <xmpp:since>2.0.1</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0050.html"/>
+        <xmpp:since>7.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0054.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0059.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0060.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0066.html"/>
+        <xmpp:since>4.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0077.html"/>
+        <xmpp:since>0.8.5</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0085.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0115.html"/>
+        <xmpp:status>partial</xmpp:status>
+        <xmpp:note>advertises caps but no caching</xmpp:note>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0122.html"/>
+        <xmpp:status>partial</xmpp:status>
+        <xmpp:note>basic string field sub-type usage</xmpp:note>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0124.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0144.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0156.html"/>
+        <xmpp:since>6.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0163.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0184.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0198.html"/>
+        <xmpp:since>5.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0199.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0203.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0206.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0245.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0249.html"/>
+        <xmpp:since>0.8.2</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0280.html"/>
+        <xmpp:since>0.8.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0297.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0308.html"/>
+        <xmpp:since>4.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0313.html"/>
+        <xmpp:since>0.9.5</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0317.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0319.html"/>
+        <xmpp:since>4.0.5</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0333.html"/>
+        <xmpp:since>4.1.1</xmpp:since>
+        <xmpp:status>partial</xmpp:status>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0352.html"/>
+        <xmpp:since>0.9.4</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0357.html"/>
+        <xmpp:since>4.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0359.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0363.html"/>
+        <xmpp:since>4.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0371.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0372.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0382.html"/>
+        <xmpp:since>3.3.3</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0384.html"/>
+        <xmpp:since>4.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0393.html"/>
+        <xmpp:since>8.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0410.html"/>
+        <xmpp:since>5.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0421.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0422.html"/>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0424.html"/>
+        <xmpp:since>6.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0425.html"/>
+        <xmpp:since>6.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0437.html"/>
+        <xmpp:since>8.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+    <implements>
+      <xmpp:SupportedXep>
+        <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0454.html"/>
+        <xmpp:since>8.0.0</xmpp:since>
+      </xmpp:SupportedXep>
+    </implements>
+  </Project>
+</rdf:RDF>

+ 127 - 0
demo/anonymous.html

@@ -0,0 +1,127 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <title>Converse - Anonymous login demo</title>
+    <meta charset="utf-8">
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="description" content="Converse XMPP/Jabber Chat"/>
+    <meta name="author" content="JC Brand" />
+    <meta name="keywords" content="xmpp chat webchat converse.js Converse" />
+
+    <!-- These files are NOT needed when using converse.js in your own project. -->
+    <link rel="shortcut icon" type="image/ico" href="/dist/favicon.ico"/>
+    <link type="text/css" rel="stylesheet" media="screen" href="/dist/website.min.css" />
+    <noscript><p><img src="//stats.opkode.com/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript>
+    <script type="text/javascript" src="analytics.js"></script>
+    <!-- *********************************************************************** -->
+
+    <link rel="manifest" href="/manifest.json">
+    <link type="text/css" rel="stylesheet" media="screen" href="/dist/converse.min.css" />
+    <script src="https://cdn.conversejs.org/3rdparty/libsignal-protocol.min.js"></script>
+    <script src="/dist/converse.min.js"></script>
+</head>
+
+<body id="page-top" data-spy="scroll" class="converse-website">
+<section class="section-wrapper">
+    <nav class="navbar sticky-top navbar-expand-lg" role="navigation">
+        <div class="collapse navbar-collapse" id="navbarTogglerDemo01">
+            <span class="page-scroll">
+                <a class="navbar-brand" href="/"><span class="converse-brand-heading">Home</span></a>
+                <a class="navbar-brand" href="/demo"><span class="converse-brand-heading">Demos</span></a>
+            </span>
+        </div>
+    </nav>
+
+    <section id="intro" class="intro" class="container">
+        <div class="row">
+            <div class="col-md-12 col-md-offset-2">
+                <h1 class="brand-heading fade-in">
+                    <svg class="converse-svg-logo"
+                        xmlns:svg="http://www.w3.org/2000/svg"
+                        xmlns="http://www.w3.org/2000/svg"
+                        xmlns:xlink="http://www.w3.org/1999/xlink"
+                        viewBox="0 0 364 364">
+                    <title>Converse</title>
+                    <g class="cls-1" id="g904">
+                        <g data-name="Layer 2">
+                            <g data-name="Layer 7">
+                                <path
+                                    class="cls-3"
+                                    d="M221.46,103.71c0,18.83-29.36,18.83-29.12,0C192.1,84.88,221.46,84.88,221.46,103.71Z" />
+                                <path
+                                    class="cls-4"
+                                    d="M179.9,4.15A175.48,175.48,0,1,0,355.38,179.63,175.48,175.48,0,0,0,179.9,4.15Zm-40.79,264.5c-.23-17.82,27.58-17.82,27.58,0S138.88,286.48,139.11,268.65ZM218.6,168.24A79.65,79.65,0,0,1,205.15,174a12.76,12.76,0,0,0-6.29,4.65L167.54,222a1.36,1.36,0,0,1-2.46-.8v-35.8a2.58,2.58,0,0,0-3.06-2.53c-15.43,3-30.23,7.7-42.73,19.94-38.8,38-29.42,105.69,16.09,133.16a162.25,162.25,0,0,1-91.47-67.27C-3.86,182.26,34.5,47.25,138.37,25.66c46.89-9.75,118.25,5.16,123.73,62.83C265.15,120.64,246.56,152.89,218.6,168.24Z" />
+                            </g>
+                        </g>
+                    </g>
+                </svg>
+                <span class="brand-heading__text">
+                    <span>converse<span class="subdued">.js</span></span>
+                    <p class="byline">messaging freedom</p>
+                </span>
+                </h1>
+
+                <p class="intro-text">Anonymous login demo</p>
+            </div>
+        </div>
+    </section>
+</section>
+</body>
+
+<script>
+    /*
+    @licstart
+    This is free and unencumbered software released into the public domain.
+
+    Anyone is free to copy, modify, publish, use, compile, sell, or
+    distribute this software, either in source code form or as a compiled
+    binary, for any purpose, commercial or non-commercial, and by any
+    means.
+
+    In jurisdictions that recognize copyright laws, the author or authors
+    of this software dedicate any and all copyright interest in the
+    software to the public domain. We make this dedication for the benefit
+    of the public at large and to the detriment of our heirs and
+    successors. We intend this dedication to be an overt act of
+    relinquishment in perpetuity of all present and future rights to this
+    software under copyright law.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+    IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+    OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+    ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+    OTHER DEALINGS IN THE SOFTWARE.
+
+    For more information, please refer to <http://unlicense.org/>
+    @licend
+	*/
+        converse.initialize({
+            allow_logout: false, // No point in logging out when we have auto_login as true.
+            allow_muc_invitations: false, // Doesn't make sense to allow because only
+                                          // roster contacts can be invited
+            allow_contact_requests: false, // Contacts from other servers cannot,
+                                           // be added and anonymous users don't
+                                           // know one another's JIDs, so disabling.
+            authentication: 'anonymous',
+            auto_login: true,
+            auto_join_rooms: [
+                'anonymous@conference.nomnom.im',
+            ],
+            notify_all_room_messages: [
+                'anonymous@conference.nomnom.im',
+            ],
+            bosh_service_url: 'https://conversejs.org/http-bind/', // Please use this connection manager only for testing purposes
+            jid: 'nomnom.im', // XMPP server which allows anonymous login (doesn't
+                              // allow chatting with other XMPP servers).
+            keepalive: true,
+            hide_muc_server: true, // Federation is disabled, so no use in
+                                   // showing the MUC server.
+            play_sounds: true,
+            show_controlbox_by_default: true,
+            strict_plugin_dependencies: false,
+        });
+</script>
+</html>

+ 103 - 0
demo/embedded.html

@@ -0,0 +1,103 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <title>Converse - Anonymous login demo</title>
+    <meta charset="utf-8">
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="description" content="Converse XMPP/Jabber Chat"/>
+    <meta name="author" content="JC Brand" />
+    <meta name="keywords" content="xmpp chat webchat converse.js Converse" />
+
+    <!-- These files are NOT needed when using converse.js in your own project. -->
+    <link rel="shortcut icon" type="image/ico" href="../dist/favicon.ico"/>
+    <link type="text/css" rel="stylesheet" media="screen" href="../dist/website.min.css" />
+    <noscript><p><img src="https://stats.opkode.com/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript>
+    <script type="text/javascript" src="/analytics.js"></script>
+    <!-- *********************************************************************** -->
+
+    <link rel="manifest" href="../manifest.json">
+    <link type="text/css" rel="stylesheet" media="screen" href="../dist/converse.min.css" />
+    <script src="https://cdn.conversejs.org/3rdparty/libsignal-protocol.min.js"></script>
+    <script src="../dist/converse.min.js"></script>
+
+    <style>
+        .converse-container {
+            height: 50vh;
+        }
+    </style>
+</head>
+
+
+<body id="page-top" data-spy="scroll" class="converse-website">
+<section class="section-wrapper">
+    <nav class="navbar sticky-top navbar-expand-lg" role="navigation">
+        <div class="collapse navbar-collapse" id="navbarTogglerDemo01">
+            <span class="page-scroll">
+                <a class="navbar-brand" href="/"><span class="converse-brand-heading">Home</span></a>
+		<a class="navbar-brand" href="/demo"><span class="converse-brand-heading">Demos</span></a>
+            </span>
+        </div>
+    </nav>
+    <section class="intro">
+        <div class="intro-body">
+            <div class="container">
+                <div class="row">
+                    <div class="col-md-12">
+			<h1 class="brand-heading fade-in" style="margin: 1.5em 0 0 0">
+			    <svg class="converse-svg-logo"
+				xmlns:svg="http://www.w3.org/2000/svg"
+				xmlns="http://www.w3.org/2000/svg"
+				xmlns:xlink="http://www.w3.org/1999/xlink"
+				viewBox="0 0 364 364">
+
+				<title>Home</title>
+				<g class="cls-1" id="g904">
+				    <g data-name="Layer 2">
+					<g data-name="Layer 7">
+					    <path
+						class="cls-3"
+						d="M221.46,103.71c0,18.83-29.36,18.83-29.12,0C192.1,84.88,221.46,84.88,221.46,103.71Z" />
+					    <path
+						class="cls-4"
+						d="M179.9,4.15A175.48,175.48,0,1,0,355.38,179.63,175.48,175.48,0,0,0,179.9,4.15Zm-40.79,264.5c-.23-17.82,27.58-17.82,27.58,0S138.88,286.48,139.11,268.65ZM218.6,168.24A79.65,79.65,0,0,1,205.15,174a12.76,12.76,0,0,0-6.29,4.65L167.54,222a1.36,1.36,0,0,1-2.46-.8v-35.8a2.58,2.58,0,0,0-3.06-2.53c-15.43,3-30.23,7.7-42.73,19.94-38.8,38-29.42,105.69,16.09,133.16a162.25,162.25,0,0,1-91.47-67.27C-3.86,182.26,34.5,47.25,138.37,25.66c46.89-9.75,118.25,5.16,123.73,62.83C265.15,120.64,246.56,152.89,218.6,168.24Z" />
+					</g>
+				    </g>
+				</g>
+			    </svg>
+			    <span class="brand-heading__text">
+				<span>converse<span class="subdued">.js</span></span>
+				<p class="byline">messaging freedom</p>
+			    </span>
+			</h1>
+                        <p class="intro-text">Embedded MUC chat demo</p>
+                        <div class="converse-container">
+                            <converse-root></converse-root>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </section>
+</section>
+</body>
+
+<script>
+    converse.initialize({
+        authentication: 'anonymous',
+        auto_login: true,
+        auto_join_rooms: [
+            'anonymous@conference.nomnom.im',
+        ],
+        bosh_service_url: 'https://conversejs.org/http-bind/', // Please use this connection manager only for testing purposes
+        jid: 'nomnom.im', // XMPP server which allows anonymous login (doesn't
+                          // allow chatting with other XMPP servers).
+        notify_all_room_messages: [
+            'anonymous@conference.nomnom.im',
+        ],
+        singleton: true,
+        locales_url: "../locale/{{{locale}}}/LC_MESSAGES/converse.json",
+        view_mode: 'embedded',
+    });
+</script>
+</html>

+ 113 - 0
demo/index.html

@@ -0,0 +1,113 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <title>Converse Demos</title>
+    <meta charset="utf-8">
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="description" content="Converse XMPP/Jabber Chat"/>
+    <meta name="author" content="JC Brand" />
+    <meta name="keywords" content="xmpp chat webchat converse.js Converse" />
+
+    <!-- These files are NOT needed when using converse.js in your own project. -->
+    <link rel="shortcut icon" type="image/ico" href="/dist/favicon.ico"/>
+    <link type="text/css" rel="stylesheet" media="screen" href="/dist/website.min.css" />
+    <noscript><p><img src="//stats.opkode.com/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript>
+    <script type="text/javascript" src="analytics.js"></script>
+    <!-- *********************************************************************** -->
+
+    <link rel="manifest" href="/manifest.json">
+    <link type="text/css" rel="stylesheet" media="screen" href="/dist/converse.min.css" />
+    <script src="https://cdn.conversejs.org/3rdparty/libsignal-protocol.min.js"></script>
+    <script src="/dist/converse.min.js"></script>
+</head>
+
+<body id="page-top" data-spy="scroll" class="converse-website">
+<section class="section-wrapper">
+    <nav class="navbar sticky-top navbar-expand-lg" role="navigation">
+        <div class="collapse navbar-collapse" id="navbarTogglerDemo01">
+            <span class="page-scroll">
+                <a class="navbar-brand" href="/"><span class="converse-brand-heading">Home</span></a>
+            </span>
+        </div>
+    </nav>
+
+    <section id="intro" class="intro" class="container">
+        <div class="row">
+            <div class="col-md-12 col-md-offset-2">
+                <h1 class="brand-heading fade-in">
+                    <svg class="converse-svg-logo"
+                        xmlns:svg="http://www.w3.org/2000/svg"
+                        xmlns="http://www.w3.org/2000/svg"
+                        xmlns:xlink="http://www.w3.org/1999/xlink"
+                        viewBox="0 0 364 364">
+                    <title>Home</title>
+                    <g class="cls-1" id="g904">
+                        <g data-name="Layer 2">
+                            <g data-name="Layer 7">
+                                <path
+                                    class="cls-3"
+                                    d="M221.46,103.71c0,18.83-29.36,18.83-29.12,0C192.1,84.88,221.46,84.88,221.46,103.71Z" />
+                                <path
+                                    class="cls-4"
+                                    d="M179.9,4.15A175.48,175.48,0,1,0,355.38,179.63,175.48,175.48,0,0,0,179.9,4.15Zm-40.79,264.5c-.23-17.82,27.58-17.82,27.58,0S138.88,286.48,139.11,268.65ZM218.6,168.24A79.65,79.65,0,0,1,205.15,174a12.76,12.76,0,0,0-6.29,4.65L167.54,222a1.36,1.36,0,0,1-2.46-.8v-35.8a2.58,2.58,0,0,0-3.06-2.53c-15.43,3-30.23,7.7-42.73,19.94-38.8,38-29.42,105.69,16.09,133.16a162.25,162.25,0,0,1-91.47-67.27C-3.86,182.26,34.5,47.25,138.37,25.66c46.89-9.75,118.25,5.16,123.73,62.83C265.15,120.64,246.56,152.89,218.6,168.24Z" />
+                            </g>
+                        </g>
+                    </g>
+                </svg>
+                <span class="brand-heading__text">
+                    <span>converse<span class="subdued">.js</span></span>
+                    <p class="byline">messaging freedom</p>
+                </span>
+                </h1>
+
+                <p class="intro-text">Demos:</p>
+                <p class="intro-text">
+                    <ul style="list-style: none; font-size: 22px;">
+                        <li><a href="/fullscreen.html">As a fullscreen application</a></li>
+                        <li><a href="/demo/anonymous.html">Anonymous login</a></li>
+                        <li><a href="/demo/embedded.html">Single MUC chatroom embedded into the page</a></li>
+                    </ul>
+                </p>
+            </div>
+        </div>
+    </section>
+    </section>
+</section>
+</body>
+
+<script>
+    /*
+    @licstart
+    This is free and unencumbered software released into the public domain.
+
+    Anyone is free to copy, modify, publish, use, compile, sell, or
+    distribute this software, either in source code form or as a compiled
+    binary, for any purpose, commercial or non-commercial, and by any
+    means.
+
+    In jurisdictions that recognize copyright laws, the author or authors
+    of this software dedicate any and all copyright interest in the
+    software to the public domain. We make this dedication for the benefit
+    of the public at large and to the detriment of our heirs and
+    successors. We intend this dedication to be an overt act of
+    relinquishment in perpetuity of all present and future rights to this
+    software under copyright law.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+    IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+    OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+    ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+    OTHER DEALINGS IN THE SOFTWARE.
+
+    For more information, please refer to <https://unlicense.org/>
+    @licend
+    */
+    converse.initialize({
+        // Please use this connection manager only for testing purposes
+        bosh_service_url: 'https://conversejs.org/http-bind/'
+    });
+</script>
+</html>

+ 46 - 0
dev.html

@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <title>Converse</title>
+    <meta charset="utf-8">
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="description" content="Converse XMPP/Jabber Chat" />
+    <meta name="author" content="JC Brand" />
+    <meta name="keywords" content="xmpp chat webchat converse.js" />
+    <link rel="manifest" href="./manifest.json">
+    <link rel="shortcut icon" type="image/ico" href="images/favicon.ico"/>
+    <link type="text/css" rel="stylesheet" media="screen" href="dist/website.css" />
+    <link type="text/css" rel="stylesheet" media="screen" href="dist/converse.css" />
+    <script src="https://cdn.conversejs.org/3rdparty/libsignal-protocol.min.js"></script>
+    <script src="dist/converse.js"></script>
+</head>
+
+<body class="reset" style="background-color: var(--global-background-color)">
+<div id="conversejs-bg"></div>
+<script>
+
+    converse.plugins.add('converse-debug', {
+        initialize () {
+            const { _converse } = this;
+            window._converse = _converse;
+        }
+    });
+
+    converse.initialize({
+        auto_away: 300,
+        enable_smacks: true,
+        loglevel: 'debug',
+        prune_messages_above: 100,
+        message_archiving: 'always',
+        muc_respect_autojoin: true,
+        muc_show_logs_before_join: true,
+        notify_all_room_messages: ['discuss@conference.conversejs.org'],
+        view_mode: 'fullscreen',
+        websocket_url: 'wss://conversejs.org/xmpp-websocket',
+        // websocket_url: 'ws://chat.example.org:5380/xmpp-websocket',
+        whitelisted_plugins: ['converse-debug'],
+    });
+</script>
+</body>
+</html>

Plik diff jest za duży
+ 6 - 0
dist/converse.css


Plik diff jest za duży
+ 0 - 0
dist/converse.css.map


Plik diff jest za duży
+ 26760 - 0
dist/converse.js


Plik diff jest za duży
+ 0 - 0
dist/converse.js.map


Plik diff jest za duży
+ 6 - 0
dist/converse.min.css


Plik diff jest za duży
+ 0 - 0
dist/converse.min.css.map


Plik diff jest za duży
+ 1 - 0
dist/converse.min.js


+ 371 - 0
dist/converse.min.js.LICENSE.txt

@@ -0,0 +1,371 @@
+/*!
+    MIT License
+
+    Copyright (c) 2018 Arturas Molcanovas <a.molcanovas@gmail.com>
+
+    Permission is hereby granted, free of charge, to any person obtaining a copy
+    of this software and associated documentation files (the "Software"), to deal
+    in the Software without restriction, including without limitation the rights
+    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+    copies of the Software, and to permit persons to whom the Software is
+    furnished to do so, subject to the following conditions:
+
+    The above copyright notice and this permission notice shall be included in all
+    copies or substantial portions of the Software.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+    SOFTWARE.
+
+    */
+
+/*!
+    localForage -- Offline Storage, Improved
+    Version 1.10.0
+    https://localforage.github.io/localForage
+    (c) 2013-2017 Mozilla, Apache License 2.0
+*/
+
+/*!
+ * Sizzle CSS Selector Engine v2.3.6
+ * https://sizzlejs.com/
+ *
+ * Copyright JS Foundation and other contributors
+ * Released under the MIT license
+ * https://js.foundation/
+ *
+ * Date: 2021-02-16
+ */
+
+/*!
+ * URI.js - Mutating URLs
+ *
+ * Version: 1.19.11
+ *
+ * Author: Rodney Rehm
+ * Web: http://medialize.github.io/URI.js/
+ *
+ * Licensed under
+ *   MIT License http://www.opensource.org/licenses/mit-license
+ *
+ */
+
+/*!
+ * URI.js - Mutating URLs
+ * IPv6 Support
+ *
+ * Version: 1.19.11
+ *
+ * Author: Rodney Rehm
+ * Web: http://medialize.github.io/URI.js/
+ *
+ * Licensed under
+ *   MIT License http://www.opensource.org/licenses/mit-license
+ *
+ */
+
+/*!
+ * URI.js - Mutating URLs
+ * Second Level Domain (SLD) Support
+ *
+ * Version: 1.19.11
+ *
+ * Author: Rodney Rehm
+ * Web: http://medialize.github.io/URI.js/
+ *
+ * Licensed under
+ *   MIT License http://www.opensource.org/licenses/mit-license
+ *
+ */
+
+/*!
+ 2020 Jason Mulligan <jason.mulligan@avoidwork.com>
+ @version 7.0.0
+*/
+
+/*!
+MIT License
+
+Copyright (c) 2018 Arturas Molcanovas <a.molcanovas@gmail.com>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+*/
+
+/*! *****************************************************************************
+    Copyright (c) Microsoft Corporation. All rights reserved.
+    Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+    this file except in compliance with the License. You may obtain a copy of the
+    License at http://www.apache.org/licenses/LICENSE-2.0
+
+    THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+    WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+    MERCHANTABLITY OR NON-INFRINGEMENT.
+
+    See the Apache Version 2.0 License for specific language governing permissions
+    and limitations under the License.
+    ***************************************************************************** */
+
+/*! @license DOMPurify 2.3.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.6/LICENSE */
+
+/*! https://mths.be/punycode v1.4.0 by @mathias */
+
+/**
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description This is the form utilities module.
+ */
+
+/**
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @copyright Alfredo Medrano Sánchez and the Converse.js contributors
+ * @description
+ *  Component inspired by the one from fa-icons
+ *  https://github.com/obsidiansoft-io/fa-icons/blob/master/LICENSE
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @copyright JC Brand
+ * @license Mozilla Public License (MPLv2)
+ * @description A plugin which restricts Converse to only one chat.
+ */
+
+/**
+ * @copyright Shachaf Ben-Kiki and the Converse.js contributors
+ * @description
+ *  Started as a fork of Shachaf Ben-Kiki's jsgif library
+ *  https://github.com/shachaf/jsgif
+ * @license MIT License
+ */
+
+/**
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description Converse.js plugin which add support for XEP-0206: XMPP Over BOSH
+ */
+
+/**
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description Converse.js plugin which adds support for XEP-0198: Stream Management
+ */
+
+/**
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description This is the core utilities module.
+ */
+
+/**
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description
+ *  Converse.js plugin which shows a list of currently open
+ *  rooms in the "Rooms Panel" of the ControlBox.
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description
+ * Converse.js plugin which add support for registering
+ * an "App Server" as defined in  XEP-0357
+ * @copyright 2021, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description
+ * Converse.js plugin which adds views for bookmarks specified in XEP-0048.
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description Converse.js (A browser based XMPP chat client)
+ * @copyright 2021, The Converse developers
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description Converse.js plugin which adds views for XEP-0048 bookmarks
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description UI code XEP-0313 Message Archive Management
+ * @copyright 2021, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @description XEP-0313 Message Archive Management
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @license
+ * Copyright 2017 Google LLC
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+/**
+ * @license
+ * Copyright 2019 Google LLC
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+/**
+ * @license
+ * Copyright 2020 Google LLC
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+/**
+ * @license MIT or GPL-2.0
+ * @fileOverview Favico animations
+ * @author Miroslav Magda, http://blog.ejci.net
+ * @source: https://github.com/ejci/favico.js
+ * @version 0.3.10
+ */
+
+/**
+ * @module converse-carbons
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description Implements support for XEP-0280 Message Carbons
+ */
+
+/**
+ * @module converse-chatboxviews
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-dragresize
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-emoji
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-fullscreen
+ * @license Mozilla Public License (MPLv2)
+ * @copyright 2022, the Converse.js contributors
+ */
+
+/**
+ * @module converse-headlines-view
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-minimize
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-notification
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-pubsub
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-register
+ * @description
+ * This is a Converse.js plugin which add support for in-band registration
+ * as specified in XEP-0077.
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ */
+
+/**
+ * @module converse-rsm
+ * @copyright The Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description XEP-0059 Result Set Management
+ *   Some code taken from the Strophe RSM plugin, licensed under the MIT License
+ *   Copyright 2006-2017 Strophe (https://github.com/strophe/strophejs)
+ */
+
+/**
+ * @module i18n
+ * @copyright 2022, the Converse.js contributors
+ * @license Mozilla Public License (MPLv2)
+ * @description This is the internationalization module
+ */
+
+/**
+ * @preserve jed.js https://github.com/SlexAxton/Jed
+ */
+
+/**
+ * Clears the specified timeout and interval.
+ * @method u#clearTimers
+ * @param {number} timeout - Id if the timeout to clear.
+ * @param {number} interval - Id of the interval to clear.
+ * @private
+ * @copyright Simen Bekkhus 2016
+ * @license MIT
+ */
+
+/**
+ * Creates a {@link Promise} that resolves if the passed in function returns a truthy value.
+ * Rejects if it throws or does not return truthy within the given max_wait.
+ * @method u#waitUntil
+ * @param {Function} func - The function called every check_delay,
+ *  and the result of which is the resolved value of the promise.
+ * @param {number} [max_wait=300] - The time to wait before rejecting the promise.
+ * @param {number} [check_delay=3] - The time to wait before each invocation of {func}.
+ * @returns {Promise} A promise resolved with the value of func,
+ *  or rejected with the exception thrown by it or it times out.
+ * @copyright Simen Bekkhus 2016
+ * @license MIT
+ */
+
+/*@cc_on!@*/

Plik diff jest za duży
+ 0 - 0
dist/converse.min.js.map


Plik diff jest za duży
+ 6 - 0
dist/emojis.js


BIN
dist/images/custom_emojis/converse.png


BIN
dist/images/custom_emojis/xmpp.png


BIN
dist/images/favicon.ico


BIN
dist/images/logo/conversejs-filled-192.png


+ 90 - 0
dist/images/logo/conversejs-filled-192.svg

@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="192px" height="192px" viewBox="0 0 192 192" enable-background="new 0 0 192 192" xml:space="preserve">  <image id="image0" width="192" height="192" x="0" y="0"
+    href="data:image/png;base64,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" />
+</svg>

BIN
dist/images/logo/conversejs-filled-512.png


+ 310 - 0
dist/images/logo/conversejs-filled-512.svg

@@ -0,0 +1,310 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="512px" height="512px" viewBox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve">  <image id="image0" width="512" height="512" x="0" y="0"
+    href="data:image/png;base64,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" />
+</svg>

+ 19 - 0
dist/images/logo/conversejs-filled.svg

@@ -0,0 +1,19 @@
+<svg class="converse-svg-logo"
+    xmlns:svg="http://www.w3.org/2000/svg"
+    xmlns="http://www.w3.org/2000/svg"
+    xmlns:xlink="http://www.w3.org/1999/xlink"
+    viewBox="0 0 364 364">
+<title>Converse</title>
+<g class="cls-1" id="g904">
+    <g data-name="Layer 2">
+        <g data-name="Layer 7">
+            <path
+                class="cls-3"
+                d="M221.46,103.71c0,18.83-29.36,18.83-29.12,0C192.1,84.88,221.46,84.88,221.46,103.71Z" />
+            <path
+                class="cls-4"
+                d="M179.9,4.15A175.48,175.48,0,1,0,355.38,179.63,175.48,175.48,0,0,0,179.9,4.15Zm-40.79,264.5c-.23-17.82,27.58-17.82,27.58,0S138.88,286.48,139.11,268.65ZM218.6,168.24A79.65,79.65,0,0,1,205.15,174a12.76,12.76,0,0,0-6.29,4.65L167.54,222a1.36,1.36,0,0,1-2.46-.8v-35.8a2.58,2.58,0,0,0-3.06-2.53c-15.43,3-30.23,7.7-42.73,19.94-38.8,38-29.42,105.69,16.09,133.16a162.25,162.25,0,0,1-91.47-67.27C-3.86,182.26,34.5,47.25,138.37,25.66c46.89-9.75,118.25,5.16,123.73,62.83C265.15,120.64,246.56,152.89,218.6,168.24Z" />
+        </g>
+    </g>
+</g>
+</svg>

Plik diff jest za duży
+ 6 - 0
dist/locales/af-LC_MESSAGES-converse-po.js


Plik diff jest za duży
+ 6 - 0
dist/locales/ar-LC_MESSAGES-converse-po.js


Plik diff jest za duży
+ 6 - 0
dist/locales/bg-LC_MESSAGES-converse-po.js


Plik diff jest za duży
+ 6 - 0
dist/locales/ca-LC_MESSAGES-converse-po.js


Plik diff jest za duży
+ 6 - 0
dist/locales/cs-LC_MESSAGES-converse-po.js


Plik diff jest za duży
+ 6 - 0
dist/locales/da-LC_MESSAGES-converse-po.js


+ 11 - 0
dist/locales/dayjs/af-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[9210],{
+
+/***/ 5903:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,a){ true?module.exports=a(__webpack_require__(7484)):0}(this,(function(e){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=a(e),t={name:"af",weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),weekStart:1,weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"}};return n.default.locale(t,null,!0),t}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=af-js.js.map

+ 1 - 0
dist/locales/dayjs/af-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/af-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,wZAAwZ,SAAS,UAAU,iHAAiH,eAAe,wLAAwL,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/af.js"],"sourcesContent":["!function(e,a){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=a(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],a):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_af=a(e.dayjs)}(this,(function(e){\"use strict\";function a(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var n=a(e),t={name:\"af\",weekdays:\"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag\".split(\"_\"),months:\"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember\".split(\"_\"),weekStart:1,weekdaysShort:\"Son_Maa_Din_Woe_Don_Vry_Sat\".split(\"_\"),monthsShort:\"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des\".split(\"_\"),weekdaysMin:\"So_Ma_Di_Wo_Do_Vr_Sa\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd, D MMMM YYYY HH:mm\"},relativeTime:{future:\"oor %s\",past:\"%s gelede\",s:\"'n paar sekondes\",m:\"'n minuut\",mm:\"%d minute\",h:\"'n uur\",hh:\"%d ure\",d:\"'n dag\",dd:\"%d dae\",M:\"'n maand\",MM:\"%d maande\",y:\"'n jaar\",yy:\"%d jaar\"}};return n.default.locale(t,null,!0),t}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/am-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[5073],{
+
+/***/ 9911:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"am",weekdays:"እሑድ_ሰኞ_ማክሰኞ_ረቡዕ_ሐሙስ_አርብ_ቅዳሜ".split("_"),weekdaysShort:"እሑድ_ሰኞ_ማክሰ_ረቡዕ_ሐሙስ_አርብ_ቅዳሜ".split("_"),weekdaysMin:"እሑ_ሰኞ_ማክ_ረቡ_ሐሙ_አር_ቅዳ".split("_"),months:"ጃንዋሪ_ፌብሯሪ_ማርች_ኤፕሪል_ሜይ_ጁን_ጁላይ_ኦገስት_ሴፕቴምበር_ኦክቶበር_ኖቬምበር_ዲሴምበር".split("_"),monthsShort:"ጃንዋ_ፌብሯ_ማርች_ኤፕሪ_ሜይ_ጁን_ጁላይ_ኦገስ_ሴፕቴ_ኦክቶ_ኖቬም_ዲሴም".split("_"),weekStart:1,yearStart:4,relativeTime:{future:"በ%s",past:"%s በፊት",s:"ጥቂት ሰከንዶች",m:"አንድ ደቂቃ",mm:"%d ደቂቃዎች",h:"አንድ ሰዓት",hh:"%d ሰዓታት",d:"አንድ ቀን",dd:"%d ቀናት",M:"አንድ ወር",MM:"%d ወራት",y:"አንድ ዓመት",yy:"%d ዓመታት"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM D ፣ YYYY",LLL:"MMMM D ፣ YYYY HH:mm",LLLL:"dddd ፣ MMMM D ፣ YYYY HH:mm"},ordinal:function(e){return e+"ኛ"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=am-js.js.map

+ 1 - 0
dist/locales/dayjs/am-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/am-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,4VAA4V,mKAAmK,UAAU,wHAAwH,qBAAqB,eAAe,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/am.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_am=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"am\",weekdays:\"እሑድ_ሰኞ_ማክሰኞ_ረቡዕ_ሐሙስ_አርብ_ቅዳሜ\".split(\"_\"),weekdaysShort:\"እሑድ_ሰኞ_ማክሰ_ረቡዕ_ሐሙስ_አርብ_ቅዳሜ\".split(\"_\"),weekdaysMin:\"እሑ_ሰኞ_ማክ_ረቡ_ሐሙ_አር_ቅዳ\".split(\"_\"),months:\"ጃንዋሪ_ፌብሯሪ_ማርች_ኤፕሪል_ሜይ_ጁን_ጁላይ_ኦገስት_ሴፕቴምበር_ኦክቶበር_ኖቬምበር_ዲሴምበር\".split(\"_\"),monthsShort:\"ጃንዋ_ፌብሯ_ማርች_ኤፕሪ_ሜይ_ጁን_ጁላይ_ኦገስ_ሴፕቴ_ኦክቶ_ኖቬም_ዲሴም\".split(\"_\"),weekStart:1,yearStart:4,relativeTime:{future:\"በ%s\",past:\"%s በፊት\",s:\"ጥቂት ሰከንዶች\",m:\"አንድ ደቂቃ\",mm:\"%d ደቂቃዎች\",h:\"አንድ ሰዓት\",hh:\"%d ሰዓታት\",d:\"አንድ ቀን\",dd:\"%d ቀናት\",M:\"አንድ ወር\",MM:\"%d ወራት\",y:\"አንድ ዓመት\",yy:\"%d ዓመታት\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"MMMM D ፣ YYYY\",LLL:\"MMMM D ፣ YYYY HH:mm\",LLLL:\"dddd ፣ MMMM D ፣ YYYY HH:mm\"},ordinal:function(e){return e+\"ኛ\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-dz-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[9406],{
+
+/***/ 7200:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),d={name:"ar-dz",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdaysMin:"أح_إث_ثلا_أر_خم_جم_سب".split("_"),ordinal:function(_){return _},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiem:function(_){return _>12?"ص":"م"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-dz-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-dz-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-dz-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,sZAAsZ,SAAS,UAAU,gHAAgH,sBAAsB,oBAAoB,eAAe,uJAAuJ,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-dz.js"],"sourcesContent":["!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_ar_dz=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),d={name:\"ar-dz\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekdaysShort:\"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekdaysMin:\"أح_إث_ثلا_أر_خم_جم_سب\".split(\"_\"),ordinal:function(_){return _},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},meridiem:function(_){return _>12?\"ص\":\"م\"},relativeTime:{future:\"في %s\",past:\"منذ %s\",s:\"ثوان\",m:\"دقيقة\",mm:\"%d دقائق\",h:\"ساعة\",hh:\"%d ساعات\",d:\"يوم\",dd:\"%d أيام\",M:\"شهر\",MM:\"%d أشهر\",y:\"سنة\",yy:\"%d سنوات\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-iq-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[2990],{
+
+/***/ 7719:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"ar-iq",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"كانون الثاني_شباط_آذار_نيسان_أيار_حزيران_تموز_آب_أيلول_تشرين الأول_ تشرين الثاني_كانون الأول".split("_"),weekStart:1,weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"كانون الثاني_شباط_آذار_نيسان_أيار_حزيران_تموز_آب_أيلول_تشرين الأول_ تشرين الثاني_كانون الأول".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiem:function(e){return e>12?"ص":"م"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-iq-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-iq-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-iq-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,scAAsc,SAAS,UAAU,gHAAgH,sBAAsB,oBAAoB,eAAe,uJAAuJ,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-iq.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_ar_iq=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"ar-iq\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"كانون الثاني_شباط_آذار_نيسان_أيار_حزيران_تموز_آب_أيلول_تشرين الأول_ تشرين الثاني_كانون الأول\".split(\"_\"),weekStart:1,weekdaysShort:\"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"كانون الثاني_شباط_آذار_نيسان_أيار_حزيران_تموز_آب_أيلول_تشرين الأول_ تشرين الثاني_كانون الأول\".split(\"_\"),weekdaysMin:\"ح_ن_ث_ر_خ_ج_س\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},meridiem:function(e){return e>12?\"ص\":\"م\"},relativeTime:{future:\"في %s\",past:\"منذ %s\",s:\"ثوان\",m:\"دقيقة\",mm:\"%d دقائق\",h:\"ساعة\",hh:\"%d ساعات\",d:\"يوم\",dd:\"%d أيام\",M:\"شهر\",MM:\"%d أشهر\",y:\"سنة\",yy:\"%d سنوات\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[6755],{
+
+/***/ 3939:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,t){ true?module.exports=t(__webpack_require__(7484)):0}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=t(e),r="يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),_={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},d={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},o={name:"ar",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),months:r,monthsShort:r,weekStart:6,relativeTime:{future:"بعد %s",past:"منذ %s",s:"ثانية واحدة",m:"دقيقة واحدة",mm:"%d دقائق",h:"ساعة واحدة",hh:"%d ساعات",d:"يوم واحد",dd:"%d أيام",M:"شهر واحد",MM:"%d أشهر",y:"عام واحد",yy:"%d أعوام"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return d[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return _[e]})).replace(/,/g,"،")},ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"}};return n.default.locale(o,null,!0),o}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-js.js.map

Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/ar-js.js.map


+ 11 - 0
dist/locales/dayjs/ar-kw-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[9897],{
+
+/***/ 2376:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),d={name:"ar-kw",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),ordinal:function(_){return _},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiem:function(_){return _>12?"ص":"م"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-kw-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-kw-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-kw-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,4YAA4Y,SAAS,UAAU,gHAAgH,sBAAsB,oBAAoB,eAAe,uJAAuJ,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-kw.js"],"sourcesContent":["!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_ar_kw=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),d={name:\"ar-kw\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر\".split(\"_\"),weekdaysShort:\"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر\".split(\"_\"),weekdaysMin:\"ح_ن_ث_ر_خ_ج_س\".split(\"_\"),ordinal:function(_){return _},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},meridiem:function(_){return _>12?\"ص\":\"م\"},relativeTime:{future:\"في %s\",past:\"منذ %s\",s:\"ثوان\",m:\"دقيقة\",mm:\"%d دقائق\",h:\"ساعة\",hh:\"%d ساعات\",d:\"يوم\",dd:\"%d أيام\",M:\"شهر\",MM:\"%d أشهر\",y:\"سنة\",yy:\"%d سنوات\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-ly-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[3521],{
+
+/***/ 8540:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),n={name:"ar-ly",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekStart:6,weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),ordinal:function(_){return _},meridiem:function(_){return _>12?"ص":"م"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"}};return t.default.locale(n,null,!0),n}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-ly-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-ly-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-ly-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,kaAAka,SAAS,sBAAsB,oBAAoB,UAAU,kHAAkH,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-ly.js"],"sourcesContent":["!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_ar_ly=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),n={name:\"ar-ly\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekStart:6,weekdaysShort:\"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekdaysMin:\"ح_ن_ث_ر_خ_ج_س\".split(\"_\"),ordinal:function(_){return _},meridiem:function(_){return _>12?\"ص\":\"م\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"D/‏M/‏YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"}};return t.default.locale(n,null,!0),n}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-ma-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[5313],{
+
+/***/ 6817:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"ar-ma",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekStart:6,weekdaysShort:"احد_إثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiem:function(e){return e>12?"ص":"م"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-ma-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-ma-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-ma-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,wZAAwZ,SAAS,UAAU,gHAAgH,sBAAsB,oBAAoB,eAAe,uJAAuJ,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-ma.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_ar_ma=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"ar-ma\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر\".split(\"_\"),weekStart:6,weekdaysShort:\"احد_إثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر\".split(\"_\"),weekdaysMin:\"ح_ن_ث_ر_خ_ج_س\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},meridiem:function(e){return e>12?\"ص\":\"م\"},relativeTime:{future:\"في %s\",past:\"منذ %s\",s:\"ثوان\",m:\"دقيقة\",mm:\"%d دقائق\",h:\"ساعة\",hh:\"%d ساعات\",d:\"يوم\",dd:\"%d أيام\",M:\"شهر\",MM:\"%d أشهر\",y:\"سنة\",yy:\"%d سنوات\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-sa-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[485],{
+
+/***/ 1573:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),d={name:"ar-sa",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),ordinal:function(_){return _},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiem:function(_){return _>12?"ص":"م"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-sa-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-sa-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-sa-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,sZAAsZ,SAAS,UAAU,gHAAgH,sBAAsB,oBAAoB,eAAe,uJAAuJ,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-sa.js"],"sourcesContent":["!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_ar_sa=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),d={name:\"ar-sa\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekdaysShort:\"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekdaysMin:\"ح_ن_ث_ر_خ_ج_س\".split(\"_\"),ordinal:function(_){return _},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},meridiem:function(_){return _>12?\"ص\":\"م\"},relativeTime:{future:\"في %s\",past:\"منذ %s\",s:\"ثوان\",m:\"دقيقة\",mm:\"%d دقائق\",h:\"ساعة\",hh:\"%d ساعات\",d:\"يوم\",dd:\"%d أيام\",M:\"شهر\",MM:\"%d أشهر\",y:\"سنة\",yy:\"%d سنوات\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ar-tn-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[8040],{
+
+/***/ 9339:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"ar-tn",weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekStart:1,weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),ordinal:function(e){return e},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiem:function(e){return e>12?"ص":"م"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ar-tn-js.js.map

+ 1 - 0
dist/locales/dayjs/ar-tn-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ar-tn-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,0ZAA0Z,SAAS,UAAU,gHAAgH,sBAAsB,oBAAoB,eAAe,uJAAuJ,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ar-tn.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_ar_tn=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"ar-tn\",weekdays:\"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت\".split(\"_\"),months:\"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekStart:1,weekdaysShort:\"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت\".split(\"_\"),monthsShort:\"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر\".split(\"_\"),weekdaysMin:\"ح_ن_ث_ر_خ_ج_س\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},meridiem:function(e){return e>12?\"ص\":\"م\"},relativeTime:{future:\"في %s\",past:\"منذ %s\",s:\"ثوان\",m:\"دقيقة\",mm:\"%d دقائق\",h:\"ساعة\",hh:\"%d ساعات\",d:\"يوم\",dd:\"%d أيام\",M:\"شهر\",MM:\"%d أشهر\",y:\"سنة\",yy:\"%d سنوات\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/az-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[4963],{
+
+/***/ 8092:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(a,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(a){"use strict";function e(a){return a&&"object"==typeof a&&"default"in a?a:{default:a}}var _=e(a),t={name:"az",weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., H:mm",LLLL:"dddd, D MMMM YYYY г., H:mm"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"bir neçə saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},ordinal:function(a){return a}};return _.default.locale(t,null,!0),t}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=az-js.js.map

+ 1 - 0
dist/locales/dayjs/az-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/az-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,uYAAuY,wHAAwH,eAAe,kLAAkL,qBAAqB,WAAW,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/az.js"],"sourcesContent":["!function(a,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(a=\"undefined\"!=typeof globalThis?globalThis:a||self).dayjs_locale_az=e(a.dayjs)}(this,(function(a){\"use strict\";function e(a){return a&&\"object\"==typeof a&&\"default\"in a?a:{default:a}}var _=e(a),t={name:\"az\",weekdays:\"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə\".split(\"_\"),weekdaysShort:\"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən\".split(\"_\"),weekdaysMin:\"Bz_BE_ÇA_Çə_CA_Cü_Şə\".split(\"_\"),months:\"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr\".split(\"_\"),monthsShort:\"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek\".split(\"_\"),weekStart:1,formats:{LT:\"H:mm\",LTS:\"H:mm:ss\",L:\"DD.MM.YYYY\",LL:\"D MMMM YYYY г.\",LLL:\"D MMMM YYYY г., H:mm\",LLLL:\"dddd, D MMMM YYYY г., H:mm\"},relativeTime:{future:\"%s sonra\",past:\"%s əvvəl\",s:\"bir neçə saniyə\",m:\"bir dəqiqə\",mm:\"%d dəqiqə\",h:\"bir saat\",hh:\"%d saat\",d:\"bir gün\",dd:\"%d gün\",M:\"bir ay\",MM:\"%d ay\",y:\"bir il\",yy:\"%d il\"},ordinal:function(a){return a}};return _.default.locale(t,null,!0),t}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/be-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[9478],{
+
+/***/ 504:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),n={name:"be",weekdays:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),months:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),weekStart:1,weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),ordinal:function(_){return _},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"}};return t.default.locale(n,null,!0),n}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=be-js.js.map

+ 1 - 0
dist/locales/dayjs/be-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/be-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,gaAAga,SAAS,UAAU,8HAA8H,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/be.js"],"sourcesContent":["!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_be=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),n={name:\"be\",weekdays:\"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу\".split(\"_\"),months:\"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня\".split(\"_\"),weekStart:1,weekdaysShort:\"нд_пн_ат_ср_чц_пт_сб\".split(\"_\"),monthsShort:\"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж\".split(\"_\"),weekdaysMin:\"нд_пн_ат_ср_чц_пт_сб\".split(\"_\"),ordinal:function(_){return _},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD.MM.YYYY\",LL:\"D MMMM YYYY г.\",LLL:\"D MMMM YYYY г., HH:mm\",LLLL:\"dddd, D MMMM YYYY г., HH:mm\"}};return t.default.locale(n,null,!0),n}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/bg-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[578],{
+
+/***/ 9091:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"bg",weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekStart:1,ordinal:function(e){var _=e%100;if(_>10&&_<20)return e+"-ти";var t=e%10;return 1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=bg-js.js.map

+ 1 - 0
dist/locales/dayjs/bg-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/bg-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,2YAA2Y,YAAY,6BAA6B,WAAW,gEAAgE,UAAU,4GAA4G,eAAe,8KAA8K,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/bg.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_bg=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"bg\",weekdays:\"неделя_понеделник_вторник_сряда_четвъртък_петък_събота\".split(\"_\"),weekdaysShort:\"нед_пон_вто_сря_чет_пет_съб\".split(\"_\"),weekdaysMin:\"нд_пн_вт_ср_чт_пт_сб\".split(\"_\"),months:\"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември\".split(\"_\"),monthsShort:\"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек\".split(\"_\"),weekStart:1,ordinal:function(e){var _=e%100;if(_>10&&_<20)return e+\"-ти\";var t=e%10;return 1===t?e+\"-ви\":2===t?e+\"-ри\":7===t||8===t?e+\"-ми\":e+\"-ти\"},formats:{LT:\"H:mm\",LTS:\"H:mm:ss\",L:\"D.MM.YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY H:mm\",LLLL:\"dddd, D MMMM YYYY H:mm\"},relativeTime:{future:\"след %s\",past:\"преди %s\",s:\"няколко секунди\",m:\"минута\",mm:\"%d минути\",h:\"час\",hh:\"%d часа\",d:\"ден\",dd:\"%d дена\",M:\"месец\",MM:\"%d месеца\",y:\"година\",yy:\"%d години\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/bi-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[2984],{
+
+/***/ 9149:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,a){ true?module.exports=a(__webpack_require__(7484)):0}(this,(function(e){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=a(e),_={name:"bi",weekdays:"Sande_Mande_Tusde_Wenesde_Tosde_Fraede_Sarade".split("_"),months:"Januari_Februari_Maj_Eprel_Mei_Jun_Julae_Okis_Septemba_Oktoba_Novemba_Disemba".split("_"),weekStart:1,weekdaysShort:"San_Man_Tus_Wen_Tos_Frae_Sar".split("_"),monthsShort:"Jan_Feb_Maj_Epr_Mai_Jun_Jul_Oki_Sep_Okt_Nov_Dis".split("_"),weekdaysMin:"San_Ma_Tu_We_To_Fr_Sar".split("_"),ordinal:function(e){return e},formats:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},relativeTime:{future:"lo %s",past:"%s bifo",s:"sam seken",m:"wan minit",mm:"%d minit",h:"wan haoa",hh:"%d haoa",d:"wan dei",dd:"%d dei",M:"wan manis",MM:"%d manis",y:"wan yia",yy:"%d yia"}};return n.default.locale(_,null,!0),_}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=bi-js.js.map

+ 1 - 0
dist/locales/dayjs/bi-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/bi-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,iYAAiY,SAAS,UAAU,qHAAqH,eAAe,gLAAgL,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/bi.js"],"sourcesContent":["!function(e,a){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=a(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],a):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_bi=a(e.dayjs)}(this,(function(e){\"use strict\";function a(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var n=a(e),_={name:\"bi\",weekdays:\"Sande_Mande_Tusde_Wenesde_Tosde_Fraede_Sarade\".split(\"_\"),months:\"Januari_Februari_Maj_Eprel_Mei_Jun_Julae_Okis_Septemba_Oktoba_Novemba_Disemba\".split(\"_\"),weekStart:1,weekdaysShort:\"San_Man_Tus_Wen_Tos_Frae_Sar\".split(\"_\"),monthsShort:\"Jan_Feb_Maj_Epr_Mai_Jun_Jul_Oki_Sep_Okt_Nov_Dis\".split(\"_\"),weekdaysMin:\"San_Ma_Tu_We_To_Fr_Sar\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"h:mm A\",LTS:\"h:mm:ss A\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY h:mm A\",LLLL:\"dddd, D MMMM YYYY h:mm A\"},relativeTime:{future:\"lo %s\",past:\"%s bifo\",s:\"sam seken\",m:\"wan minit\",mm:\"%d minit\",h:\"wan haoa\",hh:\"%d haoa\",d:\"wan dei\",dd:\"%d dei\",M:\"wan manis\",MM:\"%d manis\",y:\"wan yia\",yy:\"%d yia\"}};return n.default.locale(_,null,!0),_}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/bm-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[2263],{
+
+/***/ 5287:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(a,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(a){"use strict";function e(a){return a&&"object"==typeof a&&"default"in a?a:{default:a}}var l=e(a),t={name:"bm",weekdays:"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),weekStart:1,weekdaysShort:"Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib".split("_"),monthsShort:"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),ordinal:function(a){return a},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"},relativeTime:{future:"%s kɔnɔ",past:"a bɛ %s bɔ",s:"sanga dama dama",m:"miniti kelen",mm:"miniti %d",h:"lɛrɛ kelen",hh:"lɛrɛ %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"}};return l.default.locale(t,null,!0),t}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=bm-js.js.map

+ 1 - 0
dist/locales/dayjs/bm-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/bm-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,0bAA0b,SAAS,UAAU,qKAAqK,eAAe,uMAAuM,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/bm.js"],"sourcesContent":["!function(a,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(a=\"undefined\"!=typeof globalThis?globalThis:a||self).dayjs_locale_bm=e(a.dayjs)}(this,(function(a){\"use strict\";function e(a){return a&&\"object\"==typeof a&&\"default\"in a?a:{default:a}}var l=e(a),t={name:\"bm\",weekdays:\"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri\".split(\"_\"),months:\"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo\".split(\"_\"),weekStart:1,weekdaysShort:\"Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib\".split(\"_\"),monthsShort:\"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des\".split(\"_\"),weekdaysMin:\"Ka_Nt_Ta_Ar_Al_Ju_Si\".split(\"_\"),ordinal:function(a){return a},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"MMMM [tile] D [san] YYYY\",LLL:\"MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm\",LLLL:\"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm\"},relativeTime:{future:\"%s kɔnɔ\",past:\"a bɛ %s bɔ\",s:\"sanga dama dama\",m:\"miniti kelen\",mm:\"miniti %d\",h:\"lɛrɛ kelen\",hh:\"lɛrɛ %d\",d:\"tile kelen\",dd:\"tile %d\",M:\"kalo kelen\",MM:\"kalo %d\",y:\"san kelen\",yy:\"san %d\"}};return l.default.locale(t,null,!0),t}));"],"names":[],"sourceRoot":""}

Plik diff jest za duży
+ 5 - 0
dist/locales/dayjs/bn-bd-js.js


Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/bn-bd-js.js.map


+ 11 - 0
dist/locales/dayjs/bn-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[280],{
+
+/***/ 5254:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),n={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},d={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"},o={name:"bn",weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),months:"জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),monthsShort:"জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdaysMin:"রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি".split("_"),preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(e){return d[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return n[e]}))},ordinal:function(e){return e},formats:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"}};return t.default.locale(o,null,!0),o}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=bn-js.js.map

Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/bn-js.js.map


Plik diff jest za duży
+ 5 - 0
dist/locales/dayjs/bo-js.js


Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/bo-js.js.map


+ 11 - 0
dist/locales/dayjs/br-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[760],{
+
+/***/ 8864:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,n){ true?module.exports=n(__webpack_require__(7484)):0}(this,(function(e){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=n(e);function r(e){return e>9?r(e%10):e}function t(e,n,u){return e+" "+function(e,n){return 2===n?function(e){return{m:"v",b:"v",d:"z"}[e.charAt(0)]+e.substring(1)}(e):e}({mm:"munutenn",MM:"miz",dd:"devezh"}[u],e)}var o={name:"br",weekdays:"Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn".split("_"),months:"Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),weekStart:1,weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),monthsShort:"Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),ordinal:function(e){return e},formats:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY h[e]mm A",LLLL:"dddd, D [a viz] MMMM YYYY h[e]mm A"},relativeTime:{future:"a-benn %s",past:"%s ʼzo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:function(e){switch(r(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}},meridiem:function(e){return e<12?"a.m.":"g.m."}};return u.default.locale(o,null,!0),o}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=br-js.js.map

Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/br-js.js.map


+ 11 - 0
dist/locales/dayjs/bs-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[9833],{
+
+/***/ 4502:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,t){ true?module.exports=t(__webpack_require__(7484)):0}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var _=t(e),a={name:"bs",weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),weekStart:1,weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),ordinal:function(e){return e},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"}};return _.default.locale(a,null,!0),a}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=bs-js.js.map

+ 1 - 0
dist/locales/dayjs/bs-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/bs-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,kaAAka,SAAS,UAAU,kHAAkH,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/bs.js"],"sourcesContent":["!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_bs=t(e.dayjs)}(this,(function(e){\"use strict\";function t(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var _=t(e),a={name:\"bs\",weekdays:\"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota\".split(\"_\"),months:\"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar\".split(\"_\"),weekStart:1,weekdaysShort:\"ned._pon._uto._sri._čet._pet._sub.\".split(\"_\"),monthsShort:\"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.\".split(\"_\"),weekdaysMin:\"ne_po_ut_sr_če_pe_su\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"H:mm\",LTS:\"H:mm:ss\",L:\"DD.MM.YYYY\",LL:\"D. MMMM YYYY\",LLL:\"D. MMMM YYYY H:mm\",LLLL:\"dddd, D. MMMM YYYY H:mm\"}};return _.default.locale(a,null,!0),a}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/ca-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[102],{
+
+/***/ 3646:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,s){ true?module.exports=s(__webpack_require__(7484)):0}(this,(function(e){"use strict";function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=s(e),_={name:"ca",weekdays:"Diumenge_Dilluns_Dimarts_Dimecres_Dijous_Divendres_Dissabte".split("_"),weekdaysShort:"Dg._Dl._Dt._Dc._Dj._Dv._Ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),months:"Gener_Febrer_Març_Abril_Maig_Juny_Juliol_Agost_Setembre_Octubre_Novembre_Desembre".split("_"),monthsShort:"Gen._Febr._Març_Abr._Maig_Juny_Jul._Ag._Set._Oct._Nov._Des.".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",ll:"D MMM YYYY",lll:"D MMM YYYY, H:mm",llll:"ddd D MMM YYYY, H:mm"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinal:function(e){return""+e+(1===e||3===e?"r":2===e?"n":4===e?"t":"è")}};return t.default.locale(_,null,!0),_}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=ca-js.js.map

+ 1 - 0
dist/locales/dayjs/ca-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/ca-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,iZAAiZ,8MAA8M,eAAe,+KAA+K,qBAAqB,wDAAwD,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/ca.js"],"sourcesContent":["!function(e,s){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=s(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],s):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_ca=s(e.dayjs)}(this,(function(e){\"use strict\";function s(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=s(e),_={name:\"ca\",weekdays:\"Diumenge_Dilluns_Dimarts_Dimecres_Dijous_Divendres_Dissabte\".split(\"_\"),weekdaysShort:\"Dg._Dl._Dt._Dc._Dj._Dv._Ds.\".split(\"_\"),weekdaysMin:\"Dg_Dl_Dt_Dc_Dj_Dv_Ds\".split(\"_\"),months:\"Gener_Febrer_Març_Abril_Maig_Juny_Juliol_Agost_Setembre_Octubre_Novembre_Desembre\".split(\"_\"),monthsShort:\"Gen._Febr._Març_Abr._Maig_Juny_Jul._Ag._Set._Oct._Nov._Des.\".split(\"_\"),weekStart:1,formats:{LT:\"H:mm\",LTS:\"H:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM [de] YYYY\",LLL:\"D MMMM [de] YYYY [a les] H:mm\",LLLL:\"dddd D MMMM [de] YYYY [a les] H:mm\",ll:\"D MMM YYYY\",lll:\"D MMM YYYY, H:mm\",llll:\"ddd D MMM YYYY, H:mm\"},relativeTime:{future:\"d'aquí %s\",past:\"fa %s\",s:\"uns segons\",m:\"un minut\",mm:\"%d minuts\",h:\"una hora\",hh:\"%d hores\",d:\"un dia\",dd:\"%d dies\",M:\"un mes\",MM:\"%d mesos\",y:\"un any\",yy:\"%d anys\"},ordinal:function(e){return\"\"+e+(1===e||3===e?\"r\":2===e?\"n\":4===e?\"t\":\"è\")}};return t.default.locale(_,null,!0),_}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/cs-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[7400],{
+
+/***/ 8507:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,n){ true?module.exports=n(__webpack_require__(7484)):0}(this,(function(e){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=n(e);function s(e){return e>1&&e<5&&1!=~~(e/10)}function r(e,n,t,r){var d=e+" ";switch(t){case"s":return n||r?"pár sekund":"pár sekundami";case"m":return n?"minuta":r?"minutu":"minutou";case"mm":return n||r?d+(s(e)?"minuty":"minut"):d+"minutami";case"h":return n?"hodina":r?"hodinu":"hodinou";case"hh":return n||r?d+(s(e)?"hodiny":"hodin"):d+"hodinami";case"d":return n||r?"den":"dnem";case"dd":return n||r?d+(s(e)?"dny":"dní"):d+"dny";case"M":return n||r?"měsíc":"měsícem";case"MM":return n||r?d+(s(e)?"měsíce":"měsíců"):d+"měsíci";case"y":return n||r?"rok":"rokem";case"yy":return n||r?d+(s(e)?"roky":"let"):d+"lety"}}var d={name:"cs",weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),months:"leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),monthsShort:"led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),weekStart:1,yearStart:4,ordinal:function(e){return e+"."},formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},relativeTime:{future:"za %s",past:"před %s",s:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=cs-js.js.map

Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/cs-js.js.map


+ 11 - 0
dist/locales/dayjs/cv-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[4481],{
+
+/***/ 6636:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),n={name:"cv",weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),weekStart:1,weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),ordinal:function(_){return _},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"}};return t.default.locale(n,null,!0),n}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=cv-js.js.map

+ 1 - 0
dist/locales/dayjs/cv-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/cv-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,iYAAiY,SAAS,UAAU,6LAA6L,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/cv.js"],"sourcesContent":["!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_cv=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),n={name:\"cv\",weekdays:\"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун\".split(\"_\"),months:\"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав\".split(\"_\"),weekStart:1,weekdaysShort:\"выр_тун_ытл_юн_кӗҫ_эрн_шӑм\".split(\"_\"),monthsShort:\"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш\".split(\"_\"),weekdaysMin:\"вр_тн_ыт_юн_кҫ_эр_шм\".split(\"_\"),ordinal:function(_){return _},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD-MM-YYYY\",LL:\"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]\",LLL:\"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm\",LLLL:\"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm\"}};return t.default.locale(n,null,!0),n}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/cy-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[6740],{
+
+/***/ 8792:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(d,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(d){"use strict";function e(d){return d&&"object"==typeof d&&"default"in d?d:{default:d}}var _=e(d),a={name:"cy",weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),weekStart:1,weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),ordinal:function(d){return d},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"}};return _.default.locale(a,null,!0),a}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=cy-js.js.map

+ 1 - 0
dist/locales/dayjs/cy-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/cy-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,0aAA0a,SAAS,UAAU,iHAAiH,eAAe,iLAAiL,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/cy.js"],"sourcesContent":["!function(d,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(d=\"undefined\"!=typeof globalThis?globalThis:d||self).dayjs_locale_cy=e(d.dayjs)}(this,(function(d){\"use strict\";function e(d){return d&&\"object\"==typeof d&&\"default\"in d?d:{default:d}}var _=e(d),a={name:\"cy\",weekdays:\"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn\".split(\"_\"),months:\"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr\".split(\"_\"),weekStart:1,weekdaysShort:\"Sul_Llun_Maw_Mer_Iau_Gwe_Sad\".split(\"_\"),monthsShort:\"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag\".split(\"_\"),weekdaysMin:\"Su_Ll_Ma_Me_Ia_Gw_Sa\".split(\"_\"),ordinal:function(d){return d},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd, D MMMM YYYY HH:mm\"},relativeTime:{future:\"mewn %s\",past:\"%s yn ôl\",s:\"ychydig eiliadau\",m:\"munud\",mm:\"%d munud\",h:\"awr\",hh:\"%d awr\",d:\"diwrnod\",dd:\"%d diwrnod\",M:\"mis\",MM:\"%d mis\",y:\"blwyddyn\",yy:\"%d flynedd\"}};return _.default.locale(a,null,!0),a}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/da-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[2548],{
+
+/***/ 7427:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,t){ true?module.exports=t(__webpack_require__(7484)):0}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=t(e),n={name:"da",weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn._man._tirs._ons._tors._fre._lør.".split("_"),weekdaysMin:"sø._ma._ti._on._to._fr._lø.".split("_"),months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj_juni_juli_aug._sept._okt._nov._dec.".split("_"),weekStart:1,ordinal:function(e){return e+"."},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"}};return d.default.locale(n,null,!0),n}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=da-js.js.map

+ 1 - 0
dist/locales/dayjs/da-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/da-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,qaAAqa,aAAa,UAAU,8HAA8H,eAAe,mLAAmL,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/da.js"],"sourcesContent":["!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_da=t(e.dayjs)}(this,(function(e){\"use strict\";function t(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var d=t(e),n={name:\"da\",weekdays:\"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag\".split(\"_\"),weekdaysShort:\"søn._man._tirs._ons._tors._fre._lør.\".split(\"_\"),weekdaysMin:\"sø._ma._ti._on._to._fr._lø.\".split(\"_\"),months:\"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december\".split(\"_\"),monthsShort:\"jan._feb._mar._apr._maj_juni_juli_aug._sept._okt._nov._dec.\".split(\"_\"),weekStart:1,ordinal:function(e){return e+\".\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD.MM.YYYY\",LL:\"D. MMMM YYYY\",LLL:\"D. MMMM YYYY HH:mm\",LLLL:\"dddd [d.] D. MMMM YYYY [kl.] HH:mm\"},relativeTime:{future:\"om %s\",past:\"%s siden\",s:\"få sekunder\",m:\"et minut\",mm:\"%d minutter\",h:\"en time\",hh:\"%d timer\",d:\"en dag\",dd:\"%d dage\",M:\"en måned\",MM:\"%d måneder\",y:\"et år\",yy:\"%d år\"}};return d.default.locale(n,null,!0),n}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/de-at-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[7175],{
+
+/***/ 3237:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,n){ true?module.exports=n(__webpack_require__(7484)):0}(this,(function(e){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=n(e),i={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function a(e,n,t){var a=i[t];return Array.isArray(a)&&(a=a[n?0:1]),a.replace("%d",e)}var r={name:"de-at",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),ordinal:function(e){return e+"."},weekStart:1,formats:{LTS:"HH:mm:ss",LT:"HH:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a}};return t.default.locale(r,null,!0),r}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=de-at-js.js.map

+ 1 - 0
dist/locales/dayjs/de-at-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/de-at-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,iSAAiS,kBAAkB,WAAW,wDAAwD,OAAO,mZAAmZ,aAAa,sBAAsB,oHAAoH,eAAe,gFAAgF,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/de-at.js"],"sourcesContent":["!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_de_at=n(e.dayjs)}(this,(function(e){\"use strict\";function n(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=n(e),i={s:\"ein paar Sekunden\",m:[\"eine Minute\",\"einer Minute\"],mm:\"%d Minuten\",h:[\"eine Stunde\",\"einer Stunde\"],hh:\"%d Stunden\",d:[\"ein Tag\",\"einem Tag\"],dd:[\"%d Tage\",\"%d Tagen\"],M:[\"ein Monat\",\"einem Monat\"],MM:[\"%d Monate\",\"%d Monaten\"],y:[\"ein Jahr\",\"einem Jahr\"],yy:[\"%d Jahre\",\"%d Jahren\"]};function a(e,n,t){var a=i[t];return Array.isArray(a)&&(a=a[n?0:1]),a.replace(\"%d\",e)}var r={name:\"de-at\",weekdays:\"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag\".split(\"_\"),weekdaysShort:\"So._Mo._Di._Mi._Do._Fr._Sa.\".split(\"_\"),weekdaysMin:\"So_Mo_Di_Mi_Do_Fr_Sa\".split(\"_\"),months:\"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember\".split(\"_\"),monthsShort:\"Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.\".split(\"_\"),ordinal:function(e){return e+\".\"},weekStart:1,formats:{LTS:\"HH:mm:ss\",LT:\"HH:mm\",L:\"DD.MM.YYYY\",LL:\"D. MMMM YYYY\",LLL:\"D. MMMM YYYY HH:mm\",LLLL:\"dddd, D. MMMM YYYY HH:mm\"},relativeTime:{future:\"in %s\",past:\"vor %s\",s:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a}};return t.default.locale(r,null,!0),r}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/de-ch-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[1679],{
+
+/***/ 6148:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,n){ true?module.exports=n(__webpack_require__(7484)):0}(this,(function(e){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=n(e),a={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function i(e,n,t){var i=a[t];return Array.isArray(i)&&(i=i[n?0:1]),i.replace("%d",e)}var r={name:"de-ch",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),ordinal:function(e){return e+"."},weekStart:1,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i}};return t.default.locale(r,null,!0),r}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=de-ch-js.js.map

+ 1 - 0
dist/locales/dayjs/de-ch-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/de-ch-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA6I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,iSAAiS,kBAAkB,WAAW,wDAAwD,OAAO,4YAA4Y,aAAa,sBAAsB,oHAAoH,eAAe,gFAAgF,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/de-ch.js"],"sourcesContent":["!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_de_ch=n(e.dayjs)}(this,(function(e){\"use strict\";function n(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=n(e),a={s:\"ein paar Sekunden\",m:[\"eine Minute\",\"einer Minute\"],mm:\"%d Minuten\",h:[\"eine Stunde\",\"einer Stunde\"],hh:\"%d Stunden\",d:[\"ein Tag\",\"einem Tag\"],dd:[\"%d Tage\",\"%d Tagen\"],M:[\"ein Monat\",\"einem Monat\"],MM:[\"%d Monate\",\"%d Monaten\"],y:[\"ein Jahr\",\"einem Jahr\"],yy:[\"%d Jahre\",\"%d Jahren\"]};function i(e,n,t){var i=a[t];return Array.isArray(i)&&(i=i[n?0:1]),i.replace(\"%d\",e)}var r={name:\"de-ch\",weekdays:\"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag\".split(\"_\"),weekdaysShort:\"So_Mo_Di_Mi_Do_Fr_Sa\".split(\"_\"),weekdaysMin:\"So_Mo_Di_Mi_Do_Fr_Sa\".split(\"_\"),months:\"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember\".split(\"_\"),monthsShort:\"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.\".split(\"_\"),ordinal:function(e){return e+\".\"},weekStart:1,formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD.MM.YYYY\",LL:\"D. MMMM YYYY\",LLL:\"D. MMMM YYYY HH:mm\",LLLL:\"dddd, D. MMMM YYYY HH:mm\"},relativeTime:{future:\"in %s\",past:\"vor %s\",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i}};return t.default.locale(r,null,!0),r}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/de-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[52],{
+
+/***/ 790:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,n){ true?module.exports=n(__webpack_require__(7484)):0}(this,(function(e){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=n(e),a={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function i(e,n,t){var i=a[t];return Array.isArray(i)&&(i=i[n?0:1]),i.replace("%d",e)}var r={name:"de",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.".split("_"),ordinal:function(e){return e+"."},weekStart:1,yearStart:4,formats:{LTS:"HH:mm:ss",LT:"HH:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i}};return t.default.locale(r,null,!0),r}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=de-js.js.map

+ 1 - 0
dist/locales/dayjs/de-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/de-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,iSAAiS,kBAAkB,WAAW,wDAAwD,OAAO,iZAAiZ,aAAa,kCAAkC,oHAAoH,eAAe,gFAAgF,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/de.js"],"sourcesContent":["!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_de=n(e.dayjs)}(this,(function(e){\"use strict\";function n(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=n(e),a={s:\"ein paar Sekunden\",m:[\"eine Minute\",\"einer Minute\"],mm:\"%d Minuten\",h:[\"eine Stunde\",\"einer Stunde\"],hh:\"%d Stunden\",d:[\"ein Tag\",\"einem Tag\"],dd:[\"%d Tage\",\"%d Tagen\"],M:[\"ein Monat\",\"einem Monat\"],MM:[\"%d Monate\",\"%d Monaten\"],y:[\"ein Jahr\",\"einem Jahr\"],yy:[\"%d Jahre\",\"%d Jahren\"]};function i(e,n,t){var i=a[t];return Array.isArray(i)&&(i=i[n?0:1]),i.replace(\"%d\",e)}var r={name:\"de\",weekdays:\"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag\".split(\"_\"),weekdaysShort:\"So._Mo._Di._Mi._Do._Fr._Sa.\".split(\"_\"),weekdaysMin:\"So_Mo_Di_Mi_Do_Fr_Sa\".split(\"_\"),months:\"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember\".split(\"_\"),monthsShort:\"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.\".split(\"_\"),ordinal:function(e){return e+\".\"},weekStart:1,yearStart:4,formats:{LTS:\"HH:mm:ss\",LT:\"HH:mm\",L:\"DD.MM.YYYY\",LL:\"D. MMMM YYYY\",LLL:\"D. MMMM YYYY HH:mm\",LLLL:\"dddd, D. MMMM YYYY HH:mm\"},relativeTime:{future:\"in %s\",past:\"vor %s\",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i}};return t.default.locale(r,null,!0),r}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/dv-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[5569],{
+
+/***/ 1794:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(_,e){ true?module.exports=e(__webpack_require__(7484)):0}(this,(function(_){"use strict";function e(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}var t=e(_),d={name:"dv",weekdays:"އާދިއްތަ_ހޯމަ_އަންގާރަ_ބުދަ_ބުރާސްފަތި_ހުކުރު_ހޮނިހިރު".split("_"),months:"ޖެނުއަރީ_ފެބްރުއަރީ_މާރިޗު_އޭޕްރީލު_މޭ_ޖޫން_ޖުލައި_އޯގަސްޓު_ސެޕްޓެމްބަރު_އޮކްޓޯބަރު_ނޮވެމްބަރު_ޑިސެމްބަރު".split("_"),weekStart:7,weekdaysShort:"އާދިއްތަ_ހޯމަ_އަންގާރަ_ބުދަ_ބުރާސްފަތި_ހުކުރު_ހޮނިހިރު".split("_"),monthsShort:"ޖެނުއަރީ_ފެބްރުއަރީ_މާރިޗު_އޭޕްރީލު_މޭ_ޖޫން_ޖުލައި_އޯގަސްޓު_ސެޕްޓެމްބަރު_އޮކްޓޯބަރު_ނޮވެމްބަރު_ޑިސެމްބަރު".split("_"),weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),ordinal:function(_){return _},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=dv-js.js.map

Plik diff jest za duży
+ 0 - 0
dist/locales/dayjs/dv-js.js.map


+ 11 - 0
dist/locales/dayjs/el-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[1606],{
+
+/***/ 5423:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,_){ true?module.exports=_(__webpack_require__(7484)):0}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"el",weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),months:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαι_Ιουν_Ιουλ_Αυγ_Σεπτ_Οκτ_Νοε_Δεκ".split("_"),ordinal:function(e){return e},weekStart:1,relativeTime:{future:"σε %s",past:"πριν %s",s:"μερικά δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένα μήνα",MM:"%d μήνες",y:"ένα χρόνο",yy:"%d χρόνια"},formats:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"}};return t.default.locale(d,null,!0),d}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=el-js.js.map

+ 1 - 0
dist/locales/dayjs/el-js.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"locales/dayjs/el-js.js","mappings":";;;;;AAAA,eAAe,KAAoD,kBAAkB,mBAAO,CAAC,IAAO,GAAG,CAA0I,CAAC,mBAAmB,aAAa,cAAc,+CAA+C,WAAW,cAAc,maAAma,SAAS,2BAA2B,8LAA8L,UAAU,uHAAuH,qCAAqC","sources":["webpack://converse.js/./node_modules/dayjs/locale/el.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_el=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"el\",weekdays:\"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο\".split(\"_\"),weekdaysShort:\"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ\".split(\"_\"),weekdaysMin:\"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα\".split(\"_\"),months:\"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος\".split(\"_\"),monthsShort:\"Ιαν_Φεβ_Μαρ_Απρ_Μαι_Ιουν_Ιουλ_Αυγ_Σεπτ_Οκτ_Νοε_Δεκ\".split(\"_\"),ordinal:function(e){return e},weekStart:1,relativeTime:{future:\"σε %s\",past:\"πριν %s\",s:\"μερικά δευτερόλεπτα\",m:\"ένα λεπτό\",mm:\"%d λεπτά\",h:\"μία ώρα\",hh:\"%d ώρες\",d:\"μία μέρα\",dd:\"%d μέρες\",M:\"ένα μήνα\",MM:\"%d μήνες\",y:\"ένα χρόνο\",yy:\"%d χρόνια\"},formats:{LT:\"h:mm A\",LTS:\"h:mm:ss A\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY h:mm A\",LLLL:\"dddd, D MMMM YYYY h:mm A\"}};return t.default.locale(d,null,!0),d}));"],"names":[],"sourceRoot":""}

+ 11 - 0
dist/locales/dayjs/en-au-js.js

@@ -0,0 +1,11 @@
+(self["webpackChunkconverse_js"] = self["webpackChunkconverse_js"] || []).push([[5485],{
+
+/***/ 5109:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+!function(e,a){ true?module.exports=a(__webpack_require__(7484)):0}(this,(function(e){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=a(e),_={name:"en-au",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),weekStart:1,weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ordinal:function(e){return e},formats:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"}};return t.default.locale(_,null,!0),_}));
+
+/***/ })
+
+}]);
+//# sourceMappingURL=en-au-js.js.map

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików