frontend client for gemstone. decentralised workplace app

refactor: rework avatar component

serenity 1f85b79f d0b43082

Changed files
+7 -7
src
+2 -2
src/components/Avatar.tsx
···
-
import type { DidPlc } from "@/lib/types/atproto";
+
import type { Did } from "@/lib/types/atproto";
import { getBskyProfile } from "@/queries/get-profile";
import { useQuery } from "@tanstack/react-query";
import React from "react";
import { Image, View, Text, StyleSheet } from "react-native";
-
export const Avatar = React.memo(({ did }: { did: DidPlc }) => {
+
export const Avatar = React.memo(({ did }: { did: Did }) => {
const {
data: profile,
isPending,
+3 -3
src/components/Message.tsx
···
export const Message = ({ message }: { message: ShardMessage }) => {
return (
<View style={styles.messageItemContainer}>
-
<Avatar did={message.did} />
+
<Avatar did={message.sentBy} />
<View style={styles.messageItem}>
-
<Text style={styles.messageText}>{message.text}</Text>
+
<Text style={styles.messageText}>{message.content}</Text>
<Text style={styles.timestamp}>
-
{new Date(message.timestamp).toLocaleTimeString()}
+
{new Date(message.sentAt).toLocaleTimeString()}
</Text>
</View>
</View>
+2 -2
src/queries/get-profile.ts
···
-
import type { DidPlc, DidWeb } from "@/lib/types/atproto";
+
import type { Did, DidPlc, DidWeb } from "@/lib/types/atproto";
import { bskyClient } from "@/lib/utils/atproto/client";
-
export const getBskyProfile = async (did: DidPlc | DidWeb) => {
+
export const getBskyProfile = async (did: Did) => {
const { ok, data } = await bskyClient.get("app.bsky.actor.getProfile", {
params: {
actor: did,