aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-01-10 23:59:45 -0800
committerFuwn <[email protected]>2024-01-10 23:59:45 -0800
commit3dfc9cf9e2dabbca48f66bcd0d4dd0cf562aec35 (patch)
tree96dfb880a52d4b2316e21d4d8157f50fa3316591 /src/lib
parentfeat(settings): clearer wording (diff)
downloaddue.moe-3dfc9cf9e2dabbca48f66bcd0d4dd0cf562aec35.tar.xz
due.moe-3dfc9cf9e2dabbca48f66bcd0d4dd0cf562aec35.zip
feat(calculation): invert smart calculation option
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/Settings/Categories/Calculation.svelte7
-rw-r--r--src/lib/Settings/SettingCheckboxToggle.svelte8
2 files changed, 10 insertions, 5 deletions
diff --git a/src/lib/Settings/Categories/Calculation.svelte b/src/lib/Settings/Categories/Calculation.svelte
index 36e33f1e..d6a50653 100644
--- a/src/lib/Settings/Categories/Calculation.svelte
+++ b/src/lib/Settings/Categories/Calculation.svelte
@@ -37,12 +37,13 @@
<SettingCheckboxToggle
setting="calculateGuessingDisabled"
- text="Disable smart chapter count calculation"
+ text="Enable smart chapter count calculation"
+ invert
>
<SettingHint lineBreak>
Smart chapter count calculation uses statistical methods to estimate the number of chapters
- available for a given title based on user submitted progress.<br />Having this setting enabled
- will disable light novel chapter counts and will disable smart chapter count calculation for
+ available for a given title based on user submitted progress.<br />Disabling this setting will
+ disable light novel chapter count reporting and will disable smart chapter count calculation for
titles which you have higher progress than officially reported.
</SettingHint>
</SettingCheckboxToggle>
diff --git a/src/lib/Settings/SettingCheckboxToggle.svelte b/src/lib/Settings/SettingCheckboxToggle.svelte
index 0cfbbd8e..87f5b330 100644
--- a/src/lib/Settings/SettingCheckboxToggle.svelte
+++ b/src/lib/Settings/SettingCheckboxToggle.svelte
@@ -14,6 +14,9 @@
export let onChange: () => void = () => {
return;
};
+ export let invert = false;
+
+ $: checked = invert ? !$settings[setting] : $settings[setting];
// const toggler = (key: keyof Settings) => [
// () =>
@@ -35,13 +38,14 @@
// ];
const check = (e: Event & { currentTarget: EventTarget & HTMLInputElement }): void => {
- settings.setKey(setting, (e.target as HTMLInputElement).checked);
+ const checked = (e.target as HTMLInputElement).checked;
+ settings.setKey(setting, invert ? !checked : checked);
onChange();
};
</script>
-<input type="checkbox" on:change={check} bind:checked={$settings[setting]} />
+<input type="checkbox" on:change={check} bind:checked />
<span
on:click={() => ($settings[setting] = !$settings[setting])}