From bacfcf955be389f09233dd7a18a53afc1822c15c Mon Sep 17 00:00:00 2001 From: DIYgod Date: Wed, 1 Nov 2023 17:38:02 +0800 Subject: [PATCH] feat: fetch metadata content --- src/lib/expand-unit.ts | 14 +++++++++++++- src/models/site.model.ts | 4 ++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/lib/expand-unit.ts b/src/lib/expand-unit.ts index d219a1ca6b..1c8b5c40ea 100644 --- a/src/lib/expand-unit.ts +++ b/src/lib/expand-unit.ts @@ -30,6 +30,12 @@ export const expandCrossbellNote = async ({ useHTML?: boolean disableAutofill?: boolean }) => { + if (note.metadata?.uri && !note.metadata?.content) { + note.metadata.content = await ( + await fetch(toGateway(note.metadata.uri)) + ).json() + } + const expandedNote: ExpandedNote = Object.assign( { metadata: { @@ -169,7 +175,13 @@ export const expandCrossbellNote = async ({ return expandedNote } -export const expandCrossbellCharacter = (site: CharacterEntity) => { +export const expandCrossbellCharacter = async (site: CharacterEntity) => { + if (site.metadata?.uri && !site.metadata?.content) { + site.metadata.content = await ( + await fetch(toGateway(site.metadata.uri)) + ).json() + } + const expandedCharacter: ExpandedCharacter = Object.assign( { metadata: { diff --git a/src/models/site.model.ts b/src/models/site.model.ts index 5b59d32260..cd63650dc3 100644 --- a/src/models/site.model.ts +++ b/src/models/site.model.ts @@ -13,7 +13,7 @@ type Contract = ReturnType export const getSite = async (input: string) => { const result = await indexer.character.getByHandle(input) if (result) { - return expandCrossbellCharacter(result) + return await expandCrossbellCharacter(result) } } @@ -23,7 +23,7 @@ export const getSiteByAddress = async (input: string) => { }) if (result?.list?.[0]) { - return expandCrossbellCharacter(result.list[0]) + return await expandCrossbellCharacter(result.list[0]) } }