37 Commits

Author SHA1 Message Date
wiz
46ad261d84 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
26773c45da Allow searching for and viewing assets not in the asset registry.
fixes #111
2020-11-22 16:03:23 +07:00
wiz
7dbe7a7584 Add some color and styling to the Bitcoin ASM opcodes
Fixes #164
2020-11-21 05:29:50 +09:00
softsimon
bff1e1b97b Display P2PK instead of OP_RETURN
fixes #161
2020-11-16 16:21:37 +07:00
softsimon
75e770f50c Improved utxo script design.
fixes #46
2020-11-16 02:25:10 +07:00
softsimon
e946547c76 Adding prevout script. Fixed padding.
refs #46
2020-11-16 02:02:16 +07:00
softsimon
2b7ef0d287 Toggle display UTXO details and scripts for transactions
fixes #46
2020-11-15 17:58:38 +07:00
softsimon
856eef4606 Enhancement: "Load more" is now "Load all"
fixes #117
2020-09-29 15:05:52 +07:00
softsimon
d39b4a5c92 WIP: Bisq DAO support. Transactions list and details. 2020-07-03 23:45:19 +07:00
softsimon
68cff33ce2 Bugfix: Latestblock height didn't propagate in the template
Renaming Contributors to About
2020-06-21 14:55:16 +07:00
softsimon
2f89612075 Display input/output asset transfers
fixes #85
2020-06-12 16:17:52 +07:00
softsimon
e0a451eb05 Transition new blocks from the mempool onto the blockchain.
Chime on new blocks.
fixes #47
fixes #84
2020-06-10 23:52:14 +07:00
softsimon
c28e2786b9 Display coinbase and op return messages all the time. 2020-06-06 23:50:08 +07:00
softsimon
49138fe8e6 Mobile responsive fixes. 2020-05-28 15:50:19 +07:00
softsimon
b161f7351c Reveal coinbase scriptsig and op_return scriptpubkey ascii on hover. 2020-05-22 00:35:45 +07:00
softsimon
a4b5a34995 Display fees in transaction list 2020-05-21 01:55:46 +07:00
softsimon
9a2fb1fe44 Liquid Graph fix.
Key navigation fix.
Addresses overflow fix.
Firefox float fix.
2020-05-17 17:06:09 +07:00
softsimon
e565815dfd Removing halving event code. 2020-05-12 14:49:29 +07:00
softsimon
3d116d2d07 Graph x-axis date fix. 2020-05-10 17:44:19 +07:00
softsimon
7974cbbc83 Liquid and Testnet now accessable from the main site
fixes #35
2020-05-09 20:37:50 +07:00
softsimon
4932d6f706 Asset tracking.
Asset caching.
refs #37
2020-05-05 15:26:23 +07:00
softsimon
b7ac1c85ca Assets list. Native asset updates.
refs #37
2020-05-02 16:29:34 +07:00
softsimon
53653f96c8 Assets support WIP
refs #37
2020-05-02 12:36:35 +07:00
softsimon
3839edbaaa Basic Liquid Asset support. 2020-04-28 17:10:31 +07:00
softsimon
0b20ed808e - Switched the arrow colors for spent/unspent utxos
- Collapse dropdown on search (mobile)
2020-04-14 15:35:20 +07:00
softsimon
7ea20378e9 Format transaction count numbers. 2020-04-07 00:44:22 +07:00
softsimon
ceff9f3b13 Adding "load more" for large input/output sets. 2020-03-27 02:34:09 +07:00
softsimon
9aaa021d08 Mobile view design updates. 2020-03-25 02:55:26 +07:00
softsimon
39643ce0f8 Adding ETA, confirmed time, and other ui improvements to transaction page. 2020-03-23 04:07:31 +07:00
softsimon
2a2c255fb3 Fixes to responsive design. 2020-03-10 15:25:49 +07:00
softsimon
365ae04030 Making block, transaction, and address view responsive.
closes #43
2020-03-10 14:46:12 +07:00
softsimon
a8609cfb2c Infinite scroll fixes. 2020-03-01 16:33:18 +07:00
softsimon
ab9f39884f Infinite scroll replaces "load more" buttons. 2020-03-01 03:32:12 +07:00
softsimon
2422356704 Added first seen on mempool transactions. 2020-02-28 01:09:07 +07:00
softsimon
4efbb7be55 Confirmed address transactions fix. QR Code fix. 2020-02-26 21:11:43 +07:00
Simon Lindh
98391580b3 Refactor. API explanations. UX revamp. 2020-02-26 03:26:16 +09:00
Simon Lindh
43f41b8aab New base code for mempool blockchain explorerer 2020-02-26 03:19:26 +09:00