refactor(control): implement ESLint -> remove unnecessary imports, improve general code quality

This commit is contained in:
E44
2026-06-09 22:00:36 +02:00
parent 64b8fcffe2
commit 919bba7c2e
14 changed files with 41 additions and 51 deletions
@@ -15,6 +15,7 @@
</svelte:head>
{#if !dev}
<!-- eslint-disable-next-line svelte/no-at-html-tags -->
{@html versionSplashScreen}
{/if}
+5 -6
View File
@@ -7,10 +7,8 @@
Trash2,
Menu,
ChevronDown,
icons,
SquareCheckBig,
Square,
X,
Info
} from 'lucide-svelte';
import Button from '$lib/components/Button.svelte';
@@ -73,13 +71,13 @@
const mac = text_inputs_valid.mac.value === '' ? null : text_inputs_valid.mac.value;
const name = text_inputs_valid.name.value;
let display: Display | null = null;
if (!!existing_display_id) {
if (existing_display_id) {
display = await edit_display_data(existing_display_id, ip, mac, name);
} else {
const status = await ping_ip(text_inputs_valid.ip.value);
display = await add_display(ip, mac, name, status);
}
if (!!display) {
if (display) {
await update_display_status(display);
}
}
@@ -179,6 +177,7 @@
};
</script>
<!-- eslint-disable-next-line @typescript-eslint/no-unused-vars -->
{#snippet about_popup(_: string)}
<div class="px-2">
<p>
@@ -253,7 +252,7 @@
title="Anzeigename"
placeholder="z.B. Beamer vorne links"
is_valid_function={async (input: string) => {
if (!!existing_display_id) {
if (existing_display_id) {
if (input === (await get_display_by_id(existing_display_id))?.name)
return [true, 'Gültiger Name'];
}
@@ -317,7 +316,7 @@
{/if}
<Button
disabled={!all_text_inputs_valid()}
className="{!!existing_display_id ? 'px-4' : 'pl-3 pr-4 gap-2'} font-bold"
className="{existing_display_id ? 'px-4' : 'pl-3 pr-4 gap-2'} font-bold"
bg="bg-stone-650"
click_function={async () => {
await finalize_add_edit_display(existing_display_id);
@@ -21,7 +21,6 @@
show_blackscreen,
shutdown,
startup,
show_html,
open_website
} from '$lib/ts/api_handler';
import {
@@ -135,7 +134,7 @@
function validate_website_url(url: string): [boolean, string] {
if (url === '') return [true, ''];
const regex = /^https?:\/\/[\w\-]+(\.[\w\-]+)+([\w\-\._~:/?#\[\]@!$&'\(\)\*\+,;=.])*/;
const regex = /^https?:\/\/[\w-]+(\.[\w-]+)+([\w\-._~:/?#[\]@!$&'()*+,;=.])*/;
if (regex.test(url)) {
return [true, ''];
}
@@ -1,5 +1,5 @@
<script lang="ts">
import { fade, scale } from 'svelte/transition';
import { fade } from 'svelte/transition';
import {
all_displays_of_group_selected,
get_display_by_id,
@@ -25,12 +25,9 @@
import { selected_display_ids } from '$lib/ts/stores/select';
import { dragHandleZone } from 'svelte-dnd-action';
import DisplayGroupObject from '../lib/components/DisplayGroupObject.svelte';
import { Pane, Splitpanes } from 'svelte-splitpanes';
import { Pane, Splitpanes, type IPaneSizingEvent } from 'svelte-splitpanes';
import HighlightedText from '$lib/components/HighlightedText.svelte';
import { liveQuery, type Observable } from 'dexie';
import { onMount } from 'svelte';
import { flip } from 'svelte/animate';
import { cubicOut } from 'svelte/easing';
let {
handle_display_deletion,
@@ -110,7 +107,7 @@
return true;
}
function handle_splitpane_resize(e: any) {
function handle_splitpane_resize(e: CustomEvent<IPaneSizingEvent[]>) {
if (e.detail[0].size === 0) {
$pinned_display_id = null;
pinned_pane_size = last_pinned_pane_size;
@@ -225,7 +222,7 @@
title="Bildschirme größer darstellen"
className="aspect-square p-1.5! pr-1! rounded-r-none"
bg="bg-stone-600"
disabled={!Boolean(next_height_step_size('display', $current_height, 1))}
disabled={!next_height_step_size('display', $current_height, 1)}
click_function={() => {
change_height('display', 1);
}}
@@ -236,7 +233,7 @@
title="Bildschirme kleiner darstellen"
className="aspect-square p-1.5! pl-1! rounded-l-none"
bg="bg-stone-600"
disabled={!Boolean(next_height_step_size('display', $current_height, -1))}
disabled={!next_height_step_size('display', $current_height, -1)}
click_function={() => {
change_height('display', -1);
}}
+5 -5
View File
@@ -78,7 +78,7 @@
const results = await Promise.all(selected_file_ids.map((id) => get_file_by_id(id)));
return results.filter((element) => element !== null);
} catch (e: unknown) {
console.error('Error on generating selected_files');
console.error('Error on generating selected_files', e);
return [];
}
}
@@ -172,7 +172,7 @@
> existiert nicht auf {display_names_where_path_does_not_exist.length === 1
? 'dem Bildschirm'
: 'den Bildschirmen'}
{#each display_names_where_path_does_not_exist as display_name, i}
{#each display_names_where_path_does_not_exist as display_name, i (i)}
{#if i !== 0}
,
{/if}
@@ -247,7 +247,7 @@
>{`${$selected_file_ids.length === 1 ? 'Folgendes Objekt' : `Folgende ${$selected_file_ids.length} Objekte`} löschen? (Wiederherstellung nicht möglich)`}</span
>
<div class="flex flex-col gap-2 overflow-y-auto h-full min-h-0 grow-0">
{#each $selected_files || [] as file}
{#each $selected_files || [] as file, i (i)}
<InodeElement {file} not_interactable />
{/each}
</div>
@@ -294,7 +294,7 @@
title="Dateien größer darstellen"
className="aspect-square p-1.5! pr-1! rounded-r-none"
bg="bg-stone-600"
disabled={!Boolean(next_height_step_size('file', $current_height, 1))}
disabled={!next_height_step_size('file', $current_height, 1)}
click_function={() => {
change_height('file', 1);
}}
@@ -305,7 +305,7 @@
title="Dateien kleiner darstellen"
className="aspect-square p-1.5! pl-1! rounded-l-none"
bg="bg-stone-600"
disabled={!Boolean(next_height_step_size('file', $current_height, -1))}
disabled={!next_height_step_size('file', $current_height, -1)}
click_function={() => {
change_height('file', -1);
}}
+1 -1
View File
@@ -4,7 +4,7 @@
import { fade } from 'svelte/transition';
import { run_on_all_selected_displays } from '$lib/ts/stores/displays';
import { send_keyboard_input } from '$lib/ts/api_handler';
import { ArrowDownToLine, ArrowUpFromLine, Grid2x2, Grid2X2, Option } from 'lucide-svelte';
import { ArrowDownToLine, ArrowUpFromLine, Grid2x2, Option } from 'lucide-svelte';
import Button from '$lib/components/Button.svelte';
import { onDestroy } from 'svelte';
import { add_to_keyboard_queue } from '$lib/ts/utils';
@@ -9,7 +9,6 @@
Highlighter,
Italic,
PaintBucket,
QrCode,
Strikethrough
} from 'lucide-svelte';
import Button from '$lib/components/Button.svelte';
@@ -149,7 +148,7 @@
editor_state.editor?.destroy();
});
</script>
{#each Object.values(color_states) as color_state, i (i)}
<input type="color" bind:this={color_state.el} bind:value={color_state.value} class="hidden" />
{/each}
@@ -163,9 +162,9 @@
</div>
<div class="flex flex-col gap-2 justify-between">
<div class="flex flex-col gap-2">
<div class="flex flex-col gap-2">
{#each text_edit_options as edit_row, i (i)}
<div class="flex flex-row gap-1">
<div class="flex flex-row gap-1">
{#each edit_row as option, j (j)}
<div class="flex flex-row">
<button