From 5104da500ecfd748a3be5a7f6d1b5c98308516bf Mon Sep 17 00:00:00 2001 From: softsimon Date: Thu, 4 Apr 2024 17:28:32 +0900 Subject: [PATCH] Adding i18n to mempool goggles --- .../block-filters.component.html | 12 +- .../src/app/dashboard/dashboard.component.ts | 8 +- frontend/src/app/shared/filters.utils.ts | 18 +- frontend/src/locale/messages.xlf | 171 +++++++++++++++--- 4 files changed, 165 insertions(+), 44 deletions(-) diff --git a/frontend/src/app/components/block-filters/block-filters.component.html b/frontend/src/app/components/block-filters/block-filters.component.html index 83988d5cc..21fd0959c 100644 --- a/frontend/src/app/components/block-filters/block-filters.component.html +++ b/frontend/src/app/components/block-filters/block-filters.component.html @@ -16,24 +16,24 @@
-
Match
+
Match
-
Gradient
+
Gradient
diff --git a/frontend/src/app/dashboard/dashboard.component.ts b/frontend/src/app/dashboard/dashboard.component.ts index 5f0eea62d..b877b5336 100644 --- a/frontend/src/app/dashboard/dashboard.component.ts +++ b/frontend/src/app/dashboard/dashboard.component.ts @@ -75,10 +75,10 @@ export class DashboardComponent implements OnInit, OnDestroy, AfterViewInit { goggleResolution = 82; goggleCycle: { index: number, name: string, mode: FilterMode, filters: string[], gradient: GradientMode }[] = [ - { index: 0, name: 'All', mode: 'and', filters: [], gradient: 'fee' }, - { index: 1, name: 'Consolidation', mode: 'and', filters: ['consolidation'], gradient: 'fee' }, - { index: 2, name: 'Coinjoin', mode: 'and', filters: ['coinjoin'], gradient: 'fee' }, - { index: 3, name: 'Data', mode: 'or', filters: ['inscription', 'fake_pubkey', 'op_return'], gradient: 'fee' }, + { index: 0, name: $localize`:@@dfc3c34e182ea73c5d784ff7c8135f087992dac1:All`, mode: 'and', filters: [], gradient: 'fee' }, + { index: 1, name: $localize`Consolidation`, mode: 'and', filters: ['consolidation'], gradient: 'fee' }, + { index: 2, name: $localize`Coinjoin`, mode: 'and', filters: ['coinjoin'], gradient: 'fee' }, + { index: 3, name: $localize`Data`, mode: 'or', filters: ['inscription', 'fake_pubkey', 'op_return'], gradient: 'fee' }, ]; goggleFlags = 0n; goggleMode: FilterMode = 'and'; diff --git a/frontend/src/app/shared/filters.utils.ts b/frontend/src/app/shared/filters.utils.ts index 5df6c4818..5ba3724ff 100644 --- a/frontend/src/app/shared/filters.utils.ts +++ b/frontend/src/app/shared/filters.utils.ts @@ -96,15 +96,15 @@ export const TransactionFilters: { [key: string]: Filter } = { cpfp_parent: { key: 'cpfp_parent', label: 'Paid for by child', flag: TransactionFlags.cpfp_parent, important: true, tooltip: true, txPage: false, }, cpfp_child: { key: 'cpfp_child', label: 'Pays for parent', flag: TransactionFlags.cpfp_child, important: true, tooltip: true, txPage: false, }, replacement: { key: 'replacement', label: 'Replacement', flag: TransactionFlags.replacement, important: true, tooltip: true, txPage: false, }, - acceleration: window?.['__env']?.ACCELERATOR ? { key: 'acceleration', label: 'Accelerated', flag: TransactionFlags.acceleration, important: false } : undefined, + acceleration: window?.['__env']?.ACCELERATOR ? { key: 'acceleration', label: $localize`:@@b484583f0ce10f3341ab36750d05271d9d22c9a1:Accelerated`, flag: TransactionFlags.acceleration, important: false } : undefined, /* data */ op_return: { key: 'op_return', label: 'OP_RETURN', flag: TransactionFlags.op_return, important: true, tooltip: true, txPage: true, }, fake_pubkey: { key: 'fake_pubkey', label: 'Fake pubkey', flag: TransactionFlags.fake_pubkey, tooltip: true, txPage: true, }, inscription: { key: 'inscription', label: 'Inscription', flag: TransactionFlags.inscription, important: true, tooltip: true, txPage: true, }, fake_scripthash: { key: 'fake_scripthash', label: 'Fake scripthash', flag: TransactionFlags.fake_scripthash, tooltip: true, txPage: true,}, /* heuristics */ - coinjoin: { key: 'coinjoin', label: 'Coinjoin', flag: TransactionFlags.coinjoin, important: true, tooltip: true, txPage: true, }, - consolidation: { key: 'consolidation', label: 'Consolidation', flag: TransactionFlags.consolidation, tooltip: true, txPage: true, }, + coinjoin: { key: 'coinjoin', label: $localize`Coinjoin`, flag: TransactionFlags.coinjoin, important: true, tooltip: true, txPage: true, }, + consolidation: { key: 'consolidation', label: $localize`Consolidation`, flag: TransactionFlags.consolidation, tooltip: true, txPage: true, }, batch_payout: { key: 'batch_payout', label: 'Batch payment', flag: TransactionFlags.batch_payout, tooltip: true, txPage: true, }, /* sighash */ sighash_all: { key: 'sighash_all', label: 'sighash_all', flag: TransactionFlags.sighash_all }, @@ -115,10 +115,10 @@ export const TransactionFilters: { [key: string]: Filter } = { }; export const FilterGroups: { label: string, filters: Filter[]}[] = [ - { label: 'Features', filters: ['rbf', 'no_rbf', 'v1', 'v2', 'v3', 'nonstandard'] }, - { label: 'Address Types', filters: ['p2pk', 'p2ms', 'p2pkh', 'p2sh', 'p2wpkh', 'p2wsh', 'p2tr'] }, - { label: 'Behavior', filters: ['cpfp_parent', 'cpfp_child', 'replacement', 'acceleration'] }, - { label: 'Data', filters: ['op_return', 'fake_pubkey', 'fake_scripthash', 'inscription'] }, - { label: 'Heuristics', filters: ['coinjoin', 'consolidation', 'batch_payout'] }, - { label: 'Sighash Flags', filters: ['sighash_all', 'sighash_none', 'sighash_single', 'sighash_default', 'sighash_acp'] }, + { label: $localize`:@@885666551418fd59011ceb09d5c481095940193b:Features`, filters: ['rbf', 'no_rbf', 'v1', 'v2', 'v3', 'nonstandard'] }, + { label: $localize`Address Types`, filters: ['p2pk', 'p2ms', 'p2pkh', 'p2sh', 'p2wpkh', 'p2wsh', 'p2tr'] }, + { label: $localize`Behavior`, filters: ['cpfp_parent', 'cpfp_child', 'replacement', 'acceleration'] }, + { label: $localize`Data`, filters: ['op_return', 'fake_pubkey', 'fake_scripthash', 'inscription'] }, + { label: $localize`Heuristics`, filters: ['coinjoin', 'consolidation', 'batch_payout'] }, + { label: $localize`Sighash Flags`, filters: ['sighash_all', 'sighash_none', 'sighash_single', 'sighash_default', 'sighash_acp'] }, ].map(group => ({ label: group.label, filters: group.filters.map(filter => TransactionFilters[filter] || null).filter(f => f != null) })); \ No newline at end of file diff --git a/frontend/src/locale/messages.xlf b/frontend/src/locale/messages.xlf index 609426587..51351b151 100644 --- a/frontend/src/locale/messages.xlf +++ b/frontend/src/locale/messages.xlf @@ -359,7 +359,7 @@ src/app/components/master-page/master-page.component.html - 77 + 96 @@ -888,7 +888,7 @@ src/app/components/master-page/master-page.component.html - 56 + 75 @@ -1386,6 +1386,10 @@ src/app/components/assets/assets-nav/assets-nav.component.html 13 + + src/app/components/block-filters/block-filters.component.html + 22 + src/app/components/pool-ranking/pool-ranking.component.html 72 @@ -1414,6 +1418,10 @@ src/app/components/statistics/statistics.component.html 60 + + src/app/dashboard/dashboard.component.ts + 78 + Search asset @@ -1599,10 +1607,54 @@ src/app/components/master-page/master-page.component.html - 57 + 76 beta + + Match + + src/app/components/block-filters/block-filters.component.html + 19 + + + src/app/components/block-overview-tooltip/block-overview-tooltip.component.html + 70 + + mempool-goggles.match + + + Any + + src/app/components/block-filters/block-filters.component.html + 25 + + mempool-goggles.any + + + Gradient + + src/app/components/block-filters/block-filters.component.html + 30 + + mempool-goggles.gradient + + + Default + + src/app/components/block-filters/block-filters.component.html + 33 + + mempool-goggles.default + + + Age + + src/app/components/block-filters/block-filters.component.html + 36 + + mempool-goggles.age + Block Health @@ -1931,14 +1983,6 @@ transaction.audit-status - - Match - - src/app/components/block-overview-tooltip/block-overview-tooltip.component.html - 70 - - transaction.audit.match - Removed @@ -2041,6 +2085,10 @@ src/app/components/transaction/transaction.component.html 583 + + src/app/shared/filters.utils.ts + 99 + transaction.audit.accelerated @@ -2765,7 +2813,7 @@ src/app/components/master-page/master-page.component.html - 68 + 87 src/app/components/pool-ranking/pool-ranking.component.html @@ -3528,11 +3576,11 @@ src/app/components/pool/pool.component.ts - 212 + 213 src/app/components/pool/pool.component.ts - 266 + 267 mining.hashrate @@ -3602,7 +3650,11 @@ src/app/components/master-page/master-page.component.html - 28 + 30 + + + src/app/components/master-page/master-page.component.html + 47 master-page.offline @@ -3614,7 +3666,11 @@ src/app/components/master-page/master-page.component.html - 29 + 31 + + + src/app/components/master-page/master-page.component.html + 48 master-page.reconnecting @@ -3626,7 +3682,7 @@ src/app/components/master-page/master-page.component.html - 42 + 61 master-page.layer2-networks-header @@ -3638,7 +3694,7 @@ src/app/components/master-page/master-page.component.html - 52 + 71 master-page.dashboard @@ -3650,7 +3706,7 @@ src/app/components/master-page/master-page.component.html - 71 + 90 src/app/components/statistics/statistics.component.ts @@ -3666,7 +3722,7 @@ src/app/components/master-page/master-page.component.html - 74 + 93 src/app/docs/docs/docs.component.html @@ -4017,7 +4073,7 @@ Mining Dashboard src/app/components/master-page/master-page.component.html - 61 + 80 src/app/components/mining-dashboard/mining-dashboard.component.ts @@ -4033,7 +4089,7 @@ Lightning Explorer src/app/components/master-page/master-page.component.html - 64 + 83 src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts @@ -4557,18 +4613,18 @@ Not enough data yet src/app/components/pool/pool.component.ts - 143 + 144 Pool Dominance src/app/components/pool/pool.component.ts - 223 + 224 src/app/components/pool/pool.component.ts - 277 + 278 mining.pool-dominance @@ -5282,6 +5338,10 @@ src/app/lightning/node/node.component.html 120 + + src/app/shared/filters.utils.ts + 118 + Transaction features transaction.features @@ -6008,6 +6068,39 @@ lightning.indexing-in-progress + + Consolidation + + src/app/dashboard/dashboard.component.ts + 79 + + + src/app/shared/filters.utils.ts + 107 + + + + Coinjoin + + src/app/dashboard/dashboard.component.ts + 80 + + + src/app/shared/filters.utils.ts + 106 + + + + Data + + src/app/dashboard/dashboard.component.ts + 81 + + + src/app/shared/filters.utils.ts + 121 + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, wallet issues, etc.For any such requests, you need to get in touch with the entity that helped make the transaction (wallet software, exchange company, etc). @@ -7961,6 +8054,34 @@ warning-testnet + + Address Types + + src/app/shared/filters.utils.ts + 119 + + + + Behavior + + src/app/shared/filters.utils.ts + 120 + + + + Heuristics + + src/app/shared/filters.utils.ts + 122 + + + + Sighash Flags + + src/app/shared/filters.utils.ts + 123 + + year