Skip to content

Commit 4b385b4

Browse files
committed
Merge branch 'staging'
2 parents f00f5a0 + db3a01f commit 4b385b4

39 files changed

+1115
-48
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Copilot Setup Steps
2+
3+
env:
4+
NODE_VERSION: 22.x
5+
VITE_VALIDATOR: vl.ripple.com
6+
VITE_RIPPLED_WS_PORT: 51233
7+
VITE_RIPPLED_HOST: fake.rippled.example.com
8+
VITE_MAINNET_LINK: mainnet.example.com
9+
VITE_TESTNET_LINK: testnet.example.com
10+
VITE_CUSTOMNETWORK_LINK: custom.example.com
11+
VITE_DATA_URL: https://data.xrpl.org/v1/network
12+
13+
on:
14+
workflow_dispatch:
15+
push:
16+
branches: [main]
17+
pull_request:
18+
branches: [main]
19+
20+
jobs:
21+
copilot-setup:
22+
runs-on: ubuntu-latest
23+
24+
steps:
25+
- uses: actions/checkout@v4
26+
- name: Use Node.js ${{ env.NODE_VERSION }}
27+
uses: actions/setup-node@v4
28+
with:
29+
node-version: ${{ env.NODE_VERSION }}
30+
31+
- name: Cache node modules
32+
id: cache-nodemodules
33+
uses: actions/cache@v4
34+
env:
35+
cache-name: cache-node-modules
36+
with:
37+
# caching node_modules
38+
path: node_modules
39+
key: ${{ env.NODE_VERSION }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
40+
restore-keys: |
41+
${{ env.NODE_VERSION }}-build-${{ env.cache-name }}-
42+
${{ env.NODE_VERSION }}-build-
43+
44+
- name: Install Dependencies
45+
if: steps.cache-nodemodules.outputs.cache-hit != 'true'
46+
run: npm ci

public/locales/en-US/translations.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,8 @@
332332
"set_nftoken_minter_description": "It sets <0>{{account}}</0> as the authorized minter for this account",
333333
"deposit_auth": "It authorizes <1><0>{{account}}</0></1> to send payments to this account",
334334
"deposit_unauth": "It removes the authorization for <1><0>{{account}}</0></1> to send payments to this account",
335+
"deposit_auth_credentials": "It authorizes the following credentials:",
336+
"deposit_unauth_credentials": "It removes the authorization for the following credentials:",
335337
"invalid_xrpl_address": "Invalid XRPL address",
336338
"loading": "Loading",
337339
"get_ledger_failed": "Unable to load ledger",
@@ -584,6 +586,7 @@
584586
"expiration": "Expiration",
585587
"domain_id": "Domain ID",
586588
"accepted_credentials": "Accepted Credentials",
589+
"credential_ids": "Credential IDs",
587590
"data": "Data",
588591
"finish_function": "Finish Function",
589592
"quorum_description": "Min. number of trusted validations needed to confirm a ledger",

public/locales/es-ES/translations.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,8 @@
318318
"set_nftoken_minter_description": "Se establece a <0>{{account}}</0> como el acuñador autorizado para esta cuenta",
319319
"deposit_auth": "Se autoriza a <1><0>{{account}}</0></1> a enviar pagos a esta cuenta",
320320
"deposit_unauth": "Se elimina la autorización a <1><0>{{account}}</0></1> para enviar pagos a esta cuenta",
321+
"deposit_auth_credentials": null,
322+
"deposit_unauth_credentials": null,
321323
"invalid_xrpl_address": "Dirección XRPL inválida",
322324
"loading": "Cargando",
323325
"get_ledger_failed": "No ha sido posible cargar el libro contable",
@@ -577,6 +579,7 @@
577579
"expiration": null,
578580
"domain_id": null,
579581
"accepted_credentials": null,
582+
"credential_ids": null,
580583
"action_from_and": null,
581584
"data": null,
582585
"finish_function": null,

public/locales/fr-FR/translations.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,8 @@
320320
"set_nftoken_minter_description": "Définit <0>{{account}}</0> comme le forgeur autorisé pour ce compte.",
321321
"deposit_auth": "Autorise <1><0>{{account}}</0></1> à envoyer des paiements vers ce compte.",
322322
"deposit_unauth": "Supprime l'autorisation pour <1><0>{{account}}</0></1> d'envoyer des paiements à ce compte.",
323+
"deposit_auth_credentials": null,
324+
"deposit_unauth_credentials": null,
323325
"invalid_xrpl_address": "Adresse XRPL invalide",
324326
"loading": "Chargement en cours",
325327
"get_ledger_failed": "Impossible de charger le registre",
@@ -578,6 +580,7 @@
578580
"expiration": null,
579581
"domain_id": null,
580582
"accepted_credentials": null,
583+
"credential_ids": null,
581584
"action_from_and": null,
582585
"data": null,
583586
"finish_function": null,

public/locales/ja-JP/translations.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,8 @@
320320
"set_nftoken_minter_description": "<0>{{account}}</0> をNFTの認可発行者として設定しました。",
321321
"deposit_auth": "<1><0>{{account}}</0></1> からの送金を許可しました",
322322
"deposit_unauth": "<1><0>{{account}}</0></1> からの送金の許可を削除しました",
323+
"deposit_auth_credentials": null,
324+
"deposit_unauth_credentials": null,
323325
"invalid_xrpl_address": "不正なXRPLアドレスです",
324326
"loading": "読み込み中",
325327
"get_ledger_failed": "レジャ情報ーを取得することができません",
@@ -577,6 +579,7 @@
577579
"expiration": null,
578580
"domain_id": null,
579581
"accepted_credentials": null,
582+
"credential_ids": null,
580583
"action_from_and": null,
581584
"data": null,
582585
"finish_function": null,

public/locales/ko-KR/translations.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,8 @@
319319
"set_nftoken_minter_description": "<0>{{account}}</0>을 이 계정의 공인 발행인으로 설정합니다",
320320
"deposit_auth": "<1><0>{{account}}</0></1>을 이 계정으로 결제를 보낼 수 있도록 승인합니다",
321321
"deposit_unauth": "<1><0>{{account}}</0></1>의 이 계정으로의 결제 권한을 삭제합니다",
322+
"deposit_auth_credentials": null,
323+
"deposit_unauth_credentials": null,
322324
"invalid_xrpl_address": "유효하지 않은 XRPL 주소",
323325
"loading": "불러오는 중",
324326
"get_ledger_failed": "원장을 불러올 수 없습니다",
@@ -575,6 +577,7 @@
575577
"expiration": null,
576578
"domain_id": null,
577579
"accepted_credentials": null,
580+
"credential_ids": null,
578581
"action_from_and": null,
579582
"data": null,
580583
"finish_function": null,

public/locales/my-MM/translations.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,8 @@
324324
"set_nftoken_minter_description": "၎င်းသည် <0>{{account}}</0> ကို ဤအကောင့်အတွက် ခွင့်ပြုချက်ရ NFT ထုတ်လုပ်သူအဖြစ် သတ်မှတ်သည်",
325325
"deposit_auth": "၎င်းသည် <1><0>{{account}}</0></1> အား ဤအကောင့်သို့ ငွေပေးချေရန် ခွင့်ပြုသည်",
326326
"deposit_unauth": "၎င်းသည် <1><0>{{account}}</0></1> ၏ ဤအကောင့်သို့ ငွေပေးချေခွင့်ကို ပယ်ဖျက်သည်",
327+
"deposit_auth_credentials": null,
328+
"deposit_unauth_credentials": null,
327329
"invalid_xrpl_address": "XRPL လိပ်စာ မှားယွင်းနေပါသည်",
328330
"loading": "ဖွင့်နေသည်",
329331
"get_ledger_failed": "Ledger ကို ဖွင့်၍မရပါ",
@@ -734,6 +736,7 @@
734736
"expiration": null,
735737
"domain_id": null,
736738
"accepted_credentials": null,
739+
"credential_ids": null,
737740
"data": null,
738741
"tx_hash": null,
739742
"timestamp": null,

src/containers/Transactions/simpleTab.scss

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,15 @@ $subdued-color: $black-40;
66
.rows {
77
padding-top: 0px;
88

9+
.groups-title {
10+
display: block;
11+
flex-direction: row;
12+
color: $black-40;
13+
font-size: 14px;
14+
font-weight: 600;
15+
text-transform: uppercase;
16+
}
17+
918
.partial-row {
1019
display: flex;
1120
overflow: hidden;

src/containers/shared/components/Transaction/AccountDelete/Simple.tsx

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,21 @@ import type { AccountDelete } from 'xrpl'
44
import { SimpleRow } from '../SimpleRow'
55
import { TransactionSimpleProps } from '../types'
66
import { Account } from '../../Account'
7+
import { CredentialIDs } from '../CredentialIDs'
78

89
export const Simple = ({ data }: TransactionSimpleProps<AccountDelete>) => {
910
const { t } = useTranslation()
1011
const tx = data.instructions
1112

1213
return (
13-
<SimpleRow label={t('destination')}>
14-
<Account account={tx.Destination} />
15-
{tx.DestinationTag && <span className="dt">:{tx.DestinationTag}</span>}
16-
</SimpleRow>
14+
<>
15+
<SimpleRow label={t('destination')} data-testid="destination">
16+
<Account account={tx.Destination} />
17+
{tx.DestinationTag && <span className="dt">:{tx.DestinationTag}</span>}
18+
</SimpleRow>
19+
{tx.CredentialIDs && tx.CredentialIDs.length > 0 && (
20+
<CredentialIDs credentialIDs={tx.CredentialIDs} />
21+
)}
22+
</>
1723
)
1824
}
Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,51 @@
1-
import i18n from '../../../../../../i18n/testConfigEnglish'
2-
3-
import { createSimpleWrapperFactory } from '../../test/createWrapperFactory'
1+
import {
2+
createSimpleWrapperFactory,
3+
expectSimpleRowText,
4+
expectSimpleRowLabel,
5+
} from '../../test'
46
import { Simple } from '../Simple'
57
import mockAccountDelete from './mock_data/AccountDelete.json'
68
import mockAccountDeleteWithDestinationTag from './mock_data/AccountDeleteWithDestinationTag.json'
9+
import mockAccountDeleteWithCredentialIDs from './mock_data/AccountDeleteWithCredentialIDs.json'
710

8-
const createWrapper = createSimpleWrapperFactory(Simple, i18n)
11+
const createWrapper = createSimpleWrapperFactory(Simple)
912

1013
describe('AccountDelete: Simple', () => {
1114
it('renders', () => {
1215
const wrapper = createWrapper(mockAccountDelete)
13-
expect(wrapper.find('.label')).toHaveText('destination')
14-
expect(wrapper.find('.value')).toHaveText(
16+
expectSimpleRowText(
17+
wrapper,
18+
'destination',
1519
'raT74sdzpxJUaubcBAQNS8aLqFMU85Rr5J',
1620
)
1721
wrapper.unmount()
1822
})
1923

2024
it('renders with destination tag', () => {
2125
const wrapper = createWrapper(mockAccountDeleteWithDestinationTag)
22-
expect(wrapper.find('.label')).toHaveText('destination')
23-
expect(wrapper.find('.value')).toHaveText(
26+
expectSimpleRowText(
27+
wrapper,
28+
'destination',
2429
'rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn:123123',
2530
)
2631
wrapper.unmount()
2732
})
33+
34+
it('renders with CredentialIDs', () => {
35+
const wrapper = createWrapper(mockAccountDeleteWithCredentialIDs)
36+
37+
expectSimpleRowText(
38+
wrapper,
39+
'destination',
40+
'raT74sdzpxJUaubcBAQNS8aLqFMU85Rr5J',
41+
)
42+
expectSimpleRowText(
43+
wrapper,
44+
'credential-id-0',
45+
'7B685088D546B9E8905D26206F452BB2F44D9A33C9BD9BCF280F7BA39015A955',
46+
)
47+
expectSimpleRowLabel(wrapper, 'credential-id-0', 'credential_ids')
48+
49+
wrapper.unmount()
50+
})
2851
})

0 commit comments

Comments
 (0)