feat: bluesky finisher

This commit is contained in:
Nevo David 2025-06-04 21:36:39 +07:00
parent a9e42ce31d
commit 1c8cc487ac
3 changed files with 44 additions and 4 deletions

View File

@ -1,6 +1,12 @@
import { withProvider } from '@gitroom/frontend/components/launches/providers/high.order.provider';
import { ThreadFinisher } from '@gitroom/frontend/components/launches/finisher/thread.finisher';
const SettingsComponent = () => {
return <ThreadFinisher />;
};
export default withProvider(
null,
SettingsComponent,
undefined,
undefined,
async (posts) => {

View File

@ -135,6 +135,7 @@ export class BlueskyProvider extends SocialAbstract implements SocialProvider {
username: profile.data.handle!,
};
} catch (e) {
console.log(e);
return 'Invalid credentials';
}
}
@ -221,6 +222,41 @@ export class BlueskyProvider extends SocialAbstract implements SocialProvider {
cidUrl.push({ cid, url: uri, rev: commit.rev });
}
if (postDetails?.[0]?.settings?.active_thread_finisher) {
const rt = new RichText({
text: postDetails?.[0]?.settings?.thread_finisher,
});
await rt.detectFacets(agent);
await agent.post({
text: postDetails?.[0]?.settings?.thread_finisher,
facets: rt.facets,
createdAt: new Date().toISOString(),
embed: {
$type: 'app.bsky.embed.record',
record: {
uri: cidUrl[0].url,
cid: cidUrl[0].cid,
},
},
...(loadCid
? {
reply: {
root: {
uri: loadUri,
cid: loadCid,
},
parent: {
uri: loadUri,
cid: loadCid,
},
},
}
: {}),
});
}
return postDetails.map((p, index) => ({
id: p.id,
postId: cidUrl[index].url,

View File

@ -411,9 +411,7 @@ export class ThreadsProvider extends SocialAbstract implements SocialProvider {
id: makeId(10),
media: [],
message:
postDetails?.[0]?.settings?.thread_finisher! +
'\n' +
responses[0].releaseURL,
postDetails?.[0]?.settings?.thread_finisher,
settings: {},
},
lastReplyId,