chore: encrypting real-debrid

This commit is contained in:
Chubby Granny Chaser 2025-01-22 01:57:27 +00:00
parent 549481f85a
commit f5532fa26f
No known key found for this signature in database
2 changed files with 27 additions and 7 deletions

View file

@ -1,10 +1,21 @@
import { registerEvent } from "../register-event";
import { db, levelKeys } from "@main/level";
import { Crypto } from "@main/services";
import type { UserPreferences } from "@types";
const getUserPreferences = async () =>
db.get<string, UserPreferences>(levelKeys.userPreferences, {
valueEncoding: "json",
});
db
.get<string, UserPreferences>(levelKeys.userPreferences, {
valueEncoding: "json",
})
.then((userPreferences) => {
if (userPreferences.realDebridApiToken) {
userPreferences.realDebridApiToken = Crypto.decrypt(
userPreferences.realDebridApiToken
);
}
return userPreferences;
});
registerEvent("getUserPreferences", getUserPreferences);

View file

@ -27,7 +27,9 @@ const loadState = async (userPreferences: UserPreferences | null) => {
Aria2.spawn();
if (userPreferences?.realDebridApiToken) {
RealDebridClient.authorize(userPreferences?.realDebridApiToken);
RealDebridClient.authorize(
Crypto.decrypt(userPreferences.realDebridApiToken)
);
}
Ludusavi.addManifestToLudusaviConfig();
@ -97,10 +99,17 @@ const migrateFromSqlite = async () => {
.select("*")
.then(async (userPreferences) => {
if (userPreferences.length > 0) {
await db.put(levelKeys.userPreferences, userPreferences[0]);
const { realDebridApiToken, ...rest } = userPreferences[0];
if (userPreferences[0].language) {
await db.put(levelKeys.language, userPreferences[0].language);
await db.put(levelKeys.userPreferences, {
...rest,
realDebridApiToken: realDebridApiToken
? Crypto.encrypt(realDebridApiToken)
: null,
});
if (rest.language) {
await db.put(levelKeys.language, rest.language);
}
}
})