@duvdu-v1/duvdu 1.0.35 → 1.0.37

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.
Files changed (52) hide show
  1. package/build/index.d.ts +2 -23
  2. package/build/index.js +2 -25
  3. package/build/middlewares/auth.middleware.d.ts +1 -1
  4. package/build/middlewares/auth.middleware.js +15 -7
  5. package/build/middlewares/isAuthorized.middleware.d.ts +1 -26
  6. package/build/middlewares/isAuthorized.middleware.js +2 -9
  7. package/build/types/JwtPayload.d.ts +1 -1
  8. package/build/utils/generateToken.d.ts +4 -0
  9. package/build/utils/generateToken.js +11 -0
  10. package/package.json +1 -1
  11. package/build/models/Plan.model.d.ts +0 -29
  12. package/build/models/Plan.model.js +0 -11
  13. package/build/models/Projects.model.d.ts +0 -29
  14. package/build/models/Projects.model.js +0 -8
  15. package/build/models/Role.model.d.ts +0 -29
  16. package/build/models/Role.model.js +0 -8
  17. package/build/models/Saved-Project.model.d.ts +0 -29
  18. package/build/models/Saved-Project.model.js +0 -11
  19. package/build/models/Term.model.d.ts +0 -29
  20. package/build/models/Term.model.js +0 -11
  21. package/build/models/Ticket.model.d.ts +0 -29
  22. package/build/models/Ticket.model.js +0 -33
  23. package/build/models/User.model.d.ts +0 -29
  24. package/build/models/User.model.js +0 -32
  25. package/build/models/category.model.d.ts +0 -29
  26. package/build/models/category.model.js +0 -38
  27. package/build/types/Category.d.ts +0 -38
  28. package/build/types/Category.js +0 -2
  29. package/build/types/Features.d.ts +0 -27
  30. package/build/types/Features.js +0 -33
  31. package/build/types/Follow.d.ts +0 -30
  32. package/build/types/Follow.js +0 -2
  33. package/build/types/Plan.d.ts +0 -36
  34. package/build/types/Plan.js +0 -2
  35. package/build/types/Projects.d.ts +0 -8
  36. package/build/types/Projects.js +0 -2
  37. package/build/types/Rate.d.ts +0 -34
  38. package/build/types/Rate.js +0 -2
  39. package/build/types/Report.d.ts +0 -39
  40. package/build/types/Report.js +0 -2
  41. package/build/types/Role.d.ts +0 -5
  42. package/build/types/Role.js +0 -2
  43. package/build/types/SavedProjects.d.ts +0 -32
  44. package/build/types/SavedProjects.js +0 -2
  45. package/build/types/Terms.d.ts +0 -3
  46. package/build/types/Terms.js +0 -2
  47. package/build/types/Ticket.d.ts +0 -41
  48. package/build/types/Ticket.js +0 -2
  49. package/build/types/User.d.ts +0 -75
  50. package/build/types/User.js +0 -2
  51. package/build/types/success-response.d.ts +0 -3
  52. package/build/types/success-response.js +0 -2
package/build/index.d.ts CHANGED
@@ -11,30 +11,9 @@ export * from './errors/generic-error';
11
11
  export * from './middlewares/global-error-handling.middleware';
12
12
  export * from './utils/api-feature';
13
13
  export * from './middlewares/database-connection';
14
+ export * from './types/JwtPayload';
14
15
  export * from './middlewares/global-validator.middleware';
15
16
  export * from './middlewares/auth.middleware';
16
17
  export * from './middlewares/global-upload.middleware';
17
18
  export * from './middlewares/isAuthorized.middleware';
18
- export * from './types/JwtPayload';
19
- export * from './types/Category';
20
- export * from './types/Features';
21
- export * from './types/Follow';
22
- export * from './types/Pagination';
23
- export * from './types/Plan';
24
- export * from './types/Projects';
25
- export * from './types/Rate';
26
- export * from './types/Report';
27
- export * from './types/Role';
28
- export * from './types/SavedProjects';
29
- export * from './types/success-response';
30
- export * from './types/Terms';
31
- export * from './types/Ticket';
32
- export * from './types/User';
33
- export * from './models/Plan.model';
34
- export * from './models/Projects.model';
35
- export * from './models/Role.model';
36
- export * from './models/Saved-Project.model';
37
- export * from './models/Term.model';
38
- export * from './models/Ticket.model';
39
- export * from './models/User.model';
40
- export * from './models/category.model';
19
+ export * from './utils/generateToken';
package/build/index.js CHANGED
@@ -30,32 +30,9 @@ __exportStar(require("./middlewares/global-error-handling.middleware"), exports)
30
30
  // export * from "./types/UrlQuery";
