@duvdu-v1/duvdu 1.1.144 → 1.1.146

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,2 +1,4 @@
1
1
  import { RequestHandler } from 'express';
2
+ import { IjwtPayload } from '../types/JwtPayload';
2
3
  export declare const isauthenticated: RequestHandler;
4
+ export declare const generateAccessToken: (payload: IjwtPayload) => string;
@@ -1,4 +1,27 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -9,13 +32,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
32
  });
10
33
  };
11
34
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.isauthenticated = void 0;
13
- const jsonwebtoken_1 = require("jsonwebtoken");
35
+ exports.generateAccessToken = exports.isauthenticated = void 0;
36
+ const jsonwebtoken_1 = __importStar(require("jsonwebtoken"));
14
37
  const unauthenticated_error_1 = require("../errors/unauthenticated-error");
15
38
  const unauthorized_error_1 = require("../errors/unauthorized-error");
39
+ const Role_model_1 = require("../models/Role.model");
40
+ const User_model_1 = require("../models/User.model");
16
41
  const isauthenticated = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
17
42
  if (!req.session.access)
18
43
  return next(new unauthenticated_error_1.UnauthenticatedError({ en: 'access token not found', ar: 'الرمز المميز للوصول غير موجود' }, req.lang));
44
+ if (!req.session.refresh)
45
+ return next(new unauthenticated_error_1.UnauthenticatedError({ en: 'refresh token not found', ar: 'الرمز المميز للوصول غير موجود' }, req.lang));
19
46
  let payload;
20
47
  try {
21
48
  payload = (0, jsonwebtoken_1.verify)(req.session.access, process.env.JWT_KEY);
@@ -27,8 +54,27 @@ const isauthenticated = (req, res, next) => __awaiter(void 0, void 0, void 0, fu
27
54
  }, req.lang));
28
55
  }
29
56
  catch (error) {
30
- return res.status(423).json({ message: 'access token expired' });
57
+ // return res.status(423).json({ message: 'access token expired' });
58
+ const user = yield User_model_1.Users.findOne({ token: req.session.refresh });
59
+ if (!user)
60
+ return res.status(423).json({ message: 'refresh token expired' });
61
+ const role = yield Role_model_1.Roles.findById(user.role);
62
+ if (!role)
63
+ return res.status(423).json({ message: 'invalid role' });
64
+ const accessToken = (0, exports.generateAccessToken)({
65
+ id: user.id,
66
+ isVerified: user.isVerified,
67
+ isBlocked: user.isBlocked,
68
+ role: { key: role.key, permissions: role.permissions },
69
+ });
70
+ req.session.access = accessToken;
71
+ req.session.refresh = user.token;
72
+ next();
31
73
  }
32
74
  next();
33
75
  });
34
76
  exports.isauthenticated = isauthenticated;
77
+ const generateAccessToken = (payload) => jsonwebtoken_1.default.sign(payload, process.env.JWT_KEY, {
78
+ expiresIn: process.env.NODE_ENV === 'development' ? '1d' : '1h',
79
+ });
80
+ exports.generateAccessToken = generateAccessToken;
@@ -22,8 +22,9 @@
22
22
  /// <reference types="mongoose/types/validation" />
23
23
  /// <reference types="mongoose/types/virtuals" />
24
24
  /// <reference types="mongoose/types/inferschematype" />
25
- import { CYCLES, Iuser } from '@duvdu-v1/duvdu';
26
25
  import { Types } from 'mongoose';
