From fd03f269c0e9498e58fe7a381794ab84991b054e Mon Sep 17 00:00:00 2001 From: eug-vs Date: Wed, 10 Jun 2020 18:42:33 +0300 Subject: refactor: rename interfaces --- models/polls/poll.model.ts | 4 ++-- models/polls/poll.schema.ts | 5 ++--- models/users/user.model.ts | 4 ++-- models/users/user.schema.ts | 4 ++-- 4 files changed, 8 insertions(+), 9 deletions(-) (limited to 'models') diff --git a/models/polls/poll.model.ts b/models/polls/poll.model.ts index 211d1e6..be1f604 100644 --- a/models/polls/poll.model.ts +++ b/models/polls/poll.model.ts @@ -1,5 +1,5 @@ import { Model, model } from "mongoose" -import { Poll, PollSchema } from './poll.schema'; +import { PollSchema, pollSchema } from './poll.schema'; -export default model>("Poll", PollSchema); +export default model>("Poll", pollSchema); diff --git a/models/polls/poll.schema.ts b/models/polls/poll.schema.ts index 2e7dccd..79036c3 100644 --- a/models/polls/poll.schema.ts +++ b/models/polls/poll.schema.ts @@ -1,12 +1,11 @@ import { Document, Schema, Types } from 'mongoose'; -import { User } from '../users/user.schema'; interface ImageData { url: string; votes: number; } -export interface Poll extends Document { +export interface PollSchema extends Document { authorId: string; contents: { left: ImageData; @@ -20,7 +19,7 @@ const imageDataSchema = { votes: Number } -export const PollSchema = new Schema({ +export const pollSchema = new Schema({ contents: { left: imageDataSchema, right: imageDataSchema diff --git a/models/users/user.model.ts b/models/users/user.model.ts index cec9298..d4c67df 100644 --- a/models/users/user.model.ts +++ b/models/users/user.model.ts @@ -1,5 +1,5 @@ import { Model, model } from "mongoose" -import { User, UserSchema } from './user.schema'; +import { UserSchema, userSchema } from './user.schema'; -export default model>("User", UserSchema); +export default model>("User", userSchema); diff --git a/models/users/user.schema.ts b/models/users/user.schema.ts index c846f81..5292add 100644 --- a/models/users/user.schema.ts +++ b/models/users/user.schema.ts @@ -1,12 +1,12 @@ import { Document, Schema } from "mongoose" -export interface User extends Document { +export interface UserSchema extends Document { name: string; avatarUrl?: string; age?: number; } -export const UserSchema = new Schema({ +export const userSchema = new Schema({ name: String, avatarUrl: { type: String, -- cgit v1.2.3 From d40f6e6cf8150f9e112d0b5d8d7075c2fc90264b Mon Sep 17 00:00:00 2001 From: eug-vs Date: Wed, 10 Jun 2020 19:47:48 +0300 Subject: refactor: improve interfaces and expandAuthor --- models/polls/poll.schema.ts | 9 +++++++-- models/users/user.schema.ts | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'models') diff --git a/models/polls/poll.schema.ts b/models/polls/poll.schema.ts index 79036c3..ea91051 100644 --- a/models/polls/poll.schema.ts +++ b/models/polls/poll.schema.ts @@ -1,18 +1,23 @@ import { Document, Schema, Types } from 'mongoose'; +import { User } from '../users/user.schema' interface ImageData { url: string; votes: number; } -export interface PollSchema extends Document { - authorId: string; +export interface Poll { + author: User; contents: { left: ImageData; right: ImageData; }; } +export interface PollSchema extends Document, Omit { + authorId: string; +} + const imageDataSchema = { url: String, diff --git a/models/users/user.schema.ts b/models/users/user.schema.ts index 5292add..e39f667 100644 --- a/models/users/user.schema.ts +++ b/models/users/user.schema.ts @@ -1,11 +1,13 @@ import { Document, Schema } from "mongoose" -export interface UserSchema extends Document { +export interface User { name: string; avatarUrl?: string; age?: number; } +export interface UserSchema extends Document, User {} + export const userSchema = new Schema({ name: String, avatarUrl: { -- cgit v1.2.3