From 83d2b69bbcece37580d7902a5dd10ef8faf60110 Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Fri, 8 Sep 2023 16:46:10 -0700 Subject: [PATCH 01/20] fix(ui): use console.error instead of toast for 2 passive errors --- ui/src/components/AgentProfileDetail.vue | 2 +- ui/src/components/ButtonFollow.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/src/components/AgentProfileDetail.vue b/ui/src/components/AgentProfileDetail.vue index 620a84d6..a92558cb 100644 --- a/ui/src/components/AgentProfileDetail.vue +++ b/ui/src/components/AgentProfileDetail.vue @@ -60,7 +60,7 @@ const { queryFn: fetchProfileWithContext, refetchOnMount: true, }); -watch(errorProfile, showError); +watch(errorProfile, console.error); watch(props, () => { refetch(); }); diff --git a/ui/src/components/ButtonFollow.vue b/ui/src/components/ButtonFollow.vue index 7f7f86aa..56ddae78 100644 --- a/ui/src/components/ButtonFollow.vue +++ b/ui/src/components/ButtonFollow.vue @@ -77,7 +77,7 @@ const { ], queryFn: fetchMyFollowing, }); -watch(errorMyFollowing, showError); +watch(errorMyFollowing, console.error); watch(props, () => { refetchMyFollowing(); }); From c4cc6727a4cfe3089ff5f88b15ce1b8d05255edc Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Fri, 8 Sep 2023 16:47:17 -0700 Subject: [PATCH 02/20] fix(ui): follow users without profile data --- ui/src/components/BaseAgentProfile.vue | 1 - ui/src/components/ButtonFollow.vue | 54 +++++++++++++++----------- 2 files changed, 31 insertions(+), 24 deletions(-) diff --git a/ui/src/components/BaseAgentProfile.vue b/ui/src/components/BaseAgentProfile.vue index 81b90a2e..82bcade3 100644 --- a/ui/src/components/BaseAgentProfile.vue +++ b/ui/src/components/BaseAgentProfile.vue @@ -1,7 +1,6 @@ diff --git a/ui/src/components/CreatorsListDialog.vue b/ui/src/components/CreatorsListDialog.vue index 8324735e..96640c44 100644 --- a/ui/src/components/CreatorsListDialog.vue +++ b/ui/src/components/CreatorsListDialog.vue @@ -79,12 +79,16 @@ const fetchCreators = async (params: any) => { const agentProfiles = await Promise.all( agents.map(async (agentPubKey) => { - const profile = await profilesStore.client.getAgentProfile(agentPubKey); - if (!profile) return null; + let profile; + try { + profile = await profilesStore.client.getAgentProfile(agentPubKey); + } catch (error) { + console.error(error); + } return { agentPubKey, - profile: profile, + profile, }; }) ); diff --git a/ui/src/components/FollowersListDialog.vue b/ui/src/components/FollowersListDialog.vue index e42e38ea..228b89d6 100644 --- a/ui/src/components/FollowersListDialog.vue +++ b/ui/src/components/FollowersListDialog.vue @@ -79,12 +79,16 @@ const fetchCreators = async (params: any) => { const agentProfiles = await Promise.all( agents.map(async (agentPubKey) => { - const profile = await profilesStore.client.getAgentProfile(agentPubKey); - if (!profile) return null; + let profile; + try { + profile = await profilesStore.client.getAgentProfile(agentPubKey); + } catch (error) { + console.error(error); + } return { agentPubKey, - profile: profile, + profile, }; }) ); From 23f05c13e6492e6e4c20823680c64393197f2406 Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Fri, 8 Sep 2023 16:53:12 -0700 Subject: [PATCH 05/20] fix(ui): split agent profile & joined timestamp fetching in AgentProfileDetail and still render if either missing --- ui/src/components/AgentProfileDetail.vue | 61 +++++++++++++------- ui/src/components/BaseAgentProfileDetail.vue | 51 +++++++++++----- 2 files changed, 75 insertions(+), 37 deletions(-) diff --git a/ui/src/components/AgentProfileDetail.vue b/ui/src/components/AgentProfileDetail.vue index a92558cb..3a7fbbb8 100644 --- a/ui/src/components/AgentProfileDetail.vue +++ b/ui/src/components/AgentProfileDetail.vue @@ -1,21 +1,20 @@ diff --git a/ui/src/components/BaseAgentProfileDetail.vue b/ui/src/components/BaseAgentProfileDetail.vue index 7f9d1d5c..8a39cec0 100644 --- a/ui/src/components/BaseAgentProfileDetail.vue +++ b/ui/src/components/BaseAgentProfileDetail.vue @@ -1,6 +1,5 @@ diff --git a/ui/src/pages/DiscoverCreators.vue b/ui/src/pages/DiscoverCreators.vue index 0b22572f..2605366f 100644 --- a/ui/src/pages/DiscoverCreators.vue +++ b/ui/src/pages/DiscoverCreators.vue @@ -38,93 +38,9 @@ - - - - - - - - - - - - - - - + + + @@ -219,199 +135,27 @@ onMounted(async () => { await refetchMews(); } if (randomTags.value === undefined || randomTags.value.length === 0) { - refetchTags(); + refetchRandomTags(); } }); -const fetchRandomMewHashesWithTag = (tag: string): Promise => - client.callZome({ - role_name: "mewsfeed", - zome_name: "mews", - fn_name: "get_random_mew_hashes_for_tag", - payload: { - tag: tag, - count: 3, - }, - }); - -const tag1Enabled = computed( - () => - randomTags.value !== undefined && - randomTags.value.length > 0 && - randomTags.value[0] !== undefined -); -const tag2Enabled = computed( - () => - randomTags.value !== undefined && - randomTags.value.length > 1 && - randomTags.value[1] !== undefined -); -const tag3Enabled = computed( - () => - randomTags.value !== undefined && - randomTags.value.length > 2 && - randomTags.value[2] !== undefined -); - -// Random Mews with Tag 1 - -const { - data: randomMewHashesWithTag1, - error: errorRandomMewHashesWithTag1, - isLoading: isLoadingRandomMewHashesWithTag1, - refetch: refetchRandomMewHashesWithTag1, -} = useQuery({ - queryKey: ["mews", "get_random_mew_hashes_for_tag", randomTags.value[0]], - enabled: tag1Enabled, - queryFn: () => fetchRandomMewHashesWithTag(randomTags.value[0]), - refetchOnWindowFocus: false, - refetchOnMount: false, - refetchOnReconnect: false, -}); -watch(errorRandomMewHashesWithTag1, console.error); -const hasRandomMewHashesWithTag1 = computed( - () => - tag1Enabled.value && - randomMewHashesWithTag1.value && - randomMewHashesWithTag1.value.length > 0 +const tag1 = computed(() => + randomTags.value ? randomTags.value[0] : undefined ); - -const { - data: randomMewsWithTag1, - error: errorRandomMewsWithTag1, - isFetching: isFetchingRandomMewsWithTag1, - refetch: refetchRandomMewsWithTag1, -} = useQuery({ - queryKey: [ - "mews", - "get_random_mew_hashes_for_tag", - randomTags.value[0], - "get_batch_mews_with_context", - ], - - queryFn: () => - fetchMewsWithContext(toRaw(randomMewHashesWithTag1.value as ActionHash[])), - enabled: hasRandomMewHashesWithTag1, - refetchOnWindowFocus: false, - refetchOnMount: false, - refetchOnReconnect: false, -}); -watch(errorRandomMewsWithTag1, console.error); - -// Random Mews with Tag 2 - -const { - data: randomMewHashesWithTag2, - error: errorRandomMewHashesWithTag2, - isLoading: isLoadingRandomMewHashesWithTag2, - refetch: refetchRandomMewHashesWithTag2, -} = useQuery({ - queryKey: ["mews", "get_random_mew_hashes_for_tag", randomTags.value[1]], - enabled: tag2Enabled, - queryFn: () => fetchRandomMewHashesWithTag(randomTags.value[1]), - refetchOnWindowFocus: false, - refetchOnMount: false, - refetchOnReconnect: false, -}); -watch(errorRandomMewHashesWithTag2, console.error); -const hasRandomMewHashesWithTag2 = computed( - () => - tag2Enabled.value && - randomMewHashesWithTag2.value && - randomMewHashesWithTag2.value.length > 0 +const tag2 = computed(() => + randomTags.value ? randomTags.value[1] : undefined ); - -const { - data: randomMewsWithTag2, - error: errorRandomMewsWithTag2, - isFetching: isFetchingRandomMewsWithTag2, - refetch: refetchRandomMewsWithTag2, -} = useQuery({ - queryKey: [ - "mews", - "get_random_mew_hashes_for_tag", - randomTags.value[1], - "get_batch_mews_with_context", - ], - - queryFn: () => - fetchMewsWithContext(toRaw(randomMewHashesWithTag2.value as ActionHash[])), - enabled: hasRandomMewHashesWithTag2, - refetchOnWindowFocus: false, - refetchOnMount: false, - refetchOnReconnect: false, -}); -watch(errorRandomMewsWithTag2, console.error); - -// Random Mews with Tag 3 - -const { - data: randomMewHashesWithTag3, - error: errorRandomMewHashesWithTag3, - isLoading: isLoadingRandomMewHashesWithTag3, - refetch: refetchRandomMewHashesWithTag3, -} = useQuery({ - queryKey: ["mews", "get_random_mew_hashes_for_tag", randomTags.value[2]], - enabled: tag1Enabled, - queryFn: () => fetchRandomMewHashesWithTag(randomTags.value[2]), - refetchOnWindowFocus: false, - refetchOnMount: false, - refetchOnReconnect: false, -}); -watch(errorRandomMewHashesWithTag3, console.error); -const hasRandomMewHashesWithTag3 = computed( - () => - tag3Enabled.value && - randomMewHashesWithTag3.value && - randomMewHashesWithTag3.value.length > 0 +const tag3 = computed(() => + randomTags.value ? randomTags.value[2] : undefined ); -const { - data: randomMewsWithTag3, - error: errorRandomMewsWithTag3, - isFetching: isFetchingRandomMewsWithTag3, - refetch: refetchRandomMewsWithTag3, -} = useQuery({ - queryKey: [ - "mews", - "get_random_mew_hashes_for_tag", - randomTags.value[2], - "get_batch_mews_with_context", - ], - - queryFn: () => - fetchMewsWithContext(toRaw(randomMewHashesWithTag3.value as ActionHash[])), - enabled: hasRandomMewHashesWithTag3, - refetchOnWindowFocus: false, - refetchOnMount: false, - refetchOnReconnect: false, -}); -watch(errorRandomMewsWithTag3, console.error); - const shuffle = async () => { await refetchMews(); - await refetchTags(); + await refetchRandomTags(); }; const refetchMews = async () => { await refetchRandomMewHashes(); refetchRandomMews(); }; - -const refetchTags = async () => { - await refetchRandomTags(); - - if (tag1Enabled.value) { - await refetchRandomMewHashesWithTag1(); - refetchRandomMewsWithTag1(); - } - if (tag2Enabled.value) { - await refetchRandomMewHashesWithTag2(); - refetchRandomMewsWithTag2(); - } - if (tag3Enabled.value) { - await refetchRandomMewHashesWithTag3(); - refetchRandomMewsWithTag3(); - } -}; From f8f384c796b42c9c13a50f7cd70343fdaf14e3e2 Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Sat, 9 Sep 2023 13:24:40 -0700 Subject: [PATCH 11/20] fix(ui): wrap props in computed before using in tanstack queryKey to ensure reactive updating --- ui/src/components/RandomMewWithTagList.vue | 6 +-- ui/src/pages/AgentProfile.vue | 50 ++++++++-------------- ui/src/pages/MewYarn.vue | 9 ++-- ui/src/pages/MewsListAuthor.vue | 7 +-- ui/src/pages/MewsListCashtag.vue | 18 +++----- ui/src/pages/MewsListHashtag.vue | 17 +++----- ui/src/pages/MewsListMention.vue | 15 ++----- 7 files changed, 41 insertions(+), 81 deletions(-) diff --git a/ui/src/components/RandomMewWithTagList.vue b/ui/src/components/RandomMewWithTagList.vue index 7b80d776..e239d74e 100644 --- a/ui/src/components/RandomMewWithTagList.vue +++ b/ui/src/components/RandomMewWithTagList.vue @@ -40,9 +40,8 @@ const props = defineProps<{ const tagRef = computed(() => props.tag); -const fetchRandomMewHashesWithTag = (): Promise => { - console.log("fetchRandomMewHashesWithTag", props.tag); - return client.callZome({ +const fetchRandomMewHashesWithTag = (): Promise => + client.callZome({ role_name: "mewsfeed", zome_name: "mews", fn_name: "get_random_mew_hashes_for_tag", @@ -51,7 +50,6 @@ const fetchRandomMewHashesWithTag = (): Promise => { count: 3, }, }); -}; const { data: randomMewHashesWithTag, diff --git a/ui/src/pages/AgentProfile.vue b/ui/src/pages/AgentProfile.vue index bf576856..69e96bf2 100644 --- a/ui/src/pages/AgentProfile.vue +++ b/ui/src/pages/AgentProfile.vue @@ -123,11 +123,11 @@ @@ -162,7 +162,7 @@ const agentPubKey = computed(() => const showEditProfileDialog = ref(false); const showFollowersListDialog = ref(false); const showCreatorsListDialog = ref(false); - +const agentPubKeyRef = computed(() => route.params.agentPubKey); const pageLimit = 5; const fetchAuthoredMews = () => @@ -184,11 +184,7 @@ const { error: errorAuthoredMews, refetch: refetchAuthoredMews, } = useQuery({ - queryKey: [ - "profiles", - "get_agent_mews_with_context", - route.params.agentPubKey, - ], + queryKey: ["profiles", "get_agent_mews_with_context", agentPubKeyRef], queryFn: fetchAuthoredMews, }); watch(errorAuthoredMews, console.error); @@ -207,11 +203,7 @@ const { error: errorPinnedMews, refetch: refetchPinnedMews, } = useQuery({ - queryKey: [ - "profiles", - "get_mews_for_pinner_with_context", - route.params.agentPubKey, - ], + queryKey: ["profiles", "get_mews_for_pinner_with_context", agentPubKeyRef], queryFn: fetchPinnedMews, }); watch(errorPinnedMews, console.error); @@ -241,7 +233,7 @@ const { error: errorProfile, refetch: refetchProfile, } = useQuery({ - queryKey: ["profiles", "getAgentProfile", route.params.agentPubKey], + queryKey: ["profiles", "getAgentProfile", agentPubKeyRef], queryFn: fetchProfileWithContext, }); watch(errorProfile, console.error); @@ -252,7 +244,7 @@ const fetchFollowers = async () => { zome_name: "follows", fn_name: "get_followers_for_creator", payload: { - creator: decodeHashFromBase64(route.params.agentPubKey as string), + creator: agentPubKey.value, page: { limit: pageLimit, }, @@ -260,12 +252,12 @@ const fetchFollowers = async () => { }); const agentProfiles = await Promise.all( - agents.map(async (agentPubKey) => { - const profile = await profilesStore.client.getAgentProfile(agentPubKey); + agents.map(async (key) => { + const profile = await profilesStore.client.getAgentProfile(key); if (!profile) return null; return { - agentPubKey, + agentPubKey: key, profile: profile, }; }) @@ -275,7 +267,7 @@ const fetchFollowers = async () => { }; const { data: followers, error: errorFollowers } = useQuery({ - queryKey: ["follows", "get_followers_for_creator", route.params.agentPubKey], + queryKey: ["follows", "get_followers_for_creator", agentPubKeyRef], queryFn: fetchFollowers, }); watch(errorFollowers, console.error); @@ -286,7 +278,7 @@ const fetchCreators = async () => { zome_name: "follows", fn_name: "get_creators_for_follower", payload: { - follower: decodeHashFromBase64(route.params.agentPubKey as string), + follower: agentPubKey.value, page: { limit: pageLimit, }, @@ -309,7 +301,7 @@ const fetchCreators = async () => { }; const { data: creators, error: errorCreators } = useQuery({ - queryKey: ["follows", "get_creators_for_follower", route.params.agentPubKey], + queryKey: ["follows", "get_creators_for_follower", agentPubKeyRef], queryFn: fetchCreators, }); watch(errorCreators, console.error); @@ -319,15 +311,11 @@ const fetchCreatorsCount = async (): Promise => role_name: "mewsfeed", zome_name: "follows", fn_name: "count_creators_for_follower", - payload: decodeHashFromBase64(route.params.agentPubKey as string), + payload: agentPubKey.value, }); const { data: creatorsCount, error: errorCreatorsCount } = useQuery({ - queryKey: [ - "follows", - "count_creators_for_follower", - route.params.agentPubKey, - ], + queryKey: ["follows", "count_creators_for_follower", agentPubKeyRef], queryFn: fetchCreatorsCount, }); watch(errorCreatorsCount, console.error); @@ -337,7 +325,7 @@ const fetchFollowersCount = async (): Promise => role_name: "mewsfeed", zome_name: "follows", fn_name: "count_followers_for_creator", - payload: decodeHashFromBase64(route.params.agentPubKey as string), + payload: agentPubKey.value, }); const { @@ -345,11 +333,7 @@ const { error: errorFollowersCount, refetch: refetchFollowersCount, } = useQuery({ - queryKey: [ - "follows", - "count_followers_for_creator", - route.params.agentPubKey, - ], + queryKey: ["follows", "count_followers_for_creator", agentPubKeyRef], queryFn: fetchFollowersCount, }); watch(errorFollowersCount, console.error); diff --git a/ui/src/pages/MewYarn.vue b/ui/src/pages/MewYarn.vue index d407de0f..3847c959 100644 --- a/ui/src/pages/MewYarn.vue +++ b/ui/src/pages/MewYarn.vue @@ -80,6 +80,7 @@ const pageLimit = 10; const actionHash = computed(() => decodeHashFromBase64(route.params.actionHash as string) ); +const actionHashB64 = computed(() => route.params.actionHash); const hasActionHash = computed(() => actionHash.value !== undefined); const fetchMew = () => @@ -96,7 +97,7 @@ const { isInitialLoading: isInitialLoadingMew, refetch: refetchMew, } = useQuery({ - queryKey: ["mews", "get_mew_with_context", route.params.actionHash], + queryKey: ["mews", "get_mew_with_context", actionHashB64], queryFn: fetchMew, enabled: hasActionHash, refetchInterval: 1000 * 60 * 2, // 2 minutes @@ -128,11 +129,7 @@ const { isInitialLoading: isInitialLoadingReplies, refetch: refetchReplies, } = useInfiniteQuery({ - queryKey: [ - "mews", - "get_responses_for_mew_with_context", - route.params.actionHash, - ], + queryKey: ["mews", "get_responses_for_mew_with_context", actionHashB64], queryFn: fetchReplies, enabled: hasMew, getNextPageParam: (lastPage) => { diff --git a/ui/src/pages/MewsListAuthor.vue b/ui/src/pages/MewsListAuthor.vue index 9cc11872..7964fee4 100644 --- a/ui/src/pages/MewsListAuthor.vue +++ b/ui/src/pages/MewsListAuthor.vue @@ -62,7 +62,7 @@ diff --git a/ui/src/components/FollowersListDialog.vue b/ui/src/components/FollowersListDialog.vue index a640b11a..70f48cc7 100644 --- a/ui/src/components/FollowersListDialog.vue +++ b/ui/src/components/FollowersListDialog.vue @@ -98,7 +98,7 @@ const fetchFollowers = async (params: any) => { return agentProfiles.filter(Boolean) as AgentProfile[]; }; -const { data, error, fetchNextPage, hasNextPage, isInitialLoading } = +const { data, error, fetchNextPage, hasNextPage, isInitialLoading, refetch } = useInfiniteQuery({ queryKey: ["mews", "get_followers_for_creator", agentPubKeyB64], queryFn: fetchFollowers, @@ -136,4 +136,10 @@ onBeforeRouteLeave(() => { ); } }); + +watch(props, (newProps) => { + if (newProps.modelValue) { + refetch(); + } +}); From 1fb4345fa674b2720df0c7f15b23c96fad9bdebf Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Mon, 11 Sep 2023 16:10:20 -0700 Subject: [PATCH 17/20] fix(ui): spacing between followed you --- ui/src/components/BaseNotification.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/components/BaseNotification.vue b/ui/src/components/BaseNotification.vue index c2b29147..8718fdb1 100644 --- a/ui/src/components/BaseNotification.vue +++ b/ui/src/components/BaseNotification.vue @@ -24,7 +24,7 @@ " class="flex justify-between items-center py-2 w-full space-x-2" > -
+
Date: Mon, 11 Sep 2023 16:10:55 -0700 Subject: [PATCH 18/20] fix(ui): do not abbreviate agentpubkey when used as primary displayed agent name in lists & detail --- ui/src/components/BaseAgentProfileListItem.vue | 4 ++-- ui/src/components/BaseAgentProfileNameLarge.vue | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ui/src/components/BaseAgentProfileListItem.vue b/ui/src/components/BaseAgentProfileListItem.vue index 2a417ade..09225d44 100644 --- a/ui/src/components/BaseAgentProfileListItem.vue +++ b/ui/src/components/BaseAgentProfileListItem.vue @@ -5,7 +5,7 @@ :size="50" :enable-popup="enablePopup" /> - import BaseAgentProfileLinkAvatar from "@/components/BaseAgentProfileLinkAvatar.vue"; -import BaseAgentProfileName from "@/components/BaseAgentProfileName.vue"; +import BaseAgentProfileNameLarge from "@/components/BaseAgentProfileNameLarge.vue"; import { AgentPubKey } from "@holochain/client"; import { Profile } from "@holochain-open-dev/profiles"; diff --git a/ui/src/components/BaseAgentProfileNameLarge.vue b/ui/src/components/BaseAgentProfileNameLarge.vue index 94e69c1a..1151360f 100644 --- a/ui/src/components/BaseAgentProfileNameLarge.vue +++ b/ui/src/components/BaseAgentProfileNameLarge.vue @@ -10,7 +10,7 @@
@{{ profile.nickname }}
- {{ encodeHashToBase64(agentPubKey).slice(0, 8) }} + {{ encodeHashToBase64(agentPubKey) }}
From cb534ade858f655b9e220ffae90fb0fb27c9d9c8 Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Mon, 11 Sep 2023 16:13:38 -0700 Subject: [PATCH 19/20] chore(ui): remove unnecessary filters --- ui/src/components/CreatorsListDialog.vue | 2 +- ui/src/components/FollowersListDialog.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/src/components/CreatorsListDialog.vue b/ui/src/components/CreatorsListDialog.vue index 4b4f7249..d0c62db1 100644 --- a/ui/src/components/CreatorsListDialog.vue +++ b/ui/src/components/CreatorsListDialog.vue @@ -95,7 +95,7 @@ const fetchCreators = async (params: any) => { }) ); - return agentProfiles.filter(Boolean) as AgentProfile[]; + return agentProfiles; }; const { data, error, fetchNextPage, hasNextPage, isInitialLoading, refetch } = diff --git a/ui/src/components/FollowersListDialog.vue b/ui/src/components/FollowersListDialog.vue index 70f48cc7..94fc2134 100644 --- a/ui/src/components/FollowersListDialog.vue +++ b/ui/src/components/FollowersListDialog.vue @@ -95,7 +95,7 @@ const fetchFollowers = async (params: any) => { }) ); - return agentProfiles.filter(Boolean) as AgentProfile[]; + return agentProfiles; }; const { data, error, fetchNextPage, hasNextPage, isInitialLoading, refetch } = From fb5a49aadde8a5bf601c9b7f84bee93cd35978a7 Mon Sep 17 00:00:00 2001 From: Matt Gabrenya Date: Mon, 11 Sep 2023 16:14:34 -0700 Subject: [PATCH 20/20] chore(ui): fix ts lint --- ui/src/components/CreatorsListDialog.vue | 2 +- ui/src/components/FollowersListDialog.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/src/components/CreatorsListDialog.vue b/ui/src/components/CreatorsListDialog.vue index d0c62db1..cf97f390 100644 --- a/ui/src/components/CreatorsListDialog.vue +++ b/ui/src/components/CreatorsListDialog.vue @@ -91,7 +91,7 @@ const fetchCreators = async (params: any) => { return { agentPubKey, profile, - }; + } as AgentProfile; }) ); diff --git a/ui/src/components/FollowersListDialog.vue b/ui/src/components/FollowersListDialog.vue index 94fc2134..294d136c 100644 --- a/ui/src/components/FollowersListDialog.vue +++ b/ui/src/components/FollowersListDialog.vue @@ -91,7 +91,7 @@ const fetchFollowers = async (params: any) => { return { agentPubKey, profile, - }; + } as AgentProfile; }) );