Skip to content

Commit 8c679bb

Browse files
authored
fix: remove svelte build warnings (#198)
1 parent c555ab9 commit 8c679bb

2 files changed

Lines changed: 28 additions & 32 deletions

File tree

frontend/src/App.svelte

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -827,12 +827,14 @@
827827
{/if}
828828
</aside>
829829
{#if !isMobile}
830+
<!-- svelte-ignore a11y_no_noninteractive_tabindex, a11y_no_noninteractive_element_interactions (focusable ARIA separator used for keyboard-resizable sidebar) -->
830831
<div
831832
class="w-1 shrink-0 cursor-col-resize hover:bg-accent/50 transition-colors"
832833
class:bg-accent={isResizingSidebar}
833834
onpointerdown={handleResizeStart}
834835
onkeydown={handleResizeKeydown}
835836
role="separator"
837+
aria-label="Resize sidebar"
836838
aria-orientation="vertical"
837839
aria-valuenow={sidebarWidth}
838840
aria-valuemin={MIN_SIDEBAR_WIDTH}

frontend/src/lib/SettingsDialog.svelte

Lines changed: 26 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -27,56 +27,40 @@
2727
onclose: () => void;
2828
} = $props();
2929
30-
const initialAutoCreate = linearAutoCreate;
3130
let sshHost = $state(localStorage.getItem(SSH_STORAGE_KEY) ?? "");
32-
let autoCreate = $state(initialAutoCreate);
31+
let pendingAutoCreate = $state<boolean | null>(null);
32+
let autoCreate = $derived(pendingAutoCreate ?? linearAutoCreate);
3333
let autoCreateSaving = $state(false);
34-
let lastSyncedAutoCreate = initialAutoCreate;
3534
36-
const initialAutoRemove = autoRemoveOnMerge;
37-
let autoRemove = $state(initialAutoRemove);
35+
let pendingAutoRemove = $state<boolean | null>(null);
36+
let autoRemove = $derived(pendingAutoRemove ?? autoRemoveOnMerge);
3837
let autoRemoveSaving = $state(false);
39-
let lastSyncedAutoRemove = initialAutoRemove;
4038
41-
$effect(() => {
42-
if (autoCreate === lastSyncedAutoCreate) return;
43-
const desired = autoCreate;
44-
lastSyncedAutoCreate = desired;
39+
function handleAutoCreateToggle(enabled: boolean) {
40+
pendingAutoCreate = enabled;
4541
autoCreateSaving = true;
46-
api.setLinearAutoCreate(desired)
42+
api.setLinearAutoCreate(enabled)
4743
.then((result) => {
48-
autoCreate = result.enabled;
49-
lastSyncedAutoCreate = result.enabled;
5044
onlinearautocreatechange(result.enabled);
5145
})
52-
.catch(() => {
53-
autoCreate = !desired;
54-
lastSyncedAutoCreate = !desired;
55-
})
5646
.finally(() => {
47+
pendingAutoCreate = null;
5748
autoCreateSaving = false;
5849
});
59-
});
50+
}
6051
61-
$effect(() => {
62-
if (autoRemove === lastSyncedAutoRemove) return;
63-
const desired = autoRemove;
64-
lastSyncedAutoRemove = desired;
52+
function handleAutoRemoveToggle(enabled: boolean) {
53+
pendingAutoRemove = enabled;
6554
autoRemoveSaving = true;
66-
api.setAutoRemoveOnMerge(desired)
55+
api.setAutoRemoveOnMerge(enabled)
6756
.then((result) => {
68-
autoRemove = result.enabled;
69-
lastSyncedAutoRemove = result.enabled;
7057
onautoremovechange(result.enabled);
7158
})
72-
.catch(() => {
73-
autoRemove = !desired;
74-
lastSyncedAutoRemove = !desired;
75-
})
7659
.finally(() => {
60+
pendingAutoRemove = null;
7761
autoRemoveSaving = false;
7862
});
79-
});
63+
}
8064
8165
function handleSave() {
8266
const trimmed = sshHost.trim();
@@ -130,7 +114,12 @@
130114
</p>
131115
</div>
132116

133-
<Toggle bind:checked={autoCreate} disabled={autoCreateSaving} aria-label="Auto-create worktrees for Linear tickets" />
117+
<Toggle
118+
checked={autoCreate}
119+
disabled={autoCreateSaving}
120+
ontoggle={handleAutoCreateToggle}
121+
aria-label="Auto-create worktrees for Linear tickets"
122+
/>
134123
</div>
135124
</div>
136125

@@ -144,7 +133,12 @@
144133
</p>
145134
</div>
146135

147-
<Toggle bind:checked={autoRemove} disabled={autoRemoveSaving} aria-label="Auto-remove worktrees on PR merge" />
136+
<Toggle
137+
checked={autoRemove}
138+
disabled={autoRemoveSaving}
139+
ontoggle={handleAutoRemoveToggle}
140+
aria-label="Auto-remove worktrees on PR merge"
141+
/>
148142
</div>
149143
</div>
150144

0 commit comments

Comments
 (0)