Skip to content

Commit

Permalink
Unique Alpha - Moonbase integration [xcAUQ] (#59)
Browse files Browse the repository at this point in the history
* -wip- xcAUQ configuration - pending

* -wip- xcAUQ configuration - pending

* Unique integration, NativeAssetId parameter in xTokens

* remove comment
  • Loading branch information
mmaurello committed Feb 20, 2023
1 parent a8751b4 commit 09a159d
Show file tree
Hide file tree
Showing 9 changed files with 659 additions and 568 deletions.
1,162 changes: 594 additions & 568 deletions package-lock.json

Large diffs are not rendered by default.

40 changes: 40 additions & 0 deletions packages/config/src/config/moonbase/assets/auq.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import { AssetSymbol, ChainKey } from '../../../constants';
import {
XTokensExtrinsicCurrencyTypes,
XTokensExtrinsicSuccessEvent,
} from '../../../extrinsic';
import {
assets,
balance,
chains,
extrinsic,
withdraw,
} from '../moonbase.common';
import { MoonbaseXcmConfig } from '../moonbase.interfaces';

const asset = assets[AssetSymbol.AUQ];
const origin = chains[ChainKey.UniqueAlpha];

export const AUQ: MoonbaseXcmConfig = {
asset,
origin,
deposit: {
[origin.key]: {
source: origin,
balance: balance.system(),
extrinsic: extrinsic
.xTokens()
.transfer()
.successEvent(XTokensExtrinsicSuccessEvent.TransferredMultiAssets)
.origin(origin)
.asset({ [XTokensExtrinsicCurrencyTypes.NativeAssetId]: 'Here' }),
},
},
withdraw: {
[origin.key]: withdraw.xTokens({
balance: balance.system(),
destination: origin,
feePerWeight: 0,
}),
},
};
6 changes: 6 additions & 0 deletions packages/config/src/config/moonbase/moonbase.assets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { AssetsMap } from '../config.interfaces';
import { MoonbaseAssets } from './moonbase.interfaces';

export const MOONBASE_ASSETS = <const>[
AssetSymbol.AUQ,
AssetSymbol.BIT,
AssetSymbol.DEV,
AssetSymbol.LIT,
Expand All @@ -12,6 +13,11 @@ export const MOONBASE_ASSETS = <const>[
];

export const MOONBASE_ASSETS_MAP: AssetsMap<MoonbaseAssets> = {
[AssetSymbol.AUQ]: {
id: '69536036667157951501899290870203586130',
erc20Id: '0xffffffff3450274d4ab181de8830c189f4509652',
originSymbol: AssetSymbol.AUQ,
},
[AssetSymbol.BIT]: {
id: '306639095083798603270835754515874921389',
erc20Id: '0xffffffffe6b08aa1fbbaa02f004d3e5aa27f3bad',
Expand Down
11 changes: 11 additions & 0 deletions packages/config/src/config/moonbase/moonbase.chains.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ export const MOONBASE_CHAINS = <const>[
ChainKey.BitCountryPioneer,
ChainKey.MoonbaseBeta,
ChainKey.StatemineAlphanet,
ChainKey.UniqueAlpha,
];

export const MOONBASE_CHAINS_MAP: ChainsMap<MoonbaseChains> = {
Expand Down Expand Up @@ -71,4 +72,14 @@ export const MOONBASE_CHAINS_MAP: ChainsMap<MoonbaseChains> = {
genesisHash:
'0x2c63baa36880c9cf820d5ccfc4e49841bfd714e93ede2bebc4abc4531dd4e8a0',
},
[ChainKey.UniqueAlpha]: {
key: ChainKey.UniqueAlpha,
name: 'Unique Alphanet',
ws: 'wss://unique-alpha.unique.network',
weight: 1_000_000_000,
parachainId: 2095,
ss58Format: 255,
genesisHash:
'0xbdf55f33d9f0b390f56413ec803c693af348edae64a659760248974b48b9a99e',
},
};
2 changes: 2 additions & 0 deletions packages/config/src/config/moonbase/moonbase.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { AssetSymbol } from '../../constants';
import { MoonbaseXcmConfigs } from './moonbase.interfaces';

import { AUQ } from './assets/auq';
import { BIT } from './assets/bit';
import { DEV } from './assets/dev';
import { LIT } from './assets/lit';
Expand All @@ -9,6 +10,7 @@ import { TT1 } from './assets/tt1';
import { UNIT } from './assets/unit';

export const MOONBASE_CONFIGS: MoonbaseXcmConfigs = {
[AssetSymbol.AUQ]: AUQ,
[AssetSymbol.BIT]: BIT,
[AssetSymbol.DEV]: DEV,
[AssetSymbol.LIT]: LIT,
Expand Down
1 change: 1 addition & 0 deletions packages/config/src/constants/assets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ export enum AssetSymbol {
ACA = 'ACA',
ASTR = 'ASTR',
AUSD = 'AUSD',
AUQ = 'AUQ',
BIT = 'BIT',
BNC = 'BNC',
CRAB = 'CRAB',
Expand Down
1 change: 1 addition & 0 deletions packages/config/src/constants/chains.ts
Original file line number Diff line number Diff line change
Expand Up @@ -70,4 +70,5 @@ export enum ChainKey {
Statemine = 'Statemine',
StatemineAlphanet = 'StatemineAlphanet',
Statemint = 'Statemint',
UniqueAlpha = 'UniqueAlpha',
}
1 change: 1 addition & 0 deletions packages/config/src/extrinsic/xTokens/xTokens.constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ export enum XTokensExtrinsicCurrencyTypes {
MantaCurrency = 'MantaCurrency',
MiningResource = 'MiningResource',
Native = 'Native',
NativeAssetId = 'NativeAssetId',
NativeToken = 'NativeToken',
OtherReserve = 'OtherReserve',
Token = 'Token',
Expand Down
3 changes: 3 additions & 0 deletions packages/config/src/extrinsic/xTokens/xTokens.interfaces.ts
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,9 @@ export type XTokensTransferExtrinsicParamsAsset<
| {
[XTokensExtrinsicCurrencyTypes.Native]: Symbols;
}
| {
[XTokensExtrinsicCurrencyTypes.NativeAssetId]: 'Here';
}
| {
[XTokensExtrinsicCurrencyTypes.NativeToken]: AssetId;
}
Expand Down

0 comments on commit 09a159d

Please sign in to comment.