From 2af495217b9efbf3774872806c5d4caea432ecee Mon Sep 17 00:00:00 2001 From: Kenny Lei <3003853+kennyzlei@users.noreply.github.com> Date: Wed, 18 Dec 2024 10:06:29 -0800 Subject: [PATCH 01/18] fix: correct typo for website in english translation (#1101) ## High Level Overview of Change Fix typo for website in english translation ### Context of Change Bug introduced in https://github.com/ripple/explorer/pull/1056 ### Type of Change - [x] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] Refactor (non-breaking change that only restructures code) - [ ] Tests (You added tests for code that already exists, or your new feature included in this PR) - [ ] Documentation Updates - [ ] Translation Updates - [ ] Release ### TypeScript/Hooks Update - [ ] Updated files to React Hooks - [ ] Updated files to TypeScript --- public/locales/en-US/translations.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/locales/en-US/translations.json b/public/locales/en-US/translations.json index 83fb30d98..d1ff3ff1d 100644 --- a/public/locales/en-US/translations.json +++ b/public/locales/en-US/translations.json @@ -542,7 +542,7 @@ "deleted": "Deleted", "holders": "HOLDERS: {{holders}}", "trustlines": " TRUSTLINES: {{trustlines}}", - "website": "Wesbite", + "website": "Website", "mpt_issuance_id": "MPT Issuance ID", "asset_scale": "Asset Scale", "metadata": "Metadata", From b0dc30d7b0b4ffa978e4cead647baff2715f821b Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 8 Jan 2025 16:15:07 -0500 Subject: [PATCH 02/18] basic structure of new transactions --- public/locales/en-US/translations.json | 3 ++ .../Transaction/CredentialAccept/Simple.tsx | 34 +++++++++++++++++++ .../Transaction/CredentialAccept/index.ts | 15 ++++++++ .../test/CredentialAcceptSimple.test.tsx | 0 .../Transaction/CredentialAccept/types.ts | 0 .../Transaction/CredentialCreate/Simple.tsx | 0 .../Transaction/CredentialCreate/index.ts | 15 ++++++++ .../test/CredentialCreateSimple.test.tsx | 0 .../Transaction/CredentialCreate/types.ts | 0 .../Transaction/CredentialDelete/Simple.tsx | 0 .../Transaction/CredentialDelete/index.ts | 15 ++++++++ .../test/CredentialDeleteSimple.test.tsx | 0 .../Transaction/CredentialDelete/types.ts | 0 .../shared/components/Transaction/index.ts | 6 ++++ .../shared/components/Transaction/types.ts | 1 + 15 files changed, 89 insertions(+) create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/index.ts create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/types.ts create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/index.ts create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/types.ts create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/index.ts create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/types.ts diff --git a/public/locales/en-US/translations.json b/public/locales/en-US/translations.json index d1ff3ff1d..215cd6885 100644 --- a/public/locales/en-US/translations.json +++ b/public/locales/en-US/translations.json @@ -160,6 +160,9 @@ "transaction_type_name_CheckCancel": "Check Cancel", "transaction_type_name_CheckCash": "Check Cash", "transaction_type_name_CheckCreate": "Check Create", + "transaction_type_name_CredentialAccept": "Credential Accept", + "transaction_type_name_CredentialCreate": "Credential Create", + "transaction_type_name_CredentialDelete": "Credential Delete", "transaction_type_name_DIDDelete": "DID Delete", "transaction_type_name_DIDSet": "DID Set", "transaction_type_name_DepositPreauth": "Deposit Preauth", diff --git a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx new file mode 100644 index 000000000..0dca0d812 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx @@ -0,0 +1,34 @@ +import { useTranslation } from 'react-i18next' +import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' +import { SimpleRow } from '../SimpleRow' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +const Simple: TransactionSimpleComponent = ( + props: TransactionSimpleProps, +) => { + const { t } = useTranslation() + const { data } = props + const { URI, DIDDocument, Attestation } = data.instructions + + return ( + <> + {URI && ( + + {convertHexToString(URI)} + + )} + {DIDDocument && ( + + {convertHexToString(DIDDocument)} + + )} + {Attestation && ( + + {convertHexToString(Attestation)} + + )} + + ) +} + +export { Simple } diff --git a/src/containers/shared/components/Transaction/CredentialAccept/index.ts b/src/containers/shared/components/Transaction/CredentialAccept/index.ts new file mode 100644 index 000000000..5da87c548 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialAccept/index.ts @@ -0,0 +1,15 @@ +import { + TransactionAction, + TransactionCategory, + TransactionMapping, +} from '../types' + +import { Simple } from './Simple' +import { TableDetail } from './TableDetail' + +export const CredentialAcceptTransaction: TransactionMapping = { + Simple, + TableDetail, + action: TransactionAction.ACCEPT, + category: TransactionCategory.ACCOUNT, +} diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialAccept/types.ts b/src/containers/shared/components/Transaction/CredentialAccept/types.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialCreate/index.ts b/src/containers/shared/components/Transaction/CredentialCreate/index.ts new file mode 100644 index 000000000..84cd7288e --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialCreate/index.ts @@ -0,0 +1,15 @@ +import { + TransactionAction, + TransactionCategory, + TransactionMapping, +} from '../types' + +import { Simple } from './Simple' +import { TableDetail } from './TableDetail' + +export const CredentialCreateTransaction: TransactionMapping = { + Simple, + TableDetail, + action: TransactionAction.CREATE, + category: TransactionCategory.ACCOUNT, +} diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialCreate/types.ts b/src/containers/shared/components/Transaction/CredentialCreate/types.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialDelete/index.ts b/src/containers/shared/components/Transaction/CredentialDelete/index.ts new file mode 100644 index 000000000..4f9674c6d --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialDelete/index.ts @@ -0,0 +1,15 @@ +import { + TransactionAction, + TransactionCategory, + TransactionMapping, +} from '../types' + +import { Simple } from './Simple' +import { TableDetail } from './TableDetail' + +export const CredentialDeleteTransaction: TransactionMapping = { + Simple, + TableDetail, + action: TransactionAction.CANCEL, + category: TransactionCategory.ACCOUNT, +} diff --git a/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialDelete/types.ts b/src/containers/shared/components/Transaction/CredentialDelete/types.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/index.ts b/src/containers/shared/components/Transaction/index.ts index c483a22cb..8cccb61f4 100644 --- a/src/containers/shared/components/Transaction/index.ts +++ b/src/containers/shared/components/Transaction/index.ts @@ -6,6 +6,9 @@ import { AMMBid } from './AMMBid' import { AMMVote } from './AMMVote' import { AccountDeleteTransaction as AccountDelete } from './AccountDelete' import { AccountSetTransaction as AccountSet } from './AccountSet' +import { CredentialAcceptTransaction as CredentialAccept } from './.CredentialAccept' +import { CredentialAcceptTransaction as CredentialCreate } from './.CredentialCreate' +import { CredentialAcceptTransaction as CredentialDelete } from './.CredentialDelete' import { DIDSetTransaction as DIDSet } from './DIDSet' import { DepositPreauthTransaction as DepositPreauth } from './DepositPreauth' import { EnableAmendmentTransaction as EnableAmendment } from './EnableAmendment' @@ -56,6 +59,9 @@ export const transactionTypes: { [key: string]: TransactionMapping } = { AccountDelete, AccountSet, Clawback, + CredentialAccept, + CredentialCreate, + CredentialDelete, DIDSet, DepositPreauth, EnableAmendment, diff --git a/src/containers/shared/components/Transaction/types.ts b/src/containers/shared/components/Transaction/types.ts index 722687b69..6c6413105 100644 --- a/src/containers/shared/components/Transaction/types.ts +++ b/src/containers/shared/components/Transaction/types.ts @@ -14,6 +14,7 @@ export enum TransactionCategory { } export enum TransactionAction { + ACCEPT = 'ACCEPT', CREATE = 'CREATE', CANCEL = 'CANCEL', FINISH = 'FINISH', From 4c034876102d889a567c0859c6578737aa328721 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Tue, 14 Jan 2025 11:51:53 -0500 Subject: [PATCH 03/18] simple tables completed --- package-lock.json | 54 ++++++------------- package.json | 2 +- public/locales/ca-CA/translations.json | 3 +- public/locales/en-US/translations.json | 5 +- public/locales/es-ES/translations.json | 5 +- public/locales/fr-FR/translations.json | 5 +- public/locales/ja-JP/translations.json | 5 +- public/locales/ko-KR/translations.json | 5 +- .../Transaction/CredentialAccept/Simple.tsx | 21 ++++---- .../Transaction/CredentialAccept/index.ts | 2 - .../Transaction/CredentialCreate/Simple.tsx | 46 ++++++++++++++++ .../Transaction/CredentialCreate/index.ts | 2 - .../Transaction/CredentialDelete/Simple.tsx | 40 ++++++++++++++ .../Transaction/CredentialDelete/index.ts | 2 - .../shared/components/Transaction/index.ts | 6 +-- 15 files changed, 140 insertions(+), 63 deletions(-) diff --git a/package-lock.json b/package-lock.json index 482783fdc..8648afce1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -111,7 +111,7 @@ "ts-jest": "^26.5.6", "ts-node": "^10.9.2", "typescript": "^4.9.5", - "xrpl": "^3.1.0" + "xrpl": "^4.1.0" }, "engines": { "node": ">=18.0.0 <19", @@ -24708,9 +24708,9 @@ } }, "node_modules/ripple-binary-codec": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ripple-binary-codec/-/ripple-binary-codec-2.1.0.tgz", - "integrity": "sha512-q0GAx+hj3UVcDbhXVjk7qeNfgUMehlElYJwiCuIBwqs/51GVTOwLr39Ht3eNsX5ow2xPRaC5mqHwcFDvLRm6cA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ripple-binary-codec/-/ripple-binary-codec-2.2.0.tgz", + "integrity": "sha512-93fvAW3oXux4NY5Xf79dUIOhud5DmyEcC5RrTYdl0BPaYOGXC/txCQl9FnwIVZGkVMtZFLcFwJfmH1zFgfRyKA==", "dev": true, "dependencies": { "@xrplf/isomorphic": "^1.0.1", @@ -24718,7 +24718,7 @@ "ripple-address-codec": "^5.0.0" }, "engines": { - "node": ">= 16" + "node": ">= 18" } }, "node_modules/ripple-keypairs": { @@ -28910,9 +28910,9 @@ "peer": true }, "node_modules/xrpl": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/xrpl/-/xrpl-3.1.0.tgz", - "integrity": "sha512-+97WiaF/AQTT6fXgD9Z5xyYbtlML0USCWrZFYjrC57yqtlWluacwwbMZa/I6ByVIKqCqVXJwRuRl20IQGlVGlg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/xrpl/-/xrpl-4.1.0.tgz", + "integrity": "sha512-H/+BCEnFLyQOBUC6h4nMKg7I9AuxHe4kj9ZwQHX2zoL9n/ZOERc6B2U079pogI84zCbYdUWIn4DkoIYvjO/hpg==", "dev": true, "dependencies": { "@scure/bip32": "^1.3.1", @@ -28920,14 +28920,13 @@ "@xrplf/isomorphic": "^1.0.1", "@xrplf/secret-numbers": "^1.0.0", "bignumber.js": "^9.0.0", - "cross-fetch": "^4.0.0", "eventemitter3": "^5.0.1", "ripple-address-codec": "^5.0.0", - "ripple-binary-codec": "^2.1.0", + "ripple-binary-codec": "^2.2.0", "ripple-keypairs": "^2.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" } }, "node_modules/xrpl-client": { @@ -28939,15 +28938,6 @@ "websocket": "^1.0.34" } }, - "node_modules/xrpl/node_modules/cross-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", - "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", - "dev": true, - "dependencies": { - "node-fetch": "^2.6.12" - } - }, "node_modules/xrpl/node_modules/eventemitter3": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", @@ -45661,9 +45651,9 @@ } }, "ripple-binary-codec": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ripple-binary-codec/-/ripple-binary-codec-2.1.0.tgz", - "integrity": "sha512-q0GAx+hj3UVcDbhXVjk7qeNfgUMehlElYJwiCuIBwqs/51GVTOwLr39Ht3eNsX5ow2xPRaC5mqHwcFDvLRm6cA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ripple-binary-codec/-/ripple-binary-codec-2.2.0.tgz", + "integrity": "sha512-93fvAW3oXux4NY5Xf79dUIOhud5DmyEcC5RrTYdl0BPaYOGXC/txCQl9FnwIVZGkVMtZFLcFwJfmH1zFgfRyKA==", "dev": true, "requires": { "@xrplf/isomorphic": "^1.0.1", @@ -48436,9 +48426,9 @@ "peer": true }, "xrpl": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/xrpl/-/xrpl-3.1.0.tgz", - "integrity": "sha512-+97WiaF/AQTT6fXgD9Z5xyYbtlML0USCWrZFYjrC57yqtlWluacwwbMZa/I6ByVIKqCqVXJwRuRl20IQGlVGlg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/xrpl/-/xrpl-4.1.0.tgz", + "integrity": "sha512-H/+BCEnFLyQOBUC6h4nMKg7I9AuxHe4kj9ZwQHX2zoL9n/ZOERc6B2U079pogI84zCbYdUWIn4DkoIYvjO/hpg==", "dev": true, "requires": { "@scure/bip32": "^1.3.1", @@ -48446,22 +48436,12 @@ "@xrplf/isomorphic": "^1.0.1", "@xrplf/secret-numbers": "^1.0.0", "bignumber.js": "^9.0.0", - "cross-fetch": "^4.0.0", "eventemitter3": "^5.0.1", "ripple-address-codec": "^5.0.0", - "ripple-binary-codec": "^2.1.0", + "ripple-binary-codec": "^2.2.0", "ripple-keypairs": "^2.0.0" }, "dependencies": { - "cross-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", - "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", - "dev": true, - "requires": { - "node-fetch": "^2.6.12" - } - }, "eventemitter3": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", diff --git a/package.json b/package.json index f042929bf..abe67e388 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "ts-jest": "^26.5.6", "ts-node": "^10.9.2", "typescript": "^4.9.5", - "xrpl": "^3.1.0" + "xrpl": "^4.1.0" }, "resolutions": { "jest-environment-jsdom": "29.3.1" diff --git a/public/locales/ca-CA/translations.json b/public/locales/ca-CA/translations.json index 02d1367b3..b0dbc6590 100644 --- a/public/locales/ca-CA/translations.json +++ b/public/locales/ca-CA/translations.json @@ -560,5 +560,6 @@ "search_results_banner": null, "enable_amendment_name": null, "amendment_status": null, - "expected_date": null + "expected_date": null, + "credential_type": null } diff --git a/public/locales/en-US/translations.json b/public/locales/en-US/translations.json index 215cd6885..448aafa8c 100644 --- a/public/locales/en-US/translations.json +++ b/public/locales/en-US/translations.json @@ -563,6 +563,9 @@ "search_results_banner": "Token search by name and account is now available! Try searching for USD", "enable_amendment_name": "Amendment Name", "amendment_status": "Amendment Status", - "expected_date": "Expected Date" + "expected_date": "Expected Date", + "credential_type": "Credential Type", + "subject": "Subject", + "expiration": "Expiration" } diff --git a/public/locales/es-ES/translations.json b/public/locales/es-ES/translations.json index 17965bd0a..ab2b47fee 100644 --- a/public/locales/es-ES/translations.json +++ b/public/locales/es-ES/translations.json @@ -556,5 +556,8 @@ "search_results_banner": null, "enable_amendment_name": null, "amendment_status": null, - "expected_date": null + "expected_date": null, + "credential_type": null, + "subject": null, + "expiration": null } diff --git a/public/locales/fr-FR/translations.json b/public/locales/fr-FR/translations.json index 33ac67e2d..57f01bb6a 100644 --- a/public/locales/fr-FR/translations.json +++ b/public/locales/fr-FR/translations.json @@ -557,5 +557,8 @@ "search_results_banner": null, "enable_amendment_name": null, "amendment_status": null, - "expected_date": null + "expected_date": null, + "credential_type": null, + "subject": null, + "expiration": null } diff --git a/public/locales/ja-JP/translations.json b/public/locales/ja-JP/translations.json index e5b667cac..37fd6afdb 100644 --- a/public/locales/ja-JP/translations.json +++ b/public/locales/ja-JP/translations.json @@ -556,5 +556,8 @@ "search_results_banner": null, "enable_amendment_name": null, "amendment_status": null, - "expected_date": null + "expected_date": null, + "credential_type": null, + "subject": null, + "expiration": null } diff --git a/public/locales/ko-KR/translations.json b/public/locales/ko-KR/translations.json index 0f5406903..05b878fda 100644 --- a/public/locales/ko-KR/translations.json +++ b/public/locales/ko-KR/translations.json @@ -554,5 +554,8 @@ "search_results_banner": null, "enable_amendment_name": null, "amendment_status": null, - "expected_date": null + "expected_date": null, + "credential_type": null, + "subject": null, + "expiration": null } diff --git a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx index 0dca0d812..0fe8431cc 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx @@ -1,4 +1,5 @@ import { useTranslation } from 'react-i18next' +import { type CredentialAccept } from 'xrpl' import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' import { SimpleRow } from '../SimpleRow' import { convertHexToString } from '../../../../../rippled/lib/utils' @@ -8,23 +9,23 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { URI, DIDDocument, Attestation } = data.instructions + const { Account, Issuer, CredentialType } = data.instructions return ( <> - {URI && ( - - {convertHexToString(URI)} + {Account && ( + + {convertHexToString(Account)} )} - {DIDDocument && ( - - {convertHexToString(DIDDocument)} + {Issuer && ( + + {convertHexToString(Issuer)} )} - {Attestation && ( - - {convertHexToString(Attestation)} + {CredentialType && ( + + {convertHexToString(CredentialType)} )} diff --git a/src/containers/shared/components/Transaction/CredentialAccept/index.ts b/src/containers/shared/components/Transaction/CredentialAccept/index.ts index 5da87c548..84477160d 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/index.ts +++ b/src/containers/shared/components/Transaction/CredentialAccept/index.ts @@ -5,11 +5,9 @@ import { } from '../types' import { Simple } from './Simple' -import { TableDetail } from './TableDetail' export const CredentialAcceptTransaction: TransactionMapping = { Simple, - TableDetail, action: TransactionAction.ACCEPT, category: TransactionCategory.ACCOUNT, } diff --git a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx index e69de29bb..477248735 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx @@ -0,0 +1,46 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialCreate } from 'xrpl' +import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' +import { SimpleRow } from '../SimpleRow' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +const Simple: TransactionSimpleComponent = ( + props: TransactionSimpleProps, +) => { + const { t } = useTranslation() + const { data } = props + const { Account, Subject, CredentialType, Expiration, URI } = + data.instructions + + return ( + <> + {Account && ( + + {convertHexToString(Account)} + + )} + {Subject && ( + + {convertHexToString(Subject)} + + )} + {CredentialType && ( + + {convertHexToString(CredentialType)} + + )} + {Expiration && ( + + {convertHexToString(Expiration)} + + )} + {URI && ( + + {convertHexToString(URI)} + + )} + + ) +} + +export { Simple } diff --git a/src/containers/shared/components/Transaction/CredentialCreate/index.ts b/src/containers/shared/components/Transaction/CredentialCreate/index.ts index 84cd7288e..4723e3d48 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/index.ts +++ b/src/containers/shared/components/Transaction/CredentialCreate/index.ts @@ -5,11 +5,9 @@ import { } from '../types' import { Simple } from './Simple' -import { TableDetail } from './TableDetail' export const CredentialCreateTransaction: TransactionMapping = { Simple, - TableDetail, action: TransactionAction.CREATE, category: TransactionCategory.ACCOUNT, } diff --git a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx index e69de29bb..a6ec5560e 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx @@ -0,0 +1,40 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialDelete } from 'xrpl' +import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' +import { SimpleRow } from '../SimpleRow' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +const Simple: TransactionSimpleComponent = ( + props: TransactionSimpleProps, +) => { + const { t } = useTranslation() + const { data } = props + const { Account, Subject, CredentialType, Issuer } = data.instructions + + return ( + <> + {Account && ( + + {convertHexToString(Account)} + + )} + {Subject && ( + + {convertHexToString(Subject)} + + )} + {Issuer && ( + + {convertHexToString(Issuer)} + + )} + {CredentialType && ( + + {convertHexToString(CredentialType)} + + )} + + ) +} + +export { Simple } diff --git a/src/containers/shared/components/Transaction/CredentialDelete/index.ts b/src/containers/shared/components/Transaction/CredentialDelete/index.ts index 4f9674c6d..64296dad4 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/index.ts +++ b/src/containers/shared/components/Transaction/CredentialDelete/index.ts @@ -5,11 +5,9 @@ import { } from '../types' import { Simple } from './Simple' -import { TableDetail } from './TableDetail' export const CredentialDeleteTransaction: TransactionMapping = { Simple, - TableDetail, action: TransactionAction.CANCEL, category: TransactionCategory.ACCOUNT, } diff --git a/src/containers/shared/components/Transaction/index.ts b/src/containers/shared/components/Transaction/index.ts index 8cccb61f4..f0d5171a1 100644 --- a/src/containers/shared/components/Transaction/index.ts +++ b/src/containers/shared/components/Transaction/index.ts @@ -6,9 +6,9 @@ import { AMMBid } from './AMMBid' import { AMMVote } from './AMMVote' import { AccountDeleteTransaction as AccountDelete } from './AccountDelete' import { AccountSetTransaction as AccountSet } from './AccountSet' -import { CredentialAcceptTransaction as CredentialAccept } from './.CredentialAccept' -import { CredentialAcceptTransaction as CredentialCreate } from './.CredentialCreate' -import { CredentialAcceptTransaction as CredentialDelete } from './.CredentialDelete' +import { CredentialAcceptTransaction as CredentialAccept } from './CredentialAccept' +import { CredentialAcceptTransaction as CredentialCreate } from './CredentialCreate' +import { CredentialAcceptTransaction as CredentialDelete } from './CredentialDelete' import { DIDSetTransaction as DIDSet } from './DIDSet' import { DepositPreauthTransaction as DepositPreauth } from './DepositPreauth' import { EnableAmendmentTransaction as EnableAmendment } from './EnableAmendment' From d62f271f0dc20ec59a8ea2ebf4b62e8bb03bcf39 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 15 Jan 2025 13:53:28 -0500 Subject: [PATCH 04/18] fix pr comments --- .../shared/components/Transaction/CredentialAccept/Simple.tsx | 4 ++-- .../CredentialAccept/test/mock_data/CredentialAccept.json | 0 .../CredentialCreate/test/mock_data/CredentialCreate.json | 0 .../CredentialDelete/test/mock_data/CredentialDelete.json | 0 src/containers/shared/components/Transaction/types.ts | 1 - 5 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json diff --git a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx index 0fe8431cc..a74b8a452 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx @@ -15,12 +15,12 @@ const Simple: TransactionSimpleComponent = ( <> {Account && ( - {convertHexToString(Account)} + {Account} )} {Issuer && ( - {convertHexToString(Issuer)} + {Issuer} )} {CredentialType && ( diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json b/src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json b/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json b/src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/types.ts b/src/containers/shared/components/Transaction/types.ts index 6c6413105..722687b69 100644 --- a/src/containers/shared/components/Transaction/types.ts +++ b/src/containers/shared/components/Transaction/types.ts @@ -14,7 +14,6 @@ export enum TransactionCategory { } export enum TransactionAction { - ACCEPT = 'ACCEPT', CREATE = 'CREATE', CANCEL = 'CANCEL', FINISH = 'FINISH', From 5bb90a39e8a33edfd3e3607d8b8a9c913d6f6f0d Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Fri, 17 Jan 2025 19:25:05 -0500 Subject: [PATCH 05/18] domain tx and cred tests --- public/locales/ca-CA/translations.json | 5 +- public/locales/en-US/translations.json | 3 +- public/locales/es-ES/translations.json | 3 +- public/locales/fr-FR/translations.json | 3 +- public/locales/ja-JP/translations.json | 3 +- public/locales/ko-KR/translations.json | 3 +- .../Transaction/CredentialCreate/Simple.tsx | 6 +- .../test/CredentialCreateSimple.test.tsx | 26 ++++++ .../test/mock_data/CredentialCreate.json | 79 +++++++++++++++++++ .../test/CredentialDeleteSimple.test.tsx | 25 ++++++ .../PermissionDomainDelete/Simple.tsx | 30 +++++++ .../PermissionDomainDelete/index.ts | 13 +++ .../test/CredentialCreateSimple.test.tsx} | 0 .../test/mock_data/CredentialCreate.json | 79 +++++++++++++++++++ .../PermissionDomainDelete/types.ts | 0 .../PermissionedDomainSet/Simple.tsx | 46 +++++++++++ .../PermissionedDomainSet/index.ts | 13 +++ .../test/PermissionedDomainSetSimple.tsx | 0 .../test/mock_data/PermissionedDomainSet.json | 1 + .../PermissionedDomainSet/types.ts | 0 20 files changed, 329 insertions(+), 9 deletions(-) create mode 100644 src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionDomainDelete/index.ts rename src/containers/shared/components/Transaction/{CredentialDelete/types.ts => PermissionDomainDelete/test/CredentialCreateSimple.test.tsx} (100%) create mode 100644 src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json create mode 100644 src/containers/shared/components/Transaction/PermissionDomainDelete/types.ts create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/types.ts diff --git a/public/locales/ca-CA/translations.json b/public/locales/ca-CA/translations.json index b0dbc6590..8d6b2d834 100644 --- a/public/locales/ca-CA/translations.json +++ b/public/locales/ca-CA/translations.json @@ -561,5 +561,8 @@ "enable_amendment_name": null, "amendment_status": null, "expected_date": null, - "credential_type": null + "credential_type": null, + "subject": null, + "expiration": null, + "domain_id": null } diff --git a/public/locales/en-US/translations.json b/public/locales/en-US/translations.json index 448aafa8c..9c122173d 100644 --- a/public/locales/en-US/translations.json +++ b/public/locales/en-US/translations.json @@ -566,6 +566,7 @@ "expected_date": "Expected Date", "credential_type": "Credential Type", "subject": "Subject", - "expiration": "Expiration" + "expiration": "Expiration", + "domain_id": "Domain ID" } diff --git a/public/locales/es-ES/translations.json b/public/locales/es-ES/translations.json index ab2b47fee..95b8bfb30 100644 --- a/public/locales/es-ES/translations.json +++ b/public/locales/es-ES/translations.json @@ -559,5 +559,6 @@ "expected_date": null, "credential_type": null, "subject": null, - "expiration": null + "expiration": null, + "domain_id": null } diff --git a/public/locales/fr-FR/translations.json b/public/locales/fr-FR/translations.json index 57f01bb6a..7644db455 100644 --- a/public/locales/fr-FR/translations.json +++ b/public/locales/fr-FR/translations.json @@ -560,5 +560,6 @@ "expected_date": null, "credential_type": null, "subject": null, - "expiration": null + "expiration": null, + "domain_id": null } diff --git a/public/locales/ja-JP/translations.json b/public/locales/ja-JP/translations.json index 37fd6afdb..8de8fdf0d 100644 --- a/public/locales/ja-JP/translations.json +++ b/public/locales/ja-JP/translations.json @@ -559,5 +559,6 @@ "expected_date": null, "credential_type": null, "subject": null, - "expiration": null + "expiration": null, + "domain_id": null } diff --git a/public/locales/ko-KR/translations.json b/public/locales/ko-KR/translations.json index 05b878fda..f78ca7a2a 100644 --- a/public/locales/ko-KR/translations.json +++ b/public/locales/ko-KR/translations.json @@ -557,5 +557,6 @@ "expected_date": null, "credential_type": null, "subject": null, - "expiration": null + "expiration": null, + "domain_id": null } diff --git a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx index 477248735..45153c546 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx @@ -16,12 +16,12 @@ const Simple: TransactionSimpleComponent = ( <> {Account && ( - {convertHexToString(Account)} + {Account} )} {Subject && ( - {convertHexToString(Subject)} + {Subject} )} {CredentialType && ( @@ -31,7 +31,7 @@ const Simple: TransactionSimpleComponent = ( )} {Expiration && ( - {convertHexToString(Expiration)} + {Expiration} )} {URI && ( diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx index e69de29bb..6035b95b1 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx @@ -0,0 +1,26 @@ +import { createSimpleWrapperFactory, expectSimpleRowText } from '../../test' +import { Simple } from '../Simple' +import CredentialCreate from './mock_data/CredentialCreate.json' + +const createWrapper = createSimpleWrapperFactory(Simple) + +describe('CredentialCreate: Simple', () => { + it('renders', () => { + const wrapper = createWrapper(CredentialCreate) + expectSimpleRowText( + wrapper, + 'account', + 'r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc', + ) + expectSimpleRowText( + wrapper, + 'credential-type', + '4D7920746573742063726564656E7469616C', + ) + expectSimpleRowText(wrapper, 'fee', '120') + expectSimpleRowText(wrapper, 'expiration', '') + expectSimpleRowText(wrapper, 'uri', '') + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json b/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json index e69de29bb..c4e026682 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json +++ b/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json @@ -0,0 +1,79 @@ +{ + "close_time_iso": "2025-01-15T20:16:42Z", + "ctid": "C07369C900010002", + "hash": "6BB9EB8E4A367AC1A4A93BB39922A114A6F96C4856FB70F70B3ECED37BEEA102", + "ledger_hash": "5424C54CBFE09C5A821C4CC64A5D52EAE448DBA00AD80D8A6557E94A21B61D6C", + "ledger_index": 7563721, + "meta": { + "AffectedNodes": [ + { + "ModifiedNode": { + "FinalFields": { + "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "Balance": "99999880", + "Flags": 0, + "OwnerCount": 1, + "Sequence": 7563718 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "5A756AC618962AFEBFE49B7C57C95D4CE6EB1F88904A925E3C5D649FF94C29D3", + "PreviousFields": { + "Balance": "100000000", + "OwnerCount": 0, + "Sequence": 7563717 + }, + "PreviousTxnID": "996AC52E9478156146CF756EAAA5175A43FB807192015A86BD09E1C23D9698E7", + "PreviousTxnLgrSeq": 7563717 + } + }, + { + "CreatedNode": { + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF", + "NewFields": { + "Owner": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", + "RootIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF" + } + } + }, + { + "CreatedNode": { + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C", + "NewFields": { + "Owner": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "RootIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C" + } + } + }, + { + "CreatedNode": { + "LedgerEntryType": "Credential", + "LedgerIndex": "EE35EC6AB60F859F58A612B96623586BD19ED6780D6187AD9C84665053DA4C7A", + "NewFields": { + "CredentialType": "4D7920746573742063726564656E7469616C", + "Issuer": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi" + } + } + } + ], + "TransactionIndex": 1, + "TransactionResult": "tesSUCCESS" + }, + "tx": { + "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "CredentialType": "4D7920746573742063726564656E7469616C", + "Fee": "120", + "Flags": 0, + "LastLedgerSequence": 7563739, + "Sequence": 7563717, + "SigningPubKey": "ED86E9A5E421440F96E2A93D8E0D981447A112790964745068474C90DE4F0E93C3", + "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", + "TransactionType": "CredentialCreate", + "TxnSignature": "B880DAB04C5F1F7946E573EB6BB6F681BAED04812416E5E135A00CCBA243935B88451F7BB701F127FEE2724B1E316D6982AB0496B12B6E7AE7C222F190561700", + "date": 790287402, + "ledger_index": 7563721 + }, + "validated": true +} diff --git a/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx index e69de29bb..a4d6087c8 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx @@ -0,0 +1,25 @@ +import { createSimpleWrapperFactory, expectSimpleRowText } from '../../test' +import { Simple } from '../Simple' +import CredentialDelete from './mock_data/CredentialDelete.json' + +const createWrapper = createSimpleWrapperFactory(Simple) + +describe('CredentialDelete: Simple', () => { + it('renders', () => { + const wrapper = createWrapper(CredentialDelete) + expectSimpleRowText( + wrapper, + 'account', + 'r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc', + ) + expectSimpleRowText( + wrapper, + 'credential-type', + '4D7920746573742063726564656E7469616C', + ) + expectSimpleRowText(wrapper, 'subject', '120') + expectSimpleRowText(wrapper, 'issuer', '') + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx b/src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx new file mode 100644 index 000000000..4cf7ee30b --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx @@ -0,0 +1,30 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialCreate } from 'xrpl' +import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' +import { SimpleRow } from '../SimpleRow' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +const Simple: TransactionSimpleComponent = ( + props: TransactionSimpleProps, +) => { + const { t } = useTranslation() + const { data } = props + const { Account, DomainID } = data.instructions + + return ( + <> + {Account && ( + + {Account} + + )} + {DomainID && ( + + {Account} + + )} + + ) +} + +export { Simple } diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/index.ts b/src/containers/shared/components/Transaction/PermissionDomainDelete/index.ts new file mode 100644 index 000000000..4723e3d48 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionDomainDelete/index.ts @@ -0,0 +1,13 @@ +import { + TransactionAction, + TransactionCategory, + TransactionMapping, +} from '../types' + +import { Simple } from './Simple' + +export const CredentialCreateTransaction: TransactionMapping = { + Simple, + action: TransactionAction.CREATE, + category: TransactionCategory.ACCOUNT, +} diff --git a/src/containers/shared/components/Transaction/CredentialDelete/types.ts b/src/containers/shared/components/Transaction/PermissionDomainDelete/test/CredentialCreateSimple.test.tsx similarity index 100% rename from src/containers/shared/components/Transaction/CredentialDelete/types.ts rename to src/containers/shared/components/Transaction/PermissionDomainDelete/test/CredentialCreateSimple.test.tsx diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json b/src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json new file mode 100644 index 000000000..70052a9f0 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json @@ -0,0 +1,79 @@ +{ + "close_time_iso": "2025-01-15T20:16:42Z", + "ctid": "C07369C900010002", + "hash": "6BB9EB8E4A367AC1A4A93BB39922A114A6F96C4856FB70F70B3ECED37BEEA102", + "ledger_hash": "5424C54CBFE09C5A821C4CC64A5D52EAE448DBA00AD80D8A6557E94A21B61D6C", + "ledger_index": 7563721, + "meta": { + "AffectedNodes": [ + { + "ModifiedNode": { + "FinalFields": { + "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "Balance": "99999880", + "Flags": 0, + "OwnerCount": 1, + "Sequence": 7563718 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "5A756AC618962AFEBFE49B7C57C95D4CE6EB1F88904A925E3C5D649FF94C29D3", + "PreviousFields": { + "Balance": "100000000", + "OwnerCount": 0, + "Sequence": 7563717 + }, + "PreviousTxnID": "996AC52E9478156146CF756EAAA5175A43FB807192015A86BD09E1C23D9698E7", + "PreviousTxnLgrSeq": 7563717 + } + }, + { + "CreatedNode": { + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF", + "NewFields": { + "Owner": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", + "RootIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF" + } + } + }, + { + "CreatedNode": { + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C", + "NewFields": { + "Owner": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "RootIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C" + } + } + }, + { + "CreatedNode": { + "LedgerEntryType": "Credential", + "LedgerIndex": "EE35EC6AB60F859F58A612B96623586BD19ED6780D6187AD9C84665053DA4C7A", + "NewFields": { + "CredentialType": "4D7920746573742063726564656E7469616C", + "Issuer": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi" + } + } + } + ], + "TransactionIndex": 1, + "TransactionResult": "tesSUCCESS" + }, + "tx_json": { + "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", + "CredentialType": "4D7920746573742063726564656E7469616C", + "Fee": "120", + "Flags": 0, + "LastLedgerSequence": 7563739, + "Sequence": 7563717, + "SigningPubKey": "ED86E9A5E421440F96E2A93D8E0D981447A112790964745068474C90DE4F0E93C3", + "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", + "TransactionType": "CredentialCreate", + "TxnSignature": "B880DAB04C5F1F7946E573EB6BB6F681BAED04812416E5E135A00CCBA243935B88451F7BB701F127FEE2724B1E316D6982AB0496B12B6E7AE7C222F190561700", + "date": 790287402, + "ledger_index": 7563721 + }, + "validated": true +} diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/types.ts b/src/containers/shared/components/Transaction/PermissionDomainDelete/types.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx new file mode 100644 index 000000000..45153c546 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx @@ -0,0 +1,46 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialCreate } from 'xrpl' +import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' +import { SimpleRow } from '../SimpleRow' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +const Simple: TransactionSimpleComponent = ( + props: TransactionSimpleProps, +) => { + const { t } = useTranslation() + const { data } = props + const { Account, Subject, CredentialType, Expiration, URI } = + data.instructions + + return ( + <> + {Account && ( + + {Account} + + )} + {Subject && ( + + {Subject} + + )} + {CredentialType && ( + + {convertHexToString(CredentialType)} + + )} + {Expiration && ( + + {Expiration} + + )} + {URI && ( + + {convertHexToString(URI)} + + )} + + ) +} + +export { Simple } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts b/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts new file mode 100644 index 000000000..4723e3d48 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts @@ -0,0 +1,13 @@ +import { + TransactionAction, + TransactionCategory, + TransactionMapping, +} from '../types' + +import { Simple } from './Simple' + +export const CredentialCreateTransaction: TransactionMapping = { + Simple, + action: TransactionAction.CREATE, + category: TransactionCategory.ACCOUNT, +} diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json new file mode 100644 index 000000000..aa7f31c09 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json @@ -0,0 +1 @@ +{'accepted': True, 'account_sequence_available': 1866, 'account_sequence_next': 1866, 'applied': True, 'broadcast': True, 'engine_result': 'tesSUCCESS', 'engine_result_code': 0, 'engine_result_message': 'The transaction was applied. Only final in a validated ledger.', 'kept': True, 'open_ledger_cost': '200', 'queued': False, 'tx_blob': '12003E210000F7E022000000002400000749201B000007696840000000000000C87321ED00FECDF300DB6DE76590B633EDCA4B45A62B38DCE7442D4258FCAE068BEBEF207440D564214EFEED81CAF644F2078B6A873CBF9498A144136DA7EB25D90A17B8DC1E879DAE3405C714156DE3F09379260C7FBD8387BD6515FE2C00CFF1B8A6A4B1028114B29798108C73C71C4205C526476FFA061CE8BCC7F01CE021701F104964656E74697479446F63756D656E748414B29798108C73C71C4205C526476FFA061CE8BCC7E1F1', 'tx_json': {'AcceptedCredentials': [{'Credential': {'CredentialType': '4964656E74697479446F63756D656E74', 'Issuer': 'rHHJtnkh9wQ22iJQeewDVPvRiunoFdYhZH'}}], 'Account': 'rHHJtnkh9wQ22iJQeewDVPvRiunoFdYhZH', 'Fee': '200', 'Flags': 0, 'LastLedgerSequence': 1897, 'NetworkID': 63456, 'Sequence': 1865, 'SigningPubKey': 'ED00FECDF300DB6DE76590B633EDCA4B45A62B38DCE7442D4258FCAE068BEBEF20', 'TransactionType': 'PermissionedDomainSet', 'TxnSignature': 'D564214EFEED81CAF644F2078B6A873CBF9498A144136DA7EB25D90A17B8DC1E879DAE3405C714156DE3F09379260C7FBD8387BD6515FE2C00CFF1B8A6A4B102', 'hash': 'B819BAA232A4DA2D290B65D26C6A7E9A4BDB3C759ECB26570724F0BDBD8B6777'}, 'validated_ledger_index': 1877} diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/types.ts b/src/containers/shared/components/Transaction/PermissionedDomainSet/types.ts new file mode 100644 index 000000000..e69de29bb From e6ce3078b3b9dfd219d2e6ea18274b18a043b265 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Tue, 28 Jan 2025 12:27:20 -0500 Subject: [PATCH 06/18] add permission domain set --- .../components/Transaction/PermissionedDomainSet/parser.ts | 0 .../test/mock_data/PermissionedDomainSet.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/parser.ts diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/parser.ts b/src/containers/shared/components/Transaction/PermissionedDomainSet/parser.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json index aa7f31c09..3139491a2 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json @@ -1 +1 @@ -{'accepted': True, 'account_sequence_available': 1866, 'account_sequence_next': 1866, 'applied': True, 'broadcast': True, 'engine_result': 'tesSUCCESS', 'engine_result_code': 0, 'engine_result_message': 'The transaction was applied. Only final in a validated ledger.', 'kept': True, 'open_ledger_cost': '200', 'queued': False, 'tx_blob': '12003E210000F7E022000000002400000749201B000007696840000000000000C87321ED00FECDF300DB6DE76590B633EDCA4B45A62B38DCE7442D4258FCAE068BEBEF207440D564214EFEED81CAF644F2078B6A873CBF9498A144136DA7EB25D90A17B8DC1E879DAE3405C714156DE3F09379260C7FBD8387BD6515FE2C00CFF1B8A6A4B1028114B29798108C73C71C4205C526476FFA061CE8BCC7F01CE021701F104964656E74697479446F63756D656E748414B29798108C73C71C4205C526476FFA061CE8BCC7E1F1', 'tx_json': {'AcceptedCredentials': [{'Credential': {'CredentialType': '4964656E74697479446F63756D656E74', 'Issuer': 'rHHJtnkh9wQ22iJQeewDVPvRiunoFdYhZH'}}], 'Account': 'rHHJtnkh9wQ22iJQeewDVPvRiunoFdYhZH', 'Fee': '200', 'Flags': 0, 'LastLedgerSequence': 1897, 'NetworkID': 63456, 'Sequence': 1865, 'SigningPubKey': 'ED00FECDF300DB6DE76590B633EDCA4B45A62B38DCE7442D4258FCAE068BEBEF20', 'TransactionType': 'PermissionedDomainSet', 'TxnSignature': 'D564214EFEED81CAF644F2078B6A873CBF9498A144136DA7EB25D90A17B8DC1E879DAE3405C714156DE3F09379260C7FBD8387BD6515FE2C00CFF1B8A6A4B102', 'hash': 'B819BAA232A4DA2D290B65D26C6A7E9A4BDB3C759ECB26570724F0BDBD8B6777'}, 'validated_ledger_index': 1877} +{'close_time_iso': '2025-01-19T02:21:39Z', 'ctid': 'C00000400000F7E0', 'hash': '561E23C018C9D6B9A1C03F1AD90E2DEB57DEF5ADA0C3886004F3B1423948A9A7', 'ledger_hash': 'D9408AA31B24A03E999C13FE93B0D43174FD1CC4BACE884B012E7FAB255BDEED', 'ledger_index': 64, 'meta': {'AffectedNodes': [{'CreatedNode': {'LedgerEntryType': 'PermissionedDomain', 'LedgerIndex': '1FF57AD569BC5258A4D3C5AAB77DDEBB68E286F72D8EAB49DEE3DD35C2C5A4AF', 'NewFields': {'AcceptedCredentials': [{'Credential': {'CredentialType': '4964656E74697479446F63756D656E74', 'Issuer': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab'}}], 'Owner': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'Sequence': 50}}}, {'ModifiedNode': {'FinalFields': {'Flags': 0, 'Owner': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'RootIndex': '3ECFCBD5393D4EBA88476B159B542BD7D2159D72BF35488ED294E90931567D93'}, 'LedgerEntryType': 'DirectoryNode', 'LedgerIndex': '3ECFCBD5393D4EBA88476B159B542BD7D2159D72BF35488ED294E90931567D93', 'PreviousTxnID': 'E3A10DD121B54CB7D8922A77D26C9D766FD8A07850287F278F9313057D664DD4', 'PreviousTxnLgrSeq': 63}}, {'ModifiedNode': {'FinalFields': {'Account': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'Balance': '1999997799', 'Flags': 0, 'OwnerCount': 4, 'Sequence': 51}, 'LedgerEntryType': 'AccountRoot', 'LedgerIndex': 'DBACFFF9DBF52B26633B4CED74BD43E8AEF09C20F46C80D83C3A3230BD4E3985', 'PreviousFields': {'Balance': '1999997999', 'OwnerCount': 3, 'Sequence': 50}, 'PreviousTxnID': 'E3A10DD121B54CB7D8922A77D26C9D766FD8A07850287F278F9313057D664DD4', 'PreviousTxnLgrSeq': 63}}], 'TransactionIndex': 0, 'TransactionResult': 'tesSUCCESS'}, 'tx_json': {'AcceptedCredentials': [{'Credential': {'CredentialType': '4964656E74697479446F63756D656E74', 'Issuer': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab'}}], 'Account': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'Fee': '200', 'Flags': 0, 'LastLedgerSequence': 83, 'NetworkID': 63456, 'Sequence': 50, 'SigningPubKey': 'ED7EE9DDAFF54720AD642944B666CC359091F170BA49C084C3E59803ACDBB17647', 'TransactionType': 'PermissionedDomainSet', 'TxnSignature': 'B505D12FEDCBAEE792FE5317253E633C094F5D7D8B6D3C9A54B4EAF1F56B2D7F537356D1292A2BAFAE163343BD659F05BF8C916EBA0B10B54D78F20B33B93205', 'date': 790568499, 'ledger_index': 64}, 'validated': True} From 9522b3b36264f3661b70d83711789b725f232a50 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Tue, 28 Jan 2025 15:15:44 -0500 Subject: [PATCH 07/18] simple pages --- .../test/mock_data/CredentialCreate.json | 79 ----------------- .../Simple.tsx | 6 +- .../index.ts | 0 .../test/CredentialCreateSimple.test.tsx | 0 .../mock_data/PermissionedDomainDelete.json | 83 ++++++++++++++++++ .../types.ts | 0 .../PermissionedDomainSet/Simple.tsx | 37 ++++---- .../test/mock_data/PermissionedDomainSet.json | 84 ++++++++++++++++++- 8 files changed, 184 insertions(+), 105 deletions(-) delete mode 100644 src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json rename src/containers/shared/components/Transaction/{PermissionDomainDelete => PermissionedDomainDelete}/Simple.tsx (83%) rename src/containers/shared/components/Transaction/{PermissionDomainDelete => PermissionedDomainDelete}/index.ts (100%) rename src/containers/shared/components/Transaction/{PermissionDomainDelete => PermissionedDomainDelete}/test/CredentialCreateSimple.test.tsx (100%) create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json rename src/containers/shared/components/Transaction/{PermissionDomainDelete => PermissionedDomainDelete}/types.ts (100%) diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json b/src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json deleted file mode 100644 index 70052a9f0..000000000 --- a/src/containers/shared/components/Transaction/PermissionDomainDelete/test/mock_data/CredentialCreate.json +++ /dev/null @@ -1,79 +0,0 @@ -{ - "close_time_iso": "2025-01-15T20:16:42Z", - "ctid": "C07369C900010002", - "hash": "6BB9EB8E4A367AC1A4A93BB39922A114A6F96C4856FB70F70B3ECED37BEEA102", - "ledger_hash": "5424C54CBFE09C5A821C4CC64A5D52EAE448DBA00AD80D8A6557E94A21B61D6C", - "ledger_index": 7563721, - "meta": { - "AffectedNodes": [ - { - "ModifiedNode": { - "FinalFields": { - "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "Balance": "99999880", - "Flags": 0, - "OwnerCount": 1, - "Sequence": 7563718 - }, - "LedgerEntryType": "AccountRoot", - "LedgerIndex": "5A756AC618962AFEBFE49B7C57C95D4CE6EB1F88904A925E3C5D649FF94C29D3", - "PreviousFields": { - "Balance": "100000000", - "OwnerCount": 0, - "Sequence": 7563717 - }, - "PreviousTxnID": "996AC52E9478156146CF756EAAA5175A43FB807192015A86BD09E1C23D9698E7", - "PreviousTxnLgrSeq": 7563717 - } - }, - { - "CreatedNode": { - "LedgerEntryType": "DirectoryNode", - "LedgerIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF", - "NewFields": { - "Owner": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", - "RootIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF" - } - } - }, - { - "CreatedNode": { - "LedgerEntryType": "DirectoryNode", - "LedgerIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C", - "NewFields": { - "Owner": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "RootIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C" - } - } - }, - { - "CreatedNode": { - "LedgerEntryType": "Credential", - "LedgerIndex": "EE35EC6AB60F859F58A612B96623586BD19ED6780D6187AD9C84665053DA4C7A", - "NewFields": { - "CredentialType": "4D7920746573742063726564656E7469616C", - "Issuer": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi" - } - } - } - ], - "TransactionIndex": 1, - "TransactionResult": "tesSUCCESS" - }, - "tx_json": { - "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "CredentialType": "4D7920746573742063726564656E7469616C", - "Fee": "120", - "Flags": 0, - "LastLedgerSequence": 7563739, - "Sequence": 7563717, - "SigningPubKey": "ED86E9A5E421440F96E2A93D8E0D981447A112790964745068474C90DE4F0E93C3", - "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", - "TransactionType": "CredentialCreate", - "TxnSignature": "B880DAB04C5F1F7946E573EB6BB6F681BAED04812416E5E135A00CCBA243935B88451F7BB701F127FEE2724B1E316D6982AB0496B12B6E7AE7C222F190561700", - "date": 790287402, - "ledger_index": 7563721 - }, - "validated": true -} diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx similarity index 83% rename from src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx rename to src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx index 4cf7ee30b..40147fbd2 100644 --- a/src/containers/shared/components/Transaction/PermissionDomainDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx @@ -1,11 +1,11 @@ import { useTranslation } from 'react-i18next' -import { type CredentialCreate } from 'xrpl' +import { type PermissionedDomainDelete } from 'xrpl' import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' import { SimpleRow } from '../SimpleRow' import { convertHexToString } from '../../../../../rippled/lib/utils' const Simple: TransactionSimpleComponent = ( - props: TransactionSimpleProps, + props: TransactionSimpleProps, ) => { const { t } = useTranslation() const { data } = props @@ -20,7 +20,7 @@ const Simple: TransactionSimpleComponent = ( )} {DomainID && ( - {Account} + {DomainID} )} diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/index.ts b/src/containers/shared/components/Transaction/PermissionedDomainDelete/index.ts similarity index 100% rename from src/containers/shared/components/Transaction/PermissionDomainDelete/index.ts rename to src/containers/shared/components/Transaction/PermissionedDomainDelete/index.ts diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/test/CredentialCreateSimple.test.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/CredentialCreateSimple.test.tsx similarity index 100% rename from src/containers/shared/components/Transaction/PermissionDomainDelete/test/CredentialCreateSimple.test.tsx rename to src/containers/shared/components/Transaction/PermissionedDomainDelete/test/CredentialCreateSimple.test.tsx diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json new file mode 100644 index 000000000..255113d34 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json @@ -0,0 +1,83 @@ +{ + "close_time_iso ": "2025-01-21T01:51:40Z ", + "ctid ": "C000005A0000F7E0 ", + "hash ": "1008A97884DD03C3B4812C53D01B2482F55B9C2E1E1323DE468B862BA002A771 ", + "ledger_hash ": "E60EC716557B89B709B037D2AE8252A909020E31CAE0C4659FB2739F47997979 ", + "ledger_index ": 90, + "meta ": { + "AffectedNodes ": [ + { + "ModifiedNode ": { + "FinalFields ": { + "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "Balance ": "1999997599 ", + "Flags ": 0, + "OwnerCount ": 3, + "Sequence ": 77 + }, + "LedgerEntryType ": "AccountRoot ", + "LedgerIndex ": "5A8ABEB4FA540056A51E0D25177DB7E672E6D7E947DF5D347B9E1489D106F873 ", + "PreviousFields ": { + "Balance ": "1999997799 ", + "OwnerCount ": 4, + "Sequence ": 76 + }, + "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", + "PreviousTxnLgrSeq ": 89 + } + }, + { + "ModifiedNode ": { + "FinalFields ": { + "Flags ": 0, + "Owner ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "RootIndex ": "D9B8A922B4C857D4BA2CED2870A54D0DF9A45F7D9F7A145B627E291CCBD73FEE " + }, + "LedgerEntryType ": "DirectoryNode ", + "LedgerIndex ": "D9B8A922B4C857D4BA2CED2870A54D0DF9A45F7D9F7A145B627E291CCBD73FEE ", + "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", + "PreviousTxnLgrSeq ": 89 + } + }, + { + "DeletedNode ": { + "FinalFields ": { + "AcceptedCredentials ": [ + { + "Credential ": { + "CredentialType ": "4964656E74697479446F63756D656E74 ", + "Issuer ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 " + } + } + ], + "Flags ": 0, + "Owner ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "OwnerNode ": "0 ", + "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", + "PreviousTxnLgrSeq ": 89, + "Sequence ": 75 + }, + "LedgerEntryType ": "PermissionedDomain ", + "LedgerIndex ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E " + } + } + ], + "TransactionIndex ": 0, + "TransactionResult ": "tesSUCCESS " + }, + "tx_json ": { + "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "DomainID ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E ", + "Fee ": "200 ", + "Flags ": 0, + "LastLedgerSequence ": 109, + "NetworkID ": 63456, + "Sequence ": 76, + "SigningPubKey ": "ED0FD90553E43698CA5878F9AE1063AF1178728324356BFF116D3331B243F11FDD ", + "TransactionType ": "PermissionedDomainDelete ", + "TxnSignature ": "9C248D71E6221DBBE2F65DB2D3B7B0B0DF8FA11057A60719CCBE6A257D6255068E39D82C740ED7B05B3C99A4A591DA59847C0222A6B5F8DC90C480D249F30E01 ", + "date ": 790739500, + "ledger_index ": 90 + }, + "validated ": true +} diff --git a/src/containers/shared/components/Transaction/PermissionDomainDelete/types.ts b/src/containers/shared/components/Transaction/PermissionedDomainDelete/types.ts similarity index 100% rename from src/containers/shared/components/Transaction/PermissionDomainDelete/types.ts rename to src/containers/shared/components/Transaction/PermissionedDomainDelete/types.ts diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx index 45153c546..3910433f6 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx @@ -1,16 +1,15 @@ import { useTranslation } from 'react-i18next' -import { type CredentialCreate } from 'xrpl' +import { type PermissionedDomainSet } from 'xrpl' import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' import { SimpleRow } from '../SimpleRow' import { convertHexToString } from '../../../../../rippled/lib/utils' const Simple: TransactionSimpleComponent = ( - props: TransactionSimpleProps, + props: TransactionSimpleProps, ) => { const { t } = useTranslation() const { data } = props - const { Account, Subject, CredentialType, Expiration, URI } = - data.instructions + const { Account, DomainID, AcceptedCredentials } = data.instructions return ( <> @@ -19,26 +18,20 @@ const Simple: TransactionSimpleComponent = ( {Account} )} - {Subject && ( - - {Subject} - - )} - {CredentialType && ( - - {convertHexToString(CredentialType)} - - )} - {Expiration && ( - - {Expiration} - - )} - {URI && ( - - {convertHexToString(URI)} + {DomainID && ( + + {DomainID} )} + {AcceptedCredentials && + AcceptedCredentials.map((credential) => ( + + {credential} + + ))} ) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json index 3139491a2..255113d34 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json @@ -1 +1,83 @@ -{'close_time_iso': '2025-01-19T02:21:39Z', 'ctid': 'C00000400000F7E0', 'hash': '561E23C018C9D6B9A1C03F1AD90E2DEB57DEF5ADA0C3886004F3B1423948A9A7', 'ledger_hash': 'D9408AA31B24A03E999C13FE93B0D43174FD1CC4BACE884B012E7FAB255BDEED', 'ledger_index': 64, 'meta': {'AffectedNodes': [{'CreatedNode': {'LedgerEntryType': 'PermissionedDomain', 'LedgerIndex': '1FF57AD569BC5258A4D3C5AAB77DDEBB68E286F72D8EAB49DEE3DD35C2C5A4AF', 'NewFields': {'AcceptedCredentials': [{'Credential': {'CredentialType': '4964656E74697479446F63756D656E74', 'Issuer': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab'}}], 'Owner': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'Sequence': 50}}}, {'ModifiedNode': {'FinalFields': {'Flags': 0, 'Owner': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'RootIndex': '3ECFCBD5393D4EBA88476B159B542BD7D2159D72BF35488ED294E90931567D93'}, 'LedgerEntryType': 'DirectoryNode', 'LedgerIndex': '3ECFCBD5393D4EBA88476B159B542BD7D2159D72BF35488ED294E90931567D93', 'PreviousTxnID': 'E3A10DD121B54CB7D8922A77D26C9D766FD8A07850287F278F9313057D664DD4', 'PreviousTxnLgrSeq': 63}}, {'ModifiedNode': {'FinalFields': {'Account': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'Balance': '1999997799', 'Flags': 0, 'OwnerCount': 4, 'Sequence': 51}, 'LedgerEntryType': 'AccountRoot', 'LedgerIndex': 'DBACFFF9DBF52B26633B4CED74BD43E8AEF09C20F46C80D83C3A3230BD4E3985', 'PreviousFields': {'Balance': '1999997999', 'OwnerCount': 3, 'Sequence': 50}, 'PreviousTxnID': 'E3A10DD121B54CB7D8922A77D26C9D766FD8A07850287F278F9313057D664DD4', 'PreviousTxnLgrSeq': 63}}], 'TransactionIndex': 0, 'TransactionResult': 'tesSUCCESS'}, 'tx_json': {'AcceptedCredentials': [{'Credential': {'CredentialType': '4964656E74697479446F63756D656E74', 'Issuer': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab'}}], 'Account': 'rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab', 'Fee': '200', 'Flags': 0, 'LastLedgerSequence': 83, 'NetworkID': 63456, 'Sequence': 50, 'SigningPubKey': 'ED7EE9DDAFF54720AD642944B666CC359091F170BA49C084C3E59803ACDBB17647', 'TransactionType': 'PermissionedDomainSet', 'TxnSignature': 'B505D12FEDCBAEE792FE5317253E633C094F5D7D8B6D3C9A54B4EAF1F56B2D7F537356D1292A2BAFAE163343BD659F05BF8C916EBA0B10B54D78F20B33B93205', 'date': 790568499, 'ledger_index': 64}, 'validated': True} +{ + "close_time_iso ": "2025-01-21T01:51:40Z ", + "ctid ": "C000005A0000F7E0 ", + "hash ": "1008A97884DD03C3B4812C53D01B2482F55B9C2E1E1323DE468B862BA002A771 ", + "ledger_hash ": "E60EC716557B89B709B037D2AE8252A909020E31CAE0C4659FB2739F47997979 ", + "ledger_index ": 90, + "meta ": { + "AffectedNodes ": [ + { + "ModifiedNode ": { + "FinalFields ": { + "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "Balance ": "1999997599 ", + "Flags ": 0, + "OwnerCount ": 3, + "Sequence ": 77 + }, + "LedgerEntryType ": "AccountRoot ", + "LedgerIndex ": "5A8ABEB4FA540056A51E0D25177DB7E672E6D7E947DF5D347B9E1489D106F873 ", + "PreviousFields ": { + "Balance ": "1999997799 ", + "OwnerCount ": 4, + "Sequence ": 76 + }, + "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", + "PreviousTxnLgrSeq ": 89 + } + }, + { + "ModifiedNode ": { + "FinalFields ": { + "Flags ": 0, + "Owner ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "RootIndex ": "D9B8A922B4C857D4BA2CED2870A54D0DF9A45F7D9F7A145B627E291CCBD73FEE " + }, + "LedgerEntryType ": "DirectoryNode ", + "LedgerIndex ": "D9B8A922B4C857D4BA2CED2870A54D0DF9A45F7D9F7A145B627E291CCBD73FEE ", + "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", + "PreviousTxnLgrSeq ": 89 + } + }, + { + "DeletedNode ": { + "FinalFields ": { + "AcceptedCredentials ": [ + { + "Credential ": { + "CredentialType ": "4964656E74697479446F63756D656E74 ", + "Issuer ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 " + } + } + ], + "Flags ": 0, + "Owner ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "OwnerNode ": "0 ", + "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", + "PreviousTxnLgrSeq ": 89, + "Sequence ": 75 + }, + "LedgerEntryType ": "PermissionedDomain ", + "LedgerIndex ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E " + } + } + ], + "TransactionIndex ": 0, + "TransactionResult ": "tesSUCCESS " + }, + "tx_json ": { + "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", + "DomainID ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E ", + "Fee ": "200 ", + "Flags ": 0, + "LastLedgerSequence ": 109, + "NetworkID ": 63456, + "Sequence ": 76, + "SigningPubKey ": "ED0FD90553E43698CA5878F9AE1063AF1178728324356BFF116D3331B243F11FDD ", + "TransactionType ": "PermissionedDomainDelete ", + "TxnSignature ": "9C248D71E6221DBBE2F65DB2D3B7B0B0DF8FA11057A60719CCBE6A257D6255068E39D82C740ED7B05B3C99A4A591DA59847C0222A6B5F8DC90C480D249F30E01 ", + "date ": 790739500, + "ledger_index ": 90 + }, + "validated ": true +} From cf0cba3a963c9d37aebfe571749a2abbfb743a43 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 13:52:27 -0500 Subject: [PATCH 08/18] tabledetail + cleanups --- public/locales/en-US/translations.json | 3 +- public/locales/es-ES/translations.json | 3 +- public/locales/fr-FR/translations.json | 3 +- public/locales/ja-JP/translations.json | 3 +- public/locales/ko-KR/translations.json | 3 +- .../CredentialAccept/TableDetail.tsx | 35 +++++++++++++++++++ .../Transaction/CredentialAccept/index.ts | 2 +- .../PermissionedDomainDelete/index.ts | 4 +-- .../PermissionedDomainSet/Simple.tsx | 19 +++++----- .../PermissionedDomainSet/index.ts | 4 +-- .../shared/components/Transaction/index.ts | 4 +++ 11 files changed, 64 insertions(+), 19 deletions(-) create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx diff --git a/public/locales/en-US/translations.json b/public/locales/en-US/translations.json index 9c122173d..3a2edee4f 100644 --- a/public/locales/en-US/translations.json +++ b/public/locales/en-US/translations.json @@ -567,6 +567,7 @@ "credential_type": "Credential Type", "subject": "Subject", "expiration": "Expiration", - "domain_id": "Domain ID" + "domain_id": "Domain ID", + "accepted_credentials": "Accepted Credentials" } diff --git a/public/locales/es-ES/translations.json b/public/locales/es-ES/translations.json index 95b8bfb30..e6da8e90a 100644 --- a/public/locales/es-ES/translations.json +++ b/public/locales/es-ES/translations.json @@ -560,5 +560,6 @@ "credential_type": null, "subject": null, "expiration": null, - "domain_id": null + "domain_id": null, + "accepted_credentials": null } diff --git a/public/locales/fr-FR/translations.json b/public/locales/fr-FR/translations.json index 7644db455..412be7de2 100644 --- a/public/locales/fr-FR/translations.json +++ b/public/locales/fr-FR/translations.json @@ -561,5 +561,6 @@ "credential_type": null, "subject": null, "expiration": null, - "domain_id": null + "domain_id": null, + "accepted_credentials": null } diff --git a/public/locales/ja-JP/translations.json b/public/locales/ja-JP/translations.json index 8de8fdf0d..b35a5e364 100644 --- a/public/locales/ja-JP/translations.json +++ b/public/locales/ja-JP/translations.json @@ -560,5 +560,6 @@ "credential_type": null, "subject": null, "expiration": null, - "domain_id": null + "domain_id": null, + "accepted_credentials": null } diff --git a/public/locales/ko-KR/translations.json b/public/locales/ko-KR/translations.json index f78ca7a2a..015533e01 100644 --- a/public/locales/ko-KR/translations.json +++ b/public/locales/ko-KR/translations.json @@ -558,5 +558,6 @@ "credential_type": null, "subject": null, "expiration": null, - "domain_id": null + "domain_id": null, + "accepted_credentials": null } diff --git a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx new file mode 100644 index 000000000..02bcba718 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx @@ -0,0 +1,35 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialAccept } from 'xrpl' +import { TransactionTableDetailProps } from '../types' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +export const TableDetail = ({ + instructions, +}: TransactionTableDetailProps) => { + const { t } = useTranslation() + const { Account, Issuer, CredentialType } = instructions + return ( +
+ {Account && ( +
+ {t('account')}: + {Account} +
+ )} + {Issuer && ( +
+ {t('issuer')}: + {Issuer} +
+ )} + {Issuer && ( +
+ {t('credential_type')}: + + {convertHexToString(CredentialType)} + +
+ )} +
+ ) +} diff --git a/src/containers/shared/components/Transaction/CredentialAccept/index.ts b/src/containers/shared/components/Transaction/CredentialAccept/index.ts index 84477160d..0b8884932 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/index.ts +++ b/src/containers/shared/components/Transaction/CredentialAccept/index.ts @@ -8,6 +8,6 @@ import { Simple } from './Simple' export const CredentialAcceptTransaction: TransactionMapping = { Simple, - action: TransactionAction.ACCEPT, + action: TransactionAction.MODIFY, category: TransactionCategory.ACCOUNT, } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/index.ts b/src/containers/shared/components/Transaction/PermissionedDomainDelete/index.ts index 4723e3d48..a9a0319ad 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainDelete/index.ts +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/index.ts @@ -6,8 +6,8 @@ import { import { Simple } from './Simple' -export const CredentialCreateTransaction: TransactionMapping = { +export const PermissionedDomainDeleteTransaction: TransactionMapping = { Simple, - action: TransactionAction.CREATE, + action: TransactionAction.CANCEL, category: TransactionCategory.ACCOUNT, } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx index 3910433f6..c4fb0b7c2 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx @@ -23,15 +23,16 @@ const Simple: TransactionSimpleComponent = ( {DomainID}
)} - {AcceptedCredentials && - AcceptedCredentials.map((credential) => ( - - {credential} - - ))} + {AcceptedCredentials && ( + + {AcceptedCredentials.map((credential) => ( +
{credential}
+ ))} +
+ )} ) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts b/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts index 4723e3d48..f7810c7b2 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/index.ts @@ -6,8 +6,8 @@ import { import { Simple } from './Simple' -export const CredentialCreateTransaction: TransactionMapping = { +export const PermissionedDomainSetTransaction: TransactionMapping = { Simple, - action: TransactionAction.CREATE, + action: TransactionAction.MODIFY, category: TransactionCategory.ACCOUNT, } diff --git a/src/containers/shared/components/Transaction/index.ts b/src/containers/shared/components/Transaction/index.ts index f0d5171a1..36c3ca66d 100644 --- a/src/containers/shared/components/Transaction/index.ts +++ b/src/containers/shared/components/Transaction/index.ts @@ -29,6 +29,8 @@ import { PaymentTransaction as Payment } from './Payment' import { PaymentChannelClaimTransaction as PaymentChannelClaim } from './PaymentChannelClaim' import { PaymentChannelCreateTransaction as PaymentChannelCreate } from './PaymentChannelCreate' import { PaymentChannelFundTransaction as PaymentChannelFund } from './PaymentChannelFund' +import { PermissionedDomainDeleteTransaction as PermissionedDomainDelete } from './PermissionedDomainDelete' +import { PermissionedDomainSetTransaction as PermissionedDomainSet } from './PermissionedDomainSet' import { SetFeeTransaction as SetFee } from './SetFee' import { SetHookTransaction as SetHook } from './SetHook' import { SetRegularKeyTransaction as SetRegularKey } from './SetRegularKey' @@ -82,6 +84,8 @@ export const transactionTypes: { [key: string]: TransactionMapping } = { PaymentChannelCreate, PaymentChannelClaim, PaymentChannelFund, + PermissionedDomainDelete, + PermissionedDomainSet, SetFee, SetHook, SetRegularKey, From 7472ae5a6071af823410caa96ca0c82fb75d759d Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 14:10:15 -0500 Subject: [PATCH 09/18] tabledetails --- .../CredentialAccept/TableDetail.tsx | 2 +- .../CredentialCreate/TableDetail.tsx | 47 +++++++++++++++++++ .../CredentialDelete/TableDetail.tsx | 41 ++++++++++++++++ 3 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx diff --git a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx index 02bcba718..32ab09e67 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx @@ -22,7 +22,7 @@ export const TableDetail = ({ {Issuer} )} - {Issuer && ( + {CredentialType && (
{t('credential_type')}: diff --git a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx new file mode 100644 index 000000000..130dbb44c --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx @@ -0,0 +1,47 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialCreate } from 'xrpl' +import { TransactionTableDetailProps } from '../types' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +export const TableDetail = ({ + instructions, +}: TransactionTableDetailProps) => { + const { t } = useTranslation() + const { Account, Subject, CredentialType, Expiration, URI } = instructions + return ( +
+ {Account && ( +
+ {t('account')}: + {Account} +
+ )} + {Subject && ( +
+ {t('subject')}: + {Subject} +
+ )} + {CredentialType && ( +
+ {t('credential_type')}: + + {convertHexToString(CredentialType)} + +
+ )} + {Expiration && ( +
+ {t('expiration')}: + {Expiration} +
+ )} + {URI && ( +
+ {t('uri')}: + {URI} +
+ )} +
+ ) +} diff --git a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx new file mode 100644 index 000000000..a6bf9d8e2 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx @@ -0,0 +1,41 @@ +import { useTranslation } from 'react-i18next' +import { type CredentialDelete } from 'xrpl' +import { TransactionTableDetailProps } from '../types' +import { convertHexToString } from '../../../../../rippled/lib/utils' + +export const TableDetail = ({ + instructions, +}: TransactionTableDetailProps) => { + const { t } = useTranslation() + const { Account, Subject, Issuer, CredentialType } = instructions + return ( +
+ {Account && ( +
+ {t('account')}: + {Account} +
+ )} + {Subject && ( +
+ {t('subject')}: + {Subject} +
+ )} + {Issuer && ( +
+ {t('issuer')}: + {Issuer} +
+ )} + {CredentialType && ( +
+ {t('credential_type')}: + + {convertHexToString(CredentialType)} + +
+ )} +
+ ) +} From efbbce0fe94153657876329dfc6c8c73c1d5d546 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 14:28:24 -0500 Subject: [PATCH 10/18] tabledetails for permissioneddomain --- .../CredentialAccept/TableDetail.tsx | 4 +-- .../test/CredentialAcceptTableDetail.test.tsx | 27 ++++++++++++++++ .../CredentialCreate/TableDetail.tsx | 4 +-- .../CredentialDelete/TableDetail.tsx | 4 +-- .../PermissionedDomainDelete/TableDetail.tsx | 26 +++++++++++++++ .../PermissionedDomainSet/TableDetail.tsx | 32 +++++++++++++++++++ 6 files changed, 91 insertions(+), 6 deletions(-) create mode 100644 src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx diff --git a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx index 32ab09e67..c3462a5b9 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx @@ -9,9 +9,9 @@ export const TableDetail = ({ const { t } = useTranslation() const { Account, Issuer, CredentialType } = instructions return ( -
+
{Account && ( -
+
{t('account')}: {Account}
diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx new file mode 100644 index 000000000..569299c54 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx @@ -0,0 +1,27 @@ +import { createTableDetailWrapperFactory } from '../../test' +import { TableDetail } from '../TableDetail' +import mockCredentialAccept from './mock_data/CredentialAccept.json' + +const createWrapper = createTableDetailWrapperFactory(TableDetail) + +describe('CredentialAcceptTableDetail', () => { + it('renders CredentialAccept without crashing', () => { + const wrapper = createWrapper(mockCredentialAccept) + + expect(wrapper.find('[data-test="account"]')).toHaveText( + ` rLbgNAngLq3HABBXK4uPGCHrqeZwgaYi7q `, + ) + expect(wrapper.find('[data-test="amount"]')).toHaveText(`997.50 XRP`) + expect(wrapper.find('[data-test="condition"]')).toHaveText( + ` A0258020886F982742772F414243855DC13B348FC78FB3D5119412C8A6480114E36A4451810120 `, + ) + expect(wrapper.find('[data-test="finish_after"]')).toHaveText( + `March 1, 2020 at 9:01:00 AM UTC`, + ) + expect(wrapper.find('[data-test="cancel_after"]')).toHaveText( + `March 1, 2020 at 8:54:20 AM UTC`, + ) + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx index 130dbb44c..2abceec3c 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx @@ -9,9 +9,9 @@ export const TableDetail = ({ const { t } = useTranslation() const { Account, Subject, CredentialType, Expiration, URI } = instructions return ( -
+
{Account && ( -
+
{t('account')}: {Account}
diff --git a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx index a6bf9d8e2..86dbf4f46 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx @@ -9,9 +9,9 @@ export const TableDetail = ({ const { t } = useTranslation() const { Account, Subject, Issuer, CredentialType } = instructions return ( -
+
{Account && ( -
+
{t('account')}: {Account}
diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx new file mode 100644 index 000000000..d3e827f14 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx @@ -0,0 +1,26 @@ +import { useTranslation } from 'react-i18next' +import { type PermissionedDomainDelete } from 'xrpl' +import { TransactionTableDetailProps } from '../types' + +export const TableDetail = ({ + instructions, +}: TransactionTableDetailProps) => { + const { t } = useTranslation() + const { Account, DomainID } = instructions + return ( +
+ {Account && ( +
+ {t('account')}: + {Account} +
+ )} + {DomainID && ( +
+ {t('domain_id')}: + {DomainID} +
+ )} +
+ ) +} diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx new file mode 100644 index 000000000..746e5c1e1 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx @@ -0,0 +1,32 @@ +import { useTranslation } from 'react-i18next' +import { type PermissionedDomainSet } from 'xrpl' +import { TransactionTableDetailProps } from '../types' + +export const TableDetail = ({ + instructions, +}: TransactionTableDetailProps) => { + const { t } = useTranslation() + const { Account, DomainID, AcceptedCredentials } = instructions + return ( +
+ {Account && ( +
+ {t('account')}: + {Account} +
+ )} + {DomainID && ( +
+ {t('domain_id')}: + {DomainID} +
+ )} + {AcceptedCredentials && ( +
+ {t('accepted_credentials')}: + {AcceptedCredentials} +
+ )} +
+ ) +} From e467ceb13790bc14f9ff3b38b13e7fe3fd625b64 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 14:33:11 -0500 Subject: [PATCH 11/18] add tx to translations --- public/locales/ca-CA/translations.json | 8 +++++++- public/locales/en-US/translations.json | 2 ++ public/locales/es-ES/translations.json | 5 +++++ public/locales/fr-FR/translations.json | 5 +++++ public/locales/ja-JP/translations.json | 5 +++++ public/locales/ko-KR/translations.json | 5 +++++ 6 files changed, 29 insertions(+), 1 deletion(-) diff --git a/public/locales/ca-CA/translations.json b/public/locales/ca-CA/translations.json index 8d6b2d834..421884673 100644 --- a/public/locales/ca-CA/translations.json +++ b/public/locales/ca-CA/translations.json @@ -157,6 +157,9 @@ "transaction_type_name_CheckCancel": "Cancel·lar Check", "transaction_type_name_CheckCash": "Cobrar Check", "transaction_type_name_CheckCreate": "Crear de Check", + "transaction_type_name_CredentialAccept": null, + "transaction_type_name_CredentialCreate": null, + "transaction_type_name_CredentialDelete": null, "transaction_type_name_DIDDelete": "Eliminar DID", "transaction_type_name_DIDSet": "Establir DID", "transaction_type_name_DepositPreauth": "Preautoritzar Diposit", @@ -178,6 +181,8 @@ "transaction_type_name_PaymentChannelClaim": "Reclamar al Canal de Pagament", "transaction_type_name_PaymentChannelCreate": "Crear Canal de Pagament", "transaction_type_name_PaymentChannelFund": "Dipositar en Canal de Pagament", + "transaction_type_name_PermissionedDomainDelete": null, + "transaction_type_name_PermissionedDomainSet": null, "transaction_type_name_SetHook": "Establir Hook", "transaction_type_name_SetRegularKey": "Establir Clau Regular", "transaction_type_name_SignerListSet": "Etablir Llista de Signantst", @@ -564,5 +569,6 @@ "credential_type": null, "subject": null, "expiration": null, - "domain_id": null + "domain_id": null, + "accepted_credentials": null } diff --git a/public/locales/en-US/translations.json b/public/locales/en-US/translations.json index 3a2edee4f..ec0193f98 100644 --- a/public/locales/en-US/translations.json +++ b/public/locales/en-US/translations.json @@ -188,6 +188,8 @@ "transaction_type_name_PaymentChannelClaim": "Payment Channel Claim", "transaction_type_name_PaymentChannelCreate": "Payment Channel Create", "transaction_type_name_PaymentChannelFund": "Payment Channel Fund", + "transaction_type_name_PermissionedDomainDelete": "Permissioned Domain Delete", + "transaction_type_name_PermissionedDomainSet": "Permissioned Domain Set", "transaction_type_name_SetHook": "Set Hook", "transaction_type_name_SetRegularKey": "Set Regular Key", "transaction_type_name_SignerListSet": "Signer List Set", diff --git a/public/locales/es-ES/translations.json b/public/locales/es-ES/translations.json index e6da8e90a..de0d8c1ac 100644 --- a/public/locales/es-ES/translations.json +++ b/public/locales/es-ES/translations.json @@ -157,6 +157,9 @@ "transaction_type_name_CheckCancel": "Cancelar Cheque", "transaction_type_name_CheckCash": "Cobrar Cheque", "transaction_type_name_CheckCreate": "Crear Cheque", + "transaction_type_name_CredentialAccept": null, + "transaction_type_name_CredentialCreate": null, + "transaction_type_name_CredentialDelete": null, "transaction_type_name_DepositPreauth": "Preautorizar Depósito", "transaction_type_name_Error_Cases": "Casos de Error", "transaction_type_name_EscrowCancel": "Cancelar Depósito", @@ -175,6 +178,8 @@ "transaction_type_name_PaymentChannelClaim": "Reclamar Canal de Pago", "transaction_type_name_PaymentChannelCreate": "Crear Canal de Pago", "transaction_type_name_PaymentChannelFund": "Añadir Fondos a Canal de Pago", + "transaction_type_name_PermissionedDomainDelete": null, + "transaction_type_name_PermissionedDomainSet": null, "transaction_type_name_SetHook": "Añadir Hook", "transaction_type_name_SetRegularKey": "Configurar Clave Normal", "transaction_type_name_SignerListSet": "Configurar Lista de Firmantes", diff --git a/public/locales/fr-FR/translations.json b/public/locales/fr-FR/translations.json index 412be7de2..9e886f370 100644 --- a/public/locales/fr-FR/translations.json +++ b/public/locales/fr-FR/translations.json @@ -158,6 +158,9 @@ "transaction_type_name_CheckCancel": "Chèque annulé", "transaction_type_name_CheckCash": "Chèque remis", "transaction_type_name_CheckCreate": "Chèque créé", + "transaction_type_name_CredentialAccept": null, + "transaction_type_name_CredentialCreate": null, + "transaction_type_name_CredentialDelete": null, "transaction_type_name_DepositPreauth": "Dépôt préautorisé", "transaction_type_name_Error_Cases": "Cas d'erreur", "transaction_type_name_EscrowCancel": "séquestre annulé", @@ -177,6 +180,8 @@ "transaction_type_name_PaymentChannelClaim": "Canal de paiement réclamé", "transaction_type_name_PaymentChannelCreate": "Canal de paiement créé", "transaction_type_name_PaymentChannelFund": "Canal provisionné", + "transaction_type_name_PermissionedDomainDelete": null, + "transaction_type_name_PermissionedDomainSet": null, "transaction_type_name_SetRegularKey": "Clé régulière définie", "transaction_type_name_SignerListSet": "Liste de signataires établie", "transaction_type_name_TicketCreate": "Ticket créé", diff --git a/public/locales/ja-JP/translations.json b/public/locales/ja-JP/translations.json index b35a5e364..addd276bc 100644 --- a/public/locales/ja-JP/translations.json +++ b/public/locales/ja-JP/translations.json @@ -158,6 +158,9 @@ "transaction_type_name_CheckCancel": "チェックの取消", "transaction_type_name_CheckCash": "チェックの現金化", "transaction_type_name_CheckCreate": "チェックの作成", + "transaction_type_name_CredentialAccept": null, + "transaction_type_name_CredentialCreate": null, + "transaction_type_name_CredentialDelete": null, "transaction_type_name_DepositPreauth": "入金の事前承認", "transaction_type_name_Error_Cases": "エラーケース", "transaction_type_name_EscrowCancel": "エスクローの取消", @@ -177,6 +180,8 @@ "transaction_type_name_PaymentChannelClaim": "ペイメントチャネル請求", "transaction_type_name_PaymentChannelCreate": "ペイメントチャネル作成", "transaction_type_name_PaymentChannelFund": "ペイメントチャネル資金", + "transaction_type_name_PermissionedDomainDelete": null, + "transaction_type_name_PermissionedDomainSet": null, "transaction_type_name_SetHook": "Hookの設定", "transaction_type_name_SetRegularKey": "レギュラーキーの設定", "transaction_type_name_SignerListSet": "署名者リスト設定", diff --git a/public/locales/ko-KR/translations.json b/public/locales/ko-KR/translations.json index 015533e01..0403a7423 100644 --- a/public/locales/ko-KR/translations.json +++ b/public/locales/ko-KR/translations.json @@ -160,6 +160,9 @@ "transaction_type_name_CheckCancel": "수표 취소", "transaction_type_name_CheckCash": "수표 현금화", "transaction_type_name_CheckCreate": "수표 생성", + "transaction_type_name_CredentialAccept": null, + "transaction_type_name_CredentialCreate": null, + "transaction_type_name_CredentialDelete": null, "transaction_type_name_DepositPreauth": "예치 인증", "transaction_type_name_Error_Cases": "오류 사례", "transaction_type_name_EscrowCancel": "에스크로 취소", @@ -178,6 +181,8 @@ "transaction_type_name_PaymentChannelClaim": "결제 채널 청구", "transaction_type_name_PaymentChannelCreate": "결제 채널 생성", "transaction_type_name_PaymentChannelFund": "결제 채널 펀딩", + "transaction_type_name_PermissionedDomainDelete": null, + "transaction_type_name_PermissionedDomainSet": null, "transaction_type_name_SetHook": "Hook 설정", "transaction_type_name_SetRegularKey": "일반 키 설정", "transaction_type_name_SignerListSet": "서명자 목록 설정", From 639462455d655e0afe5dd3d553738880292f5161 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 15:10:30 -0500 Subject: [PATCH 12/18] remove unnecessary conditionals --- .../Transaction/CredentialAccept/Simple.tsx | 28 ++++-------- .../CredentialAccept/TableDetail.tsx | 33 +++++--------- .../Transaction/CredentialCreate/Simple.tsx | 26 ++++------- .../CredentialCreate/TableDetail.tsx | 34 ++++++-------- .../Transaction/CredentialDelete/Simple.tsx | 33 +++++--------- .../CredentialDelete/TableDetail.tsx | 44 +++++++------------ .../PermissionedDomainDelete/Simple.tsx | 18 ++------ .../PermissionedDomainDelete/TableDetail.tsx | 18 +++----- .../PermissionedDomainSet/Simple.tsx | 35 ++++++--------- .../PermissionedDomainSet/TableDetail.tsx | 29 +++++------- 10 files changed, 104 insertions(+), 194 deletions(-) diff --git a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx index a74b8a452..39cdb41a7 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx @@ -4,32 +4,22 @@ import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' import { SimpleRow } from '../SimpleRow' import { convertHexToString } from '../../../../../rippled/lib/utils' -const Simple: TransactionSimpleComponent = ( +export const Simple: TransactionSimpleComponent = ( props: TransactionSimpleProps, ) => { const { t } = useTranslation() const { data } = props - const { Account, Issuer, CredentialType } = data.instructions + const { Issuer, CredentialType } = data.instructions return ( <> - {Account && ( - - {Account} - - )} - {Issuer && ( - - {Issuer} - - )} - {CredentialType && ( - - {convertHexToString(CredentialType)} - - )} + + {Issuer} + + + + {convertHexToString(CredentialType)} + ) } - -export { Simple } diff --git a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx index c3462a5b9..7611e57c4 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx @@ -7,29 +7,20 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Account, Issuer, CredentialType } = instructions + const { Issuer, CredentialType } = instructions return (
- {Account && ( -
- {t('account')}: - {Account} -
- )} - {Issuer && ( -
- {t('issuer')}: - {Issuer} -
- )} - {CredentialType && ( -
- {t('credential_type')}: - - {convertHexToString(CredentialType)} - -
- )} +
+ {t('issuer')}: + {Issuer} +
+ +
+ {t('credential_type')}: + + {convertHexToString(CredentialType)} + +
) } diff --git a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx index 45153c546..e02f7d7c7 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx @@ -9,26 +9,18 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { Account, Subject, CredentialType, Expiration, URI } = - data.instructions + const { Subject, CredentialType, Expiration, URI } = data.instructions return ( <> - {Account && ( - - {Account} - - )} - {Subject && ( - - {Subject} - - )} - {CredentialType && ( - - {convertHexToString(CredentialType)} - - )} + + {Subject} + + + + {convertHexToString(CredentialType)} + + {Expiration && ( {Expiration} diff --git a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx index 2abceec3c..709de2e73 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx @@ -7,29 +7,21 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Account, Subject, CredentialType, Expiration, URI } = instructions + const { Subject, CredentialType, Expiration, URI } = instructions return (
- {Account && ( -
- {t('account')}: - {Account} -
- )} - {Subject && ( -
- {t('subject')}: - {Subject} -
- )} - {CredentialType && ( -
- {t('credential_type')}: - - {convertHexToString(CredentialType)} - -
- )} +
+ {t('subject')}: + {Subject} +
+ +
+ {t('credential_type')}: + + {convertHexToString(CredentialType)} + +
+ {Expiration && (
{t('expiration')}: diff --git a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx index a6ec5560e..9563db7e2 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx @@ -9,30 +9,21 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { Account, Subject, CredentialType, Issuer } = data.instructions + const { Subject, CredentialType, Issuer } = data.instructions return ( <> - {Account && ( - - {convertHexToString(Account)} - - )} - {Subject && ( - - {convertHexToString(Subject)} - - )} - {Issuer && ( - - {convertHexToString(Issuer)} - - )} - {CredentialType && ( - - {convertHexToString(CredentialType)} - - )} + + {Subject} + + + + {Issuer} + + + + {convertHexToString(CredentialType)} + ) } diff --git a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx index 86dbf4f46..c40efd486 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx @@ -7,35 +7,25 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Account, Subject, Issuer, CredentialType } = instructions + const { Subject, Issuer, CredentialType } = instructions return (
- {Account && ( -
- {t('account')}: - {Account} -
- )} - {Subject && ( -
- {t('subject')}: - {Subject} -
- )} - {Issuer && ( -
- {t('issuer')}: - {Issuer} -
- )} - {CredentialType && ( -
- {t('credential_type')}: - - {convertHexToString(CredentialType)} - -
- )} +
+ {t('subject')}: + {Subject} +
+ +
+ {t('issuer')}: + {Issuer} +
+ +
+ {t('credential_type')}: + + {convertHexToString(CredentialType)} + +
) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx index 40147fbd2..8a7332f67 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx @@ -2,28 +2,18 @@ import { useTranslation } from 'react-i18next' import { type PermissionedDomainDelete } from 'xrpl' import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' import { SimpleRow } from '../SimpleRow' -import { convertHexToString } from '../../../../../rippled/lib/utils' const Simple: TransactionSimpleComponent = ( props: TransactionSimpleProps, ) => { const { t } = useTranslation() const { data } = props - const { Account, DomainID } = data.instructions + const { DomainID } = data.instructions return ( - <> - {Account && ( - - {Account} - - )} - {DomainID && ( - - {DomainID} - - )} - + + {DomainID} + ) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx index d3e827f14..e2718686d 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx @@ -6,21 +6,13 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Account, DomainID } = instructions + const { DomainID } = instructions return (
- {Account && ( -
- {t('account')}: - {Account} -
- )} - {DomainID && ( -
- {t('domain_id')}: - {DomainID} -
- )} +
+ {t('domain_id')}: + {DomainID} +
) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx index c4fb0b7c2..1fe9138ec 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx @@ -2,37 +2,28 @@ import { useTranslation } from 'react-i18next' import { type PermissionedDomainSet } from 'xrpl' import { TransactionSimpleComponent, TransactionSimpleProps } from '../types' import { SimpleRow } from '../SimpleRow' -import { convertHexToString } from '../../../../../rippled/lib/utils' const Simple: TransactionSimpleComponent = ( props: TransactionSimpleProps, ) => { const { t } = useTranslation() const { data } = props - const { Account, DomainID, AcceptedCredentials } = data.instructions + const { DomainID, AcceptedCredentials } = data.instructions return ( <> - {Account && ( - - {Account} - - )} - {DomainID && ( - - {DomainID} - - )} - {AcceptedCredentials && ( - - {AcceptedCredentials.map((credential) => ( -
{credential}
- ))} -
- )} + + {DomainID} + + + + {AcceptedCredentials.map((credential) => ( +
{credential}
+ ))} +
) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx index 746e5c1e1..b9f838087 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx @@ -6,27 +6,18 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Account, DomainID, AcceptedCredentials } = instructions + const { DomainID, AcceptedCredentials } = instructions return (
- {Account && ( -
- {t('account')}: - {Account} -
- )} - {DomainID && ( -
- {t('domain_id')}: - {DomainID} -
- )} - {AcceptedCredentials && ( -
- {t('accepted_credentials')}: - {AcceptedCredentials} -
- )} +
+ {t('domain_id')}: + {DomainID} +
+ +
+ {t('accepted_credentials')}: + {AcceptedCredentials} +
) } From 380bb42833885a3864c69e872d4841409181a5eb Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 15:21:35 -0500 Subject: [PATCH 13/18] cred accept tests --- .../test/CredentialAcceptSimple.test.tsx | 19 +++ .../test/CredentialAcceptTableDetail.test.tsx | 19 +-- .../test/mock_data/CredentialAccept.json | 90 ++++++++++++++ .../test/mock_data/CredentialDelete.json | 112 ++++++++++++++++++ 4 files changed, 225 insertions(+), 15 deletions(-) diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx index e69de29bb..f2e5417db 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx @@ -0,0 +1,19 @@ +import { createSimpleWrapperFactory, expectSimpleRowText } from '../../test' +import { Simple } from '../Simple' +import CredentialAccept from './mock_data/CredentialAccept.json' + +const createWrapper = createSimpleWrapperFactory(Simple) + +describe('CredentialAccepr: Simple', () => { + it('renders', () => { + const wrapper = createWrapper(CredentialAccept) + expectSimpleRowText(wrapper, 'issuer', 'rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa') + expectSimpleRowText( + wrapper, + 'credential-type', + '4D7920746573742063726564656E7469616C', + ) + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx index 569299c54..e4ac7067f 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptTableDetail.test.tsx @@ -4,23 +4,12 @@ import mockCredentialAccept from './mock_data/CredentialAccept.json' const createWrapper = createTableDetailWrapperFactory(TableDetail) -describe('CredentialAcceptTableDetail', () => { - it('renders CredentialAccept without crashing', () => { +describe('CredentialAcceptTableDetail ', () => { + it('renders CredentialAcceptTableDetail', () => { const wrapper = createWrapper(mockCredentialAccept) - expect(wrapper.find('[data-test="account"]')).toHaveText( - ` rLbgNAngLq3HABBXK4uPGCHrqeZwgaYi7q `, - ) - expect(wrapper.find('[data-test="amount"]')).toHaveText(`997.50 XRP`) - expect(wrapper.find('[data-test="condition"]')).toHaveText( - ` A0258020886F982742772F414243855DC13B348FC78FB3D5119412C8A6480114E36A4451810120 `, - ) - expect(wrapper.find('[data-test="finish_after"]')).toHaveText( - `March 1, 2020 at 9:01:00 AM UTC`, - ) - expect(wrapper.find('[data-test="cancel_after"]')).toHaveText( - `March 1, 2020 at 8:54:20 AM UTC`, - ) + expect(wrapper.find('issuer')).toEqual('rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa') + expect(wrapper.find('credential-type')).toEqual('My test credential') wrapper.unmount() }) diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json b/src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json index e69de29bb..0faf32edf 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json +++ b/src/containers/shared/components/Transaction/CredentialAccept/test/mock_data/CredentialAccept.json @@ -0,0 +1,90 @@ +{ + "api_version": 2, + "result": { + "close_time_iso": "2025-01-29T20:04:00Z", + "ctid": "C078F5C500080002", + "hash": "50C24433568320D19D63E5BEA68B6CE7233F786C524D41A82B95D783FBFF4ED4", + "ledger_hash": "66029973950F49782CAF74656F8205B9AFFF8783B2FC72D6D6BD54A42BD097B5", + "ledger_index": 7927237, + "meta": { + "AffectedNodes": [ + { + "ModifiedNode": { + "FinalFields": { + "Account": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "Balance": "99999880", + "Flags": 0, + "OwnerCount": 0, + "Sequence": 7927233 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "6DB015ED31FAE685FFE36382824DB6DC1583B88A3EAB4A05FEFD83C18713A5F1", + "PreviousFields": { + "OwnerCount": 1 + }, + "PreviousTxnID": "AE7D78DDF1F095FC16FDC2E7B7C7B839A45CA4D220ECEB9882AFB2E27E086097", + "PreviousTxnLgrSeq": 7927236 + } + }, + { + "ModifiedNode": { + "FinalFields": { + "Account": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "Balance": "99999880", + "Flags": 0, + "OwnerCount": 1, + "Sequence": 7927235 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "C95988BA6B43D7F296CBA9C43C8976E15165E8F57EC1172FE18F423FECBC75ED", + "PreviousFields": { + "Balance": "100000000", + "OwnerCount": 0, + "Sequence": 7927234 + }, + "PreviousTxnID": "31563C450B56A47C2635466E6D32A4BAC2A1234B0F33A075784D92791180F6C1", + "PreviousTxnLgrSeq": 7927234 + } + }, + { + "ModifiedNode": { + "FinalFields": { + "CredentialType": "4D7920746573742063726564656E7469616C", + "Flags": 65536, + "Issuer": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "IssuerNode": "0", + "Subject": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "SubjectNode": "0" + }, + "LedgerEntryType": "Credential", + "LedgerIndex": "FAF933835E83E2848217FFDB784A6C6A250BE895B743B4A2AA6413A9470CD966", + "PreviousFields": { + "Flags": 0 + }, + "PreviousTxnID": "AE7D78DDF1F095FC16FDC2E7B7C7B839A45CA4D220ECEB9882AFB2E27E086097", + "PreviousTxnLgrSeq": 7927236 + } + } + ], + "TransactionIndex": 8, + "TransactionResult": "tesSUCCESS" + }, + "tx_json": { + "Account": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "CredentialType": "4D7920746573742063726564656E7469616C", + "Fee": "120", + "Flags": 0, + "Issuer": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "LastLedgerSequence": 7927256, + "Sequence": 7927234, + "SigningPubKey": "ED7FDC9C33403478ED89D3D909BCDF59AA09918E952C49C0099EAF7722740C179F", + "TransactionType": "CredentialAccept", + "TxnSignature": "FD744C8DAEB2942AFBE16A49A1ED12DA0C77F3173EBAFA6F1027383B9F2B0EBAF8B3D62997AA49799B9293372456E99CC7A873E98174E7BC827104B784801908", + "date": 791496240, + "ledger_index": 7927237 + }, + "validated": true + }, + "status": "success", + "type": "response" +} diff --git a/src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json b/src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json index e69de29bb..91335aa38 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json +++ b/src/containers/shared/components/Transaction/CredentialDelete/test/mock_data/CredentialDelete.json @@ -0,0 +1,112 @@ +{ + "api_version": 2, + "result": { + "close_time_iso": "2025-01-29T20:04:01Z", + "ctid": "C078F5C600030002", + "hash": "19B4D29388B7E6381FA4C8F4CA87FA2C68B0E99C6B0842FC177E5E38AB299855", + "ledger_hash": "1B999AB4B3BAD480DDE5C0D3635165B122DB5A15B9FBA0A2668A697D5E15BC72", + "ledger_index": 7927238, + "meta": { + "AffectedNodes": [ + { + "DeletedNode": { + "FinalFields": { + "Flags": 0, + "Owner": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "PreviousTxnID": "AE7D78DDF1F095FC16FDC2E7B7C7B839A45CA4D220ECEB9882AFB2E27E086097", + "PreviousTxnLgrSeq": 7927236, + "RootIndex": "3DB0A70F50E23BA8EF519E1F430AD5A3F209DDC005B43BB606D5DA82FB5C7C3B" + }, + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "3DB0A70F50E23BA8EF519E1F430AD5A3F209DDC005B43BB606D5DA82FB5C7C3B" + } + }, + { + "DeletedNode": { + "FinalFields": { + "Flags": 0, + "Owner": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "PreviousTxnID": "AE7D78DDF1F095FC16FDC2E7B7C7B839A45CA4D220ECEB9882AFB2E27E086097", + "PreviousTxnLgrSeq": 7927236, + "RootIndex": "67B53595099C0A1F5ABFAC144347AECA0F5E1A0BD96DE85B90FB62DF6AC2FBBC" + }, + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "67B53595099C0A1F5ABFAC144347AECA0F5E1A0BD96DE85B90FB62DF6AC2FBBC" + } + }, + { + "ModifiedNode": { + "FinalFields": { + "Account": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "Balance": "99999760", + "Flags": 0, + "OwnerCount": 0, + "Sequence": 7927234 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "6DB015ED31FAE685FFE36382824DB6DC1583B88A3EAB4A05FEFD83C18713A5F1", + "PreviousFields": { + "Balance": "99999880", + "Sequence": 7927233 + }, + "PreviousTxnID": "50C24433568320D19D63E5BEA68B6CE7233F786C524D41A82B95D783FBFF4ED4", + "PreviousTxnLgrSeq": 7927237 + } + }, + { + "ModifiedNode": { + "FinalFields": { + "Account": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "Balance": "99999880", + "Flags": 0, + "OwnerCount": 0, + "Sequence": 7927235 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "C95988BA6B43D7F296CBA9C43C8976E15165E8F57EC1172FE18F423FECBC75ED", + "PreviousFields": { + "OwnerCount": 1 + }, + "PreviousTxnID": "50C24433568320D19D63E5BEA68B6CE7233F786C524D41A82B95D783FBFF4ED4", + "PreviousTxnLgrSeq": 7927237 + } + }, + { + "DeletedNode": { + "FinalFields": { + "CredentialType": "4D7920746573742063726564656E7469616C", + "Flags": 65536, + "Issuer": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "IssuerNode": "0", + "PreviousTxnID": "50C24433568320D19D63E5BEA68B6CE7233F786C524D41A82B95D783FBFF4ED4", + "PreviousTxnLgrSeq": 7927237, + "Subject": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "SubjectNode": "0" + }, + "LedgerEntryType": "Credential", + "LedgerIndex": "FAF933835E83E2848217FFDB784A6C6A250BE895B743B4A2AA6413A9470CD966" + } + } + ], + "TransactionIndex": 3, + "TransactionResult": "tesSUCCESS" + }, + "tx_json": { + "Account": "rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa", + "CredentialType": "4D7920746573742063726564656E7469616C", + "Fee": "120", + "Flags": 0, + "LastLedgerSequence": 7927257, + "Sequence": 7927233, + "SigningPubKey": "ED182D37C81582F5B7DD13585E7AA294BF21BC4ECAEF46A472BB38B8BE8E6C5367", + "Subject": "rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd", + "TransactionType": "CredentialDelete", + "TxnSignature": "7C5AF4451AB1D261B156076D97ADF13B2F59AECEE99A3FEA4B0B5C0A2BA7B525CCFE7F540DB8E86405E7FB7DF14E356D2347C585F36735914D053990312FD005", + "date": 791496241, + "ledger_index": 7927238 + }, + "validated": true + }, + "status": "success", + "type": "response" +} From 3f22bd913c2e4281b82f7d685a342165874d5d95 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 15:48:26 -0500 Subject: [PATCH 14/18] cred create tests --- .../CredentialCreate/TableDetail.tsx | 2 +- .../test/CredentialCreateSimple.test.tsx | 15 +-- .../test/CredentialCreateTableDetail.test.tsx | 20 +++ .../test/mock_data/CredentialCreate.json | 123 +++++++----------- 4 files changed, 75 insertions(+), 85 deletions(-) create mode 100644 src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateTableDetail.test.tsx diff --git a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx index 709de2e73..49e758741 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx @@ -31,7 +31,7 @@ export const TableDetail = ({ {URI && (
{t('uri')}: - {URI} + {convertHexToString(URI)}
)}
diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx index 6035b95b1..e123c392b 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateSimple.test.tsx @@ -9,17 +9,12 @@ describe('CredentialCreate: Simple', () => { const wrapper = createWrapper(CredentialCreate) expectSimpleRowText( wrapper, - 'account', - 'r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc', + 'subject', + 'r9U9hxv27pCb6G3kq26dZD1QVNRUcgcmF3', ) - expectSimpleRowText( - wrapper, - 'credential-type', - '4D7920746573742063726564656E7469616C', - ) - expectSimpleRowText(wrapper, 'fee', '120') - expectSimpleRowText(wrapper, 'expiration', '') - expectSimpleRowText(wrapper, 'uri', '') + expectSimpleRowText(wrapper, 'credential-type', 'My test credential') + expectSimpleRowText(wrapper, 'expiration', '100') + expectSimpleRowText(wrapper, 'uri', 'testURI') wrapper.unmount() }) diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateTableDetail.test.tsx b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateTableDetail.test.tsx new file mode 100644 index 000000000..9e7e3ffd7 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialCreate/test/CredentialCreateTableDetail.test.tsx @@ -0,0 +1,20 @@ +import { createTableDetailWrapperFactory } from '../../test' +import { TableDetail } from '../TableDetail' +import mockCredentialCreate from './mock_data/CredentialCreate.json' + +const createWrapper = createTableDetailWrapperFactory(TableDetail) + +describe('CredentialAcceptTableDetail ', () => { + it('renders CredentialAcceptTableDetail', () => { + const wrapper = createWrapper(mockCredentialCreate) + + expect(wrapper.find('subject')).toEqual( + 'r9U9hxv27pCb6G3kq26dZD1QVNRUcgcmF3', + ) + expect(wrapper.find('credential-type')).toEqual('My test credential') + expect(wrapper.find('expiration')).toEqual('100') + expect(wrapper.find('uri')).toEqual('testURI') + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json b/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json index c4e026682..b01f3e92e 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json +++ b/src/containers/shared/components/Transaction/CredentialCreate/test/mock_data/CredentialCreate.json @@ -1,79 +1,54 @@ { - "close_time_iso": "2025-01-15T20:16:42Z", - "ctid": "C07369C900010002", - "hash": "6BB9EB8E4A367AC1A4A93BB39922A114A6F96C4856FB70F70B3ECED37BEEA102", - "ledger_hash": "5424C54CBFE09C5A821C4CC64A5D52EAE448DBA00AD80D8A6557E94A21B61D6C", - "ledger_index": 7563721, - "meta": { - "AffectedNodes": [ - { - "ModifiedNode": { - "FinalFields": { - "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "Balance": "99999880", - "Flags": 0, - "OwnerCount": 1, - "Sequence": 7563718 - }, - "LedgerEntryType": "AccountRoot", - "LedgerIndex": "5A756AC618962AFEBFE49B7C57C95D4CE6EB1F88904A925E3C5D649FF94C29D3", - "PreviousFields": { - "Balance": "100000000", - "OwnerCount": 0, - "Sequence": 7563717 - }, - "PreviousTxnID": "996AC52E9478156146CF756EAAA5175A43FB807192015A86BD09E1C23D9698E7", - "PreviousTxnLgrSeq": 7563717 - } - }, - { - "CreatedNode": { - "LedgerEntryType": "DirectoryNode", - "LedgerIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF", - "NewFields": { - "Owner": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", - "RootIndex": "81CC36FA2EAE5028D2965EF6F2C80ED7F5221F34967A2A02CFA567FF602899AF" - } - } - }, - { - "CreatedNode": { - "LedgerEntryType": "DirectoryNode", - "LedgerIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C", - "NewFields": { - "Owner": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "RootIndex": "C1B1A38B10D770D12E929FAEEE570A63E1AB43370B4F75D60B7A95A53D53596C" + "api_version": 2, + "result": { + "close_time_iso": "2025-01-29T20:37:31Z", + "ctid": "C078F7E400060002", + "hash": "5D79E7C0FDF96AF8B53F756519EA4AC69D27BDE4D4D9D28444B210CA0DE10444", + "ledger_hash": "39DBF8B209C4B100A71F86E0053E830E9AB1E98AC41DA18A319E5198EE80CC38", + "ledger_index": 7927780, + "meta": { + "AffectedNodes": [ + { + "ModifiedNode": { + "FinalFields": { + "Account": "rBf3DjhiABJbxHMU3JBB1R9ksFLgqpkEpN", + "Balance": "99999880", + "Flags": 0, + "OwnerCount": 0, + "Sequence": 7927778 + }, + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "BFB9E7B64488BAC965FDB04E72C7549FFD6AC118DEA2D61A01EC8692F62B8CD2", + "PreviousFields": { + "Balance": "100000000", + "Sequence": 7927777 + }, + "PreviousTxnID": "3A7E0576595930907CE032A437BDB0B511446D896768313240EEDFA4BC095066", + "PreviousTxnLgrSeq": 7927777 } } - }, - { - "CreatedNode": { - "LedgerEntryType": "Credential", - "LedgerIndex": "EE35EC6AB60F859F58A612B96623586BD19ED6780D6187AD9C84665053DA4C7A", - "NewFields": { - "CredentialType": "4D7920746573742063726564656E7469616C", - "Issuer": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi" - } - } - } - ], - "TransactionIndex": 1, - "TransactionResult": "tesSUCCESS" - }, - "tx": { - "Account": "r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc", - "CredentialType": "4D7920746573742063726564656E7469616C", - "Fee": "120", - "Flags": 0, - "LastLedgerSequence": 7563739, - "Sequence": 7563717, - "SigningPubKey": "ED86E9A5E421440F96E2A93D8E0D981447A112790964745068474C90DE4F0E93C3", - "Subject": "rNcwphrUgoPv6GoJMZgkaqGXP3tseK9hDi", - "TransactionType": "CredentialCreate", - "TxnSignature": "B880DAB04C5F1F7946E573EB6BB6F681BAED04812416E5E135A00CCBA243935B88451F7BB701F127FEE2724B1E316D6982AB0496B12B6E7AE7C222F190561700", - "date": 790287402, - "ledger_index": 7563721 + ], + "TransactionIndex": 6, + "TransactionResult": "tecEXPIRED" + }, + "tx_json": { + "Account": "rBf3DjhiABJbxHMU3JBB1R9ksFLgqpkEpN", + "CredentialType": "4D7920746573742063726564656E7469616C", + "Expiration": 100, + "Fee": "120", + "Flags": 0, + "LastLedgerSequence": 7927798, + "Sequence": 7927777, + "SigningPubKey": "ED2140518DCD3D97AEE5120E94A3EB91DDF9E40001F83A5FB91EF2EEF295F8C3E9", + "Subject": "r9U9hxv27pCb6G3kq26dZD1QVNRUcgcmF3", + "TransactionType": "CredentialCreate", + "TxnSignature": "824166F0E7026F9D0DB6161A3B66AD702AC502EE05601F39F09BC078BBC9C97266A0FA231FC095181D7D9BA4886833CABE543356B86137FAA472766F8BAD1F00", + "URI": "74657374555249", + "date": 791498251, + "ledger_index": 7927780 + }, + "validated": true }, - "validated": true + "status": "success", + "type": "response" } From 3a91e81b77b9717cea701dd33850dc28f049fed4 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 15:54:59 -0500 Subject: [PATCH 15/18] cred delete tests --- .../Transaction/CredentialAccept/types.ts | 0 .../Transaction/CredentialCreate/types.ts | 0 .../Transaction/CredentialDelete/Simple.tsx | 12 +++++++----- .../CredentialDelete/TableDetail.tsx | 8 ++++---- .../test/CredentialDeleteSimple.test.tsx | 8 ++++---- .../test/CredentialDeleteTableDetail.test.tsx | 19 +++++++++++++++++++ 6 files changed, 34 insertions(+), 13 deletions(-) delete mode 100644 src/containers/shared/components/Transaction/CredentialAccept/types.ts delete mode 100644 src/containers/shared/components/Transaction/CredentialCreate/types.ts create mode 100644 src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteTableDetail.test.tsx diff --git a/src/containers/shared/components/Transaction/CredentialAccept/types.ts b/src/containers/shared/components/Transaction/CredentialAccept/types.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/containers/shared/components/Transaction/CredentialCreate/types.ts b/src/containers/shared/components/Transaction/CredentialCreate/types.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx index 9563db7e2..990d228ba 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx @@ -9,17 +9,19 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { Subject, CredentialType, Issuer } = data.instructions + const { Account, Subject, CredentialType, Issuer } = data.instructions return ( <> - {Subject} + {Subject || Account} - - {Issuer} - + {Issuer && ( + + {Issuer || Account} + + )} {convertHexToString(CredentialType)} diff --git a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx index c40efd486..990b2a98b 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx @@ -7,17 +7,17 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Subject, Issuer, CredentialType } = instructions + const { Account, Subject, Issuer, CredentialType } = instructions return (
-
+
{t('subject')}: - {Subject} + {Subject || Account}
{t('issuer')}: - {Issuer} + {Issuer || Account}
diff --git a/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx index a4d6087c8..265d0ac5a 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteSimple.test.tsx @@ -7,18 +7,18 @@ const createWrapper = createSimpleWrapperFactory(Simple) describe('CredentialDelete: Simple', () => { it('renders', () => { const wrapper = createWrapper(CredentialDelete) + expectSimpleRowText( wrapper, - 'account', - 'r3ZenwRbVqtkqrZsP9BVxKS8iDu3EsCwyc', + 'subject', + 'rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd', ) + expectSimpleRowText(wrapper, 'issuer', 'rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa') expectSimpleRowText( wrapper, 'credential-type', '4D7920746573742063726564656E7469616C', ) - expectSimpleRowText(wrapper, 'subject', '120') - expectSimpleRowText(wrapper, 'issuer', '') wrapper.unmount() }) diff --git a/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteTableDetail.test.tsx b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteTableDetail.test.tsx new file mode 100644 index 000000000..dc9b49679 --- /dev/null +++ b/src/containers/shared/components/Transaction/CredentialDelete/test/CredentialDeleteTableDetail.test.tsx @@ -0,0 +1,19 @@ +import { createTableDetailWrapperFactory } from '../../test' +import { TableDetail } from '../TableDetail' +import mockCredentialDelete from './mock_data/CredentialDelete.json' + +const createWrapper = createTableDetailWrapperFactory(TableDetail) + +describe('CredentialDeleteTableDetail ', () => { + it('renders CredentialDeleteTableDetail', () => { + const wrapper = createWrapper(mockCredentialDelete) + + expect(wrapper.find('subject')).toEqual( + 'rU893VJVdc5W2kQ6gTCDieo8sNHiHyE7Rd', + ) + expect(wrapper.find('issuer')).toEqual('rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa') + expect(wrapper.find('credential-type')).toEqual('My test credential') + + wrapper.unmount() + }) +}) From f5ef32dec942228c6c0b663b229070cdabee633b Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 16:16:11 -0500 Subject: [PATCH 16/18] pdd and pds tx tests --- .../test/CredentialCreateSimple.test.tsx | 0 .../PermissionedDomainDeleteSimple.test.tsx | 18 +++ ...rmissionedDomainDeleteTableDetail.test.tsx | 17 +++ .../mock_data/PermissionedDomainDelete.json | 6 +- .../PermissionedDomainDelete/types.ts | 0 .../PermissionedDomainSet/Simple.tsx | 8 +- .../test/PermissionedDomainSetSimple.test.tsx | 23 +++ .../test/PermissionedDomainSetSimple.tsx | 0 .../PermissionedDomainSetTableDetail.test.tsx | 21 +++ .../test/mock_data/PermissionedDomainSet.json | 137 +++++++++--------- 10 files changed, 157 insertions(+), 73 deletions(-) delete mode 100644 src/containers/shared/components/Transaction/PermissionedDomainDelete/test/CredentialCreateSimple.test.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteSimple.test.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteTableDetail.test.tsx delete mode 100644 src/containers/shared/components/Transaction/PermissionedDomainDelete/types.ts create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.test.tsx delete mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.tsx create mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetTableDetail.test.tsx diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/CredentialCreateSimple.test.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/CredentialCreateSimple.test.tsx deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteSimple.test.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteSimple.test.tsx new file mode 100644 index 000000000..c4f930905 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteSimple.test.tsx @@ -0,0 +1,18 @@ +import { createSimpleWrapperFactory, expectSimpleRowText } from '../../test' +import { Simple } from '../Simple' +import PermissionedDomainDelete from './mock_data/PermissionedDomainDelete.json' + +const createWrapper = createSimpleWrapperFactory(Simple) + +describe('PermissionedDomainDeleteSimple: Renders', () => { + it('renders', () => { + const wrapper = createWrapper(PermissionedDomainDelete) + expectSimpleRowText( + wrapper, + 'domain_id', + 'F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E', + ) + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteTableDetail.test.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteTableDetail.test.tsx new file mode 100644 index 000000000..0acd7affc --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/PermissionedDomainDeleteTableDetail.test.tsx @@ -0,0 +1,17 @@ +import { createTableDetailWrapperFactory } from '../../test' +import { TableDetail } from '../TableDetail' +import PermissionedDomainDelete from './mock_data/PermissionedDomainDelete.json' + +const createWrapper = createTableDetailWrapperFactory(TableDetail) + +describe('CredentialDeleteTableDetail ', () => { + it('renders CredentialDeleteTableDetail', () => { + const wrapper = createWrapper(PermissionedDomainDelete) + + expect(wrapper.find('domain_id')).toEqual( + 'F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E', + ) + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json index 255113d34..2a6e3066b 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/test/mock_data/PermissionedDomainDelete.json @@ -66,15 +66,15 @@ "TransactionResult ": "tesSUCCESS " }, "tx_json ": { - "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", - "DomainID ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E ", + "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3", + "DomainID ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E", "Fee ": "200 ", "Flags ": 0, "LastLedgerSequence ": 109, "NetworkID ": 63456, "Sequence ": 76, "SigningPubKey ": "ED0FD90553E43698CA5878F9AE1063AF1178728324356BFF116D3331B243F11FDD ", - "TransactionType ": "PermissionedDomainDelete ", + "TransactionType ": "PermissionedDomainDelete", "TxnSignature ": "9C248D71E6221DBBE2F65DB2D3B7B0B0DF8FA11057A60719CCBE6A257D6255068E39D82C740ED7B05B3C99A4A591DA59847C0222A6B5F8DC90C480D249F30E01 ", "date ": 790739500, "ledger_index ": 90 diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/types.ts b/src/containers/shared/components/Transaction/PermissionedDomainDelete/types.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx index 1fe9138ec..35d6c1f53 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx @@ -12,9 +12,11 @@ const Simple: TransactionSimpleComponent = ( return ( <> - - {DomainID} - + {DomainID && ( + + {DomainID} + + )} { + it('renders', () => { + const wrapper = createWrapper(PermissionedDomainSet) + expectSimpleRowText( + wrapper, + 'domain_id', + 'F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E', + ) + expectSimpleRowText( + wrapper, + 'accepted_credentials', + 'F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E', + ) + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetSimple.tsx deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetTableDetail.test.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetTableDetail.test.tsx new file mode 100644 index 000000000..5509d1113 --- /dev/null +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/PermissionedDomainSetTableDetail.test.tsx @@ -0,0 +1,21 @@ +import { createTableDetailWrapperFactory } from '../../test' +import { TableDetail } from '../TableDetail' +import PermissionedDomainSet from './mock_data/PermissionedDomainSet.json' + +const createWrapper = createTableDetailWrapperFactory(TableDetail) + +describe('CredentialSetTableDetail', () => { + it('renders CredentialSetTableDetail', () => { + const wrapper = createWrapper(PermissionedDomainSet) + + expect(wrapper.find('domain_id')).toEqual( + 'F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E', + ) + + expect(wrapper.find('accepted_credentials')).toEqual( + 'F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E', + ) + + wrapper.unmount() + }) +}) diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json index 255113d34..7a9957e98 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/test/mock_data/PermissionedDomainSet.json @@ -1,83 +1,86 @@ { - "close_time_iso ": "2025-01-21T01:51:40Z ", - "ctid ": "C000005A0000F7E0 ", - "hash ": "1008A97884DD03C3B4812C53D01B2482F55B9C2E1E1323DE468B862BA002A771 ", - "ledger_hash ": "E60EC716557B89B709B037D2AE8252A909020E31CAE0C4659FB2739F47997979 ", - "ledger_index ": 90, - "meta ": { - "AffectedNodes ": [ + "close_time_iso": "2025-01-19T02:21:39Z", + "ctid": "C00000400000F7E0", + "hash": "561E23C018C9D6B9A1C03F1AD90E2DEB57DEF5ADA0C3886004F3B1423948A9A7", + "ledger_hash": "D9408AA31B24A03E999C13FE93B0D43174FD1CC4BACE884B012E7FAB255BDEED", + "ledger_index": 64, + "meta": { + "AffectedNodes": [ { - "ModifiedNode ": { - "FinalFields ": { - "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", - "Balance ": "1999997599 ", - "Flags ": 0, - "OwnerCount ": 3, - "Sequence ": 77 - }, - "LedgerEntryType ": "AccountRoot ", - "LedgerIndex ": "5A8ABEB4FA540056A51E0D25177DB7E672E6D7E947DF5D347B9E1489D106F873 ", - "PreviousFields ": { - "Balance ": "1999997799 ", - "OwnerCount ": 4, - "Sequence ": 76 - }, - "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", - "PreviousTxnLgrSeq ": 89 + "CreatedNode": { + "LedgerEntryType": "PermissionedDomain", + "LedgerIndex": "1FF57AD569BC5258A4D3C5AAB77DDEBB68E286F72D8EAB49DEE3DD35C2C5A4AF", + "NewFields": { + "AcceptedCredentials": [ + { + "Credential": { + "CredentialType": "4964656E74697479446F63756D656E74", + "Issuer": "rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab" + } + } + ], + "Owner": "rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab", + "Sequence": 50 + } } }, { - "ModifiedNode ": { - "FinalFields ": { - "Flags ": 0, - "Owner ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", - "RootIndex ": "D9B8A922B4C857D4BA2CED2870A54D0DF9A45F7D9F7A145B627E291CCBD73FEE " + "ModifiedNode": { + "FinalFields": { + "Flags": 0, + "Owner": "rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab", + "RootIndex": "3ECFCBD5393D4EBA88476B159B542BD7D2159D72BF35488ED294E90931567D93" }, - "LedgerEntryType ": "DirectoryNode ", - "LedgerIndex ": "D9B8A922B4C857D4BA2CED2870A54D0DF9A45F7D9F7A145B627E291CCBD73FEE ", - "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", - "PreviousTxnLgrSeq ": 89 + "LedgerEntryType": "DirectoryNode", + "LedgerIndex": "3ECFCBD5393D4EBA88476B159B542BD7D2159D72BF35488ED294E90931567D93", + "PreviousTxnID": "E3A10DD121B54CB7D8922A77D26C9D766FD8A07850287F278F9313057D664DD4", + "PreviousTxnLgrSeq": 63 } }, { - "DeletedNode ": { - "FinalFields ": { - "AcceptedCredentials ": [ - { - "Credential ": { - "CredentialType ": "4964656E74697479446F63756D656E74 ", - "Issuer ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 " - } - } - ], - "Flags ": 0, - "Owner ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", - "OwnerNode ": "0 ", - "PreviousTxnID ": "676E4F1DF5DC4F9C2223DDE9999EF5A8392B310C49B84C7AB04BA10A6CDABFE4 ", - "PreviousTxnLgrSeq ": 89, - "Sequence ": 75 + "ModifiedNode": { + "FinalFields": { + "Account": "rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab", + "Balance": "1999997799", + "Flags": 0, + "OwnerCount": 4, + "Sequence": 51 }, - "LedgerEntryType ": "PermissionedDomain ", - "LedgerIndex ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E " + "LedgerEntryType": "AccountRoot", + "LedgerIndex": "DBACFFF9DBF52B26633B4CED74BD43E8AEF09C20F46C80D83C3A3230BD4E3985", + "PreviousFields": { + "Balance": "1999997999", + "OwnerCount": 3, + "Sequence": 50 + }, + "PreviousTxnID": "E3A10DD121B54CB7D8922A77D26C9D766FD8A07850287F278F9313057D664DD4", + "PreviousTxnLgrSeq": 63 } } ], - "TransactionIndex ": 0, - "TransactionResult ": "tesSUCCESS " + "TransactionIndex": 0, + "TransactionResult": "tesSUCCESS" }, - "tx_json ": { - "Account ": "rhBPeJFG9pxvU22AxkzBpt6zzyk89xhdr3 ", - "DomainID ": "F075484241C8FD27C750F1DD93E0B5E0A42D9ADFE5E7B2313DD927E3DE0DBA6E ", - "Fee ": "200 ", - "Flags ": 0, - "LastLedgerSequence ": 109, - "NetworkID ": 63456, - "Sequence ": 76, - "SigningPubKey ": "ED0FD90553E43698CA5878F9AE1063AF1178728324356BFF116D3331B243F11FDD ", - "TransactionType ": "PermissionedDomainDelete ", - "TxnSignature ": "9C248D71E6221DBBE2F65DB2D3B7B0B0DF8FA11057A60719CCBE6A257D6255068E39D82C740ED7B05B3C99A4A591DA59847C0222A6B5F8DC90C480D249F30E01 ", - "date ": 790739500, - "ledger_index ": 90 + "tx_json": { + "AcceptedCredentials": [ + { + "Credential": { + "CredentialType": "4964656E74697479446F63756D656E74", + "Issuer": "rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab" + } + } + ], + "Account": "rUVQzukKnGSw4qNjEvBxLxquaLaMwzVBab", + "Fee": "200", + "Flags": 0, + "LastLedgerSequence": 83, + "NetworkID": 63456, + "Sequence": 50, + "SigningPubKey": "ED7EE9DDAFF54720AD642944B666CC359091F170BA49C084C3E59803ACDBB17647", + "TransactionType": "PermissionedDomainSet", + "TxnSignature": "B505D12FEDCBAEE792FE5317253E633C094F5D7D8B6D3C9A54B4EAF1F56B2D7F537356D1292A2BAFAE163343BD659F05BF8C916EBA0B10B54D78F20B33B93205", + "date": 790568499, + "ledger_index": 64 }, - "validated ": true + "validated": true } From ef4c025d3e4f76df06e8859e752f8283bc48f0ac Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Wed, 29 Jan 2025 16:28:02 -0500 Subject: [PATCH 17/18] alias properties for clarity --- .../Transaction/CredentialAccept/Simple.tsx | 6 +++--- .../CredentialAccept/TableDetail.tsx | 6 +++--- .../Transaction/CredentialCreate/Simple.tsx | 19 ++++++++++++------- .../CredentialCreate/TableDetail.tsx | 19 ++++++++++++------- .../Transaction/CredentialDelete/Simple.tsx | 15 ++++++++++----- .../CredentialDelete/TableDetail.tsx | 13 +++++++++---- .../PermissionedDomainDelete/Simple.tsx | 4 ++-- .../PermissionedDomainDelete/TableDetail.tsx | 4 ++-- .../PermissionedDomainSet/Simple.tsx | 9 +++++---- .../PermissionedDomainSet/TableDetail.tsx | 15 +++++++++------ .../PermissionedDomainSet/types.ts | 0 11 files changed, 67 insertions(+), 43 deletions(-) delete mode 100644 src/containers/shared/components/Transaction/PermissionedDomainSet/types.ts diff --git a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx index 39cdb41a7..7107b9f12 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/Simple.tsx @@ -9,16 +9,16 @@ export const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { Issuer, CredentialType } = data.instructions + const { Issuer: issuer, CredentialType: credentialType } = data.instructions return ( <> - {Issuer} + {issuer} - {convertHexToString(CredentialType)} + {convertHexToString(credentialType)} ) diff --git a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx index 7611e57c4..403650633 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/TableDetail.tsx @@ -7,18 +7,18 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Issuer, CredentialType } = instructions + const { Issuer: issuer, CredentialType: credentialType } = instructions return (
{t('issuer')}: - {Issuer} + {issuer}
{t('credential_type')}: - {convertHexToString(CredentialType)} + {convertHexToString(credentialType)}
diff --git a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx index e02f7d7c7..52295bf1d 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/Simple.tsx @@ -9,26 +9,31 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { Subject, CredentialType, Expiration, URI } = data.instructions + const { + Subject: subject, + CredentialType: credentialType, + Expiration: expiration, + URI: uri, + } = data.instructions return ( <> - {Subject} + {subject} - {convertHexToString(CredentialType)} + {convertHexToString(credentialType)} - {Expiration && ( + {expiration && ( - {Expiration} + {expiration} )} - {URI && ( + {uri && ( - {convertHexToString(URI)} + {convertHexToString(uri)} )} diff --git a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx index 49e758741..619dabb18 100644 --- a/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialCreate/TableDetail.tsx @@ -7,31 +7,36 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Subject, CredentialType, Expiration, URI } = instructions + const { + Subject: subject, + CredentialType: credentialType, + Expiration: expiration, + URI: uri, + } = instructions return (
{t('subject')}: - {Subject} + {subject}
{t('credential_type')}: - {convertHexToString(CredentialType)} + {convertHexToString(credentialType)}
- {Expiration && ( + {expiration && (
{t('expiration')}: - {Expiration} + {expiration}
)} - {URI && ( + {uri && (
{t('uri')}: - {convertHexToString(URI)} + {convertHexToString(uri)}
)}
diff --git a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx index 990d228ba..3afe48e82 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/Simple.tsx @@ -9,22 +9,27 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { Account, Subject, CredentialType, Issuer } = data.instructions + const { + Account: account, + Subject: subject, + CredentialType: credentialType, + Issuer: issuer, + } = data.instructions return ( <> - {Subject || Account} + {subject || account} - {Issuer && ( + {issuer && ( - {Issuer || Account} + {issuer || account} )} - {convertHexToString(CredentialType)} + {convertHexToString(credentialType)} ) diff --git a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx index 990b2a98b..f2dc3d203 100644 --- a/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/CredentialDelete/TableDetail.tsx @@ -7,23 +7,28 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { Account, Subject, Issuer, CredentialType } = instructions + const { + Account: account, + Subject: subject, + Issuer: issuer, + CredentialType: credentialType, + } = instructions return (
{t('subject')}: - {Subject || Account} + {subject || account}
{t('issuer')}: - {Issuer || Account} + {issuer || account}
{t('credential_type')}: - {convertHexToString(CredentialType)} + {convertHexToString(credentialType)}
diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx index 8a7332f67..d7f70f0c4 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/Simple.tsx @@ -8,11 +8,11 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { DomainID } = data.instructions + const { DomainID: domainID } = data.instructions return ( - {DomainID} + {dataomainID} ) } diff --git a/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx b/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx index e2718686d..efe69a186 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainDelete/TableDetail.tsx @@ -6,12 +6,12 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { DomainID } = instructions + const { DomainID: domainID } = instructions return (
{t('domain_id')}: - {DomainID} + {domainID}
) diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx index 35d6c1f53..726a0f3fc 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/Simple.tsx @@ -8,13 +8,14 @@ const Simple: TransactionSimpleComponent = ( ) => { const { t } = useTranslation() const { data } = props - const { DomainID, AcceptedCredentials } = data.instructions + const { DomainID: domainID, AcceptedCredentials: acceptedCredentials } = + data.instructions return ( <> - {DomainID && ( + {domainID && ( - {DomainID} + {domainID} )} @@ -22,7 +23,7 @@ const Simple: TransactionSimpleComponent = ( label={t('accepted_credentials')} data-test="accepted-credentials" > - {AcceptedCredentials.map((credential) => ( + {acceptedCredentials.map((credential) => (
{credential}
))}
diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx b/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx index b9f838087..a1b659a52 100644 --- a/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx +++ b/src/containers/shared/components/Transaction/PermissionedDomainSet/TableDetail.tsx @@ -6,17 +6,20 @@ export const TableDetail = ({ instructions, }: TransactionTableDetailProps) => { const { t } = useTranslation() - const { DomainID, AcceptedCredentials } = instructions + const { DomainID: domainID, AcceptedCredentials: acceptedCredentials } = + instructions return (
-
- {t('domain_id')}: - {DomainID} -
+ {domainID && ( +
+ {t('domain_id')}: + {domainID} +
+ )}
{t('accepted_credentials')}: - {AcceptedCredentials} + {acceptedCredentials}
) diff --git a/src/containers/shared/components/Transaction/PermissionedDomainSet/types.ts b/src/containers/shared/components/Transaction/PermissionedDomainSet/types.ts deleted file mode 100644 index e69de29bb..000000000 From 11982d15e6826528d7d4d82f04a4054d4f14fee7 Mon Sep 17 00:00:00 2001 From: Ashray Chowdhry Date: Thu, 30 Jan 2025 13:25:13 -0500 Subject: [PATCH 18/18] typo --- .../CredentialAccept/test/CredentialAcceptSimple.test.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx index f2e5417db..7a8dd7b01 100644 --- a/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx +++ b/src/containers/shared/components/Transaction/CredentialAccept/test/CredentialAcceptSimple.test.tsx @@ -4,7 +4,7 @@ import CredentialAccept from './mock_data/CredentialAccept.json' const createWrapper = createSimpleWrapperFactory(Simple) -describe('CredentialAccepr: Simple', () => { +describe('CredentialAccept: Simple', () => { it('renders', () => { const wrapper = createWrapper(CredentialAccept) expectSimpleRowText(wrapper, 'issuer', 'rniD1P4EG6htqAiYTqBJhPDjCYZaAKH4Xa')