31
31
  __exportStar(require("./utils/api-feature"), exports);
32
32
  __exportStar(require("./middlewares/database-connection"), exports);
33
+ __exportStar(require("./types/JwtPayload"), exports);
33
34
  __exportStar(require("./middlewares/global-validator.middleware"), exports);
34
35
  __exportStar(require("./middlewares/auth.middleware"), exports);
35
36
  __exportStar(require("./middlewares/global-upload.middleware"), exports);
36
37
  __exportStar(require("./middlewares/isAuthorized.middleware"), exports);
37
- // export types
38
- __exportStar(require("./types/JwtPayload"), exports);
39
- __exportStar(require("./types/Category"), exports);
40
- __exportStar(require("./types/Features"), exports);
41
- __exportStar(require("./types/Follow"), exports);
42
- __exportStar(require("./types/Pagination"), exports);
43
- __exportStar(require("./types/Plan"), exports);
44
- __exportStar(require("./types/Projects"), exports);
45
- __exportStar(require("./types/Rate"), exports);
46
- __exportStar(require("./types/Report"), exports);
47
- __exportStar(require("./types/Role"), exports);
48
- __exportStar(require("./types/SavedProjects"), exports);
49
- __exportStar(require("./types/success-response"), exports);
50
- __exportStar(require("./types/Terms"), exports);
51
- __exportStar(require("./types/Ticket"), exports);
52
- __exportStar(require("./types/User"), exports);
53
- // export models
54
- __exportStar(require("./models/Plan.model"), exports);
55
- __exportStar(require("./models/Projects.model"), exports);
56
- __exportStar(require("./models/Role.model"), exports);
57
- __exportStar(require("./models/Saved-Project.model"), exports);
58
- __exportStar(require("./models/Term.model"), exports);
59
- __exportStar(require("./models/Ticket.model"), exports);
60
- __exportStar(require("./models/User.model"), exports);
61
- __exportStar(require("./models/category.model"), exports);
38
+ __exportStar(require("./utils/generateToken"), exports);
@@ -26,4 +26,4 @@
26
26
  import 'express-async-errors';
27
27
  import { RequestHandler } from 'express';
28
28
  import { Model } from 'mongoose';
29
- export declare const auth: (modelName: Model<any>) => RequestHandler<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>;
29
+ export declare const auth: (User: Model<any>, Roles: Model<any>) => RequestHandler<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>;
@@ -15,31 +15,39 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.auth = void 0;
16
16
  require("express-async-errors");
17
17
  const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
18
- const bad_request_error_1 = require("../errors/bad-request-error");
19
18
  const generic_error_1 = require("../errors/generic-error");
20
19
  const unauthenticated_error_1 = require("../errors/unauthenticated-error");
