exodus-framework 2.0.756 → 2.0.758
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.
- package/lib/app/app.js +84 -0
- package/lib/app/controller.js +95 -0
- package/lib/app/core.js +71 -0
- package/lib/app/error.js +66 -0
- package/lib/app/index.js +72 -0
- package/lib/app/service.js +24 -0
- package/lib/app/settings.js +138 -0
- package/lib/app/singleton.js +29 -0
- package/lib/contracts/console.js +5 -0
- package/lib/contracts/entity.js +5 -0
- package/lib/contracts/http.js +50 -0
- package/lib/contracts/index.js +104 -0
- package/lib/contracts/messaging.js +25 -0
- package/lib/contracts/security.js +5 -0
- package/lib/contracts/service.js +5 -0
- package/lib/contracts/session.js +5 -0
- package/lib/contracts/settings.js +5 -0
- package/lib/contracts/singleton.js +5 -0
- package/lib/contracts/socket.js +11 -0
- package/lib/controllers/api/file.js +24 -0
- package/lib/controllers/api/index.js +13 -0
- package/lib/controllers/index.js +16 -0
- package/lib/controllers/messaging/application.js +63 -0
- package/lib/controllers/messaging/database.js +63 -0
- package/lib/controllers/messaging/environment.js +100 -0
- package/lib/express.d.js +5 -0
- package/lib/index.d.ts +0 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +81 -0
- package/lib/middlewares/access.js +77 -0
- package/lib/middlewares/authentication.js +21 -0
- package/lib/middlewares/file.js +41 -0
- package/lib/middlewares/index.js +27 -0
- package/lib/models/Application.js +61 -0
- package/lib/models/DatabaseHost.js +62 -0
- package/lib/models/EnvConnection.js +41 -0
- package/lib/models/index.js +46 -0
- package/lib/routes/index.js +16 -0
- package/lib/routes/messaging/index.js +34 -0
- package/lib/services/express.d.ts +0 -1
- package/lib/services/express.d.ts.map +1 -1
- package/lib/services/express.js +152 -0
- package/lib/services/file.js +65 -0
- package/lib/services/index.d.ts +0 -1
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/index.js +76 -0
- package/lib/services/rabitmq.js +101 -0
- package/lib/services/redis.js +62 -0
- package/lib/services/security.js +229 -0
- package/lib/services/sequelize.js +285 -0
- package/lib/services/socket.js +55 -0
- package/lib/services/task.js +164 -0
- package/lib/utils/api.js +50 -0
- package/lib/utils/database.js +158 -0
- package/lib/utils/date.js +28 -0
- package/lib/utils/index.js +60 -0
- package/lib/utils/logger.js +51 -0
- package/lib/utils/session.js +23 -0
- package/package.json +1 -1
@@ -0,0 +1,41 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
var _controller = _interopRequireDefault(require("../app/controller"));
|
8
|
+
var _multer = _interopRequireDefault(require("multer"));
|
9
|
+
var fs = _interopRequireWildcard(require("fs"));
|
10
|
+
var _path = _interopRequireDefault(require("path"));
|
11
|
+
var _app = require("../app");
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
15
|
+
class FileMiddleware extends _controller.default {
|
16
|
+
storage;
|
17
|
+
constructor() {
|
18
|
+
super();
|
19
|
+
this.initStorage();
|
20
|
+
}
|
21
|
+
initStorage() {
|
22
|
+
this.storage = _multer.default.diskStorage({
|
23
|
+
destination: async (req, file, cb) => {
|
24
|
+
!fs.existsSync(_app.Core.settings.getAppication().filePaths.temporary) && fs.mkdirSync(_app.Core.settings.getAppication().filePaths.temporary, {
|
25
|
+
recursive: true
|
26
|
+
});
|
27
|
+
cb(null, _app.Core.settings.getAppication().filePaths.temporary);
|
28
|
+
},
|
29
|
+
filename: (req, file, cb) => {
|
30
|
+
const name = Date.now() + _path.default.extname(file.originalname);
|
31
|
+
cb(null, name);
|
32
|
+
}
|
33
|
+
});
|
34
|
+
}
|
35
|
+
upload = field => {
|
36
|
+
return (0, _multer.default)({
|
37
|
+
storage: this.storage
|
38
|
+
}).single(field);
|
39
|
+
};
|
40
|
+
}
|
41
|
+
var _default = exports.default = FileMiddleware;
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
Object.defineProperty(exports, "AccessMiddleware", {
|
7
|
+
enumerable: true,
|
8
|
+
get: function () {
|
9
|
+
return _access.default;
|
10
|
+
}
|
11
|
+
});
|
12
|
+
Object.defineProperty(exports, "AuthenticationMiddleware", {
|
13
|
+
enumerable: true,
|
14
|
+
get: function () {
|
15
|
+
return _authentication.default;
|
16
|
+
}
|
17
|
+
});
|
18
|
+
Object.defineProperty(exports, "FileMiddleware", {
|
19
|
+
enumerable: true,
|
20
|
+
get: function () {
|
21
|
+
return _file.default;
|
22
|
+
}
|
23
|
+
});
|
24
|
+
var _access = _interopRequireDefault(require("./access"));
|
25
|
+
var _authentication = _interopRequireDefault(require("./authentication"));
|
26
|
+
var _file = _interopRequireDefault(require("./file"));
|
27
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
@@ -0,0 +1,61 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.Application = void 0;
|
7
|
+
var _sequelize = require("sequelize");
|
8
|
+
var _database = require("../utils/database");
|
9
|
+
class Application extends _sequelize.Model {}
|
10
|
+
exports.Application = Application;
|
11
|
+
Application.init({
|
12
|
+
uuid: {
|
13
|
+
type: _sequelize.DataTypes.UUID,
|
14
|
+
defaultValue: _sequelize.DataTypes.UUIDV4,
|
15
|
+
primaryKey: true,
|
16
|
+
allowNull: false,
|
17
|
+
autoIncrement: false
|
18
|
+
},
|
19
|
+
name: {
|
20
|
+
type: _sequelize.DataTypes.STRING(200),
|
21
|
+
allowNull: false
|
22
|
+
},
|
23
|
+
token: {
|
24
|
+
type: _sequelize.DataTypes.TEXT,
|
25
|
+
allowNull: false
|
26
|
+
},
|
27
|
+
key: {
|
28
|
+
type: _sequelize.DataTypes.TEXT,
|
29
|
+
allowNull: false
|
30
|
+
},
|
31
|
+
acess: {
|
32
|
+
type: _sequelize.DataTypes.JSON(),
|
33
|
+
allowNull: true
|
34
|
+
},
|
35
|
+
expiresAt: {
|
36
|
+
type: _sequelize.DataTypes.DATE,
|
37
|
+
allowNull: false
|
38
|
+
},
|
39
|
+
active: {
|
40
|
+
type: _sequelize.DataTypes.BOOLEAN,
|
41
|
+
defaultValue: true
|
42
|
+
},
|
43
|
+
comments: {
|
44
|
+
type: _sequelize.DataTypes.STRING(255),
|
45
|
+
allowNull: true
|
46
|
+
},
|
47
|
+
params: {
|
48
|
+
type: _sequelize.DataTypes.JSON,
|
49
|
+
defaultValue: {},
|
50
|
+
allowNull: true
|
51
|
+
}
|
52
|
+
}, {
|
53
|
+
tableName: 'applications',
|
54
|
+
sequelize: _database.serviceDB,
|
55
|
+
indexes: [{
|
56
|
+
fields: ['name']
|
57
|
+
}, {
|
58
|
+
fields: ['token'],
|
59
|
+
unique: true
|
60
|
+
}]
|
61
|
+
});
|
@@ -0,0 +1,62 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.DatabaseHost = void 0;
|
7
|
+
var _sequelize = require("sequelize");
|
8
|
+
var _database = require("../utils/database");
|
9
|
+
class DatabaseHost extends _sequelize.Model {}
|
10
|
+
exports.DatabaseHost = DatabaseHost;
|
11
|
+
DatabaseHost.init({
|
12
|
+
uuid: {
|
13
|
+
type: _sequelize.DataTypes.UUID,
|
14
|
+
defaultValue: _sequelize.DataTypes.UUIDV4,
|
15
|
+
primaryKey: true,
|
16
|
+
allowNull: false,
|
17
|
+
autoIncrement: false
|
18
|
+
},
|
19
|
+
host: {
|
20
|
+
type: _sequelize.DataTypes.STRING(200),
|
21
|
+
allowNull: false
|
22
|
+
},
|
23
|
+
name: {
|
24
|
+
type: _sequelize.DataTypes.STRING(200),
|
25
|
+
allowNull: false
|
26
|
+
},
|
27
|
+
dialect: {
|
28
|
+
type: _sequelize.DataTypes.ENUM('mysql', 'postgres', 'sqlite', 'mariadb', 'mssql', 'db2', 'snowflake', 'oracle'),
|
29
|
+
allowNull: false
|
30
|
+
},
|
31
|
+
username: {
|
32
|
+
type: _sequelize.DataTypes.STRING(100),
|
33
|
+
allowNull: false
|
34
|
+
},
|
35
|
+
credential: {
|
36
|
+
type: _sequelize.DataTypes.TEXT,
|
37
|
+
allowNull: false
|
38
|
+
},
|
39
|
+
password: {
|
40
|
+
type: _sequelize.DataTypes.TEXT,
|
41
|
+
allowNull: false
|
42
|
+
},
|
43
|
+
active: {
|
44
|
+
type: _sequelize.DataTypes.BOOLEAN,
|
45
|
+
defaultValue: true
|
46
|
+
},
|
47
|
+
params: {
|
48
|
+
type: _sequelize.DataTypes.JSON,
|
49
|
+
defaultValue: {},
|
50
|
+
allowNull: true
|
51
|
+
}
|
52
|
+
}, {
|
53
|
+
tableName: 'database_hosts',
|
54
|
+
sequelize: _database.serviceDB,
|
55
|
+
indexes: [{
|
56
|
+
fields: ['name'],
|
57
|
+
unique: true
|
58
|
+
}, {
|
59
|
+
fields: ['host'],
|
60
|
+
unique: true
|
61
|
+
}]
|
62
|
+
});
|
@@ -0,0 +1,41 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.EnvDBHost = void 0;
|
7
|
+
var _sequelize = require("sequelize");
|
8
|
+
var _database = require("../utils/database");
|
9
|
+
class EnvDBHost extends _sequelize.Model {}
|
10
|
+
exports.EnvDBHost = EnvDBHost;
|
11
|
+
EnvDBHost.init({
|
12
|
+
uuid: {
|
13
|
+
type: _sequelize.DataTypes.UUID,
|
14
|
+
defaultValue: _sequelize.DataTypes.UUIDV4,
|
15
|
+
primaryKey: true,
|
16
|
+
allowNull: false,
|
17
|
+
autoIncrement: false
|
18
|
+
},
|
19
|
+
hostUuid: {
|
20
|
+
type: _sequelize.DataTypes.UUID,
|
21
|
+
allowNull: false
|
22
|
+
},
|
23
|
+
envUuid: {
|
24
|
+
type: _sequelize.DataTypes.UUID,
|
25
|
+
allowNull: false
|
26
|
+
},
|
27
|
+
envToken: {
|
28
|
+
type: _sequelize.DataTypes.UUID,
|
29
|
+
allowNull: false
|
30
|
+
}
|
31
|
+
}, {
|
32
|
+
tableName: 'env_dbhost',
|
33
|
+
sequelize: _database.serviceDB,
|
34
|
+
indexes: [{
|
35
|
+
fields: ['envUuid'],
|
36
|
+
unique: true
|
37
|
+
}, {
|
38
|
+
fields: ['envToken', 'hostUuid'],
|
39
|
+
unique: true
|
40
|
+
}]
|
41
|
+
});
|
@@ -0,0 +1,46 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
var _exportNames = {
|
7
|
+
NativeModels: true
|
8
|
+
};
|
9
|
+
exports.NativeModels = void 0;
|
10
|
+
var _DatabaseHost = require("./DatabaseHost");
|
11
|
+
Object.keys(_DatabaseHost).forEach(function (key) {
|
12
|
+
if (key === "default" || key === "__esModule") return;
|
13
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
14
|
+
if (key in exports && exports[key] === _DatabaseHost[key]) return;
|
15
|
+
Object.defineProperty(exports, key, {
|
16
|
+
enumerable: true,
|
17
|
+
get: function () {
|
18
|
+
return _DatabaseHost[key];
|
19
|
+
}
|
20
|
+
});
|
21
|
+
});
|
22
|
+
var _EnvConnection = require("./EnvConnection");
|
23
|
+
Object.keys(_EnvConnection).forEach(function (key) {
|
24
|
+
if (key === "default" || key === "__esModule") return;
|
25
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
26
|
+
if (key in exports && exports[key] === _EnvConnection[key]) return;
|
27
|
+
Object.defineProperty(exports, key, {
|
28
|
+
enumerable: true,
|
29
|
+
get: function () {
|
30
|
+
return _EnvConnection[key];
|
31
|
+
}
|
32
|
+
});
|
33
|
+
});
|
34
|
+
var _Application = require("./Application");
|
35
|
+
Object.keys(_Application).forEach(function (key) {
|
36
|
+
if (key === "default" || key === "__esModule") return;
|
37
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
38
|
+
if (key in exports && exports[key] === _Application[key]) return;
|
39
|
+
Object.defineProperty(exports, key, {
|
40
|
+
enumerable: true,
|
41
|
+
get: function () {
|
42
|
+
return _Application[key];
|
43
|
+
}
|
44
|
+
});
|
45
|
+
});
|
46
|
+
const NativeModels = exports.NativeModels = [_DatabaseHost.DatabaseHost, _EnvConnection.EnvDBHost, _Application.Application];
|
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
var _messaging = require("./messaging");
|
7
|
+
Object.keys(_messaging).forEach(function (key) {
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
9
|
+
if (key in exports && exports[key] === _messaging[key]) return;
|
10
|
+
Object.defineProperty(exports, key, {
|
11
|
+
enumerable: true,
|
12
|
+
get: function () {
|
13
|
+
return _messaging[key];
|
14
|
+
}
|
15
|
+
});
|
16
|
+
});
|
@@ -0,0 +1,34 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
var _application = _interopRequireDefault(require("../../controllers/messaging/application"));
|
8
|
+
var _database = _interopRequireDefault(require("../../controllers/messaging/database"));
|
9
|
+
var _environment = _interopRequireDefault(require("../../controllers/messaging/environment"));
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
11
|
+
//* Controllers
|
12
|
+
const databaseController = new _database.default();
|
13
|
+
const envController = new _environment.default();
|
14
|
+
const appController = new _application.default();
|
15
|
+
|
16
|
+
//* Definitions
|
17
|
+
const NativeMessagingRoutes = {
|
18
|
+
/* Connections Library */
|
19
|
+
'exodus.database.created': databaseController.created,
|
20
|
+
'exodus.database.updated': databaseController.update,
|
21
|
+
'exodus.database.deleted': databaseController.delete,
|
22
|
+
'exodus.database.sync': databaseController.sync,
|
23
|
+
/* Application Integrations */
|
24
|
+
'exodus.application.created': appController.created,
|
25
|
+
'exodus.application.updated': appController.update,
|
26
|
+
'exodus.application.deleted': appController.delete,
|
27
|
+
'exodus.application.sync': appController.sync,
|
28
|
+
/* Environment Sync Database Relations */
|
29
|
+
'exodus.environment.created': envController.created,
|
30
|
+
'exodus.environment.deleted': envController.deleted,
|
31
|
+
'exodus.environment.sync': envController.sync,
|
32
|
+
'exodus.environment.updated.database': envController.updatedDatabase
|
33
|
+
};
|
34
|
+
var _default = exports.default = NativeMessagingRoutes;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"express.d.ts","sourceRoot":"","sources":["../../src/services/express.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;
|
1
|
+
{"version":3,"file":"express.d.ts","sourceRoot":"","sources":["../../src/services/express.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGlE,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAqB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,cAAM,cAAe,SAAQ,OAAQ,YAAW,QAAQ;IACtD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,UAAU,CAAS;IAErB,IAAI;IAuBV,aAAa;IAIb,YAAY,CAAC,WAAW,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,YAAY;IAiC3E,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY;IAMtE,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ;IAWzC,0BAA0B,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY;IAUtF,2BAA2B,QACpB,GAAG,OACH,OAAO,OACP,QAAQ,KAEV,YAAY,mBAoBf;IAEI,YAAY,CAAC,MAAM,EAAE,MAAM;IAyBjC,cAAc,CAAC,MAAM,EAAE,MAAM;CAG9B;AAED,eAAe,cAAc,CAAC"}
|
@@ -0,0 +1,152 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
var _cors = _interopRequireDefault(require("cors"));
|
8
|
+
var _express = _interopRequireDefault(require("express"));
|
9
|
+
var _expressRequestsLogger = _interopRequireDefault(require("express-requests-logger"));
|
10
|
+
var http = _interopRequireWildcard(require("http"));
|
11
|
+
var _qs = _interopRequireDefault(require("qs"));
|
12
|
+
var _app = require("../app");
|
13
|
+
var _service = _interopRequireDefault(require("../app/service"));
|
14
|
+
var _http2 = require("../contracts/http");
|
15
|
+
var _logger = _interopRequireDefault(require("../utils/logger"));
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
18
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
19
|
+
// import 'express-async-errors';
|
20
|
+
|
21
|
+
class ExpressService extends _service.default {
|
22
|
+
server;
|
23
|
+
mainRouter;
|
24
|
+
async init() {
|
25
|
+
if (!this.mainRouter) throw new Error('Need router'); //!sem router
|
26
|
+
|
27
|
+
const expss = (0, _express.default)();
|
28
|
+
this.server = http.createServer(expss);
|
29
|
+
expss.use('/public', _express.default.static(_app.Core.settings.getHttp().publicPath));
|
30
|
+
expss.use((0, _expressRequestsLogger.default)({
|
31
|
+
logger: (0, _logger.default)()
|
32
|
+
}));
|
33
|
+
expss.set('query parser', str => _qs.default.parse(str));
|
34
|
+
expss.use(this.responseTypeMiddleware.bind(this));
|
35
|
+
expss.use(_express.default.json({
|
36
|
+
limit: '10mb'
|
37
|
+
}));
|
38
|
+
expss.use(_express.default.urlencoded({
|
39
|
+
extended: true,
|
40
|
+
limit: '10mb'
|
41
|
+
}));
|
42
|
+
expss.use((0, _cors.default)({
|
43
|
+
origin: '*'
|
44
|
+
}));
|
45
|
+
expss.use(this.mainRouter);
|
46
|
+
expss.use(this.handleAuthorizationFailure.bind(this));
|
47
|
+
expss.use(this.handleNotFoud.bind(this));
|
48
|
+
expss.use(this.handleRequestProcessFailure.bind(this));
|
49
|
+
this.server.listen(_app.Core.settings.getAppication().port, () => {
|
50
|
+
(0, _logger.default)().info(`servidor iniciado na porta: ${_app.Core.settings.getAppication().port}`);
|
51
|
+
this.log(`🌍 Http Server Listering On: ${_app.Core.settings.getAppication().port}`, 'success');
|
52
|
+
});
|
53
|
+
}
|
54
|
+
getHttpServer() {
|
55
|
+
return this.server;
|
56
|
+
}
|
57
|
+
sendResponse(objResponse, res, next) {
|
58
|
+
objResponse.timestamp = Date.now();
|
59
|
+
if (!objResponse.code) objResponse.code = _http2.EHttpResponseCode.successfullyProcessedInformation;
|
60
|
+
res.status(objResponse.code);
|
61
|
+
if (objResponse.location) {
|
62
|
+
res.location(objResponse.location);
|
63
|
+
delete objResponse.location;
|
64
|
+
}
|
65
|
+
let FormulatedResponse;
|
66
|
+
switch (_app.Core.settings.getHttp().formulation) {
|
67
|
+
case 'direct':
|
68
|
+
if (objResponse['data']) {
|
69
|
+
FormulatedResponse = objResponse.data;
|
70
|
+
} else {
|
71
|
+
FormulatedResponse = objResponse;
|
72
|
+
}
|
73
|
+
break;
|
74
|
+
case 'standart':
|
75
|
+
FormulatedResponse = objResponse;
|
76
|
+
break;
|
77
|
+
default:
|
78
|
+
FormulatedResponse = objResponse;
|
79
|
+
break;
|
80
|
+
}
|
81
|
+
if (next) {
|
82
|
+
res.write(JSON.stringify(FormulatedResponse));
|
83
|
+
next();
|
84
|
+
} else {
|
85
|
+
res.send(JSON.stringify(FormulatedResponse));
|
86
|
+
}
|
87
|
+
}
|
88
|
+
responseTypeMiddleware(req, res, next) {
|
89
|
+
res.contentType('application/json');
|
90
|
+
next();
|
91
|
+
}
|
92
|
+
|
93
|
+
//* Handlers
|
94
|
+
handleNotFoud(req, res) {
|
95
|
+
this.sendResponse({
|
96
|
+
message: 'Endereço não encontrado',
|
97
|
+
type: 'warning',
|
98
|
+
status: false,
|
99
|
+
code: _http2.EHttpResponseCode.informationNotFound
|
100
|
+
}, res);
|
101
|
+
}
|
102
|
+
handleAuthorizationFailure(err, req, res, next) {
|
103
|
+
if (err.name === 'UnauthorizedError') {
|
104
|
+
throw new _app.HttpError({
|
105
|
+
message: 'Falha na autorização',
|
106
|
+
statusCode: _http2.EHttpResponseCode.informationUnauthorized
|
107
|
+
});
|
108
|
+
} else {
|
109
|
+
next(err);
|
110
|
+
}
|
111
|
+
}
|
112
|
+
handleRequestProcessFailure = async (err, req, res, _) => {
|
113
|
+
if (err instanceof _app.HttpError) {
|
114
|
+
return this.sendResponse({
|
115
|
+
message: err.message,
|
116
|
+
type: err.level,
|
117
|
+
status: false,
|
118
|
+
code: err.statusCode,
|
119
|
+
data: err.data
|
120
|
+
}, res);
|
121
|
+
}
|
122
|
+
this.sendResponse({
|
123
|
+
message: 'Houve um erro ao acessar este recurso',
|
124
|
+
type: 'error',
|
125
|
+
status: false,
|
126
|
+
code: 500
|
127
|
+
}, res);
|
128
|
+
new _app.ErrorHandler('Erro não tratado em uma rota.', err);
|
129
|
+
};
|
130
|
+
async checkRequest(params) {
|
131
|
+
let pass = true;
|
132
|
+
const need = [];
|
133
|
+
for (const [key, param] of Object.entries(params)) {
|
134
|
+
if (!param || param === null || param.length < 1 || typeof param === 'string' && param === '' || typeof param === 'object' && Object.values(param).length < 1) {
|
135
|
+
pass = false;
|
136
|
+
need.push(key);
|
137
|
+
}
|
138
|
+
}
|
139
|
+
if (!pass) throw new _app.HttpError({
|
140
|
+
message: 'Requisição incompleta',
|
141
|
+
statusCode: _http2.EHttpResponseCode.incompleteRequest,
|
142
|
+
level: 'error',
|
143
|
+
data: {
|
144
|
+
need
|
145
|
+
}
|
146
|
+
});
|
147
|
+
}
|
148
|
+
registerRouter(router) {
|
149
|
+
this.mainRouter = router;
|
150
|
+
}
|
151
|
+
}
|
152
|
+
var _default = exports.default = ExpressService;
|
@@ -0,0 +1,65 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
var _service = _interopRequireDefault(require("../app/service"));
|
8
|
+
var _logger = _interopRequireDefault(require("../utils/logger"));
|
9
|
+
var fs = _interopRequireWildcard(require("fs"));
|
10
|
+
var fsPromisses = _interopRequireWildcard(require("fs/promises"));
|
11
|
+
var _app = require("../app");
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
15
|
+
class FileService extends _service.default {
|
16
|
+
async init() {
|
17
|
+
await this.checkPaths();
|
18
|
+
await this.cleanTemp();
|
19
|
+
}
|
20
|
+
async checkPaths() {
|
21
|
+
for (const path of Object.values(_app.Core.settings.getAppication().filePaths)) {
|
22
|
+
!fs.existsSync(path) && fs.mkdirSync(path, {
|
23
|
+
recursive: true
|
24
|
+
});
|
25
|
+
}
|
26
|
+
}
|
27
|
+
async cleanTemp() {
|
28
|
+
this.listFiles('temporary', files => {
|
29
|
+
files.forEach(file => {
|
30
|
+
const p = _app.Core.settings.getAppication().filePaths.temporary + '/' + file;
|
31
|
+
fs.rmSync(p, {
|
32
|
+
recursive: true
|
33
|
+
});
|
34
|
+
});
|
35
|
+
});
|
36
|
+
}
|
37
|
+
async save(filename, destiny) {
|
38
|
+
const p = _app.Core.settings.getAppication().filePaths.temporary + '/' + filename;
|
39
|
+
const d = _app.Core.settings.getAppication().filePaths[destiny] + '/' + filename;
|
40
|
+
return await fsPromisses.rename(p, d).then(() => d).catch(e => {
|
41
|
+
(0, _logger.default)().error({
|
42
|
+
filename,
|
43
|
+
destiny,
|
44
|
+
erro: e
|
45
|
+
}, 'Não foi possível salvar o arquivo');
|
46
|
+
return false;
|
47
|
+
});
|
48
|
+
}
|
49
|
+
async delete(filename, destiny) {
|
50
|
+
const d = _app.Core.settings.getAppication().filePaths[destiny] + '/' + filename;
|
51
|
+
return await fsPromisses.unlink(d).then(() => true).catch(e => {
|
52
|
+
(0, _logger.default)().error({
|
53
|
+
filename,
|
54
|
+
destiny,
|
55
|
+
erro: e
|
56
|
+
}, 'Não foi possível deletar o arquivo');
|
57
|
+
return false;
|
58
|
+
});
|
59
|
+
}
|
60
|
+
listFiles(origin, cb) {
|
61
|
+
const p = _app.Core.settings.getAppication().filePaths[origin];
|
62
|
+
fs.readdir(p, (_, file) => cb(file));
|
63
|
+
}
|
64
|
+
}
|
65
|
+
var _default = exports.default = FileService;
|
package/lib/services/index.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,YAAY,CAAC;AACxD,cAAc,QAAQ,CAAC"}
|
@@ -0,0 +1,76 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
var _exportNames = {
|
7
|
+
ExpressService: true,
|
8
|
+
FileService: true,
|
9
|
+
RabbitMQService: true,
|
10
|
+
RedisService: true,
|
11
|
+
SequelizeService: true,
|
12
|
+
SocketIOService: true,
|
13
|
+
SecurityService: true
|
14
|
+
};
|
15
|
+
Object.defineProperty(exports, "ExpressService", {
|
16
|
+
enumerable: true,
|
17
|
+
get: function () {
|
18
|
+
return _express.default;
|
19
|
+
}
|
20
|
+
});
|
21
|
+
Object.defineProperty(exports, "FileService", {
|
22
|
+
enumerable: true,
|
23
|
+
get: function () {
|
24
|
+
return _file.default;
|
25
|
+
}
|
26
|
+
});
|
27
|
+
Object.defineProperty(exports, "RabbitMQService", {
|
28
|
+
enumerable: true,
|
29
|
+
get: function () {
|
30
|
+
return _rabitmq.default;
|
31
|
+
}
|
32
|
+
});
|
33
|
+
Object.defineProperty(exports, "RedisService", {
|
34
|
+
enumerable: true,
|
35
|
+
get: function () {
|
36
|
+
return _redis.default;
|
37
|
+
}
|
38
|
+
});
|
39
|
+
Object.defineProperty(exports, "SecurityService", {
|
40
|
+
enumerable: true,
|
41
|
+
get: function () {
|
42
|
+
return _security.default;
|
43
|
+
}
|
44
|
+
});
|
45
|
+
Object.defineProperty(exports, "SequelizeService", {
|
46
|
+
enumerable: true,
|
47
|
+
get: function () {
|
48
|
+
return _sequelize.default;
|
49
|
+
}
|
50
|
+
});
|
51
|
+
Object.defineProperty(exports, "SocketIOService", {
|
52
|
+
enumerable: true,
|
53
|
+
get: function () {
|
54
|
+
return _socket.default;
|
55
|
+
}
|
56
|
+
});
|
57
|
+
var _express = _interopRequireDefault(require("./express"));
|
58
|
+
var _file = _interopRequireDefault(require("./file"));
|
59
|
+
var _rabitmq = _interopRequireDefault(require("./rabitmq"));
|
60
|
+
var _redis = _interopRequireDefault(require("./redis"));
|
61
|
+
var _sequelize = _interopRequireDefault(require("./sequelize"));
|
62
|
+
var _socket = _interopRequireDefault(require("./socket"));
|
63
|
+
var _security = _interopRequireDefault(require("./security"));
|
64
|
+
var _task = require("./task");
|
65
|
+
Object.keys(_task).forEach(function (key) {
|
66
|
+
if (key === "default" || key === "__esModule") return;
|
67
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
68
|
+
if (key in exports && exports[key] === _task[key]) return;
|
69
|
+
Object.defineProperty(exports, key, {
|
70
|
+
enumerable: true,
|
71
|
+
get: function () {
|
72
|
+
return _task[key];
|
73
|
+
}
|
74
|
+
});
|
75
|
+
});
|
76
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|