Commit graph

23 commits

Author SHA1 Message Date
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
softsimon
6bc6966019
Display confidential instead of nothing for confidential assets.
fixes #110
2020-11-22 16:30:36 +07:00
softsimon
24182a6fb3
Fixes. 2020-07-24 14:11:49 +07:00
softsimon
c7a09ffbfc
Display correct BTC unit depending on network. 2020-07-24 11:49:36 +07:00
softsimon
84e15b133a
Mobile responsive fixes. 2020-05-28 15:50:19 +07:00
softsimon
1feb985bec
Liquid and Testnet now accessable from the main site
fixes #35
2020-05-09 20:37:50 +07:00
softsimon
20c7ee98e7
Asset tracking.
Asset caching.
refs #37
2020-05-05 15:26:23 +07:00
softsimon
498df53f25
Format transaction count numbers. 2020-04-07 00:44:22 +07:00
softsimon
12546e1096
Liquid: Display BTC as L-BTC. 2020-03-25 21:55:18 +07:00
softsimon
4d5580eabb
Replace some spinners with skeleton loaders. 2020-03-11 16:06:11 +07:00
softsimon
0f41b0d933
Making block, transaction, and address view responsive.
closes #43
2020-03-10 14:46:12 +07:00
softsimon
b60d9cdfbc General responsive improvments. 2020-03-05 16:13:46 +07:00
softsimon
f71ac67d24 Responsive latest blocks and transactions tables. 2020-03-04 02:53:31 +07:00
softsimon
c1a8863861 Improvments to responsiveness 2020-03-03 17:47:01 +07:00
softsimon
669a5e429d Added fiat balance to address and made fiat balance into a component. 2020-03-02 17:29:00 +07:00
softsimon
d28730787a Removed comment. 2020-03-02 15:07:52 +07:00
softsimon
90c05ccb51 Infinite scroll replaces "load more" buttons. 2020-03-01 03:32:12 +07:00
softsimon
3d3cec2582
Optimized address transaction fetching. 2020-02-28 03:51:59 +07:00
softsimon
4879036216
Added first seen on mempool transactions. 2020-02-28 01:09:07 +07:00
softsimon
a122432c24 Address tracking and notification sounds. 2020-02-26 04:29:57 +07:00
Simon Lindh
3453e84889
Basic address tracking. 2020-02-26 03:31:45 +09:00
Simon Lindh
5186f81d56
Track transaction among mempool blocks. 2020-02-26 03:30:51 +09:00
Simon Lindh
ac95c09ea6
New base code for mempool blockchain explorerer 2020-02-26 03:19:26 +09:00