biz-slide-core 1.1.0 → 1.1.2
Sign up to get free protection for your applications and to get access to all the features.
- package/entity/image.entity.js +18 -0
- package/entity/index.js +26 -0
- package/entity/{png-svg.entity.ts → png-svg.entity.js} +8 -23
- package/entity/ppt-event.entity.js +13 -0
- package/entity/ppt-slide.entity.js +18 -0
- package/entity/ppt.entity.js +30 -0
- package/entity/slide-layout.entity.js +14 -0
- package/entity/slide.entity.js +26 -0
- package/entity/socket.entity.js +13 -0
- package/entity/template.entity.js +14 -0
- package/entity/user.entity.js +15 -0
- package/index.js +21 -0
- package/middleware/authentication.js +123 -0
- package/middleware/index.js +19 -0
- package/middleware/role.js +8 -0
- package/middleware/schemaValidate.js +58 -0
- package/package.json +6 -2
- package/resHandler/errorHandler.js +58 -0
- package/resHandler/index.js +18 -0
- package/resHandler/successHandler.js +8 -0
- package/types/IController.js +2 -0
- package/types/IRequest.js +2 -0
- package/types/index.js +28 -0
- package/utilities/callWithRetries.js +73 -0
- package/utilities/createFolder.js +60 -0
- package/utilities/encryptionUtils.js +66 -0
- package/utilities/index.js +19 -0
- package/entity/image.entity.ts +0 -32
- package/entity/index.ts +0 -10
- package/entity/ppt-event.entity.ts +0 -23
- package/entity/ppt-slide.entity.ts +0 -31
- package/entity/ppt.entity.ts +0 -60
- package/entity/slide-layout.entity.ts +0 -24
- package/entity/slide.entity.ts +0 -47
- package/entity/socket.entity.ts +0 -22
- package/entity/template.entity.ts +0 -24
- package/entity/user.entity.ts +0 -26
- package/middleware/authentication.ts +0 -64
- package/middleware/index.ts +0 -3
- package/middleware/role.ts +0 -5
- package/middleware/schemaValidate.ts +0 -20
- package/resHandler/errorHandler.ts +0 -44
- package/resHandler/index.ts +0 -2
- package/resHandler/successHandler.ts +0 -11
- package/tsconfig.json +0 -109
- package/types/IController.ts +0 -6
- package/types/IRequest.ts +0 -8
- package/types/index.ts +0 -11
- package/utilities/callWithRetries.ts +0 -9
- package/utilities/createFolder.ts +0 -12
- package/utilities/encryptionUtils.ts +0 -26
- package/utilities/index.ts +0 -4
@@ -0,0 +1,18 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ImageModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var ImageSchema = new mongoose_1.Schema({
|
6
|
+
focusPoint: { x: Number, y: Number },
|
7
|
+
url: { type: String, required: true },
|
8
|
+
radius: { type: String, required: true },
|
9
|
+
keywords: { type: [String], default: [] },
|
10
|
+
title: { type: String, required: true },
|
11
|
+
userId: { type: mongoose_1.Schema.Types.ObjectId, ref: "user" },
|
12
|
+
createdAt: { type: Date, default: Date.now() },
|
13
|
+
updatedAt: { type: Date, default: Date.now() },
|
14
|
+
deletedAt: { type: Date, default: null },
|
15
|
+
}, {
|
16
|
+
timestamps: true,
|
17
|
+
});
|
18
|
+
exports.ImageModel = (0, mongoose_1.model)("image", ImageSchema);
|
package/entity/index.js
ADDED
@@ -0,0 +1,26 @@
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./image.entity"), exports);
|
18
|
+
__exportStar(require("./png-svg.entity"), exports);
|
19
|
+
__exportStar(require("./ppt-event.entity"), exports);
|
20
|
+
__exportStar(require("./ppt-slide.entity"), exports);
|
21
|
+
__exportStar(require("./ppt.entity"), exports);
|
22
|
+
__exportStar(require("./slide-layout.entity"), exports);
|
23
|
+
__exportStar(require("./slide.entity"), exports);
|
24
|
+
__exportStar(require("./socket.entity"), exports);
|
25
|
+
__exportStar(require("./template.entity"), exports);
|
26
|
+
__exportStar(require("./user.entity"), exports);
|
@@ -1,20 +1,8 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
styleSubCategory: string;
|
7
|
-
colors: Array<string>;
|
8
|
-
userId: string;
|
9
|
-
isLocked?: boolean;
|
10
|
-
isCompleted?: boolean;
|
11
|
-
createdAt?: Date;
|
12
|
-
updatedAt?: Date;
|
13
|
-
deletedAt?: Date;
|
14
|
-
}
|
15
|
-
|
16
|
-
const PngSvgSchema = new Schema<IPngSvgSchema>(
|
17
|
-
{
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PngSvgModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var PngSvgSchema = new mongoose_1.Schema({
|
18
6
|
createdAt: { type: Date, default: Date.now() },
|
19
7
|
updatedAt: { type: Date, default: Date.now() },
|
20
8
|
deletedAt: { type: Date, default: null },
|
@@ -25,10 +13,7 @@ const PngSvgSchema = new Schema<IPngSvgSchema>(
|
|
25
13
|
styleCategory: { type: String, default: null },
|
26
14
|
styleSubCategory: { type: String, default: null },
|
27
15
|
colors: { type: [{ type: String, default: null }], default: null, _id: false }
|
28
|
-
|
29
|
-
{
|
16
|
+
}, {
|
30
17
|
timestamps: true,
|
31
|
-
|
32
|
-
);
|
33
|
-
|
34
|
-
export const PngSvgModel = model<IPngSvgSchema>("png-svg", PngSvgSchema);
|
18
|
+
});
|
19
|
+
exports.PngSvgModel = (0, mongoose_1.model)("png-svg", PngSvgSchema);
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PPTSlideEventModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var PPTEventSchema = new mongoose_1.Schema({
|
6
|
+
createdAt: { type: Date, default: Date.now() },
|
7
|
+
updatedAt: { type: Date, default: Date.now() },
|
8
|
+
pptRef: { type: mongoose_1.Schema.Types.ObjectId, ref: 'ppt' },
|
9
|
+
message: { type: String, default: null }
|
10
|
+
}, {
|
11
|
+
timestamps: true,
|
12
|
+
});
|
13
|
+
exports.PPTSlideEventModel = (0, mongoose_1.model)("ppt-event", PPTEventSchema);
|
@@ -0,0 +1,18 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PPTSlideModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var PPTSlideSchema = new mongoose_1.Schema({
|
6
|
+
createdAt: { type: Date, default: Date.now() },
|
7
|
+
updatedAt: { type: Date, default: Date.now() },
|
8
|
+
deletedAt: { type: Date, default: null },
|
9
|
+
pptRef: { type: mongoose_1.Schema.Types.ObjectId, ref: 'ppt' },
|
10
|
+
slideRef: { type: mongoose_1.Schema.Types.ObjectId, ref: 'slide' },
|
11
|
+
slideLayoutRef: { type: mongoose_1.Schema.Types.ObjectId, ref: 'slide-layout' },
|
12
|
+
title: { type: String, default: null },
|
13
|
+
rawData: { type: String, default: "{}" },
|
14
|
+
images: { type: String, default: "{}" },
|
15
|
+
}, {
|
16
|
+
timestamps: true,
|
17
|
+
});
|
18
|
+
exports.PPTSlideModel = (0, mongoose_1.model)("ppt-slide", PPTSlideSchema);
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PPTModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var questionSchema = new mongoose_1.Schema({
|
6
|
+
question: { type: String },
|
7
|
+
answer: { type: String }
|
8
|
+
}, {
|
9
|
+
timestamps: false,
|
10
|
+
_id: false
|
11
|
+
});
|
12
|
+
var PPTSchema = new mongoose_1.Schema({
|
13
|
+
createdAt: { type: Date, default: Date.now() },
|
14
|
+
updatedAt: { type: Date, default: Date.now() },
|
15
|
+
deletedAt: { type: Date, default: null },
|
16
|
+
isLocked: { type: Boolean, default: false },
|
17
|
+
isCompleted: { type: Boolean, default: false },
|
18
|
+
fileCreated: { type: Boolean, default: false },
|
19
|
+
userId: { type: String, default: null },
|
20
|
+
template_type: { type: String, default: null },
|
21
|
+
systemGeneratedtopics: { type: [String], default: [], _id: false },
|
22
|
+
questions: [questionSchema],
|
23
|
+
colors: { type: [String], default: [], _id: false },
|
24
|
+
prompt: { type: String, default: null },
|
25
|
+
templateRef: { type: mongoose_1.Schema.Types.ObjectId, ref: 'template' },
|
26
|
+
slideRefs: { type: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'ppt-slide' }], default: [], _id: false }
|
27
|
+
}, {
|
28
|
+
timestamps: true,
|
29
|
+
});
|
30
|
+
exports.PPTModel = (0, mongoose_1.model)("ppt", PPTSchema);
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.SlideLayoutModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var SlideLayoutSchema = new mongoose_1.Schema({
|
6
|
+
name: { type: String, default: "", required: true },
|
7
|
+
templateId: { type: mongoose_1.Schema.Types.ObjectId, ref: "template" },
|
8
|
+
createdAt: { type: Date, default: Date.now() },
|
9
|
+
updatedAt: { type: Date, default: Date.now() },
|
10
|
+
deletedAt: { type: Date, default: null },
|
11
|
+
}, {
|
12
|
+
timestamps: true,
|
13
|
+
});
|
14
|
+
exports.SlideLayoutModel = (0, mongoose_1.model)("slide-layout", SlideLayoutSchema);
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.SlideModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var layerSchema = new mongoose_1.Schema({
|
6
|
+
metaType: { type: String, enum: ['text', 'image', 'shape', 'list', 'table'] },
|
7
|
+
optionsMeta: { type: String },
|
8
|
+
chatMeta: { type: String },
|
9
|
+
}, {
|
10
|
+
timestamps: false,
|
11
|
+
_id: false
|
12
|
+
});
|
13
|
+
var SlideSchema = new mongoose_1.Schema({
|
14
|
+
name: { type: String, default: "", required: true },
|
15
|
+
postfix: { type: String, default: "" },
|
16
|
+
rules: { type: String, default: "" },
|
17
|
+
layers: [layerSchema],
|
18
|
+
slideLayoutId: { type: mongoose_1.Schema.Types.ObjectId, ref: "slide-layout" },
|
19
|
+
templateId: { type: mongoose_1.Schema.Types.ObjectId, ref: "template" },
|
20
|
+
createdAt: { type: Date, default: Date.now() },
|
21
|
+
updatedAt: { type: Date, default: Date.now() },
|
22
|
+
deletedAt: { type: Date, default: null },
|
23
|
+
}, {
|
24
|
+
timestamps: true,
|
25
|
+
});
|
26
|
+
exports.SlideModel = (0, mongoose_1.model)("slide", SlideSchema);
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.SocketModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var SocketSchema = new mongoose_1.Schema({
|
6
|
+
createdAt: { type: Date, default: Date.now() },
|
7
|
+
updatedAt: { type: Date, default: Date.now() },
|
8
|
+
userId: { type: String, default: null },
|
9
|
+
socketIds: { type: [String], default: [] }
|
10
|
+
}, {
|
11
|
+
timestamps: true,
|
12
|
+
});
|
13
|
+
exports.SocketModel = (0, mongoose_1.model)("socket", SocketSchema);
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.TemplateModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var TemplateSchema = new mongoose_1.Schema({
|
6
|
+
name: { type: String, default: "", required: true },
|
7
|
+
template_type: { type: String, default: "", required: true },
|
8
|
+
createdAt: { type: Date, default: Date.now() },
|
9
|
+
updatedAt: { type: Date, default: Date.now() },
|
10
|
+
deletedAt: { type: Date, default: null },
|
11
|
+
}, {
|
12
|
+
timestamps: true,
|
13
|
+
});
|
14
|
+
exports.TemplateModel = (0, mongoose_1.model)("template", TemplateSchema);
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.UserModel = void 0;
|
4
|
+
var mongoose_1 = require("mongoose");
|
5
|
+
var UserSchema = new mongoose_1.Schema({
|
6
|
+
email: { type: String, unique: true, sparse: true },
|
7
|
+
password: { type: String, default: null },
|
8
|
+
role: { type: String, default: null },
|
9
|
+
createdAt: { type: Date, default: Date.now() },
|
10
|
+
updatedAt: { type: Date, default: Date.now() },
|
11
|
+
deletedAt: { type: Date, default: null },
|
12
|
+
}, {
|
13
|
+
timestamps: true,
|
14
|
+
});
|
15
|
+
exports.UserModel = (0, mongoose_1.model)("user", UserSchema);
|
package/index.js
ADDED
@@ -0,0 +1,21 @@
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./entity"), exports);
|
18
|
+
__exportStar(require("./middleware"), exports);
|
19
|
+
__exportStar(require("./resHandler"), exports);
|
20
|
+
__exportStar(require("./types"), exports);
|
21
|
+
__exportStar(require("./utilities"), exports);
|
@@ -0,0 +1,123 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
15
|
+
function step(op) {
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
20
|
+
switch (op[0]) {
|
21
|
+
case 0: case 1: t = op; break;
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
25
|
+
default:
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
30
|
+
if (t[2]) _.ops.pop();
|
31
|
+
_.trys.pop(); continue;
|
32
|
+
}
|
33
|
+
op = body.call(thisArg, _);
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
36
|
+
}
|
37
|
+
};
|
38
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
39
|
+
var t = {};
|
40
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
41
|
+
t[p] = s[p];
|
42
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
43
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
44
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
45
|
+
t[p[i]] = s[p[i]];
|
46
|
+
}
|
47
|
+
return t;
|
48
|
+
};
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
50
|
+
exports.authorizeWithSlideApp = exports.authorize = void 0;
|
51
|
+
var utilities_1 = require("../utilities");
|
52
|
+
var entity_1 = require("../entity");
|
53
|
+
var authorize = function (roles) {
|
54
|
+
return function (req, res, next) {
|
55
|
+
return __awaiter(this, void 0, void 0, function () {
|
56
|
+
var token, user_1, hasAccess, _a, createdAt, updatedAt, deletedAt, password, rest;
|
57
|
+
return __generator(this, function (_b) {
|
58
|
+
switch (_b.label) {
|
59
|
+
case 0:
|
60
|
+
if (!req.headers.authorization) {
|
61
|
+
return [2 /*return*/, res.status(401).json({ message: 'Unauthorized' })];
|
62
|
+
}
|
63
|
+
if (!roles.length) {
|
64
|
+
return [2 /*return*/, res.status(401).json({ message: 'Unauthorized' })];
|
65
|
+
}
|
66
|
+
if (!req.headers.authorization) return [3 /*break*/, 3];
|
67
|
+
return [4 /*yield*/, (0, utilities_1.verifyUid)(req.headers.authorization)];
|
68
|
+
case 1:
|
69
|
+
token = _b.sent();
|
70
|
+
if (!token) {
|
71
|
+
return [2 /*return*/, res.status(401).json({ message: 'Session Expired' })];
|
72
|
+
}
|
73
|
+
return [4 /*yield*/, entity_1.UserModel.findOne({ email: token.value.email })];
|
74
|
+
case 2:
|
75
|
+
user_1 = _b.sent();
|
76
|
+
if (!user_1) {
|
77
|
+
return [2 /*return*/, res.status(401).json({ message: 'No User Found' })];
|
78
|
+
}
|
79
|
+
hasAccess = roles.find(function (role) { return role === user_1.role; });
|
80
|
+
if (!hasAccess) {
|
81
|
+
return [2 /*return*/, res.status(403).json({ message: 'Forbbiden' })];
|
82
|
+
}
|
83
|
+
_a = user_1.toObject(), createdAt = _a.createdAt, updatedAt = _a.updatedAt, deletedAt = _a.deletedAt, password = _a.password, rest = __rest(_a, ["createdAt", "updatedAt", "deletedAt", "password"]);
|
84
|
+
req.user = rest;
|
85
|
+
next();
|
86
|
+
_b.label = 3;
|
87
|
+
case 3: return [2 /*return*/];
|
88
|
+
}
|
89
|
+
});
|
90
|
+
});
|
91
|
+
};
|
92
|
+
};
|
93
|
+
exports.authorize = authorize;
|
94
|
+
var authorizeWithSlideApp = function () {
|
95
|
+
return function (req, res, next) {
|
96
|
+
return __awaiter(this, void 0, void 0, function () {
|
97
|
+
var token;
|
98
|
+
return __generator(this, function (_a) {
|
99
|
+
switch (_a.label) {
|
100
|
+
case 0:
|
101
|
+
if (!req.headers.authorization) {
|
102
|
+
return [2 /*return*/, res.status(401).json({ message: 'Unauthorized' })];
|
103
|
+
}
|
104
|
+
if (!req.headers.authorization) return [3 /*break*/, 2];
|
105
|
+
return [4 /*yield*/, (0, utilities_1.verifyUid)(req.headers.authorization)];
|
106
|
+
case 1:
|
107
|
+
token = _a.sent();
|
108
|
+
if (!token) {
|
109
|
+
return [2 /*return*/, res.status(401).json({ message: 'Session Expired' })];
|
110
|
+
}
|
111
|
+
// token.value.customerid
|
112
|
+
req.user = {
|
113
|
+
userId: "123" //token.value.customerid
|
114
|
+
};
|
115
|
+
next();
|
116
|
+
_a.label = 2;
|
117
|
+
case 2: return [2 /*return*/];
|
118
|
+
}
|
119
|
+
});
|
120
|
+
});
|
121
|
+
};
|
122
|
+
};
|
123
|
+
exports.authorizeWithSlideApp = authorizeWithSlideApp;
|
@@ -0,0 +1,19 @@
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./authentication"), exports);
|
18
|
+
__exportStar(require("./role"), exports);
|
19
|
+
__exportStar(require("./schemaValidate"), exports);
|
@@ -0,0 +1,58 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
15
|
+
function step(op) {
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
20
|
+
switch (op[0]) {
|
21
|
+
case 0: case 1: t = op; break;
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
25
|
+
default:
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
30
|
+
if (t[2]) _.ops.pop();
|
31
|
+
_.trys.pop(); continue;
|
32
|
+
}
|
33
|
+
op = body.call(thisArg, _);
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
36
|
+
}
|
37
|
+
};
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
39
|
+
exports.validateSchema = void 0;
|
40
|
+
var validateSchema = function (schema) {
|
41
|
+
return function (req, res, next) {
|
42
|
+
return __awaiter(this, void 0, void 0, function () {
|
43
|
+
var error, errorMessage;
|
44
|
+
return __generator(this, function (_a) {
|
45
|
+
error = schema.validate(req.body, { abortEarly: false }).error;
|
46
|
+
if (error) {
|
47
|
+
errorMessage = error.details.map(function (err) { return err.message; }).join(', ');
|
48
|
+
return [2 /*return*/, res.status(400).json({ message: errorMessage })];
|
49
|
+
}
|
50
|
+
else {
|
51
|
+
next();
|
52
|
+
}
|
53
|
+
return [2 /*return*/];
|
54
|
+
});
|
55
|
+
});
|
56
|
+
};
|
57
|
+
};
|
58
|
+
exports.validateSchema = validateSchema;
|
package/package.json
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
{
|
2
2
|
"name": "biz-slide-core",
|
3
|
-
"version": "1.1.
|
3
|
+
"version": "1.1.2",
|
4
4
|
"description": "",
|
5
|
-
"main": "index.js",
|
5
|
+
"main": "dist/index.js",
|
6
6
|
"scripts": {
|
7
7
|
"build": "tsc",
|
8
8
|
"test": "echo \"Error: no test specified\" && exit 1"
|
@@ -15,5 +15,9 @@
|
|
15
15
|
"joi": "^17.11.0",
|
16
16
|
"jsonwebtoken": "^9.0.2",
|
17
17
|
"typescript": "^5.3.3"
|
18
|
+
},
|
19
|
+
"devDependencies": {
|
20
|
+
"@types/express": "^4.17.21",
|
21
|
+
"@types/jsonwebtoken": "^9.0.5"
|
18
22
|
}
|
19
23
|
}
|
@@ -0,0 +1,58 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
3
|
+
var extendStatics = function (d, b) {
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
7
|
+
return extendStatics(d, b);
|
8
|
+
};
|
9
|
+
return function (d, b) {
|
10
|
+
if (typeof b !== "function" && b !== null)
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
12
|
+
extendStatics(d, b);
|
13
|
+
function __() { this.constructor = d; }
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
15
|
+
};
|
16
|
+
})();
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
18
|
+
exports.errorHandler = exports.NotFoundRequestError = exports.BadRequestError = void 0;
|
19
|
+
var BadRequestError = /** @class */ (function (_super) {
|
20
|
+
__extends(BadRequestError, _super);
|
21
|
+
function BadRequestError(message) {
|
22
|
+
var _this = _super.call(this, message) || this;
|
23
|
+
_this.name = 'BadRequestError';
|
24
|
+
return _this;
|
25
|
+
}
|
26
|
+
return BadRequestError;
|
27
|
+
}(Error));
|
28
|
+
exports.BadRequestError = BadRequestError;
|
29
|
+
var NotFoundRequestError = /** @class */ (function (_super) {
|
30
|
+
__extends(NotFoundRequestError, _super);
|
31
|
+
function NotFoundRequestError(message) {
|
32
|
+
var _this = _super.call(this, message) || this;
|
33
|
+
_this.name = 'NotFoundRequestError';
|
34
|
+
return _this;
|
35
|
+
}
|
36
|
+
return NotFoundRequestError;
|
37
|
+
}(Error));
|
38
|
+
exports.NotFoundRequestError = NotFoundRequestError;
|
39
|
+
// Custom error handler middleware
|
40
|
+
var errorHandler = function (err, req, res, next) {
|
41
|
+
console.error(err.stack); // Log the error for debugging
|
42
|
+
var statusCode = 500; // Default status code
|
43
|
+
var errorMessage = 'Internal Server Error'; // Default error message
|
44
|
+
if (err instanceof BadRequestError) {
|
45
|
+
statusCode = 400;
|
46
|
+
errorMessage = err.message;
|
47
|
+
}
|
48
|
+
else if (err instanceof NotFoundRequestError) {
|
49
|
+
statusCode = 404;
|
50
|
+
errorMessage = err.message;
|
51
|
+
}
|
52
|
+
// Send an error response
|
53
|
+
res.status(statusCode).json({
|
54
|
+
message: errorMessage,
|
55
|
+
error: err.name // Optionally send the error name/type
|
56
|
+
});
|
57
|
+
};
|
58
|
+
exports.errorHandler = errorHandler;
|
@@ -0,0 +1,18 @@
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./errorHandler"), exports);
|
18
|
+
__exportStar(require("./successHandler"), exports);
|
@@ -0,0 +1,8 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.successHandler = void 0;
|
4
|
+
// Generic success handler middleware
|
5
|
+
var successHandler = function (data, req, res, next) {
|
6
|
+
res.status(200).json(data);
|
7
|
+
};
|
8
|
+
exports.successHandler = successHandler;
|
package/types/index.js
ADDED
@@ -0,0 +1,28 @@
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
exports.QUEUES = void 0;
|
18
|
+
__exportStar(require("./IController"), exports);
|
19
|
+
__exportStar(require("./IRequest"), exports);
|
20
|
+
var QUEUES;
|
21
|
+
(function (QUEUES) {
|
22
|
+
QUEUES["IMAGE_MODEL_BULK"] = "image-model-bulk";
|
23
|
+
QUEUES["IMAGE_MODEL_SINGLE"] = "image-model-single";
|
24
|
+
QUEUES["NOTIFICATION"] = "notification";
|
25
|
+
QUEUES["THUMBNAIL"] = "thumbnail";
|
26
|
+
QUEUES["PPT"] = "ppt";
|
27
|
+
QUEUES["PNG_SVG"] = "png-svg"; // to convert raster to vector image
|
28
|
+
})(QUEUES || (exports.QUEUES = QUEUES = {}));
|