📚 Changes to CV model
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
const paginate = require("mongoose-paginate-v2");
|
||||
const { Client } = require("@elastic/elasticsearch");
|
||||
import ComicVineMetadataSchema from "./comicvine.metadata.model";
|
||||
import { mongoosastic } from "mongoosastic-ts";
|
||||
const mongoose = require("mongoose");
|
||||
import {
|
||||
@@ -56,6 +55,29 @@ const DirectConnectBundleSchema = mongoose.Schema({
|
||||
size: String,
|
||||
type: {},
|
||||
});
|
||||
const wantedSchema = new mongoose.Schema({
|
||||
source: { type: String, default: null },
|
||||
markEntireVolumeWanted: Boolean,
|
||||
issues: {
|
||||
type: [
|
||||
{
|
||||
id: Number,
|
||||
url: String,
|
||||
image: { type: Array, default: [] },
|
||||
},
|
||||
],
|
||||
default: null, // Set default to null for issues
|
||||
},
|
||||
volume: {
|
||||
type: {
|
||||
id: Number,
|
||||
url: String,
|
||||
image: { type: Array, default: [] },
|
||||
name: String,
|
||||
},
|
||||
default: null, // Set default to null for volume
|
||||
},
|
||||
});
|
||||
|
||||
const ComicSchema = mongoose.Schema(
|
||||
{
|
||||
@@ -72,7 +94,7 @@ const ComicSchema = mongoose.Schema(
|
||||
sourcedMetadata: {
|
||||
comicInfo: { type: mongoose.Schema.Types.Mixed, default: {} },
|
||||
comicvine: {
|
||||
type: ComicVineMetadataSchema,
|
||||
type: Object,
|
||||
es_indexed: true,
|
||||
default: {},
|
||||
},
|
||||
@@ -102,11 +124,9 @@ const ComicSchema = mongoose.Schema(
|
||||
subtitle: { type: String, es_indexed: true },
|
||||
},
|
||||
},
|
||||
wanted: wantedSchema,
|
||||
|
||||
acquisition: {
|
||||
source: {
|
||||
wanted: Boolean,
|
||||
name: String,
|
||||
},
|
||||
release: {},
|
||||
directconnect: {
|
||||
downloads: {
|
||||
|
||||
@@ -1,95 +0,0 @@
|
||||
const mongoose = require("mongoose");
|
||||
const Things = mongoose.Schema({
|
||||
_id: false,
|
||||
api_detail_url: String,
|
||||
id: Number,
|
||||
name: String,
|
||||
site_detail_url: String,
|
||||
count: String,
|
||||
});
|
||||
const Issue = mongoose.Schema({
|
||||
_id: false,
|
||||
api_detail_url: String,
|
||||
id: Number,
|
||||
name: String,
|
||||
issue_number: String,
|
||||
});
|
||||
const VolumeInformation = mongoose.Schema({
|
||||
_id: false,
|
||||
aliases: [String],
|
||||
api_detail_url: String,
|
||||
characters: [Things],
|
||||
concepts: [Things],
|
||||
count_of_issues: String,
|
||||
date_added: String,
|
||||
date_last_updated: String,
|
||||
deck: String,
|
||||
description: String,
|
||||
first_issue: Issue,
|
||||
id: Number,
|
||||
image: {
|
||||
icon_url: String,
|
||||
medium_url: String,
|
||||
screen_url: String,
|
||||
screen_large_url: String,
|
||||
small_url: String,
|
||||
super_url: String,
|
||||
thumb_url: String,
|
||||
tiny_url: String,
|
||||
original_url: String,
|
||||
image_tags: String,
|
||||
},
|
||||
issues: [
|
||||
{
|
||||
api_detail_url: String,
|
||||
id: Number,
|
||||
name: String,
|
||||
issue_number: String,
|
||||
site_detail_url: String,
|
||||
},
|
||||
],
|
||||
last_issue: Issue,
|
||||
locations: [Things],
|
||||
name: String,
|
||||
objects: [Things],
|
||||
people: [Things],
|
||||
publisher: {
|
||||
api_detail_url: String,
|
||||
id: Number,
|
||||
name: String,
|
||||
},
|
||||
site_detail_url: String,
|
||||
start_year: String,
|
||||
});
|
||||
|
||||
const ComicVineMetadataSchema = mongoose.Schema({
|
||||
_id: false,
|
||||
aliases: [String],
|
||||
api_detail_url: String,
|
||||
has_staff_review: { type: mongoose.Schema.Types.Mixed },
|
||||
|
||||
cover_date: Date,
|
||||
date_added: String,
|
||||
date_last_updated: String,
|
||||
deck: String,
|
||||
description: String,
|
||||
image: {
|
||||
icon_url: String,
|
||||
medium_url: String,
|
||||
screen_url: String,
|
||||
screen_large_url: String,
|
||||
small_url: String,
|
||||
super_url: String,
|
||||
thumb_url: String,
|
||||
tiny_url: String,
|
||||
original_url: String,
|
||||
image_tags: String,
|
||||
},
|
||||
|
||||
id: Number,
|
||||
name: String,
|
||||
resource_type: String,
|
||||
volumeInformation: VolumeInformation,
|
||||
});
|
||||
|
||||
export default ComicVineMetadataSchema;
|
||||
Reference in New Issue
Block a user