mobile: ensure full db init when sync is required

This commit is contained in:
ammarahm-ed
2023-04-26 15:12:29 +05:00
parent 8a138d960d
commit 91138f4911
3 changed files with 7 additions and 12 deletions

View File

@@ -202,15 +202,14 @@ const onEvent = async ({ type, detail }: Event) => {
reply_button_text: "Take note",
reply_placeholder_text: "Write something..."
});
await initDatabase(false);
if (!db.isInitialized) await db.init();
await db.notes?.init();
await db.notes?.add({
content: {
type: "tiptap",
data: `<p>${input} </p>`
}
});
if (!db.isInitialized) await db.init();
await db.notes?.init();
await db.sync(false, false);
useNoteStore.getState().setNotes();
break;

View File

@@ -26,12 +26,12 @@ import {
Keyboard,
Platform,
SafeAreaView,
ScrollView,
StatusBar,
Text,
TouchableOpacity,
useWindowDimensions,
View,
ScrollView
useWindowDimensions
} from "react-native";
import {
SafeAreaProvider,
@@ -45,10 +45,9 @@ import Storage from "../app/common/database/storage";
import { eSendEvent } from "../app/services/event-manager";
import { getElevation } from "../app/utils";
import { eOnLoadNote } from "../app/utils/events";
import { sleep } from "../app/utils/time";
import { Editor } from "./editor";
import { Search } from "./search";
import { initDatabase, useShareStore } from "./store";
import { Editor } from "./editor";
const getLinkPreview = (url) => {
return getPreviewData(url, 5000);
};
@@ -315,7 +314,6 @@ const ShareView = ({ quicknote = false }) => {
const onPress = async () => {
setLoading(true);
await initDatabase();
await sleep(1500);
if (!noteContent.current) return;
if (appendNote && !db.notes.note(appendNote.id)) {
useShareStore.getState().setAppendNote(null);
@@ -358,7 +356,6 @@ const ShareView = ({ quicknote = false }) => {
}
}
}
if (!db.isInitialized) await db.init();
await db.sync(false, false);
await Storage.write("notesAddedFromIntent", "added");
close();

View File

@@ -29,10 +29,9 @@ import { db } from "../app/common/database";
export async function initDatabase() {
if (!db.isInitialized) {
// Only load collections in database.
await db.initCollections();
await db.notes.init();
await db.init();
}
await db.notes.init();
}
const StorageKeys = {