zyket 1.2.11 → 1.2.12

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 (72) hide show
  1. package/.github/workflows/publish.yml +37 -37
  2. package/README.md +279 -279
  3. package/bin/cli.js +201 -201
  4. package/index.js +32 -32
  5. package/package.json +54 -50
  6. package/src/Middleware.js +3 -3
  7. package/src/extensions/Extension.js +10 -10
  8. package/src/extensions/bullboard/index.js +38 -38
  9. package/src/extensions/interactive-storage/index.js +162 -162
  10. package/src/extensions/interactive-storage/middlewares/MulterMiddleware.js +31 -31
  11. package/src/extensions/interactive-storage/routes/browse.js +31 -31
  12. package/src/extensions/interactive-storage/routes/create-folder.js +37 -37
  13. package/src/extensions/interactive-storage/routes/delete-folder.js +57 -57
  14. package/src/extensions/interactive-storage/routes/delete.js +41 -41
  15. package/src/extensions/interactive-storage/routes/download.js +47 -47
  16. package/src/extensions/interactive-storage/routes/info.js +37 -37
  17. package/src/extensions/interactive-storage/routes/upload.js +46 -46
  18. package/src/kernel/HTTPServer.js +31 -31
  19. package/src/kernel/index.js +78 -78
  20. package/src/services/Service.js +10 -10
  21. package/src/services/auth/auth.js +7 -7
  22. package/src/services/auth/index.js +199 -199
  23. package/src/services/bullmq/Worker.js +7 -7
  24. package/src/services/bullmq/index.js +92 -92
  25. package/src/services/cache/index.js +96 -96
  26. package/src/services/database/index.js +127 -127
  27. package/src/services/events/Event.js +6 -6
  28. package/src/services/events/index.js +59 -59
  29. package/src/services/express/Express.js +248 -248
  30. package/src/services/express/Middleware.js +7 -7
  31. package/src/services/express/RedirectResponse.js +8 -8
  32. package/src/services/express/Route.js +6 -6
  33. package/src/services/express/index.js +4 -4
  34. package/src/services/index.js +29 -29
  35. package/src/services/logger/index.js +80 -80
  36. package/src/services/s3/index.js +82 -82
  37. package/src/services/scheduler/Schedule.js +6 -6
  38. package/src/services/scheduler/index.js +47 -47
  39. package/src/services/socketio/Guard.js +10 -10
  40. package/src/services/socketio/Handler.js +10 -10
  41. package/src/services/socketio/SocketIO.js +159 -132
  42. package/src/services/socketio/index.js +4 -4
  43. package/src/services/template-manager/index.js +73 -73
  44. package/src/templates/default/config/cors.js +4 -4
  45. package/src/templates/default/config/swagger.js +15 -15
  46. package/src/templates/default/frontend/main.jsx +15 -15
  47. package/src/templates/default/frontend/src/hooks/useAuth.jsx +51 -51
  48. package/src/templates/default/frontend/src/hooks/useLayout.jsx +18 -18
  49. package/src/templates/default/frontend/src/layouts/auth/index.jsx +45 -45
  50. package/src/templates/default/frontend/src/layouts/auth/routes.js +17 -17
  51. package/src/templates/default/frontend/src/layouts/landing/index.jsx +61 -61
  52. package/src/templates/default/frontend/src/layouts/landing/routes.js +10 -10
  53. package/src/templates/default/frontend/src/layouts/panel/index.jsx +115 -115
  54. package/src/templates/default/frontend/src/layouts/panel/routes.js +10 -10
  55. package/src/templates/default/frontend/src/middlewares/LoggedMiddleware.jsx +21 -21
  56. package/src/templates/default/frontend/src/middlewares/NotLoggedMiddleware.jsx +14 -14
  57. package/src/templates/default/frontend/src/store/index.jsx +5 -5
  58. package/src/templates/default/frontend/src/store/storeAuth.jsx +14 -14
  59. package/src/templates/default/frontend/src/views/auth/index.jsx +4 -4
  60. package/src/templates/default/frontend/src/views/auth/register/index.jsx +4 -4
  61. package/src/templates/default/frontend/src/views/landing/index.jsx +4 -4
  62. package/src/templates/default/frontend/src/views/panel/dashboard/index.jsx +4 -4
  63. package/src/templates/default/frontend/styles.css +1 -1
  64. package/src/templates/default/src/guards/default.js +6 -6
  65. package/src/templates/default/src/handlers/connection.js +6 -6
  66. package/src/templates/default/src/handlers/message.js +8 -8
  67. package/src/templates/default/src/middlewares/default.js +7 -7
  68. package/src/templates/default/src/routes/[test]/message.js +26 -26
  69. package/src/templates/default/src/routes/index.js +22 -22
  70. package/src/templates/default/src/services/auth/auth.js +7 -7
  71. package/src/templates/default/src/services/auth/index.js +32 -32
  72. package/src/utils/EnvManager.js +65 -65