26
+ import { CYCLES } from '../types/cycles';
27
+ import { Iuser } from '../types/User';
27
28
  export interface IProjectReview {
28
29
  user: Types.ObjectId | Iuser;
29
30
  project: Types.ObjectId;
@@ -1,19 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ContractReview = exports.ProjectReview = void 0;
4
- const duvdu_1 = require("@duvdu-v1/duvdu");
5
4
  const mongoose_1 = require("mongoose");
6
- exports.ProjectReview = (0, mongoose_1.model)(duvdu_1.MODELS.projectReview, new mongoose_1.Schema({
7
- user: { type: mongoose_1.Schema.Types.ObjectId, ref: duvdu_1.MODELS.user },
5
+ const model_names_1 = require("./../types/model-names");
6
+ const cycles_1 = require("../types/cycles");
7
+ exports.ProjectReview = (0, mongoose_1.model)(model_names_1.MODELS.projectReview, new mongoose_1.Schema({
8
+ user: { type: mongoose_1.Schema.Types.ObjectId, ref: model_names_1.MODELS.user },
8
9
  project: { type: mongoose_1.Schema.Types.ObjectId },
9
- cycle: { type: String, enum: duvdu_1.CYCLES },
10
+ cycle: { type: String, enum: cycles_1.CYCLES },
10
11
  rate: { type: Number, default: 0 },
11
12
  comment: { type: String, default: null }
12
- }, { timestamps: true }));
13
- exports.ContractReview = (0, mongoose_1.model)(duvdu_1.MODELS.contractReview, new mongoose_1.Schema({
14
- user: { type: mongoose_1.Schema.Types.ObjectId, ref: duvdu_1.MODELS.user },
13
+ }, { timestamps: true, collection: model_names_1.MODELS.projectReview }));
14
+ exports.ContractReview = (0, mongoose_1.model)(model_names_1.MODELS.contractReview, new mongoose_1.Schema({
15
+ user: { type: mongoose_1.Schema.Types.ObjectId, ref: model_names_1.MODELS.user },
15
16
  contract: { type: mongoose_1.Schema.Types.ObjectId },
16
- cycle: { type: String, enum: duvdu_1.CYCLES },
17
+ cycle: { type: String, enum: cycles_1.CYCLES },
17
18
  rate: { type: Number, default: 0 },
18
19
  comment: { type: String, default: null }
19
- }, { timestamps: true }));
20
+ }, { timestamps: true, collection: model_names_1.MODELS.contractReview }));
@@ -8,6 +8,7 @@ exports.Notification = (0, mongoose_1.model)(model_names_1.MODELS.notifications,
8
8
  type: mongoose_1.Schema.Types.ObjectId,
9
9
  ref: model_names_1.MODELS.user,
10
10
  // required:true
11
+ default: null
11
12
  },
12
13
  targetUser: {
13
14
  type: mongoose_1.Schema.Types.ObjectId,
@@ -25,21 +25,21 @@ export declare enum PERMISSIONS {
25
25
  getRolesHandler = "get roles",
26
26
  getRoleHandler = "get role",
27
27
  removeRoleHandler = "remove role",
28
- createProtfolioProjectHandler = "create portfolio project",
29
- updatePortfolioProjectHandler = "update portfolio project",
30
- removePortfolioProjectHandler = "remove portfolio project",
31
- getCrmPortfolioProjectsHandlers = "get crm portfolio projects",
32
- getAnalysisHandler = "get analysis handler",
28
+ createProjectHandler = "create project project",
29
+ updateProjectHandler = "update project project",
30
+ removeProjectHandler = "remove project project",
31
+ getCrmProjectsHandlers = "get crm project projects",
32
+ getAnalysisHandler = "get project analysis handler",
33
33
  createCopyrightHandler = "create copyright project",
34
34
  updateCopyrightHandler = "update copyright project",
35
35
  removeCopyrightHandler = "remove copyright project",
36
36
  getCrmCopyrightsHandlers = "get crm copyright projects",
37
37
  getCopyrightAnalysisHandler = "get copyright analysis handler",
38
- createStudioProjectHandler = "create studio project",
39
- updateStudioProjectHandler = "update studio project",
40
- removeStudioProjectHandler = "remove studio project",
41
- getCrmStudioProjectsHandlers = "get crm studio projects",
42
- getStudioAnalysisHandler = "get studio analysis handler",
38
+ createRentalProjectHandler = "create Rental project",
39
+ updateRentalProjectHandler = "update Rental project",
40
+ removeRentalProjectHandler = "remove Rental project",
41
+ getCrmRentalProject = "get crm rental projects",
42
+ getRentalAnalysisHandler = "get Rental analysis handler",
43
43
  getAllReportsHandler = "get all reports",
44
44
  getReportHandler = "get report",
45
45
  updateReportHandler = "update report",
@@ -52,7 +52,7 @@ export declare enum PERMISSIONS {
52
52
  createTeamProjectHandler = "create team project",
53
53
  updateTeamProjectHandler = "update team project",
54
54
  deleteTeamProjectHandler = "delete team project",
55
- deleteProducerHandler = "delete producer",
55
+ getProducerAnalysis = "get producer analysis",
56
56
  createRankHandler = "create rank",
57
57
  updateRankHandler = "update rank",
58
58
  deleteRankHandler = "delete rank",
@@ -68,11 +68,12 @@ export declare const permissions: {
68
68
  terms: PERMISSIONS[];
69
69
  plans: PERMISSIONS[];
70
70
  roles: PERMISSIONS[];
71
- portfolioPost: PERMISSIONS[];
71
+ Post: PERMISSIONS[];
72
72
  copyrights: PERMISSIONS[];
73
- studioBooking: PERMISSIONS[];
73
+ RentalBooking: PERMISSIONS[];
74
74
  booking: PERMISSIONS[];
75
75
  teamProject: PERMISSIONS[];
76
76
  rank: PERMISSIONS[];
77
77
  setting: PERMISSIONS[];
78
+ producer: PERMISSIONS[];
78
79
  };
@@ -31,24 +31,24 @@ var PERMISSIONS;
31
31
  PERMISSIONS["getRolesHandler"] = "get roles";
32
32
  PERMISSIONS["getRoleHandler"] = "get role";
33
33
  PERMISSIONS["removeRoleHandler"] = "remove role";
34
- // portfolio-post
35
- PERMISSIONS["createProtfolioProjectHandler"] = "create portfolio project";
36
- PERMISSIONS["updatePortfolioProjectHandler"] = "update portfolio project";
37
- PERMISSIONS["removePortfolioProjectHandler"] = "remove portfolio project";
38
- PERMISSIONS["getCrmPortfolioProjectsHandlers"] = "get crm portfolio projects";
39
- PERMISSIONS["getAnalysisHandler"] = "get analysis handler";
34
+ // project
35
+ PERMISSIONS["createProjectHandler"] = "create project project";
36
+ PERMISSIONS["updateProjectHandler"] = "update project project";
37
+ PERMISSIONS["removeProjectHandler"] = "remove project project";
38
+ PERMISSIONS["getCrmProjectsHandlers"] = "get crm project projects";
39
+ PERMISSIONS["getAnalysisHandler"] = "get project analysis handler";
40
40
  // copyrights
41
41
  PERMISSIONS["createCopyrightHandler"] = "create copyright project";
42
42
  PERMISSIONS["updateCopyrightHandler"] = "update copyright project";
43
43
  PERMISSIONS["removeCopyrightHandler"] = "remove copyright project";
44
44
  PERMISSIONS["getCrmCopyrightsHandlers"] = "get crm copyright projects";
45
45
  PERMISSIONS["getCopyrightAnalysisHandler"] = "get copyright analysis handler";
46
- // studio-booking
47
- PERMISSIONS["createStudioProjectHandler"] = "create studio project";
48
- PERMISSIONS["updateStudioProjectHandler"] = "update studio project";
49
- PERMISSIONS["removeStudioProjectHandler"] = "remove studio project";
50
- PERMISSIONS["getCrmStudioProjectsHandlers"] = "get crm studio projects";
51
- PERMISSIONS["getStudioAnalysisHandler"] = "get studio analysis handler";
46
+ // Rental-booking
47
+ PERMISSIONS["createRentalProjectHandler"] = "create Rental project";
48
+ PERMISSIONS["updateRentalProjectHandler"] = "update Rental project";
49
+ PERMISSIONS["removeRentalProjectHandler"] = "remove Rental project";
50
+ PERMISSIONS["getCrmRentalProject"] = "get crm rental projects";
51
+ PERMISSIONS["getRentalAnalysisHandler"] = "get Rental analysis handler";
52
52
  // reports
53
53
  PERMISSIONS["getAllReportsHandler"] = "get all reports";
54
54
  PERMISSIONS["getReportHandler"] = "get report";
@@ -65,7 +65,7 @@ var PERMISSIONS;
65
65
  PERMISSIONS["updateTeamProjectHandler"] = "update team project";
66
66
  PERMISSIONS["deleteTeamProjectHandler"] = "delete team project";
67
67
  // producer
68
- PERMISSIONS["deleteProducerHandler"] = "delete producer";
68
+ PERMISSIONS["getProducerAnalysis"] = "get producer analysis";
69
69
  // rank
70
70
  PERMISSIONS["createRankHandler"] = "create rank";
71
71
  PERMISSIONS["updateRankHandler"] = "update rank";
@@ -113,11 +113,11 @@ exports.permissions = {
113
113
  PERMISSIONS.updateRoleHandler,
114
114
  PERMISSIONS.removeRoleHandler,
115
115
  ],
116
- portfolioPost: [
117
- PERMISSIONS.createProtfolioProjectHandler,
118
- PERMISSIONS.updatePortfolioProjectHandler,
119
- PERMISSIONS.removePortfolioProjectHandler,
120
- PERMISSIONS.getCrmPortfolioProjectsHandlers,
116
+ Post: [
117
+ PERMISSIONS.createProjectHandler,
118
+ PERMISSIONS.updateProjectHandler,
119
+ PERMISSIONS.removeProjectHandler,
120
+ PERMISSIONS.getCrmProjectsHandlers,
121
121
  PERMISSIONS.getAnalysisHandler,
122
122
  ],
123
123
  copyrights: [
@@ -127,12 +127,12 @@ exports.permissions = {
127
127
  PERMISSIONS.getCrmCopyrightsHandlers,
128
128
  PERMISSIONS.getCopyrightAnalysisHandler,
129
129
  ],
130
- studioBooking: [
131
- PERMISSIONS.createStudioProjectHandler,
132
- PERMISSIONS.updateStudioProjectHandler,
133
- PERMISSIONS.removeStudioProjectHandler,
134
- PERMISSIONS.getCrmStudioProjectsHandlers,
135
- PERMISSIONS.getStudioAnalysisHandler,
130
+ RentalBooking: [
131
+ PERMISSIONS.createRentalProjectHandler,
132
+ PERMISSIONS.updateRentalProjectHandler,
133
+ PERMISSIONS.removeRentalProjectHandler,
134
+ PERMISSIONS.getRentalAnalysisHandler,
135
+ PERMISSIONS.getCrmRentalProject,
136
136
  ],
137
137
  booking: [PERMISSIONS.booking],
138
138
  teamProject: [
@@ -153,5 +153,8 @@ exports.permissions = {
153
153
  PERMISSIONS.createSettingHandler,
154
154
  PERMISSIONS.updateSettingHandler,
155
155
  PERMISSIONS.deleteSettingHandler
156
+ ],
157
+ producer: [
158
+ PERMISSIONS.getProducerAnalysis,
156
159
  ]
157
160
  };
@@ -26,5 +26,7 @@ export declare enum MODELS {
26
26
  rank = "ranks",
27
27
  setting = "settings",
28
28
  allContracts = "all_contracts",
29
- contractReports = "contract_reports"
29
+ contractReports = "contract_reports",
30
+ projectReview = "project_reviews",
31
+ contractReview = "contract_review"
30
32
  }
@@ -31,4 +31,6 @@ var MODELS;
31
31
  MODELS["setting"] = "settings";
32
32
  MODELS["allContracts"] = "all_contracts";
33
33
  MODELS["contractReports"] = "contract_reports";
34
+ MODELS["projectReview"] = "project_reviews";
35
+ MODELS["contractReview"] = "contract_review";
34
36
  })(MODELS || (exports.MODELS = MODELS = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duvdu-v1/duvdu",
3
- "version": "1.1.144",
3
+ "version": "1.1.146",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "files": [