| 
									
										
										
										
											2021-01-30 22:17:29 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "entity_changes" (
 | 
					
						
							|  |  |  |                                                 `id`	INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
 | 
					
						
							|  |  |  |                                                 `entityName`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                                 `entityId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                                 `hash`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                                 `isErased` INT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2021-11-18 22:33:08 +01:00
										 |  |  |                                                 `changeId` TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2022-01-09 20:16:39 +01:00
										 |  |  |                                                 `componentId` TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2022-01-09 21:25:15 +01:00
										 |  |  |                                                 `instanceId` TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2021-01-30 22:17:29 +01:00
										 |  |  |                                                 `isSynced` INTEGER NOT NULL,
 | 
					
						
							|  |  |  |                                                 `utcDateChanged` TEXT NOT NULL
 | 
					
						
							|  |  |  |                                                 );
 | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "etapi_tokens"
 | 
					
						
							| 
									
										
										
										
											2018-01-11 00:01:16 -05:00
										 |  |  | (
 | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  |     etapiTokenId TEXT PRIMARY KEY NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  |     name TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  |     tokenHash TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2021-01-30 22:17:29 +01:00
										 |  |  |     utcDateCreated TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2022-01-10 21:24:07 +01:00
										 |  |  |     utcDateModified TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2021-01-30 22:17:29 +01:00
										 |  |  |     isDeleted INT NOT NULL DEFAULT 0);
 | 
					
						
							| 
									
										
										
										
											2020-01-03 10:48:36 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "branches" (
 | 
					
						
							|  |  |  |                                           `branchId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                           `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                           `parentNoteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                           `notePosition`	INTEGER NOT NULL,
 | 
					
						
							|  |  |  |                                           `prefix`	TEXT,
 | 
					
						
							|  |  |  |                                           `isExpanded`	INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                           `isDeleted`	INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                           `deleteId`    TEXT DEFAULT NULL,
 | 
					
						
							| 
									
										
										
										
											2021-11-21 13:44:52 +01:00
										 |  |  |                                           `utcDateModified`	TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2020-01-03 10:48:36 +01:00
										 |  |  |                                           PRIMARY KEY(`branchId`));
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  | CREATE TABLE IF NOT EXISTS "notes" (
 | 
					
						
							|  |  |  |                                        `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                        `title`	TEXT NOT NULL DEFAULT "note",
 | 
					
						
							|  |  |  |                                        `isProtected`	INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                        `type` TEXT NOT NULL DEFAULT 'text',
 | 
					
						
							|  |  |  |                                        `mime` TEXT NOT NULL DEFAULT 'text/html',
 | 
					
						
							| 
									
										
										
										
											2023-06-04 23:01:40 +02:00
										 |  |  |                                        blobId TEXT DEFAULT NULL,
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  |                                        `isDeleted`	INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                        `deleteId`   TEXT DEFAULT NULL,
 | 
					
						
							|  |  |  |                                        `dateCreated`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                        `dateModified`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                        `utcDateCreated`	TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2023-06-04 23:01:40 +02:00
										 |  |  |                                        `utcDateModified`	TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  |                                        PRIMARY KEY(`noteId`));
 | 
					
						
							| 
									
										
										
										
											2023-06-04 23:01:40 +02:00
										 |  |  | CREATE TABLE IF NOT EXISTS "revisions" (`revisionId`	TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  |                                              `noteId`	TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2020-12-15 15:30:46 +01:00
										 |  |  |                                              type TEXT DEFAULT '' NOT NULL,
 | 
					
						
							|  |  |  |                                              mime TEXT DEFAULT '' NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |                                              `title`	TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  |                                              `isProtected`	INT NOT NULL DEFAULT 0,
 | 
					
						
							| 
									
										
										
										
											2023-06-04 23:01:40 +02:00
										 |  |  |                                             blobId TEXT DEFAULT NULL,
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  |                                              `utcDateLastEdited` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              `utcDateCreated` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              `utcDateModified` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              `dateLastEdited` TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2023-06-04 23:01:40 +02:00
										 |  |  |                                              `dateCreated` TEXT NOT NULL);
 | 
					
						
							| 
									
										
										
										
											2020-12-15 15:30:46 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "options"
 | 
					
						
							|  |  |  | (
 | 
					
						
							|  |  |  |     name TEXT not null PRIMARY KEY,
 | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     value TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2020-12-15 15:30:46 +01:00
										 |  |  |     isSynced INTEGER default 0 not null,
 | 
					
						
							|  |  |  |     utcDateModified TEXT NOT NULL
 | 
					
						
							| 
									
										
										
										
											2020-08-18 22:37:23 +02:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2020-12-15 15:30:46 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "attributes"
 | 
					
						
							|  |  |  | (
 | 
					
						
							|  |  |  |     attributeId      TEXT not null primary key,
 | 
					
						
							|  |  |  |     noteId       TEXT not null,
 | 
					
						
							|  |  |  |     type         TEXT not null,
 | 
					
						
							|  |  |  |     name         TEXT not null,
 | 
					
						
							|  |  |  |     value        TEXT default '' not null,
 | 
					
						
							|  |  |  |     position     INT  default 0 not null,
 | 
					
						
							|  |  |  |     utcDateModified TEXT not null,
 | 
					
						
							|  |  |  |     isDeleted    INT  not null,
 | 
					
						
							|  |  |  |     `deleteId`    TEXT DEFAULT NULL,
 | 
					
						
							|  |  |  |     isInheritable int DEFAULT 0 NULL);
 | 
					
						
							| 
									
										
										
										
											2021-01-30 22:17:29 +01:00
										 |  |  | CREATE UNIQUE INDEX `IDX_entityChanges_entityName_entityId` ON "entity_changes" (
 | 
					
						
							|  |  |  |                                                                                  `entityName`,
 | 
					
						
							|  |  |  |                                                                                  `entityId`
 | 
					
						
							|  |  |  |     );
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_branches_noteId_parentNoteId` ON `branches` (`noteId`,`parentNoteId`);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_branches_parentNoteId ON branches (parentNoteId);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_notes_title` ON `notes` (`title`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_notes_type` ON `notes` (`type`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_notes_dateCreated` ON `notes` (`dateCreated`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_notes_dateModified` ON `notes` (`dateModified`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_notes_utcDateModified` ON `notes` (`utcDateModified`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_notes_utcDateCreated` ON `notes` (`utcDateCreated`);
 | 
					
						
							| 
									
										
										
										
											2023-06-04 23:01:40 +02:00
										 |  |  | CREATE INDEX `IDX_revisions_noteId` ON `revisions` (`noteId`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_revisions_utcDateCreated` ON `revisions` (`utcDateCreated`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_revisions_utcDateLastEdited` ON `revisions` (`utcDateLastEdited`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_revisions_dateCreated` ON `revisions` (`dateCreated`);
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_revisions_dateLastEdited` ON `revisions` (`dateLastEdited`);
 | 
					
						
							| 
									
										
										
										
											2022-01-09 21:25:15 +01:00
										 |  |  | CREATE INDEX `IDX_entity_changes_changeId` ON `entity_changes` (`changeId`);
 | 
					
						
							| 
									
										
										
										
											2020-12-10 22:53:52 +01:00
										 |  |  | CREATE INDEX IDX_attributes_name_value
 | 
					
						
							|  |  |  |     on attributes (name, value);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attributes_noteId_index
 | 
					
						
							|  |  |  |     on attributes (noteId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attributes_value_index
 | 
					
						
							|  |  |  |     on attributes (value);
 | 
					
						
							| 
									
										
										
										
											2021-02-12 23:30:11 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "recent_notes"
 | 
					
						
							|  |  |  | (
 | 
					
						
							|  |  |  |     noteId TEXT not null primary key,
 | 
					
						
							|  |  |  |     notePath TEXT not null,
 | 
					
						
							|  |  |  |     utcDateCreated TEXT not null
 | 
					
						
							|  |  |  | );
 | 
					
						
							| 
									
										
										
										
											2023-04-01 23:55:04 +02:00
										 |  |  | CREATE TABLE IF NOT EXISTS "blobs" (
 | 
					
						
							|  |  |  |                                                `blobId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                                `content`	TEXT NULL DEFAULT NULL,
 | 
					
						
							|  |  |  |                                                `dateModified` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                                `utcDateModified` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                                PRIMARY KEY(`blobId`)
 | 
					
						
							|  |  |  | );
 | 
					
						
							| 
									
										
										
										
											2023-03-16 12:17:55 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "attachments"
 | 
					
						
							| 
									
										
										
										
											2023-03-08 09:01:23 +01:00
										 |  |  | (
 | 
					
						
							| 
									
										
										
										
											2023-03-16 12:17:55 +01:00
										 |  |  |     attachmentId      TEXT not null primary key,
 | 
					
						
							| 
									
										
										
										
											2023-07-14 17:01:56 +02:00
										 |  |  |     ownerId       TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2023-03-16 12:17:55 +01:00
										 |  |  |     role         TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2023-03-08 09:01:23 +01:00
										 |  |  |     mime         TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2023-03-16 12:17:55 +01:00
										 |  |  |     title         TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2023-03-08 09:01:23 +01:00
										 |  |  |     isProtected    INT  not null DEFAULT 0,
 | 
					
						
							| 
									
										
										
										
											2023-04-11 22:55:50 +02:00
										 |  |  |     position     INT  default 0 not null,
 | 
					
						
							| 
									
										
										
										
											2023-03-16 18:34:39 +01:00
										 |  |  |     blobId    TEXT DEFAULT null,
 | 
					
						
							| 
									
										
										
										
											2023-04-03 23:47:24 +02:00
										 |  |  |     dateModified TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2023-03-08 09:01:23 +01:00
										 |  |  |     utcDateModified TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2023-04-21 00:19:17 +02:00
										 |  |  |     utcDateScheduledForErasureSince TEXT DEFAULT NULL,
 | 
					
						
							| 
									
										
										
										
											2023-03-08 09:01:23 +01:00
										 |  |  |     isDeleted    INT  not null,
 | 
					
						
							| 
									
										
										
										
											2023-03-16 12:17:55 +01:00
										 |  |  |     deleteId    TEXT DEFAULT NULL);
 | 
					
						
							| 
									
										
										
										
											2023-07-14 17:01:56 +02:00
										 |  |  | CREATE INDEX IDX_attachments_ownerId_role
 | 
					
						
							|  |  |  |     on attachments (ownerId, role);
 | 
					
						
							| 
									
										
										
										
											2023-07-27 21:40:47 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | CREATE INDEX IDX_notes_blobId on notes (blobId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_revisions_blobId on revisions (blobId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attachments_blobId on attachments (blobId);
 | 
					
						
							| 
									
										
										
										
											2025-03-08 23:01:45 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE IF NOT EXISTS "note_embeddings" (
 | 
					
						
							|  |  |  |     "embedId" TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							|  |  |  |     "noteId" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "providerId" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "modelId" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "dimension" INTEGER NOT NULL,
 | 
					
						
							|  |  |  |     "embedding" BLOB NOT NULL,
 | 
					
						
							|  |  |  |     "version" INTEGER NOT NULL DEFAULT 1,
 | 
					
						
							|  |  |  |     "dateCreated" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "utcDateCreated" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "dateModified" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "utcDateModified" TEXT NOT NULL
 | 
					
						
							|  |  |  | );
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CREATE INDEX "IDX_note_embeddings_noteId" ON "note_embeddings" ("noteId");
 | 
					
						
							|  |  |  | CREATE INDEX "IDX_note_embeddings_providerId_modelId" ON "note_embeddings" ("providerId", "modelId");
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE IF NOT EXISTS "embedding_queue" (
 | 
					
						
							|  |  |  |     "noteId" TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							|  |  |  |     "operation" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "dateQueued" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "utcDateQueued" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "priority" INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |     "attempts" INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |     "lastAttempt" TEXT NULL,
 | 
					
						
							| 
									
										
										
										
											2025-03-12 21:04:06 +00:00
										 |  |  |     "error" TEXT NULL,
 | 
					
						
							|  |  |  |     "failed" INTEGER NOT NULL DEFAULT 0
 | 
					
						
							| 
									
										
										
										
											2025-03-08 23:01:45 +00:00
										 |  |  | );
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE IF NOT EXISTS "embedding_providers" (
 | 
					
						
							|  |  |  |     "providerId" TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							|  |  |  |     "name" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "isEnabled" INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |     "priority" INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |     "config" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "dateCreated" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "utcDateCreated" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "dateModified" TEXT NOT NULL,
 | 
					
						
							|  |  |  |     "utcDateModified" TEXT NOT NULL
 | 
					
						
							|  |  |  | );
 |