{ "formatVersion": 1, "database": { "version": 17, "identityHash": "708de483dd1541f0f65fed40884eadfe", "entities": [ { "tableName": "BookEntity", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `title` TEXT NOT NULL, `author` TEXT NOT NULL, `description` TEXT, `filePath` TEXT NOT NULL, `scrollIndex` INTEGER NOT NULL, `scrollOffset` INTEGER NOT NULL, `progress` REAL NOT NULL, `image` TEXT, `categories` TEXT NOT NULL DEFAULT '[]', `remoteId` TEXT NOT NULL DEFAULT '', `libraryId` TEXT NOT NULL DEFAULT '', `mediaType` TEXT NOT NULL DEFAULT '', `hasAudio` INTEGER NOT NULL DEFAULT 0, `hasEbook` INTEGER NOT NULL DEFAULT 0, `audioDuration` INTEGER NOT NULL DEFAULT 0, `coverUrl` TEXT NOT NULL DEFAULT '', `lastSyncedAt` INTEGER NOT NULL DEFAULT 0)", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "title", "columnName": "title", "affinity": "TEXT", "notNull": true }, { "fieldPath": "author", "columnName": "author", "affinity": "TEXT", "notNull": true }, { "fieldPath": "description", "columnName": "description", "affinity": "TEXT" }, { "fieldPath": "filePath", "columnName": "filePath", "affinity": "TEXT", "notNull": true }, { "fieldPath": "scrollIndex", "columnName": "scrollIndex", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "scrollOffset", "columnName": "scrollOffset", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "progress", "columnName": "progress", "affinity": "REAL", "notNull": true }, { "fieldPath": "image", "columnName": "image", "affinity": "TEXT" }, { "fieldPath": "categories", "columnName": "categories", "affinity": "TEXT", "notNull": true, "defaultValue": "'[]'" }, { "fieldPath": "remoteId", "columnName": "remoteId", "affinity": "TEXT", "notNull": true, "defaultValue": "''" }, { "fieldPath": "libraryId", "columnName": "libraryId", "affinity": "TEXT", "notNull": true, "defaultValue": "''" }, { "fieldPath": "mediaType", "columnName": "mediaType", "affinity": "TEXT", "notNull": true, "defaultValue": "''" }, { "fieldPath": "hasAudio", "columnName": "hasAudio", "affinity": "INTEGER", "notNull": true, "defaultValue": "0" }, { "fieldPath": "hasEbook", "columnName": "hasEbook", "affinity": "INTEGER", "notNull": true, "defaultValue": "0" }, { "fieldPath": "audioDuration", "columnName": "audioDuration", "affinity": "INTEGER", "notNull": true, "defaultValue": "0" }, { "fieldPath": "coverUrl", "columnName": "coverUrl", "affinity": "TEXT", "notNull": true, "defaultValue": "''" }, { "fieldPath": "lastSyncedAt", "columnName": "lastSyncedAt", "affinity": "INTEGER", "notNull": true, "defaultValue": "0" } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] } }, { "tableName": "HistoryEntity", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `bookId` INTEGER NOT NULL, `time` INTEGER NOT NULL)", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "bookId", "columnName": "bookId", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "time", "columnName": "time", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] } }, { "tableName": "ColorPresetEntity", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `name` TEXT NOT NULL, `backgroundColor` INTEGER NOT NULL, `fontColor` INTEGER NOT NULL, `isSelected` INTEGER NOT NULL, `order` INTEGER NOT NULL)", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER" }, { "fieldPath": "name", "columnName": "name", "affinity": "TEXT", "notNull": true }, { "fieldPath": "backgroundColor", "columnName": "backgroundColor", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "fontColor", "columnName": "fontColor", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "isSelected", "columnName": "isSelected", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "order", "columnName": "order", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] } }, { "tableName": "CategoryEntity", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `title` TEXT NOT NULL, `order` INTEGER NOT NULL, `sortOrder` TEXT NOT NULL DEFAULT 'LAST_READ', `sortOrderDescending` INTEGER NOT NULL DEFAULT 1)", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "title", "columnName": "title", "affinity": "TEXT", "notNull": true }, { "fieldPath": "order", "columnName": "order", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "sortOrder", "columnName": "sortOrder", "affinity": "TEXT", "notNull": true, "defaultValue": "'LAST_READ'" }, { "fieldPath": "sortOrderDescending", "columnName": "sortOrderDescending", "affinity": "INTEGER", "notNull": true, "defaultValue": "1" } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] } }, { "tableName": "audio_file", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `bookId` INTEGER NOT NULL, `fileId` TEXT NOT NULL, `remotePath` TEXT, `localPath` TEXT, `duration` REAL NOT NULL, `order` INTEGER NOT NULL, FOREIGN KEY(`bookId`) REFERENCES `BookEntity`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "bookId", "columnName": "bookId", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "fileId", "columnName": "fileId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "remotePath", "columnName": "remotePath", "affinity": "TEXT" }, { "fieldPath": "localPath", "columnName": "localPath", "affinity": "TEXT" }, { "fieldPath": "duration", "columnName": "duration", "affinity": "REAL", "notNull": true }, { "fieldPath": "order", "columnName": "order", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] }, "indices": [ { "name": "index_audio_file_bookId", "unique": false, "columnNames": [ "bookId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_audio_file_bookId` ON `${TABLE_NAME}` (`bookId`)" } ], "foreignKeys": [ { "table": "BookEntity", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "bookId" ], "referencedColumns": [ "id" ] } ] }, { "tableName": "ebook_file", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `bookId` INTEGER NOT NULL, `fileId` TEXT NOT NULL, `format` TEXT NOT NULL, `remotePath` TEXT, `localPath` TEXT, FOREIGN KEY(`bookId`) REFERENCES `BookEntity`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "bookId", "columnName": "bookId", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "fileId", "columnName": "fileId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "format", "columnName": "format", "affinity": "TEXT", "notNull": true }, { "fieldPath": "remotePath", "columnName": "remotePath", "affinity": "TEXT" }, { "fieldPath": "localPath", "columnName": "localPath", "affinity": "TEXT" } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] }, "indices": [ { "name": "index_ebook_file_bookId", "unique": false, "columnNames": [ "bookId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_ebook_file_bookId` ON `${TABLE_NAME}` (`bookId`)" } ], "foreignKeys": [ { "table": "BookEntity", "onDelete": "CASCADE", "onUpdate": "NO ACTION", "columns": [ "bookId" ], "referencedColumns": [ "id" ] } ] }, { "tableName": "cached_file", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `bookId` INTEGER NOT NULL, `type` TEXT NOT NULL, `remoteUrl` TEXT NOT NULL, `localPath` TEXT, `status` TEXT NOT NULL, `progress` REAL NOT NULL, `createdAt` INTEGER NOT NULL)", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "bookId", "columnName": "bookId", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "type", "columnName": "type", "affinity": "TEXT", "notNull": true }, { "fieldPath": "remoteUrl", "columnName": "remoteUrl", "affinity": "TEXT", "notNull": true }, { "fieldPath": "localPath", "columnName": "localPath", "affinity": "TEXT" }, { "fieldPath": "status", "columnName": "status", "affinity": "TEXT", "notNull": true }, { "fieldPath": "progress", "columnName": "progress", "affinity": "REAL", "notNull": true }, { "fieldPath": "createdAt", "columnName": "createdAt", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] }, "indices": [ { "name": "index_cached_file_bookId", "unique": false, "columnNames": [ "bookId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_cached_file_bookId` ON `${TABLE_NAME}` (`bookId`)" }, { "name": "index_cached_file_type", "unique": false, "columnNames": [ "type" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_cached_file_type` ON `${TABLE_NAME}` (`type`)" } ] } ], "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, '708de483dd1541f0f65fed40884eadfe')" ] } }