Skip to content

Commit 844aabe

Browse files
author
Melisa Anabella Rossi
authored
fix: do not fetch with extended urns (#104)
1 parent 85b3326 commit 844aabe

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

src/lib/config.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,15 @@ import {
3636
import { computeZoom, getZoom } from './zoom'
3737

3838
const DEFAULT_PROFILE = 'default'
39+
const QUANTITY_OF_PARTS_ON_SHORTENED_ITEMS_URN = 6
40+
41+
function getTokenIdAndAssetUrn(completeUrn: string): { assetUrn: string; tokenId: string | undefined } {
42+
const lastIndex = completeUrn.lastIndexOf(':')
43+
44+
return lastIndex !== -1 && completeUrn.split(':').length > QUANTITY_OF_PARTS_ON_SHORTENED_ITEMS_URN
45+
? { assetUrn: completeUrn.substring(0, lastIndex), tokenId: completeUrn.substring(lastIndex + 1) }
46+
: { assetUrn: completeUrn, tokenId: undefined }
47+
}
3948

4049
async function fetchItem(urn: string, peerUrl: string) {
4150
const [wearables, emotes] = await fetchURNs([urn], peerUrl)
@@ -86,7 +95,10 @@ async function fetchURNs(urns: string[], peerUrl: string): Promise<[WearableDefi
8695
if (urns.length === 0) {
8796
return [[], []]
8897
}
89-
return peerApi.fetchItems(urns, peerUrl)
98+
99+
const sanitizedAssetUrns = urns.map((urn: string) => getTokenIdAndAssetUrn(urn).assetUrn)
100+
101+
return peerApi.fetchItems(sanitizedAssetUrns, peerUrl)
90102
}
91103

92104
async function fetchURLs(urls: string[]): Promise<[WearableDefinition[], EmoteDefinition[]]> {

0 commit comments

Comments
 (0)