mirror of
https://github.com/PrimalHQ/primal-web-app.git
synced 2024-10-01 17:31:13 +00:00
Disable posting while posting is in progress
This commit is contained in:
parent
40a232cc1e
commit
5bf15e9ec9
@ -467,6 +467,8 @@ const EditBox: Component<{
|
|||||||
setEmojiResults(() => []);
|
setEmojiResults(() => []);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const [isPostingInProgress, setIsPostingInProgress] = createSignal(false);
|
||||||
|
|
||||||
const postNote = async () => {
|
const postNote = async () => {
|
||||||
if (!account || !account.hasPublicKey() || isUploading() || isInputting()) {
|
if (!account || !account.hasPublicKey() || isUploading() || isInputting()) {
|
||||||
return;
|
return;
|
||||||
@ -509,6 +511,8 @@ const EditBox: Component<{
|
|||||||
tags.push(['p', props.replyToNote.post.pubkey]);
|
tags.push(['p', props.replyToNote.post.pubkey]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setIsPostingInProgress(true);
|
||||||
|
|
||||||
const { success, reasons, note } = await sendNote(messageToSend, account.relays, tags, account.relaySettings);
|
const { success, reasons, note } = await sendNote(messageToSend, account.relays, tags, account.relaySettings);
|
||||||
|
|
||||||
if (success) {
|
if (success) {
|
||||||
@ -516,12 +520,11 @@ const EditBox: Component<{
|
|||||||
const importId = `import_note_${APP_ID}`;
|
const importId = `import_note_${APP_ID}`;
|
||||||
|
|
||||||
const unsub = subscribeTo(importId, (type, _, response) => {
|
const unsub = subscribeTo(importId, (type, _, response) => {
|
||||||
console.log('IMPORTED: ', type, response)
|
|
||||||
|
|
||||||
if (type === 'EOSE') {
|
if (type === 'EOSE') {
|
||||||
if (note) {
|
if (note) {
|
||||||
toast?.sendSuccess(intl.formatMessage(tToast.publishNoteSuccess));
|
toast?.sendSuccess(intl.formatMessage(tToast.publishNoteSuccess));
|
||||||
props.onSuccess && props.onSuccess({ success, reasons, note });
|
props.onSuccess && props.onSuccess({ success, reasons, note });
|
||||||
|
setIsPostingInProgress(false);
|
||||||
closeEditor();
|
closeEditor();
|
||||||
}
|
}
|
||||||
unsub();
|
unsub();
|
||||||
@ -535,18 +538,22 @@ const EditBox: Component<{
|
|||||||
|
|
||||||
if (reasons?.includes('no_extension')) {
|
if (reasons?.includes('no_extension')) {
|
||||||
toast?.sendWarning(intl.formatMessage(tToast.noExtension));
|
toast?.sendWarning(intl.formatMessage(tToast.noExtension));
|
||||||
|
setIsPostingInProgress(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (reasons?.includes('timeout')) {
|
if (reasons?.includes('timeout')) {
|
||||||
toast?.sendWarning(intl.formatMessage(tToast.publishNoteTimeout));
|
toast?.sendWarning(intl.formatMessage(tToast.publishNoteTimeout));
|
||||||
|
setIsPostingInProgress(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
toast?.sendWarning(intl.formatMessage(tToast.publishNoteFail));
|
toast?.sendWarning(intl.formatMessage(tToast.publishNoteFail));
|
||||||
|
setIsPostingInProgress(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setIsPostingInProgress(false);
|
||||||
closeEditor();
|
closeEditor();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1196,6 +1203,7 @@ const EditBox: Component<{
|
|||||||
<button
|
<button
|
||||||
class={styles.primaryButton}
|
class={styles.primaryButton}
|
||||||
onClick={postNote}
|
onClick={postNote}
|
||||||
|
disabled={isPostingInProgress()}
|
||||||
>
|
>
|
||||||
<span>
|
<span>
|
||||||
{intl.formatMessage(tActions.notePostNew)}
|
{intl.formatMessage(tActions.notePostNew)}
|
||||||
|
Loading…
Reference in New Issue
Block a user