From 4f39647da3ad1c05e1ceaf04e710100b65e35617 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Santos?= Date: Wed, 18 Oct 2023 19:18:02 +0100 Subject: [PATCH] fixed Process model --- src/models/Process.ts | 13 +++++++++---- src/models/Resource.ts | 8 ++++++-- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/models/Process.ts b/src/models/Process.ts index 8789153..ea188c3 100644 --- a/src/models/Process.ts +++ b/src/models/Process.ts @@ -1,9 +1,9 @@ -import { Types } from 'mongoose'; +import { Types, Document } from 'mongoose'; import { Resource } from './Resource'; import { Triple, TripleClass } from './Triple'; import { humanize } from 'humanize-digest'; import { Domain } from './Domain'; -import { PathClass, Path, PathDocument } from './Path'; +import { Path, PathDocument } from './Path'; import { ProcessTriple } from './ProcessTriple'; import { prop, @@ -52,6 +52,9 @@ class ParamsClass { } class ProcessClass { + createdAt!: Date; + updatedAt!: Date; + @prop({ required: true, index: true, unique: true }) public pid!: string; @@ -131,7 +134,7 @@ class ProcessClass { return paths; } - public async extendPathsWithExistingTriples(paths: PathClass[]) { + public async extendPathsWithExistingTriples(paths: PathDocument[]) { for (const path of paths) { const newPathObjs = []; const toDelete = new Set(); @@ -363,4 +366,6 @@ const Process = getModelForClass(ProcessClass, { schemaOptions: { timestamps: true }, }); -export { Process, ProcessClass }; +type ProcessDocument = ProcessClass & Document; + +export { Process, ProcessClass, ProcessDocument }; diff --git a/src/models/Resource.ts b/src/models/Resource.ts index ac2bafe..bea8ccf 100644 --- a/src/models/Resource.ts +++ b/src/models/Resource.ts @@ -1,4 +1,4 @@ -import { Types } from 'mongoose'; +import { Types, Document } from 'mongoose'; import { urlValidator, WorkerError } from '@derzis/common'; import { Domain } from '@derzis/models'; import { Path, PathDocument } from './Path'; @@ -22,6 +22,9 @@ class CrawlId { } class ResourceClass { + createdAt!: Date; + updatedAt!: Date; + @prop({ required: true, validate: urlValidator }) public url!: string; @@ -220,5 +223,6 @@ class ResourceClass { const Resource = getModelForClass(ResourceClass, { schemaOptions: { timestamps: true }, }); +type ResourceDocument = ResourceClass & Document; -export { Resource, ResourceClass }; +export { Resource, ResourceClass, ResourceDocument };