fix: race condition closing error feedback to early when next should appear
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
// Feedback elements cache
|
// Feedback elements cache
|
||||||
let feedbackElement = null;
|
let feedbackElement = null;
|
||||||
|
let feedbackTimeout = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Render the module list in the sidebar
|
* Render the module list in the sidebar
|
||||||
@@ -105,12 +106,7 @@ export function showFeedback(isSuccess, message) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!isSuccess) {
|
if (!isSuccess) {
|
||||||
setTimeout(() => {
|
feedbackTimeout = setTimeout(clearFeedback, 3_000);
|
||||||
if (feedbackElement && feedbackElement.parentNode) {
|
|
||||||
feedbackElement.parentNode.removeChild(feedbackElement);
|
|
||||||
}
|
|
||||||
feedbackElement = null;
|
|
||||||
}, 5_000); // Remove feedback after 3 seconds
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -118,6 +114,10 @@ export function showFeedback(isSuccess, message) {
|
|||||||
* Clear any existing feedback
|
* Clear any existing feedback
|
||||||
*/
|
*/
|
||||||
export function clearFeedback() {
|
export function clearFeedback() {
|
||||||
|
if (feedbackTimeout) {
|
||||||
|
clearInterval(feedbackTimeout);
|
||||||
|
}
|
||||||
|
|
||||||
if (feedbackElement && feedbackElement.parentNode) {
|
if (feedbackElement && feedbackElement.parentNode) {
|
||||||
feedbackElement.parentNode.removeChild(feedbackElement);
|
feedbackElement.parentNode.removeChild(feedbackElement);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user