From a66e4435baf9bc88056a631a94ef14cb3ca7a008 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 13 Apr 2024 17:30:48 +0300 Subject: [PATCH] server-ts: Address requested changes --- src/services/consistency_checks.ts | 5 ++--- src/services/import/markdown.ts | 2 +- src/services/import/single.ts | 7 +------ src/services/import/zip.ts | 10 +++++++--- src/services/request_interface.ts | 2 +- src/services/ws.ts | 1 - 6 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/services/consistency_checks.ts b/src/services/consistency_checks.ts index 81ce810ca..adb1fe48b 100644 --- a/src/services/consistency_checks.ts +++ b/src/services/consistency_checks.ts @@ -9,14 +9,13 @@ import cls = require('./cls'); import entityChangesService = require('./entity_changes'); import optionsService = require('./options'); import BBranch = require('../becca/entities/bbranch'); -import revisionService = require('./revisions'); import becca = require('../becca/becca'); import utils = require('../services/utils'); import eraseService = require('../services/erase'); import sanitizeAttributeName = require('./sanitize_attribute_name'); import noteTypesService = require('../services/note_types'); -import { BranchRow, NoteRow } from '../becca/entities/rows'; -import { EntityChange, EntityRow } from './entity_changes_interface'; +import { BranchRow } from '../becca/entities/rows'; +import { EntityChange } from './entity_changes_interface'; const noteTypes = noteTypesService.getNoteTypeNames(); class ConsistencyChecks { diff --git a/src/services/import/markdown.ts b/src/services/import/markdown.ts index 47e37df13..941bdbd31 100644 --- a/src/services/import/markdown.ts +++ b/src/services/import/markdown.ts @@ -7,7 +7,7 @@ import importUtils = require('./utils'); function renderToHtml(content: string, title: string) { const html = marked.parse(content, { async: false - }) as string; // FIXME: mangle and headerIds does not seem to exist in marked + }) as string; const h1Handled = importUtils.handleH1(html, title); // h1 handling needs to come before sanitization return htmlSanitizer.sanitize(h1Handled); } diff --git a/src/services/import/single.ts b/src/services/import/single.ts index abf66c529..3818d07a5 100644 --- a/src/services/import/single.ts +++ b/src/services/import/single.ts @@ -11,12 +11,7 @@ import mimeService = require('./mime'); import utils = require('../../services/utils'); import importUtils = require('./utils'); import htmlSanitizer = require('../html_sanitizer'); - -interface File { - originalname: string; - mimetype: string; - buffer: string | Buffer; -} +import { File } from "./common"; function importSingleFile(taskContext: TaskContext, file: File, parentNote: BNote) { const mime = mimeService.getMime(file.originalname) || file.mimetype; diff --git a/src/services/import/zip.ts b/src/services/import/zip.ts index fbf7c539b..122e0260d 100644 --- a/src/services/import/zip.ts +++ b/src/services/import/zip.ts @@ -35,8 +35,8 @@ async function importZip(taskContext: TaskContext, fileBuffer: Buffer, importRoo // path => noteId, used only when meta file is not available /** path => noteId | attachmentId */ const createdPaths: Record = { '/': importRootNote.noteId, '\\': importRootNote.noteId }; - let metaFile!: MetaFile; - let firstNote!: BNote; + let metaFile: MetaFile | null = null; + let firstNote: BNote | null = null; const createdNoteIds = new Set(); function getNewNoteId(origNoteId: string) { @@ -99,7 +99,7 @@ async function importZip(taskContext: TaskContext, fileBuffer: Buffer, importRoo dataFileName: "" }; - let parent!: NoteMeta; + let parent: NoteMeta | undefined = undefined; for (const segment of pathSegments) { if (!cursor?.children?.length) { @@ -590,6 +590,10 @@ async function importZip(taskContext: TaskContext, fileBuffer: Buffer, importRoo } } + if (!firstNote) { + throw new Error("Unable to determine first note."); + } + return firstNote; } diff --git a/src/services/request_interface.ts b/src/services/request_interface.ts index 45f9defa1..56ec828cb 100644 --- a/src/services/request_interface.ts +++ b/src/services/request_interface.ts @@ -3,7 +3,7 @@ export interface CookieJar { } export interface ExecOpts { - proxy: "noproxy" | string | null; + proxy: string | null; method: string; url: string; paging?: { diff --git a/src/services/ws.ts b/src/services/ws.ts index ca6e0ff98..437379371 100644 --- a/src/services/ws.ts +++ b/src/services/ws.ts @@ -12,7 +12,6 @@ import AbstractBeccaEntity = require('../becca/entities/abstract_becca_entity'); import env = require('./env'); import { IncomingMessage, Server } from 'http'; import { EntityChange } from './entity_changes_interface'; -import { TaskData } from './task_context_interface'; if (env.isDev()) { const chokidar = require('chokidar');