Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
ecee042
fix RippleState
mvadari Feb 21, 2024
668905b
fix TakerPays/TakerGets
mvadari Feb 21, 2024
f178b6a
clean up OfferCreate Description
mvadari Feb 21, 2024
ace9e32
[WIP] clean up offer
mvadari Feb 21, 2024
9651192
fix offer
mvadari Apr 18, 2024
e9ac2b9
Merge branch 'staging' into currency-description
mvadari Apr 18, 2024
aa34287
clean up
mvadari Apr 18, 2024
d67f5b2
fix bug
mvadari Apr 18, 2024
9be092f
clean up spelling/translations
mvadari Apr 18, 2024
43013ac
update some files to TS
mvadari May 1, 2024
066dc6c
Merge branch 'staging' into currency-description
mvadari Jun 27, 2024
9ddb64a
Merge branch 'staging' into currency-description
mvadari Jul 2, 2024
3853f9d
Merge branch 'staging' into currency-description
mvadari Jul 9, 2024
06da999
Merge branch 'staging' into currency-description
mvadari Aug 1, 2024
2af4952
fix: correct typo for website in english translation (#1101)
kennyzlei Dec 18, 2024
eddfb96
Merge branch 'staging' into currency-description
mvadari Mar 27, 2025
f0a4572
Merge branch 'staging' into currency-description
mvadari Apr 8, 2025
aaa6a73
Merge branch 'staging' into currency-description
mvadari Apr 9, 2025
c0f5df7
Merge branch 'main' into currency-description
mvadari Oct 21, 2025
04d23c8
Merge branch 'staging' into refactor/streams-take-2
mvadari Oct 21, 2025
1845c99
rename files
mvadari Oct 21, 2025
dfd2799
fix tests
mvadari Oct 21, 2025
380d5fb
run linter
mvadari Oct 21, 2025
78ef44f
more cleanup
mvadari Dec 5, 2025
e55e934
Merge branch 'staging' into currency-description
mvadari Dec 5, 2025
e8a76af
Merge branch 'staging' into currency-description
mvadari Dec 24, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
"chopa",
"chopb",
"cimode",
"Clawback",
"clawback",
"clsx",
"ctid",
"CUSTOMNETWORK",
Expand All @@ -76,13 +76,16 @@
"nftoken",
"nodemodules",
"pageview",
"paychannel",
"paychannels",
"Permissioned",
"permissioned",
"setfee",
"stylelint",
"svgr",
"topojson",
"trustlines",
"Txns",
"unauth",
"VITE",
"Xahau",
"xchain",
Expand Down
1 change: 0 additions & 1 deletion public/locales/ca-CA/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
"30D": "30D",
"total_transactions": "# de Txns",
"total_fees": "Total de comissions",
"async_component_timedout": "La càrrega del component ha trigat més del que s'esperava",
"async_component_failed": "Error en carregar el component",
"account_not_found": "No s'ha trobat el compte",
"account_empty_title": "No s'ha proporcionat l'ID del compte",
Expand Down
13 changes: 6 additions & 7 deletions public/locales/en-US/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
"30D": "30D",
"total_transactions": "# of Txns",
"total_fees": "Total Fees",
"async_component_timedout": "Loading component took longer than expected",
"async_component_failed": "Failed to load Component",
"account_not_found": "Account not found",
"account_empty_title": "No account ID was supplied",
Expand Down Expand Up @@ -275,7 +274,7 @@
"number_of_affected_node": "It affected {{count}} nodes in the ledger:",
"nodes_type": "{{action}} nodes",
"node_meta_type": "It {{action}} a node with type",
"transaction_balance_line_one": "It <1><0>{{action}}</0></1> a <3><0>{{currency}}</0></3> RippleState node between <5><0>{{account}}</0></5> and <7><0>{{counterAccount}}</0></7>",
"transaction_balance_line_one": "It <1><0>{{action}}</0></1> a <4><0>{{currency}}</0></4> RippleState node between <6><0>{{account}}</0></6> and <8><0>{{counterAccount}}</0></8>",
"transaction_balance_line_two": "Balance changed by <1><0>{{change}}</0></1> from <3><0>{{previousBalance}}</0></3> to <5><0>{{finalBalance}}</0></5>",
"transaction_outstanding_balance_line_two": "Outstanding balance changed by <1><0>{{change}}</0></1> from <3><0>{{previousBalance}}</0></3> to <5><0>{{finalBalance}}</0></5>",
"transaction_owned_directory": "It {{action}} a DirectoryNode node owned by",
Expand All @@ -287,13 +286,13 @@
"account_balance_increased": "Balance increased by <1><0>{{difference}}</0><1><0>{{currency}}</0></1></1> from <3><0>{{previous}}</0><1><0>{{currency}}</0></1></3> to <5><0>{{final}}</0><1><0>{{currency}}</0></1></5>",
"account_balance_decreased": "Balance decreased by <1><0>{{difference}}</0><1><0>{{currency}}</0></1></1> from <3><0>{{previous}}</0><1><0>{{currency}}</0></1></3> to <5><0>{{final}}</0><1><0>{{currency}}</0></1></5>",
"decreased_from_to": "decreased by <1><0>{{change}}</0></1> from <3><0>{{previous}}</0></3> to <5><0>{{final}}</0></5>",
"offer_node_meta": "It <1><0>{{action}}</0></1> a <3><0>{{pair}}</0></3> offer node owned by <5><0>{{account}}</0></5> with sequence # <7><0>{{sequence}}</0></7>",
"offer_node_meta": "It {{action}} a <Currency/> / <Currency2/> offer node owned by <Account/> with sequence # {{sequence}}",
"offer_replaces": "This offer replaces the existing offer #",
"offer_partially_filled": "The offer was partially filled",
"offer_filled": "The offer was filled",
"offer_cancelled": "The offer was cancelled",
"offer_partially_filled": "The offer was partially filled.",
"offer_filled": "The offer was filled.",
"offer_cancelled": "The offer was cancelled.",
"offer_replaced": "This offer was replaced by the new offer #",
"offer_lack_of_funds": "The offer was partially filled, then cancelled due to lack of funds",
"offer_lack_of_funds": "The offer was partially filled, then cancelled due to lack of funds.",
"transaction_sequence": "The transaction's sequence number is",
"trust_set_description": "It establishes <1><0>{{amount}}</0></1> as the maximum amount of <3><0>{{currency}}</0></3> from <5><0>{{issuer}}</0></5> that <7><0>{{account}}</0></7> is willing to hold",
"payment_desc_line_1": "The payment is from <source/> to <destination/>",
Expand Down
1 change: 0 additions & 1 deletion public/locales/es-ES/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
"30D": "30D",
"total_transactions": "# de Txs",
"total_fees": "Comisiones Totales",
"async_component_timedout": "Cargar el componente tomó más tiempo del esperado",
"async_component_failed": "Fallo al cargar Componente",
"account_not_found": "Cuenta no encontrada",
"account_empty_title": "El ID de la cuenta no fue facilitado",
Expand Down
3 changes: 1 addition & 2 deletions public/locales/fr-FR/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,7 @@
"24H": "24H",
"30D": "30J",
"total_transactions": "# de Txns",
"total_fees": "Frais Totaux",
"async_component_timedout": "Le chargement du composant a pris plus de temps que prévu",
"total_fees": "Frais Totaux",\
"async_component_failed": "Impossible de charger le composant",
"account_not_found": "Compte non trouvé",
"account_empty_title": "Aucun id de compte n'a été fourni",
Expand Down
1 change: 0 additions & 1 deletion public/locales/ja-JP/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
"30D": "30日",
"total_transactions": "トランザクション数",
"total_fees": "合計トランザクション手数料",
"async_component_timedout": "コンポーネントの読み込みに通常以上の時間がかかりました",
"async_component_failed": "コンポーネントの読み込みに失敗しました",
"account_not_found": "アカウントが見つかりません",
"account_empty_title": "アカウントIDが入力されていません",
Expand Down
1 change: 0 additions & 1 deletion public/locales/ko-KR/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
"30D": "30일",
"total_transactions": "트랜잭션 수",
"total_fees": "총 수수료",
"async_component_timedout": "컴포넌트 로딩이 예상보다 오래 걸렸습니다",
"async_component_failed": "컴포넌트 로드 실패",
"account_not_found": "계정을 찾을 수 없습니다",
"account_empty_title": "계정 ID가 제공되지 않았습니다",
Expand Down
9 changes: 6 additions & 3 deletions src/containers/Accounts/AccountAsset/styles.scss
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,8 @@
}

.account-asset-table-wrapper-fixed .account-asset-table {
overflow: auto; /* Vertical scroll when overflowing, keep horizontal if needed */
max-height: 255px; /* Fixed viewport height for the table area */
overflow: auto; /* Vertical scroll when overflowing, keep horizontal if needed */
max-height: 255px; /* Fixed viewport height for the table area */
background: transparent;
-webkit-overflow-scrolling: touch;

Expand Down Expand Up @@ -161,7 +161,10 @@
z-index: 2;
top: 0;
padding: 10px 12px;
backdrop-filter: blur(100px); /* As table rows scroll under the header, they appear blurred behind it */
backdrop-filter: blur(
100px
); /* As table rows scroll under the header, they appear blurred behind it */

color: $black-50;
font-size: 12px;
text-align: left;
Expand Down
46 changes: 34 additions & 12 deletions src/containers/Accounts/AccountSummary/styles.scss
Original file line number Diff line number Diff line change
Expand Up @@ -338,7 +338,7 @@
grid-row: 1;
}

> .details-box:nth-child(n+3) {
> .details-box:nth-child(n + 3) {
grid-column: 1 / span 2;
}
}
Expand Down Expand Up @@ -371,7 +371,7 @@
}

/* Ensure all boxes span full width in grid */
> .details-box:nth-child(n+3) {
> .details-box:nth-child(n + 3) {
grid-column: 1;
}
}
Expand All @@ -397,8 +397,14 @@
padding: 12px;
gap: 8px;
}
.details-label { font-size: 12px; }
.details-value { font-size: 14px; }

.details-label {
font-size: 12px;
}

.details-value {
font-size: 14px;
}
}

/* Extra narrow screens - force better text wrapping */
Expand Down Expand Up @@ -442,12 +448,16 @@
flex: none;
}

.xrp, .usd, .reserve {
.xrp,
.usd,
.reserve {
height: auto;
padding: 20px;
}

.balance-value { font-size: 18px; }
.balance-value {
font-size: 18px;
}

.balance-icon {
width: 20px;
Expand All @@ -458,7 +468,10 @@
.properties {
.properties-header {
gap: 8px;
.properties-toggle { padding: 4px; }

.properties-toggle {
padding: 4px;
}

.properties-arrow {
width: 16px;
Expand All @@ -476,15 +489,22 @@
padding: 16px;
}

.flags-card { grid-column: auto; }
.signers-card { grid-column: auto; }
.flags-card {
grid-column: auto;
}

.flags-list, .signers-list {
.signers-card {
grid-column: auto;
}

.flags-list,
.signers-list {
max-height: calc(5 * 64px);
padding-inline: 4px;
}

.flag-item, .signer-item {
.flag-item,
.signer-item {
padding: 10px;
}
}
Expand All @@ -494,7 +514,9 @@
@media (max-width: $tablet-portrait-upper-boundary) {
.properties {
.properties-header {
h3 { font-size: 18px; }
h3 {
font-size: 18px;
}
}

.properties-grid .card-header .header-title {
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
import { TFunction } from 'i18next'
import { Account } from '../../../shared/components/Account'

const render = (t, action, node, index) => {
const render = (
t: TFunction<'translations', undefined>,
action: string,
node: any,
index: number,
) => {
const fields = node.FinalFields || node.NewFields
return (
<li key={`directory_${index}`} className="meta-line">
Expand Down
59 changes: 38 additions & 21 deletions src/containers/Transactions/DetailTab/Meta/Offer.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
} from '../../../shared/transactionUtils'
import { localizeNumber } from '../../../shared/utils'
import { Account } from '../../../shared/components/Account'
import Currency from '../../../shared/components/Currency'

const normalize = (value, currency) =>
currency === 'XRP' ? (value / XRP_BASE).toString() : value
Expand All @@ -24,21 +25,18 @@ const renderChanges = (t, language, node, index) => {
const changePays = normalize(prevPays - finalPays, paysCurrency)
const changeGets = normalize(prevGets - finalGets, getsCurrency)

const renderIssuer = (issuer) =>
issuer ? (
<>
.
<Account account={issuer} />
</>
) : null

if (prevPays && finalPays) {
const options = { ...CURRENCY_OPTIONS, currency: paysCurrency }
meta.push(
<li key={`taker_pays_decreased_${index}`} className="meta-line">
<span className="field">TakerPays </span>
<b>{paysCurrency}</b>
{renderIssuer(final.TakerPays.issuer)}{' '}
<b>
<Currency
currency={paysCurrency}
issuer={final.TakerPays.issuer}
displaySymbol={false}
/>
</b>{' '}
<Trans i18nKey="decreased_from_to">
decreased by
<b>{{ change: localizeNumber(changePays, language, options) }}</b>
Expand Down Expand Up @@ -71,8 +69,13 @@ const renderChanges = (t, language, node, index) => {
meta.push(
<li key={`taker_gets_decreased_${index}`} className="meta-line">
<span className="field">TakerGets </span>
<b>{getsCurrency}</b>
{renderIssuer(final.TakerGets.issuer)}{' '}
<b>
<Currency
currency={getsCurrency}
issuer={final.TakerGets.issuer}
displaySymbol={false}
/>
</b>{' '}
<Trans i18nKey="decreased_from_to">
decreased by
<b>{{ change: localizeNumber(changeGets, language, options) }}</b>
Expand Down Expand Up @@ -115,9 +118,6 @@ const render = (t, language, action, node, index, tx) => {
)
const invert =
CURRENCY_ORDER.indexOf(getsCurrency) > CURRENCY_ORDER.indexOf(paysCurrency)
const pair = invert
? `${getsCurrency}/${paysCurrency}`
: `${paysCurrency}/${getsCurrency}`

if (
action === 'created' &&
Expand Down Expand Up @@ -175,12 +175,29 @@ const render = (t, language, action, node, index, tx) => {

return (
<li key={`offer_node_meta_${index}`} className="meta-line">
<Trans i18nKey="offer_node_meta">
It {action} a <b>{pair}</b>
owned by
<Account account={fields.Account} />
with sequence # <b>{{ sequence: fields.Sequence }}</b>
</Trans>
<Trans
i18nKey="offer_node_meta"
values={{ action, sequence: fields.Sequence }}
components={{
Currency: (
<Currency
currency={(invert ? getsCurrency : paysCurrency) || 'XRP'}
issuer={invert ? tx.TakerGets?.issuer : tx.TakerPays?.issuer}
displaySymbol={false}
shortenIssuer
/>
),
Currency2: (
<Currency
currency={(invert ? paysCurrency : getsCurrency) || 'XRP'}
issuer={invert ? tx.TakerPays?.issuer : tx.TakerGets?.issuer}
displaySymbol={false}
shortenIssuer
/>
),
Account: <Account account={fields.Account} />,
}}
/>
<ul>{lines}</ul>
</li>
)
Expand Down
8 changes: 6 additions & 2 deletions src/containers/Transactions/DetailTab/Meta/RippleState.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import {
localizeNumber,
computeRippleStateBalanceChange,
} from '../../../shared/utils'
import Currency from '../../../shared/components/Currency'

const render = (t, language, action, node, index) => {
const {
Expand All @@ -18,8 +19,11 @@ const render = (t, language, action, node, index) => {

const line1 = (
<Trans i18nKey="transaction_balance_line_one">
It {action} a <b>{currency}</b>
ripplestate node between
It {action} a{' '}
<b>
<Currency currency={currency} />
</b>
RippleState node between
<Account account={account} />
and
<Account account={counterAccount} />
Expand Down
10 changes: 8 additions & 2 deletions src/containers/Transactions/DetailTab/Meta/index.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { FC } from 'react'
import { useTranslation } from 'react-i18next'
import { TFunction } from 'i18next'
import renderAccountRoot from './AccountRoot'
import renderDirectoryNode from './DirectoryNode'
import renderOffer from './Offer'
Expand All @@ -10,7 +11,12 @@ import renderMPTokenIssuance from './MPTokenIssuance'
import { groupAffectedNodes } from '../../../shared/transactionUtils'
import { useLanguage } from '../../../shared/hooks'

const renderDefault = (t, action, node, index) => (
const renderDefault = (
t: TFunction<'translations', undefined>,
action: string,
node: any,
index: number,
) => (
<li key={`${node.LedgerEntryType}_${index}`} className="meta-line">
{t('node_meta_type', { action })} <b>{node.LedgerEntryType}</b>
</li>
Expand All @@ -20,7 +26,7 @@ export const TransactionMeta: FC<{ data: any }> = ({ data }) => {
const language = useLanguage()
const { t } = useTranslation()

const renderNodesMeta = (action, list, tx) => {
const renderNodesMeta = (action: string, list: any[], tx: any) => {
const meta = list.map((node, index) => {
switch (node.LedgerEntryType) {
case 'AccountRoot':
Expand Down
Loading