@armi-wave/common 1.23.11 → 1.23.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,9 @@
1
1
  import { NextFunction, Request, Response } from 'express';
2
+ import mongoose from 'mongoose';
2
3
  interface UserPayload {
3
- id: string;
4
- email: string;
4
+ id: mongoose.Types.ObjectId;
5
5
  username: string;
6
+ profilePicUrl: string;
6
7
  }
7
8
  declare global {
8
9
  namespace Express {
@@ -1,28 +1,19 @@
1
- import mongoose from 'mongoose';
2
- interface CommentAttributes {
3
- postId: string;
4
- userId: string;
1
+ import mongoose, { Document } from 'mongoose';
2
+ interface Comment extends Document {
3
+ postId: mongoose.Types.ObjectId;
4
+ userId: mongoose.Types.ObjectId;
5
5
  username: string;
6
+ profilePicUrl: string;
7
+ text: string;
6
8
  likes?: number;
7
9
  upVotes?: number;
8
10
  downVotes?: number;
9
- reportNr?: number;
11
+ reportsNr?: number;
10
12
  replyNr?: number;
11
- text: string;
12
- }
13
- interface CommentModel extends mongoose.Model<CommentDocument> {
14
- build(attrs: CommentAttributes): CommentDocument;
13
+ createdAt: Date;
15
14
  }
16
- interface CommentDocument extends mongoose.Document {
17
- postId: string;
18
- userId: string;
19
- username: string;
20
- likes: number;
21
- upVotes: number;
22
- downVotes: number;
23
- reportNr: number;
24
- replyNr: number;
25
- text: string;
15
+ interface CommentModel extends mongoose.Model<Comment> {
16
+ build(attrs: Comment): Comment;
26
17
  }
27
18
  declare const Comment: CommentModel;
28
19
  export default Comment;
@@ -1,31 +1,73 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
5
35
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const mongoose_1 = __importDefault(require("mongoose"));
7
- const commentSchema = new mongoose_1.default.Schema({
8
- postId: { type: String, required: true },
9
- userId: { type: String, required: true },
36
+ const mongoose_1 = __importStar(require("mongoose"));
37
+ const commentSchema = new mongoose_1.Schema({
38
+ postId: {
39
+ type: mongoose_1.Schema.Types.ObjectId,
40
+ ref: 'Post',
41
+ required: true,
42
+ index: true,
43
+ },
44
+ userId: {
45
+ type: mongoose_1.Schema.Types.ObjectId,
46
+ ref: 'User',
47
+ required: true,
48
+ },
10
49
  username: { type: String, required: true },
50
+ profilePicUrl: { type: String, default: '' },
51
+ text: { type: String, required: true },
11
52
  likes: { type: Number, required: false, default: 0 },
12
53
  upVotes: { type: Number, required: false, default: 0 },
13
54
  downVotes: { type: Number, required: false, default: 0 },
14
- reportNr: { type: Number, required: false, default: 0 },
55
+ reportsNr: { type: Number, required: false, default: 0 },
15
56
  replyNr: { type: Number, required: false, default: 0 },
16
- text: { type: String, required: true },
57
+ createdAt: { type: Date, default: Date.now },
17
58
  }, {
18
59
  toJSON: {
19
60
  transform(doc, ret) {
20
61
  ret.id = ret._id;
21
62
  delete ret.__v;
22
63
  delete ret._id;
23
- delete ret.reportNr;
64
+ delete ret.reportsNr;
24
65
  },
25
66
  },
26
67
  });
27
68
  commentSchema.statics.build = (attrs) => {
28
69
  return new Comment(attrs);
29
70
  };
71
+ commentSchema.index({ postId: 1 });
30
72
  const Comment = mongoose_1.default.model('Comment', commentSchema);
31
73
  exports.default = Comment;
@@ -1,31 +1,20 @@
1
- import mongoose from 'mongoose';
1
+ import mongoose, { Document, Model } from 'mongoose';
2
2
  import { PostType } from '../enums/PostType';
3
- interface PostAttributes {
3
+ interface Post extends Document {
4
4
  userId: mongoose.Types.ObjectId;
5
- profilePicUrl?: string;
6
5
  username: string;
6
+ profilePicUrl: string;
7
+ caption: string;
7
8
  likesNr?: number;
8
9
  commentsNr?: number;
9
10
  savesNr?: number;
10
11
  postType: PostType;
11
12
  reportsNr?: number;
12
13
  contentUrl: string;
13
- caption?: string;
14
- }
15
- interface PostModel extends mongoose.Model<PostDocument> {
16
- build(attrs: PostAttributes): PostDocument;
14
+ createdAt: Date;
17
15
  }
18
- interface PostDocument extends mongoose.Document {
19
- userId: mongoose.Types.ObjectId;
20
- profilePicUrl: string;
21
- username: string;
22
- likesNr: number;
23
- commentsNr: number;
24
- savesNr: number;
25
- postType: PostType;
26
- reportsNr: number;
27
- contentUrl: string;
28
- caption: string;
16
+ interface PostModel extends Model<Post> {
17
+ build(attrs: Post): Post;
29
18
  }
30
19
  declare const Post: PostModel;
31
20
  export default Post;
@@ -34,17 +34,22 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  const mongoose_1 = __importStar(require("mongoose"));
37
- const postSchema = new mongoose_1.default.Schema({
38
- userId: { type: mongoose_1.Schema.Types.ObjectId, required: true },
39
- profilePicUrl: { type: String, required: false, default: '' },
37
+ const postSchema = new mongoose_1.Schema({
38
+ userId: {
39
+ type: mongoose_1.Schema.Types.ObjectId,
40
+ ref: 'User',
41
+ required: true,
42
+ index: true,
43
+ },
40
44
  username: { type: String, required: true },
45
+ profilePicUrl: { type: String, default: '' },
46
+ caption: { type: String, default: '' },
41
47
  likesNr: { type: Number, required: false, default: 0 },
42
48
  commentsNr: { type: Number, required: false, default: 0 },
43
49
  savesNr: { type: Number, required: false, default: 0 },
44
50
  postType: { type: String, required: true },
45
51
  reportsNr: { type: Number, required: false, default: 0 },
46
52
  contentUrl: { type: String, required: true },
47
- caption: { type: String, required: false, default: '' },
48
53
  }, {
49
54
  toJSON: {
50
55
  transform(doc, ret) {
@@ -58,5 +63,6 @@ const postSchema = new mongoose_1.default.Schema({
58
63
  postSchema.statics.build = (attrs) => {
59
64
  return new Post(attrs);
60
65
  };
66
+ postSchema.index({ userId: 1 });
61
67
  const Post = mongoose_1.default.model('Post', postSchema);
62
68
  exports.default = Post;
@@ -1,26 +1,17 @@
1
- import mongoose from 'mongoose';
2
- interface ReplyAttributes {
3
- commentId: string;
4
- userId: string;
1
+ import mongoose, { Document } from 'mongoose';
2
+ interface Reply extends Document {
3
+ commentId: mongoose.Types.ObjectId;
4
+ userId: mongoose.Types.ObjectId;
5
5
  username: string;
6
+ profilePicUrl: string;
7
+ text: string;
6
8
  likes?: number;
7
9
  upVotes?: number;
8
10
  downVotes?: number;
9
- reportNr?: number;
10
- text: string;
11
- }
12
- interface ReplyModel extends mongoose.Model<ReplyDocument> {
13
- build(attrs: ReplyAttributes): ReplyDocument;
11
+ reportsNr?: number;
14
12
  }
15
- interface ReplyDocument extends mongoose.Document {
16
- commentId: string;
17
- userId: string;
18
- username: string;
19
- likes: number;
20
- upVotes: number;
21
- downVotes: number;
22
- reportNr: number;
23
- text: string;
13
+ interface ReplyModel extends mongoose.Model<Reply> {
14
+ build(attrs: Reply): Reply;
24
15
  }
25
16
  declare const Reply: ReplyModel;
26
17
  export default Reply;
@@ -1,30 +1,67 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
5
35
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const mongoose_1 = __importDefault(require("mongoose"));
36
+ const mongoose_1 = __importStar(require("mongoose"));
7
37
  const replySchema = new mongoose_1.default.Schema({
8
- commentId: { type: String, required: true },
9
- userId: { type: String, required: true },
38
+ commentId: {
39
+ type: mongoose_1.Schema.Types.ObjectId,
40
+ ref: 'Comment',
41
+ index: true,
42
+ required: true,
43
+ },
44
+ userId: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', required: true },
10
45
  username: { type: String, required: true },
46
+ profilePicUrl: { type: String, default: '' },
47
+ text: { type: String, required: true },
11
48
  likes: { type: Number, required: false, default: 0 },
12
49
  upVotes: { type: Number, required: false, default: 0 },
13
50
  downVotes: { type: Number, required: false, default: 0 },
14
- reportNr: { type: Number, required: false, default: 0 },
15
- text: { type: String, required: true },
51
+ reportsNr: { type: Number, required: false, default: 0 },
16
52
  }, {
17
53
  toJSON: {
18
54
  transform(doc, ret) {
19
55
  ret.id = ret._id;
20
56
  delete ret.__v;
21
57
  delete ret._id;
22
- delete ret.reportNr;
58
+ delete ret.reportsNr;
23
59
  },
24
60
  },
25
61
  });
26
62
  replySchema.statics.build = (attrs) => {
27
63
  return new Reply(attrs);
28
64
  };
65
+ replySchema.index({ commentId: 1 });
29
66
  const Reply = mongoose_1.default.model('Reply', replySchema);
30
67
  exports.default = Reply;
@@ -1,13 +1,13 @@
1
- import mongoose from 'mongoose';
1
+ import { Document, Model } from 'mongoose';
2
2
  import { AccountType } from '../enums/AccountType';
3
3
  import { PaidPlan } from '../enums/PaidPlan';
4
- interface UserAttributes {
4
+ interface User extends Document {
5
5
  email: string;
6
6
  username: string;
7
7
  password: string;
8
8
  name: string;
9
9
  surname: string;
10
- profilePicUrl?: string;
10
+ profilePicUrl: string;
11
11
  accountType: AccountType;
12
12
  followers?: number;
13
13
  following?: number;
@@ -25,32 +25,8 @@ interface UserAttributes {
25
25
  grossIncome?: number;
26
26
  netIncome?: number;
27
27
  }
28
- interface UserModel extends mongoose.Model<UserDocument> {
29
- build(attrs: UserAttributes): UserDocument;
30
- }
31
- interface UserDocument extends mongoose.Document {
32
- email: string;
33
- username: string;
34
- password: string;
35
- name: string;
36
- surname: string;
37
- profilePicUrl: string;
38
- accountType: AccountType;
39
- followers: number;
40
- following: number;
41
- postsNr: number;
42
- phoneNumber: string;
43
- verified: boolean;
44
- paidPlan: PaidPlan;
45
- totalLikes: number;
46
- totalUpVotes: number;
47
- totalDownVotes: number;
48
- location: string;
49
- height: number;
50
- weight: number;
51
- profession: string;
52
- grossIncome: number;
53
- netIncome: number;
28
+ interface UserModel extends Model<User> {
29
+ build(attrs: User): User;
54
30
  }
55
31
  declare const User: UserModel;
56
32
  export default User;
@@ -1,4 +1,37 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
36
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
37
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -12,16 +45,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
45
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
46
  };
14
47
  Object.defineProperty(exports, "__esModule", { value: true });
15
- const mongoose_1 = __importDefault(require("mongoose"));
48
+ const mongoose_1 = __importStar(require("mongoose"));
16
49
  const PaidPlan_1 = require("../enums/PaidPlan");
17
50
  const password_1 = __importDefault(require("../utils/password"));
18
- const userSchema = new mongoose_1.default.Schema({
51
+ const userSchema = new mongoose_1.Schema({
19
52
  email: { type: String, required: true, unique: true },
20
- username: { type: String, required: true, unique: true },
53
+ username: { type: String, required: true, index: true, unique: true },
21
54
  password: { type: String, required: true },
22
55
  name: { type: String, required: true },
23
56
  surname: { type: String, required: true },
24
- profilePicUrl: { type: String, required: false },
57
+ profilePicUrl: { type: String, default: '' },
25
58
  accountType: { type: String, required: true },
26
59
  followers: { type: Number, required: false, default: 0 },
27
60
  following: { type: Number, required: false, default: 0 },
@@ -68,6 +101,6 @@ userSchema.pre('save', function (done) {
68
101
  userSchema.statics.build = (attrs) => {
69
102
  return new User(attrs);
70
103
  };
71
- userSchema.index({ email: 1, username: 1 }, { unique: true });
104
+ userSchema.index({ username: 1 }, { unique: true });
72
105
  const User = mongoose_1.default.model('User', userSchema);
73
106
  exports.default = User;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@armi-wave/common",
3
- "version": "1.23.11",
3
+ "version": "1.23.13",
4
4
  "description": "",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",