diff --git a/apps/server/src/becca/becca-interface.ts b/apps/server/src/becca/becca-interface.ts index 3bc470b5c..7620ef3f5 100644 --- a/apps/server/src/becca/becca-interface.ts +++ b/apps/server/src/becca/becca-interface.ts @@ -8,7 +8,7 @@ import type BAttribute from "./entities/battribute.js"; import type BBranch from "./entities/bbranch.js"; import BRevision from "./entities/brevision.js"; import BAttachment from "./entities/battachment.js"; -import type { AttachmentRow, BlobRow, RevisionRow } from "./entities/rows.js"; +import type { AttachmentRow, BlobRow, RevisionRow } from "@triliumnext/commons"; import BBlob from "./entities/bblob.js"; import BRecentNote from "./entities/brecent_note.js"; import type AbstractBeccaEntity from "./entities/abstract_becca_entity.js"; diff --git a/apps/server/src/becca/becca_loader.ts b/apps/server/src/becca/becca_loader.ts index 4e6154e4a..4506c912a 100644 --- a/apps/server/src/becca/becca_loader.ts +++ b/apps/server/src/becca/becca_loader.ts @@ -11,7 +11,7 @@ import BOption from "./entities/boption.js"; import BEtapiToken from "./entities/betapi_token.js"; import cls from "../services/cls.js"; import entityConstructor from "../becca/entity_constructor.js"; -import type { AttributeRow, BranchRow, EtapiTokenRow, NoteRow, OptionRow } from "./entities/rows.js"; +import type { AttributeRow, BranchRow, EtapiTokenRow, NoteRow, OptionRow } from "@triliumnext/commons"; import type AbstractBeccaEntity from "./entities/abstract_becca_entity.js"; import ws from "../services/ws.js"; diff --git a/apps/server/src/becca/entities/battachment.ts b/apps/server/src/becca/entities/battachment.ts index b4d0c4d18..ecf7af3cd 100644 --- a/apps/server/src/becca/entities/battachment.ts +++ b/apps/server/src/becca/entities/battachment.ts @@ -6,7 +6,7 @@ import AbstractBeccaEntity from "./abstract_becca_entity.js"; import sql from "../../services/sql.js"; import protectedSessionService from "../../services/protected_session.js"; import log from "../../services/log.js"; -import type { AttachmentRow } from "./rows.js"; +import type { AttachmentRow } from "@triliumnext/commons"; import type BNote from "./bnote.js"; import type BBranch from "./bbranch.js"; import noteService from "../../services/notes.js"; diff --git a/apps/server/src/becca/entities/battribute.ts b/apps/server/src/becca/entities/battribute.ts index 3bdf208c8..bf4715a29 100644 --- a/apps/server/src/becca/entities/battribute.ts +++ b/apps/server/src/becca/entities/battribute.ts @@ -5,7 +5,7 @@ import AbstractBeccaEntity from "./abstract_becca_entity.js"; import dateUtils from "../../services/date_utils.js"; import promotedAttributeDefinitionParser from "../../services/promoted_attribute_definition_parser.js"; import sanitizeAttributeName from "../../services/sanitize_attribute_name.js"; -import type { AttributeRow, AttributeType } from "./rows.js"; +import type { AttributeRow, AttributeType } from "@triliumnext/commons"; interface SavingOpts { skipValidation?: boolean; diff --git a/apps/server/src/becca/entities/bblob.ts b/apps/server/src/becca/entities/bblob.ts index e52286ba7..2cff185d5 100644 --- a/apps/server/src/becca/entities/bblob.ts +++ b/apps/server/src/becca/entities/bblob.ts @@ -1,5 +1,5 @@ import AbstractBeccaEntity from "./abstract_becca_entity.js"; -import type { BlobRow } from "./rows.js"; +import type { BlobRow } from "@triliumnext/commons"; // TODO: Why this does not extend the abstract becca? class BBlob extends AbstractBeccaEntity { diff --git a/apps/server/src/becca/entities/bbranch.ts b/apps/server/src/becca/entities/bbranch.ts index 018f8f2f7..d9db10167 100644 --- a/apps/server/src/becca/entities/bbranch.ts +++ b/apps/server/src/becca/entities/bbranch.ts @@ -7,7 +7,7 @@ import utils from "../../services/utils.js"; import TaskContext from "../../services/task_context.js"; import cls from "../../services/cls.js"; import log from "../../services/log.js"; -import type { BranchRow } from "./rows.js"; +import type { BranchRow } from "@triliumnext/commons"; import handlers from "../../services/handlers.js"; /** diff --git a/apps/server/src/becca/entities/betapi_token.ts b/apps/server/src/becca/entities/betapi_token.ts index e6e9500c0..3d920b99b 100644 --- a/apps/server/src/becca/entities/betapi_token.ts +++ b/apps/server/src/becca/entities/betapi_token.ts @@ -1,6 +1,6 @@ "use strict"; -import type { EtapiTokenRow } from "./rows.js"; +import type { EtapiTokenRow } from "@triliumnext/commons"; import dateUtils from "../../services/date_utils.js"; import AbstractBeccaEntity from "./abstract_becca_entity.js"; diff --git a/apps/server/src/becca/entities/bnote.ts b/apps/server/src/becca/entities/bnote.ts index cda4d5f2f..3813b5bbc 100644 --- a/apps/server/src/becca/entities/bnote.ts +++ b/apps/server/src/becca/entities/bnote.ts @@ -14,7 +14,7 @@ import TaskContext from "../../services/task_context.js"; import dayjs from "dayjs"; import utc from "dayjs/plugin/utc.js"; import eventService from "../../services/events.js"; -import type { AttachmentRow, AttributeType, NoteRow, NoteType, RevisionRow } from "./rows.js"; +import type { AttachmentRow, AttributeType, NoteRow, NoteType, RevisionRow } from "@triliumnext/commons"; import type BBranch from "./bbranch.js"; import BAttribute from "./battribute.js"; import type { NotePojo } from "../becca-interface.js"; diff --git a/apps/server/src/becca/entities/bnote_embedding.ts b/apps/server/src/becca/entities/bnote_embedding.ts index 2f696ee6f..515e60244 100644 --- a/apps/server/src/becca/entities/bnote_embedding.ts +++ b/apps/server/src/becca/entities/bnote_embedding.ts @@ -1,6 +1,6 @@ import AbstractBeccaEntity from "./abstract_becca_entity.js"; import dateUtils from "../../services/date_utils.js"; -import type { NoteEmbeddingRow } from "./rows.js"; +import type { NoteEmbeddingRow } from "@triliumnext/commons"; /** * Entity representing a note's vector embedding for semantic search and AI features diff --git a/apps/server/src/becca/entities/boption.ts b/apps/server/src/becca/entities/boption.ts index 5839ccbe9..9b3177c16 100644 --- a/apps/server/src/becca/entities/boption.ts +++ b/apps/server/src/becca/entities/boption.ts @@ -2,7 +2,7 @@ import dateUtils from "../../services/date_utils.js"; import AbstractBeccaEntity from "./abstract_becca_entity.js"; -import type { OptionRow } from "./rows.js"; +import type { OptionRow } from "@triliumnext/commons"; /** * Option represents a name-value pair, either directly configurable by the user or some system property. diff --git a/apps/server/src/becca/entities/brecent_note.ts b/apps/server/src/becca/entities/brecent_note.ts index 4ede28c61..bfaa46544 100644 --- a/apps/server/src/becca/entities/brecent_note.ts +++ b/apps/server/src/becca/entities/brecent_note.ts @@ -1,6 +1,6 @@ "use strict"; -import type { RecentNoteRow } from "./rows.js"; +import type { RecentNoteRow } from "@triliumnext/commons"; import dateUtils from "../../services/date_utils.js"; import AbstractBeccaEntity from "./abstract_becca_entity.js"; diff --git a/apps/server/src/becca/entities/brevision.ts b/apps/server/src/becca/entities/brevision.ts index de5dcd19f..4ac03f0ec 100644 --- a/apps/server/src/becca/entities/brevision.ts +++ b/apps/server/src/becca/entities/brevision.ts @@ -7,7 +7,7 @@ import becca from "../becca.js"; import AbstractBeccaEntity from "./abstract_becca_entity.js"; import sql from "../../services/sql.js"; import BAttachment from "./battachment.js"; -import type { AttachmentRow, NoteType, RevisionRow } from "./rows.js"; +import type { AttachmentRow, NoteType, RevisionRow } from "@triliumnext/commons"; import eraseService from "../../services/erase.js"; interface ContentOpts { diff --git a/apps/server/src/etapi/attachments.ts b/apps/server/src/etapi/attachments.ts index 0404e11a1..f8fd9c16d 100644 --- a/apps/server/src/etapi/attachments.ts +++ b/apps/server/src/etapi/attachments.ts @@ -4,7 +4,7 @@ import mappers from "./mappers.js"; import v from "./validators.js"; import utils from "../services/utils.js"; import type { Router } from "express"; -import type { AttachmentRow } from "../becca/entities/rows.js"; +import type { AttachmentRow } from "@triliumnext/commons"; import type { ValidatorMap } from "./etapi-interface.js"; function register(router: Router) { diff --git a/apps/server/src/etapi/attributes.ts b/apps/server/src/etapi/attributes.ts index 91a441117..f3bca6166 100644 --- a/apps/server/src/etapi/attributes.ts +++ b/apps/server/src/etapi/attributes.ts @@ -4,7 +4,7 @@ import mappers from "./mappers.js"; import attributeService from "../services/attributes.js"; import v from "./validators.js"; import type { Router } from "express"; -import type { AttributeRow } from "../becca/entities/rows.js"; +import type { AttributeRow } from "@triliumnext/commons"; import type { ValidatorMap } from "./etapi-interface.js"; function register(router: Router) { diff --git a/apps/server/src/etapi/branches.ts b/apps/server/src/etapi/branches.ts index 7263b3161..dfdadbb98 100644 --- a/apps/server/src/etapi/branches.ts +++ b/apps/server/src/etapi/branches.ts @@ -6,7 +6,7 @@ import mappers from "./mappers.js"; import BBranch from "../becca/entities/bbranch.js"; import entityChangesService from "../services/entity_changes.js"; import v from "./validators.js"; -import type { BranchRow } from "../becca/entities/rows.js"; +import type { BranchRow } from "@triliumnext/commons"; function register(router: Router) { eu.route(router, "get", "/etapi/branches/:branchId", (req, res, next) => { diff --git a/apps/server/src/routes/api/notes.ts b/apps/server/src/routes/api/notes.ts index 853032938..f8e152320 100644 --- a/apps/server/src/routes/api/notes.ts +++ b/apps/server/src/routes/api/notes.ts @@ -12,7 +12,7 @@ import ValidationError from "../../errors/validation_error.js"; import blobService from "../../services/blob.js"; import type { Request } from "express"; import type BBranch from "../../becca/entities/bbranch.js"; -import type { AttributeRow } from "../../becca/entities/rows.js"; +import type { AttributeRow } from "@triliumnext/commons"; /** * @swagger diff --git a/apps/server/src/services/api-interface.ts b/apps/server/src/services/api-interface.ts index bc6506be2..8d837c3b5 100644 --- a/apps/server/src/services/api-interface.ts +++ b/apps/server/src/services/api-interface.ts @@ -1,4 +1,4 @@ -import type { OptionRow } from "../becca/entities/rows.js"; +import type { OptionRow } from "@triliumnext/commons"; /** * Response for /api/setup/status. diff --git a/apps/server/src/services/attribute_formatter.ts b/apps/server/src/services/attribute_formatter.ts index 4385debf3..d67e5c7a3 100644 --- a/apps/server/src/services/attribute_formatter.ts +++ b/apps/server/src/services/attribute_formatter.ts @@ -1,6 +1,6 @@ "use strict"; -import type { AttributeRow } from "../becca/entities/rows.js"; +import type { AttributeRow } from "@triliumnext/commons"; function formatAttrForSearch(attr: AttributeRow, searchWithValue: boolean) { let searchStr = ""; diff --git a/apps/server/src/services/attributes.ts b/apps/server/src/services/attributes.ts index c87defa43..c1fec6808 100644 --- a/apps/server/src/services/attributes.ts +++ b/apps/server/src/services/attributes.ts @@ -7,7 +7,7 @@ import BAttribute from "../becca/entities/battribute.js"; import attributeFormatter from "./attribute_formatter.js"; import BUILTIN_ATTRIBUTES from "./builtin_attributes.js"; import type BNote from "../becca/entities/bnote.js"; -import type { AttributeRow } from "../becca/entities/rows.js"; +import type { AttributeRow } from "@triliumnext/commons"; const ATTRIBUTE_TYPES = new Set(["label", "relation"]); diff --git a/apps/server/src/services/backend_script_api.ts b/apps/server/src/services/backend_script_api.ts index 9ba1591c0..2f3a68029 100644 --- a/apps/server/src/services/backend_script_api.ts +++ b/apps/server/src/services/backend_script_api.ts @@ -31,7 +31,7 @@ import type BAttachment from "../becca/entities/battachment.js"; import type BRevision from "../becca/entities/brevision.js"; import type BEtapiToken from "../becca/entities/betapi_token.js"; import type BOption from "../becca/entities/boption.js"; -import type { AttributeRow } from "../becca/entities/rows.js"; +import type { AttributeRow } from "@triliumnext/commons"; import type Becca from "../becca/becca-interface.js"; import type { NoteParams } from "./note-interface.js"; import type { ApiParams } from "./backend_script_api_interface.js"; diff --git a/apps/server/src/services/consistency_checks.ts b/apps/server/src/services/consistency_checks.ts index 147d6ae74..ec7850572 100644 --- a/apps/server/src/services/consistency_checks.ts +++ b/apps/server/src/services/consistency_checks.ts @@ -14,7 +14,7 @@ import { hash as getHash, hashedBlobId, randomString } from "../services/utils.j import eraseService from "../services/erase.js"; import sanitizeAttributeName from "./sanitize_attribute_name.js"; import noteTypesService from "../services/note_types.js"; -import type { BranchRow } from "../becca/entities/rows.js"; +import type { BranchRow } from "@triliumnext/commons"; import type { EntityChange } from "./entity_changes_interface.js"; import becca_loader from "../becca/becca_loader.js"; const noteTypes = noteTypesService.getNoteTypeNames(); diff --git a/apps/server/src/services/import/enex.ts b/apps/server/src/services/import/enex.ts index ae248ab75..4699ca32e 100644 --- a/apps/server/src/services/import/enex.ts +++ b/apps/server/src/services/import/enex.ts @@ -12,7 +12,7 @@ import sanitizeAttributeName from "../sanitize_attribute_name.js"; import type TaskContext from "../task_context.js"; import type BNote from "../../becca/entities/bnote.js"; import type { File } from "./common.js"; -import type { AttributeType } from "../../becca/entities/rows.js"; +import type { AttributeType } from "@triliumnext/commons"; /** * date format is e.g. 20181121T193703Z or 2013-04-14T16:19:00.000Z (Mac evernote, see #3496) diff --git a/apps/server/src/services/import/mime.ts b/apps/server/src/services/import/mime.ts index 5f050184f..842e12c3e 100644 --- a/apps/server/src/services/import/mime.ts +++ b/apps/server/src/services/import/mime.ts @@ -3,7 +3,7 @@ import mimeTypes from "mime-types"; import path from "path"; import type { TaskData } from "../task_context_interface.js"; -import type { NoteType } from "../../becca/entities/rows.js"; +import type { NoteType } from "@triliumnext/commons"; const CODE_MIME_TYPES = new Set([ "application/json", diff --git a/apps/server/src/services/import/single.ts b/apps/server/src/services/import/single.ts index c1597a562..7603cd625 100644 --- a/apps/server/src/services/import/single.ts +++ b/apps/server/src/services/import/single.ts @@ -12,7 +12,7 @@ import { getNoteTitle, processStringOrBuffer } from "../../services/utils.js"; import importUtils from "./utils.js"; import htmlSanitizer from "../html_sanitizer.js"; import type { File } from "./common.js"; -import type { NoteType } from "../../becca/entities/rows.js"; +import type { NoteType } from "@triliumnext/commons"; function importSingleFile(taskContext: TaskContext, file: File, parentNote: BNote) { const mime = mimeService.getMime(file.originalname) || file.mimetype; diff --git a/apps/server/src/services/import/zip.ts b/apps/server/src/services/import/zip.ts index 899e5ee64..5e795ae54 100644 --- a/apps/server/src/services/import/zip.ts +++ b/apps/server/src/services/import/zip.ts @@ -20,7 +20,7 @@ import type BNote from "../../becca/entities/bnote.js"; import type NoteMeta from "../meta/note_meta.js"; import type AttributeMeta from "../meta/attribute_meta.js"; import type { Stream } from "stream"; -import { ALLOWED_NOTE_TYPES, type NoteType } from "../../becca/entities/rows.js"; +import { ALLOWED_NOTE_TYPES, type NoteType } from "@triliumnext/commons"; interface MetaFile { files: NoteMeta[]; diff --git a/apps/server/src/services/llm/embeddings/embeddings_interface.ts b/apps/server/src/services/llm/embeddings/embeddings_interface.ts index 2731aef0d..b1fa333bf 100644 --- a/apps/server/src/services/llm/embeddings/embeddings_interface.ts +++ b/apps/server/src/services/llm/embeddings/embeddings_interface.ts @@ -1,4 +1,4 @@ -import type { NoteType, AttributeType } from "../../../becca/entities/rows.js"; +import type { NoteType, AttributeType } from "@triliumnext/commons"; /** * Represents the context of a note that will be embedded diff --git a/apps/server/src/services/meta/attribute_meta.ts b/apps/server/src/services/meta/attribute_meta.ts index 1946b5132..aa3d36b8c 100644 --- a/apps/server/src/services/meta/attribute_meta.ts +++ b/apps/server/src/services/meta/attribute_meta.ts @@ -1,4 +1,4 @@ -import type { AttributeType } from "../../becca/entities/rows.js"; +import type { AttributeType } from "@triliumnext/commons"; export default interface AttributeMeta { noteId?: string; diff --git a/apps/server/src/services/meta/note_meta.ts b/apps/server/src/services/meta/note_meta.ts index da908a328..33e7a7843 100644 --- a/apps/server/src/services/meta/note_meta.ts +++ b/apps/server/src/services/meta/note_meta.ts @@ -1,4 +1,4 @@ -import type { NoteType } from "../../becca/entities/rows.js"; +import type { NoteType } from "@triliumnext/commons"; import type AttachmentMeta from "./attachment_meta.js"; import type AttributeMeta from "./attribute_meta.js"; diff --git a/apps/server/src/services/note-interface.ts b/apps/server/src/services/note-interface.ts index 4efa62eb0..5ebaa6dfa 100644 --- a/apps/server/src/services/note-interface.ts +++ b/apps/server/src/services/note-interface.ts @@ -1,4 +1,4 @@ -import type { NoteType } from "../becca/entities/rows.js"; +import type { NoteType } from "@triliumnext/commons"; export interface NoteParams { /** optionally can force specific noteId */ diff --git a/apps/server/src/services/notes.ts b/apps/server/src/services/notes.ts index d607860ef..cbb3c90c1 100644 --- a/apps/server/src/services/notes.ts +++ b/apps/server/src/services/notes.ts @@ -23,7 +23,7 @@ import noteTypesService from "./note_types.js"; import fs from "fs"; import ws from "./ws.js"; import html2plaintext from "html2plaintext"; -import type { AttachmentRow, AttributeRow, BranchRow, NoteRow } from "../becca/entities/rows.js"; +import type { AttachmentRow, AttributeRow, BranchRow, NoteRow } from "@triliumnext/commons"; import type TaskContext from "./task_context.js"; import type { NoteParams } from "./note-interface.js"; import imageService from "./image.js"; diff --git a/apps/server/src/services/options.ts b/apps/server/src/services/options.ts index 3d54fde5f..27853b4aa 100644 --- a/apps/server/src/services/options.ts +++ b/apps/server/src/services/options.ts @@ -14,7 +14,7 @@ import becca from "../becca/becca.js"; import BOption from "../becca/entities/boption.js"; -import type { OptionRow } from "../becca/entities/rows.js"; +import type { OptionRow } from "@triliumnext/commons"; import type { FilterOptionsByType, OptionDefinitions, OptionMap, OptionNames } from "./options_interface.js"; import sql from "./sql.js"; diff --git a/apps/server/src/services/search/expressions/note_content_fulltext.ts b/apps/server/src/services/search/expressions/note_content_fulltext.ts index b0a97da76..cddedfdc6 100644 --- a/apps/server/src/services/search/expressions/note_content_fulltext.ts +++ b/apps/server/src/services/search/expressions/note_content_fulltext.ts @@ -1,6 +1,6 @@ "use strict"; -import type { NoteRow } from "../../../becca/entities/rows.js"; +import type { NoteRow } from "@triliumnext/commons"; import type SearchContext from "../search_context.js"; import Expression from "./expression.js"; diff --git a/apps/server/src/services/sql_init.ts b/apps/server/src/services/sql_init.ts index e2b14edc6..f5f7e4e48 100644 --- a/apps/server/src/services/sql_init.ts +++ b/apps/server/src/services/sql_init.ts @@ -10,7 +10,7 @@ import TaskContext from "./task_context.js"; import migrationService from "./migration.js"; import cls from "./cls.js"; import config from "./config.js"; -import type { OptionRow } from "../becca/entities/rows.js"; +import type { OptionRow } from "@triliumnext/commons"; import BNote from "../becca/entities/bnote.js"; import BBranch from "../becca/entities/bbranch.js"; import zipImportService from "./import/zip.js"; diff --git a/apps/server/src/share/shaca/entities/sattachment.ts b/apps/server/src/share/shaca/entities/sattachment.ts index 11d3af096..1fbb02054 100644 --- a/apps/server/src/share/shaca/entities/sattachment.ts +++ b/apps/server/src/share/shaca/entities/sattachment.ts @@ -5,7 +5,7 @@ import utils from "../../../services/utils.js"; import AbstractShacaEntity from "./abstract_shaca_entity.js"; import type SNote from "./snote.js"; import type { Blob } from "../../../services/blob-interface.js"; -import type { SAttachmentRow } from "./rows.js"; +import type { SAttachmentRow } from "@triliumnext/commons"; class SAttachment extends AbstractShacaEntity { private attachmentId: string; diff --git a/apps/server/src/share/shaca/entities/sattribute.ts b/apps/server/src/share/shaca/entities/sattribute.ts index dccdea83f..7dfaad3b6 100644 --- a/apps/server/src/share/shaca/entities/sattribute.ts +++ b/apps/server/src/share/shaca/entities/sattribute.ts @@ -1,7 +1,7 @@ "use strict"; import AbstractShacaEntity from "./abstract_shaca_entity.js"; -import type { SAttributeRow } from "./rows.js"; +import type { SAttributeRow } from "@triliumnext/commons"; import type SNote from "./snote.js"; class SAttribute extends AbstractShacaEntity { diff --git a/apps/server/src/share/shaca/entities/sbranch.ts b/apps/server/src/share/shaca/entities/sbranch.ts index a1bd6ee53..dca2856e7 100644 --- a/apps/server/src/share/shaca/entities/sbranch.ts +++ b/apps/server/src/share/shaca/entities/sbranch.ts @@ -1,7 +1,7 @@ "use strict"; import AbstractShacaEntity from "./abstract_shaca_entity.js"; -import type { SBranchRow } from "./rows.js"; +import type { SBranchRow } from "@triliumnext/commons"; import type SNote from "./snote.js"; class SBranch extends AbstractShacaEntity { diff --git a/apps/server/src/share/shaca/entities/snote.ts b/apps/server/src/share/shaca/entities/snote.ts index 6b192b57e..ff33b76ef 100644 --- a/apps/server/src/share/shaca/entities/snote.ts +++ b/apps/server/src/share/shaca/entities/snote.ts @@ -8,7 +8,7 @@ import type { Blob } from "../../../services/blob-interface.js"; import type SAttachment from "./sattachment.js"; import type SAttribute from "./sattribute.js"; import type SBranch from "./sbranch.js"; -import type { SNoteRow } from "./rows.js"; +import type { SNoteRow } from "@triliumnext/commons"; const LABEL = "label"; const RELATION = "relation"; diff --git a/apps/server/src/share/shaca/shaca_loader.ts b/apps/server/src/share/shaca/shaca_loader.ts index c0834cb8b..8357c975b 100644 --- a/apps/server/src/share/shaca/shaca_loader.ts +++ b/apps/server/src/share/shaca/shaca_loader.ts @@ -9,7 +9,7 @@ import SAttribute from "./entities/sattribute.js"; import SAttachment from "./entities/sattachment.js"; import shareRoot from "../share_root.js"; import eventService from "../../services/events.js"; -import type { SAttachmentRow, SAttributeRow, SBranchRow, SNoteRow } from "./entities/rows.js"; +import type { SAttachmentRow, SAttributeRow, SBranchRow, SNoteRow } from "@triliumnext/commons"; function load() { const start = Date.now();