aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Settings/SettingCheckboxToggle.svelte
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-03-01 16:04:11 -0800
committerFuwn <[email protected]>2026-03-01 16:04:11 -0800
commit48f0c30d47d62e4f35706edb93a1bb2f97eba14c (patch)
tree44866d7a61adfdf01a780e0108c370294d3db78b /src/lib/Settings/SettingCheckboxToggle.svelte
parentchore(biome): re-enable useAltText rule (diff)
downloaddue.moe-48f0c30d47d62e4f35706edb93a1bb2f97eba14c.tar.xz
due.moe-48f0c30d47d62e4f35706edb93a1bb2f97eba14c.zip
chore(biome): enable svelte formatting
Diffstat (limited to 'src/lib/Settings/SettingCheckboxToggle.svelte')
-rw-r--r--src/lib/Settings/SettingCheckboxToggle.svelte106
1 files changed, 53 insertions, 53 deletions
diff --git a/src/lib/Settings/SettingCheckboxToggle.svelte b/src/lib/Settings/SettingCheckboxToggle.svelte
index c9d82907..b5ef4989 100644
--- a/src/lib/Settings/SettingCheckboxToggle.svelte
+++ b/src/lib/Settings/SettingCheckboxToggle.svelte
@@ -1,57 +1,57 @@
<script lang="ts">
- import Spacer from '$lib/Layout/Spacer.svelte';
- import settings, { type Settings } from '$stores/settings';
-
- type BooleanSettingsKeys<T> = {
- [K in keyof T]: T[K] extends boolean ? K : never;
- };
- type SettingsBooleanKeys = BooleanSettingsKeys<Settings>;
-
- export let sectionBreak = false;
- export let disabled = false;
- export let text: string | (() => string);
- export let setting: SettingsBooleanKeys[keyof SettingsBooleanKeys];
- export let lineBreak = true;
- export let onChange: () => void = () => {
- return;
- };
- export let invert = false;
- export let id: string | null = null;
-
- $: checked = setting ? (invert ? !$settings[setting] : $settings[setting]) : false;
- $: field = text instanceof Function ? text() : text;
-
- // const toggler = (key: keyof Settings) => [
- // () =>
- // settings.update((s) => {
- // (s[key] as boolean) = true;
-
- // $settings = s;
-
- // return s;
- // }),
- // () =>
- // settings.update((s) => {
- // (s[key] as boolean) = false;
-
- // $settings = s;
-
- // return s;
- // })
- // ];
-
- const check = (e: Event & { currentTarget: EventTarget & HTMLInputElement }): void => {
- const checked = (e.target as HTMLInputElement).checked;
-
- if (setting) {
- settings.setKey(setting, invert ? !checked : checked);
- onChange();
- }
- };
-
- const flip = () => {
- if (setting) $settings[setting] = !$settings[setting];
- };
+import Spacer from '$lib/Layout/Spacer.svelte';
+import settings, { type Settings } from '$stores/settings';
+
+type BooleanSettingsKeys<T> = {
+ [K in keyof T]: T[K] extends boolean ? K : never;
+};
+type SettingsBooleanKeys = BooleanSettingsKeys<Settings>;
+
+export let sectionBreak = false;
+export let disabled = false;
+export let text: string | (() => string);
+export let setting: SettingsBooleanKeys[keyof SettingsBooleanKeys];
+export let lineBreak = true;
+export let onChange: () => void = () => {
+ return;
+};
+export let invert = false;
+export let id: string | null = null;
+
+$: checked = setting ? (invert ? !$settings[setting] : $settings[setting]) : false;
+$: field = text instanceof Function ? text() : text;
+
+// const toggler = (key: keyof Settings) => [
+// () =>
+// settings.update((s) => {
+// (s[key] as boolean) = true;
+
+// $settings = s;
+
+// return s;
+// }),
+// () =>
+// settings.update((s) => {
+// (s[key] as boolean) = false;
+
+// $settings = s;
+
+// return s;
+// })
+// ];
+
+const check = (e: Event & { currentTarget: EventTarget & HTMLInputElement }): void => {
+ const checked = (e.target as HTMLInputElement).checked;
+
+ if (setting) {
+ settings.setKey(setting, invert ? !checked : checked);
+ onChange();
+ }
+};
+
+const flip = () => {
+ if (setting) $settings[setting] = !$settings[setting];
+};
</script>
<input type="checkbox" onchange={check} bind:checked {id} />