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

fix(docs/content): Enhance claiming docs and fix links #1768

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 4 additions & 5 deletions docs/content/developer/stardust/claiming.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,15 @@ title: Claiming Stardust Assets
description: Describes how to access the migrated assets and tokens
---

- Explains the resulting migrated state for simple coins (exchanges)
- Demonstrates through examples for each output type the resulting move objects
- Explains what commands need to be called in a PTB to claim the assets
- Describes transaction sponsorship from iota addresses for shimmer claiming
As detailed in the [Stardust Move Models](move-models.mdx), Stardust assets are represented as Move objects within the ledger. Claiming these assets involves enabling original owners to utilize a [Programmable Transaction Block](../iota-101/transactions/ptb/prog-txn-blocks.mdx) to "unlock" assets such as IOTA, Shimmer, custom [`Coin`](../../references/framework/iota-framework/coin.mdx#resource-coin)s, or even `Alias` and `Nft` objects.

## IOTA tokens automatic migration
This process takes advantage of Move's unique features to ensure that assets are transferred and unlocked securely and efficiently to their rightful owners.


## Output types to Move Objects

Stardust assets come in the form of Outputs and each Output can be of a different type. For understanding how Outputs have been transformed into Move Objects based on their types, please refer to the [Stardust Move Models](move-models.mdx#summary) page. In here, one or more claiming examples for each Output type will be shown.


## Examples of Stardust asset claim transactions

Expand Down
2 changes: 1 addition & 1 deletion docs/content/developer/stardust/claiming/alias.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

An address can own `AliasOutput` objects only if before the migration it was set as the Alias Governor Address.
In this case, the `AliasOutput` object is an owned object in the ledger and its owner is the Governor address.
Such address can be directly controlled by a user or by another object (either an `Alias` or `Nft` object). For the latter use case, check the [`Claiming an Output unlockable by an Alias/Nft Address`](address-uc.mdx) example.
Such address can be directly controlled by a user or by another object (either an `Alias` or `Nft` object). For the latter use case, check the [`Claiming an Output unlockable by an Alias/Nft Address`](address-unlock-condition.mdx) example.

## Claim of an Alias Output

Expand Down
28 changes: 13 additions & 15 deletions docs/content/developer/stardust/move-models.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,19 @@ description: Describes how stardust assets are represented in the object-based M
This document describes what move models the Stardust UTXOs are migrated to in the Move-based ledger in IOTA Rebased. First, the Stardust
Move Package is discussed that emulates the legacy UTXO models in object-based move.

## Summary

| Stardust Output (UTXO) | Move Container or Migrated Object | Encapsulated Move Assets Inside the Container |
|--------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Basic Output with IOTA/SMR only | [`Coin<IOTA/SMR>`](../../references/framework/iota-framework/coin.mdx#resource-coin) | ready to be used, no need to extract any assets |
| Basic Output with IOTA/SMR and native tokens | [`Coin<IOTA/SMR>`](../../references/framework/iota-framework/coin.mdx#resource-coin) and one or more [`Coin<NATIVE_TOKEN>`](../../references/framework/iota-framework/coin.mdx#resource-coin) | ready to be used, no need to extract any assets |
| Basic Output with unlock conditions or features | [`BasicOutput<IOTA/SMR>`](../../references/framework/stardust/basic_output#resource-basicoutput) | [`Balance<IOTA/SMR>`](../../references/framework/iota-framework/balance#struct-balance), [`Bag`](../../references/framework/iota-framework/bag#resource-bag) of `Balance<NATIVE_TOKEN>` key-ed by `"NATIVE_TOKEN"` |
| Alias Output | [`AliasOutput<IOTA/SMR`](../../references/framework/stardust/alias_output#resource-aliasoutput) | [`Balance<IOTA/SMR>`](../../references/framework/iota-framework/balance#struct-balance), [`Bag`](../../references/framework/iota-framework/bag#resource-bag) of `Balance<NATIVE_TOKEN>` key-ed by `"NATIVE_TOKEN"`, [`Alias`](../../references/framework/stardust/alias#resource-alias) object |
| Nft Output | [`NftOutput<IOTA/SMR`](../../references/framework/stardust/nft_output#resource-nftoutput) | [`Balance<IOTA/SMR>`](../../references/framework/iota-framework/balance#struct-balance), [`Bag`](../../references/framework/iota-framework/bag#resource-bag) of `Balance<NATIVE_TOKEN>` key-ed by `"NATIVE_TOKEN"`, [`Nft`](../../references/framework/stardust/nft#resource-nft) object |
| Foundry Output | Migrated to a Move Package with [template](https://github.com/iotaledger/iota/blob/develop/crates/iota-genesis-builder/src/stardust/native_token/package_template/sources/native_token_template.move) and [`CoinManager`](../../references/framework/iota-framework/coin_manager). Base tokens of the output are sent to the controlling alias as `Coin<IOTA/SMR>` objects. | - |
| [Vested Rewards From the Stardust Upgrade](https://github.com/iotaledger/new_supply) | [`Timelock<Balance<IOTA>>`](../../references/framework/iota-framework/timelock.mdx#resource-timelock) objects. | - |


## Design Principles

- The migration to IOTA Rebased aims to move away from the Stardust-based ledger concepts and transform assets into their pure
Expand Down Expand Up @@ -518,18 +531,3 @@ public fun extract_assets<T>(output: nft_output::NftOutput<T>, ctx: &mut tx_cont
- The caller has to decide what address to send the `Nft` object to.
- The `NftOutput` container is destroyed in the process.

## Summary


| Stardust Output (UTXO) | Move Container or Migrated Object | Encapsulated Move Assets Inside the Container |
|--------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Basic Output with IOTA/SMR only | [`Coin<IOTA/SMR>`](../../references/framework/iota-framework/coin.mdx#resource-coin) | ready to be used, no need to extract any assets |
| Basic Output with IOTA/SMR and native tokens | [`Coin<IOTA/SMR>`](../../references/framework/iota-framework/coin.mdx#resource-coin) and one or more [`Coin<NATIVE_TOKEN>`](../../references/framework/iota-framework/coin.mdx#resource-coin) | ready to be used, no need to extract any assets |
| Basic Output with unlock conditions or features | [`BasicOutput<IOTA/SMR>`](../../references/framework/stardust/basic_output#resource-basicoutput) | [`Balance<IOTA/SMR>`](../../references/framework/iota-framework/balance#struct-balance), [`Bag`](../../references/framework/iota-framework/bag#resource-bag) of `Balance<NATIVE_TOKEN>` key-ed by `"NATIVE_TOKEN"` |
| Alias Output | [`AliasOutput<IOTA/SMR`](../../references/framework/stardust/alias_output#resource-aliasoutput) | [`Balance<IOTA/SMR>`](../../references/framework/iota-framework/balance#struct-balance), [`Bag`](../../references/framework/iota-framework/bag#resource-bag) of `Balance<NATIVE_TOKEN>` key-ed by `"NATIVE_TOKEN"`, [`Alias`](../../references/framework/stardust/alias#resource-alias) object |
| Nft Output | [`NftOutput<IOTA/SMR`](../../references/framework/stardust/nft_output#resource-nftoutput) | [`Balance<IOTA/SMR>`](../../references/framework/iota-framework/balance#struct-balance), [`Bag`](../../references/framework/iota-framework/bag#resource-bag) of `Balance<NATIVE_TOKEN>` key-ed by `"NATIVE_TOKEN"`, [`Nft`](../../references/framework/stardust/nft#resource-nft) object |
| Foundry Output | Migrated to a Move Package with [template](https://github.com/iotaledger/iota/blob/develop/crates/iota-genesis-builder/src/stardust/native_token/package_template/sources/native_token_template.move) and [`CoinManager`](../../references/framework/iota-framework/coin_manager). Base tokens of the output are sent to the controlling alias as `Coin<IOTA/SMR>` objects. | - |
| [Vested Rewards From the Stardust Upgrade](https://github.com/iotaledger/new_supply) | [`Timelock<Balance<IOTA>>`](../../references/framework/iota-framework/timelock.mdx#resource-timelock) objects. | - |



Loading