@sundaeswap/wallet-lite 0.0.17 → 0.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/@types/observer.js.map +1 -1
- package/dist/cjs/classes/WalletAssetMap.class.js +74 -0
- package/dist/cjs/classes/WalletAssetMap.class.js.map +1 -0
- package/dist/cjs/classes/WalletBalanceMap.class.js +9 -11
- package/dist/cjs/classes/WalletBalanceMap.class.js.map +1 -1
- package/dist/cjs/classes/WalletObserver.class.js +5 -4
- package/dist/cjs/classes/WalletObserver.class.js.map +1 -1
- package/dist/cjs/index.js +24 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +2 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/cjs/react-components/hooks/useWalletHandles.js +26 -21
- package/dist/cjs/react-components/hooks/useWalletHandles.js.map +1 -1
- package/dist/cjs/utils/assets.js +35 -0
- package/dist/cjs/utils/assets.js.map +1 -0
- package/dist/esm/@types/observer.js.map +1 -1
- package/dist/esm/classes/WalletAssetMap.class.js +38 -0
- package/dist/esm/classes/WalletAssetMap.class.js.map +1 -0
- package/dist/esm/classes/WalletBalanceMap.class.js +5 -4
- package/dist/esm/classes/WalletBalanceMap.class.js.map +1 -1
- package/dist/esm/classes/WalletObserver.class.js +5 -4
- package/dist/esm/classes/WalletObserver.class.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +2 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/esm/react-components/hooks/useWalletHandles.js +11 -10
- package/dist/esm/react-components/hooks/useWalletHandles.js.map +1 -1
- package/dist/esm/utils/assets.js +28 -0
- package/dist/esm/utils/assets.js.map +1 -0
- package/dist/types/@types/observer.d.ts +5 -3
- package/dist/types/@types/observer.d.ts.map +1 -1
- package/dist/types/classes/WalletAssetMap.class.d.ts +29 -0
- package/dist/types/classes/WalletAssetMap.class.d.ts.map +1 -0
- package/dist/types/classes/WalletBalanceMap.class.d.ts +3 -2
- package/dist/types/classes/WalletBalanceMap.class.d.ts.map +1 -1
- package/dist/types/classes/WalletObserver.class.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
- package/dist/types/react-components/hooks/useWalletHandles.d.ts.map +1 -1
- package/dist/types/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/utils/assets.d.ts +15 -0
- package/dist/types/utils/assets.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/@types/observer.ts +9 -3
- package/src/__data__/assets.ts +3 -2
- package/src/classes/WalletAssetMap.class.ts +40 -0
- package/src/classes/WalletBalanceMap.class.ts +5 -4
- package/src/classes/WalletObserver.class.ts +12 -4
- package/src/classes/__tests__/WalletBalanceMap.test.ts +2 -1
- package/src/classes/__tests__/WalletObserver.test.ts +10 -3
- package/src/index.ts +2 -0
- package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +2 -1
- package/src/react-components/__tests__/__snapshots__/RenderWalletHandles.test.tsx.snap +2 -2
- package/src/react-components/hooks/useWalletHandles.ts +35 -29
- package/src/utils/assets.ts +31 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helper function to normalize asset ID notation.
|
|
3
|
+
*
|
|
4
|
+
* @param {string} assetId The asset ID as a HEX string (either with dot or without).
|
|
5
|
+
* @returns {string}
|
|
6
|
+
*/
|
|
7
|
+
export declare const normalizeAssetIdWithDot: (assetId: string) => string;
|
|
8
|
+
/**
|
|
9
|
+
* Helper function to internally check if an asset is ADA.
|
|
10
|
+
*
|
|
11
|
+
* @param {string} id The asset id.
|
|
12
|
+
* @returns {boolean}
|
|
13
|
+
*/
|
|
14
|
+
export declare const isAdaAsset: (id: string) => boolean;
|
|
15
|
+
//# sourceMappingURL=assets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../src/utils/assets.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,YAAa,MAAM,KAAG,MAazD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,OAAQ,MAAM,KAAG,OACJ,CAAC"}
|
package/package.json
CHANGED
package/src/@types/observer.ts
CHANGED
|
@@ -2,9 +2,11 @@ import type { TransactionUnspentOutput } from "@cardano-sdk/core/dist/cjs/Serial
|
|
|
2
2
|
import type { Cip30WalletApi } from "@cardano-sdk/dapp-connector";
|
|
3
3
|
import type { DAppPeerConnect } from "@fabianbormann/cardano-peer-connect";
|
|
4
4
|
import type { DAppPeerConnectParameters } from "@fabianbormann/cardano-peer-connect/dist/src/types.js";
|
|
5
|
-
import type {
|
|
5
|
+
import type { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
6
6
|
|
|
7
|
+
import { WalletAssetMap } from "../classes/WalletAssetMap.class.js";
|
|
7
8
|
import { WalletBalanceMap } from "../classes/WalletBalanceMap.class.js";
|
|
9
|
+
import { isAdaAsset, normalizeAssetIdWithDot } from "../utils/assets.js";
|
|
8
10
|
|
|
9
11
|
/**
|
|
10
12
|
* A list of support CIP-30 wallet extensions in the browser.
|
|
@@ -48,7 +50,11 @@ export type TWindowCardano = {
|
|
|
48
50
|
*/
|
|
49
51
|
export type TMetadataResolverFunc<
|
|
50
52
|
T extends IAssetAmountMetadata = IAssetAmountMetadata
|
|
51
|
-
> = (
|
|
53
|
+
> = (
|
|
54
|
+
assetIds: string[],
|
|
55
|
+
normalizeAssetIdFunc: typeof normalizeAssetIdWithDot,
|
|
56
|
+
isAdaAssetFunc: typeof isAdaAsset
|
|
57
|
+
) => Promise<Map<string, T>>;
|
|
52
58
|
|
|
53
59
|
/**
|
|
54
60
|
* Options that are passed to the WalletObserver instance.
|
|
@@ -74,7 +80,7 @@ export type TWalletObserverOptions<
|
|
|
74
80
|
*/
|
|
75
81
|
export type TAssetAmountMap<
|
|
76
82
|
T extends IAssetAmountMetadata = IAssetAmountMetadata
|
|
77
|
-
> =
|
|
83
|
+
> = WalletAssetMap<T>;
|
|
78
84
|
|
|
79
85
|
/**
|
|
80
86
|
* Interface describing the structure of the persistent
|
package/src/__data__/assets.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AssetAmount } from "@sundaeswap/asset";
|
|
2
|
+
import { normalizeAssetIdWithDot } from "../utils/assets";
|
|
2
3
|
|
|
3
4
|
export const assetIds = [
|
|
4
5
|
"ada.lovelace",
|
|
@@ -107,7 +108,7 @@ export const assetIds = [
|
|
|
107
108
|
];
|
|
108
109
|
|
|
109
110
|
export const assetMap = assetIds.map((id) => {
|
|
110
|
-
const assetId =
|
|
111
|
+
const assetId = normalizeAssetIdWithDot(id);
|
|
111
112
|
const name = Buffer.from(id.slice(56), "hex").toString("utf-8");
|
|
112
113
|
|
|
113
114
|
const nftMetadata = {
|
|
@@ -126,7 +127,7 @@ export const assetMap = assetIds.map((id) => {
|
|
|
126
127
|
name.includes("Gutenberg Bible");
|
|
127
128
|
|
|
128
129
|
return {
|
|
129
|
-
key:
|
|
130
|
+
key: assetId,
|
|
130
131
|
assetAmount: new AssetAmount(
|
|
131
132
|
isNFT ? 1 : Math.floor(Math.random() * 10000000) + 1,
|
|
132
133
|
isNFT ? nftMetadata : fungibleMetadata
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AssetAmount, IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
|
+
import { normalizeAssetIdWithDot } from "../utils/assets";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Map wrapper to enforce asset id normalization when setting and getting assets.
|
|
6
|
+
*/
|
|
7
|
+
export class WalletAssetMap<
|
|
8
|
+
AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata
|
|
9
|
+
> extends Map<string, AssetAmount<AssetMetadata>> {
|
|
10
|
+
/**
|
|
11
|
+
* Overlay to enforce asset ID normalization.
|
|
12
|
+
*
|
|
13
|
+
* @param {string} key Retrieve the asset ID as a HEX string (either with dot or without).
|
|
14
|
+
* @returns {AssetAmount<AssetMetadata> | undefined}
|
|
15
|
+
*/
|
|
16
|
+
get(key: string): AssetAmount<AssetMetadata> | undefined {
|
|
17
|
+
return super.get(normalizeAssetIdWithDot(key));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Overlay to enforce asset ID normalization.
|
|
22
|
+
*
|
|
23
|
+
* @param {string} key Retrieve the asset ID as a HEX string (either with dot or without).
|
|
24
|
+
* @param {AssetAmount<AssetMetadata>} key Retrieve the asset ID as a HEX string (either with dot or without).
|
|
25
|
+
* @returns {this}
|
|
26
|
+
*/
|
|
27
|
+
set(key: string, value: AssetAmount<AssetMetadata>): this {
|
|
28
|
+
return super.set(normalizeAssetIdWithDot(key), value);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Overlay to enforce asset ID normalization.
|
|
33
|
+
*
|
|
34
|
+
* @param {string} key Retrieve the asset ID as a HEX string (either with dot or without).
|
|
35
|
+
* @returns {AssetAmount<AssetMetadata> | undefined}
|
|
36
|
+
*/
|
|
37
|
+
has(key: string): boolean {
|
|
38
|
+
return super.has(normalizeAssetIdWithDot(key));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AssetAmount, IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
2
|
|
|
3
3
|
import { TAssetAmountMap } from "../@types/observer.js";
|
|
4
|
+
import { WalletAssetMap } from "./WalletAssetMap.class.js";
|
|
4
5
|
import { WalletObserver } from "./WalletObserver.class.js";
|
|
5
6
|
|
|
6
7
|
/**
|
|
@@ -13,7 +14,7 @@ import { WalletObserver } from "./WalletObserver.class.js";
|
|
|
13
14
|
*/
|
|
14
15
|
export class WalletBalanceMap<
|
|
15
16
|
AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata
|
|
16
|
-
> extends
|
|
17
|
+
> extends WalletAssetMap<AssetMetadata> {
|
|
17
18
|
/**
|
|
18
19
|
* @private
|
|
19
20
|
* @type {Record<number, string[]>}
|
|
@@ -41,7 +42,7 @@ export class WalletBalanceMap<
|
|
|
41
42
|
* @returns {TAssetAmountMap<AssetMetadata>} A map of fungible tokens.
|
|
42
43
|
*/
|
|
43
44
|
getFungibleTokens = (): TAssetAmountMap<AssetMetadata> => {
|
|
44
|
-
const map: TAssetAmountMap<AssetMetadata> = new
|
|
45
|
+
const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();
|
|
45
46
|
[...this.entries()].forEach(([key, asset]) => {
|
|
46
47
|
if (asset.metadata.decimals > 0) {
|
|
47
48
|
map.set(key, asset);
|
|
@@ -58,7 +59,7 @@ export class WalletBalanceMap<
|
|
|
58
59
|
* @returns {TAssetAmountMap<AssetMetadata>} A map of handle assets.
|
|
59
60
|
*/
|
|
60
61
|
getHandles = (): TAssetAmountMap<AssetMetadata> => {
|
|
61
|
-
const map: TAssetAmountMap<AssetMetadata> = new
|
|
62
|
+
const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();
|
|
62
63
|
[...this.entries()].forEach(([key, asset]) => {
|
|
63
64
|
const isHandle = this._handlePolicyIds[this._observer.network].some(
|
|
64
65
|
(policyId) => asset.metadata.assetId.includes(policyId)
|
|
@@ -82,7 +83,7 @@ export class WalletBalanceMap<
|
|
|
82
83
|
getNonFungibleTokens = (
|
|
83
84
|
withHandles?: boolean
|
|
84
85
|
): TAssetAmountMap<AssetMetadata> => {
|
|
85
|
-
const map: TAssetAmountMap<AssetMetadata> = new
|
|
86
|
+
const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();
|
|
86
87
|
[...this.entries()].forEach(([key, asset]) => {
|
|
87
88
|
if (
|
|
88
89
|
!withHandles &&
|
|
@@ -12,6 +12,7 @@ import type {
|
|
|
12
12
|
TSupportedWalletExtensions,
|
|
13
13
|
TWalletObserverOptions,
|
|
14
14
|
} from "../@types/observer.js";
|
|
15
|
+
import { isAdaAsset, normalizeAssetIdWithDot } from "../utils/assets.js";
|
|
15
16
|
import {
|
|
16
17
|
getCardanoCore,
|
|
17
18
|
getCardanoUtil,
|
|
@@ -391,7 +392,10 @@ export class WalletObserver<
|
|
|
391
392
|
const multiassetEntries = data.multiasset()?.entries() ?? [];
|
|
392
393
|
if (multiassetEntries) {
|
|
393
394
|
for (const [id, amount] of multiassetEntries) {
|
|
394
|
-
balanceMap.set(
|
|
395
|
+
balanceMap.set(
|
|
396
|
+
id,
|
|
397
|
+
new AssetAmount(amount, metadata.get(normalizeAssetIdWithDot(id)))
|
|
398
|
+
);
|
|
395
399
|
}
|
|
396
400
|
}
|
|
397
401
|
|
|
@@ -549,7 +553,11 @@ export class WalletObserver<
|
|
|
549
553
|
}
|
|
550
554
|
}
|
|
551
555
|
|
|
552
|
-
const newMetadata = await this._options.metadataResolver(
|
|
556
|
+
const newMetadata = await this._options.metadataResolver(
|
|
557
|
+
assetIds.map(normalizeAssetIdWithDot),
|
|
558
|
+
normalizeAssetIdWithDot,
|
|
559
|
+
isAdaAsset
|
|
560
|
+
);
|
|
553
561
|
this._cachedMetadata = newMetadata;
|
|
554
562
|
return newMetadata;
|
|
555
563
|
};
|
|
@@ -563,8 +571,8 @@ export class WalletObserver<
|
|
|
563
571
|
async (assetIds) => {
|
|
564
572
|
const map = new Map<string, AssetMetadata>();
|
|
565
573
|
assetIds.forEach((id) =>
|
|
566
|
-
map.set(id, {
|
|
567
|
-
assetId: id,
|
|
574
|
+
map.set(normalizeAssetIdWithDot(id), {
|
|
575
|
+
assetId: normalizeAssetIdWithDot(id),
|
|
568
576
|
decimals: 6,
|
|
569
577
|
} as AssetMetadata)
|
|
570
578
|
);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { beforeEach, describe, expect, it, spyOn, test } from "bun:test";
|
|
2
2
|
|
|
3
3
|
import { assetIds, assetMap } from "../../__data__/assets.js";
|
|
4
|
+
import { normalizeAssetIdWithDot } from "../../utils/assets.js";
|
|
4
5
|
import { WalletBalanceMap } from "../WalletBalanceMap.class.js";
|
|
5
6
|
import { WalletObserver } from "../WalletObserver.class.js";
|
|
6
7
|
|
|
@@ -30,7 +31,7 @@ describe("WalletBalanceMap", () => {
|
|
|
30
31
|
|
|
31
32
|
it("should setup the test instance properly", () => {
|
|
32
33
|
expect(instance.size).toEqual(103);
|
|
33
|
-
expect([...instance.keys()]).toEqual(assetIds);
|
|
34
|
+
expect([...instance.keys()]).toEqual(assetIds.map(normalizeAssetIdWithDot));
|
|
34
35
|
});
|
|
35
36
|
|
|
36
37
|
test("getFungibleTokens()", () => {
|
|
@@ -7,7 +7,11 @@ import {
|
|
|
7
7
|
unusedAddresses,
|
|
8
8
|
usedAddresses,
|
|
9
9
|
} from "../../__data__/eternl.js";
|
|
10
|
-
import {
|
|
10
|
+
import {
|
|
11
|
+
EWalletObserverEvents,
|
|
12
|
+
TMetadataResolverFunc,
|
|
13
|
+
TWalletObserverOptions,
|
|
14
|
+
} from "../../index.js";
|
|
11
15
|
import * as getLibModules from "../../utils/getLibs.js";
|
|
12
16
|
import { WalletObserver } from "../WalletObserver.class.js";
|
|
13
17
|
|
|
@@ -87,10 +91,13 @@ describe("WalletObserver", async () => {
|
|
|
87
91
|
});
|
|
88
92
|
|
|
89
93
|
test("with parameters", () => {
|
|
90
|
-
const handler = async (
|
|
94
|
+
const handler: TMetadataResolverFunc<IAssetAmountMetadata> = async (
|
|
95
|
+
ids: string[],
|
|
96
|
+
normalize
|
|
97
|
+
) => {
|
|
91
98
|
const metadata = ids.map((id) => ({ decimals: 6, assetId: id }));
|
|
92
99
|
const map = new Map<string, IAssetAmountMetadata>();
|
|
93
|
-
metadata.forEach((m) => map.set(m.assetId, m));
|
|
100
|
+
metadata.forEach((m) => map.set(normalize(m.assetId), m));
|
|
94
101
|
return map;
|
|
95
102
|
};
|
|
96
103
|
const observer = new WalletObserver({
|
package/src/index.ts
CHANGED
|
@@ -4,3 +4,5 @@ export { WalletObserver } from "./classes/WalletObserver.class.js";
|
|
|
4
4
|
export * from "./react-components/contexts/observer/types.js";
|
|
5
5
|
export * from "./react-components/hooks/index.js";
|
|
6
6
|
export * from "./react-components/index.js";
|
|
7
|
+
export * from "./utils/assets.js";
|
|
8
|
+
export * from "./utils/getLibs.js";
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
TAssetAmountMap,
|
|
7
7
|
TSupportedWalletExtensions,
|
|
8
8
|
} from "../../../@types/observer.js";
|
|
9
|
+
import { WalletAssetMap } from "../../../classes/WalletAssetMap.class.js";
|
|
9
10
|
import { WalletBalanceMap } from "../../../classes/WalletBalanceMap.class.js";
|
|
10
11
|
import { WalletObserver } from "../../../classes/WalletObserver.class.js";
|
|
11
12
|
import { areAssetMapsEqual } from "../../../utils/comparisons.js";
|
|
@@ -26,7 +27,7 @@ export const useWalletObserverState = (observer: WalletObserver) => {
|
|
|
26
27
|
);
|
|
27
28
|
const [handleMetadata, setHandleMetadata] = useState<
|
|
28
29
|
TAssetAmountMap<THandleMetadata>
|
|
29
|
-
>(new
|
|
30
|
+
>(new WalletAssetMap());
|
|
30
31
|
const [balance, setBalance] = useState<WalletBalanceMap>(
|
|
31
32
|
new WalletBalanceMap(observer)
|
|
32
33
|
);
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
exports[`RenderWalletHandles should successfully update state with handle metadata 1`] = `"<pre>falsefalsefalse<button data-testid="connect-with-handles"></button></pre>"`;
|
|
4
4
|
|
|
5
|
-
exports[`RenderWalletHandles should successfully update state with handle metadata 2`] = `"<pre>eternltruefalse00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d00true00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d000c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,003c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,004746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,007b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,60c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a,60e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80,60129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d,60d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd,60c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56,6082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3,609de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca,60da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b,60d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6,6002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f,60c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee,605d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab,6095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d,6081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3,6070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593,608063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889,60134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2,60fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72,603c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee,602e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34,60d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7,60486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85,602ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168,60b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e,60e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63,60af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b,6022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2,6075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94,60be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125,605b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e,6018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362,60ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805,608911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3,60b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f,60a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416,601f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d,60c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8,60412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0,60ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5,60b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f,60e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069,6066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc,6032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac,6036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5,601280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9,60ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0,60de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819,60e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5,60eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a,6016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0,604746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02,60f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185,6061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc,601a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd,60631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b,60f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b,60e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee,60f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3,607b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d,60dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c,609da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4,6033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612<p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36976","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3666171","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3666472","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe368756773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d696e69","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe372656b74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe377656233","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36269703339","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3636f2d6f70","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3656964616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36761746573","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe374616e7961","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3647275646765","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe366696e6c6579","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36b6f65706b65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d616b657273","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d6f6465726e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe373796e746178","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe37a656b696168","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3636176656d616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe364697372757074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3656e6372797074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe368757362616e64","decimals":0}</p><p data-testid="calvin">{"hex":"6d696e696d616c","name":"calvin","image":"ipfs://zdj7We5kz4op3HNodbzfRt14AqUJdygK2gHosAnbaDx7fGck2","standard_image":"ipfs://zb2rhenCxDXo56r7AwHsHuSBmK9x63diFzwxtsL6PsQnM3uUs","holder":"stake1uyyyruv2y289xm7laay8a9sgrn95q627q3q4v3z4eagjdrs4j0yqu","holder_type":"wallet","length":6,"og_number":0,"rarity":"common","utxo":"3911b59931d3f5e938bef6d773d4b0d6a48fab96d63c658aa4b240a50dcba679#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"cal","pfp_image":"","bg_image":"ipfs://bafybeicuvareow6exu2ti6xtsxkzpcpsc7dj54q7oaratjm4uaqgd77ham","bg_asset":"c705d66dd826fa750a3fcc0a74c27fdb20db2ed18ad569232d7123ad001bc2804772616469656e7420536861706573202d2043616765","resolved_addresses":{"ada":"addr1qyzpu6dy0tp926q72qdsxmu3ydqg9qyavs7tanfcpudv24sgg8cc5g5w2dhalm6g06tqs8xtgp54upzp2ez9tn63y68qn5st78"},"created_slot_number":103834977,"updated_slot_number":115852137,"has_datum":false,"svg_version":"2.4.0","image_hash":"0291cbb9f046a27bb067b4310c6eab6ae8e755a49a3b7e1ae87314b569ab6548","standard_image_hash":"78e558e2c32e3de4e95cefad00857a98665cd323bf11bdd4b9b48a707de61910","version":1,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d696e696d616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe370726f66696c65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe370757273756974","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3736176696e6773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3616c64657262696e","decimals":0}</p><p data-testid="pi">{"hex":"62726577636c7562","name":"pi","image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","standard_image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","holder":"stake1u8q07kgyuhffc8v9auvn4jlqcm4hehdu7wsd9fvna95nr3qynl7dk","holder_type":"wallet","length":2,"og_number":0,"rarity":"ultra_rare","utxo":"8ae62ab3631124197cdd4faac83428c404e529f07db510899c68a373a22fa77c#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"pi","pfp_image":"","bg_image":"","resolved_addresses":{"ada":"addr1qyyrwcs73wk9cp9e7lxpn86d2n4wxgyduxqxmmj6psmjejkqlavsfewjnswctmce8t97p3ht0nwmeuaq62je86tfx8zq6lh9kr"},"created_slot_number":55725690,"updated_slot_number":104951843,"has_datum":false,"svg_version":"","image_hash":"","standard_image_hash":"","version":0,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe362726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36f726967696e616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706c61793277696e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe37072656d69657265","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3646179747261646572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe363687269737469616e6e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706f7274666f6c696f31","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706f7274666f6c696f32","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706f7274666f6c696f33","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe373756666696369656e74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe373757270726973656d65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36f70706f7274756e697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3736f6c6f7072656e657572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3737572766976616c697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe374686562726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36472756467657265706f7274","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe368617070796e657779656172","decimals":0}</p><button data-testid="connect-with-handles"></button></pre>"`;
|
|
5
|
+
exports[`RenderWalletHandles should successfully update state with handle metadata 2`] = `"<pre>eternltruefalse00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d00true00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d000c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,003c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,004746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,007b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,60c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a,60e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80,60129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d,60d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd,60c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56,6082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3,609de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca,60da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b,60d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6,6002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f,60c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee,605d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab,6095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d,6081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3,6070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593,608063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889,60134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2,60fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72,603c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee,602e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34,60d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7,60486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85,602ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168,60b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e,60e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63,60af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b,6022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2,6075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94,60be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125,605b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e,6018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362,60ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805,608911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3,60b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f,60a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416,601f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d,60c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8,60412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0,60ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5,60b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f,60e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069,6066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc,6032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac,6036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5,601280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9,60ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0,60de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819,60e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5,60eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a,6016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0,604746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02,60f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185,6061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc,601a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd,60631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b,60f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b,60e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee,60f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3,607b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d,60dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c,609da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4,6033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612<p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6976","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.666171","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.666472","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.68756773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d696e69","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.72656b74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.77656233","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6269703339","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.636f2d6f70","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.656964616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6761746573","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.74616e7961","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.647275646765","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.66696e6c6579","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6b6f65706b65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d616b657273","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d6f6465726e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.73796e746178","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.7a656b696168","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.636176656d616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.64697372757074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.656e6372797074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.68757362616e64","decimals":0}</p><p data-testid="calvin">{"hex":"6d696e696d616c","name":"calvin","image":"ipfs://zdj7We5kz4op3HNodbzfRt14AqUJdygK2gHosAnbaDx7fGck2","standard_image":"ipfs://zb2rhenCxDXo56r7AwHsHuSBmK9x63diFzwxtsL6PsQnM3uUs","holder":"stake1uyyyruv2y289xm7laay8a9sgrn95q627q3q4v3z4eagjdrs4j0yqu","holder_type":"wallet","length":6,"og_number":0,"rarity":"common","utxo":"3911b59931d3f5e938bef6d773d4b0d6a48fab96d63c658aa4b240a50dcba679#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"cal","pfp_image":"","bg_image":"ipfs://bafybeicuvareow6exu2ti6xtsxkzpcpsc7dj54q7oaratjm4uaqgd77ham","bg_asset":"c705d66dd826fa750a3fcc0a74c27fdb20db2ed18ad569232d7123ad001bc2804772616469656e7420536861706573202d2043616765","resolved_addresses":{"ada":"addr1qyzpu6dy0tp926q72qdsxmu3ydqg9qyavs7tanfcpudv24sgg8cc5g5w2dhalm6g06tqs8xtgp54upzp2ez9tn63y68qn5st78"},"created_slot_number":103834977,"updated_slot_number":115852137,"has_datum":false,"svg_version":"2.4.0","image_hash":"0291cbb9f046a27bb067b4310c6eab6ae8e755a49a3b7e1ae87314b569ab6548","standard_image_hash":"78e558e2c32e3de4e95cefad00857a98665cd323bf11bdd4b9b48a707de61910","version":1,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d696e696d616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.70726f66696c65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.70757273756974","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.736176696e6773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.616c64657262696e","decimals":0}</p><p data-testid="pi">{"hex":"62726577636c7562","name":"pi","image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","standard_image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","holder":"stake1u8q07kgyuhffc8v9auvn4jlqcm4hehdu7wsd9fvna95nr3qynl7dk","holder_type":"wallet","length":2,"og_number":0,"rarity":"ultra_rare","utxo":"8ae62ab3631124197cdd4faac83428c404e529f07db510899c68a373a22fa77c#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"pi","pfp_image":"","bg_image":"","resolved_addresses":{"ada":"addr1qyyrwcs73wk9cp9e7lxpn86d2n4wxgyduxqxmmj6psmjejkqlavsfewjnswctmce8t97p3ht0nwmeuaq62je86tfx8zq6lh9kr"},"created_slot_number":55725690,"updated_slot_number":104951843,"has_datum":false,"svg_version":"","image_hash":"","standard_image_hash":"","version":0,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.62726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6f726967696e616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706c61793277696e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.7072656d69657265","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.646179747261646572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.63687269737469616e6e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706f7274666f6c696f31","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706f7274666f6c696f32","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706f7274666f6c696f33","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.73756666696369656e74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.73757270726973656d65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6f70706f7274756e697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.736f6c6f7072656e657572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.737572766976616c697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.74686562726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6472756467657265706f7274","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.68617070796e657779656172","decimals":0}</p><button data-testid="connect-with-handles"></button></pre>"`;
|
|
6
6
|
|
|
7
|
-
exports[`RenderWalletHandles should successfully update state with handle metadata 3`] = `"<pre>eternltruefalse00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d00true00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d000c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,003c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,004746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,007b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,60c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a,60e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80,60129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d,60d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd,60c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56,6082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3,609de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca,60da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b,60d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6,6002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f,60c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee,605d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab,6095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d,6081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3,6070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593,608063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889,60134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2,60fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72,603c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee,602e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34,60d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7,60486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85,602ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168,60b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e,60e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63,60af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b,6022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2,6075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94,60be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125,605b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e,6018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362,60ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805,608911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3,60b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f,60a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416,601f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d,60c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8,60412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0,60ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5,60b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f,60e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069,6066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc,6032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac,6036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5,601280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9,60ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0,60de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819,60e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5,60eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a,6016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0,604746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02,60f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185,6061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc,601a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd,60631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b,60f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b,60e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee,60f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3,607b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d,60dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c,609da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4,6033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612<p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36976","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3666171","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3666472","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe368756773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d696e69","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe372656b74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe377656233","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36269703339","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3636f2d6f70","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3656964616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36761746573","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe374616e7961","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3647275646765","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe366696e6c6579","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36b6f65706b65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d616b657273","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d6f6465726e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe373796e746178","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe37a656b696168","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3636176656d616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe364697372757074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3656e6372797074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe368757362616e64","decimals":0}</p><p data-testid="calvin">{"hex":"6d696e696d616c","name":"calvin","image":"ipfs://zdj7We5kz4op3HNodbzfRt14AqUJdygK2gHosAnbaDx7fGck2","standard_image":"ipfs://zb2rhenCxDXo56r7AwHsHuSBmK9x63diFzwxtsL6PsQnM3uUs","holder":"stake1uyyyruv2y289xm7laay8a9sgrn95q627q3q4v3z4eagjdrs4j0yqu","holder_type":"wallet","length":6,"og_number":0,"rarity":"common","utxo":"3911b59931d3f5e938bef6d773d4b0d6a48fab96d63c658aa4b240a50dcba679#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"cal","pfp_image":"","bg_image":"ipfs://bafybeicuvareow6exu2ti6xtsxkzpcpsc7dj54q7oaratjm4uaqgd77ham","bg_asset":"c705d66dd826fa750a3fcc0a74c27fdb20db2ed18ad569232d7123ad001bc2804772616469656e7420536861706573202d2043616765","resolved_addresses":{"ada":"addr1qyzpu6dy0tp926q72qdsxmu3ydqg9qyavs7tanfcpudv24sgg8cc5g5w2dhalm6g06tqs8xtgp54upzp2ez9tn63y68qn5st78"},"created_slot_number":103834977,"updated_slot_number":115852137,"has_datum":false,"svg_version":"2.4.0","image_hash":"0291cbb9f046a27bb067b4310c6eab6ae8e755a49a3b7e1ae87314b569ab6548","standard_image_hash":"78e558e2c32e3de4e95cefad00857a98665cd323bf11bdd4b9b48a707de61910","version":1,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36d696e696d616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe370726f66696c65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe370757273756974","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3736176696e6773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3616c64657262696e","decimals":0}</p><p data-testid="pi">{"hex":"62726577636c7562","name":"pi","image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","standard_image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","holder":"stake1u8q07kgyuhffc8v9auvn4jlqcm4hehdu7wsd9fvna95nr3qynl7dk","holder_type":"wallet","length":2,"og_number":0,"rarity":"ultra_rare","utxo":"8ae62ab3631124197cdd4faac83428c404e529f07db510899c68a373a22fa77c#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"pi","pfp_image":"","bg_image":"","resolved_addresses":{"ada":"addr1qyyrwcs73wk9cp9e7lxpn86d2n4wxgyduxqxmmj6psmjejkqlavsfewjnswctmce8t97p3ht0nwmeuaq62je86tfx8zq6lh9kr"},"created_slot_number":55725690,"updated_slot_number":104951843,"has_datum":false,"svg_version":"","image_hash":"","standard_image_hash":"","version":0,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe362726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36f726967696e616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706c61793277696e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe37072656d69657265","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3646179747261646572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe363687269737469616e6e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706f7274666f6c696f31","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706f7274666f6c696f32","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3706f7274666f6c696f33","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe373756666696369656e74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe373757270726973656d65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36f70706f7274756e697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3736f6c6f7072656e657572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3737572766976616c697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe374686562726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe36472756467657265706f7274","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe368617070796e657779656172","decimals":0}</p><button data-testid="connect-with-handles"></button></pre>"`;
|
|
7
|
+
exports[`RenderWalletHandles should successfully update state with handle metadata 3`] = `"<pre>eternltruefalse00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d00true00c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d000c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,003c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,002ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,005b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,008911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,004746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,001a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,007b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,00dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,009da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,0033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612121fd22e0b57ac206fefc763f8bfa0771919f5218b40691eea4514d0,60c279a3fb3b4e62bbc78e288783b58045d4ae82a18867d8352d02775a,60e855cd3dbc30bad8ac8fffbed87d36325b407a8e934b1507725fcd80,60129ee829b3cea5762f0c1077db667390a9ee007825a0ed7b1150d35d,60d98f028bd372ed61079c6ed5083e3a977d69ab5d0b17b25bc87343dd,60c888866b693e1ae8cb237351ba4bdc7e16882a1dc4a53d4de0537e56,6082d061e45a1ff5b30de61d3d1137e6ebdd44d6056be88a44d547b5a3,609de2d448e439c970d94bf483f8bcc0eb47040d3f293e096a580d3aca,60da3f1060013b6e9be44cd2890a6f20f524d2071d22410a5264de115b,60d1c9c1d95ce5ee7e666cc83b2b56dd25d82f0c91b5c34175fd8448b6,6002659dc406e1d51c2695bc23962b30487d3ceb995beb13b698509c6f,60c46c44a29807de8fa23693b3da1c1976ebe8858f74199ca840b557ee,605d48e3d5655bf8a05eda49ea6683ccaf5351d505c38ae7ad43cbd4ab,6095f329c349c57bd4bcf021c8a96e68eca384627fee9ebea56ff8167d,6081378bb3d576f8dce84a9bb6d6761530ef8088f335d231bd98eaedc3,6070fc9c5a5d80650a87dce6dc4ea9a066f3185352e89f946165995593,608063fa1c1fb41cafd24f484e2a7d0014202ffef9407af05bf4279889,60134fd13220198b9e8d0523cec39465b2bf3400fdeca305bf88fe0bb2,60fccd5b37e433d56779cf1beb43440415eaca903ca92c61de2bbf0c72,603c0b43dcb3cee0988607c478f11c5c657cb31ebeafe495d8eca5b4ee,602e0f369f4fabf5f314fd2dbd34e7d6a03d0336b8d974f2208c75bc34,60d38956d5d8c3e996880298b8e1534679e285f93475cf6aa3256205c7,60486dede781535d8ff49d9a0dadeb5c0d38ef150f6fc80180921ebe85,602ea947a2d3c0c95ca5124f6b61b83a5f4e0b71223f863be838831168,60b7a6f578ed78826a3c32cadf5ede889ee350e43c4d11f8f9b94cb03e,60e1a7fdf8d8010e238948dec7150e84fd158acdeaa76c200d8a4b1f63,60af0a05d243de50100af100863c88b4f6524fa4ee86a84127cf15b82b,6022de41ad5b3628ecd8686bce555846bedde16ea7881bd63abf9198e2,6075fcbf24479728322e5f128c84c15c27aeea10196f56d1ff44d40b94,60be01633e07d001fff611b3d39ac3ca89127acecef79aabb812cea125,605b819971068bae01c3d411f2b5b8a12331df4d9fbeb899c0a59afb9e,6018edec9fc995f6ea029f87b6142efdd4a132cbe4f3c14cdad54e1362,60ce805857db7601ac7af226290a0f0bee4608736fea251b8813359805,608911a9404ee35265e5b39ca1e38a5d64a67384307bc47ea5b1c2f1f3,60b80d7dfef9f0e989a62aabdbc9aec4703bc38dcc0363bcb902aad20f,60a3aabe29cf0d4cf0acd9c0c4231e69ae145e426fd40d9bc089117416,601f64ff5164c16467e229f4305e5cd05cea85f407d68ba5c8f33f6d5d,60c1ce344ee9f695a9bfa4230254c0008aa62cf09f5f4444f6ece352d8,60412be6abc6a8d58aa914bed006e77c0e8e6870a5405a0a00db9119b0,60ebc9713be7aa719a00d2be641418b59747b8ba846e1687253d6667b5,60b5c852e07c831c968ae7e0388bd0ed591097238ca3a3742367facf0f,60e10a1ec68fe34887f87c4badc81f93c2d69999614683cf05c8e97069,6066de96d2a1c75f99185f4d5a39e49adccf18515cc512c5a7392b98cc,6032c425519672bec473a8971a79a2758356ad24ee99353c7020fd5cac,6036e19cee7f33f141d34fbb899c27a68900ac6593f082edfbe6fc3fe5,601280d6db873a83fa7908f1416acbbc189624b392be7935ba787f3cb9,60ce1657bbdc8cceabecad61bb8bff3f9865d7c46170c6555c9e406aa0,60de2d51517b76fcb141908bfa07a93f1bf93b92124838d2ed24022819,60e35880324d3302478a8c48cc9c71b81710b50f8fb444a5a56462e4b5,60eb4b163aa81b319275f796b7b19b50c945604f47f807a5a5b5acd19a,6016f85346dc9b1efccaa9a69e357b49d7a25c03936ea5d05ede3cfca0,604746a8792a9eb11769d7593eeb4d0bf1be04d68c00ef50d2752c4d02,60f0ccab792b8e74acca2e08533b805afc59a38671c3c68d337f16c185,6061831490182c6c68168cddf4c995dca27c8b8b144b2643a010f938bc,601a150c13e1b5a2c6f5aa49e53ce9fc20e06d844ff162fcbd691624cd,60631b6ceb11ddd4afc4ed3d098f978ff0bfbceda084f263dfebca0e9b,60f282664fba7a04a7e2c3e782e6a23153ea5384b4c680d9dc1a98959b,60e594ceb9f74bd9fb58473f225f443dbd7be9ad76ab1c45925fe1d8ee,60f9369f45d0ae6a0ac710a02cf92277c091ef548e493e1fccb8b149e3,607b1da5a2d2cdac17fba68066eb5cb135776f0badd0ec77790115f34d,60dfcdec7a63f0e2422e938cdf3df012a9eefeccb0c835e56419fe345c,609da13e2ed25bdc1df37e3eef351aaee057ac926cedd1bb1ce02122d4,6033b94204fa0c33953e26834572de06f89496dd9b910c98d622e21612<p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6976","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.666171","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.666472","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.68756773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d696e69","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.72656b74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.77656233","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6269703339","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.636f2d6f70","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.656964616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6761746573","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.74616e7961","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.647275646765","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.66696e6c6579","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6b6f65706b65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d616b657273","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d6f6465726e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.73796e746178","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.7a656b696168","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.636176656d616e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.64697372757074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.656e6372797074","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.68757362616e64","decimals":0}</p><p data-testid="calvin">{"hex":"6d696e696d616c","name":"calvin","image":"ipfs://zdj7We5kz4op3HNodbzfRt14AqUJdygK2gHosAnbaDx7fGck2","standard_image":"ipfs://zb2rhenCxDXo56r7AwHsHuSBmK9x63diFzwxtsL6PsQnM3uUs","holder":"stake1uyyyruv2y289xm7laay8a9sgrn95q627q3q4v3z4eagjdrs4j0yqu","holder_type":"wallet","length":6,"og_number":0,"rarity":"common","utxo":"3911b59931d3f5e938bef6d773d4b0d6a48fab96d63c658aa4b240a50dcba679#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"cal","pfp_image":"","bg_image":"ipfs://bafybeicuvareow6exu2ti6xtsxkzpcpsc7dj54q7oaratjm4uaqgd77ham","bg_asset":"c705d66dd826fa750a3fcc0a74c27fdb20db2ed18ad569232d7123ad001bc2804772616469656e7420536861706573202d2043616765","resolved_addresses":{"ada":"addr1qyzpu6dy0tp926q72qdsxmu3ydqg9qyavs7tanfcpudv24sgg8cc5g5w2dhalm6g06tqs8xtgp54upzp2ez9tn63y68qn5st78"},"created_slot_number":103834977,"updated_slot_number":115852137,"has_datum":false,"svg_version":"2.4.0","image_hash":"0291cbb9f046a27bb067b4310c6eab6ae8e755a49a3b7e1ae87314b569ab6548","standard_image_hash":"78e558e2c32e3de4e95cefad00857a98665cd323bf11bdd4b9b48a707de61910","version":1,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6d696e696d616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.70726f66696c65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.70757273756974","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.736176696e6773","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.616c64657262696e","decimals":0}</p><p data-testid="pi">{"hex":"62726577636c7562","name":"pi","image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","standard_image":"ipfs://QmYKjoA9fsLaGnz92BJbC5kHFsSKsijAdmowQqbmzjfWBT","holder":"stake1u8q07kgyuhffc8v9auvn4jlqcm4hehdu7wsd9fvna95nr3qynl7dk","holder_type":"wallet","length":2,"og_number":0,"rarity":"ultra_rare","utxo":"8ae62ab3631124197cdd4faac83428c404e529f07db510899c68a373a22fa77c#1","characters":"letters","numeric_modifiers":"","default_in_wallet":"pi","pfp_image":"","bg_image":"","resolved_addresses":{"ada":"addr1qyyrwcs73wk9cp9e7lxpn86d2n4wxgyduxqxmmj6psmjejkqlavsfewjnswctmce8t97p3ht0nwmeuaq62je86tfx8zq6lh9kr"},"created_slot_number":55725690,"updated_slot_number":104951843,"has_datum":false,"svg_version":"","image_hash":"","standard_image_hash":"","version":0,"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.62726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6f726967696e616c","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706c61793277696e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.7072656d69657265","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.646179747261646572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.63687269737469616e6e","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706f7274666f6c696f31","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706f7274666f6c696f32","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.706f7274666f6c696f33","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.73756666696369656e74","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.73757270726973656d65","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6f70706f7274756e697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.736f6c6f7072656e657572","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.737572766976616c697374","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.74686562726577636c7562","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.6472756467657265706f7274","decimals":0}</p><p>{"assetId":"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3.68617070796e657779656172","decimals":0}</p><button data-testid="connect-with-handles"></button></pre>"`;
|
|
@@ -3,6 +3,8 @@ import { useCallback, useEffect, useMemo, useState } from "react";
|
|
|
3
3
|
import { IHandle } from "@koralabs/adahandle-sdk";
|
|
4
4
|
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
5
5
|
import { TAssetAmountMap } from "../../@types/observer.js";
|
|
6
|
+
import { WalletAssetMap } from "../../classes/WalletAssetMap.class.js";
|
|
7
|
+
import { normalizeAssetIdWithDot } from "../../utils/assets.js";
|
|
6
8
|
import { THandleMetadata } from "../contexts/observer/types.js";
|
|
7
9
|
import { useWalletObserver } from "./useWalletObserver.js";
|
|
8
10
|
|
|
@@ -13,7 +15,7 @@ export const useWalletHandles = <
|
|
|
13
15
|
const [loadingHandles, setLoadingHandles] = useState(true);
|
|
14
16
|
const [handles, setHandles] = useState<
|
|
15
17
|
TAssetAmountMap<THandleMetadata<AssetMetadata>>
|
|
16
|
-
>(new
|
|
18
|
+
>(new WalletAssetMap());
|
|
17
19
|
const memoizedHandleDep = useMemo(
|
|
18
20
|
() => [...state.balance.getHandles().keys()],
|
|
19
21
|
[state.balance]
|
|
@@ -24,10 +26,9 @@ export const useWalletHandles = <
|
|
|
24
26
|
>(async () => {
|
|
25
27
|
// Make a copy of our wallet map.
|
|
26
28
|
const walletHandles: TAssetAmountMap<THandleMetadata<AssetMetadata>> =
|
|
27
|
-
new
|
|
29
|
+
new WalletAssetMap([...state.balance.getHandles()]);
|
|
28
30
|
|
|
29
31
|
if (walletHandles.size === 0) {
|
|
30
|
-
setLoadingHandles(false);
|
|
31
32
|
return walletHandles;
|
|
32
33
|
}
|
|
33
34
|
|
|
@@ -53,30 +54,31 @@ export const useWalletHandles = <
|
|
|
53
54
|
const walletHandleDataArray: IHandle[] = await sdk
|
|
54
55
|
.provider()
|
|
55
56
|
.getAllDataBatch(
|
|
56
|
-
walletHandlesWithDataArray.map(([key]) => ({
|
|
57
|
+
walletHandlesWithDataArray.map(([key]) => ({
|
|
58
|
+
value: key.split(".")[1],
|
|
59
|
+
}))
|
|
57
60
|
);
|
|
58
61
|
|
|
59
62
|
walletHandlesWithDataArray.forEach(([key, asset]) => {
|
|
60
63
|
const matchingData = walletHandleDataArray.find(
|
|
61
|
-
({ hex }) => hex === key.
|
|
64
|
+
({ hex }) => hex === key.split(".")[1]
|
|
62
65
|
) as IHandle;
|
|
63
66
|
|
|
64
67
|
walletHandles.set(
|
|
65
|
-
key,
|
|
68
|
+
normalizeAssetIdWithDot(key),
|
|
66
69
|
asset
|
|
67
70
|
.withMetadata({
|
|
68
71
|
...matchingData,
|
|
69
72
|
...asset.metadata,
|
|
73
|
+
assetId: normalizeAssetIdWithDot(asset.metadata.assetId),
|
|
70
74
|
decimals: 0,
|
|
71
75
|
})
|
|
72
76
|
.withAmount(1n)
|
|
73
77
|
);
|
|
74
78
|
});
|
|
75
79
|
|
|
76
|
-
setLoadingHandles(false);
|
|
77
80
|
return walletHandles;
|
|
78
81
|
} catch (e) {
|
|
79
|
-
setLoadingHandles(false);
|
|
80
82
|
console.log(e);
|
|
81
83
|
return walletHandles;
|
|
82
84
|
}
|
|
@@ -84,31 +86,33 @@ export const useWalletHandles = <
|
|
|
84
86
|
}, [state.balance, setLoadingHandles]);
|
|
85
87
|
|
|
86
88
|
useEffect(() => {
|
|
87
|
-
syncHandles()
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
89
|
+
syncHandles()
|
|
90
|
+
.then((newHandles) => {
|
|
91
|
+
setHandles((prevHandles) => {
|
|
92
|
+
let handleMetadataChanged = false;
|
|
93
|
+
|
|
94
|
+
if (newHandles.size !== prevHandles?.size) {
|
|
95
|
+
handleMetadataChanged = true;
|
|
96
|
+
} else {
|
|
97
|
+
for (const [key, val] of newHandles) {
|
|
98
|
+
if (
|
|
99
|
+
!prevHandles.has(key) ||
|
|
100
|
+
prevHandles.get(key)?.amount !== val?.amount
|
|
101
|
+
) {
|
|
102
|
+
handleMetadataChanged = true;
|
|
103
|
+
}
|
|
100
104
|
}
|
|
101
105
|
}
|
|
102
|
-
}
|
|
103
106
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
+
if (!handleMetadataChanged) {
|
|
108
|
+
return prevHandles;
|
|
109
|
+
}
|
|
107
110
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
111
|
+
return newHandles;
|
|
112
|
+
});
|
|
113
|
+
})
|
|
114
|
+
.then(() => setLoadingHandles((prevValue) => !prevValue));
|
|
115
|
+
}, [memoizedHandleDep, syncHandles, setHandles, setLoadingHandles]);
|
|
112
116
|
|
|
113
117
|
const data = useMemo(
|
|
114
118
|
() => ({
|
|
@@ -118,5 +122,7 @@ export const useWalletHandles = <
|
|
|
118
122
|
[handles, loadingHandles]
|
|
119
123
|
);
|
|
120
124
|
|
|
125
|
+
console.log(handles, loadingHandles);
|
|
126
|
+
|
|
121
127
|
return data;
|
|
122
128
|
};
|