@devbro/pashmak 0.1.47 → 0.1.49
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/dist/DatabaseServiceProvider.d.mts +4 -1
- package/dist/DatabaseServiceProvider.mjs +5 -2
- package/dist/DatabaseServiceProvider.mjs.map +1 -1
- package/dist/app/console/StartCommand.d.mts +1 -0
- package/dist/app/console/StartCommand.mjs +5 -2
- package/dist/app/console/StartCommand.mjs.map +1 -1
- package/dist/app/console/generate/GenerateApiDocsCommand.d.mts +34 -2
- package/dist/app/console/generate/GenerateApiDocsCommand.mjs +183 -100
- package/dist/app/console/generate/GenerateApiDocsCommand.mjs.map +1 -1
- package/dist/app/console/project/base_project/src/config/storages.ts.tpl +2 -2
- package/dist/bin/DatabaseServiceProvider.cjs +8 -2
- package/dist/bin/app/console/DefaultCommand.cjs +64 -32
- package/dist/bin/app/console/KeyGenerateCommand.cjs +64 -32
- package/dist/bin/app/console/StartCommand.cjs +69 -34
- package/dist/bin/app/console/generate/GenerateApiDocsCommand.cjs +248 -133
- package/dist/bin/app/console/generate/GenerateControllerCommand.cjs +64 -32
- package/dist/bin/app/console/generate/index.cjs +248 -133
- package/dist/bin/app/console/index.cjs +253 -135
- package/dist/bin/app/console/migrate/GenerateMigrateCommand.cjs +64 -32
- package/dist/bin/app/console/migrate/MigrateCommand.cjs +64 -32
- package/dist/bin/app/console/migrate/MigrateRollbackCommand.cjs +64 -32
- package/dist/bin/app/console/migrate/index.cjs +64 -32
- package/dist/bin/app/console/queue/GenerateQueueMigrateCommand.cjs +64 -32
- package/dist/bin/cache.cjs +64 -32
- package/dist/bin/facades.cjs +64 -32
- package/dist/bin/factories.cjs +64 -32
- package/dist/bin/http.cjs +739 -0
- package/dist/bin/index.cjs +264 -141
- package/dist/bin/middlewares.cjs +66 -34
- package/dist/bin/queue.cjs +64 -32
- package/dist/bin/router.cjs +4 -8
- package/dist/config.d.mts +0 -1
- package/dist/facades.mjs +2 -13
- package/dist/facades.mjs.map +1 -1
- package/dist/factories.mjs +45 -2
- package/dist/factories.mjs.map +1 -1
- package/dist/http.d.mts +4 -0
- package/dist/http.mjs +20 -0
- package/dist/http.mjs.map +1 -1
- package/dist/queue.d.mts +1 -1
- package/dist/queue.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -77,6 +77,7 @@ var MiddlewareFactory = class {
|
|
|
77
77
|
};
|
|
78
78
|
|
|
79
79
|
// ../neko-router/dist/CompiledRoute.mjs
|
|
80
|
+
var import_neko_helper = require("@devbro/neko-helper");
|
|
80
81
|
var CompiledRoute = class {
|
|
81
82
|
static {
|
|
82
83
|
__name(this, "CompiledRoute");
|
|
@@ -97,7 +98,7 @@ var CompiledRoute = class {
|
|
|
97
98
|
for (const middleware of [...this.globalMiddlewares, ...this.route.getMiddlewares()]) {
|
|
98
99
|
if (middleware instanceof Middleware) {
|
|
99
100
|
this.middlewares.push(middleware);
|
|
100
|
-
} else if (
|
|
101
|
+
} else if ((0, import_neko_helper.isClass)(middleware)) {
|
|
101
102
|
this.middlewares.push(middleware.getInstance({}));
|
|
102
103
|
} else if (typeof middleware === "function") {
|
|
103
104
|
this.middlewares.push(MiddlewareFactory.create(middleware));
|
|
@@ -106,13 +107,8 @@ var CompiledRoute = class {
|
|
|
106
107
|
}
|
|
107
108
|
}
|
|
108
109
|
}
|
|
109
|
-
isClass(func) {
|
|
110
|
-
return typeof func === "function" && /^class\s/.test(Function.prototype.toString.call(func));
|
|
111
|
-
}
|
|
112
110
|
async run() {
|
|
113
|
-
|
|
114
|
-
this.response.end();
|
|
115
|
-
return rc;
|
|
111
|
+
return await this.runMiddlewares(this.middlewares, this.request, this.response);
|
|
116
112
|
}
|
|
117
113
|
prepareOutputJsonFormat(obj) {
|
|
118
114
|
function traverse(value) {
|
|
@@ -246,7 +242,7 @@ var Route = class {
|
|
|
246
242
|
i = start;
|
|
247
243
|
} else if (char === "*") {
|
|
248
244
|
let start = i + 1;
|
|
249
|
-
while (start < path3.length && /[a-zA-Z0-9_
|
|
245
|
+
while (start < path3.length && /[a-zA-Z0-9_]/.test(path3[start])) {
|
|
250
246
|
start++;
|
|
251
247
|
}
|
|
252
248
|
tokens.push({ type: "WILDCARD", value: path3.slice(i + 1, start) });
|
|
@@ -457,7 +453,7 @@ var Router = class {
|
|
|
457
453
|
|
|
458
454
|
// src/facades.mts
|
|
459
455
|
var import_neko_scheduler = require("@devbro/neko-scheduler");
|
|
460
|
-
var
|
|
456
|
+
var import_neko_helper3 = require("@devbro/neko-helper");
|
|
461
457
|
var import_neko_context3 = require("@devbro/neko-context");
|
|
462
458
|
var import_neko_storage2 = require("@devbro/neko-storage");
|
|
463
459
|
var import_neko_mailer2 = require("@devbro/neko-mailer");
|
|
@@ -466,7 +462,24 @@ var import_clipanion = require("clipanion");
|
|
|
466
462
|
|
|
467
463
|
// src/http.mts
|
|
468
464
|
var http_exports = {};
|
|
465
|
+
__export(http_exports, {
|
|
466
|
+
handleHttpErrors: () => handleHttpErrors
|
|
467
|
+
});
|
|
468
|
+
var import_neko_http = require("@devbro/neko-http");
|
|
469
469
|
__reExport(http_exports, require("@devbro/neko-http"));
|
|
470
|
+
async function handleHttpErrors(err, req, res) {
|
|
471
|
+
if (err instanceof import_neko_http.HttpError) {
|
|
472
|
+
res.writeHead(err.statusCode, { "Content-Type": "application/json" });
|
|
473
|
+
res.write(JSON.stringify({ message: err.message, error: err.code }));
|
|
474
|
+
logger().warn({ msg: "HttpError: " + err.message, err });
|
|
475
|
+
return;
|
|
476
|
+
} else {
|
|
477
|
+
logger().error({ msg: "Error: " + err.message, err });
|
|
478
|
+
}
|
|
479
|
+
res.writeHead(500, { "Content-Type": "application/json" });
|
|
480
|
+
res.write(JSON.stringify({ error: "Internal Server Error" }));
|
|
481
|
+
}
|
|
482
|
+
__name(handleHttpErrors, "handleHttpErrors");
|
|
470
483
|
|
|
471
484
|
// src/facades.mts
|
|
472
485
|
var import_neko_logger = require("@devbro/neko-logger");
|
|
@@ -481,7 +494,7 @@ __export(queue_exports, {
|
|
|
481
494
|
DatabaseTransport: () => DatabaseTransport
|
|
482
495
|
});
|
|
483
496
|
__reExport(queue_exports, require("@devbro/neko-queue"));
|
|
484
|
-
var
|
|
497
|
+
var import_neko_helper2 = require("@devbro/neko-helper");
|
|
485
498
|
var import_neko_context2 = require("@devbro/neko-context");
|
|
486
499
|
var DatabaseTransport = class {
|
|
487
500
|
static {
|
|
@@ -542,7 +555,7 @@ var DatabaseTransport = class {
|
|
|
542
555
|
}, "processMessage");
|
|
543
556
|
constructor(config3 = {}) {
|
|
544
557
|
this.config = { ...this.config, ...config3 };
|
|
545
|
-
this.repeater = (0,
|
|
558
|
+
this.repeater = (0, import_neko_helper2.createRepeater)(
|
|
546
559
|
this.processMessage,
|
|
547
560
|
this.config.listen_interval * 1e3
|
|
548
561
|
);
|
|
@@ -610,6 +623,24 @@ import_neko_queue.QueueTransportFactory.register("database", (opt) => {
|
|
|
610
623
|
import_neko_queue.QueueTransportFactory.register("memory", (opt) => {
|
|
611
624
|
return new import_neko_queue.MemoryTransport(opt);
|
|
612
625
|
});
|
|
626
|
+
import_neko_queue.QueueTransportFactory.register("sqs", (opt) => {
|
|
627
|
+
return new import_neko_queue.AwsSqsTransport(opt);
|
|
628
|
+
});
|
|
629
|
+
import_neko_queue.QueueTransportFactory.register("amqp", (opt) => {
|
|
630
|
+
return new import_neko_queue.AmqpTransport(opt);
|
|
631
|
+
});
|
|
632
|
+
import_neko_queue.QueueTransportFactory.register("redis", (opt) => {
|
|
633
|
+
return new import_neko_queue.RedisTransport(opt);
|
|
634
|
+
});
|
|
635
|
+
import_neko_queue.QueueTransportFactory.register("async", (opt) => {
|
|
636
|
+
return new import_neko_queue.AsyncTransport();
|
|
637
|
+
});
|
|
638
|
+
import_neko_queue.QueueTransportFactory.register("azure_service_bus", (opt) => {
|
|
639
|
+
return new import_neko_queue.AzureServiceBusTransport(opt);
|
|
640
|
+
});
|
|
641
|
+
import_neko_queue.QueueTransportFactory.register("google_pubsub", (opt) => {
|
|
642
|
+
return new import_neko_queue.GooglePubSubTransport(opt);
|
|
643
|
+
});
|
|
613
644
|
var CacheProviderFactory = class _CacheProviderFactory {
|
|
614
645
|
static {
|
|
615
646
|
__name(this, "CacheProviderFactory");
|
|
@@ -640,12 +671,24 @@ import_neko_storage.StorageProviderFactory.register("local", (opt) => {
|
|
|
640
671
|
import_neko_storage.StorageProviderFactory.register("s3", (opt) => {
|
|
641
672
|
return new import_neko_storage.AWSS3StorageProvider(opt);
|
|
642
673
|
});
|
|
674
|
+
import_neko_storage.StorageProviderFactory.register("gcp", (opt) => {
|
|
675
|
+
return new import_neko_storage.GCPStorageProvider(opt);
|
|
676
|
+
});
|
|
677
|
+
import_neko_storage.StorageProviderFactory.register("azure", (opt) => {
|
|
678
|
+
return new import_neko_storage.AzureBlobStorageProvider(opt);
|
|
679
|
+
});
|
|
680
|
+
import_neko_storage.StorageProviderFactory.register("ftp", (opt) => {
|
|
681
|
+
return new import_neko_storage.FTPStorageProvider(opt);
|
|
682
|
+
});
|
|
683
|
+
import_neko_storage.StorageProviderFactory.register("sftp", (opt) => {
|
|
684
|
+
return new import_neko_storage.SFTPStorageProvider(opt);
|
|
685
|
+
});
|
|
643
686
|
|
|
644
687
|
// src/facades.mts
|
|
645
688
|
var import_neko_cache2 = require("@devbro/neko-cache");
|
|
646
689
|
var import_neko_queue2 = require("@devbro/neko-queue");
|
|
647
|
-
var router = (0,
|
|
648
|
-
var scheduler = (0,
|
|
690
|
+
var router = (0, import_neko_helper3.createSingleton)(() => new Router());
|
|
691
|
+
var scheduler = (0, import_neko_helper3.createSingleton)(() => {
|
|
649
692
|
const rc = new import_neko_scheduler.Scheduler();
|
|
650
693
|
rc.setErrorHandler((err, job) => {
|
|
651
694
|
logger().error({
|
|
@@ -657,7 +700,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
|
|
|
657
700
|
return rc;
|
|
658
701
|
});
|
|
659
702
|
var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
|
|
660
|
-
var storage = (0,
|
|
703
|
+
var storage = (0, import_neko_helper3.createSingleton)((label = "default") => {
|
|
661
704
|
let storage_config = import_neko_config.config.get(["storages", label].join("."));
|
|
662
705
|
const provider = import_neko_storage2.StorageProviderFactory.create(
|
|
663
706
|
storage_config.provider,
|
|
@@ -665,7 +708,7 @@ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
|
|
|
665
708
|
);
|
|
666
709
|
return new import_neko_storage2.Storage(provider);
|
|
667
710
|
});
|
|
668
|
-
var cli = (0,
|
|
711
|
+
var cli = (0, import_neko_helper3.createSingleton)(() => {
|
|
669
712
|
const [node, app, ...args] = process.argv;
|
|
670
713
|
return new import_clipanion.Cli({
|
|
671
714
|
binaryLabel: `My Application`,
|
|
@@ -673,24 +716,13 @@ var cli = (0, import_neko_helper2.createSingleton)(() => {
|
|
|
673
716
|
binaryVersion: `1.0.0`
|
|
674
717
|
});
|
|
675
718
|
});
|
|
676
|
-
var httpServer = (0,
|
|
719
|
+
var httpServer = (0, import_neko_helper3.createSingleton)(() => {
|
|
677
720
|
const server = new http_exports.HttpServer();
|
|
678
|
-
server.setErrorHandler(
|
|
679
|
-
if (err instanceof http_exports.HttpError) {
|
|
680
|
-
res.writeHead(err.statusCode, { "Content-Type": "application/json" });
|
|
681
|
-
res.end(JSON.stringify({ message: err.message, error: err.code }));
|
|
682
|
-
logger().warn({ msg: "HttpError: " + err.message, err });
|
|
683
|
-
return;
|
|
684
|
-
} else {
|
|
685
|
-
logger().error({ msg: "Error: " + err.message, err });
|
|
686
|
-
}
|
|
687
|
-
res.writeHead(500, { "Content-Type": "" });
|
|
688
|
-
res.end(JSON.stringify({ error: "Internal Server Error" }));
|
|
689
|
-
});
|
|
721
|
+
server.setErrorHandler(handleHttpErrors);
|
|
690
722
|
server.setRouter(router());
|
|
691
723
|
return server;
|
|
692
724
|
});
|
|
693
|
-
var logger = (0,
|
|
725
|
+
var logger = (0, import_neko_helper3.createSingleton)((label) => {
|
|
694
726
|
const logger_config = import_neko_config.config.get(["loggers", label].join("."));
|
|
695
727
|
const rc = new import_neko_logger.Logger(logger_config);
|
|
696
728
|
rc.setExtrasFunction((message) => {
|
|
@@ -699,7 +731,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
|
|
|
699
731
|
});
|
|
700
732
|
return rc;
|
|
701
733
|
});
|
|
702
|
-
var mailer = (0,
|
|
734
|
+
var mailer = (0, import_neko_helper3.createSingleton)((label) => {
|
|
703
735
|
const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
|
|
704
736
|
const provider = import_neko_mailer2.MailerProviderFactory.create(
|
|
705
737
|
mailer_config.provider,
|
|
@@ -708,7 +740,7 @@ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
|
|
|
708
740
|
const rc = new import_neko_mailer2.Mailer(provider);
|
|
709
741
|
return rc;
|
|
710
742
|
});
|
|
711
|
-
var queue = (0,
|
|
743
|
+
var queue = (0, import_neko_helper3.createSingleton)((label) => {
|
|
712
744
|
const queue_config = import_neko_config.config.get(["queues", label].join("."));
|
|
713
745
|
if (!queue_config) {
|
|
714
746
|
throw new Error(`Queue configuration for '${label}' not found`);
|
|
@@ -719,7 +751,7 @@ var queue = (0, import_neko_helper2.createSingleton)((label) => {
|
|
|
719
751
|
);
|
|
720
752
|
return new import_neko_queue2.QueueConnection(provider);
|
|
721
753
|
});
|
|
722
|
-
var cache = (0,
|
|
754
|
+
var cache = (0, import_neko_helper3.createSingleton)((label) => {
|
|
723
755
|
const cache_config = import_neko_config.config.get(["caches", label].join("."));
|
|
724
756
|
if (!cache_config) {
|
|
725
757
|
throw new Error(`Cache configuration for '${label}' not found`);
|