Links to documentation are now using the front-end language to point to the translated documentation page
(except for some links generated from the backend, in the diagnostic tool for example).
Partial fix for #224.
* Adding a help button on top of the chat, that links to the online documentation on frama.io.
* Replaced github.io documentation links by frama.io documentation.
* Adding links to the documentation in the diagnostic tool.
* the front-end now use global constants, based on the translation key
* build-client.js use the ESBuild "define" directive to replace these
globals at compile time, by the english value
* build:client must now be called after build:languages
* moving the loadLoc and loc backend functions in a separate lib
* new option to allow external xmpp account s2s connections
* settings to setup the port and network interfaces
* documentation WIP
Related to issue #114
Implementing a new translating system, so we can more easily translate
settings strings. Indeed, these strings are difficult to embed in
JSON format.
We still use JSON files for standard strings, but in addition we have
dedicated YAML files to translate settings strings.
There is a new build-languages.js script that merge all translations in JSON files.
Other modifications:
* Eslint: ignoring documentation and build scripts.
* french settings translations.
Moving `public/images` dir to `assets/images`, because it conflicts with gitlab CI/CD for documentation.
Moving `assets/styles.css` to `assets/styles/styles.css`.
Related to #117.
Replacing webpack by ESBuild for client code compilation (as in the
official quickstart plugin).
So we can remove deprecated webpack dependencies.
Note: webpack is still used for ConverseJS build.
This may be removed soon.
Related to issue #122.
* Builtin Prosody, Share chat url: option to have a transparent background (for streaming integration).
* Builtin Prosody, Share chat url: fixed new day hidding when no scrollbar in readonly mode.
Modal for video owner (and instance's moderators) that allows to generate a link to the chat. So you can - for example - obtain the url to use for OBS integration.
WIP
Peertube events are not fired in the good order.
This is a dirty fix: saving the current window location when
initializing the chat, and comparing the saved url when navigation-end
is triggered.