Compare commits
88
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
43f50b2c89 | ||
|
|
4169e1053f | ||
|
|
a46e779d0c | ||
|
|
51102004bb | ||
|
|
08e9142d57 | ||
|
|
b7c4cd43fc | ||
|
|
08a35b85a8 | ||
|
|
51a28b2e01 | ||
|
|
966adf5963 | ||
|
|
ae7b17c4fd | ||
|
|
5b4bc9fe19 | ||
|
|
89eb7ec90b | ||
|
|
a646c5f22f | ||
|
|
c345f2164b | ||
|
|
9791ee018d | ||
|
|
7c83b85e3e | ||
|
|
63942af720 | ||
|
|
4da5910e0b | ||
|
|
025788e78c | ||
|
|
88a9524064 | ||
|
|
c216e849e6 | ||
|
|
c86768edc9 | ||
|
|
4283d30ce0 | ||
|
|
e2eeaebfc7 | ||
|
|
90d87aaaca | ||
|
|
b2e9275ad9 | ||
|
|
181e816c1a | ||
|
|
758ca4e93a | ||
|
|
a33f915c7a | ||
|
|
75c6d006ff | ||
|
|
1fe983a299 | ||
|
|
cd8e3e2604 | ||
|
|
dfc4309d9e | ||
|
|
0a70273456 | ||
|
|
62c9a88235 | ||
|
|
851e07b50b | ||
|
|
e1bbec074b | ||
|
|
9fcafeeeb0 | ||
|
|
e986cfd30b | ||
|
|
2584a1f2b0 | ||
|
|
1c92394563 | ||
|
|
36398ca57a | ||
|
|
6b978f9262 | ||
|
|
12cf130c00 | ||
|
|
ba933a81c3 | ||
|
|
7de7081d67 | ||
|
|
6b933c202f | ||
|
|
f1525b7df5 | ||
|
|
62c4af1a0c | ||
|
|
4ac98bc483 | ||
|
|
ed07daebca | ||
|
|
f8bbf7783c | ||
|
|
fac2fab16a | ||
|
|
76de4e34d8 | ||
|
|
6109f25aa9 | ||
|
|
86303175e9 | ||
|
|
a670131f40 | ||
|
|
c5ce3167f3 | ||
|
|
9913254a5c | ||
|
|
fbb4ba39c2 | ||
|
|
22bf0fe928 | ||
|
|
3b30765070 | ||
|
|
63fde7d0b6 | ||
|
|
cf338970bf | ||
|
|
08e046ea2a | ||
|
|
5697710c23 | ||
|
|
b9e050e24b | ||
|
|
ff819673e5 | ||
|
|
2e2801a4ab | ||
|
|
f52b17ca7a | ||
|
|
3d25235705 | ||
|
|
2cbc6783a4 | ||
|
|
406bf5d3b7 | ||
|
|
f5bf883de9 | ||
|
|
c06cade1ca | ||
|
|
c23a872887 | ||
|
|
0b449347c1 | ||
|
|
d2da81e039 | ||
|
|
66d88abdc5 | ||
|
|
85c9c79699 | ||
|
|
652100f774 | ||
|
|
0f04f751e1 | ||
|
|
643402c046 | ||
|
|
3103ef15e5 | ||
|
|
f57436f511 | ||
|
|
1eb425897e | ||
|
|
9d0bfdfa88 | ||
|
|
d630e7217a |
No files matched your search
@@ -80,7 +80,13 @@ class ChannelsApi {
|
||||
|
||||
public async $searchChannelsById(search: string): Promise<any[]> {
|
||||
try {
|
||||
const searchStripped = search.replace(/[^0-9x]/g, '') + '%';
|
||||
// restrict search to valid id/short_id prefix formats
|
||||
let searchStripped = search.match(/[0-9]+[0-9x]*/)?.[0] || '';
|
||||
if (!searchStripped.length) {
|
||||
return [];
|
||||
}
|
||||
// add wildcard to search by prefix
|
||||
searchStripped += '%';
|
||||
const query = `SELECT id, short_id, capacity, status FROM channels WHERE id LIKE ? OR short_id LIKE ? LIMIT 10`;
|
||||
const [rows]: any = await DB.query(query, [searchStripped, searchStripped]);
|
||||
return rows;
|
||||
|
||||
@@ -15,11 +15,12 @@ class FeeApi {
|
||||
constructor() { }
|
||||
|
||||
defaultFee = Common.isLiquid() ? 0.1 : 1;
|
||||
minimumIncrement = Common.isLiquid() ? 0.1 : 1;
|
||||
|
||||
public getRecommendedFee(): RecommendedFees {
|
||||
const pBlocks = projectedBlocks.getMempoolBlocks();
|
||||
const mPool = mempool.getMempoolInfo();
|
||||
const minimumFee = Math.ceil(mPool.mempoolminfee * 100000);
|
||||
const minimumFee = this.roundUpToNearest(mPool.mempoolminfee * 100000, this.minimumIncrement);
|
||||
const defaultMinFee = Math.max(minimumFee, this.defaultFee);
|
||||
|
||||
if (!pBlocks.length) {
|
||||
@@ -58,7 +59,11 @@ class FeeApi {
|
||||
const multiplier = (pBlock.blockVSize - 500000) / 500000;
|
||||
return Math.max(Math.round(useFee * multiplier), this.defaultFee);
|
||||
}
|
||||
return Math.ceil(useFee);
|
||||
return this.roundUpToNearest(useFee, this.minimumIncrement);
|
||||
}
|
||||
|
||||
private roundUpToNearest(value: number, nearest: number): number {
|
||||
return Math.ceil(value / nearest) * nearest;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import loadingIndicators from './loading-indicators';
|
||||
import bitcoinClient from './bitcoin/bitcoin-client';
|
||||
import bitcoinSecondClient from './bitcoin/bitcoin-second-client';
|
||||
import rbfCache from './rbf-cache';
|
||||
import accelerationApi, { Acceleration } from './services/acceleration';
|
||||
import { Acceleration } from './services/acceleration';
|
||||
import redisCache from './redis-cache';
|
||||
|
||||
class Mempool {
|
||||
@@ -18,7 +18,7 @@ class Mempool {
|
||||
private mempoolCache: { [txId: string]: MempoolTransactionExtended } = {};
|
||||
private spendMap = new Map<string, MempoolTransactionExtended>();
|
||||
private mempoolInfo: IBitcoinApi.MempoolInfo = { loaded: false, size: 0, bytes: 0, usage: 0, total_fee: 0,
|
||||
maxmempool: 300000000, mempoolminfee: 0.00001000, minrelaytxfee: 0.00001000 };
|
||||
maxmempool: 300000000, mempoolminfee: Common.isLiquid() ? 0.00000100 : 0.00001000, minrelaytxfee: Common.isLiquid() ? 0.00000100 : 0.00001000 };
|
||||
private mempoolChangedCallback: ((newMempool: {[txId: string]: MempoolTransactionExtended; }, newTransactions: MempoolTransactionExtended[],
|
||||
deletedTransactions: MempoolTransactionExtended[], accelerationDelta: string[]) => void) | undefined;
|
||||
private $asyncMempoolChangedCallback: ((newMempool: {[txId: string]: MempoolTransactionExtended; }, mempoolSize: number, newTransactions: MempoolTransactionExtended[],
|
||||
@@ -185,7 +185,7 @@ class Mempool {
|
||||
return txTimes;
|
||||
}
|
||||
|
||||
public async $updateMempool(transactions: string[], pollRate: number): Promise<void> {
|
||||
public async $updateMempool(transactions: string[], accelerations: Acceleration[] | null, pollRate: number): Promise<void> {
|
||||
logger.debug(`Updating mempool...`);
|
||||
|
||||
// warn if this run stalls the main loop for more than 2 minutes
|
||||
@@ -330,7 +330,7 @@ class Mempool {
|
||||
const newTransactionsStripped = newTransactions.map((tx) => Common.stripTransaction(tx));
|
||||
this.latestTransactions = newTransactionsStripped.concat(this.latestTransactions).slice(0, 6);
|
||||
|
||||
const accelerationDelta = await this.$updateAccelerations();
|
||||
const accelerationDelta = accelerations != null ? await this.$updateAccelerations(accelerations) : [];
|
||||
if (accelerationDelta.length) {
|
||||
hasChange = true;
|
||||
}
|
||||
@@ -370,14 +370,12 @@ class Mempool {
|
||||
return this.accelerations;
|
||||
}
|
||||
|
||||
public async $updateAccelerations(): Promise<string[]> {
|
||||
public $updateAccelerations(newAccelerations: Acceleration[]): string[] {
|
||||
if (!config.MEMPOOL_SERVICES.ACCELERATIONS) {
|
||||
return [];
|
||||
}
|
||||
|
||||
try {
|
||||
const newAccelerations = await accelerationApi.$fetchAccelerations();
|
||||
|
||||
const changed: string[] = [];
|
||||
|
||||
const newAccelerationMap: { [txid: string]: Acceleration } = {};
|
||||
|
||||
@@ -15,6 +15,13 @@ import bitcoinApi from '../bitcoin/bitcoin-api-factory';
|
||||
import { IEsploraApi } from '../bitcoin/esplora-api.interface';
|
||||
import database from '../../database';
|
||||
|
||||
interface DifficultyBlock {
|
||||
timestamp: number,
|
||||
height: number,
|
||||
bits: number,
|
||||
difficulty: number,
|
||||
}
|
||||
|
||||
class Mining {
|
||||
private blocksPriceIndexingRunning = false;
|
||||
public lastHashrateIndexingDate: number | null = null;
|
||||
@@ -421,6 +428,7 @@ class Mining {
|
||||
indexedHeights[height] = true;
|
||||
}
|
||||
|
||||
// gets {time, height, difficulty, bits} of blocks in ascending order of height
|
||||
const blocks: any = await BlocksRepository.$getBlocksDifficulty();
|
||||
const genesisBlock: IEsploraApi.Block = await bitcoinApi.$getBlock(await bitcoinApi.$getBlockHash(0));
|
||||
let currentDifficulty = genesisBlock.difficulty;
|
||||
@@ -436,41 +444,45 @@ class Mining {
|
||||
});
|
||||
}
|
||||
|
||||
const oldestConsecutiveBlock = await BlocksRepository.$getOldestConsecutiveBlock();
|
||||
if (config.MEMPOOL.INDEXING_BLOCKS_AMOUNT !== -1) {
|
||||
currentBits = oldestConsecutiveBlock.bits;
|
||||
currentDifficulty = oldestConsecutiveBlock.difficulty;
|
||||
if (!blocks?.length) {
|
||||
// no blocks in database yet
|
||||
return;
|
||||
}
|
||||
|
||||
const oldestConsecutiveBlock = this.getOldestConsecutiveBlock(blocks);
|
||||
|
||||
currentBits = oldestConsecutiveBlock.bits;
|
||||
currentDifficulty = oldestConsecutiveBlock.difficulty;
|
||||
|
||||
let totalBlockChecked = 0;
|
||||
let timer = new Date().getTime() / 1000;
|
||||
|
||||
for (const block of blocks) {
|
||||
// skip until the first block after the oldest consecutive block
|
||||
if (block.height <= oldestConsecutiveBlock.height) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// difficulty has changed between two consecutive blocks!
|
||||
if (block.bits !== currentBits) {
|
||||
if (indexedHeights[block.height] === true) { // Already indexed
|
||||
if (block.height >= oldestConsecutiveBlock.height) {
|
||||
currentDifficulty = block.difficulty;
|
||||
currentBits = block.bits;
|
||||
}
|
||||
continue;
|
||||
// skip if already indexed
|
||||
if (indexedHeights[block.height] !== true) {
|
||||
let adjustment = block.difficulty / currentDifficulty;
|
||||
adjustment = Math.round(adjustment * 1000000) / 1000000; // Remove float point noise
|
||||
|
||||
await DifficultyAdjustmentsRepository.$saveAdjustments({
|
||||
time: block.time,
|
||||
height: block.height,
|
||||
difficulty: block.difficulty,
|
||||
adjustment: adjustment,
|
||||
});
|
||||
|
||||
totalIndexed++;
|
||||
}
|
||||
|
||||
let adjustment = block.difficulty / currentDifficulty;
|
||||
adjustment = Math.round(adjustment * 1000000) / 1000000; // Remove float point noise
|
||||
|
||||
await DifficultyAdjustmentsRepository.$saveAdjustments({
|
||||
time: block.time,
|
||||
height: block.height,
|
||||
difficulty: block.difficulty,
|
||||
adjustment: adjustment,
|
||||
});
|
||||
|
||||
totalIndexed++;
|
||||
if (block.height >= oldestConsecutiveBlock.height) {
|
||||
currentDifficulty = block.difficulty;
|
||||
currentBits = block.bits;
|
||||
}
|
||||
}
|
||||
// update the current difficulty
|
||||
currentDifficulty = block.difficulty;
|
||||
currentBits = block.bits;
|
||||
}
|
||||
|
||||
totalBlockChecked++;
|
||||
const elapsedSeconds = Math.max(1, Math.round((new Date().getTime() / 1000) - timer));
|
||||
@@ -633,6 +645,17 @@ class Mining {
|
||||
default: return 86400 * scale;
|
||||
}
|
||||
}
|
||||
|
||||
// Finds the oldest block in a consecutive chain back from the tip
|
||||
// assumes `blocks` is sorted in ascending height order
|
||||
private getOldestConsecutiveBlock(blocks: DifficultyBlock[]): DifficultyBlock {
|
||||
for (let i = blocks.length - 1; i > 0; i--) {
|
||||
if ((blocks[i].height - blocks[i - 1].height) > 1) {
|
||||
return blocks[i];
|
||||
}
|
||||
}
|
||||
return blocks[0];
|
||||
}
|
||||
}
|
||||
|
||||
export default new Mining();
|
||||
@@ -1,6 +1,7 @@
|
||||
import { query } from '../../utils/axios-query';
|
||||
import config from '../../config';
|
||||
import logger from '../../logger';
|
||||
import { BlockExtended, PoolTag } from '../../mempool.interfaces';
|
||||
import axios from 'axios';
|
||||
|
||||
export interface Acceleration {
|
||||
txid: string,
|
||||
@@ -9,10 +10,15 @@ export interface Acceleration {
|
||||
}
|
||||
|
||||
class AccelerationApi {
|
||||
public async $fetchAccelerations(): Promise<Acceleration[]> {
|
||||
public async $fetchAccelerations(): Promise<Acceleration[] | null> {
|
||||
if (config.MEMPOOL_SERVICES.ACCELERATIONS) {
|
||||
const response = await query(`${config.MEMPOOL_SERVICES.API}/accelerator/accelerations`);
|
||||
return (response as Acceleration[]) || [];
|
||||
try {
|
||||
const response = await axios.get(`${config.MEMPOOL_SERVICES.API}/accelerator/accelerations`, { responseType: 'json', timeout: 10000 });
|
||||
return response.data as Acceleration[];
|
||||
} catch (e) {
|
||||
logger.warn('Failed to fetch current accelerations from the mempool services backend: ' + (e instanceof Error ? e.message : e));
|
||||
return null;
|
||||
}
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
|
||||
@@ -94,9 +94,13 @@ class WebsocketHandler {
|
||||
throw new Error('WebSocket.Server is not set');
|
||||
}
|
||||
|
||||
this.wss.on('connection', (client: WebSocket) => {
|
||||
this.wss.on('connection', (client: WebSocket, req) => {
|
||||
this.numConnected++;
|
||||
client.on('error', logger.info);
|
||||
client['remoteAddress'] = req.headers['x-forwarded-for'] || req.socket?.remoteAddress || 'unknown';
|
||||
client.on('error', (e) => {
|
||||
logger.info(`websocket client error from ${client['remoteAddress']}: ` + (e instanceof Error ? e.message : e));
|
||||
client.close();
|
||||
});
|
||||
client.on('close', () => {
|
||||
this.numDisconnected++;
|
||||
});
|
||||
@@ -282,7 +286,8 @@ class WebsocketHandler {
|
||||
client.send(serializedResponse);
|
||||
}
|
||||
} catch (e) {
|
||||
logger.debug('Error parsing websocket message: ' + (e instanceof Error ? e.message : e));
|
||||
logger.debug(`Error parsing websocket message from ${client['remoteAddress']}: ` + (e instanceof Error ? e.message : e));
|
||||
client.close();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -43,6 +43,7 @@ import { AxiosError } from 'axios';
|
||||
import v8 from 'v8';
|
||||
import { formatBytes, getBytesUnit } from './utils/format';
|
||||
import redisCache from './api/redis-cache';
|
||||
import accelerationApi from './api/services/acceleration';
|
||||
|
||||
class Server {
|
||||
private wss: WebSocket.Server | undefined;
|
||||
@@ -205,10 +206,11 @@ class Server {
|
||||
}
|
||||
}
|
||||
const newMempool = await bitcoinApi.$getRawMempool();
|
||||
const newAccelerations = await accelerationApi.$fetchAccelerations();
|
||||
const numHandledBlocks = await blocks.$updateBlocks();
|
||||
const pollRate = config.MEMPOOL.POLL_RATE_MS * (indexer.indexerIsRunning() ? 10 : 1);
|
||||
if (numHandledBlocks === 0) {
|
||||
await memPool.$updateMempool(newMempool, pollRate);
|
||||
await memPool.$updateMempool(newMempool, newAccelerations, pollRate);
|
||||
}
|
||||
indexer.$run();
|
||||
priceUpdater.$run();
|
||||
|
||||
@@ -541,7 +541,7 @@ class BlocksRepository {
|
||||
*/
|
||||
public async $getBlocksDifficulty(): Promise<object[]> {
|
||||
try {
|
||||
const [rows]: any[] = await DB.query(`SELECT UNIX_TIMESTAMP(blockTimestamp) as time, height, difficulty, bits FROM blocks`);
|
||||
const [rows]: any[] = await DB.query(`SELECT UNIX_TIMESTAMP(blockTimestamp) as time, height, difficulty, bits FROM blocks ORDER BY height ASC`);
|
||||
return rows;
|
||||
} catch (e) {
|
||||
logger.err('Cannot get blocks difficulty list from the db. Reason: ' + (e instanceof Error ? e.message : e));
|
||||
|
||||
Generated
+823
-485
File diff suppressed because it is too large.
Load diff
@@ -74,9 +74,9 @@
|
||||
"@angular/platform-server": "^16.2.2",
|
||||
"@angular/router": "^16.2.2",
|
||||
"@fortawesome/angular-fontawesome": "~0.13.0",
|
||||
"@fortawesome/fontawesome-common-types": "~6.4.0",
|
||||
"@fortawesome/fontawesome-svg-core": "~6.4.0",
|
||||
"@fortawesome/free-solid-svg-icons": "~6.4.0",
|
||||
"@fortawesome/fontawesome-common-types": "~6.5.1",
|
||||
"@fortawesome/fontawesome-svg-core": "~6.5.1",
|
||||
"@fortawesome/free-solid-svg-icons": "~6.5.1",
|
||||
"@mempool/mempool.js": "2.3.0",
|
||||
"@ng-bootstrap/ng-bootstrap": "^15.1.0",
|
||||
"@types/qrcode": "~1.5.0",
|
||||
@@ -90,7 +90,7 @@
|
||||
"ngx-infinite-scroll": "^16.0.0",
|
||||
"qrcode": "1.5.1",
|
||||
"rxjs": "~7.8.1",
|
||||
"tinyify": "^4.0.0",
|
||||
"tinyify": "^3.1.0",
|
||||
"tlite": "^0.1.9",
|
||||
"tslib": "~2.6.0",
|
||||
"zone.js": "~0.13.1"
|
||||
|
||||
@@ -225,7 +225,7 @@ const witnessSize = (vin: Vin) => vin.witness ? vin.witness.reduce((S, w) => S +
|
||||
const scriptSigSize = (vin: Vin) => vin.scriptsig ? vin.scriptsig.length / 2 : 0;
|
||||
|
||||
// Power of ten wrapper
|
||||
export function selectPowerOfTen(val: number): { divider: number, unit: string } {
|
||||
export function selectPowerOfTen(val: number, multiplier = 1): { divider: number, unit: string } {
|
||||
const powerOfTen = {
|
||||
exa: Math.pow(10, 18),
|
||||
peta: Math.pow(10, 15),
|
||||
@@ -236,17 +236,17 @@ export function selectPowerOfTen(val: number): { divider: number, unit: string }
|
||||
};
|
||||
|
||||
let selectedPowerOfTen: { divider: number, unit: string };
|
||||
if (val < powerOfTen.kilo) {
|
||||
if (val < powerOfTen.kilo * multiplier) {
|
||||
selectedPowerOfTen = { divider: 1, unit: '' }; // no scaling
|
||||
} else if (val < powerOfTen.mega) {
|
||||
} else if (val < powerOfTen.mega * multiplier) {
|
||||
selectedPowerOfTen = { divider: powerOfTen.kilo, unit: 'k' };
|
||||
} else if (val < powerOfTen.giga) {
|
||||
} else if (val < powerOfTen.giga * multiplier) {
|
||||
selectedPowerOfTen = { divider: powerOfTen.mega, unit: 'M' };
|
||||
} else if (val < powerOfTen.tera) {
|
||||
} else if (val < powerOfTen.tera * multiplier) {
|
||||
selectedPowerOfTen = { divider: powerOfTen.giga, unit: 'G' };
|
||||
} else if (val < powerOfTen.peta) {
|
||||
} else if (val < powerOfTen.peta * multiplier) {
|
||||
selectedPowerOfTen = { divider: powerOfTen.tera, unit: 'T' };
|
||||
} else if (val < powerOfTen.exa) {
|
||||
} else if (val < powerOfTen.exa * multiplier) {
|
||||
selectedPowerOfTen = { divider: powerOfTen.peta, unit: 'P' };
|
||||
} else {
|
||||
selectedPowerOfTen = { divider: powerOfTen.exa, unit: 'E' };
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<div id="become-sponsor-container">
|
||||
<div class="become-sponsor community">
|
||||
<p style="font-weight: 700; font-size: 18px;">If you're an individual...</p>
|
||||
<a href="https://mempool.space/sponsor" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.community-sponsor-button" (click)="onSponsorClick($event)">Become a Community Sponsor</a>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Exclusive swag</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Your avatar on the About page</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> And more coming soon :)</p>
|
||||
</div>
|
||||
<div class="become-sponsor enterprise">
|
||||
<p style="font-weight: 700; font-size: 18px;">If you're a business...</p>
|
||||
<a href="https://mempool.space/enterprise" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.enterprise-sponsor-button" (click)="onEnterpriseClick($event)">Become an Enterprise Sponsor</a>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Increased API limits</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Co-branded instance</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> 99% service-level agreement</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,45 @@
|
||||
#become-sponsor-container {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 20px;
|
||||
margin: 68px auto;
|
||||
}
|
||||
|
||||
.become-sponsor {
|
||||
background-color: #1d1f31;
|
||||
border-radius: 16px;
|
||||
padding: 12px 20px;
|
||||
width: 400px;
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.become-sponsor a {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#become-sponsor-container .btn {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
#become-sponsor-container .ng-fa-icon {
|
||||
color: #2ecc71;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#become-sponsor-container .sponsor-feature {
|
||||
text-align: left;
|
||||
width: 250px;
|
||||
margin: 12px auto;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
@media (max-width: 992px) {
|
||||
|
||||
#become-sponsor-container {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { EnterpriseService } from '../../services/enterprise.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-about-sponsors',
|
||||
templateUrl: './about-sponsors.component.html',
|
||||
styleUrls: ['./about-sponsors.component.scss'],
|
||||
})
|
||||
export class AboutSponsorsComponent {
|
||||
constructor(private enterpriseService: EnterpriseService) {
|
||||
}
|
||||
|
||||
onSponsorClick(e): boolean {
|
||||
this.enterpriseService.goal(5);
|
||||
return true;
|
||||
}
|
||||
|
||||
onEnterpriseClick(e): boolean {
|
||||
this.enterpriseService.goal(6);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -33,22 +33,7 @@
|
||||
</video>
|
||||
|
||||
<ng-container *ngIf="officialMempoolSpace">
|
||||
<div id="become-sponsor-container">
|
||||
<div class="become-sponsor community">
|
||||
<p style="font-weight: 700; font-size: 18px;">If you're an individual...</p>
|
||||
<a href="https://mempool.space/sponsor" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.community-sponsor-button">Become a Community Sponsor</a>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Exclusive swag</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Your avatar on the About page</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> And more coming soon :)</p>
|
||||
</div>
|
||||
<div class="become-sponsor enterprise">
|
||||
<p style="font-weight: 700; font-size: 18px;">If you're a business...</p>
|
||||
<a href="https://mempool.space/enterprise" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.enterprise-sponsor-button">Become an Enterprise Sponsor</a>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Increased API limits</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Co-branded instance</p>
|
||||
<p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> 99% service-level agreement</p>
|
||||
</div>
|
||||
</div>
|
||||
<app-about-sponsors></app-about-sponsors>
|
||||
</ng-container>
|
||||
|
||||
<div class="enterprise-sponsor" id="enterprise-sponsors">
|
||||
@@ -197,7 +182,7 @@
|
||||
</div>
|
||||
|
||||
<ng-container *ngIf="officialMempoolSpace">
|
||||
<div *ngIf="profiles$ | async as profiles" id="community-sponsors">
|
||||
<div *ngIf="profiles$ | async as profiles" id="community-sponsors-anchor">
|
||||
<div class="community-sponsor" style="margin-bottom: 68px" *ngIf="profiles.whales.length > 0">
|
||||
<h3 i18n="about.sponsors.withHeart">Whale Sponsors</h3>
|
||||
<div class="wrapper">
|
||||
|
||||
@@ -246,49 +246,3 @@
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
}
|
||||
|
||||
#become-sponsor-container {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 20px;
|
||||
margin: 68px auto;
|
||||
}
|
||||
|
||||
.become-sponsor {
|
||||
background-color: #1d1f31;
|
||||
border-radius: 16px;
|
||||
padding: 12px 20px;
|
||||
width: 400px;
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.become-sponsor a {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#become-sponsor-container .btn {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
#become-sponsor-container .ng-fa-icon {
|
||||
color: #2ecc71;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#become-sponsor-container .sponsor-feature {
|
||||
text-align: left;
|
||||
width: 250px;
|
||||
margin: 12px auto;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
@media (max-width: 992px) {
|
||||
|
||||
#become-sponsor-container {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -9,6 +9,7 @@ import { Router, ActivatedRoute } from '@angular/router';
|
||||
import { map, share, tap } from 'rxjs/operators';
|
||||
import { ITranslators } from '../../interfaces/node-api.interface';
|
||||
import { DOCUMENT } from '@angular/common';
|
||||
import { EnterpriseService } from '../../services/enterprise.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-about',
|
||||
@@ -33,6 +34,7 @@ export class AboutComponent implements OnInit {
|
||||
private websocketService: WebsocketService,
|
||||
private seoService: SeoService,
|
||||
public stateService: StateService,
|
||||
private enterpriseService: EnterpriseService,
|
||||
private apiService: ApiService,
|
||||
private router: Router,
|
||||
private route: ActivatedRoute,
|
||||
@@ -47,8 +49,13 @@ export class AboutComponent implements OnInit {
|
||||
this.websocketService.want(['blocks']);
|
||||
|
||||
this.profiles$ = this.apiService.getAboutPageProfiles$().pipe(
|
||||
tap(() => {
|
||||
this.goToAnchor()
|
||||
tap((profiles: any) => {
|
||||
const scrollToSponsors = this.route.snapshot.fragment === 'community-sponsors';
|
||||
if (scrollToSponsors && !profiles?.whales?.length && !profiles?.chads?.length) {
|
||||
return;
|
||||
} else {
|
||||
this.goToAnchor(scrollToSponsors)
|
||||
}
|
||||
}),
|
||||
share(),
|
||||
)
|
||||
@@ -83,11 +90,19 @@ export class AboutComponent implements OnInit {
|
||||
this.goToAnchor();
|
||||
}
|
||||
|
||||
goToAnchor() {
|
||||
goToAnchor(scrollToSponsor = false) {
|
||||
if (!scrollToSponsor) {
|
||||
return;
|
||||
}
|
||||
setTimeout(() => {
|
||||
if (this.route.snapshot.fragment) {
|
||||
if (this.document.getElementById(this.route.snapshot.fragment)) {
|
||||
this.document.getElementById(this.route.snapshot.fragment).scrollIntoView({behavior: 'smooth'});
|
||||
const el = scrollToSponsor ? this.document.getElementById('community-sponsors-anchor') : this.document.getElementById(this.route.snapshot.fragment);
|
||||
if (el) {
|
||||
if (scrollToSponsor) {
|
||||
el.scrollIntoView({behavior: 'smooth', block: 'center', inline: 'center'});
|
||||
} else {
|
||||
el.scrollIntoView({behavior: 'smooth'});
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 1);
|
||||
@@ -108,4 +123,14 @@ export class AboutComponent implements OnInit {
|
||||
unmutePromoVideo(): void {
|
||||
this.promoVideo.nativeElement.muted = false;
|
||||
}
|
||||
|
||||
onSponsorClick(e): boolean {
|
||||
this.enterpriseService.goal(5);
|
||||
return true;
|
||||
}
|
||||
|
||||
onEnterpriseClick(e): boolean {
|
||||
this.enterpriseService.goal(6);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@ import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { Routes, RouterModule } from '@angular/router';
|
||||
import { AboutComponent } from './about.component';
|
||||
import { AboutSponsorsComponent } from './about-sponsors.component';
|
||||
import { SharedModule } from '../../shared/shared.module';
|
||||
|
||||
const routes: Routes = [
|
||||
@@ -29,6 +30,10 @@ export class AboutRoutingModule { }
|
||||
],
|
||||
declarations: [
|
||||
AboutComponent,
|
||||
AboutSponsorsComponent,
|
||||
],
|
||||
exports: [
|
||||
AboutSponsorsComponent,
|
||||
]
|
||||
})
|
||||
export class AboutModule { }
|
||||
|
||||
@@ -27,6 +27,11 @@
|
||||
|
||||
<ng-container *ngIf="estimate">
|
||||
<div [class]="{estimateDisabled: error}">
|
||||
|
||||
<div *ngIf="user && !estimate.hasAccess">
|
||||
<div class="alert alert-mempool">You are currently on the waitlist</div>
|
||||
</div>
|
||||
|
||||
<h5>Your transaction</h5>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
@@ -230,7 +235,7 @@
|
||||
|
||||
<div class="row mb-3" *ngIf="isLoggedIn()">
|
||||
<div class="col">
|
||||
<div class="d-flex justify-content-end">
|
||||
<div class="d-flex justify-content-end" *ngIf="user && estimate.hasAccess">
|
||||
<button class="btn btn-sm btn-primary btn-success" style="width: 150px" (click)="accelerate()">Accelerate</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -56,6 +56,7 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges
|
||||
userBid = 0;
|
||||
selectFeeRateIndex = 1;
|
||||
isMobile: boolean = window.innerWidth <= 767.98;
|
||||
user: any = undefined;
|
||||
|
||||
maxRateOptions: RateOption[] = [];
|
||||
|
||||
@@ -78,6 +79,8 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.user = this.storageService.getAuth()?.user ?? null;
|
||||
|
||||
this.estimateSubscription = this.apiService.estimate$(this.tx.txid).pipe(
|
||||
tap((response) => {
|
||||
if (response.status === 204) {
|
||||
@@ -93,7 +96,7 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges
|
||||
this.estimateSubscription.unsubscribe();
|
||||
}
|
||||
|
||||
if (this.estimate.userBalance <= 0) {
|
||||
if (this.estimate.hasAccess === true && this.estimate.userBalance <= 0) {
|
||||
if (this.isLoggedIn()) {
|
||||
this.error = `not_enough_balance`;
|
||||
this.scrollToPreviewWithTimeout('mempoolError', 'center');
|
||||
|
||||
@@ -69,7 +69,7 @@ export class AddressPreviewComponent implements OnInit, OnDestroy {
|
||||
this.addressString = this.addressString.toLowerCase();
|
||||
}
|
||||
this.seoService.setTitle($localize`:@@address.component.browser-title:Address: ${this.addressString}:INTERPOLATION:`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.bitcoin.address:See mempool transactions, confirmed transactions, balance, and more for ${this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'}${seoDescriptionNetwork(this.stateService.network)} address ${this.addressString}:INTERPOLATION:.`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.bitcoin.address:See mempool transactions, confirmed transactions, balance, and more for ${this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'} ${seoDescriptionNetwork(this.stateService.network)} address ${this.addressString}:INTERPOLATION:.`);
|
||||
|
||||
return (this.addressString.match(/04[a-fA-F0-9]{128}|(02|03)[a-fA-F0-9]{64}/)
|
||||
? this.electrsApiService.getPubKeyAddress$(this.addressString)
|
||||
|
||||
+5
-1
@@ -43,6 +43,10 @@
|
||||
<td class="td-width" i18n="transaction.weight|Transaction Weight">Weight</td>
|
||||
<td [innerHTML]="'‎' + ((vsize * 4) | wuBytes: 2)"></td>
|
||||
</tr>
|
||||
<tr *ngIf="!auditEnabled && (this.acceleration || (tx && tx.acc))">
|
||||
<td></td>
|
||||
<td><span class="badge badge-accelerated" i18n="transaction.audit.accelerated">Accelerated</span></td>
|
||||
</tr>
|
||||
<tr *ngIf="auditEnabled && tx && tx.status && tx.status.length">
|
||||
<td class="td-width" i18n="transaction.audit-status">Audit status</td>
|
||||
<ng-container [ngSwitch]="tx?.status">
|
||||
@@ -55,7 +59,7 @@
|
||||
<td *ngSwitchCase="'added'"><span class="badge badge-warning" i18n="transaction.audit.added">Added</span></td>
|
||||
<td *ngSwitchCase="'selected'"><span class="badge badge-warning" i18n="transaction.audit.marginal">Marginal fee rate</span></td>
|
||||
<td *ngSwitchCase="'rbf'"><span class="badge badge-warning" i18n="transaction.audit.conflicting">Conflicting</span></td>
|
||||
<td *ngSwitchCase="'accelerated'"><span class="badge badge-success" i18n="transaction.audit.accelerated">Accelerated</span></td>
|
||||
<td *ngSwitchCase="'accelerated'"><span class="badge badge-accelerated" i18n="transaction.audit.accelerated">Accelerated</span></td>
|
||||
</ng-container>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
+13
@@ -19,4 +19,17 @@
|
||||
|
||||
.td-width {
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.badge.badge-accelerated {
|
||||
background-color: #653b9c;
|
||||
box-shadow: #ad7de57f 0px 0px 12px -2px;
|
||||
color: white;
|
||||
animation: acceleratePulse 1s infinite;
|
||||
}
|
||||
|
||||
@keyframes acceleratePulse {
|
||||
0% { background-color: #653b9c; box-shadow: #ad7de57f 0px 0px 12px -2px; }
|
||||
50% { background-color: #8457bb; box-shadow: #ad7de5 0px 0px 18px -2px;}
|
||||
100% { background-color: #653b9c; box-shadow: #ad7de57f 0px 0px 12px -2px; }
|
||||
}
|
||||
@@ -219,13 +219,13 @@
|
||||
<div class="box" *ngIf="!error && webGlEnabled && showAudit">
|
||||
<div class="nav nav-tabs" *ngIf="isMobile && showAudit">
|
||||
<a class="nav-link" [class.active]="mode === 'projected'"
|
||||
fragment="projected" (click)="changeMode('projected')"><ng-container i18n="block.expected">Expected</ng-container> <span class="badge badge-pill badge-warning" i18n="beta">beta</span></a>
|
||||
fragment="projected" (click)="changeMode('projected')"><ng-container i18n="block.expected">Expected</ng-container></a>
|
||||
<a class="nav-link" [class.active]="mode === 'actual'" i18n="block.actual"
|
||||
fragment="actual" (click)="changeMode('actual')">Actual</a>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm">
|
||||
<h3 class="block-subtitle" *ngIf="!isMobile"><ng-container i18n="block.expected-block">Expected Block</ng-container> <span class="badge badge-pill badge-warning beta" i18n="beta">beta</span></h3>
|
||||
<h3 class="block-subtitle" *ngIf="!isMobile"><ng-container i18n="block.expected-block">Expected Block</ng-container></h3>
|
||||
<div class="block-graph-wrapper">
|
||||
<app-block-overview-graph #blockGraphProjected [isLoading]="isLoadingOverview" [resolution]="86"
|
||||
[blockLimit]="stateService.blockVSize" [orientation]="'top'" [flip]="false" [mirrorTxid]="hoverTx" [auditHighlighting]="showAudit"
|
||||
|
||||
@@ -249,10 +249,8 @@ export class HashrateChartComponent implements OnInit {
|
||||
for (const tick of ticks) {
|
||||
if (tick.seriesIndex === 0) { // Hashrate
|
||||
let hashrate = tick.data[1];
|
||||
if (this.isMobile()) {
|
||||
hashratePowerOfTen = selectPowerOfTen(tick.data[1]);
|
||||
hashrate = Math.round(tick.data[1] / hashratePowerOfTen.divider);
|
||||
}
|
||||
hashratePowerOfTen = selectPowerOfTen(tick.data[1], 10);
|
||||
hashrate = tick.data[1] / hashratePowerOfTen.divider;
|
||||
hashrateString = `${tick.marker} ${tick.seriesName}: ${formatNumber(hashrate, this.locale, '1.0-0')} ${hashratePowerOfTen.unit}H/s<br>`;
|
||||
} else if (tick.seriesIndex === 1) { // Difficulty
|
||||
let difficultyPowerOfTen = hashratePowerOfTen;
|
||||
@@ -260,18 +258,14 @@ export class HashrateChartComponent implements OnInit {
|
||||
if (difficulty === null) {
|
||||
difficultyString = `${tick.marker} ${tick.seriesName}: No data<br>`;
|
||||
} else {
|
||||
if (this.isMobile()) {
|
||||
difficultyPowerOfTen = selectPowerOfTen(tick.data[1]);
|
||||
difficulty = Math.round(tick.data[1] / difficultyPowerOfTen.divider);
|
||||
}
|
||||
difficultyPowerOfTen = selectPowerOfTen(tick.data[1]);
|
||||
difficulty = tick.data[1] / difficultyPowerOfTen.divider;
|
||||
difficultyString = `${tick.marker} ${tick.seriesName}: ${formatNumber(difficulty, this.locale, '1.2-2')} ${difficultyPowerOfTen.unit}<br>`;
|
||||
}
|
||||
} else if (tick.seriesIndex === 2) { // Hashrate MA
|
||||
let hashrate = tick.data[1];
|
||||
if (this.isMobile()) {
|
||||
hashratePowerOfTen = selectPowerOfTen(tick.data[1]);
|
||||
hashrate = Math.round(tick.data[1] / hashratePowerOfTen.divider);
|
||||
}
|
||||
hashratePowerOfTen = selectPowerOfTen(tick.data[1], 10);
|
||||
hashrate = tick.data[1] / hashratePowerOfTen.divider;
|
||||
hashrateStringMA = `${tick.marker} ${tick.seriesName}: ${formatNumber(hashrate, this.locale, '1.0-0')} ${hashratePowerOfTen.unit}H/s`;
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -209,8 +209,7 @@ export class IncomingTransactionsGraphComponent implements OnInit, OnChanges, On
|
||||
obj[['left', 'right'][+(pos[0] < size.viewSize[0] / 2)]] = 80;
|
||||
return obj;
|
||||
},
|
||||
extraCssText: `width: ${(['2h', '24h'].includes(this.windowPreference) || this.template === 'widget') ? '125px' : '135px'};
|
||||
background: transparent;
|
||||
extraCssText: `background: transparent;
|
||||
border: none;
|
||||
box-shadow: none;`,
|
||||
axisPointer: {
|
||||
@@ -233,7 +232,8 @@ export class IncomingTransactionsGraphComponent implements OnInit, OnChanges, On
|
||||
}
|
||||
}
|
||||
});
|
||||
return `<div class="tx-wrapper-tooltip-chart ${(this.template === 'advanced') ? 'tx-wrapper-tooltip-chart-advanced' : ''}">${itemFormatted}</div>`;
|
||||
return `<div class="tx-wrapper-tooltip-chart ${(this.template === 'advanced') ? 'tx-wrapper-tooltip-chart-advanced' : ''}"
|
||||
style="width: ${(this.windowPreference === '2h' || this.template === 'widget') ? '125px' : '215px'}">${itemFormatted}</div>`;
|
||||
}
|
||||
},
|
||||
xAxis: [
|
||||
|
||||
@@ -163,10 +163,8 @@ export class PoolComponent implements OnInit {
|
||||
let hashratePowerOfTen: any = selectPowerOfTen(1);
|
||||
let hashrate = ticks[0].data[1];
|
||||
|
||||
if (this.isMobile()) {
|
||||
hashratePowerOfTen = selectPowerOfTen(ticks[0].data[1]);
|
||||
hashrate = Math.round(ticks[0].data[1] / hashratePowerOfTen.divider);
|
||||
}
|
||||
hashratePowerOfTen = selectPowerOfTen(ticks[0].data[1], 10);
|
||||
hashrate = ticks[0].data[1] / hashratePowerOfTen.divider;
|
||||
|
||||
return `
|
||||
<b style="color: white; margin-left: 18px">${ticks[0].axisValueLabel}</b><br>
|
||||
|
||||
@@ -40,6 +40,8 @@ export class SearchFormComponent implements OnInit {
|
||||
regexBlockhash = /^[0]{8}[a-fA-F0-9]{56}$/;
|
||||
regexTransaction = /^([a-fA-F0-9]{64})(:\d+)?$/;
|
||||
regexBlockheight = /^[0-9]{1,9}$/;
|
||||
regexDate = /^(?:\d{4}[-/]\d{1,2}[-/]\d{1,2}(?: \d{1,2}:\d{2})?)$/;
|
||||
regexUnixTimestamp = /^\d{10}$/;
|
||||
focus$ = new Subject<string>();
|
||||
click$ = new Subject<string>();
|
||||
|
||||
@@ -173,6 +175,8 @@ export class SearchFormComponent implements OnInit {
|
||||
const lightningResults = result[1];
|
||||
|
||||
const matchesBlockHeight = this.regexBlockheight.test(searchText);
|
||||
const matchesDateTime = this.regexDate.test(searchText) && new Date(searchText).toString() !== 'Invalid Date';
|
||||
const matchesUnixTimestamp = this.regexUnixTimestamp.test(searchText);
|
||||
const matchesTxId = this.regexTransaction.test(searchText) && !this.regexBlockhash.test(searchText);
|
||||
const matchesBlockHash = this.regexBlockhash.test(searchText);
|
||||
const matchesAddress = !matchesTxId && this.regexAddress.test(searchText);
|
||||
@@ -181,10 +185,16 @@ export class SearchFormComponent implements OnInit {
|
||||
searchText = 'B' + searchText;
|
||||
}
|
||||
|
||||
if (matchesDateTime && searchText.indexOf('/') !== -1) {
|
||||
searchText = searchText.replace(/\//g, '-');
|
||||
}
|
||||
|
||||
return {
|
||||
searchText: searchText,
|
||||
hashQuickMatch: +(matchesBlockHeight || matchesBlockHash || matchesTxId || matchesAddress),
|
||||
hashQuickMatch: +(matchesBlockHeight || matchesBlockHash || matchesTxId || matchesAddress || matchesUnixTimestamp || matchesDateTime),
|
||||
blockHeight: matchesBlockHeight,
|
||||
dateTime: matchesDateTime,
|
||||
unixTimestamp: matchesUnixTimestamp,
|
||||
txId: matchesTxId,
|
||||
blockHash: matchesBlockHash,
|
||||
address: matchesAddress,
|
||||
@@ -243,6 +253,13 @@ export class SearchFormComponent implements OnInit {
|
||||
} else {
|
||||
this.navigate('/tx/', matches[0]);
|
||||
}
|
||||
} else if (this.regexDate.test(searchText) || this.regexUnixTimestamp.test(searchText)) {
|
||||
let timestamp: number;
|
||||
this.regexDate.test(searchText) ? timestamp = Math.floor(new Date(searchText).getTime() / 1000) : timestamp = searchText;
|
||||
this.apiService.getBlockDataFromTimestamp$(timestamp).subscribe(
|
||||
(data) => { this.navigate('/block/', data.hash); },
|
||||
(error) => { console.log(error); this.isSearching = false; }
|
||||
);
|
||||
} else {
|
||||
this.searchResults.searchButtonClick();
|
||||
this.isSearching = false;
|
||||
|
||||
@@ -5,6 +5,18 @@
|
||||
<ng-container *ngTemplateOutlet="goTo; context: { $implicit: results.searchText }"></ng-container>
|
||||
</button>
|
||||
</ng-template>
|
||||
<ng-template [ngIf]="results.dateTime">
|
||||
<div class="card-title" i18n="search.bitcoin-block-date">Date</div>
|
||||
<button (click)="clickItem(0)" [class.active]="0 === activeIdx" type="button" role="option" class="dropdown-item">
|
||||
<ng-container *ngTemplateOutlet="goTo; context: { $implicit: results.searchText }"></ng-container>
|
||||
</button>
|
||||
</ng-template>
|
||||
<ng-template [ngIf]="results.unixTimestamp">
|
||||
<div class="card-title" i18n="search.bitcoin-block-timestamp">Timestamp</div>
|
||||
<button (click)="clickItem(0)" [class.active]="0 === activeIdx" type="button" role="option" class="dropdown-item">
|
||||
<ng-container *ngTemplateOutlet="goTo; context: { $implicit: results.searchText }"></ng-container>
|
||||
</button>
|
||||
</ng-template>
|
||||
<ng-template [ngIf]="results.txId">
|
||||
<div class="card-title" i18n="search.bitcoin-transaction">Bitcoin Transaction</div>
|
||||
<button (click)="clickItem(0)" [class.active]="0 === activeIdx" type="button" role="option" class="dropdown-item">
|
||||
|
||||
@@ -88,7 +88,7 @@ export class TransactionPreviewComponent implements OnInit, OnDestroy {
|
||||
this.seoService.setTitle(
|
||||
$localize`:@@bisq.transaction.browser-title:Transaction: ${this.txId}:INTERPOLATION:`
|
||||
);
|
||||
this.seoService.setDescription($localize`:@@meta.description.bitcoin.transaction:Get real-time status, addresses, fees, script info, and more for ${this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'}${seoDescriptionNetwork(this.stateService.network)} transaction with txid {txid}.`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.bitcoin.transaction:Get real-time status, addresses, fees, script info, and more for ${this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'}${seoDescriptionNetwork(this.stateService.network)} transaction with txid ${this.txId}.`);
|
||||
this.resetTransaction();
|
||||
return merge(
|
||||
of(true),
|
||||
|
||||
@@ -83,9 +83,13 @@
|
||||
|
||||
<!-- Accelerator -->
|
||||
<ng-container *ngIf="!tx?.status?.confirmed && showAccelerationSummary">
|
||||
<div class="title mt-3">
|
||||
<br>
|
||||
<div class="title float-left">
|
||||
<h2>Accelerate</h2>
|
||||
</div>
|
||||
<button type="button" class="btn btn-outline-info accelerator-toggle btn-sm float-right" (click)="showAccelerationSummary = false" i18n="hide-accelerator">Hide accelerator</button>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div class="box">
|
||||
<app-accelerate-preview [tx]="tx" [scrollEvent]="scrollIntoAccelPreview"></app-accelerate-preview>
|
||||
</div>
|
||||
@@ -508,18 +512,24 @@
|
||||
<app-fee-rate [fee]="tx.feePerVsize"></app-fee-rate>
|
||||
<ng-template [ngIf]="tx?.status?.confirmed">
|
||||
|
||||
<app-tx-fee-rating *ngIf="tx.fee && !hasEffectiveFeeRate" [tx]="tx"></app-tx-fee-rating>
|
||||
<app-tx-fee-rating *ngIf="tx.fee && !hasEffectiveFeeRate && !accelerationInfo" [tx]="tx"></app-tx-fee-rating>
|
||||
</ng-template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr *ngIf="cpfpInfo && hasEffectiveFeeRate">
|
||||
<td *ngIf="tx.acceleration" i18n="transaction.accelerated-fee-rate|Accelerated transaction fee rate">Accelerated fee rate</td>
|
||||
<td *ngIf="!tx.acceleration" i18n="transaction.effective-fee-rate|Effective transaction fee rate">Effective fee rate</td>
|
||||
<tr *ngIf="(cpfpInfo && hasEffectiveFeeRate) || accelerationInfo">
|
||||
<td *ngIf="tx.acceleration || accelerationInfo" i18n="transaction.accelerated-fee-rate|Accelerated transaction fee rate">Accelerated fee rate</td>
|
||||
<td *ngIf="!(tx.acceleration || accelerationInfo)" i18n="transaction.effective-fee-rate|Effective transaction fee rate">Effective fee rate</td>
|
||||
<td>
|
||||
<div class="effective-fee-container">
|
||||
<app-fee-rate [fee]="tx.effectiveFeePerVsize"></app-fee-rate>
|
||||
<ng-template [ngIf]="tx?.status?.confirmed">
|
||||
<app-tx-fee-rating class="ml-2 mr-2" *ngIf="tx.fee || tx.effectiveFeePerVsize" [tx]="tx"></app-tx-fee-rating>
|
||||
<app-fee-rate *ngIf="accelerationInfo" [fee]="accelerationInfo.actualFeeDelta" [weight]="accelerationInfo.effectiveVsize * 4"></app-fee-rate>
|
||||
<app-fee-rate *ngIf="!accelerationInfo" [fee]="tx.effectiveFeePerVsize"></app-fee-rate>
|
||||
|
||||
<ng-template [ngIf]="tx?.status?.confirmed || tx.acceleration || accelerationInfo">
|
||||
<app-tx-fee-rating *ngIf="!(tx.acceleration || accelerationInfo) && (tx.fee || tx.effectiveFeePerVsize)" class="ml-2 mr-2 effective-fee-rating" [tx]="tx"></app-tx-fee-rating>
|
||||
<ng-container *ngIf="accelerationInfo || tx.acceleration">
|
||||
|
||||
<span class="badge badge-accelerated" i18n="transaction.audit.accelerated">Accelerated</span>
|
||||
</ng-container>
|
||||
</ng-template>
|
||||
</div>
|
||||
<button *ngIf="cpfpInfo.bestDescendant || cpfpInfo.descendants?.length || cpfpInfo.ancestors?.length" type="button" class="btn btn-outline-info btn-sm btn-small-height float-right" (click)="showCpfpDetails = !showCpfpDetails">CPFP <fa-icon [icon]="['fas', 'info-circle']" [fixedWidth]="true"></fa-icon></button>
|
||||
|
||||
@@ -60,6 +60,11 @@
|
||||
top: -1px;
|
||||
}
|
||||
|
||||
.badge.badge-accelerated {
|
||||
background-color: #653b9c;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.btn-small-height {
|
||||
line-height: 1;
|
||||
}
|
||||
@@ -152,6 +157,16 @@
|
||||
@media (min-width: 768px){
|
||||
display: inline-block;
|
||||
}
|
||||
@media (max-width: 425px){
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
|
||||
.effective-fee-rating {
|
||||
@media (max-width: 767px){
|
||||
margin-right: 0px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
@@ -169,7 +184,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
.details-button, .flow-toggle {
|
||||
.details-button, .flow-toggle, .accelerator-toggle {
|
||||
margin-top: -5px;
|
||||
margin-left: 10px;
|
||||
@media (min-width: 768px){
|
||||
|
||||
@@ -21,7 +21,7 @@ import { ApiService } from '../../services/api.service';
|
||||
import { SeoService } from '../../services/seo.service';
|
||||
import { StorageService } from '../../services/storage.service';
|
||||
import { seoDescriptionNetwork } from '../../shared/common.utils';
|
||||
import { BlockExtended, CpfpInfo, RbfTree, MempoolPosition, DifficultyAdjustment } from '../../interfaces/node-api.interface';
|
||||
import { BlockExtended, CpfpInfo, RbfTree, MempoolPosition, DifficultyAdjustment, Acceleration } from '../../interfaces/node-api.interface';
|
||||
import { LiquidUnblinding } from './liquid-ublinding';
|
||||
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe';
|
||||
import { Price, PriceService } from '../../services/price.service';
|
||||
@@ -49,6 +49,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
fetchCpfpSubscription: Subscription;
|
||||
fetchRbfSubscription: Subscription;
|
||||
fetchCachedTxSubscription: Subscription;
|
||||
fetchAccelerationSubscription: Subscription;
|
||||
txReplacedSubscription: Subscription;
|
||||
txRbfInfoSubscription: Subscription;
|
||||
mempoolPositionSubscription: Subscription;
|
||||
@@ -62,12 +63,14 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
rbfReplaces: string[];
|
||||
rbfInfo: RbfTree;
|
||||
cpfpInfo: CpfpInfo | null;
|
||||
accelerationInfo: Acceleration | null = null;
|
||||
sigops: number | null;
|
||||
adjustedVsize: number | null;
|
||||
showCpfpDetails = false;
|
||||
fetchCpfp$ = new Subject<string>();
|
||||
fetchRbfHistory$ = new Subject<string>();
|
||||
fetchCachedTx$ = new Subject<string>();
|
||||
fetchAcceleration$ = new Subject<string>();
|
||||
isCached: boolean = false;
|
||||
now = Date.now();
|
||||
da$: Observable<DifficultyAdjustment>;
|
||||
@@ -238,6 +241,25 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
}
|
||||
});
|
||||
|
||||
this.fetchAccelerationSubscription = this.fetchAcceleration$.pipe(
|
||||
tap(() => {
|
||||
this.accelerationInfo = null;
|
||||
}),
|
||||
switchMap((blockHash: string) => {
|
||||
return this.apiService.getAccelerationHistory$({ blockHash });
|
||||
}),
|
||||
catchError(() => {
|
||||
return of(null);
|
||||
})
|
||||
).subscribe((accelerationHistory) => {
|
||||
for (const acceleration of accelerationHistory) {
|
||||
if (acceleration.txid === this.txId && (acceleration.status === 'completed' || acceleration.status === 'mined') && acceleration.feePaid > 0) {
|
||||
acceleration.actualFeeDelta = Math.max(acceleration.effectiveFee, acceleration.effectiveFee + acceleration.feePaid - acceleration.baseFee - acceleration.vsizeFee);
|
||||
this.accelerationInfo = acceleration;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
this.mempoolPositionSubscription = this.stateService.mempoolTxPosition$.subscribe(txPosition => {
|
||||
this.now = Date.now();
|
||||
if (txPosition && txPosition.txid === this.txId && txPosition.position) {
|
||||
@@ -365,6 +387,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
this.getTransactionTime();
|
||||
}
|
||||
} else {
|
||||
this.fetchAcceleration$.next(tx.status.block_hash);
|
||||
this.transactionTime = 0;
|
||||
}
|
||||
|
||||
@@ -417,6 +440,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
};
|
||||
this.stateService.markBlock$.next({ blockHeight: block.height });
|
||||
this.audioService.playSound('magic');
|
||||
this.fetchAcceleration$.next(block.id);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -585,6 +609,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
this.rbfInfo = null;
|
||||
this.rbfReplaces = [];
|
||||
this.showCpfpDetails = false;
|
||||
this.accelerationInfo = null;
|
||||
this.txInBlockIndex = null;
|
||||
this.mempoolPosition = null;
|
||||
document.body.scrollTo(0, 0);
|
||||
@@ -664,6 +689,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
this.fetchCpfpSubscription.unsubscribe();
|
||||
this.fetchRbfSubscription.unsubscribe();
|
||||
this.fetchCachedTxSubscription.unsubscribe();
|
||||
this.fetchAccelerationSubscription.unsubscribe();
|
||||
this.txReplacedSubscription.unsubscribe();
|
||||
this.txRbfInfoSubscription.unsubscribe();
|
||||
this.queryParamsSubscription.unsubscribe();
|
||||
|
||||
@@ -2922,7 +2922,7 @@ export const restApiDocsData = [
|
||||
fragment: "get-blocks-bulk",
|
||||
title: "GET Blocks (Bulk)",
|
||||
description: {
|
||||
default: "<p>Returns details on the range of blocks between <code>:minHeight</code> and <code>:maxHeight</code>, inclusive, up to 10 blocks. If <code>:maxHeight</code> is not specified, it defaults to the current tip.</p><p>To return data for more than 10 blocks, consider becoming an <a href='/enterprise'>enterprise sponsor</a>.</p>"
|
||||
default: "<p>Returns details on the range of blocks between <code>:minHeight</code> and <code>:maxHeight</code>, inclusive, up to 10 blocks. If <code>:maxHeight</code> is not specified, it defaults to the current tip.</p><p>To return data for more than 10 blocks, consider becoming an <a href='https://mempool.space/enterprise'>enterprise sponsor</a>.</p>"
|
||||
},
|
||||
urlString: "/v1/blocks-bulk/:minHeight[/:maxHeight]",
|
||||
showConditions: bitcoinNetworks,
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
<div class="doc-content">
|
||||
|
||||
<p class="doc-welcome-note">Below is a reference for the {{ network.val === '' ? 'Bitcoin' : network.val.charAt(0).toUpperCase() + network.val.slice(1) }} <ng-container i18n="api-docs.title">REST API service</ng-container>.</p>
|
||||
<p class="doc-welcome-note api-note" *ngIf="officialMempoolInstance">Note that we enforce rate limits. If you exceed these limits, you will get an HTTP 429 error. If you repeatedly exceed the limits, you may be banned from accessing the service altogether. Consider an <a href="/enterprise">enterprise sponsorship</a> if you need higher API limits.</p>
|
||||
<p class="doc-welcome-note api-note" *ngIf="officialMempoolInstance">Note that we enforce rate limits. If you exceed these limits, you will get an HTTP 429 error. If you repeatedly exceed the limits, you may be banned from accessing the service altogether. Consider an <a href="https://mempool.space/enterprise">enterprise sponsorship</a> if you need higher API limits.</p>
|
||||
|
||||
<div class="doc-item-container" *ngFor="let item of restDocs">
|
||||
<h3 *ngIf="( item.type === 'category' ) && ( item.showConditions.indexOf(network.val) > -1 )">{{ item.title }}</h3>
|
||||
@@ -123,7 +123,7 @@
|
||||
<p>{{electrsPort}}</p>
|
||||
<p class="subtitle">SSL</p>
|
||||
<p>Enabled</p>
|
||||
<p class="note" *ngIf="network.val !== 'signet'">Electrum RPC interface for Bitcoin Signet is <a href="/signet/docs/api/electrs">publicly available</a>. Electrum RPC interface for all other networks is available to <a href='/enterprise'>sponsors</a> only—whitelisting is required.</p>
|
||||
<p class="note" *ngIf="network.val !== 'signet'">Electrum RPC interface for Bitcoin Signet is <a href="/signet/docs/api/electrs">publicly available</a>. Electrum RPC interface for all other networks is available to <a href='https://mempool.space/enterprise'>sponsors</a> only—whitelisting is required.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -288,7 +288,7 @@
|
||||
</ng-template>
|
||||
|
||||
<ng-template type="host-my-own-instance-server">
|
||||
<p>You can manually install Mempool on your own server, but this requires advanced sysadmin skills since you will be manually configuring everything. You could also use our <a href="https://github.com/mempool/mempool/tree/master/docker" target="_blank">Docker images</a>.</p><p>In any case, we only provide support for manual deployments to <a href="/enterprise">enterprise sponsors</a>.</p>
|
||||
<p>You can manually install Mempool on your own server, but this requires advanced sysadmin skills since you will be manually configuring everything. You could also use our <a href="https://github.com/mempool/mempool/tree/master/docker" target="_blank">Docker images</a>.</p><p>In any case, we only provide support for manual deployments to <a href="https://mempool.space/enterprise">enterprise sponsors</a>.</p>
|
||||
<p>For casual users, we strongly suggest installing Mempool using one of the <a href="https://github.com/mempool/mempool#one-click-installation" target="_blank">1-click install methods</a>.</p>
|
||||
</ng-template>
|
||||
|
||||
|
||||
@@ -302,3 +302,28 @@ export interface INode {
|
||||
funding_balance?: number;
|
||||
closing_balance?: number;
|
||||
}
|
||||
|
||||
export interface Acceleration {
|
||||
txid: string;
|
||||
status: 'requested' | 'accelerating' | 'mined' | 'completed' | 'failed';
|
||||
pools: number[];
|
||||
feePaid: number;
|
||||
added: number; // timestamp
|
||||
lastUpdated: number; // timestamp
|
||||
baseFee: number;
|
||||
vsizeFee: number;
|
||||
effectiveFee: number;
|
||||
effectiveVsize: number;
|
||||
feeDelta: number;
|
||||
blockHash: string;
|
||||
blockHeight: number;
|
||||
|
||||
actualFeeDelta?: number;
|
||||
}
|
||||
|
||||
export interface AccelerationHistoryParams {
|
||||
timeframe?: string,
|
||||
status?: string,
|
||||
pool?: string,
|
||||
blockHash?: string,
|
||||
}
|
||||
@@ -25,7 +25,7 @@ export class LightningDashboardComponent implements OnInit, AfterViewInit {
|
||||
|
||||
ngOnInit(): void {
|
||||
this.seoService.setTitle($localize`:@@142e923d3b04186ac6ba23387265d22a2fa404e0:Lightning Explorer`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.lightning.dashboard:Get stats on the Lightning network (aggregate capacity, connectivity, etc) and Lightning nodes (channels, liquidity, etc) and Lightning channels (status, fees, etc).`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.lightning.dashboard:Get stats on the Lightning network (aggregate capacity, connectivity, etc), Lightning nodes (channels, liquidity, etc) and Lightning channels (status, fees, etc).`);
|
||||
|
||||
this.nodesRanking$ = this.lightningApiService.getNodesRanking$().pipe(share());
|
||||
this.statistics$ = this.lightningApiService.getLatestStatistics$().pipe(share());
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ export class NodesRankingsDashboard implements OnInit {
|
||||
|
||||
ngOnInit(): void {
|
||||
this.seoService.setTitle($localize`Top lightning nodes`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.lightning.rankings-dashboard:See top the Lightning network nodes ranked by liquidity, connectivity, and age.`);
|
||||
this.seoService.setDescription($localize`:@@meta.description.lightning.rankings-dashboard:See the top Lightning network nodes ranked by liquidity, connectivity, and age.`);
|
||||
this.nodesRanking$ = this.lightningApiService.getNodesRanking$().pipe(share());
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { HttpClient, HttpParams, HttpResponse } from '@angular/common/http';
|
||||
import { CpfpInfo, OptimizedMempoolStats, AddressInformation, LiquidPegs, ITranslators,
|
||||
PoolStat, BlockExtended, TransactionStripped, RewardStats, AuditScore, BlockSizesAndWeights, RbfTree, BlockAudit } from '../interfaces/node-api.interface';
|
||||
PoolStat, BlockExtended, TransactionStripped, RewardStats, AuditScore, BlockSizesAndWeights, RbfTree, BlockAudit, Acceleration, AccelerationHistoryParams } from '../interfaces/node-api.interface';
|
||||
import { BehaviorSubject, Observable, catchError, filter, of, shareReplay, take, tap } from 'rxjs';
|
||||
import { StateService } from './state.service';
|
||||
import { IBackendInfo, WebsocketResponse } from '../interfaces/websocket.interface';
|
||||
@@ -227,6 +227,10 @@ export class ApiService {
|
||||
return this.httpClient.get<BlockExtended>(this.apiBaseUrl + this.apiBasePath + '/api/v1/block/' + hash);
|
||||
}
|
||||
|
||||
getBlockDataFromTimestamp$(timestamp: number): Observable<any> {
|
||||
return this.httpClient.get<number>(this.apiBaseUrl + this.apiBasePath + '/api/v1/mining/blocks/timestamp/' + timestamp);
|
||||
}
|
||||
|
||||
getStrippedBlockTransactions$(hash: string): Observable<TransactionStripped[]> {
|
||||
return this.httpClient.get<TransactionStripped[]>(this.apiBaseUrl + this.apiBasePath + '/api/v1/block/' + hash + '/summary');
|
||||
}
|
||||
@@ -424,4 +428,12 @@ export class ApiService {
|
||||
accelerate$(txInput: string, userBid: number) {
|
||||
return this.httpClient.post<any>(`${SERVICES_API_PREFIX}/accelerator/accelerate`, { txInput: txInput, userBid: userBid });
|
||||
}
|
||||
|
||||
getAccelerations$(): Observable<Acceleration[]> {
|
||||
return this.httpClient.get<Acceleration[]>(`${SERVICES_API_PREFIX}/accelerator/accelerations`);
|
||||
}
|
||||
|
||||
getAccelerationHistory$(params: AccelerationHistoryParams): Observable<Acceleration[]> {
|
||||
return this.httpClient.get<Acceleration[]>(`${SERVICES_API_PREFIX}/accelerator/accelerations/history`, { params: { ...params } });
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@ import { Inject, Injectable } from '@angular/core';
|
||||
import { ApiService } from './api.service';
|
||||
import { SeoService } from './seo.service';
|
||||
import { StateService } from './state.service';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
@@ -11,12 +12,15 @@ export class EnterpriseService {
|
||||
exclusiveHostName = '.mempool.space';
|
||||
subdomain: string | null = null;
|
||||
info: object = {};
|
||||
statsUrl: string;
|
||||
siteId: number;
|
||||
|
||||
constructor(
|
||||
@Inject(DOCUMENT) private document: Document,
|
||||
private apiService: ApiService,
|
||||
private seoService: SeoService,
|
||||
private stateService: StateService,
|
||||
private activatedRoute: ActivatedRoute,
|
||||
) {
|
||||
const subdomain = this.document.location.hostname.indexOf(this.exclusiveHostName) > -1
|
||||
&& this.document.location.hostname.split(this.exclusiveHostName)[0] || false;
|
||||
@@ -56,7 +60,7 @@ export class EnterpriseService {
|
||||
|
||||
insertMatomo(siteId?: number): void {
|
||||
let statsUrl = '//stats.mempool.space/';
|
||||
|
||||
|
||||
if (!siteId) {
|
||||
switch (this.document.location.hostname) {
|
||||
case 'mempool.space':
|
||||
@@ -88,16 +92,63 @@ export class EnterpriseService {
|
||||
}
|
||||
}
|
||||
|
||||
this.statsUrl = statsUrl;
|
||||
this.siteId = siteId;
|
||||
|
||||
// @ts-ignore
|
||||
const _paq = window._paq = window._paq || [];
|
||||
_paq.push(['disableCookies']);
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
_paq.push(['setTrackerUrl', statsUrl+'m.php']);
|
||||
_paq.push(['setSiteId', siteId.toString()]);
|
||||
const d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.type='text/javascript'; g.async=true; g.src=statsUrl+'m.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
if (window._paq && window['Matomo']) {
|
||||
window['Matomo'].addTracker(statsUrl+'m.php', siteId.toString());
|
||||
const matomo = this.getMatomo();
|
||||
matomo.setDocumentTitle(this.seoService.getTitle());
|
||||
matomo.setCustomUrl(this.getCustomUrl());
|
||||
matomo.disableCookies();
|
||||
matomo.trackPageView();
|
||||
matomo.enableLinkTracking();
|
||||
} else {
|
||||
// @ts-ignore
|
||||
const alreadyInitialized = !!window._paq;
|
||||
// @ts-ignore
|
||||
const _paq = window._paq = window._paq || [];
|
||||
_paq.push(['setDocumentTitle', this.seoService.getTitle()]);
|
||||
_paq.push(['setCustomUrl', this.getCustomUrl()]);
|
||||
_paq.push(['disableCookies']);
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
if (alreadyInitialized) {
|
||||
_paq.push(['addTracker', statsUrl+'m.php', siteId.toString()]);
|
||||
} else {
|
||||
(function() {
|
||||
_paq.push(['setTrackerUrl', statsUrl+'m.php']);
|
||||
_paq.push(['setSiteId', siteId.toString()]);
|
||||
const d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
// @ts-ignore
|
||||
g.type='text/javascript'; g.async=true; g.src=statsUrl+'m.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private getMatomo() {
|
||||
if (this.siteId != null) {
|
||||
return window['Matomo']?.getTracker(this.statsUrl+'m.php', this.siteId);
|
||||
}
|
||||
}
|
||||
|
||||
goal(id: number) {
|
||||
// @ts-ignore
|
||||
this.getMatomo()?.trackGoal(id);
|
||||
}
|
||||
|
||||
private getCustomUrl(): string {
|
||||
let url = window.location.origin + '/';
|
||||
let route = this.activatedRoute;
|
||||
while (route) {
|
||||
const segment = route?.routeConfig?.path;
|
||||
if (segment && segment.length) {
|
||||
url += segment + '/';
|
||||
}
|
||||
route = route.firstChild;
|
||||
}
|
||||
return url;
|
||||
}
|
||||
}
|
||||
@@ -76,17 +76,22 @@ export class WebsocketService {
|
||||
|
||||
this.stateService.resetChainTip();
|
||||
|
||||
this.websocketSubject.complete();
|
||||
this.subscription.unsubscribe();
|
||||
this.websocketSubject = webSocket<WebsocketResponse>(
|
||||
this.webSocketUrl.replace('{network}', this.network ? '/' + this.network : '')
|
||||
);
|
||||
|
||||
this.startSubscription();
|
||||
this.reconnectWebsocket();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
reconnectWebsocket(retrying = false, hasInitData = false) {
|
||||
console.log('reconnecting websocket');
|
||||
this.websocketSubject.complete();
|
||||
this.subscription.unsubscribe();
|
||||
this.websocketSubject = webSocket<WebsocketResponse>(
|
||||
this.webSocketUrl.replace('{network}', this.network ? '/' + this.network : '')
|
||||
);
|
||||
|
||||
this.startSubscription(retrying, hasInitData);
|
||||
}
|
||||
|
||||
startSubscription(retrying = false, hasInitData = false) {
|
||||
if (!hasInitData) {
|
||||
this.stateService.isLoadingWebSocket$.next(true);
|
||||
@@ -237,7 +242,7 @@ export class WebsocketService {
|
||||
this.goneOffline = true;
|
||||
this.stateService.connectionState$.next(0);
|
||||
window.setTimeout(() => {
|
||||
this.startSubscription(true);
|
||||
this.reconnectWebsocket(true);
|
||||
}, retryDelay);
|
||||
}
|
||||
|
||||
|
||||
@@ -2,12 +2,12 @@ import { Component, Input, OnInit } from "@angular/core";
|
||||
import { DomSanitizer, SafeHtml } from "@angular/platform-browser";
|
||||
|
||||
const MempoolErrors = {
|
||||
'internal_server_error': `Something went wrong, please try again later`,
|
||||
'acceleration_duplicated': `This transaction has already been accelerated.`,
|
||||
'acceleration_outbid': `Your fee delta is too low.`,
|
||||
'cannot_accelerate_tx': `Cannot accelerate this transaction.`,
|
||||
'cannot_decode_raw_tx': `Cannot decode this raw transaction.`,
|
||||
'cannot_fetch_raw_tx': `Cannot find this transaction.`,
|
||||
'database_error': `Something went wrong. Please try again later.`,
|
||||
'high_sigop_tx': `This transaction cannot be accelerated.`,
|
||||
'invalid_acceleration_request': `This acceleration request is not valid.`,
|
||||
'invalid_tx_dependencies': `This transaction dependencies are not valid.`,
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2046,6 +2046,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2105,6 +2105,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
@@ -2856,6 +2860,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.block" datatype="html">
|
||||
<source>See size, weight, fee range, included transactions, audit (expected v actual), and more for Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> block <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (<x id="BLOCK_ID" equiv-text="block.id"/>).</source>
|
||||
<target>Zeige Größe, Gewicht, Gebührenbereich, enthaltene Transaktionen, Prüfung von (erwartet vs. tatsächlich) und mehr für Bitcoin <x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> Block <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (<x id="BLOCK_ID" equiv-text="block.id"/>).</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-view/block-view.component.ts</context>
|
||||
<context context-type="linenumber">114</context>
|
||||
@@ -3454,6 +3459,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.liquid.blocks" datatype="html">
|
||||
<source>See the most recent Liquid<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> blocks along with basic stats such as block height, block size, and more.</source>
|
||||
<target>Zeige die neuesten Liquid<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>-Blöcke zusammen mit grundlegenden Statistiken wie Blockhöhe, Blockgröße und mehr an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/blocks-list/blocks-list.component.ts</context>
|
||||
<context context-type="linenumber">62</context>
|
||||
@@ -3461,6 +3467,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.blocks" datatype="html">
|
||||
<source>See the most recent Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> blocks along with basic stats such as block height, block reward, block size, and more.</source>
|
||||
<target>Zeige die neuesten Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>-Blöcke zusmmen mit grundlegenden Statistiken wie Blockhöhe, Blockbelohnung, Blockgröße und mehr an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/blocks-list/blocks-list.component.ts</context>
|
||||
<context context-type="linenumber">64</context>
|
||||
@@ -3586,6 +3593,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="1bb6965f8e1bbe40c076528ffd841da86f57f119" datatype="html">
|
||||
<source><x id="INTERPOLATION" equiv-text="<span class="shared-block">blocks</span></ng-template> <ng-"/> <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span class="shared-block">"/>blocks<x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/></source>
|
||||
<target><x id="INTERPOLATION" equiv-text="<span class="shared-block">blocks</span></ng-template> <ng-"/> <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span class="shared-block">"/>Blöcke<x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/difficulty-mining/difficulty-mining.component.html</context>
|
||||
<context context-type="linenumber">10,11</context>
|
||||
@@ -3889,6 +3897,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="93168b4de564d2c5d21d67cf2fb263f27b45e4c8" datatype="html">
|
||||
<source>WU/s</source>
|
||||
<target>WU/s</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/footer/footer.component.html</context>
|
||||
<context context-type="linenumber">14</context>
|
||||
@@ -4109,6 +4118,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.hashrate" datatype="html">
|
||||
<source>See hashrate and difficulty for the Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.network)"/> network visualized over time.</source>
|
||||
<target>Zeige die Hashrate und den Schwierigkeitsgrad für das Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.network)"/>-Netzwerk im Zeitverlauf an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/hashrate-chart/hashrate-chart.component.ts</context>
|
||||
<context context-type="linenumber">75</context>
|
||||
@@ -4216,6 +4226,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.mempool-block" datatype="html">
|
||||
<source>See stats for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> transactions in the mempool: fee range, aggregate size, and more. Mempool blocks are updated in real-time as the network receives new transactions.</source>
|
||||
<target>Zeige folgende Statistiken für <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>-Transaktionen im Mempool an: Gebührenbereich, Gesamtgröße und mehr. Mempool-Blöcke werden in Echtzeit aktualisiert, wenn das Netzwerk neue Transaktionen empfängt.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/mempool-block/mempool-block.component.ts</context>
|
||||
<context context-type="linenumber">58</context>
|
||||
@@ -4320,6 +4331,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.mining.dashboard" datatype="html">
|
||||
<source>Get real-time Bitcoin mining stats like hashrate, difficulty adjustment, block rewards, pool dominance, and more.</source>
|
||||
<target>Erhalten Sie Bitcoin-Mining-Statistiken in Echtzeit wie Hashrate, Schwierigkeitsanpassung, Blockbelohnungen, Pool-Dominanz und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/mining-dashboard/mining-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">21</context>
|
||||
@@ -4336,6 +4348,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="4e338e7daa64c7a074cee3824fbd7425e5b7c9a5" datatype="html">
|
||||
<source>Pools Luck</source>
|
||||
<target>Pools Glück</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
@@ -4366,6 +4379,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ade0bf412a0fae1e4672505fc1fa79ade185db05" datatype="html">
|
||||
<source>Pools Count</source>
|
||||
<target>Anzahl der Pools</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.html</context>
|
||||
<context context-type="linenumber">17</context>
|
||||
@@ -4480,6 +4494,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="5d680aaa8e24bb235cf4fbeff3df0bfc8e2f564e" datatype="html">
|
||||
<source>Empty Blocks</source>
|
||||
<target>Leere Blöcke</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.html</context>
|
||||
<context context-type="linenumber">98</context>
|
||||
@@ -4505,6 +4520,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.pool-ranking" datatype="html">
|
||||
<source>See the top Bitcoin mining pools ranked by number of blocks mined, over your desired timeframe.</source>
|
||||
<target>Zeige die Top-Bitcoin-Mining-Pools an, sortiert nach der Anzahl der im gewünschten Zeitraum abgebauten Blöcke.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -4594,6 +4610,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.mining.pool" datatype="html">
|
||||
<source>See mining pool stats for <x id="PH" equiv-text="poolStats.pool.name"/>: most recent mined blocks, hashrate over time, total block reward to date, known coinbase addresses, and more.</source>
|
||||
<target>Zeige die folgenden Mining-Pool-Statistiken für <x id="PH" equiv-text="poolStats.pool.name"/> an: zuletzt geschürfte Blöcke, Hashrate im Zeitverlauf, bisherige Gesamtblockbelohnung, bekannte Coinbase-Adressen und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool/pool-preview.component.ts</context>
|
||||
<context context-type="linenumber">86</context>
|
||||
@@ -4660,6 +4677,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="3dc78651b2810cbb6e830fe7e57499d8cf6a8e4d" datatype="html">
|
||||
<source>Blocks (24h)</source>
|
||||
<target>Blöcke (24h)</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">146</context>
|
||||
@@ -4774,6 +4792,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.push-tx" datatype="html">
|
||||
<source>Broadcast Transaction</source>
|
||||
<target>Transaktion senden</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/push-transaction/push-transaction.component.ts</context>
|
||||
<context context-type="linenumber">31</context>
|
||||
@@ -4781,6 +4800,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.push-tx" datatype="html">
|
||||
<source>Broadcast a transaction to the <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> network using the transaction's hash.</source>
|
||||
<target>Senden einer Transaktion mithilfe des Hashs der Transaktion an das Netzwerk <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/push-transaction/push-transaction.component.ts</context>
|
||||
<context context-type="linenumber">32</context>
|
||||
@@ -4788,6 +4808,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="5e3d5a82750902f159122fcca487b07f1af3141f" datatype="html">
|
||||
<source>RBF Replacements</source>
|
||||
<target>RBF-Ersetzung</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">2</context>
|
||||
@@ -4800,6 +4821,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8a9b3afe9486474f0d7767605fe99af99c8ea430" datatype="html">
|
||||
<source>Full RBF</source>
|
||||
<target>Full RBF</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">24</context>
|
||||
@@ -4816,6 +4838,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c88914ee712e3ab5ad5f88de8a6ed12050919ccb" datatype="html">
|
||||
<source>There are no replacements in the mempool yet!</source>
|
||||
<target>Es gibt noch keine Ersetzung im Mempool!</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">34</context>
|
||||
@@ -4824,6 +4847,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.rbf-list" datatype="html">
|
||||
<source>See the most recent RBF replacements on the Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> network, updated in real-time.</source>
|
||||
<target>Zeige die neuesten RBF-Ersetzungen im Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>-Netzwerk an, aktualisiert in Echtzeit.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -4869,6 +4893,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="aa28c3afcb8b1a556fc1e1842e48a57f24fd643f" datatype="html">
|
||||
<source>Status</source>
|
||||
<target>Status</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-timeline/rbf-timeline-tooltip.component.html</context>
|
||||
<context context-type="linenumber">33</context>
|
||||
@@ -4886,6 +4911,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="eb3b032a755fc367f7f6e957d0c7dc9d6db49464" datatype="html">
|
||||
<source>RBF</source>
|
||||
<target>RBF</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-timeline/rbf-timeline-tooltip.component.html</context>
|
||||
<context context-type="linenumber">36</context>
|
||||
@@ -5105,6 +5131,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="d0e134a0886ae71207e912575d226525062b62f1" datatype="html">
|
||||
<source>Clock (Mempool)</source>
|
||||
<target>Uhr (Mempool)</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">17</context>
|
||||
@@ -5157,6 +5184,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="68d44b7bd049ae93c2bc15973eb5266aec64693e" datatype="html">
|
||||
<source>Cap outliers</source>
|
||||
<target>Ausreißer begrenzen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">122</context>
|
||||
@@ -5165,6 +5193,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.mempool" datatype="html">
|
||||
<source>See mempool size (in MvB) and transactions per second (in vB/s) visualized over time.</source>
|
||||
<target>Zeige die Mempool-Größe (in MvB) und Transaktionen pro Sekunde (in vB/s) im Zeitverlauf an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -5172,6 +5201,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.tv" datatype="html">
|
||||
<source>See Bitcoin blocks and mempool congestion in real-time in a simplified format perfect for a TV.</source>
|
||||
<target>Zeige die Bitcoin-Blöcke und den Mempool-Stau in Echtzeit in einem vereinfachten Format, das perfekt für einen Fernseher geeignet ist.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/television/television.component.ts</context>
|
||||
<context context-type="linenumber">40</context>
|
||||
@@ -5384,6 +5414,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.transaction" datatype="html">
|
||||
<source>Get real-time status, addresses, fees, script info, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> transaction with txid {txid}.</source>
|
||||
<target>Zeige Echtzeitstatus, Adressen, Gebühren, Skriptinformationen und mehr für die <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>-Transaktion mit txid {txid}.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction-preview.component.ts</context>
|
||||
<context context-type="linenumber">91</context>
|
||||
@@ -5425,6 +5456,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="913e89d2d1ae354079cccf48b3d3f4ebf2e74080" datatype="html">
|
||||
<source>Accelerate</source>
|
||||
<target>Beschleunigen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">123</context>
|
||||
@@ -5462,6 +5494,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="03721a62015a76e794be64ba2b7e053e801215ea" datatype="html">
|
||||
<source>RBF History</source>
|
||||
<target>RBF-Geschichte</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">218</context>
|
||||
@@ -5533,6 +5566,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a8a4dd861f790141e19f773153cf42b5d0b0e6b6" datatype="html">
|
||||
<source>Adjusted vsize</source>
|
||||
<target>Angepasste V-Größe</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">298</context>
|
||||
@@ -5551,6 +5585,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="3dd65e8fa7035988a691aadcb583862c2a9e336a" datatype="html">
|
||||
<source>Sigops</source>
|
||||
<target>Sigops</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">320</context>
|
||||
@@ -5578,6 +5613,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8b01e0411c7160bfee109e504c84ecee5079c326" datatype="html">
|
||||
<source>Accelerated fee rate</source>
|
||||
<target>Beschleunigter Gebührensatz</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">516</context>
|
||||
@@ -5933,6 +5969,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="4fe744df6d36b5e9b0afab728b77fc635b99f040" datatype="html">
|
||||
<source>Recent Replacements</source>
|
||||
<target>Aktuelle Ersetzungen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">79</context>
|
||||
@@ -5941,6 +5978,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="23c872b0336e20284724607f2887da39bd8142c3" datatype="html">
|
||||
<source>Previous fee</source>
|
||||
<target>Vorherige Gebühr</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">86</context>
|
||||
@@ -5949,6 +5987,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="df33bef035883b7afeb388977087f99ab5a54409" datatype="html">
|
||||
<source>New fee</source>
|
||||
<target>Neue Gebühr</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">87</context>
|
||||
@@ -5957,6 +5996,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="aa6ce7e6e6fe5cd080713965451f25bca15a2a25" datatype="html">
|
||||
<source>Recent Transactions</source>
|
||||
<target>Kürzliche Transaktionen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">153</context>
|
||||
@@ -5994,6 +6034,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="9dfdbeb922d811d7b7b3fecd48360a059e52aaba" datatype="html">
|
||||
<source>Incoming Transactions</source>
|
||||
<target>Eingehende Transaktionen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">259</context>
|
||||
@@ -6002,6 +6043,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="999bb1a0150c2815a6b4dd64a1850e763603e525" datatype="html">
|
||||
<source><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/><x id="START_BOLD_TEXT" ctype="x-b" equiv-text="mempool.space mer"/>mempool.space merely provides data about the Bitcoin network.<x id="CLOSE_BOLD_TEXT" ctype="x-b" equiv-text="</b>"/> It cannot help you with retrieving funds, wallet issues, etc.<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/>For any such requests, you need to get in touch with the entity that helped make the transaction (wallet software, exchange company, etc).<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/></source>
|
||||
<target><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/><x id="START_BOLD_TEXT" ctype="x-b" equiv-text="mempool.space mer"/>mempool.space stellt lediglich Daten über das Bitcoin-Netzwerk bereit.<x id="CLOSE_BOLD_TEXT" ctype="x-b" equiv-text="</b>"/> Es kann Ihnen beim Abrufen von Geldern, bei Problemen mit der Wallet usw. nicht helfen.<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/>Bei solchen Anfragen müssen Sie Kontakt mit der Entität aufnehmen, die bei der Transaktion geholfen hat (Wallet-Software, Börsenunternehmen usw.).<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/api-docs/api-docs.component.html</context>
|
||||
<context context-type="linenumber">15,16</context>
|
||||
@@ -6096,6 +6138,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.faq" datatype="html">
|
||||
<source>FAQ</source>
|
||||
<target>FAQ</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">45</context>
|
||||
@@ -6103,6 +6146,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.faq" datatype="html">
|
||||
<source>Get answers to common questions like: What is a mempool? Why isn't my transaction confirming? How can I run my own instance of The Mempool Open Source Project? And more.</source>
|
||||
<target>Erhalten Sie Antworten auf häufige Fragen wie: Was ist ein Mempool? Warum wird meine Transaktion nicht bestätigt? Wie kann ich meine eigene Instanz des Mempool Open Source Project ausführen? Und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">46</context>
|
||||
@@ -6110,6 +6154,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.rest" datatype="html">
|
||||
<source>REST API</source>
|
||||
<target>REST API</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">49</context>
|
||||
@@ -6117,6 +6162,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.rest-liquid" datatype="html">
|
||||
<source>Documentation for the liquid.network REST API service: get info on addresses, transactions, assets, blocks, and more.</source>
|
||||
<target>Dokumentation für den liquid.network REST API-Dienst: Erhalte Informationen zu Adressen, Transaktionen, Assets, Blöcken und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -6124,6 +6170,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.rest-bisq" datatype="html">
|
||||
<source>Documentation for the bisq.markets REST API service: get info on recent trades, current offers, transactions, network state, and more.</source>
|
||||
<target>Dokumentation für den bisq.markets-REST-API-Dienst: Erhalte Informationen zu aktuellen Trades, aktuellen Angeboten, Transaktionen, Netzwerkstatus und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">53</context>
|
||||
@@ -6131,6 +6178,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.rest-bitcoin" datatype="html">
|
||||
<source>Documentation for the mempool.space REST API service: get info on addresses, transactions, blocks, fees, mining, the Lightning network, and more.</source>
|
||||
<target>Dokumentation für den REST-API-Dienst mempool.space: Erhalte Informationen zu Adressen, Transaktionen, Blöcken, Gebühren, Mining, dem Lightning-Netzwerk und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">55</context>
|
||||
@@ -6138,6 +6186,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.websocket" datatype="html">
|
||||
<source>WebSocket API</source>
|
||||
<target>WebSocket API</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -6145,6 +6194,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.websocket-liquid" datatype="html">
|
||||
<source>Documentation for the liquid.network WebSocket API service: get real-time info on blocks, mempools, transactions, addresses, and more.</source>
|
||||
<target>Dokumentation für den liquid.network WebSocket API-Dienst: Erhalte Echtzeitinformationen zu Blöcken, Mempools, Transaktionen, Adressen und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">61</context>
|
||||
@@ -6152,6 +6202,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.websocket-bitcoin" datatype="html">
|
||||
<source>Documentation for the mempool.space WebSocket API service: get real-time info on blocks, mempools, transactions, addresses, and more.</source>
|
||||
<target>Dokumentation für den WebSocket-API-Dienst mempool.space: Erhalte Echtzeitinformationen zu Blöcken, Mempools, Transaktionen, Adressen und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">63</context>
|
||||
@@ -6159,6 +6210,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.electrum" datatype="html">
|
||||
<source>Electrum RPC</source>
|
||||
<target>Electrum RPC</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -6166,6 +6218,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.electrumrpc" datatype="html">
|
||||
<source>Documentation for our Electrum RPC interface: get instant, convenient, and reliable access to an Esplora instance.</source>
|
||||
<target>Dokumentation für unsere Electrum RPC-Schnittstelle: Erhalte sofortigen, bequemen und zuverlässigen Zugriff auf eine Esplora-Instanz.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
@@ -6478,6 +6531,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.channel" datatype="html">
|
||||
<source>Overview for Lightning channel <x id="PH" equiv-text="params.get('short_id')"/>. See channel capacity, the Lightning nodes involved, related on-chain transactions, and more.</source>
|
||||
<target>Übersicht über den Lightning-Kanal <x id="PH" equiv-text="params.get('short_id')"/>. Zeige die Kanalkapazität, die beteiligten Lightning-Knoten, zugehörige On-Chain-Transaktionen und mehr an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/channel/channel-preview.component.ts</context>
|
||||
<context context-type="linenumber">37</context>
|
||||
@@ -6976,6 +7030,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ec42ed2d917189340598d7993c29b30c7fd32af4" datatype="html">
|
||||
<source>Connect</source>
|
||||
<target>Verbinden</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/group/group.component.html</context>
|
||||
<context context-type="linenumber">73</context>
|
||||
@@ -7026,6 +7081,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="34e302a08660d9860dda71e3f350351d34bda498" datatype="html">
|
||||
<source>Penalties</source>
|
||||
<target>Strafen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/justice-list/justice-list.component.html</context>
|
||||
<context context-type="linenumber">4</context>
|
||||
@@ -7103,6 +7159,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.dashboard" datatype="html">
|
||||
<source>Get stats on the Lightning network (aggregate capacity, connectivity, etc) and Lightning nodes (channels, liquidity, etc) and Lightning channels (status, fees, etc).</source>
|
||||
<target>Erhalte Statistiken zum Lightning-Netzwerk (Gesamtkapazität, Konnektivität usw.) und zu Lightning-Knoten (Kanäle, Liquidität usw.) und Lightning-Kanälen (Status, Gebühren usw.).</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">28</context>
|
||||
@@ -7212,6 +7269,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node" datatype="html">
|
||||
<source>Overview for the Lightning network node named <x id="PH" equiv-text="node.alias"/>. See channels, capacity, location, fee stats, and more.</source>
|
||||
<target>Übersicht über den Lightning-Netzwerkknoten mit dem Namen <x id="PH" equiv-text="node.alias"/>. Zeige Kanäle, Kapazität, Standort, Gebührenstatistiken und mehr an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/node/node-preview.component.ts</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -7272,6 +7330,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a737eb6814b234b0fd00e81b645b95a396711f15" datatype="html">
|
||||
<source>Decoded</source>
|
||||
<target>Decodiert</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/node/node.component.html</context>
|
||||
<context context-type="linenumber">136</context>
|
||||
@@ -7410,6 +7469,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node-map" datatype="html">
|
||||
<source>See the channels of non-Tor Lightning network nodes visualized on a world map. Hover/tap on points on the map for node names and details.</source>
|
||||
<target>Zeige die Kanäle von Nicht-Tor-Lightning-Netzwerkknoten visualisiert auf einer Weltkarte an. Bewegen Sie den Mauszeiger/tippen Sie auf Punkte auf der Karte, um Knotennamen und Details anzuzeigen.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts</context>
|
||||
<context context-type="linenumber">69</context>
|
||||
@@ -7434,6 +7494,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node-channel-map" datatype="html">
|
||||
<source>See the locations of non-Tor Lightning network nodes visualized on a world map. Hover/tap on points on the map for node names and details.</source>
|
||||
<target>Zeige die Standorte von Nicht-Tor-Lightning-Netzwerkknoten visualisiert auf einer Weltkarte an. Bewegen Sie den Mauszeiger/tippen Sie auf Punkte auf der Karte, um Knotennamen und Details anzuzeigen.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-map/nodes-map.component.ts</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -7441,6 +7502,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-network" datatype="html">
|
||||
<source>See the number of Lightning network nodes visualized over time by network: clearnet only (IPv4, IPv6), darknet (Tor, I2p, cjdns), and both.</source>
|
||||
<target>Zeige die Anzahl der Lightning-Netzwerkknoten an, die im Laufe der Zeit nach Netzwerk visualisiert werden: nur Clearnet (IPv4, IPv6), Darknet (Tor, I2p, cjdns) und beide.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
@@ -7509,6 +7571,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-country-overview" datatype="html">
|
||||
<source>See a geographical breakdown of the Lightning network: how many Lightning nodes are hosted in countries around the world, aggregate BTC capacity for each country, and more.</source>
|
||||
<target>Zeige eine geografische Aufschlüsselung des Lightning-Netzwerks an: Wie viele Lightning-Knoten werden in Ländern auf der ganzen Welt gehostet, die gesamte BTC-Kapazität für jedes Land und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.ts</context>
|
||||
<context context-type="linenumber">47</context>
|
||||
@@ -7579,6 +7642,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-country" datatype="html">
|
||||
<source>Explore all the Lightning nodes hosted in <x id="PH" equiv-text="response.country.en"/> and see an overview of each node's capacity, number of open channels, and more.</source>
|
||||
<target>Erkunde alle Lightning-Knoten, die in <x id="PH" equiv-text="response.country.en"/> gehostet werden, und sehe einen Überblick über die Kapazität jedes Knotens, die Anzahl der offenen Kanäle und mehr an.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-per-country/nodes-per-country.component.ts</context>
|
||||
<context context-type="linenumber">36</context>
|
||||
@@ -7729,6 +7793,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-isp" datatype="html">
|
||||
<source>Browse all Bitcoin Lightning nodes using the <x id="PH" equiv-text="response.isp"/> [AS<x id="PH_1" equiv-text="this.route.snapshot.params.isp"/>] ISP and see aggregate stats like total number of nodes, total capacity, and more for the ISP.</source>
|
||||
<target>Durchsuche alle Bitcoin Lightning-Knoten, die den <x id="PH" equiv-text="response.isp"/> [AS <x id="PH_1" equiv-text="this.route.snapshot.params.isp"/>] ISP verwenden, und sehe aggregierte Statistiken wie die Gesamtzahl der Knoten, die Gesamtkapazität und mehr für den ISP.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.ts</context>
|
||||
<context context-type="linenumber">45</context>
|
||||
@@ -7784,6 +7849,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.ranking.oldest" datatype="html">
|
||||
<source>See the oldest nodes on the Lightning network along with their capacity, number of channels, location, etc.</source>
|
||||
<target>Zeige die ältesten Knoten im Lightning-Netzwerk zusammen mit ihrer Kapazität, Anzahl der Kanäle, Standort usw.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-ranking/oldest-nodes/oldest-nodes.component.ts</context>
|
||||
<context context-type="linenumber">28</context>
|
||||
@@ -7791,6 +7857,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.ranking.liquidity" datatype="html">
|
||||
<source>See Lightning nodes with the most BTC liquidity deployed along with high-level stats like number of open channels, location, node age, and more.</source>
|
||||
<target>Zeige die Lightning-Knoten mit der höchsten bereitgestellten BTC-Liquidität sowie allgemeine Statistiken wie die Anzahl der offenen Kanäle, Standort, Knotenalter und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts</context>
|
||||
<context context-type="linenumber">34</context>
|
||||
@@ -7798,6 +7865,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.ranking.channels" datatype="html">
|
||||
<source>See Lightning nodes with the most channels open along with high-level stats like total node capacity, node age, and more.</source>
|
||||
<target>Zeige die Lightning-Knoten mit den meisten offenen Kanälen sowie allgemeine Statistiken wie die Gesamtknotenkapazität, das Knotenalter und mehr.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.ts</context>
|
||||
<context context-type="linenumber">38</context>
|
||||
@@ -7822,6 +7890,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.rankings-dashboard" datatype="html">
|
||||
<source>See top the Lightning network nodes ranked by liquidity, connectivity, and age.</source>
|
||||
<target>Zeige die besten Lightning-Netzwerkknoten an, sortiert nach Liquidität, Konnektivität und Alter.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">23</context>
|
||||
@@ -7829,6 +7898,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.stats-chart" datatype="html">
|
||||
<source>See the capacity of the Lightning network visualized over time in terms of the number of open channels and total bitcoin capacity.</source>
|
||||
<target>Zeige die Kapazität des Lightning-Netzwerks im Zeitverlauf anhand der Anzahl offener Kanäle und der gesamten Bitcoin-Kapazität.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -7836,6 +7906,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8e623d3cfecb7c560c114390db53c1f430ffd0de" datatype="html">
|
||||
<source><x id="INTERPOLATION" equiv-text="{{ i }}"/> confirmation</source>
|
||||
<target><x id="INTERPOLATION" equiv-text="{{ i }}"/> Bestätigung</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">4</context>
|
||||
@@ -7845,6 +7916,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="bc5b0a2631f0b7bc71aaec6aa6f01af21f9a80d4" datatype="html">
|
||||
<source><x id="INTERPOLATION" equiv-text="{{ i }}"/> confirmations</source>
|
||||
<target><x id="INTERPOLATION" equiv-text="{{ i }}"/> Bestätigungen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">5</context>
|
||||
@@ -7854,6 +7926,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a001c3d27d5fe4a7a362a6089b5b5020ef8c1c95" datatype="html">
|
||||
<source>Replaced</source>
|
||||
<target>Ersetzt</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">12</context>
|
||||
@@ -7863,6 +7936,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="58fbcd58e305ab289b99fad67d223f3e83ddb755" datatype="html">
|
||||
<source>Removed</source>
|
||||
<target>Entfernt</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">15</context>
|
||||
@@ -7882,6 +7956,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="57a6f49237ac457ecc67fabdf1361a112ccdbf93" datatype="html">
|
||||
<source>sat/WU</source>
|
||||
<target>sat/WU</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/fee-rate/fee-rate.component.html</context>
|
||||
<context context-type="linenumber">3</context>
|
||||
@@ -7891,6 +7966,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="5ce2bda884ea801c34a1a6c23627d9a5e08f0a82" datatype="html">
|
||||
<source>My Account</source>
|
||||
<target>Mein Account</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">25</context>
|
||||
@@ -7903,6 +7979,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ba4f24bf9bf3dc4db3d6bc1b8b63339295f0b806" datatype="html">
|
||||
<source>Sign In</source>
|
||||
<target>Anmelden</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">26</context>
|
||||
@@ -7915,6 +7992,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="1773b1dad3e4b72bca77621985366b9e6a92ae28" datatype="html">
|
||||
<source>Explore</source>
|
||||
<target>Erkunden</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">41</context>
|
||||
@@ -7923,6 +8001,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="52dd0ddd9ab3ea7caafcb4d6ac95e9459ef635f5" datatype="html">
|
||||
<source>Connect to our Nodes</source>
|
||||
<target>Verbinden mit unseren Nodes</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">46</context>
|
||||
@@ -7931,6 +8010,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="1cd6dc07ed789f4013d299b031200224977cbb8b" datatype="html">
|
||||
<source>API Documentation</source>
|
||||
<target>API-Dokumentation</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">47</context>
|
||||
@@ -7939,6 +8019,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="04dfb6eb5a67d7fa19fb24f0e50324ea63fd8f08" datatype="html">
|
||||
<source>Learn</source>
|
||||
<target>Lernen</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">50</context>
|
||||
@@ -7947,6 +8028,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="14f76d294f3ae892e8033d60bb960701cafca66f" datatype="html">
|
||||
<source>What is a mempool?</source>
|
||||
<target>Was ist ein Mempool?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -7955,6 +8037,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8ac787087e3eec254d15a4e16492f8877107087b" datatype="html">
|
||||
<source>What is a block explorer?</source>
|
||||
<target>Was ist ein Block-Explorer?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -7963,6 +8046,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="0ab3729578bb613995fc5c90c4d7aa45588dd2a1" datatype="html">
|
||||
<source>What is a mempool explorer?</source>
|
||||
<target>Was ist ein Mempool-Explorer?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">53</context>
|
||||
@@ -7971,6 +8055,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8fe988a9cb02c11f99631ca85721d34d67fc32ff" datatype="html">
|
||||
<source>Why isn't my transaction confirming?</source>
|
||||
<target>Warum wird meine Transaktion nicht bestätigt?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">54</context>
|
||||
@@ -7979,6 +8064,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="03f766a5a2abdbfbdcc2b6135691b9fb1f2ed530" datatype="html">
|
||||
<source>More FAQs »</source>
|
||||
<target>Weitere FAQs »</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">55</context>
|
||||
@@ -7987,6 +8073,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="7a1c82a943fc99d3080aeffeeb7d21f0726ad8cc" datatype="html">
|
||||
<source>Networks</source>
|
||||
<target>Netzwerke</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -7995,6 +8082,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="f96488094a57809ea9bfe4a2f2bf91af66a0d0a3" datatype="html">
|
||||
<source>Mainnet Explorer</source>
|
||||
<target>Mainnet-Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
@@ -8003,6 +8091,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a31347c0f3ec966c373229584cfb7bd6725a0e64" datatype="html">
|
||||
<source>Testnet Explorer</source>
|
||||
<target>Testnet-Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">61</context>
|
||||
@@ -8011,6 +8100,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c9bf4b5d16994e42297cbe174e831a7edd9cfe72" datatype="html">
|
||||
<source>Signet Explorer</source>
|
||||
<target>Signet-Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">62</context>
|
||||
@@ -8019,6 +8109,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c127ef3218deed36fb86af83def0b54846f92252" datatype="html">
|
||||
<source>Liquid Testnet Explorer</source>
|
||||
<target>Liquid-Testnet-Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">63</context>
|
||||
@@ -8027,6 +8118,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="3c07f1c84d76a9999153e87343fd642852bb6d34" datatype="html">
|
||||
<source>Liquid Explorer</source>
|
||||
<target>Liquid-Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">64</context>
|
||||
@@ -8035,6 +8127,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="16e770142bcac84dce7dfb9840d11961ee87ae6c" datatype="html">
|
||||
<source>Bisq Explorer</source>
|
||||
<target>Bisq-Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">65</context>
|
||||
@@ -8043,6 +8136,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="fefee13017c2b85143cd131ee253e327a14053a0" datatype="html">
|
||||
<source>Tools</source>
|
||||
<target>Werkzeuge</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">69</context>
|
||||
@@ -8051,6 +8145,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8c23995422ac012b80a2369a878b199c39271906" datatype="html">
|
||||
<source>Clock (Mined)</source>
|
||||
<target>Uhr (Mined)</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">71</context>
|
||||
@@ -8059,6 +8154,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="9a91783e9c0f790ed49edae730f9156070ed9dd5" datatype="html">
|
||||
<source>Legal</source>
|
||||
<target>Rechtliches</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">76</context>
|
||||
@@ -8087,6 +8183,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="6a0a8485405b9b289101e52a46e282342c8dc9e0" datatype="html">
|
||||
<source>Trademark Policy</source>
|
||||
<target>Markenrichtlinie</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">79</context>
|
||||
@@ -8096,6 +8193,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="64dd13424d9486cf3d680d934987ec685bac0b3d" datatype="html">
|
||||
<source>This is a test network. Coins have no value.</source>
|
||||
<target>Dies ist ein Testnetzwerk. Coins haben keinen Wert.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/testnet-alert/testnet-alert.component.html</context>
|
||||
<context context-type="linenumber">3</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ngb.progressbar.value" datatype="html">
|
||||
<source><x id="INTERPOLATION"/></source>
|
||||
<target><x id="INTERPOLATION"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">node_modules/src/ngb-config.ts</context>
|
||||
<context context-type="linenumber">13</context>
|
||||
@@ -66,6 +67,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ngb.carousel.slide-number" datatype="html">
|
||||
<source> Slide <x id="INTERPOLATION"/> of <x id="INTERPOLATION_1"/> </source>
|
||||
<target> Diapositive <x id="INTERPOLATION"/> de <x id="INTERPOLATION_1"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">node_modules/src/ngb-config.ts</context>
|
||||
<context context-type="linenumber">13</context>
|
||||
@@ -404,6 +406,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.address" datatype="html">
|
||||
<source>See current balance, pending transactions, and history of confirmed transactions for BSQ address <x id="INTERPOLATION" equiv-text="this.addressString"/>.</source>
|
||||
<target>Consultez le solde actuel, les transactions en attente et l'historique des transactions confirmées pour l'adresse BSQ <x id="INTERPOLATION" equiv-text="this.addressString"/>.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-address/bisq-address.component.ts</context>
|
||||
<context context-type="linenumber">44</context>
|
||||
@@ -500,6 +503,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.block" datatype="html">
|
||||
<source>See all BSQ transactions in Bitcoin block <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (block hash <x id="BLOCK_HASH" equiv-text="block.hash"/>).</source>
|
||||
<target>Voir toutes les transactions BSQ dans le bloc Bitcoin <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (hachage de bloc <x id="BLOCK_HASH" equiv-text="block.hash"/>).</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-block/bisq-block.component.ts</context>
|
||||
<context context-type="linenumber">92</context>
|
||||
@@ -627,6 +631,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.blocks" datatype="html">
|
||||
<source>See a list of recent Bitcoin blocks with BSQ transactions, total BSQ sent per block, and more.</source>
|
||||
<target>Consultez une liste des blocs Bitcoin récents avec des transactions BSQ, le nombre total de BSQ envoyés par bloc, et plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-blocks/bisq-blocks.component.ts</context>
|
||||
<context context-type="linenumber">39</context>
|
||||
@@ -756,6 +761,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.bisq.markets" datatype="html">
|
||||
<source>Markets</source>
|
||||
<target>Marchés</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-dashboard/bisq-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">32</context>
|
||||
@@ -763,6 +769,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.markets" datatype="html">
|
||||
<source>Explore the full Bitcoin ecosystem with The Mempool Open Source Project™. See Bisq market prices, trading activity, and more.</source>
|
||||
<target>Explorez l'intégralité de l'écosystème Bitcoin avec The Mempool Open Source Project™. Consultez les prix du marché Bisq, l’activité d'échange et bien plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-dashboard/bisq-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">33</context>
|
||||
@@ -848,6 +855,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.bisq.market" datatype="html">
|
||||
<source>Bisq market: <x id="PH" equiv-text="pairUpperCase"/></source>
|
||||
<target>Marché Bisq : <x id="PH" equiv-text="pairUpperCase"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-market/bisq-market.component.ts</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -855,6 +863,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.market" datatype="html">
|
||||
<source>See price history, current buy/sell offers, and latest trades for the <x id="PH" equiv-text="pairUpperCase"/> market on Bisq.</source>
|
||||
<target>Consultez l'historique des prix, les offres d'achat/vente en cours et les dernières transactions du marché <x id="PH" equiv-text="pairUpperCase"/> sur Bisq.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-market/bisq-market.component.ts</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -990,6 +999,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.stats" datatype="html">
|
||||
<source>See high-level stats on the BSQ economy: supply metrics, number of addresses, BSQ price, market cap, and more.</source>
|
||||
<target>Consultez des statistiques de haut niveau sur l'économie BSQ : mesures d'approvisionnement, nombre d'adresses, prix du BSQ, capitalisation boursière, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-stats/bisq-stats.component.ts</context>
|
||||
<context context-type="linenumber">29</context>
|
||||
@@ -1169,6 +1179,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="d21fcec8ace7941d2bf7c822ce2003cdd9ecff43" datatype="html">
|
||||
<source>Fee per weight unit</source>
|
||||
<target>Tarif par unité de poids</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-transaction/bisq-transaction.component.html</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
@@ -1237,6 +1248,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.transaction" datatype="html">
|
||||
<source>See inputs, outputs, transaction type, burnt amount, and more for transaction with txid <x id="INTERPOLATION" equiv-text="this.txId"/>.</source>
|
||||
<target>Consultez les entrées, les sorties, le type de transaction, le montant brûlé et plus encore pour la transaction avec le txid <x id="INTERPOLATION" equiv-text="this.txId"/>.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-transaction/bisq-transaction.component.ts</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -1426,6 +1438,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bisq.transactions" datatype="html">
|
||||
<source>See recent BSQ transactions: amount, txid, associated Bitcoin block, transaction type, and more.</source>
|
||||
<target>Consultez les transactions BSQ récentes : montant, txid, bloc Bitcoin associé, type de transaction, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/bisq/bisq-transactions/bisq-transactions.component.ts</context>
|
||||
<context context-type="linenumber">82</context>
|
||||
@@ -1466,6 +1479,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="9bada74bc2b36480a6db8734d56a2b89135de590" datatype="html">
|
||||
<source>Become a Community Sponsor</source>
|
||||
<target>Devenez un sponsor communautaire</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/about/about.component.html</context>
|
||||
<context context-type="linenumber">39</context>
|
||||
@@ -1474,6 +1488,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="bef4c03ebfa29b890665fbcf6bf097b9ae29a91e" datatype="html">
|
||||
<source>Become an Enterprise Sponsor</source>
|
||||
<target>Devenez sponsor d’entreprise</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/about/about.component.html</context>
|
||||
<context context-type="linenumber">46</context>
|
||||
@@ -1491,6 +1506,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="299789f4d4817ccf915f6a5b0e48c093b646b079" datatype="html">
|
||||
<source>Whale Sponsors</source>
|
||||
<target>Sponsors Whale</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/about/about.component.html</context>
|
||||
<context context-type="linenumber">202</context>
|
||||
@@ -1499,6 +1515,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="2dca632c813555d7153785d4b6d25cc0f04d6bcd" datatype="html">
|
||||
<source>Chad Sponsors</source>
|
||||
<target>Sponsors Chad</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/about/about.component.html</context>
|
||||
<context context-type="linenumber">215</context>
|
||||
@@ -1507,6 +1524,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="0a441237b27eaeacbeba376cabd33921fa4bb2d6" datatype="html">
|
||||
<source>OG Sponsors ❤️</source>
|
||||
<target>Sponsors OG ❤️</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/about/about.component.html</context>
|
||||
<context context-type="linenumber">228</context>
|
||||
@@ -1589,6 +1607,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.about" datatype="html">
|
||||
<source>Learn more about The Mempool Open Source Project®: enterprise sponsors, individual sponsors, integrations, who contributes, FOSS licensing, and more.</source>
|
||||
<target>Apprenez-en davantage à propos de The Mempool Open Source Project® : sponsors d'entreprise, sponsors individuels, intégrations, qui contribue, licences FOSS, et bien plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/about/about.component.ts</context>
|
||||
<context context-type="linenumber">46</context>
|
||||
@@ -1819,6 +1838,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.address" datatype="html">
|
||||
<source>See mempool transactions, confirmed transactions, balance, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> address <x id="INTERPOLATION" equiv-text="this.addressString"/>.</source>
|
||||
<target>Consultez les transactions mempool, les transactions confirmées, le solde et bien plus encore pour l'adresse <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/> <x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> <x id="INTERPOLATION" equiv-text="this.addressString"/>.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/address/address-preview.component.ts</context>
|
||||
<context context-type="linenumber">72</context>
|
||||
@@ -2085,6 +2105,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
@@ -2110,6 +2134,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.liquid.assets" datatype="html">
|
||||
<source>Explore all the assets issued on the Liquid network like L-BTC, L-CAD, USDT, and more.</source>
|
||||
<target>Explorez tous les actifs émis sur le réseau Liquid comme L-BTC, L-CAD, USDT, et plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/assets/assets-nav/assets-nav.component.ts</context>
|
||||
<context context-type="linenumber">43</context>
|
||||
@@ -2272,6 +2297,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.block-fee-rates" datatype="html">
|
||||
<source>See Bitcoin feerates visualized over time, including minimum and maximum feerates per block along with feerates at various percentiles.</source>
|
||||
<target>Consultez les tarifs Bitcoin visualisés au fil du temps, y compris les tarifs minimum et maximum par bloc ainsi que les tarifs à différents centiles.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -2328,6 +2354,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.block-fees" datatype="html">
|
||||
<source>See the average mining fees earned per Bitcoin block visualized in BTC and USD over time.</source>
|
||||
<target>Consultez les frais de minage moyens gagnés par bloc Bitcoin visualisés en BTC et en USD au fil du temps.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-fees-graph/block-fees-graph.component.ts</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
@@ -2371,6 +2398,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="b1fa5b210c9670d49a6506f046d4a0c2797fd402" datatype="html">
|
||||
<source>Block Health</source>
|
||||
<target>Santé de bloc</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-health-graph/block-health-graph.component.html</context>
|
||||
<context context-type="linenumber">6</context>
|
||||
@@ -2383,6 +2411,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="d7d5fcf50179ad70c938491c517efb82de2c8146" datatype="html">
|
||||
<source>Block Health</source>
|
||||
<target>Santé de bloc</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-health-graph/block-health-graph.component.ts</context>
|
||||
<context context-type="linenumber">63</context>
|
||||
@@ -2390,6 +2419,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.block-health" datatype="html">
|
||||
<source>See Bitcoin block health visualized over time. Block health is a measure of how many expected transactions were included in an actual mined block. Expected transactions are determined using Mempool's re-implementation of Bitcoin Core's transaction selection algorithm.</source>
|
||||
<target>Voir la santé des blocs Bitcoin visualisée au fil du temps. La santé d'un bloc est une mesure du nombre de transactions attendues incluses dans un bloc réellement trouvé. Les transactions attendues sont déterminées à l'aide de la ré-implémentation par Mempool de l'algorithme de sélection de transactions de Bitcoin Core.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-health-graph/block-health-graph.component.ts</context>
|
||||
<context context-type="linenumber">64</context>
|
||||
@@ -2421,6 +2451,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="2041675390931385838" datatype="html">
|
||||
<source>Health</source>
|
||||
<target>Santé</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-health-graph/block-health-graph.component.ts</context>
|
||||
<context context-type="linenumber">190</context>
|
||||
@@ -2511,6 +2542,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a85400ca5aa86c938188f02b5fca2757d20b46ad" datatype="html">
|
||||
<source>Accelerated fee rate</source>
|
||||
<target>Tarif accéléré</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-overview-tooltip/block-overview-tooltip.component.html</context>
|
||||
<context context-type="linenumber">33</context>
|
||||
@@ -2542,6 +2574,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="13f5a75f3e01e5924e45052d2f336eda8bac37e8" datatype="html">
|
||||
<source>Weight</source>
|
||||
<target>Poids</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-overview-tooltip/block-overview-tooltip.component.html</context>
|
||||
<context context-type="linenumber">43</context>
|
||||
@@ -2599,6 +2632,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="42795e8b4dc68e08fbf27cf2f7e724bbc2930610" datatype="html">
|
||||
<source>High sigop count</source>
|
||||
<target>Nombre élevé de sigops</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-overview-tooltip/block-overview-tooltip.component.html</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -2616,6 +2650,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c9b422e0850708663a9748e778a9d6feb4d6394e" datatype="html">
|
||||
<source>Recently CPFP'd</source>
|
||||
<target>Récemment CPFP</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-overview-tooltip/block-overview-tooltip.component.html</context>
|
||||
<context context-type="linenumber">54</context>
|
||||
@@ -2633,6 +2668,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="136c04d97155209abbe3f2535bcf5cf32f91b465" datatype="html">
|
||||
<source>Conflicting</source>
|
||||
<target>Contradictoire</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-overview-tooltip/block-overview-tooltip.component.html</context>
|
||||
<context context-type="linenumber">57</context>
|
||||
@@ -2641,6 +2677,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="b484583f0ce10f3341ab36750d05271d9d22c9a1" datatype="html">
|
||||
<source>Accelerated</source>
|
||||
<target>Accéléré</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-overview-tooltip/block-overview-tooltip.component.html</context>
|
||||
<context context-type="linenumber">58</context>
|
||||
@@ -2666,6 +2703,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.block-rewards" datatype="html">
|
||||
<source>See Bitcoin block rewards in BTC and USD visualized over time. Block rewards are the total funds miners earn from the block subsidy and fees.</source>
|
||||
<target>Consultez les récompenses des blocs Bitcoin en BTC et en USD visualisées au fil du temps. Les récompenses globales correspondent au total des fonds que les mineurs gagnent grâce à la récompense de bloc et aux frais.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-rewards-graph/block-rewards-graph.component.ts</context>
|
||||
<context context-type="linenumber">66</context>
|
||||
@@ -2690,6 +2728,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.block-sizes" datatype="html">
|
||||
<source>See Bitcoin block sizes (MB) and block weights (weight units) visualized over time.</source>
|
||||
<target>Consultez la taille des blocs Bitcoin (Mo) et le poids des blocs (unités de poids) visualisés au fil du temps.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts</context>
|
||||
<context context-type="linenumber">63</context>
|
||||
@@ -2805,6 +2844,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.liquid.block" datatype="html">
|
||||
<source>See size, weight, fee range, included transactions, and more for Liquid<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> block <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (<x id="BLOCK_ID" equiv-text="block.id"/>).</source>
|
||||
<target>Consultez la taille, le poids, la fourchette de frais, les transactions incluses et bien plus encore pour le bloc Liquid<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (<x id="BLOCK_ID" equiv-text="block.id"/>).</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-view/block-view.component.ts</context>
|
||||
<context context-type="linenumber">112</context>
|
||||
@@ -2820,6 +2860,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.block" datatype="html">
|
||||
<source>See size, weight, fee range, included transactions, audit (expected v actual), and more for Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> block <x id="BLOCK_HEIGHT" equiv-text="block.height"/> (<x id="BLOCK_ID" equiv-text="block.id"/>).</source>
|
||||
<target>Consultez la taille, le poids, la fourchette de frais, les transactions incluses, l'audit (attendu et réel) et bien plus encore pour le bloc Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> <x id="BLOCK_HEIGHT" equiv-text="block.height"/> ( <x id="BLOCK_ID" equiv-text="block.id"/>).</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block-view/block-view.component.ts</context>
|
||||
<context context-type="linenumber">114</context>
|
||||
@@ -2908,6 +2949,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="e170a90ee0d3a604adf439a60c890caff9152466" datatype="html">
|
||||
<source>This block does not belong to the main chain, it has been replaced by:</source>
|
||||
<target>Ce bloc n'appartient pas à la chaîne principale, il a été remplacé par :</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block/block.component.html</context>
|
||||
<context context-type="linenumber">5</context>
|
||||
@@ -2943,6 +2985,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="0dc973e4853621b49d9e31be902a0680334f632d" datatype="html">
|
||||
<source>Stale</source>
|
||||
<target>Vicié</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/block/block.component.html</context>
|
||||
<context context-type="linenumber">30</context>
|
||||
@@ -3408,6 +3451,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="m8a7b4bd44c0ac71b2e72de0398b303257f7d2f54" datatype="html">
|
||||
<source>Blocks</source>
|
||||
<target>Blocs</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/blocks-list/blocks-list.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -3415,6 +3459,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.liquid.blocks" datatype="html">
|
||||
<source>See the most recent Liquid<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> blocks along with basic stats such as block height, block size, and more.</source>
|
||||
<target>Consultez les blocs Liquid<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> les plus récents ainsi que les statistiques de base telles que la hauteur et la taille des blocs, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/blocks-list/blocks-list.component.ts</context>
|
||||
<context context-type="linenumber">62</context>
|
||||
@@ -3422,6 +3467,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.blocks" datatype="html">
|
||||
<source>See the most recent Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> blocks along with basic stats such as block height, block reward, block size, and more.</source>
|
||||
<target>Consultez les blocs Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> les plus récents ainsi que les statistiques de base telles que la hauteur du bloc, la récompense du bloc, la taille du bloc, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/blocks-list/blocks-list.component.ts</context>
|
||||
<context context-type="linenumber">64</context>
|
||||
@@ -3429,6 +3475,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="cf8caac4de0166eae6cd0fdfd010ee92b995cd96" datatype="html">
|
||||
<source>Calculator</source>
|
||||
<target>Calculatrice</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/calculator/calculator.component.html</context>
|
||||
<context context-type="linenumber">3</context>
|
||||
@@ -3466,6 +3513,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="b7dde2cf8ec2fcd328295c9c7fcc944c4d3720b6" datatype="html">
|
||||
<source>Memory Usage</source>
|
||||
<target>Utilisation de mémoire</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/clock/clock.component.html</context>
|
||||
<context context-type="linenumber">65</context>
|
||||
@@ -3545,6 +3593,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="1bb6965f8e1bbe40c076528ffd841da86f57f119" datatype="html">
|
||||
<source><x id="INTERPOLATION" equiv-text="<span class="shared-block">blocks</span></ng-template> <ng-"/> <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span class="shared-block">"/>blocks<x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/></source>
|
||||
<target><x id="INTERPOLATION" equiv-text="<span class="shared-block">blocks</span></ng-template> <ng-"/> <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span class="shared-block">"/>blocs<x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/difficulty-mining/difficulty-mining.component.html</context>
|
||||
<context context-type="linenumber">10,11</context>
|
||||
@@ -3848,6 +3897,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="93168b4de564d2c5d21d67cf2fb263f27b45e4c8" datatype="html">
|
||||
<source>WU/s</source>
|
||||
<target>UE/s</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/footer/footer.component.html</context>
|
||||
<context context-type="linenumber">14</context>
|
||||
@@ -4068,6 +4118,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.hashrate" datatype="html">
|
||||
<source>See hashrate and difficulty for the Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.network)"/> network visualized over time.</source>
|
||||
<target>Consultez le taux de hachage et la difficulté du réseau Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.network)"/> visualisés au fil du temps.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/hashrate-chart/hashrate-chart.component.ts</context>
|
||||
<context context-type="linenumber">75</context>
|
||||
@@ -4175,6 +4226,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.mempool-block" datatype="html">
|
||||
<source>See stats for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> transactions in the mempool: fee range, aggregate size, and more. Mempool blocks are updated in real-time as the network receives new transactions.</source>
|
||||
<target>Consultez les statistiques des transactions <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> dans la mempool: plage de frais, taille globale, etc. Les blocs mempool sont mis à jour en temps réel à mesure que le réseau reçoit de nouvelles transactions.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/mempool-block/mempool-block.component.ts</context>
|
||||
<context context-type="linenumber">58</context>
|
||||
@@ -4198,6 +4250,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8177873832400820695" datatype="html">
|
||||
<source>Count</source>
|
||||
<target>Compter</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/mempool-graph/mempool-graph.component.ts</context>
|
||||
<context context-type="linenumber">325</context>
|
||||
@@ -4225,6 +4278,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="287d3301a32a65a1b31116bda5d3a6463158c42a" datatype="html">
|
||||
<source>Sign in</source>
|
||||
<target>Se connecter</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/menu/menu.component.html</context>
|
||||
<context context-type="linenumber">10</context>
|
||||
@@ -4251,6 +4305,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="93ce500c36b94b52219495ae1491efc2fca40cb6" datatype="html">
|
||||
<source>Recent Blocks</source>
|
||||
<target>Blocs récents</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/mining-dashboard/mining-dashboard.component.html</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -4276,6 +4331,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.mining.dashboard" datatype="html">
|
||||
<source>Get real-time Bitcoin mining stats like hashrate, difficulty adjustment, block rewards, pool dominance, and more.</source>
|
||||
<target>Obtenez des statistiques minières Bitcoin en temps réel telles que le taux de hachage, l'ajustement de la difficulté, les récompenses de bloc, la domination du pool, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/mining-dashboard/mining-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">21</context>
|
||||
@@ -4292,6 +4348,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="4e338e7daa64c7a074cee3824fbd7425e5b7c9a5" datatype="html">
|
||||
<source>Pools Luck</source>
|
||||
<target>Chance dans les piscines</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
@@ -4322,6 +4379,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ade0bf412a0fae1e4672505fc1fa79ade185db05" datatype="html">
|
||||
<source>Pools Count</source>
|
||||
<target>Nombre de piscines</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.html</context>
|
||||
<context context-type="linenumber">17</context>
|
||||
@@ -4436,6 +4494,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="5d680aaa8e24bb235cf4fbeff3df0bfc8e2f564e" datatype="html">
|
||||
<source>Empty Blocks</source>
|
||||
<target>Blocs vides</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.html</context>
|
||||
<context context-type="linenumber">98</context>
|
||||
@@ -4461,6 +4520,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.pool-ranking" datatype="html">
|
||||
<source>See the top Bitcoin mining pools ranked by number of blocks mined, over your desired timeframe.</source>
|
||||
<target>Consultez les meilleurs pools de minage Bitcoin classés par nombre de blocs extraits, sur la période souhaitée.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool-ranking/pool-ranking.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -4550,6 +4610,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.mining.pool" datatype="html">
|
||||
<source>See mining pool stats for <x id="PH" equiv-text="poolStats.pool.name"/>: most recent mined blocks, hashrate over time, total block reward to date, known coinbase addresses, and more.</source>
|
||||
<target>Consultez les statistiques de la pool de minage <x id="PH" equiv-text="poolStats.pool.name"/> : les blocs extraits les plus récents, le taux de hachage au fil du temps, la récompense totale du bloc à ce jour, les adresses coinbase connues, et plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool/pool-preview.component.ts</context>
|
||||
<context context-type="linenumber">86</context>
|
||||
@@ -4616,6 +4677,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="3dc78651b2810cbb6e830fe7e57499d8cf6a8e4d" datatype="html">
|
||||
<source>Blocks (24h)</source>
|
||||
<target>Blocs (24h)</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">146</context>
|
||||
@@ -4730,6 +4792,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.push-tx" datatype="html">
|
||||
<source>Broadcast Transaction</source>
|
||||
<target>Transaction de diffusion</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/push-transaction/push-transaction.component.ts</context>
|
||||
<context context-type="linenumber">31</context>
|
||||
@@ -4737,6 +4800,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.push-tx" datatype="html">
|
||||
<source>Broadcast a transaction to the <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> network using the transaction's hash.</source>
|
||||
<target>Diffusez une transaction sur le réseau <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> en utilisant le hachage de la transaction.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/push-transaction/push-transaction.component.ts</context>
|
||||
<context context-type="linenumber">32</context>
|
||||
@@ -4744,6 +4808,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="5e3d5a82750902f159122fcca487b07f1af3141f" datatype="html">
|
||||
<source>RBF Replacements</source>
|
||||
<target>Remplacements RBF</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">2</context>
|
||||
@@ -4756,6 +4821,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8a9b3afe9486474f0d7767605fe99af99c8ea430" datatype="html">
|
||||
<source>Full RBF</source>
|
||||
<target>RBF complet</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">24</context>
|
||||
@@ -4772,6 +4838,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c88914ee712e3ab5ad5f88de8a6ed12050919ccb" datatype="html">
|
||||
<source>There are no replacements in the mempool yet!</source>
|
||||
<target>Il n'y a pas encore de remplaçants dans le pool de mémoire !</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">34</context>
|
||||
@@ -4780,6 +4847,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.rbf-list" datatype="html">
|
||||
<source>See the most recent RBF replacements on the Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> network, updated in real-time.</source>
|
||||
<target>Découvrez les remplacements RBF les plus récents sur le réseau Bitcoin<x id="PH" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>, mis à jour en temps réel.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -4825,6 +4893,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="aa28c3afcb8b1a556fc1e1842e48a57f24fd643f" datatype="html">
|
||||
<source>Status</source>
|
||||
<target>Statut</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-timeline/rbf-timeline-tooltip.component.html</context>
|
||||
<context context-type="linenumber">33</context>
|
||||
@@ -4842,6 +4911,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="eb3b032a755fc367f7f6e957d0c7dc9d6db49464" datatype="html">
|
||||
<source>RBF</source>
|
||||
<target>FBR</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-timeline/rbf-timeline-tooltip.component.html</context>
|
||||
<context context-type="linenumber">36</context>
|
||||
@@ -5061,6 +5131,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="d0e134a0886ae71207e912575d226525062b62f1" datatype="html">
|
||||
<source>Clock (Mempool)</source>
|
||||
<target>Horloge (Mempool)</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">17</context>
|
||||
@@ -5113,6 +5184,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="68d44b7bd049ae93c2bc15973eb5266aec64693e" datatype="html">
|
||||
<source>Cap outliers</source>
|
||||
<target>Valeurs aberrantes du plafond</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">122</context>
|
||||
@@ -5121,6 +5193,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.graphs.mempool" datatype="html">
|
||||
<source>See mempool size (in MvB) and transactions per second (in vB/s) visualized over time.</source>
|
||||
<target>Voir la taille de la mempool (en MvB) et les transactions par seconde (en vB/s) visualisées au fil du temps.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -5128,6 +5201,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.tv" datatype="html">
|
||||
<source>See Bitcoin blocks and mempool congestion in real-time in a simplified format perfect for a TV.</source>
|
||||
<target>Visualisez les blocs Bitcoin et la congestion de la mempool en temps réel dans un format simplifié parfait pour une TV.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/television/television.component.ts</context>
|
||||
<context context-type="linenumber">40</context>
|
||||
@@ -5340,6 +5414,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.transaction" datatype="html">
|
||||
<source>Get real-time status, addresses, fees, script info, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> transaction with txid {txid}.</source>
|
||||
<target>Obtenez le statut en temps réel, les adresses, les frais, les informations sur le script et bien plus encore pour cette transaction <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/>.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction-preview.component.ts</context>
|
||||
<context context-type="linenumber">91</context>
|
||||
@@ -5381,6 +5456,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="913e89d2d1ae354079cccf48b3d3f4ebf2e74080" datatype="html">
|
||||
<source>Accelerate</source>
|
||||
<target>Accélérer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">123</context>
|
||||
@@ -5418,6 +5494,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="03721a62015a76e794be64ba2b7e053e801215ea" datatype="html">
|
||||
<source>RBF History</source>
|
||||
<target>Historique RBF</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">218</context>
|
||||
@@ -5489,6 +5566,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a8a4dd861f790141e19f773153cf42b5d0b0e6b6" datatype="html">
|
||||
<source>Adjusted vsize</source>
|
||||
<target>Taille ajustée</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">298</context>
|
||||
@@ -5507,6 +5585,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="3dd65e8fa7035988a691aadcb583862c2a9e336a" datatype="html">
|
||||
<source>Sigops</source>
|
||||
<target>Sigops</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">320</context>
|
||||
@@ -5534,6 +5613,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8b01e0411c7160bfee109e504c84ecee5079c326" datatype="html">
|
||||
<source>Accelerated fee rate</source>
|
||||
<target>Tarif accéléré</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction.component.html</context>
|
||||
<context context-type="linenumber">516</context>
|
||||
@@ -5889,6 +5969,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="4fe744df6d36b5e9b0afab728b77fc635b99f040" datatype="html">
|
||||
<source>Recent Replacements</source>
|
||||
<target>Remplacements récents</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">79</context>
|
||||
@@ -5897,6 +5978,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="23c872b0336e20284724607f2887da39bd8142c3" datatype="html">
|
||||
<source>Previous fee</source>
|
||||
<target>Frais antérieurs</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">86</context>
|
||||
@@ -5905,6 +5987,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="df33bef035883b7afeb388977087f99ab5a54409" datatype="html">
|
||||
<source>New fee</source>
|
||||
<target>Nouveaux frais</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">87</context>
|
||||
@@ -5913,6 +5996,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="aa6ce7e6e6fe5cd080713965451f25bca15a2a25" datatype="html">
|
||||
<source>Recent Transactions</source>
|
||||
<target>Transactions récentes</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">153</context>
|
||||
@@ -5950,6 +6034,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="9dfdbeb922d811d7b7b3fecd48360a059e52aaba" datatype="html">
|
||||
<source>Incoming Transactions</source>
|
||||
<target>Transactions entrantes</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
|
||||
<context context-type="linenumber">259</context>
|
||||
@@ -5958,6 +6043,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="999bb1a0150c2815a6b4dd64a1850e763603e525" datatype="html">
|
||||
<source><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/><x id="START_BOLD_TEXT" ctype="x-b" equiv-text="mempool.space mer"/>mempool.space merely provides data about the Bitcoin network.<x id="CLOSE_BOLD_TEXT" ctype="x-b" equiv-text="</b>"/> It cannot help you with retrieving funds, wallet issues, etc.<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/>For any such requests, you need to get in touch with the entity that helped make the transaction (wallet software, exchange company, etc).<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/></source>
|
||||
<target><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/><x id="START_BOLD_TEXT" ctype="x-b" equiv-text="mempool.space mer"/>mempool.space fournit simplement des données sur le réseau Bitcoin.<x id="CLOSE_BOLD_TEXT" ctype="x-b" equiv-text="</b>"/> Nous ne pouvons pas vous aider à récupérer des fonds, à résoudre des problèmes de portefeuille, etc.<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/><x id="START_PARAGRAPH" ctype="x-p" equiv-text="For any such requ"/>Pour toute demande de ce type, vous devez contacter l'entité qui a aidé à effectuer la transaction (logiciel de portefeuille, échange, etc.).<x id="CLOSE_PARAGRAPH" ctype="x-p" equiv-text="</p>"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/api-docs/api-docs.component.html</context>
|
||||
<context context-type="linenumber">15,16</context>
|
||||
@@ -6052,6 +6138,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.faq" datatype="html">
|
||||
<source>FAQ</source>
|
||||
<target>FAQ</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">45</context>
|
||||
@@ -6059,6 +6146,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.faq" datatype="html">
|
||||
<source>Get answers to common questions like: What is a mempool? Why isn't my transaction confirming? How can I run my own instance of The Mempool Open Source Project? And more.</source>
|
||||
<target>Obtenez des réponses aux questions courantes telles que : Qu’est-ce qu’une mempool ? Pourquoi ma transaction n'est-elle pas confirmée ? Comment puis-je utiliser ma propre instance du projet Open Source Mempool ? Et plus.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">46</context>
|
||||
@@ -6066,6 +6154,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.rest" datatype="html">
|
||||
<source>REST API</source>
|
||||
<target>API REST</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">49</context>
|
||||
@@ -6073,6 +6162,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.rest-liquid" datatype="html">
|
||||
<source>Documentation for the liquid.network REST API service: get info on addresses, transactions, assets, blocks, and more.</source>
|
||||
<target>Documentation pour le service API REST liquid.network : obtenez des informations sur les adresses, les transactions, les actifs, les blocs, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -6080,6 +6170,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.rest-bisq" datatype="html">
|
||||
<source>Documentation for the bisq.markets REST API service: get info on recent trades, current offers, transactions, network state, and more.</source>
|
||||
<target>Documentation pour le service API REST bisq.markets : obtenez des informations sur les transactions récentes, les offres en cours, les transactions, l'état du réseau, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">53</context>
|
||||
@@ -6087,6 +6178,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.rest-bitcoin" datatype="html">
|
||||
<source>Documentation for the mempool.space REST API service: get info on addresses, transactions, blocks, fees, mining, the Lightning network, and more.</source>
|
||||
<target>Documentation pour le service API REST mempool.space : obtenez des informations sur les adresses, les transactions, les blocs, les frais, le minage, le réseau Lightning, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">55</context>
|
||||
@@ -6094,6 +6186,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.websocket" datatype="html">
|
||||
<source>WebSocket API</source>
|
||||
<target>API WebSocket</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -6101,6 +6194,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.websocket-liquid" datatype="html">
|
||||
<source>Documentation for the liquid.network WebSocket API service: get real-time info on blocks, mempools, transactions, addresses, and more.</source>
|
||||
<target>Documentation pour le service API liquid.network WebSocket : obtenez des informations en temps réel sur les blocs, les pools de mémoire, les transactions, les adresses, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">61</context>
|
||||
@@ -6108,6 +6202,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.websocket-bitcoin" datatype="html">
|
||||
<source>Documentation for the mempool.space WebSocket API service: get real-time info on blocks, mempools, transactions, addresses, and more.</source>
|
||||
<target>Documentation pour le service API WebSocket mempool.space : obtenez des informations en temps réel sur les blocs, les pools de mémoire, les transactions, les adresses, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">63</context>
|
||||
@@ -6115,6 +6210,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.title.docs.electrum" datatype="html">
|
||||
<source>Electrum RPC</source>
|
||||
<target>Électrum RPC</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -6122,6 +6218,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.docs.electrumrpc" datatype="html">
|
||||
<source>Documentation for our Electrum RPC interface: get instant, convenient, and reliable access to an Esplora instance.</source>
|
||||
<target>Documentation pour notre interface Electrum RPC : obtenez un accès instantané, pratique et fiable à une instance Esplora.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/docs/docs/docs.component.ts</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
@@ -6434,6 +6531,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.channel" datatype="html">
|
||||
<source>Overview for Lightning channel <x id="PH" equiv-text="params.get('short_id')"/>. See channel capacity, the Lightning nodes involved, related on-chain transactions, and more.</source>
|
||||
<target>Présentation du canal Lightning <x id="PH" equiv-text="params.get('short_id')"/>. Consultez la capacité du canal, les nœuds Lightning impliqués, les transactions en chaîne associées, et bien plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/channel/channel-preview.component.ts</context>
|
||||
<context context-type="linenumber">37</context>
|
||||
@@ -6932,6 +7030,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ec42ed2d917189340598d7993c29b30c7fd32af4" datatype="html">
|
||||
<source>Connect</source>
|
||||
<target>Connecter</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/group/group.component.html</context>
|
||||
<context context-type="linenumber">73</context>
|
||||
@@ -6982,6 +7081,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="34e302a08660d9860dda71e3f350351d34bda498" datatype="html">
|
||||
<source>Penalties</source>
|
||||
<target>Pénalités</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/justice-list/justice-list.component.html</context>
|
||||
<context context-type="linenumber">4</context>
|
||||
@@ -7059,6 +7159,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.dashboard" datatype="html">
|
||||
<source>Get stats on the Lightning network (aggregate capacity, connectivity, etc) and Lightning nodes (channels, liquidity, etc) and Lightning channels (status, fees, etc).</source>
|
||||
<target>Obtenez des statistiques sur le réseau Lightning (capacité globale, connectivité, etc.), les nœuds Lightning (canaux, liquidité, etc.) et les canaux Lightning (statut, frais, etc.).</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">28</context>
|
||||
@@ -7168,6 +7269,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node" datatype="html">
|
||||
<source>Overview for the Lightning network node named <x id="PH" equiv-text="node.alias"/>. See channels, capacity, location, fee stats, and more.</source>
|
||||
<target>Présentation du nœud de réseau Lightning nommé <x id="PH" equiv-text="node.alias"/>. Consultez les chaînes, la capacité, l’emplacement, les statistiques de frais et bien plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/node/node-preview.component.ts</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -7228,6 +7330,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a737eb6814b234b0fd00e81b645b95a396711f15" datatype="html">
|
||||
<source>Decoded</source>
|
||||
<target>Décodé</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/node/node.component.html</context>
|
||||
<context context-type="linenumber">136</context>
|
||||
@@ -7366,6 +7469,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node-map" datatype="html">
|
||||
<source>See the channels of non-Tor Lightning network nodes visualized on a world map. Hover/tap on points on the map for node names and details.</source>
|
||||
<target>Visualisez les canaux des nœuds du réseau non Tor Lightning visualisés sur une carte du monde. Passez la souris/appuyez sur des points sur la carte pour connaître les noms et les détails des nœuds.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts</context>
|
||||
<context context-type="linenumber">69</context>
|
||||
@@ -7390,6 +7494,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node-channel-map" datatype="html">
|
||||
<source>See the locations of non-Tor Lightning network nodes visualized on a world map. Hover/tap on points on the map for node names and details.</source>
|
||||
<target>Consultez les emplacements des nœuds du réseau non Tor Lightning visualisés sur une carte du monde. Passez la souris/appuyez sur des points sur la carte pour connaître les noms et les détails des nœuds.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-map/nodes-map.component.ts</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -7397,6 +7502,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-network" datatype="html">
|
||||
<source>See the number of Lightning network nodes visualized over time by network: clearnet only (IPv4, IPv6), darknet (Tor, I2p, cjdns), and both.</source>
|
||||
<target>Consultez le nombre de nœuds de réseau Lightning visualisés au fil du temps par réseau : clearnet uniquement (IPv4, IPv6), darknet (Tor, I2p, cjdns) et les deux.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
@@ -7465,6 +7571,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-country-overview" datatype="html">
|
||||
<source>See a geographical breakdown of the Lightning network: how many Lightning nodes are hosted in countries around the world, aggregate BTC capacity for each country, and more.</source>
|
||||
<target>Consultez une répartition géographique du réseau Lightning : combien de nœuds Lightning sont hébergés dans les pays du monde, capacité BTC globale pour chaque pays, et plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.ts</context>
|
||||
<context context-type="linenumber">47</context>
|
||||
@@ -7535,6 +7642,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-country" datatype="html">
|
||||
<source>Explore all the Lightning nodes hosted in <x id="PH" equiv-text="response.country.en"/> and see an overview of each node's capacity, number of open channels, and more.</source>
|
||||
<target>Explorez tous les nœuds Lightning hébergés dans <x id="PH" equiv-text="response.country.en"/> et obtenez un aperçu de la capacité de chaque nœud, du nombre de canaux ouverts, et bien plus encore.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-per-country/nodes-per-country.component.ts</context>
|
||||
<context context-type="linenumber">36</context>
|
||||
@@ -7685,6 +7793,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.nodes-isp" datatype="html">
|
||||
<source>Browse all Bitcoin Lightning nodes using the <x id="PH" equiv-text="response.isp"/> [AS<x id="PH_1" equiv-text="this.route.snapshot.params.isp"/>] ISP and see aggregate stats like total number of nodes, total capacity, and more for the ISP.</source>
|
||||
<target>Parcourez tous les nœuds Bitcoin Lightning à l'aide du FAI <x id="PH" equiv-text="response.isp"/> [AS<x id="PH_1" equiv-text="this.route.snapshot.params.isp"/>] et consultez les statistiques globales telles que le nombre total de nœuds, la capacité totale, et plus encore pour le FAI.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.ts</context>
|
||||
<context context-type="linenumber">45</context>
|
||||
@@ -7740,6 +7849,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.ranking.oldest" datatype="html">
|
||||
<source>See the oldest nodes on the Lightning network along with their capacity, number of channels, location, etc.</source>
|
||||
<target>Consultez les nœuds les plus anciens du réseau Lightning ainsi que leur capacité, leur nombre de canaux, leur emplacement, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-ranking/oldest-nodes/oldest-nodes.component.ts</context>
|
||||
<context context-type="linenumber">28</context>
|
||||
@@ -7747,6 +7857,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.ranking.liquidity" datatype="html">
|
||||
<source>See Lightning nodes with the most BTC liquidity deployed along with high-level stats like number of open channels, location, node age, and more.</source>
|
||||
<target>Consultez les nœuds Lightning avec le plus de liquidité BTC déployé ainsi que des statistiques de haut niveau telles que le nombre de canaux ouverts, l'emplacement, l'âge du nœud, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts</context>
|
||||
<context context-type="linenumber">34</context>
|
||||
@@ -7754,6 +7865,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.ranking.channels" datatype="html">
|
||||
<source>See Lightning nodes with the most channels open along with high-level stats like total node capacity, node age, and more.</source>
|
||||
<target>Consultez les nœuds Lightning avec le plus grand nombre de canaux ouverts, ainsi que des statistiques de haut niveau telles que la capacité totale des nœuds, l'âge des nœuds, etc.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.ts</context>
|
||||
<context context-type="linenumber">38</context>
|
||||
@@ -7778,6 +7890,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.rankings-dashboard" datatype="html">
|
||||
<source>See top the Lightning network nodes ranked by liquidity, connectivity, and age.</source>
|
||||
<target>Découvrez les meilleurs nœuds du réseau Lightning classés par liquidité, connectivité et âge.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">23</context>
|
||||
@@ -7785,6 +7898,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.stats-chart" datatype="html">
|
||||
<source>See the capacity of the Lightning network visualized over time in terms of the number of open channels and total bitcoin capacity.</source>
|
||||
<target>Visualisez la capacité du réseau Lightning au fil du temps en termes de nombre de canaux ouverts et de capacité totale de Bitcoin.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts</context>
|
||||
<context context-type="linenumber">67</context>
|
||||
@@ -7792,6 +7906,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8e623d3cfecb7c560c114390db53c1f430ffd0de" datatype="html">
|
||||
<source><x id="INTERPOLATION" equiv-text="{{ i }}"/> confirmation</source>
|
||||
<target><x id="INTERPOLATION" equiv-text="{{ i }}"/>confirmation</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">4</context>
|
||||
@@ -7801,6 +7916,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="bc5b0a2631f0b7bc71aaec6aa6f01af21f9a80d4" datatype="html">
|
||||
<source><x id="INTERPOLATION" equiv-text="{{ i }}"/> confirmations</source>
|
||||
<target><x id="INTERPOLATION" equiv-text="{{ i }}"/> confirmations</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">5</context>
|
||||
@@ -7810,6 +7926,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a001c3d27d5fe4a7a362a6089b5b5020ef8c1c95" datatype="html">
|
||||
<source>Replaced</source>
|
||||
<target>Remplacée</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">12</context>
|
||||
@@ -7819,6 +7936,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="58fbcd58e305ab289b99fad67d223f3e83ddb755" datatype="html">
|
||||
<source>Removed</source>
|
||||
<target>Supprimée</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/confirmations/confirmations.component.html</context>
|
||||
<context context-type="linenumber">15</context>
|
||||
@@ -7838,6 +7956,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="57a6f49237ac457ecc67fabdf1361a112ccdbf93" datatype="html">
|
||||
<source>sat/WU</source>
|
||||
<target>sat/WU</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/fee-rate/fee-rate.component.html</context>
|
||||
<context context-type="linenumber">3</context>
|
||||
@@ -7847,6 +7966,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="5ce2bda884ea801c34a1a6c23627d9a5e08f0a82" datatype="html">
|
||||
<source>My Account</source>
|
||||
<target>Mon compte</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">25</context>
|
||||
@@ -7859,6 +7979,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ba4f24bf9bf3dc4db3d6bc1b8b63339295f0b806" datatype="html">
|
||||
<source>Sign In</source>
|
||||
<target>Se connecter</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">26</context>
|
||||
@@ -7871,6 +7992,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="1773b1dad3e4b72bca77621985366b9e6a92ae28" datatype="html">
|
||||
<source>Explore</source>
|
||||
<target>Explorer</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">41</context>
|
||||
@@ -7879,6 +8001,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="52dd0ddd9ab3ea7caafcb4d6ac95e9459ef635f5" datatype="html">
|
||||
<source>Connect to our Nodes</source>
|
||||
<target>Connectez-vous à nos nœuds</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">46</context>
|
||||
@@ -7887,6 +8010,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="1cd6dc07ed789f4013d299b031200224977cbb8b" datatype="html">
|
||||
<source>API Documentation</source>
|
||||
<target>Documentation API</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">47</context>
|
||||
@@ -7895,6 +8019,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="04dfb6eb5a67d7fa19fb24f0e50324ea63fd8f08" datatype="html">
|
||||
<source>Learn</source>
|
||||
<target>Apprendre</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">50</context>
|
||||
@@ -7903,6 +8028,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="14f76d294f3ae892e8033d60bb960701cafca66f" datatype="html">
|
||||
<source>What is a mempool?</source>
|
||||
<target>Qu'est-ce qu'une mempool ?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">51</context>
|
||||
@@ -7911,6 +8037,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8ac787087e3eec254d15a4e16492f8877107087b" datatype="html">
|
||||
<source>What is a block explorer?</source>
|
||||
<target>Qu'est-ce qu'un explorateur de blocs ?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">52</context>
|
||||
@@ -7919,6 +8046,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="0ab3729578bb613995fc5c90c4d7aa45588dd2a1" datatype="html">
|
||||
<source>What is a mempool explorer?</source>
|
||||
<target>Qu’est-ce qu’un explorateur mempool ?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">53</context>
|
||||
@@ -7927,6 +8055,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8fe988a9cb02c11f99631ca85721d34d67fc32ff" datatype="html">
|
||||
<source>Why isn't my transaction confirming?</source>
|
||||
<target>Pourquoi ma transaction n'est-elle pas confirmée ?</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">54</context>
|
||||
@@ -7935,6 +8064,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="03f766a5a2abdbfbdcc2b6135691b9fb1f2ed530" datatype="html">
|
||||
<source>More FAQs »</source>
|
||||
<target>Voir plus »</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">55</context>
|
||||
@@ -7943,6 +8073,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="7a1c82a943fc99d3080aeffeeb7d21f0726ad8cc" datatype="html">
|
||||
<source>Networks</source>
|
||||
<target>Réseaux</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">59</context>
|
||||
@@ -7951,6 +8082,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="f96488094a57809ea9bfe4a2f2bf91af66a0d0a3" datatype="html">
|
||||
<source>Mainnet Explorer</source>
|
||||
<target>Explorateur Mainnet</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
@@ -7959,6 +8091,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="a31347c0f3ec966c373229584cfb7bd6725a0e64" datatype="html">
|
||||
<source>Testnet Explorer</source>
|
||||
<target>Explorateur Testnet</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">61</context>
|
||||
@@ -7967,6 +8100,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c9bf4b5d16994e42297cbe174e831a7edd9cfe72" datatype="html">
|
||||
<source>Signet Explorer</source>
|
||||
<target>Explorateur Signet</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">62</context>
|
||||
@@ -7975,6 +8109,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="c127ef3218deed36fb86af83def0b54846f92252" datatype="html">
|
||||
<source>Liquid Testnet Explorer</source>
|
||||
<target>Explorateur Liquid Testnet</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">63</context>
|
||||
@@ -7983,6 +8118,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="3c07f1c84d76a9999153e87343fd642852bb6d34" datatype="html">
|
||||
<source>Liquid Explorer</source>
|
||||
<target>Explorateur Liquid</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">64</context>
|
||||
@@ -7991,6 +8127,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="16e770142bcac84dce7dfb9840d11961ee87ae6c" datatype="html">
|
||||
<source>Bisq Explorer</source>
|
||||
<target>Explorateur Bisq</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">65</context>
|
||||
@@ -7999,6 +8136,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="fefee13017c2b85143cd131ee253e327a14053a0" datatype="html">
|
||||
<source>Tools</source>
|
||||
<target>Outils</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">69</context>
|
||||
@@ -8007,6 +8145,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="8c23995422ac012b80a2369a878b199c39271906" datatype="html">
|
||||
<source>Clock (Mined)</source>
|
||||
<target>Horloge (trouvé)</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">71</context>
|
||||
@@ -8015,6 +8154,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="9a91783e9c0f790ed49edae730f9156070ed9dd5" datatype="html">
|
||||
<source>Legal</source>
|
||||
<target>Légal</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">76</context>
|
||||
@@ -8043,6 +8183,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="6a0a8485405b9b289101e52a46e282342c8dc9e0" datatype="html">
|
||||
<source>Trademark Policy</source>
|
||||
<target>Politique en matière de marques</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/global-footer/global-footer.component.html</context>
|
||||
<context context-type="linenumber">79</context>
|
||||
@@ -8052,6 +8193,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="64dd13424d9486cf3d680d934987ec685bac0b3d" datatype="html">
|
||||
<source>This is a test network. Coins have no value.</source>
|
||||
<target>Il s'agit d'un réseau de test. Les tokens n'ont aucune valeur.</target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/shared/components/testnet-alert/testnet-alert.component.html</context>
|
||||
<context context-type="linenumber">3</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2072,6 +2072,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -1949,6 +1949,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2082,6 +2082,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2105,6 +2105,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -2085,6 +2085,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -1698,7 +1698,7 @@
|
||||
</context-group>
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.address" datatype="html">
|
||||
<source>See mempool transactions, confirmed transactions, balance, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> address <x id="INTERPOLATION" equiv-text="this.addressString"/>.</source>
|
||||
<source>See mempool transactions, confirmed transactions, balance, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/> <x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> address <x id="INTERPOLATION" equiv-text="this.addressString"/>.</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/address/address-preview.component.ts</context>
|
||||
<context context-type="linenumber">72</context>
|
||||
@@ -2256,7 +2256,7 @@
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts</context>
|
||||
<context context-type="linenumber">215</context>
|
||||
<context context-type="linenumber">216</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-map/nodes-map.component.ts</context>
|
||||
@@ -3774,7 +3774,7 @@
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.html</context>
|
||||
<context context-type="linenumber">6</context>
|
||||
<context context-type="linenumber">19</context>
|
||||
</context-group>
|
||||
<note priority="1" from="description">lightning.nodes-channels-world-map</note>
|
||||
</trans-unit>
|
||||
@@ -5024,7 +5024,7 @@
|
||||
<note priority="1" from="description">transactions-list.coinbase</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.bitcoin.transaction" datatype="html">
|
||||
<source>Get real-time status, addresses, fees, script info, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> transaction with txid {txid}.</source>
|
||||
<source>Get real-time status, addresses, fees, script info, and more for <x id="PH" equiv-text="this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet'?'Liquid':'Bitcoin'"/><x id="PH_1" equiv-text="seoDescriptionNetwork(this.stateService.network)"/> transaction with txid <x id="PH_2" equiv-text="this.txId"/>.</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/transaction/transaction-preview.component.ts</context>
|
||||
<context context-type="linenumber">91</context>
|
||||
@@ -6629,7 +6629,7 @@
|
||||
<note priority="1" from="description">lightning.connectivity-ranking</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.dashboard" datatype="html">
|
||||
<source>Get stats on the Lightning network (aggregate capacity, connectivity, etc) and Lightning nodes (channels, liquidity, etc) and Lightning channels (status, fees, etc).</source>
|
||||
<source>Get stats on the Lightning network (aggregate capacity, connectivity, etc), Lightning nodes (channels, liquidity, etc) and Lightning channels (status, fees, etc).</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">28</context>
|
||||
@@ -6886,7 +6886,7 @@
|
||||
<source>(Tor nodes excluded)</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.html</context>
|
||||
<context context-type="linenumber">8</context>
|
||||
<context context-type="linenumber">21</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-map/nodes-map.component.html</context>
|
||||
@@ -6906,21 +6906,21 @@
|
||||
<source>Lightning Nodes Channels World Map</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts</context>
|
||||
<context context-type="linenumber">68</context>
|
||||
<context context-type="linenumber">69</context>
|
||||
</context-group>
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.node-map" datatype="html">
|
||||
<source>See the channels of non-Tor Lightning network nodes visualized on a world map. Hover/tap on points on the map for node names and details.</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts</context>
|
||||
<context context-type="linenumber">69</context>
|
||||
<context context-type="linenumber">70</context>
|
||||
</context-group>
|
||||
</trans-unit>
|
||||
<trans-unit id="4390631969351833104" datatype="html">
|
||||
<source>No geolocation data available</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts</context>
|
||||
<context context-type="linenumber">227</context>
|
||||
<context context-type="linenumber">228</context>
|
||||
</context-group>
|
||||
</trans-unit>
|
||||
<trans-unit id="a4d393ee035f4225083c22cc3909b26a05a87528" datatype="html">
|
||||
@@ -7289,7 +7289,7 @@
|
||||
</context-group>
|
||||
</trans-unit>
|
||||
<trans-unit id="meta.description.lightning.rankings-dashboard" datatype="html">
|
||||
<source>See top the Lightning network nodes ranked by liquidity, connectivity, and age.</source>
|
||||
<source>See the top Lightning network nodes ranked by liquidity, connectivity, and age.</source>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.ts</context>
|
||||
<context context-type="linenumber">23</context>
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ngb.progressbar.value" datatype="html">
|
||||
<source><x id="INTERPOLATION"/></source>
|
||||
<target><x id="INTERPOLATION"/></target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">node_modules/src/ngb-config.ts</context>
|
||||
<context context-type="linenumber">13</context>
|
||||
@@ -66,6 +67,7 @@
|
||||
</trans-unit>
|
||||
<trans-unit id="ngb.carousel.slide-number" datatype="html">
|
||||
<source> Slide <x id="INTERPOLATION"/> of <x id="INTERPOLATION_1"/> </source>
|
||||
<target> Slide <x id="INTERPOLATION"/> of <x id="INTERPOLATION_1"/> </target>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">node_modules/src/ngb-config.ts</context>
|
||||
<context context-type="linenumber">13</context>
|
||||
@@ -2085,6 +2087,10 @@
|
||||
<context context-type="sourcefile">src/app/components/pool/pool.component.html</context>
|
||||
<context context-type="linenumber">463</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/rbf-list/rbf-list.component.html</context>
|
||||
<context context-type="linenumber">9</context>
|
||||
</context-group>
|
||||
<context-group purpose="location">
|
||||
<context context-type="sourcefile">src/app/components/statistics/statistics.component.html</context>
|
||||
<context context-type="linenumber">60</context>
|
||||
|
||||
@@ -606,7 +606,6 @@ html:lang(ru) .card-title {
|
||||
}
|
||||
|
||||
.tx-wrapper-tooltip-chart-advanced {
|
||||
width: 140px;
|
||||
.indicator-container {
|
||||
.indicator {
|
||||
margin-right: 5px;
|
||||
|
||||
@@ -105,5 +105,9 @@
|
||||
"node205.tk7.mempool.space",
|
||||
"node206.tk7.mempool.space"
|
||||
]
|
||||
},
|
||||
"MEMPOOL_SERVICES": {
|
||||
"API": "https://mempool.space/api/v1/services",
|
||||
"ACCELERATIONS": true
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user