{ "formatVersion": 1, "database": { "version": 2, "identityHash": "37a2caa74779de4fe989f19a8cb1eaf6", "entities": [ { "tableName": "manga", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `title` TEXT NOT NULL, `alt_title` TEXT, `url` TEXT NOT NULL, `public_url` TEXT NOT NULL, `rating` REAL NOT NULL, `nsfw` INTEGER NOT NULL, `cover_url` TEXT NOT NULL, `large_cover_url` TEXT, `state` TEXT, `author` TEXT, `source` TEXT NOT NULL, PRIMARY KEY(`manga_id`))", "fields": [ { "fieldPath": "id", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "title", "columnName": "title", "affinity": "TEXT", "notNull": true }, { "fieldPath": "altTitle", "columnName": "alt_title", "affinity": "TEXT", "notNull": false }, { "fieldPath": "url", "columnName": "url", "affinity": "TEXT", "notNull": true }, { "fieldPath": "publicUrl", "columnName": "public_url", "affinity": "TEXT", "notNull": true }, { "fieldPath": "rating", "columnName": "rating", "affinity": "REAL", "notNull": true }, { "fieldPath": "isNsfw", "columnName": "nsfw", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "coverUrl", "columnName": "cover_url", "affinity": "TEXT", "notNull": true }, { "fieldPath": "largeCoverUrl", "columnName": "large_cover_url", "affinity": "TEXT", "notNull": false }, { "fieldPath": "state", "columnName": "state", "affinity": "TEXT", "notNull": false }, { "fieldPath": "author", "columnName": "author", "affinity": "TEXT", "notNull": false }, { "fieldPath": "source", "columnName": "source", "affinity": "TEXT", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id" ] }, "indices": [], "foreignKeys": [] }, { "tableName": "tags", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`tag_id` INTEGER NOT NULL, `title` TEXT NOT NULL, `key` TEXT NOT NULL, `source` TEXT NOT NULL, PRIMARY KEY(`tag_id`))", "fields": [ { "fieldPath": "id", "columnName": "tag_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "title", "columnName": "title", "affinity": "TEXT", "notNull": true }, { "fieldPath": "key", "columnName": "key", "affinity": "TEXT", "notNull": true }, { "fieldPath": "source", "columnName": "source", "affinity": "TEXT", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "tag_id" ] }, "indices": [], "foreignKeys": [] }, { "tableName": "manga_tags", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `tag_id` INTEGER NOT NULL, PRIMARY KEY(`manga_id`, `tag_id`), FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE , FOREIGN KEY(`tag_id`) REFERENCES `tags`(`tag_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "tagId", "columnName": "tag_id", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id", "tag_id" ] }, "indices": [ { "name": "index_manga_tags_manga_id", "unique": false, "columnNames": [ "manga_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_manga_tags_manga_id` ON `${TABLE_NAME}` (`manga_id`)" }, { "name": "index_manga_tags_tag_id", "unique": false, "columnNames": [ "tag_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_manga_tags_tag_id` ON `${TABLE_NAME}` (`tag_id`)" } ], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] }, { "table": "tags", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "tag_id" ], "referencedColumns": [ "tag_id" ] } ] }, { "tableName": "sources", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`source` TEXT NOT NULL, `enabled` INTEGER NOT NULL, `sort_key` INTEGER NOT NULL, PRIMARY KEY(`source`))", "fields": [ { "fieldPath": "source", "columnName": "source", "affinity": "TEXT", "notNull": true }, { "fieldPath": "isEnabled", "columnName": "enabled", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "sortKey", "columnName": "sort_key", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "source" ] }, "indices": [ { "name": "index_sources_sort_key", "unique": false, "columnNames": [ "sort_key" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_sources_sort_key` ON `${TABLE_NAME}` (`sort_key`)" } ], "foreignKeys": [] }, { "tableName": "history", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `created_at` INTEGER NOT NULL, `updated_at` INTEGER NOT NULL, `chapter_id` INTEGER NOT NULL, `page` INTEGER NOT NULL, `scroll` REAL NOT NULL, `percent` REAL NOT NULL, `deleted_at` INTEGER NOT NULL, PRIMARY KEY(`manga_id`), FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "createdAt", "columnName": "created_at", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "updatedAt", "columnName": "updated_at", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "chapterId", "columnName": "chapter_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "page", "columnName": "page", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "scroll", "columnName": "scroll", "affinity": "REAL", "notNull": true }, { "fieldPath": "percent", "columnName": "percent", "affinity": "REAL", "notNull": true }, { "fieldPath": "deletedAt", "columnName": "deleted_at", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id" ] }, "indices": [], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] } ] }, { "tableName": "favourites", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `category_id` INTEGER NOT NULL, `sort_key` INTEGER NOT NULL, `created_at` INTEGER NOT NULL, `deleted_at` INTEGER NOT NULL, PRIMARY KEY(`manga_id`, `category_id`), FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE , FOREIGN KEY(`category_id`) REFERENCES `favourite_categories`(`category_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "categoryId", "columnName": "category_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "sortKey", "columnName": "sort_key", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "createdAt", "columnName": "created_at", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "deletedAt", "columnName": "deleted_at", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id", "category_id" ] }, "indices": [ { "name": "index_favourites_manga_id", "unique": false, "columnNames": [ "manga_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_favourites_manga_id` ON `${TABLE_NAME}` (`manga_id`)" }, { "name": "index_favourites_category_id", "unique": false, "columnNames": [ "category_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_favourites_category_id` ON `${TABLE_NAME}` (`category_id`)" } ], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] }, { "table": "favourite_categories", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "category_id" ], "referencedColumns": [ "category_id" ] } ] }, { "tableName": "favourite_categories", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`category_id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `created_at` INTEGER NOT NULL, `sort_key` INTEGER NOT NULL, `title` TEXT NOT NULL, `order` TEXT NOT NULL, `track` INTEGER NOT NULL, `show_in_lib` INTEGER NOT NULL, `deleted_at` INTEGER NOT NULL)", "fields": [ { "fieldPath": "categoryId", "columnName": "category_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "createdAt", "columnName": "created_at", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "sortKey", "columnName": "sort_key", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "title", "columnName": "title", "affinity": "TEXT", "notNull": true }, { "fieldPath": "order", "columnName": "order", "affinity": "TEXT", "notNull": true }, { "fieldPath": "track", "columnName": "track", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "isVisibleInLibrary", "columnName": "show_in_lib", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "deletedAt", "columnName": "deleted_at", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "category_id" ] }, "indices": [], "foreignKeys": [] }, { "tableName": "bookmarks", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `page_id` INTEGER NOT NULL, `chapter_id` INTEGER NOT NULL, `page` INTEGER NOT NULL, `scroll` INTEGER NOT NULL, `image` TEXT NOT NULL, `created_at` INTEGER NOT NULL, `percent` REAL NOT NULL, PRIMARY KEY(`manga_id`, `page_id`), FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "pageId", "columnName": "page_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "chapterId", "columnName": "chapter_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "page", "columnName": "page", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "scroll", "columnName": "scroll", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "imageUrl", "columnName": "image", "affinity": "TEXT", "notNull": true }, { "fieldPath": "createdAt", "columnName": "created_at", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "percent", "columnName": "percent", "affinity": "REAL", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id", "page_id" ] }, "indices": [ { "name": "index_bookmarks_manga_id", "unique": false, "columnNames": [ "manga_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_bookmarks_manga_id` ON `${TABLE_NAME}` (`manga_id`)" }, { "name": "index_bookmarks_page_id", "unique": false, "columnNames": [ "page_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_bookmarks_page_id` ON `${TABLE_NAME}` (`page_id`)" } ], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] } ] }, { "tableName": "suggestions", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `relevance` REAL NOT NULL, `created_at` INTEGER NOT NULL, PRIMARY KEY(`manga_id`), FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "relevance", "columnName": "relevance", "affinity": "REAL", "notNull": true }, { "fieldPath": "createdAt", "columnName": "created_at", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id" ] }, "indices": [ { "name": "index_suggestions_manga_id", "unique": false, "columnNames": [ "manga_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_suggestions_manga_id` ON `${TABLE_NAME}` (`manga_id`)" } ], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] } ] }, { "tableName": "tracks", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `chapters_total` INTEGER NOT NULL, `last_chapter_id` INTEGER NOT NULL, `chapters_new` INTEGER NOT NULL, `last_check` INTEGER NOT NULL, `last_notified_id` INTEGER NOT NULL, PRIMARY KEY(`manga_id`), FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "totalChapters", "columnName": "chapters_total", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "lastChapterId", "columnName": "last_chapter_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "newChapters", "columnName": "chapters_new", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "lastCheck", "columnName": "last_check", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "lastNotifiedChapterId", "columnName": "last_notified_id", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id" ] }, "indices": [], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] } ] }, { "tableName": "track_logs", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `manga_id` INTEGER NOT NULL, `chapters` TEXT NOT NULL, `created_at` INTEGER NOT NULL, FOREIGN KEY(`manga_id`) REFERENCES `manga`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "chapters", "columnName": "chapters", "affinity": "TEXT", "notNull": true }, { "fieldPath": "createdAt", "columnName": "created_at", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] }, "indices": [ { "name": "index_track_logs_manga_id", "unique": false, "columnNames": [ "manga_id" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_track_logs_manga_id` ON `${TABLE_NAME}` (`manga_id`)" } ], "foreignKeys": [ { "table": "manga", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] } ] }, { "tableName": "stats", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`manga_id` INTEGER NOT NULL, `started_at` INTEGER NOT NULL, `duration` INTEGER NOT NULL, `pages` INTEGER NOT NULL, PRIMARY KEY(`manga_id`, `started_at`), FOREIGN KEY(`manga_id`) REFERENCES `history`(`manga_id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "mangaId", "columnName": "manga_id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "startedAt", "columnName": "started_at", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "duration", "columnName": "duration", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "pages", "columnName": "pages", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "manga_id", "started_at" ] }, "indices": [], "foreignKeys": [ { "table": "history", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "manga_id" ], "referencedColumns": [ "manga_id" ] } ] } ], "views": [], "setupQueries": [ "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)", "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '37a2caa74779de4fe989f19a8cb1eaf6')" ] } }