feat: add challenge modal

This commit is contained in:
plebeius.eth
2024-04-26 19:13:23 +02:00
parent 3ce3f090f5
commit cc5d042889
10 changed files with 463 additions and 29 deletions
+63
View File
@@ -0,0 +1,63 @@
import { ChallengeVerification } from '@plebbit/plebbit-react-hooks';
export const alertChallengeVerificationFailed = (challengeVerification: ChallengeVerification, publication: any) => {
if (challengeVerification?.challengeSuccess === false) {
console.warn(challengeVerification, publication);
alert(`p/${publication?.subplebbitAddress} challenge error: ${[...(challengeVerification?.challengeErrors || []), challengeVerification?.reason].join(' ')}`);
} else {
console.log(challengeVerification, publication);
}
};
export const getPublicationType = (publication: any) => {
if (!publication) {
return;
}
if (typeof publication.vote === 'number') {
return 'vote';
}
if (publication.parentCid) {
return 'reply';
}
if (publication.commentCid) {
return 'edit';
}
return 'post';
};
export const getVotePreview = (publication: any) => {
if (typeof publication?.vote !== 'number') {
return '';
}
let votePreview = '';
if (publication.vote === -1) {
votePreview += ' -1';
} else {
votePreview += ` +${publication.vote}`;
}
return votePreview;
};
export const getPublicationPreview = (publication: any) => {
if (!publication) {
return '';
}
let publicationPreview = '';
if (publication.title) {
publicationPreview += publication.title;
}
if (publication.content) {
if (publicationPreview) {
publicationPreview += ': ';
}
publicationPreview += publication.content;
}
if (!publicationPreview && publication.link) {
publicationPreview += publication.link;
}
if (publicationPreview.length > 50) {
publicationPreview = publicationPreview.substring(0, 50) + '...';
}
return publicationPreview;
};