@@ -1,7 +1,7 @@
1
- module.exports = class Route {
2
- path;
3
-
4
- constructor(_path) {
5
- this.path = _path;
6
- }
1
+ module.exports = class Route {
2
+ path;
3
+
4
+ constructor(_path) {
5
+ this.path = _path;
6
+ }
7
7
  }
@@ -1,5 +1,5 @@
1
- module.exports = {
2
- Express: require("./Express"),
3
- Route: require("./Route"),
4
- Middleware: require("./Middleware"),
1
+ module.exports = {
2
+ Express: require("./Express"),
3
+ Route: require("./Route"),
4
+ Middleware: require("./Middleware"),
5
5
  }
@@ -1,30 +1,30 @@
1
- const Database = require("./database");
2
- const Cache = require("./cache");
3
- const S3 = require("./s3");
4
- const { SocketIO } = require("./socketio");
5
- const { Express } = require("./express");
6
- const Scheduler = require("./scheduler");
7
- const EventService = require("./events");
8
-
9
- const eventsActivated = process.env.DISABLE_EVENTS !== 'true';
10
- const databaseActivated = !!process.env.DATABASE_URL;
11
- const bullmqActivated = process.env.DISABLE_BULLMQ !== 'true';
12
- const s3Activated = process.env.S3_ENDPOINT && process.env.S3_ACCESS_KEY && process.env.S3_SECRET_KEY;
13
- const schedulerActivated = process.env.DISABLE_SCHEDULER !== 'true';
14
- const socketActivated = process.env.DISABLE_SOCKET !== 'true';
15
- const expressActivated = process.env.DISABLE_EXPRESS !== 'true';
16
- const viteActivated = process.env.VITE_ROOT && process.env.DISABLE_VITE !== 'true';
17
-
18
- module.exports = [
19
- ["logger", require("./logger"), ["@service_container", process.env.LOG_DIRECTORY || `${process.cwd()}/logs`, process.env.DEBUG === "true"]],
20
- ["template-manager", require("./template-manager"), []],
21
- eventsActivated ? ["events", EventService, ["@service_container"]] : null,
22
- databaseActivated ? ["database", Database, ["@service_container", process.env.DATABASE_URL]] : null,
23
- ["cache", Cache, ["@service_container", process.env.CACHE_URL || '']],
24
- s3Activated ? ["s3", S3, ["@service_container", process.env.S3_ENDPOINT, process.env.S3_PORT, process.env.S3_USE_SSL === "true", process.env.S3_ACCESS_KEY, process.env.S3_SECRET_KEY]] : null,
25
- schedulerActivated ? ["scheduler", Scheduler, ["@service_container"]] : null,
26
- bullmqActivated ? ["bullmq", require("./bullmq"), ["@service_container"]] : null,
27
- socketActivated ? ["socketio", SocketIO, ["@service_container"]] : null,
28
- expressActivated ? ["express", Express, ["@service_container"]] : null,
29
- viteActivated ? ["vite", require("./vite"), ["@service_container", process.env.VITE_ROOT, Number(process.env.VITE_PORT) || 5173]] : null,
1
+ const Database = require("./database");
2
+ const Cache = require("./cache");
3
+ const S3 = require("./s3");
4
+ const { SocketIO } = require("./socketio");
5
+ const { Express } = require("./express");
6
+ const Scheduler = require("./scheduler");
7
+ const EventService = require("./events");
8
+
9
+ const eventsActivated = process.env.DISABLE_EVENTS !== 'true';
10
+ const databaseActivated = !!process.env.DATABASE_URL;
11
+ const bullmqActivated = process.env.DISABLE_BULLMQ !== 'true';
12
+ const s3Activated = process.env.S3_ENDPOINT && process.env.S3_ACCESS_KEY && process.env.S3_SECRET_KEY;
13
+ const schedulerActivated = process.env.DISABLE_SCHEDULER !== 'true';
14
+ const socketActivated = process.env.DISABLE_SOCKET !== 'true';
15
+ const expressActivated = process.env.DISABLE_EXPRESS !== 'true';
16
+ const viteActivated = process.env.VITE_ROOT && process.env.DISABLE_VITE !== 'true';
17
+
18
+ module.exports = [
19
+ ["logger", require("./logger"), ["@service_container", process.env.LOG_DIRECTORY || `${process.cwd()}/logs`, process.env.DEBUG === "true"]],
20
+ ["template-manager", require("./template-manager"), []],
21
+ eventsActivated ? ["events", EventService, ["@service_container"]] : null,
22
+ databaseActivated ? ["database", Database, ["@service_container", process.env.DATABASE_URL]] : null,
23
+ ["cache", Cache, ["@service_container", process.env.CACHE_URL || '']],
24
+ s3Activated ? ["s3", S3, ["@service_container", process.env.S3_ENDPOINT, process.env.S3_PORT, process.env.S3_USE_SSL === "true", process.env.S3_ACCESS_KEY, process.env.S3_SECRET_KEY]] : null,
25
+ schedulerActivated ? ["scheduler", Scheduler, ["@service_container"]] : null,
26
+ bullmqActivated ? ["bullmq", require("./bullmq"), ["@service_container"]] : null,
27
+ socketActivated ? ["socketio", SocketIO, ["@service_container"]] : null,
28
+ expressActivated ? ["express", Express, ["@service_container"]] : null,
29
+ viteActivated ? ["vite", require("./vite"), ["@service_container", process.env.VITE_ROOT, Number(process.env.VITE_PORT) || 5173]] : null,
30
30
  ].filter(Boolean);
@@ -1,81 +1,81 @@
1
- const fs = require("fs");
2
- const Service = require("../Service");
3
- require("colors");
4
-
5
- module.exports = class Logger extends Service {
6
- #container
7
- #logDirectory;
8
- #debugEnabled;
9
- messageColors = {
10
- log: "white",
11
- info: "green",
12
- warn: "yellow",
13
- error: "red",
14
- debug: "blue"
15
- };
16
- #storeTries = 0;
17
-
18
- constructor(container, logDirectory, debugEnabled) {
19
- super("logger");
20
- this.#container = container;
21
- this.#logDirectory = logDirectory;
22
- this.#debugEnabled = debugEnabled;
23
- }
24
-
25
- async boot() {
26
- if (!fs.existsSync(this.#logDirectory)) fs.mkdirSync(this.#logDirectory);
27
- return this;
28
- }
29
-
30
- async store(message) {
31
- if (this.#storeTries > 10) throw new Error("Failed to store log message");
32
- this.#storeTries++;
33
- try{
34
- fs.appendFileSync(`${this.#logDirectory}/${new Date().toISOString().split("T")[0]}.log`, `${message}\n`);
35
- this.#storeTries = 0;
36
- } catch (e) {
37
- if (!fs.existsSync(this.#logDirectory)) {
38
- fs.mkdirSync(this.#logDirectory);
39
- }
40
-
41
- if (!fs.existsSync(`${this.#logDirectory}/${new Date().toISOString().split("T")[0]}.log`)) {
42
- fs.writeFileSync(`${this.#logDirectory}/${new Date().toISOString().split("T")[0]}.log`, "");
43
- }
44
-
45
- return this.store(message);
46
- }
47
- }
48
-
49
- getDateTimestamp() {
50
- return new Date().toISOString().replace("T", " ").replace("Z", "");
51
- }
52
-
53
- buildMessage(type, message) {
54
- return `${this.getDateTimestamp()} [${type.toUpperCase()}] ${message}`[this.messageColors[type]];
55
- }
56
-
57
- async log(message) {
58
- console.log(this.buildMessage("log", message));
59
- this.store(this.buildMessage("log", message));
60
- }
61
-
62
- async info(message) {
63
- console.log(this.buildMessage("info", message));
64
- this.store(this.buildMessage("info", message));
65
- }
66
-
67
- async warn(message) {
68
- console.log(this.buildMessage("warn", message));
69
- this.store(this.buildMessage("warn", message));
70
- }
71
-
72
- async error(message) {
73
- console.log(this.buildMessage("error", message));
74
- this.store(this.buildMessage("error", message));
75
- }
76
-
77
- async debug(message) {
78
- this.#debugEnabled && console.log(this.buildMessage("debug", message));
79
- this.store(this.buildMessage("debug", message));
80
- }
1
+ const fs = require("fs");
2
+ const Service = require("../Service");
3
+ require("colors");
4
+
5
+ module.exports = class Logger extends Service {
6
+ #container
7
+ #logDirectory;
8
+ #debugEnabled;
9
+ messageColors = {
10
+ log: "white",
11
+ info: "green",
12
+ warn: "yellow",
13
+ error: "red",
14
+ debug: "blue"
15
+ };
16
+ #storeTries = 0;
17
+
18
+ constructor(container, logDirectory, debugEnabled) {
19
+ super("logger");
20
+ this.#container = container;
21
+ this.#logDirectory = logDirectory;
22
+ this.#debugEnabled = debugEnabled;
23
+ }
24
+
25
+ async boot() {
26
+ if (!fs.existsSync(this.#logDirectory)) fs.mkdirSync(this.#logDirectory);
27
+ return this;
28
+ }
29
+
30
+ async store(message) {
31
+ if (this.#storeTries > 10) throw new Error("Failed to store log message");
32
+ this.#storeTries++;
33
+ try{
34
+ fs.appendFileSync(`${this.#logDirectory}/${new Date().toISOString().split("T")[0]}.log`, `${message}\n`);
35
+ this.#storeTries = 0;
36
+ } catch (e) {
37
+ if (!fs.existsSync(this.#logDirectory)) {
38
+ fs.mkdirSync(this.#logDirectory);
39
+ }
40
+
41
+ if (!fs.existsSync(`${this.#logDirectory}/${new Date().toISOString().split("T")[0]}.log`)) {
42
+ fs.writeFileSync(`${this.#logDirectory}/${new Date().toISOString().split("T")[0]}.log`, "");
43
+ }
44
+
45
+ return this.store(message);
46
+ }
47
+ }
48
+
49
+ getDateTimestamp() {
50
+ return new Date().toISOString().replace("T", " ").replace("Z", "");
51
+ }
52
+
53
+ buildMessage(type, message) {
54
+ return `${this.getDateTimestamp()} [${type.toUpperCase()}] ${message}`[this.messageColors[type]];
55
+ }
56
+
57
+ async log(message) {
58
+ console.log(this.buildMessage("log", message));
59
+ this.store(this.buildMessage("log", message));
60
+ }
61
+
62
+ async info(message) {
63
+ console.log(this.buildMessage("info", message));
64
+ this.store(this.buildMessage("info", message));
65
+ }
66
+
67
+ async warn(message) {
68
+ console.log(this.buildMessage("warn", message));
69
+ this.store(this.buildMessage("warn", message));
70
+ }
71
+
72
+ async error(message) {
73
+ console.log(this.buildMessage("error", message));
74
+ this.store(this.buildMessage("error", message));
75
+ }
76
+
77
+ async debug(message) {
78
+ this.#debugEnabled && console.log(this.buildMessage("debug", message));
79
+ this.store(this.buildMessage("debug", message));
80
+ }
81
81
  }
@@ -1,83 +1,83 @@
1
- const Service = require("../Service");
2
- const MinioService = require('minio')
3
-
4
- module.exports = class S3 extends Service {
5
- #container
6
- #endPoint
7
- #port
8
- #useSSL
9
- #accessKey
10
- #secretKey
11
-
12
- constructor(container, endPoint, port, useSSL, accessKey, secretKey) {
13
- super('s3')
14
- this.#container = container
15
- this.#endPoint = endPoint
16
- this.#port = port
17
- this.#useSSL = useSSL
18
- this.#accessKey = accessKey
19
- this.#secretKey = secretKey
20
- }
21
-
22
- async boot() {
23
- this.client = new MinioService.Client({
24
- endPoint: this.#endPoint,
25
- port: this.#port,
26
- useSSL: this.#useSSL,
27
- accessKey: this.#accessKey,
28
- secretKey: this.#secretKey
29
- })
30
- }
31
-
32
- async saveFile(bucketName, fileName, file, contentType = 'binary/octet-stream') {
33
- this.#container.get('logger').debug(`Saving file ${fileName} to bucket ${bucketName}`);
34
- return new Promise((resolve, reject) => {
35
- this.client.putObject(
36
- bucketName,
37
- fileName,
38
- file,
39
- {
40
- "Content-Type": contentType
41
- },
42
- (err, etag) => {
43
- if (err) return reject(err);
44
- resolve(etag);
45
- }
46
- );
47
- });
48
- }
49
-
50
- async getFile(bucketName, fileName) {
51
- return new Promise((resolve, reject) => {
52
- let data = ''
53
- this.client.getObject(bucketName, fileName, (err, stream) => {
54
- if(err) return reject(err)
55
- stream.on('data', (chunk) => {
56
- data += chunk
57
- })
58
- stream.on('end', () => {
59
- resolve(data)
60
- })
61
- })
62
- })
63
- }
64
-
65
- async removeFile(bucketName, fileName) {
66
- this.#container.get('logger').debug(`Removing file ${fileName} from bucket ${bucketName}`);
67
- return this.client.removeObject(bucketName, fileName)
68
- }
69
-
70
- async createBucket(bucketName) {
71
- this.#container.get('logger').debug(`Creating bucket ${bucketName}`);
72
- return this.client.makeBucket(bucketName, 'us-east-1')
73
- }
74
-
75
- listBuckets() {
76
- return new Promise((resolve, reject) => {
77
- this.client.listBuckets((err, buckets) => {
78
- if(err) return reject(err)
79
- resolve(buckets)
80
- })
81
- })
82
- }
1
+ const Service = require("../Service");
2
+ const MinioService = require('minio')
3
+
4
+ module.exports = class S3 extends Service {
5
+ #container
6
+ #endPoint
7
+ #port
8
+ #useSSL
9
+ #accessKey
10
+ #secretKey
11
+
12
+ constructor(container, endPoint, port, useSSL, accessKey, secretKey) {
13
+ super('s3')
14
+ this.#container = container
15
+ this.#endPoint = endPoint
16
+ this.#port = port
17
+ this.#useSSL = useSSL
18
+ this.#accessKey = accessKey
19
+ this.#secretKey = secretKey
20
+ }
21
+
22
+ async boot() {
23
+ this.client = new MinioService.Client({
24
+ endPoint: this.#endPoint,
25
+ port: this.#port,
26
+ useSSL: this.#useSSL,
27
+ accessKey: this.#accessKey,
28
+ secretKey: this.#secretKey
29
+ })
30
+ }
31
+
32
+ async saveFile(bucketName, fileName, file, contentType = 'binary/octet-stream') {
33
+ this.#container.get('logger').debug(`Saving file ${fileName} to bucket ${bucketName}`);
34
+ return new Promise((resolve, reject) => {
35
+ this.client.putObject(
36
+ bucketName,
37
+ fileName,
38
+ file,
39
+ {
40
+ "Content-Type": contentType
41
+ },
42
+ (err, etag) => {
43
+ if (err) return reject(err);
44
+ resolve(etag);
45
+ }
46
+ );
47
+ });
48
+ }
49
+
50
+ async getFile(bucketName, fileName) {
51
+ return new Promise((resolve, reject) => {
52
+ let data = ''
53
+ this.client.getObject(bucketName, fileName, (err, stream) => {
54
+ if(err) return reject(err)
55
+ stream.on('data', (chunk) => {
56
+ data += chunk
57
+ })
58
+ stream.on('end', () => {
59
+ resolve(data)
60
+ })
61
+ })
62
+ })
63
+ }
64
+
65
+ async removeFile(bucketName, fileName) {
66
+ this.#container.get('logger').debug(`Removing file ${fileName} from bucket ${bucketName}`);
67
+ return this.client.removeObject(bucketName, fileName)
68
+ }
69
+
70
+ async createBucket(bucketName) {
71
+ this.#container.get('logger').debug(`Creating bucket ${bucketName}`);
72
+ return this.client.makeBucket(bucketName, 'us-east-1')
73
+ }
74
+
75
+ listBuckets() {
76
+ return new Promise((resolve, reject) => {
77
+ this.client.listBuckets((err, buckets) => {
78
+ if(err) return reject(err)
79
+ resolve(buckets)
80
+ })
81
+ })
82
+ }
83
83
  }
@@ -1,7 +1,7 @@
1
- module.exports = class Schedule {
2
- name;
3
-
4
- constructor(name) {
5
- this.name = name;
6
- }
1
+ module.exports = class Schedule {
2
+ name;
3
+
4
+ constructor(name) {
5
+ this.name = name;
6
+ }
7
7
  }
@@ -1,48 +1,48 @@
1
- const Service = require("../Service");
2
- const Schedule = require("./Schedule");
3
- const fs = require("fs");
4
- const path = require("path");
5
- const fg = require('fast-glob');
6
- const cron = require('node-cron');
7
-
8
- module.exports = class Scheduler extends Service {
9
- #container
10
-
11
- constructor(container) {
12
- super("scheduler");
13
- this.#container = container;
14
- }
15
-
16
- async boot() {
17
- const schedulers = await this.#loadSchedulersFromFolder(path.join(process.cwd(), "src", "schedulers"));
18
- await this.#container.get('logger').info(`Loaded ${schedulers.length} schedulers`);
19
- for (const schd of schedulers) {
20
- cron.schedule(schd.time, () => {
21
- try {
22
- schd.handle({ container: this.#container })
23
- } catch (e) {
24
- this.#container.get('logger').error(`Error executing scheduler ${schd.name}: ${e.message}`);
25
- }
26
- });
27
- this.#container.get('logger').info(`Scheduler ${schd.name}, ${schd.time} initialized`);
28
- }
29
- }
30
-
31
- async #loadSchedulersFromFolder(schedulersFolder) {
32
- this.#createSchedulersFolder(schedulersFolder);
33
- const schedulers = (await fg('**/*.js', { cwd: schedulersFolder })).map((schd) => {
34
- const schedule = require(path.join(schedulersFolder, schd));
35
- if(!(schedule.prototype instanceof Schedule)) throw new Error(`${schd} is not a valid handler`);
36
- return new schedule(schd.replace('.js', ''));
37
- });
38
- return schedulers;
39
- }
40
-
41
- #createSchedulersFolder(schedulersFolder, overwrite = false) {
42
- if (fs.existsSync(schedulersFolder) && !overwrite) return;
43
- this.#container.get('logger').info(`Creating schedules folder at ${schedulersFolder}`);
44
- fs.mkdirSync(schedulersFolder);
45
- }
46
-
47
-
1
+ const Service = require("../Service");
2
+ const Schedule = require("./Schedule");
3
+ const fs = require("fs");
4
+ const path = require("path");
5
+ const fg = require('fast-glob');
6
+ const cron = require('node-cron');
7
+
8
+ module.exports = class Scheduler extends Service {
9
+ #container
10
+
11
+ constructor(container) {
12
+ super("scheduler");
13
+ this.#container = container;
14
+ }
15
+
16
+ async boot() {
17
+ const schedulers = await this.#loadSchedulersFromFolder(path.join(process.cwd(), "src", "schedulers"));
18
+ await this.#container.get('logger').info(`Loaded ${schedulers.length} schedulers`);
19
+ for (const schd of schedulers) {
20
+ cron.schedule(schd.time, () => {
21
+ try {
22
+ schd.handle({ container: this.#container })
23
+ } catch (e) {
24
+ this.#container.get('logger').error(`Error executing scheduler ${schd.name}: ${e.message}`);
25
+ }
26
+ });
27
+ this.#container.get('logger').info(`Scheduler ${schd.name}, ${schd.time} initialized`);
28
+ }
29
+ }
30
+
31
+ async #loadSchedulersFromFolder(schedulersFolder) {
32
+ this.#createSchedulersFolder(schedulersFolder);
33
+ const schedulers = (await fg('**/*.js', { cwd: schedulersFolder })).map((schd) => {
34
+ const schedule = require(path.join(schedulersFolder, schd));
35
+ if(!(schedule.prototype instanceof Schedule)) throw new Error(`${schd} is not a valid handler`);
36
+ return new schedule(schd.replace('.js', ''));
37
+ });
38
+ return schedulers;
39
+ }
40
+
41
+ #createSchedulersFolder(schedulersFolder, overwrite = false) {
42
+ if (fs.existsSync(schedulersFolder) && !overwrite) return;
43
+ this.#container.get('logger').info(`Creating schedules folder at ${schedulersFolder}`);
44
+ fs.mkdirSync(schedulersFolder);
45
+ }
46
+
47
+
48
48
  }
@@ -1,11 +1,11 @@
1
- module.exports = class Guard {
2
- name;
3
-
4
- constructor(name) {
5
- this.name = name;
6
- }
7
-
8
- async handle({ container, socket}) {
9
- throw new Error("Method 'handle' must be implemented.");
10
- }
1
+ module.exports = class Guard {
2
+ name;
3
+
4
+ constructor(name) {
5
+ this.name = name;
6
+ }
7
+
8
+ async handle({ container, socket}) {
9
+ throw new Error("Method 'handle' must be implemented.");
10
+ }
11
11
  }
@@ -1,11 +1,11 @@
1
- module.exports = class Handler {
2
- event;
3
-
4
- constructor(event) {
5
- this.event = event;
6
- }
7
-
8
- handle({ container, socket, data }) {
9
- throw new Error("You should implement 'handle()' method on your handler");
10
- }
1
+ module.exports = class Handler {
2
+ event;
3
+
4
+ constructor(event) {
5
+ this.event = event;
6
+ }
7
+
8
+ handle({ container, socket, data }) {
9
+ throw new Error("You should implement 'handle()' method on your handler");
10
+ }
11
11
  }