Commit Graph

24 Commits

Author SHA1 Message Date
wiz
a2740aaa02 Enable 'ka' locale for Georgian 2020-12-07 00:20:05 +09:00
wiz
8d565f5c62 Update translation strings from Transifex 2020-12-06 03:44:29 +09:00
wiz
0247c7137e Update translation strings from Transifex 2020-12-06 01:12:33 +09:00
wiz
805636229a Update translation strings from Transifex 2020-12-05 22:42:48 +09:00
wiz
c5cd80ac48 Update translation strings from Transifex 2020-12-05 21:57:51 +09:00
softsimon
94a5e8edae i18n update 2020-12-05 11:58:22 +07:00
softsimon
1fc1b4b86e i18n: Asset search box 2020-12-05 02:01:31 +07:00
wiz
5774b395a7 Update translation strings from Transifex 2020-12-05 02:39:50 +09:00
softsimon
f4c27e4c26 i18n: Added X of X transaction. Flipped collapse/expand 2020-12-05 00:16:23 +07:00
softsimon
336e45a7b1 i18n: Added "miner identification" and updated "navigate to sponsor" 2020-12-04 23:07:53 +07:00
wiz
6acacc7792 Update translations from Transifex 2020-12-05 00:36:00 +09:00
softsimon
10b9778b3c Adding missing Asset page strings. Fixed block title translations. 2020-12-04 22:30:09 +07:00
wiz
6476d1e77c Update translations from Transifex 2020-12-05 00:11:40 +09:00
softsimon
67df21fe50 Fixing about-link title translation. 2020-12-04 21:49:03 +07:00
softsimon
ea496915c4 Updated messages.xlf 2020-12-04 21:38:14 +07:00
wiz
768fbdfbfa Update translated strings from Transifex 2020-12-04 23:03:52 +09:00
wiz
ea521651fd Update extracted i18n strings from source 2020-12-04 04:11:35 +09:00
wiz
73db9c5023 Enable 'ar' locale for Arabic 2020-12-04 04:11:14 +09:00
wiz
cc451d29ab Update translated strings from Transifex 2020-12-04 04:07:01 +09:00
wiz
a831d04694 Fix incorrectly used 'nn' locale, rename it to 'nb' instead 2020-12-03 22:37:06 +09:00
wiz
8875579c08 Update strings from Transifex 2020-12-03 10:16:21 +09:00
wiz
83501cfdbe Enable locale 'vi' for Vietnamese 2020-12-03 10:16:02 +09:00
wiz
0d2e4000e1 Update translations from Transifex 2020-12-02 20:35:50 +09:00
wiz
4658b47007 Implement i18n support in frontend using Angular + Transifex + NGINX
This PR adds basic i18n support into the mempool frontend, together with
a smooth workflow for developers and translators to collaborate:

* Using the existing @angular/localize module, developers add i18n
metadata to any frontend strings their new features or changes modify

* Using the new npm script `i18n-extract-from-source`, developers
extract the i18n data from source code into `src/locale/messages.xlf`

* After pushing the updated `src/locale/messages.xlf` to GitHub, the
Transifex service will update its database from the new source data

* Using the Transifex website UI, translators can work together to
translate all the mempool frontend strings into their native languages

* Using the new npm script `i18n-pull-from-transifex`, developers can
pull in completed translations from Transifex, and commit them into git.

This flow requires an API key from Transifex, which can be obtained at
https://www.transifex.com/user/settings/api/ to be used with the python
script installed by `pip install transifex-client` - after preparing
these, run the npm script which will ask you for the API key the first
time. When downloading is complete, you can test building the frontend,
and if successful, commit the new strings files into git.

This PR implements a new locale selector in the footer of the homepage
dashboard, and includes WIP translations for the following languages:

* Czech (cs)
* German (de)
* Japanese (ja)
* Norwegian (nn)
* Spanish (es)
* Swedish (sv)
* Ukrainian (uk)
* Persian (fa)
* Portugese (pt)
* Turkish (tr)
* Dutch (nl)
* French (fr)
* Chinese (zh)
* Slovenian (sl)
* Korean (ko)
* Polish (pl)

The user-agent's `Accept-Language` header is used to automatically
detect their preferred language, which can be manually overriden by the
pull-down selector, which saves their preference to a cookie, which is
used by nginx to serve the correct HTML bundle to the user.

Remaining tasks include adding i18n metadata for strings in the Bisq and
Liquid frontend code, mouseover hover tooltip strings, hard-coded og
metadata inside HTML templates, and many other places. This will be done
in a separate PR.

When upgrading to add i18n support, mempool instance operators must take
care to install the new nginx.conf and nginx-mempool.conf files, and
tweak for their specific site configuration.

Fixes #81
2020-12-02 04:19:33 +09:00