web/privacy: add support for always proxying files

This commit is contained in:
wukko
2024-08-31 14:08:48 +06:00
parent a9e65b0da0
commit d0d0f16c5f
5 changed files with 22 additions and 3 deletions

View File

@ -9,7 +9,9 @@ import type { Optional } from "$lib/types/generic";
import type { CobaltAPIResponse, CobaltErrorResponse } from "$lib/types/api";
const request = async (url: string) => {
const saveSettings = get(settings).save;
const gSettings = get(settings);
const saveSettings = gSettings.save;
const privacySettings = gSettings.privacy;
const request = {
url,
@ -29,6 +31,8 @@ const request = async (url: string) => {
twitterGif: saveSettings.twitterGif,
tiktokH265: saveSettings.tiktokH265,
alwaysProxy: privacySettings.alwaysProxy,
}
await apiOverrideWarning();

View File

@ -29,6 +29,7 @@ const defaultSettings: CobaltSettings = {
youtubeDubBrowserLang: false,
},
privacy: {
alwaysProxy: false,
disableAnalytics: false,
},
processing: {

View File

@ -23,6 +23,7 @@ type CobaltSettingsAdvanced = {
};
type CobaltSettingsPrivacy = {
alwaysProxy: boolean,
disableAnalytics: boolean,
};

View File

@ -2,11 +2,20 @@
import env from "$lib/env";
import { t } from "$lib/i18n/translations";
import SettingsCategory from "$components/settings/SettingsCategory.svelte";
import SettingsToggle from "$components/buttons/SettingsToggle.svelte";
import OuterLink from "$components/misc/OuterLink.svelte";
import SettingsToggle from "$components/buttons/SettingsToggle.svelte";
import SettingsCategory from "$components/settings/SettingsCategory.svelte";
</script>
<SettingsCategory sectionId="tunnel" title={$t("settings.privacy.tunnel")}>
<SettingsToggle
settingContext="privacy"
settingId="alwaysProxy"
title={$t("settings.privacy.tunnel.title")}
description={$t("settings.privacy.tunnel.description")}
/>
</SettingsCategory>
{#if env.PLAUSIBLE_ENABLED}
<SettingsCategory sectionId="analytics" title={$t("settings.privacy.analytics")}>
<SettingsToggle