2023-01-10 10:05:03 +00:00
{
"formatVersion" : 1 ,
"database" : {
"version" : 1 ,
2023-01-16 18:53:38 +00:00
"identityHash" : "adc70f7066828bb6cf1fc32aa3a24b2f" ,
2023-01-10 10:05:03 +00:00
"entities" : [
{
"tableName" : "account" ,
2023-01-13 09:59:23 +00:00
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `address` TEXT NOT NULL, `resource` TEXT, `randomSeed` BLOB, `enabled` INTEGER NOT NULL, `quickStartAvailable` INTEGER NOT NULL, `pendingRegistration` INTEGER NOT NULL, `loggedInSuccessfully` INTEGER NOT NULL, `showErrorNotification` INTEGER NOT NULL, `rosterVersion` TEXT, `hostname` TEXT, `port` INTEGER, `directTls` INTEGER, `proxytype` TEXT, `proxyhostname` TEXT, `proxyport` INTEGER)" ,
2023-01-10 10:05:03 +00:00
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "address" ,
"columnName" : "address" ,
"affinity" : "TEXT" ,
"notNull" : true
} ,
{
"fieldPath" : "resource" ,
"columnName" : "resource" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "randomSeed" ,
"columnName" : "randomSeed" ,
"affinity" : "BLOB" ,
"notNull" : false
} ,
{
"fieldPath" : "enabled" ,
"columnName" : "enabled" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
2023-01-13 09:59:23 +00:00
{
"fieldPath" : "quickStartAvailable" ,
"columnName" : "quickStartAvailable" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "pendingRegistration" ,
"columnName" : "pendingRegistration" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "loggedInSuccessfully" ,
"columnName" : "loggedInSuccessfully" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "showErrorNotification" ,
"columnName" : "showErrorNotification" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
2023-01-10 10:05:03 +00:00
{
"fieldPath" : "rosterVersion" ,
"columnName" : "rosterVersion" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "connection.hostname" ,
"columnName" : "hostname" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "connection.port" ,
"columnName" : "port" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "connection.directTls" ,
"columnName" : "directTls" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "proxy.type" ,
"columnName" : "proxytype" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "proxy.hostname" ,
"columnName" : "proxyhostname" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "proxy.port" ,
"columnName" : "proxyport" ,
"affinity" : "INTEGER" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_account_address" ,
"unique" : true ,
"columnNames" : [
"address"
] ,
"orders" : [ ] ,
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_account_address` ON `${TABLE_NAME}` (`address`)"
}
] ,
"foreignKeys" : [ ]
} ,
{
"tableName" : "blocked" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `accountId` INTEGER NOT NULL, `address` TEXT NOT NULL, FOREIGN KEY(`accountId`) REFERENCES `account`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "accountId" ,
"columnName" : "accountId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "address" ,
"columnName" : "address" ,
"affinity" : "TEXT" ,
"notNull" : true
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_blocked_accountId_address" ,
"unique" : true ,
"columnNames" : [
"accountId" ,
"address"
] ,
"orders" : [ ] ,
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_blocked_accountId_address` ON `${TABLE_NAME}` (`accountId`, `address`)"
}
] ,
"foreignKeys" : [
{
"table" : "account" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"accountId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "chat" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `accountId` INTEGER NOT NULL, `address` TEXT NOT NULL, `type` TEXT, `archived` INTEGER NOT NULL, FOREIGN KEY(`accountId`) REFERENCES `account`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "accountId" ,
"columnName" : "accountId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "address" ,
"columnName" : "address" ,
"affinity" : "TEXT" ,
"notNull" : true
} ,
{
"fieldPath" : "type" ,
"columnName" : "type" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "archived" ,
"columnName" : "archived" ,
"affinity" : "INTEGER" ,
"notNull" : true
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_chat_accountId_address" ,
"unique" : true ,
"columnNames" : [
"accountId" ,
"address"
] ,
"orders" : [ ] ,
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_chat_accountId_address` ON `${TABLE_NAME}` (`accountId`, `address`)"
}
] ,
"foreignKeys" : [
{
"table" : "account" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"accountId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "disco" ,
2023-01-16 18:53:38 +00:00
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `accountId` INTEGER NOT NULL, `capsHash` BLOB, `caps2HashSha256` BLOB, FOREIGN KEY(`accountId`) REFERENCES `account`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
2023-01-10 10:05:03 +00:00
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
2023-01-16 09:45:18 +00:00
{
"fieldPath" : "accountId" ,
"columnName" : "accountId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
2023-01-10 10:05:03 +00:00
{
"fieldPath" : "capsHash" ,
"columnName" : "capsHash" ,
"affinity" : "BLOB" ,
"notNull" : false
} ,
{
2023-01-16 18:53:38 +00:00
"fieldPath" : "caps2HashSha256" ,
"columnName" : "caps2HashSha256" ,
2023-01-10 10:05:03 +00:00
"affinity" : "BLOB" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
2023-01-16 18:53:38 +00:00
"name" : "index_disco_accountId_capsHash" ,
2023-01-10 10:05:03 +00:00
"unique" : false ,
"columnNames" : [
2023-01-16 18:53:38 +00:00
"accountId" ,
"capsHash"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_accountId_capsHash` ON `${TABLE_NAME}` (`accountId`, `capsHash`)"
} ,
{
"name" : "index_disco_accountId_caps2HashSha256" ,
"unique" : true ,
"columnNames" : [
"accountId" ,
"caps2HashSha256"
2023-01-10 10:05:03 +00:00
] ,
"orders" : [ ] ,
2023-01-16 18:53:38 +00:00
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_disco_accountId_caps2HashSha256` ON `${TABLE_NAME}` (`accountId`, `caps2HashSha256`)"
2023-01-10 10:05:03 +00:00
}
] ,
"foreignKeys" : [
{
"table" : "account" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"accountId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "disco_ext" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `discoId` INTEGER NOT NULL, FOREIGN KEY(`discoId`) REFERENCES `disco`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "discoId" ,
"columnName" : "discoId" ,
"affinity" : "INTEGER" ,
"notNull" : true
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_disco_ext_discoId" ,
"unique" : false ,
"columnNames" : [
"discoId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_ext_discoId` ON `${TABLE_NAME}` (`discoId`)"
}
] ,
"foreignKeys" : [
{
"table" : "disco" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"discoId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "disco_ext_field" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `extensionId` INTEGER NOT NULL, `field` TEXT, FOREIGN KEY(`extensionId`) REFERENCES `disco_ext`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "extensionId" ,
"columnName" : "extensionId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "field" ,
"columnName" : "field" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_disco_ext_field_extensionId" ,
"unique" : false ,
"columnNames" : [
"extensionId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_ext_field_extensionId` ON `${TABLE_NAME}` (`extensionId`)"
}
] ,
"foreignKeys" : [
{
"table" : "disco_ext" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"extensionId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "disco_ext_field_value" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `fieldId` INTEGER NOT NULL, `value` TEXT, FOREIGN KEY(`fieldId`) REFERENCES `disco_ext`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "fieldId" ,
"columnName" : "fieldId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "value" ,
"columnName" : "value" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_disco_ext_field_value_fieldId" ,
"unique" : false ,
"columnNames" : [
"fieldId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_ext_field_value_fieldId` ON `${TABLE_NAME}` (`fieldId`)"
}
] ,
"foreignKeys" : [
{
"table" : "disco_ext" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"fieldId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "disco_feature" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `discoId` INTEGER NOT NULL, `feature` TEXT NOT NULL, FOREIGN KEY(`discoId`) REFERENCES `disco`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "discoId" ,
"columnName" : "discoId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "feature" ,
"columnName" : "feature" ,
"affinity" : "TEXT" ,
"notNull" : true
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_disco_feature_discoId" ,
"unique" : false ,
"columnNames" : [
"discoId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_feature_discoId` ON `${TABLE_NAME}` (`discoId`)"
}
] ,
"foreignKeys" : [
{
"table" : "disco" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"discoId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "disco_identity" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `discoId` INTEGER NOT NULL, `category` TEXT, `type` TEXT, `name` TEXT, FOREIGN KEY(`discoId`) REFERENCES `disco`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "discoId" ,
"columnName" : "discoId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "category" ,
"columnName" : "category" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "type" ,
"columnName" : "type" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "name" ,
"columnName" : "name" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_disco_identity_discoId" ,
"unique" : false ,
"columnNames" : [
"discoId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_identity_discoId` ON `${TABLE_NAME}` (`discoId`)"
}
] ,
"foreignKeys" : [
{
"table" : "disco" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"discoId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
2023-01-16 09:45:18 +00:00
{
"tableName" : "disco_item" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `accountId` INTEGER NOT NULL, `address` TEXT NOT NULL, `node` TEXT, `parent` TEXT, `discoId` INTEGER, FOREIGN KEY(`accountId`) REFERENCES `account`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE , FOREIGN KEY(`discoId`) REFERENCES `disco`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "accountId" ,
"columnName" : "accountId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "address" ,
"columnName" : "address" ,
"affinity" : "TEXT" ,
"notNull" : true
} ,
{
"fieldPath" : "node" ,
"columnName" : "node" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "parent" ,
"columnName" : "parent" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "discoId" ,
"columnName" : "discoId" ,
"affinity" : "INTEGER" ,
"notNull" : false
}
] ,
"primaryKey" : {
"autoGenerate" : true ,
"columnNames" : [
"id"
]
} ,
"indices" : [
{
"name" : "index_disco_item_accountId_address_node" ,
"unique" : true ,
"columnNames" : [
"accountId" ,
"address" ,
"node"
] ,
"orders" : [ ] ,
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_disco_item_accountId_address_node` ON `${TABLE_NAME}` (`accountId`, `address`, `node`)"
} ,
{
"name" : "index_disco_item_accountId_parent" ,
"unique" : false ,
"columnNames" : [
"accountId" ,
"parent"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_item_accountId_parent` ON `${TABLE_NAME}` (`accountId`, `parent`)"
} ,
{
"name" : "index_disco_item_discoId" ,
"unique" : false ,
"columnNames" : [
"discoId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_disco_item_discoId` ON `${TABLE_NAME}` (`discoId`)"
}
] ,
"foreignKeys" : [
{
"table" : "account" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"accountId"
] ,
"referencedColumns" : [
"id"
]
} ,
{
"table" : "disco" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"discoId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
2023-01-10 10:05:03 +00:00
{
"tableName" : "message" ,
2023-01-14 10:52:07 +00:00
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `chatId` INTEGER NOT NULL, `receivedAt` INTEGER, `sentAt` INTEGER, `bareTo` TEXT, `toResource` TEXT, `bareFrom` TEXT, `fromResource` TEXT, `occupantId` TEXT, `messageId` TEXT, `stanzaId` TEXT, `acknowledged` INTEGER NOT NULL, FOREIGN KEY(`chatId`) REFERENCES `chat`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
2023-01-10 10:05:03 +00:00
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "chatId" ,
"columnName" : "chatId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "receivedAt" ,
"columnName" : "receivedAt" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "sentAt" ,
"columnName" : "sentAt" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "bareTo" ,
"columnName" : "bareTo" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "toResource" ,
"columnName" : "toResource" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "bareFrom" ,
"columnName" : "bareFrom" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "fromResource" ,
"columnName" : "fromResource" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "occupantId" ,
"columnName" : "occupantId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "messageId" ,
"columnName" : "messageId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "stanzaId" ,
"columnName" : "stanzaId" ,
"affinity" : "TEXT" ,
"notNull" : false
2023-01-14 10:52:07 +00:00
} ,
{
"fieldPath" : "acknowledged" ,
"columnName" : "acknowledged" ,
"affinity" : "INTEGER" ,
"notNull" : true
2023-01-10 10:05:03 +00:00
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_message_chatId" ,
"unique" : false ,
"columnNames" : [
"chatId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_message_chatId` ON `${TABLE_NAME}` (`chatId`)"
}
] ,
"foreignKeys" : [
{
"table" : "chat" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"chatId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "message_part" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `messageVersionId` INTEGER NOT NULL, `language` TEXT, `type` TEXT, `body` TEXT, `url` TEXT, FOREIGN KEY(`messageVersionId`) REFERENCES `message_version`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "messageVersionId" ,
"columnName" : "messageVersionId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "language" ,
"columnName" : "language" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "type" ,
"columnName" : "type" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "body" ,
"columnName" : "body" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "url" ,
"columnName" : "url" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_message_part_messageVersionId" ,
"unique" : false ,
"columnNames" : [
"messageVersionId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_message_part_messageVersionId` ON `${TABLE_NAME}` (`messageVersionId`)"
}
] ,
"foreignKeys" : [
{
"table" : "message_version" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"messageVersionId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "message_version" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `messageEntityId` INTEGER NOT NULL, `messageId` TEXT, `stanzaId` TEXT, `modification` TEXT, `modifiedBy` TEXT, `modifiedByResource` TEXT, `occupantId` TEXT, `receivedAt` INTEGER, FOREIGN KEY(`messageId`) REFERENCES `message`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "messageEntityId" ,
"columnName" : "messageEntityId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "messageId" ,
"columnName" : "messageId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "stanzaId" ,
"columnName" : "stanzaId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "modification" ,
"columnName" : "modification" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "modifiedBy" ,
"columnName" : "modifiedBy" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "modifiedByResource" ,
"columnName" : "modifiedByResource" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "occupantId" ,
"columnName" : "occupantId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "receivedAt" ,
"columnName" : "receivedAt" ,
"affinity" : "INTEGER" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_message_version_messageId" ,
"unique" : false ,
"columnNames" : [
"messageId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_message_version_messageId` ON `${TABLE_NAME}` (`messageId`)"
}
] ,
"foreignKeys" : [
{
"table" : "message" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"messageId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "presence" ,
2023-01-13 09:59:23 +00:00
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `accountId` INTEGER NOT NULL, `address` TEXT NOT NULL, `resource` TEXT, `type` TEXT, `show` TEXT, `status` TEXT, `vCardPhoto` TEXT, `occupantId` TEXT, `mucUserAffiliation` TEXT, `mucUserRole` TEXT, `mucUserJid` TEXT, `mucUserSelf` INTEGER NOT NULL, FOREIGN KEY(`accountId`) REFERENCES `account`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
2023-01-10 10:05:03 +00:00
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "accountId" ,
"columnName" : "accountId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "address" ,
"columnName" : "address" ,
"affinity" : "TEXT" ,
"notNull" : true
} ,
{
"fieldPath" : "resource" ,
"columnName" : "resource" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "type" ,
"columnName" : "type" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "show" ,
"columnName" : "show" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "status" ,
"columnName" : "status" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "vCardPhoto" ,
"columnName" : "vCardPhoto" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "occupantId" ,
"columnName" : "occupantId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "mucUserAffiliation" ,
"columnName" : "mucUserAffiliation" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "mucUserRole" ,
"columnName" : "mucUserRole" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "mucUserJid" ,
"columnName" : "mucUserJid" ,
"affinity" : "TEXT" ,
"notNull" : false
2023-01-13 09:59:23 +00:00
} ,
{
"fieldPath" : "mucUserSelf" ,
"columnName" : "mucUserSelf" ,
"affinity" : "INTEGER" ,
"notNull" : true
2023-01-10 10:05:03 +00:00
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_presence_accountId_address_resource" ,
"unique" : true ,
"columnNames" : [
"accountId" ,
"address" ,
"resource"
] ,
"orders" : [ ] ,
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_presence_accountId_address_resource` ON `${TABLE_NAME}` (`accountId`, `address`, `resource`)"
}
] ,
"foreignKeys" : [
{
"table" : "account" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"accountId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "message_reaction" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `messageEntityId` INTEGER NOT NULL, `stanzaId` TEXT, `messageId` TEXT, `reactionBy` TEXT, `reactionByResource` TEXT, `occupantId` TEXT, `receivedAt` INTEGER, `reaction` TEXT, FOREIGN KEY(`messageEntityId`) REFERENCES `message`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "messageEntityId" ,
"columnName" : "messageEntityId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "stanzaId" ,
"columnName" : "stanzaId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "messageId" ,
"columnName" : "messageId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "reactionBy" ,
"columnName" : "reactionBy" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "reactionByResource" ,
"columnName" : "reactionByResource" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "occupantId" ,
"columnName" : "occupantId" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
"fieldPath" : "receivedAt" ,
"columnName" : "receivedAt" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "reaction" ,
"columnName" : "reaction" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_message_reaction_messageEntityId" ,
"unique" : false ,
"columnNames" : [
"messageEntityId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_message_reaction_messageEntityId` ON `${TABLE_NAME}` (`messageEntityId`)"
}
] ,
"foreignKeys" : [
{
"table" : "message" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"messageEntityId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "roster" ,
2023-01-15 09:11:49 +00:00
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `accountId` INTEGER NOT NULL, `address` TEXT NOT NULL, `subscription` TEXT, `isPendingOut` INTEGER NOT NULL, `name` TEXT, FOREIGN KEY(`accountId`) REFERENCES `account`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
2023-01-10 10:05:03 +00:00
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "accountId" ,
"columnName" : "accountId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "address" ,
"columnName" : "address" ,
"affinity" : "TEXT" ,
"notNull" : true
} ,
{
"fieldPath" : "subscription" ,
"columnName" : "subscription" ,
"affinity" : "TEXT" ,
"notNull" : false
} ,
{
2023-01-15 09:11:49 +00:00
"fieldPath" : "isPendingOut" ,
"columnName" : "isPendingOut" ,
2023-01-10 10:05:03 +00:00
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "name" ,
"columnName" : "name" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_roster_accountId_address" ,
"unique" : true ,
"columnNames" : [
"accountId" ,
"address"
] ,
"orders" : [ ] ,
"createSql" : "CREATE UNIQUE INDEX IF NOT EXISTS `index_roster_accountId_address` ON `${TABLE_NAME}` (`accountId`, `address`)"
}
] ,
"foreignKeys" : [
{
"table" : "account" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"accountId"
] ,
"referencedColumns" : [
"id"
]
}
]
} ,
{
"tableName" : "roster_group" ,
"createSql" : "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `rosterItemId` INTEGER NOT NULL, `name` TEXT, FOREIGN KEY(`rosterItemId`) REFERENCES `roster`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )" ,
"fields" : [
{
"fieldPath" : "id" ,
"columnName" : "id" ,
"affinity" : "INTEGER" ,
"notNull" : false
} ,
{
"fieldPath" : "rosterItemId" ,
"columnName" : "rosterItemId" ,
"affinity" : "INTEGER" ,
"notNull" : true
} ,
{
"fieldPath" : "name" ,
"columnName" : "name" ,
"affinity" : "TEXT" ,
"notNull" : false
}
] ,
"primaryKey" : {
2023-01-16 09:45:18 +00:00
"autoGenerate" : true ,
2023-01-10 10:05:03 +00:00
"columnNames" : [
"id"
2023-01-16 09:45:18 +00:00
]
2023-01-10 10:05:03 +00:00
} ,
"indices" : [
{
"name" : "index_roster_group_rosterItemId" ,
"unique" : false ,
"columnNames" : [
"rosterItemId"
] ,
"orders" : [ ] ,
"createSql" : "CREATE INDEX IF NOT EXISTS `index_roster_group_rosterItemId` ON `${TABLE_NAME}` (`rosterItemId`)"
}
] ,
"foreignKeys" : [
{
"table" : "roster" ,
"onDelete" : "CASCADE" ,
"onUpdate" : "NO ACTION" ,
"columns" : [
"rosterItemId"
] ,
"referencedColumns" : [
"id"
]
}
]
}
] ,
"views" : [ ] ,
"setupQueries" : [
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)" ,
2023-01-16 18:53:38 +00:00
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'adc70f7066828bb6cf1fc32aa3a24b2f')"
2023-01-10 10:05:03 +00:00
]
}
}