21
- const auth = (modelName) => ((req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
20
+ const generateToken_1 = require("../utils/generateToken");
21
+ const auth = (User, Roles) => ((req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
22
22
  var _a, _b;
23
23
  if (!((_a = req.session) === null || _a === void 0 ? void 0 : _a.jwt)) {
24
24
  throw new unauthenticated_error_1.UnauthenticatedError();
25
25
  }
26
- const user = yield modelName.findOne({ token: (_b = req.session) === null || _b === void 0 ? void 0 : _b.jwt });
26
+ const user = yield User.findOne({ token: (_b = req.session) === null || _b === void 0 ? void 0 : _b.jwt });
27
27
  if (!user) {
28
28
  throw new unauthenticated_error_1.UnauthenticatedError();
29
29
  }
30
- if (!user.isVerified) {
31
- throw new unauthenticated_error_1.UnauthenticatedError('pleas verify your self first');
30
+ if (!user.isVerified.value) {
31
+ throw new unauthenticated_error_1.UnauthenticatedError(`${user.isVerified.reason}`);
32
32
  }
33
33
  if (user.isBlocked) {
34
34
  throw new generic_error_1.GenericError('the users access is denied due to their blocked status.');
35
35
  }
36
36
  try {
37
37
  const payload = jsonwebtoken_1.default.verify(req.session.jwt, process.env.JWT_KEY);
38
- req.loggedUser = { id: payload.id, planId: payload.planId };
38
+ req.loggedUser = { id: payload.id, permession: payload.permession };
39
39
  return next();
40
40
  }
41
41
  catch (error) {
42
- throw new bad_request_error_1.BadRequestError('invalid or expired token');
42
+ const role = yield Roles.findById(user.role);
43
+ if (!role)
44
+ return next(new unauthenticated_error_1.UnauthenticatedError('user dont have role'));
45
+ const token = (0, generateToken_1.generateToken)({ id: user._id, permession: role.features });
46
+ req.loggedUser = { id: user._id, permession: role.features };
47
+ user.token = token;
48
+ yield user.save();
49
+ req.session.jwt = token;
50
+ next();
43
51
  }
44
52
  }));
45
53
  exports.auth = auth;
@@ -1,28 +1,3 @@
1
1
  /// <reference types="qs" />
2
- /// <reference types="mongoose/types/aggregate" />
3
- /// <reference types="mongoose/types/callback" />
4
- /// <reference types="mongoose/types/collection" />
5
- /// <reference types="mongoose/types/connection" />
6
- /// <reference types="mongoose/types/cursor" />
7
- /// <reference types="mongoose/types/document" />
8
- /// <reference types="mongoose/types/error" />
9
- /// <reference types="mongoose/types/expressions" />
10
- /// <reference types="mongoose/types/helpers" />
11
- /// <reference types="mongoose/types/middlewares" />
12
- /// <reference types="mongoose/types/indexes" />
13
- /// <reference types="mongoose/types/models" />
14
- /// <reference types="mongoose/types/mongooseoptions" />
15
- /// <reference types="mongoose/types/pipelinestage" />
16
- /// <reference types="mongoose/types/populate" />
17
- /// <reference types="mongoose/types/query" />
18
- /// <reference types="mongoose/types/schemaoptions" />
19
- /// <reference types="mongoose/types/schematypes" />
20
- /// <reference types="mongoose/types/session" />
21
- /// <reference types="mongoose/types/types" />
22
- /// <reference types="mongoose/types/utility" />
23
- /// <reference types="mongoose/types/validation" />
24
- /// <reference types="mongoose/types/virtuals" />
25
- /// <reference types="mongoose/types/inferschematype" />
26
2
  import { RequestHandler } from 'express';
27
- import { Model } from 'mongoose';
28
- export declare const isAuthorized: (planModel: Model<any>, roleMode: Model<any>, permission: string) => RequestHandler<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>;
3
+ export declare const isAuthorized: (permission: string) => RequestHandler<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>;
@@ -11,15 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.isAuthorized = void 0;
13
13
  const unauthorized_error_1 = require("../errors/unauthorized-error");
14
- const isAuthorized = (planModel, roleMode, permission) => ((req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
15
- var _a;
16
- const plan = yield planModel.findById((_a = req.loggedUser) === null || _a === void 0 ? void 0 : _a.planId);
17
- if (!plan)
18
- return next(new unauthorized_error_1.UnauthorizedError('user dont have plain'));
19
- const role = yield roleMode.findById(plan.role);
20
- if (!role)
21
- return next(new unauthorized_error_1.UnauthorizedError('user dont have this role'));
22
- if (!role.features.includes(permission))
14
+ const isAuthorized = (permission) => ((req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
15
+ if (!req.loggedUser.permession.includes(permission))
23
16
  return next(new unauthorized_error_1.UnauthorizedError('user not allowed access this route'));
24
17
  return next();
25
18
  }));
@@ -1,4 +1,4 @@
1
1
  export interface IjwtPayload {
2
2
  id: string;
3
- planId: string;
3
+ permession: string[];
4
4
  }
@@ -0,0 +1,4 @@
1
+ export declare const generateToken: (payload: {
2
+ id: string;
3
+ permession: string[];
4
+ }) => string;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateToken = void 0;
7
+ const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
8
+ const generateToken = (payload) => jsonwebtoken_1.default.sign(payload, process.env.JWT_KEY, {
9
+ expiresIn: '1m'
10
+ });
11
+ exports.generateToken = generateToken;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duvdu-v1/duvdu",
3
- "version": "1.0.35",
3
+ "version": "1.0.37",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "files": [
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose" />
25
- /// <reference types="mongoose/types/inferschematype" />
26
- import { Iplan } from '../types/Plan';
27
- export declare const Plans: import("mongoose").Model<Iplan, {}, {}, {}, import("mongoose").Document<unknown, {}, Iplan> & Iplan & {
28
- _id: import("mongoose").Types.ObjectId;
29
- }, any>;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Plans = void 0;
4
- const mongoose_1 = require("mongoose");
5
- const planSchema = new mongoose_1.Schema({
6
- key: { type: String, unique: true },
7
- title: String,
8
- role: { type: mongoose_1.Schema.Types.ObjectId, ref: 'role' },
9
- status: { type: Boolean, default: false },
10
- }, { collection: 'plan' });
11
- exports.Plans = (0, mongoose_1.model)('plan', planSchema);
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose" />
25
- /// <reference types="mongoose/types/inferschematype" />
26
- import { Iproject } from '../types/Projects';
27
- export declare const Projects: import("mongoose").Model<Iproject, {}, {}, {}, import("mongoose").Document<unknown, {}, Iproject> & Iproject & {
28
- _id: import("mongoose").Types.ObjectId;
29
- }, any>;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Projects = void 0;
4
- const mongoose_1 = require("mongoose");
5
- exports.Projects = (0, mongoose_1.model)('projects', new mongoose_1.Schema({
6
- title: String,
7
- cover: String,
8
- }, { timestamps: true }).index({ createdAt: 1, updatedAt: -1 }));
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose" />
25
- /// <reference types="mongoose/types/inferschematype" />
26
- import { Irole } from '../types/Role';
27
- export declare const Roles: import("mongoose").Model<Irole, {}, {}, {}, import("mongoose").Document<unknown, {}, Irole> & Irole & {
28
- _id: import("mongoose").Types.ObjectId;
29
- }, any>;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Roles = void 0;
4
- const mongoose_1 = require("mongoose");
5
- exports.Roles = (0, mongoose_1.model)('role', new mongoose_1.Schema({
6
- key: { type: String, unique: true },
7
- features: [String],
8
- }, { collection: 'role' }));
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose" />
25
- /// <reference types="mongoose/types/inferschematype" />
26
- import { IsavedProject } from '../types/SavedProjects';
27
- export declare const SavedProjects: import("mongoose").Model<IsavedProject, {}, {}, {}, import("mongoose").Document<unknown, {}, IsavedProject> & IsavedProject & {
28
- _id: import("mongoose").Types.ObjectId;
29
- }, any>;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SavedProjects = void 0;
4
- const mongoose_1 = require("mongoose");
5
- const savedProjectsSchema = new mongoose_1.Schema({
6
- user: { type: mongoose_1.Schema.Types.ObjectId, ref: 'users' },
7
- title: String,
8
- projects: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'projects' }],
9
- });
10
- savedProjectsSchema.index({ user: 1, title: 1 }, { unique: true });
11
- exports.SavedProjects = (0, mongoose_1.model)('saved-projects', savedProjectsSchema);
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import mongoose from 'mongoose';
26
- import { Iterm } from '../types/Terms';
27
- export declare const Term: mongoose.Model<Iterm, {}, {}, {}, mongoose.Document<unknown, {}, Iterm> & Iterm & {
28
- _id: mongoose.Types.ObjectId;
29
- }, any>;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Term = void 0;
7
- const mongoose_1 = __importDefault(require("mongoose"));
8
- const termSchema = new mongoose_1.default.Schema({
9
- desc: String,
10
- }, { timestamps: true });
11
- exports.Term = mongoose_1.default.model('terms', termSchema);
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import mongoose from 'mongoose';
26
- import { Iticket } from '../types/Ticket';
27
- export declare const Ticket: mongoose.Model<Iticket, {}, {}, {}, mongoose.Document<unknown, {}, Iticket> & Iticket & {
28
- _id: mongoose.Types.ObjectId;
29
- }, any>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Ticket = void 0;
7
- const mongoose_1 = __importDefault(require("mongoose"));
8
- const ticketSchema = new mongoose_1.default.Schema({
9
- userId: {
10
- type: mongoose_1.default.Schema.Types.ObjectId,
11
- ref: 'user',
12
- },
13
- name: {
14
- type: String,
15
- trim: true,
16
- },
17
- phoneNumber: { key: String, number: { type: String, unique: true, sparse: true } },
18
- message: String,
19
- state: {
20
- isClosed: { type: Boolean, default: false },
21
- closedBy: mongoose_1.default.Schema.Types.ObjectId,
22
- feedback: String,
23
- },
24
- }, {
25
- timestamps: true,
26
- toJSON: {
27
- transform(doc, ret) {
28
- ret.id = ret._id;
29
- delete ret._id;
30
- },
31
- },
32
- });
33
- exports.Ticket = mongoose_1.default.model('tickets', ticketSchema);
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose" />
25
- /// <reference types="mongoose/types/inferschematype" />
26
- import { Iuser } from '../types/User';
27
- export declare const Users: import("mongoose").Model<Iuser, {}, {}, {}, import("mongoose").Document<unknown, {}, Iuser> & Iuser & {
28
- _id: import("mongoose").Types.ObjectId;
29
- }, any>;
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Users = void 0;
4
- const mongoose_1 = require("mongoose");
5
- const userSchema = new mongoose_1.Schema({
6
- googleId: String,
7
- appleId: String,
8
- name: String,
9
- phoneNumber: { key: String, number: { type: String, unique: true, sparse: true } },
10
- username: { type: String, unique: true },
11
- password: String,
12
- verificationCode: { code: String, expireAt: Date },
13
- isVerified: { type: Boolean, default: false },
14
- token: String,
15
- profileImage: String,
16
- coverImage: String,
17
- location: { lat: Number, lng: Number },
18
- category: { type: mongoose_1.Schema.Types.ObjectId, ref: 'category' },
19
- acceptedProjectsCounter: { type: Number, default: 0 },
20
- profileViews: { type: Number, default: 0 },
21
- about: String,
22
- isOnline: { type: Boolean, default: false },
23
- isAvaliableToInstantProjects: { type: Boolean, default: false },
24
- pricePerHour: { type: Number, default: 0 },
25
- plan: { type: mongoose_1.Schema.Types.ObjectId, ref: 'plan' },
26
- hasVerificationPadge: { type: Boolean, default: false },
27
- avaliableContracts: { type: Number, default: 0 },
28
- rate: { ratersCounter: { type: Number, default: 0 }, totalRates: { type: Number, default: 0 } },
29
- isBlocked: { type: Boolean, default: false },
30
- status: { value: { type: Boolean, default: true }, reason: String },
31
- }, { timestamps: true, collection: 'user' });
32
- exports.Users = (0, mongoose_1.model)('user', userSchema);
@@ -1,29 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import mongoose from 'mongoose';
26
- import { Icategory } from '../types/Category';
27
- export declare const Categories: mongoose.Model<Icategory, {}, {}, {}, mongoose.Document<unknown, {}, Icategory> & Icategory & {
28
- _id: mongoose.Types.ObjectId;
29
- }, any>;
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Categories = void 0;
7
- const mongoose_1 = __importDefault(require("mongoose"));
8
- const categorySchema = new mongoose_1.default.Schema({
9
- creativesCounter: {
10
- type: Number,
11
- default: 0,
12
- },
13
- title: {
14
- ar: String,
15
- en: String,
16
- },
17
- image: String,
18
- jobTitles: {
19
- type: [String],
20
- },
21
- cycle: {
22
- type: Number,
23
- enum: [1, 2, 3, 4],
24
- default: 1,
25
- },
26
- tags: {
27
- type: [String],
28
- },
29
- status: {
30
- type: Number,
31
- enum: [0, 1],
32
- default: 1,
33
- },
34
- }, {
35
- timestamps: true,
36
- collection: 'category'
37
- });
38
- exports.Categories = mongoose_1.default.model('category', categorySchema);
@@ -1,38 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Document } from 'mongoose';
26
- export interface Icategory extends Document {
27
- id: string;
28
- creativesCounter: number;
29
- title: {
30
- ar: string;
31
- en: string;
32
- };
33
- image: string;
34
- tags?: string[];
35
- jobTitles?: string[];
36
- cycle: 1 | 2 | 3 | 4;
37
- status: 0 | 1;
38
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,27 +0,0 @@
1
- export declare enum Ifeatures {
2
- resetPassword = "resetPassword",
3
- updatePhoneNumber = "updatePhoneNumber",
4
- changePassword = "changePassword",
5
- updateProfile = "updateProfile",
6
- savedProjects = "savedProjects",
7
- createCategory = "create-category",
8
- updateCategory = "update-category",
9
- removeCategory = "remove-category",
10
- getGategoriesAdmin = "get-gategories-admin",
11
- getAllTickets = "get-all-tickets",
12
- updateTicket = "update-ticket",
13
- removeTicket = "remove-ticket",
14
- getTicket = "get-ticket",
15
- createTerm = "create-term",
16
- updateTerm = "update-term",
17
- createPlanHandler = "create plan",
18
- updatePlanHandler = "update plan",
19
- getPlanHandler = "get plan",
20
- getAllPlansHandler = "get all plans",
21
- removePlanHandler = "remove plan",
22
- createRoleHandler = "create role",
23
- updateRoleHandler = "update role",
24
- getRolesHandler = "get roles",
25
- getRoleHandler = "get role",
26
- removeRoleHandler = "remove role"
27
- }
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Ifeatures = void 0;
4
- var Ifeatures;
5
- (function (Ifeatures) {
6
- Ifeatures["resetPassword"] = "resetPassword";
7
- Ifeatures["updatePhoneNumber"] = "updatePhoneNumber";
8
- Ifeatures["changePassword"] = "changePassword";
9
- Ifeatures["updateProfile"] = "updateProfile";
10
- Ifeatures["savedProjects"] = "savedProjects";
11
- Ifeatures["createCategory"] = "create-category";
12
- Ifeatures["updateCategory"] = "update-category";
13
- Ifeatures["removeCategory"] = "remove-category";
14
- Ifeatures["getGategoriesAdmin"] = "get-gategories-admin";
15
- Ifeatures["getAllTickets"] = "get-all-tickets";
16
- Ifeatures["updateTicket"] = "update-ticket";
17
- Ifeatures["removeTicket"] = "remove-ticket";
18
- Ifeatures["getTicket"] = "get-ticket";
19
- Ifeatures["createTerm"] = "create-term";
20
- Ifeatures["updateTerm"] = "update-term";
21
- // plan
22
- Ifeatures["createPlanHandler"] = "create plan";
23
- Ifeatures["updatePlanHandler"] = "update plan";
24
- Ifeatures["getPlanHandler"] = "get plan";
25
- Ifeatures["getAllPlansHandler"] = "get all plans";
26
- Ifeatures["removePlanHandler"] = "remove plan";
27
- // roles
28
- Ifeatures["createRoleHandler"] = "create role";
29
- Ifeatures["updateRoleHandler"] = "update role";
30
- Ifeatures["getRolesHandler"] = "get roles";
31
- Ifeatures["getRoleHandler"] = "get role";
32
- Ifeatures["removeRoleHandler"] = "remove role";
33
- })(Ifeatures || (exports.Ifeatures = Ifeatures = {}));
@@ -1,30 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types } from 'mongoose';
26
- import { Iuser } from './User';
27
- export interface Ifollow {
28
- sourceUser: Types.ObjectId | Iuser;
29
- targetUser: Types.ObjectId | Iuser;
30
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,36 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types } from 'mongoose';
26
- import { Irole } from './Role';
27
- export interface Iplan {
28
- id: string;
29
- title: {
30
- ar: string;
31
- en: string;
32
- };
33
- key: string;
34
- role: Types.ObjectId | Irole;
35
- status: boolean;
36
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,8 +0,0 @@
1
- export interface Iproject {
2
- id: string;
3
- cover: string[];
4
- title: {
5
- en: string;
6
- ar: string;
7
- };
8
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,34 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types } from 'mongoose';
26
- import { Iproject } from './Projects';
27
- import { Iuser } from './User';
28
- export interface Irate {
29
- id: string;
30
- sourceUser: Types.ObjectId | Iuser;
31
- project: Types.ObjectId | Iproject;
32
- rate: number;
33
- desc: string;
34
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,39 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types } from 'mongoose';
26
- import { Iproject } from './Projects';
27
- import { Iuser } from './User';
28
- export interface Ireport {
29
- sourceUser: Types.ObjectId | Iuser;
30
- targetUser: Types.ObjectId | Iuser;
31
- project: Types.ObjectId | Iproject;
32
- desc: string;
33
- attachments: [string];
34
- state: {
35
- isClosed: boolean;
36
- closedBy: Types.ObjectId;
37
- feedback: string;
38
- };
39
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,5 +0,0 @@
1
- export interface Irole {
2
- id: string;
3
- key: string;
4
- features: string[];
5
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,32 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types } from 'mongoose';
26
- import { Iproject } from './Projects';
27
- import { Iuser } from './User';
28
- export interface IsavedProject {
29
- user: Types.ObjectId | Iuser;
30
- title: string;
31
- projects: [Types.ObjectId | Iproject];
32
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- export interface Iterm {
2
- desc: string;
3
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,41 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types } from 'mongoose';
26
- import { Iuser } from './User';
27
- export interface Iticket {
28
- id: string;
29
- userId: Types.ObjectId | Iuser;
30
- name: string;
31
- phoneNumber: {
32
- key: string;
33
- number: string;
34
- };
35
- message: string;
36
- state: {
37
- isClosed: boolean;
38
- closedBy: Types.ObjectId;
39
- feedback: string;
40
- };
41
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,75 +0,0 @@
1
- /// <reference types="mongoose/types/aggregate" />
2
- /// <reference types="mongoose/types/callback" />
3
- /// <reference types="mongoose/types/collection" />
4
- /// <reference types="mongoose/types/connection" />
5
- /// <reference types="mongoose/types/cursor" />
6
- /// <reference types="mongoose/types/document" />
7
- /// <reference types="mongoose/types/error" />
8
- /// <reference types="mongoose/types/expressions" />
9
- /// <reference types="mongoose/types/helpers" />
10
- /// <reference types="mongoose/types/middlewares" />
11
- /// <reference types="mongoose/types/indexes" />
12
- /// <reference types="mongoose/types/models" />
13
- /// <reference types="mongoose/types/mongooseoptions" />
14
- /// <reference types="mongoose/types/pipelinestage" />
15
- /// <reference types="mongoose/types/populate" />
16
- /// <reference types="mongoose/types/query" />
17
- /// <reference types="mongoose/types/schemaoptions" />
18
- /// <reference types="mongoose/types/schematypes" />
19
- /// <reference types="mongoose/types/session" />
20
- /// <reference types="mongoose/types/types" />
21
- /// <reference types="mongoose/types/utility" />
22
- /// <reference types="mongoose/types/validation" />
23
- /// <reference types="mongoose/types/virtuals" />
24
- /// <reference types="mongoose/types/inferschematype" />
25
- import { Types, Document } from 'mongoose';
26
- import { Icategory } from './Category';
27
- import { Iplan } from './Plan';
28
- export interface Iuser extends Document {
29
- id: string;
30
- googleId?: string;
31
- appleId?: string;
32
- name?: string;
33
- phoneNumber: {
34
- key: string;
35
- number: string;
36
- };
37
- username: string;
38
- password?: string;
39
- verificationCode?: {
40
- code: string;
41
- expireAt: string;
42
- };
43
- isVerified?: boolean;
44
- token?: string;
45
- profileImage?: string;
46
- coverImage?: string;
47
- location?: {
48
- lat: number;
49
- lng: number;
50
- };
51
- category?: Types.ObjectId | Icategory;
52
- acceptedProjectsCounter: number;
53
- profileViews: number;
54
- about?: string;
55
- isOnline: boolean;
56
- isAvaliableToInstantProjects: boolean;
57
- pricePerHour?: number;
58
- plan: Types.ObjectId | Iplan;
59
- hasVerificationPadge: boolean;
60
- avaliableContracts: number;
61
- rate: {
62
- ratersCounter: number;
63
- totalRates: number;
64
- };
65
- currentRank: string;
66
- isBlocked: boolean;
67
- status: {
68
- value: boolean;
69
- reason: string;
70
- };
71
- followCount: {
72
- following: number;
73
- followers: number;
74
- };
75
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +0,0 @@
1
- export type SuccessResponse<T = unknown> = T & {
2
- message: 'success';
3
- };
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });