Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XLS-33 Multi Purpose token #989

Open
wants to merge 35 commits into
base: staging
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
8418794
initial
shawnxie999 Mar 20, 2024
f1bb984
mptcreate simple test
shawnxie999 Mar 20, 2024
b6a365d
mpt destroy and tests
shawnxie999 Mar 21, 2024
9e4ccd1
mpt set
shawnxie999 Mar 21, 2024
1fb4da1
mpt authorize
shawnxie999 Mar 25, 2024
431049c
payment/claw wip
shawnxie999 Apr 1, 2024
d3f12de
mpt renderers and some test
shawnxie999 Apr 2, 2024
f6d1cdc
object metadata test
shawnxie999 Apr 2, 2024
406d291
fix fail test
shawnxie999 Apr 3, 2024
6cd5840
translation
shawnxie999 Apr 3, 2024
63f18f1
test
shawnxie999 Apr 4, 2024
1e38361
MPT page wip
shawnxie999 Apr 11, 2024
8bf0c03
MPT page + routing
shawnxie999 Apr 15, 2024
247e724
tests and imporvements
shawnxie999 Apr 15, 2024
b4f8d45
tooltip
shawnxie999 Apr 16, 2024
1d782b8
refactors and account asset list (wip)
shawnxie999 Apr 16, 2024
28624ea
some tests
shawnxie999 Apr 22, 2024
9e56436
search and test fixes
shawnxie999 Apr 23, 2024
f37ee07
currency
shawnxie999 May 30, 2024
8f42c03
Merge remote-tracking branch 'upstream/staging' into mpt
shawnxie999 May 30, 2024
320b8e5
fix lint
shawnxie999 May 30, 2024
d30550b
lint
shawnxie999 May 31, 2024
c937491
fix test
shawnxie999 Jun 4, 2024
6f7aacd
lint
shawnxie999 Jun 4, 2024
f5e5965
fix type error
shawnxie999 Jun 4, 2024
d98c60e
lint
shawnxie999 Jun 4, 2024
56d20e5
Merge branch 'staging' into mpt
shawnxie999 Jun 4, 2024
1356ba4
comments
shawnxie999 Jun 24, 2024
f410530
null translations
shawnxie999 Aug 22, 2024
15055e9
Merge branch 'staging' into mpt
shawnxie999 Aug 22, 2024
afdfb2f
fix: raw tab on transaction pages should show `tx` response from `rip…
pdp2121 Aug 27, 2024
d81784d
add scaling for MPTAmount
shawnxie999 Aug 30, 2024
efbe4a2
Merge branch 'staging' into mpt
shawnxie999 Sep 3, 2024
0f5e6ea
reuse convertToScale func
shawnxie999 Sep 5, 2024
74d85af
account table scaling and base 10 amounts
shawnxie999 Oct 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 24 additions & 1 deletion public/locales/ca-CA/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -530,5 +530,28 @@
"last_update_time": null,
"asset_class": null,
"trading_pairs": null,
"deleted": null
"deleted": null,
"assets.mpt_tab_title": null,
"assets.no_mpts_message": null,
"transaction_type_name_MPTokenIssuanceCreate": null,
"transaction_type_name_MPTokenIssuanceDestroy": null,
"transaction_type_name_MPTokenIssuanceSet": null,
"transaction_type_name_MPTokenAuthorize": null,
"transaction_outstanding_balance_line_two": null,
"transaction_mptoken_line_one": null,
"transaction_mpt_issuance_line_one":null,
"mpt_issuance_id": null,
"asset_scale": null,
"metadata": null,
"max_amount": null,
"mpt_holder": null,
"check_mpt_id": null,
"outstanding_amount": null,
"locked": null,
"can_lock": null,
"require_auth": null,
"can_escrow": null,
"can_trade": null,
"can_transfer": null,
"can_clawback": null
}
25 changes: 24 additions & 1 deletion public/locales/en-US/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@
"action": "action",
"assets": "Assets",
"assets.nft_tab_title": "Non-Fungible Tokens",
"assets.mpt_tab_title": "Multi-Purpose Tokens",
shawnxie999 marked this conversation as resolved.
Show resolved Hide resolved
"assets.issued_tab_title": "Issued Tokens",
"assets.no_issued_message": "No tokens found.",
"assets.no_nfts_message": "No NFTs found.",
"assets.no_mpts_message": "No MPTs found.",
"network": "Network",
"amendments": "Amendments",
"network_name": "Unknown Network",
Expand Down Expand Up @@ -166,6 +168,10 @@
"transaction_type_name_EscrowCreate": "Escrow Create",
"transaction_type_name_EscrowFinish": "Escrow Finish",
"transaction_type_name_Invoke": "Invoke",
"transaction_type_name_MPTokenIssuanceCreate": "MPT Issuance Create",
"transaction_type_name_MPTokenIssuanceDestroy": "MPT Issuance Destroy",
"transaction_type_name_MPTokenIssuanceSet": "MPT Issuance Set",
"transaction_type_name_MPTokenAuthorize": "MPT Authorize",
"transaction_type_name_NFTokenAcceptOffer": "NFT Accept Offer",
"transaction_type_name_NFTokenBurn": "NFT Burn",
"transaction_type_name_NFTokenCancelOffer": "NFT Cancel Offer",
Expand Down Expand Up @@ -248,8 +254,11 @@
"node_meta_type": "It {{action}} a node with type",
"transaction_balance_line_one": "It <1><0>{{action}}</0></1> a <3><0>{{currency}}</0></3> RippleState node between <5><0>{{account}}</0></5> and <7><0>{{counterAccount}}</0></7>",
"transaction_balance_line_two": "Balance changed by <1><0>{{change}}</0></1> from <3><0>{{previousBalance}}</0></3> to <5><0>{{finalBalance}}</0></5>",
"transaction_outstanding_balance_line_two": "Outstanding balance changed by <1><0>{{change}}</0></1> from <3><0>{{previousBalance}}</0></3> to <5><0>{{finalBalance}}</0></5>",
"transaction_owned_directory": "It {{action}} a DirectoryNode node owned by",
"transaction_unowned_directory": "It {{action}} a DirectoryNode node",
"transaction_mptoken_line_one": "It <1><0>{{action}}</0></1> an MPToken node of <3><0>{{account}}</0></3>",
"transaction_mpt_issuance_line_one": "It <1><0>{{action}}</0></1> an MPTokenIssuance node of <3><0>{{account}}</0></3>",
"owned_account_root": "It {{action}} the AccountRoot node of",
"unowned_account_root": "It {{action}} the AccountRoot node",
"account_balance_increased": "Balance increased by <1><0>{{difference}}</0><1><0>{{currency}}</0></1></1> from <3><0>{{previous}}</0><1><0>{{currency}}</0></1></3> to <5><0>{{final}}</0><1><0>{{currency}}</0></1></5>",
Expand Down Expand Up @@ -530,5 +539,19 @@
"last_update_time": "Last Update Time",
"asset_class": "Asset Class",
"trading_pairs": "Trading Pairs",
"deleted": "Deleted"
"deleted": "Deleted",
"mpt_issuance_id": "MPT Issuance ID",
"asset_scale": "Asset Scale",
"metadata": "Metadata",
"max_amount": "Max Amount",
"mpt_holder": "MPT Holder",
"check_mpt_id": "Please check your MPT Issuance ID",
"outstanding_amount": "Issued Amount",
"locked": "Locked",
"can_lock": "Can Lock",
"require_auth": "Require Auth",
"can_escrow": "Can Escrow",
"can_trade": "Can Trade",
"can_transfer": "Can Transfer",
"can_clawback": "Can Clawback"
}
25 changes: 24 additions & 1 deletion public/locales/es-ES/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -526,5 +526,28 @@
"last_update_time": null,
"asset_class": null,
"trading_pairs": null,
"deleted": null
"deleted": null,
"assets.mpt_tab_title": null,
"assets.no_mpts_message": null,
"transaction_type_name_MPTokenIssuanceCreate": null,
"transaction_type_name_MPTokenIssuanceDestroy": null,
"transaction_type_name_MPTokenIssuanceSet": null,
"transaction_type_name_MPTokenAuthorize": null,
"transaction_outstanding_balance_line_two": null,
"transaction_mptoken_line_one": null,
"transaction_mpt_issuance_line_one":null,
"mpt_issuance_id": null,
"asset_scale": null,
"metadata": null,
"max_amount": null,
"mpt_holder": null,
"check_mpt_id": null,
"outstanding_amount": null,
"locked": null,
"can_lock": null,
"require_auth": null,
"can_escrow": null,
"can_trade": null,
"can_transfer": null,
"can_clawback": null
}
25 changes: 24 additions & 1 deletion public/locales/fr-FR/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -527,5 +527,28 @@
"last_update_time": null,
"asset_class": null,
"trading_pairs": null,
"deleted": null
"deleted": null,
"assets.mpt_tab_title": null,
"assets.no_mpts_message": null,
"transaction_type_name_MPTokenIssuanceCreate": null,
"transaction_type_name_MPTokenIssuanceDestroy": null,
"transaction_type_name_MPTokenIssuanceSet": null,
"transaction_type_name_MPTokenAuthorize": null,
"transaction_outstanding_balance_line_two": null,
"transaction_mptoken_line_one": null,
"transaction_mpt_issuance_line_one":null,
"mpt_issuance_id": null,
"asset_scale": null,
"metadata": null,
"max_amount": null,
"mpt_holder": null,
"check_mpt_id": null,
"outstanding_amount": null,
"locked": null,
"can_lock": null,
"require_auth": null,
"can_escrow": null,
"can_trade": null,
"can_transfer": null,
"can_clawback": null
}
25 changes: 24 additions & 1 deletion public/locales/ja-JP/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -526,5 +526,28 @@
"last_update_time": null,
"asset_class": null,
"trading_pairs": null,
"deleted": null
"deleted": null,
"assets.mpt_tab_title": null,
"assets.no_mpts_message": null,
"transaction_type_name_MPTokenIssuanceCreate": null,
"transaction_type_name_MPTokenIssuanceDestroy": null,
"transaction_type_name_MPTokenIssuanceSet": null,
"transaction_type_name_MPTokenAuthorize": null,
"transaction_outstanding_balance_line_two": null,
"transaction_mptoken_line_one": null,
"transaction_mpt_issuance_line_one":null,
"mpt_issuance_id": null,
"asset_scale": null,
"metadata": null,
"max_amount": null,
"mpt_holder": null,
"check_mpt_id": null,
"outstanding_amount": null,
"locked": null,
"can_lock": null,
"require_auth": null,
"can_escrow": null,
"can_trade": null,
"can_transfer": null,
"can_clawback": null
}
25 changes: 24 additions & 1 deletion public/locales/ko-KR/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -524,5 +524,28 @@
"last_update_time": null,
"asset_class": null,
"trading_pairs": null,
"deleted": null
"deleted": null,
"assets.mpt_tab_title": null,
"assets.no_mpts_message": null,
"transaction_type_name_MPTokenIssuanceCreate": null,
"transaction_type_name_MPTokenIssuanceDestroy": null,
"transaction_type_name_MPTokenIssuanceSet": null,
"transaction_type_name_MPTokenAuthorize": null,
"transaction_outstanding_balance_line_two": null,
"transaction_mptoken_line_one": null,
"transaction_mpt_issuance_line_one":null,
"mpt_issuance_id": null,
"asset_scale": null,
"metadata": null,
"max_amount": null,
"mpt_holder": null,
"check_mpt_id": null,
"outstanding_amount": null,
"locked": null,
"can_lock": null,
"require_auth": null,
"can_escrow": null,
"can_trade": null,
"can_transfer": null,
"can_clawback": null
}
Original file line number Diff line number Diff line change
@@ -1,20 +1,24 @@
import { mount } from 'enzyme'
import { I18nextProvider } from 'react-i18next'
import { MemoryRouter } from 'react-router'
import { QueryClientProvider } from 'react-query'
import i18n from '../../../../../../i18n/testConfig'
import { AMMAccountHeader, AmmDataType } from '../AMMAccountHeader'
import { flushPromises } from '../../../../../test/utils'
import { queryClient } from '../../../../../shared/QueryClient'

describe('AMM Account Header', () => {
const TEST_ACCOUNT_ID = 'rTEST_ACCOUNT'

const createWrapper = (state: AmmDataType) =>
mount(
<I18nextProvider i18n={i18n}>
<MemoryRouter initialEntries={[`accounts/${TEST_ACCOUNT_ID}`]}>
<AMMAccountHeader data={state} />
</MemoryRouter>
</I18nextProvider>,
<QueryClientProvider client={queryClient}>
<I18nextProvider i18n={i18n}>
<MemoryRouter initialEntries={[`accounts/${TEST_ACCOUNT_ID}`]}>
<AMMAccountHeader data={state} />
</MemoryRouter>
</I18nextProvider>
</QueryClientProvider>,
)

it('renders AMM account page', async () => {
Expand Down
11 changes: 10 additions & 1 deletion src/containers/Accounts/AccountAssetTab/AccountAssetTab.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,25 @@ import { useNavigate } from 'react-router'
import { useRouteParams } from '../../shared/routing'
import { AccountIssuedTokenTable } from '../AccountIssuedTokenTable'
import { AccountNFTTable } from '../AccountNFTTable/AccountNFTTable'
import { AccountMPTTable } from '../AccountMPTTable/AccountMPTTable'
import { ACCOUNT_ROUTE } from '../../App/routes'

// TODO: Add state types or convert to react query
interface Props {
account: any
}

const assetTypes = ['issued', 'nft']
let assetTypes = ['issued', 'nft']

const AccountAssetTabDisconnected = ({ account }: Props) => {
const { id: accountId = '', assetType = assetTypes[0] } =
useRouteParams(ACCOUNT_ROUTE)

const supportsMPT = ['mpt_sandbox', 'devnet'].includes(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would assume this is just for testing?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently we have an alt server for testing. But assuming if the amendment is activated on mainnet, then this code would need to be removed

process.env.VITE_ENVIRONMENT as string,
)
if (supportsMPT) assetTypes = ['issued', 'nft', 'mpt']

const navigate = useNavigate()
const { t } = useTranslation()
function switchAsset(event: ChangeEvent<HTMLInputElement>) {
Expand Down Expand Up @@ -48,11 +55,13 @@ const AccountAssetTabDisconnected = ({ account }: Props) => {
)
})}
</div>

<div className="tab-body">
{assetType === 'issued' && (
<AccountIssuedTokenTable account={account} />
)}
{assetType === 'nft' && <AccountNFTTable accountId={accountId} />}
{assetType === 'mpt' && <AccountMPTTable accountId={accountId} />}
</div>
</>
)
Expand Down
Loading
Loading