mobile: enable encrypted backups on login

This commit is contained in:
ammarahm-ed
2023-06-20 12:39:00 +05:00
committed by Abdullah Atta
parent 4195150005
commit 53b545f84c
4 changed files with 22 additions and 9 deletions

View File

@@ -439,10 +439,13 @@ export const useAppEvents = () => {
clearMessage();
subscribeToIAPListeners();
if (!login) {
user = await db.user.fetchUser();
setUser(user);
} else {
SettingsService.set({
encryptedBackup: true
});
}
await PremiumService.setPremiumStatus();

View File

@@ -23,9 +23,10 @@ import Menu, { MenuItem } from "react-native-reanimated-material-menu";
import Icon from "react-native-vector-icons/MaterialCommunityIcons";
import { PressableButton } from "../../../components/ui/pressable";
import Paragraph from "../../../components/ui/typography/paragraph";
import PremiumService from "../../../services/premium";
import { useThemeStore } from "../../../stores/use-theme-store";
import { SIZE } from "../../../utils/size";
import PremiumService from "../../../services/premium";
import { sleep } from "../../../utils/time";
interface PickerOptions<T> {
getValue: () => T;
@@ -55,11 +56,18 @@ export function SettingsPicker<T>({
const onChange = async (item: T) => {
if (premium && onCheckOptionIsPremium?.(item)) {
await PremiumService.verify(async () => {
menuRef.current?.hide();
await updateValue(item);
setCurrentValue(item);
});
await PremiumService.verify(
async () => {
menuRef.current?.hide();
await updateValue(item);
setCurrentValue(item);
},
async () => {
menuRef.current?.hide();
await sleep(300);
PremiumService.sheet();
}
);
return;
}

View File

@@ -126,5 +126,7 @@ export const BackupReminderPicker = createSettingsPicker({
options: ["useroff", "daily", "weekly", "monthly"],
compareValue: (current, item) => current === item,
premium: true,
onCheckOptionIsPremium: (item) => item !== "useroff"
onCheckOptionIsPremium: (item) => {
return item !== "useroff";
}
});

View File

@@ -119,7 +119,7 @@ export const defaultSettings: SettingStore["settings"] = {
forcePortraitOnTablet: false,
useSystemTheme: true,
reminder: "off",
encryptedBackup: true,
encryptedBackup: false,
homepage: "Notes",
sort: "default",
sortOrder: "desc",