query error markers

This commit is contained in:
Jan Prochazka
2022-09-25 19:45:47 +02:00
parent 2f820d8dac
commit 1a7f06342f
9 changed files with 102 additions and 36 deletions

View File

@@ -13,8 +13,11 @@
export let eventName;
export let executeNumber;
export let showNoMessagesAlert = false;
export let startLine = 0;
export let onChangeErrors = null;
const cachedMessagesRef = createRef([]);
const lastErrorMessageCountRef = createRef(0);
let displayedMessages = [];
@@ -44,11 +47,26 @@
}
}
$: {
if (onChangeErrors) {
const errors = displayedMessages.filter(x => x.severity == 'error');
if (lastErrorMessageCountRef.get() != errors.length) {
onChangeErrors(
errors.map(err => ({
...err,
line: err.line == null ? null : err.line + startLine,
}))
);
lastErrorMessageCountRef.set(errors.length);
}
}
}
$: $effect;
</script>
{#if showNoMessagesAlert && (!displayedMessages || displayedMessages.length == 0)}
<ErrorInfo message="No messages" icon="img alert" />
{:else}
<MessageView items={displayedMessages} on:messageclick {showProcedure} {showLine} />
<MessageView items={displayedMessages} on:messageclick {showProcedure} {showLine} {startLine} />
{/if}