Files
notesnook/packages/core/api/index.js

33 lines
963 B
JavaScript
Raw Normal View History

2020-02-03 12:03:07 +05:00
import Notes from "../collections/notes";
2020-02-04 18:27:32 +05:00
import Notebooks from "../collections/notebooks";
2020-02-06 16:46:23 +05:00
import Trash from "../collections/trash";
2020-02-21 21:39:27 +05:00
import Tags from "../collections/tags";
import User from "../models/user";
2020-02-11 16:28:28 +05:00
import Sync from "./sync";
2020-02-03 12:03:07 +05:00
class Database {
2020-02-03 12:03:07 +05:00
constructor(context) {
this.context = context;
}
async init() {
2020-02-04 18:27:32 +05:00
this.notebooks = new Notebooks(this.context);
2020-02-05 00:17:12 +05:00
this.notes = new Notes(this.context);
2020-02-06 16:46:23 +05:00
this.trash = new Trash(this.context);
this.user = new User(this.context);
2020-02-21 21:39:27 +05:00
this.tags = new Tags(this.context, "tags");
this.colors = new Tags(this.context, "colors");
await this.tags.init();
await this.colors.init();
2020-02-21 22:06:13 +05:00
await this.notes.init(this.notebooks, this.trash, this.tags, this.colors);
await this.notebooks.init(this.notes, this.trash);
await this.trash.init(this.notes, this.notebooks);
2020-02-11 16:28:28 +05:00
this.syncer = new Sync(this);
}
sync() {
return this.syncer.start();
2020-02-03 12:03:07 +05:00
}
}
export default Database;