Add optional Cloudflare TURN credentials and secure profile sharing

This commit is contained in:
vorotamoroz
2026-09-15 16:20:03 +00:00
parent ba297d1233
commit 93bc161f20
40 changed files with 1855 additions and 182 deletions
@@ -1,6 +1,5 @@
<script lang="ts">
import { configURIBase } from "@/common/types";
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types";
import { configURIBase, configURIBaseV2 } from "@/common/types";
import DialogHeader from "@/modules/services/LiveSyncUI/components/DialogHeader.svelte";
import Guidance from "@/modules/services/LiveSyncUI/components/Guidance.svelte";
import Decision from "@/modules/services/LiveSyncUI/components/Decision.svelte";
@@ -10,7 +9,7 @@
import Password from "@/modules/services/LiveSyncUI/components/Password.svelte";
import { onMount } from "svelte";
import { decryptString } from "@vrtmrz/livesync-commonlib/compat/encryption/stringEncryption";
import { decodeSettingsFromSetupURI } from "@vrtmrz/livesync-commonlib/compat/API/processSetting";
import type { GuestDialogProps } from "@/modules/services/LiveSyncUI/svelteDialog";
import { TYPE_CANCELLED, type UseSetupURIResultType } from "./setupDialogTypes";
import { $msg as translateMessage } from "@/common/translation";
@@ -30,7 +29,7 @@
}
});
const seemsValid = $derived.by(() => setupURI.startsWith(configURIBase));
const seemsValid = $derived(setupURI.startsWith(configURIBase) || setupURI.startsWith(configURIBaseV2));
async function processSetupURI() {
error = "";
if (!seemsValid) return;
@@ -39,11 +38,8 @@
return;
}
try {
const settingPieces = setupURI.substring(configURIBase.length);
const encodedConfig = decodeURIComponent(settingPieces);
const newConf = (await JSON.parse(
await decryptString(encodedConfig, passphrase)
)) as ObsidianLiveSyncSettings;
const newConf = await decodeSettingsFromSetupURI(setupURI.trim(), passphrase);
if (!newConf) throw new Error("Invalid Setup URI settings");
setResult(newConf);
// Logger("Settings imported successfully", LOG_LEVEL_NOTICE);
return;