view who was fronting when a record was made

feat: show fronters on replied to

ptr.pet c2488655 7073cc29

verified
Changed files
+27
src
+5
src/entrypoints/background.ts
···
},
...fronter,
};
+
} else if (uri === item.post.uri) {
+
fronter = {
+
replyTo: item.reply?.parent.uri,
+
...fronter,
+
};
}
const parsedUri = await cacheFronter(uri, fronter);
return {
+21
src/entrypoints/content.ts
···
+
import { expect } from "@/lib/result";
import { FronterView, parseSocialAppPostUrl } from "@/lib/utils";
+
import { parseResourceUri } from "@atcute/lexicons";
const getAuthHeader = (headers: any): string | null => {
if (headers instanceof Headers) {
···
displayNameElement,
);
return;
+
}
+
if (fronter.type === "post" && fronter.replyTo) {
+
const parsedReplyUri = expect(parseResourceUri(fronter.replyTo));
+
const replyFronter = fronters.get(
+
`/profile/${parsedReplyUri.repo}/post/${parsedReplyUri.rkey}`,
+
);
+
if (replyFronter && replyFronter.members?.length > 0) {
+
const replyDisplayNameElement =
+
el.parentElement?.parentElement?.parentElement
+
?.firstElementChild?.nextElementSibling?.firstElementChild
+
?.nextElementSibling?.firstElementChild?.firstElementChild
+
?.firstElementChild?.firstElementChild ?? null;
+
if (replyDisplayNameElement) {
+
applyFronterName(
+
replyDisplayNameElement,
+
replyFronter.members,
+
);
+
}
+
}
}
}
}
+1
src/lib/utils.ts
···
handle: Handle | null;
did: AtprotoDid;
subject?: Subject;
+
replyTo?: ResourceUri;
};
export type FronterView = Fronter & { rkey: RecordKey } & (