@devbro/pashmak 0.1.48 → 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.
Files changed (38) hide show
  1. package/dist/DatabaseServiceProvider.d.mts +4 -1
  2. package/dist/DatabaseServiceProvider.mjs +5 -2
  3. package/dist/DatabaseServiceProvider.mjs.map +1 -1
  4. package/dist/app/console/StartCommand.d.mts +1 -0
  5. package/dist/app/console/StartCommand.mjs +5 -2
  6. package/dist/app/console/StartCommand.mjs.map +1 -1
  7. package/dist/app/console/generate/GenerateApiDocsCommand.d.mts +34 -2
  8. package/dist/app/console/generate/GenerateApiDocsCommand.mjs +183 -100
  9. package/dist/app/console/generate/GenerateApiDocsCommand.mjs.map +1 -1
  10. package/dist/app/console/project/base_project/src/config/storages.ts.tpl +2 -2
  11. package/dist/bin/DatabaseServiceProvider.cjs +8 -2
  12. package/dist/bin/app/console/DefaultCommand.cjs +45 -17
  13. package/dist/bin/app/console/KeyGenerateCommand.cjs +45 -17
  14. package/dist/bin/app/console/StartCommand.cjs +50 -19
  15. package/dist/bin/app/console/generate/GenerateApiDocsCommand.cjs +229 -118
  16. package/dist/bin/app/console/generate/GenerateControllerCommand.cjs +45 -17
  17. package/dist/bin/app/console/generate/index.cjs +229 -118
  18. package/dist/bin/app/console/index.cjs +234 -120
  19. package/dist/bin/app/console/migrate/GenerateMigrateCommand.cjs +45 -17
  20. package/dist/bin/app/console/migrate/MigrateCommand.cjs +45 -17
  21. package/dist/bin/app/console/migrate/MigrateRollbackCommand.cjs +45 -17
  22. package/dist/bin/app/console/migrate/index.cjs +45 -17
  23. package/dist/bin/app/console/queue/GenerateQueueMigrateCommand.cjs +45 -17
  24. package/dist/bin/cache.cjs +45 -17
  25. package/dist/bin/facades.cjs +45 -17
  26. package/dist/bin/factories.cjs +45 -17
  27. package/dist/bin/http.cjs +45 -17
  28. package/dist/bin/index.cjs +243 -126
  29. package/dist/bin/middlewares.cjs +45 -17
  30. package/dist/bin/queue.cjs +45 -17
  31. package/dist/bin/router.cjs +3 -5
  32. package/dist/factories.mjs +45 -2
  33. package/dist/factories.mjs.map +1 -1
  34. package/dist/http.mjs +1 -1
  35. package/dist/http.mjs.map +1 -1
  36. package/dist/queue.d.mts +1 -1
  37. package/dist/queue.mjs.map +1 -1
  38. package/package.json +1 -1
@@ -86,6 +86,7 @@ var MiddlewareFactory = class {
86
86
  };
87
87
 
88
88
  // ../neko-router/dist/CompiledRoute.mjs
89
+ var import_neko_helper = require("@devbro/neko-helper");
89
90
  var CompiledRoute = class {
90
91
  static {
91
92
  __name(this, "CompiledRoute");
@@ -106,7 +107,7 @@ var CompiledRoute = class {
106
107
  for (const middleware of [...this.globalMiddlewares, ...this.route.getMiddlewares()]) {
107
108
  if (middleware instanceof Middleware) {
108
109
  this.middlewares.push(middleware);
109
- } else if (this.isClass(middleware)) {
110
+ } else if ((0, import_neko_helper.isClass)(middleware)) {
110
111
  this.middlewares.push(middleware.getInstance({}));
111
112
  } else if (typeof middleware === "function") {
112
113
  this.middlewares.push(MiddlewareFactory.create(middleware));
@@ -115,9 +116,6 @@ var CompiledRoute = class {
115
116
  }
116
117
  }
117
118
  }
118
- isClass(func) {
119
- return typeof func === "function" && /^class\s/.test(Function.prototype.toString.call(func));
120
- }
121
119
  async run() {
122
120
  return await this.runMiddlewares(this.middlewares, this.request, this.response);
123
121
  }
@@ -253,7 +251,7 @@ var Route = class {
253
251
  i = start;
254
252
  } else if (char === "*") {
255
253
  let start = i + 1;
256
- while (start < path2.length && /[a-zA-Z0-9_\.]/.test(path2[start])) {
254
+ while (start < path2.length && /[a-zA-Z0-9_]/.test(path2[start])) {
257
255
  start++;
258
256
  }
259
257
  tokens.push({ type: "WILDCARD", value: path2.slice(i + 1, start) });
@@ -464,7 +462,7 @@ var Router = class {
464
462
 
465
463
  // src/facades.mts
466
464
  var import_neko_scheduler = require("@devbro/neko-scheduler");
467
- var import_neko_helper2 = require("@devbro/neko-helper");
465
+ var import_neko_helper3 = require("@devbro/neko-helper");
468
466
  var import_neko_context3 = require("@devbro/neko-context");
469
467
  var import_neko_storage2 = require("@devbro/neko-storage");
470
468
  var import_neko_mailer2 = require("@devbro/neko-mailer");
@@ -505,7 +503,7 @@ __export(queue_exports, {
505
503
  DatabaseTransport: () => DatabaseTransport
506
504
  });
507
505
  __reExport(queue_exports, require("@devbro/neko-queue"));
508
- var import_neko_helper = require("@devbro/neko-helper");
506
+ var import_neko_helper2 = require("@devbro/neko-helper");
509
507
  var import_neko_context2 = require("@devbro/neko-context");
510
508
  var DatabaseTransport = class {
511
509
  static {
@@ -566,7 +564,7 @@ var DatabaseTransport = class {
566
564
  }, "processMessage");
567
565
  constructor(config2 = {}) {
568
566
  this.config = { ...this.config, ...config2 };
569
- this.repeater = (0, import_neko_helper.createRepeater)(
567
+ this.repeater = (0, import_neko_helper2.createRepeater)(
570
568
  this.processMessage,
571
569
  this.config.listen_interval * 1e3
572
570
  );
@@ -634,6 +632,24 @@ import_neko_queue.QueueTransportFactory.register("database", (opt) => {
634
632
  import_neko_queue.QueueTransportFactory.register("memory", (opt) => {
635
633
  return new import_neko_queue.MemoryTransport(opt);
636
634
  });
635
+ import_neko_queue.QueueTransportFactory.register("sqs", (opt) => {
636
+ return new import_neko_queue.AwsSqsTransport(opt);
637
+ });
638
+ import_neko_queue.QueueTransportFactory.register("amqp", (opt) => {
639
+ return new import_neko_queue.AmqpTransport(opt);
640
+ });
641
+ import_neko_queue.QueueTransportFactory.register("redis", (opt) => {
642
+ return new import_neko_queue.RedisTransport(opt);
643
+ });
644
+ import_neko_queue.QueueTransportFactory.register("async", (opt) => {
645
+ return new import_neko_queue.AsyncTransport();
646
+ });
647
+ import_neko_queue.QueueTransportFactory.register("azure_service_bus", (opt) => {
648
+ return new import_neko_queue.AzureServiceBusTransport(opt);
649
+ });
650
+ import_neko_queue.QueueTransportFactory.register("google_pubsub", (opt) => {
651
+ return new import_neko_queue.GooglePubSubTransport(opt);
652
+ });
637
653
  var CacheProviderFactory = class _CacheProviderFactory {
638
654
  static {
639
655
  __name(this, "CacheProviderFactory");
@@ -664,12 +680,24 @@ import_neko_storage.StorageProviderFactory.register("local", (opt) => {
664
680
  import_neko_storage.StorageProviderFactory.register("s3", (opt) => {
665
681
  return new import_neko_storage.AWSS3StorageProvider(opt);
666
682
  });
683
+ import_neko_storage.StorageProviderFactory.register("gcp", (opt) => {
684
+ return new import_neko_storage.GCPStorageProvider(opt);
685
+ });
686
+ import_neko_storage.StorageProviderFactory.register("azure", (opt) => {
687
+ return new import_neko_storage.AzureBlobStorageProvider(opt);
688
+ });
689
+ import_neko_storage.StorageProviderFactory.register("ftp", (opt) => {
690
+ return new import_neko_storage.FTPStorageProvider(opt);
691
+ });
692
+ import_neko_storage.StorageProviderFactory.register("sftp", (opt) => {
693
+ return new import_neko_storage.SFTPStorageProvider(opt);
694
+ });
667
695
 
668
696
  // src/facades.mts
669
697
  var import_neko_cache2 = require("@devbro/neko-cache");
670
698
  var import_neko_queue2 = require("@devbro/neko-queue");
671
- var router = (0, import_neko_helper2.createSingleton)(() => new Router());
672
- var scheduler = (0, import_neko_helper2.createSingleton)(() => {
699
+ var router = (0, import_neko_helper3.createSingleton)(() => new Router());
700
+ var scheduler = (0, import_neko_helper3.createSingleton)(() => {
673
701
  const rc = new import_neko_scheduler.Scheduler();
674
702
  rc.setErrorHandler((err, job) => {
675
703
  logger().error({
@@ -681,7 +709,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
681
709
  return rc;
682
710
  });
683
711
  var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
684
- var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
712
+ var storage = (0, import_neko_helper3.createSingleton)((label = "default") => {
685
713
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
686
714
  const provider = import_neko_storage2.StorageProviderFactory.create(
687
715
  storage_config.provider,
@@ -689,7 +717,7 @@ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
689
717
  );
690
718
  return new import_neko_storage2.Storage(provider);
691
719
  });
692
- var cli = (0, import_neko_helper2.createSingleton)(() => {
720
+ var cli = (0, import_neko_helper3.createSingleton)(() => {
693
721
  const [node, app, ...args] = process.argv;
694
722
  return new import_clipanion.Cli({
695
723
  binaryLabel: `My Application`,
@@ -697,13 +725,13 @@ var cli = (0, import_neko_helper2.createSingleton)(() => {
697
725
  binaryVersion: `1.0.0`
698
726
  });
699
727
  });
700
- var httpServer = (0, import_neko_helper2.createSingleton)(() => {
728
+ var httpServer = (0, import_neko_helper3.createSingleton)(() => {
701
729
  const server = new http_exports.HttpServer();
702
730
  server.setErrorHandler(handleHttpErrors);
703
731
  server.setRouter(router());
704
732
  return server;
705
733
  });
706
- var logger = (0, import_neko_helper2.createSingleton)((label) => {
734
+ var logger = (0, import_neko_helper3.createSingleton)((label) => {
707
735
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
708
736
  const rc = new import_neko_logger.Logger(logger_config);
709
737
  rc.setExtrasFunction((message) => {
@@ -712,7 +740,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
712
740
  });
713
741
  return rc;
714
742
  });
715
- var mailer = (0, import_neko_helper2.createSingleton)((label) => {
743
+ var mailer = (0, import_neko_helper3.createSingleton)((label) => {
716
744
  const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
717
745
  const provider = import_neko_mailer2.MailerProviderFactory.create(
718
746
  mailer_config.provider,
@@ -721,7 +749,7 @@ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
721
749
  const rc = new import_neko_mailer2.Mailer(provider);
722
750
  return rc;
723
751
  });
724
- var queue = (0, import_neko_helper2.createSingleton)((label) => {
752
+ var queue = (0, import_neko_helper3.createSingleton)((label) => {
725
753
  const queue_config = import_neko_config.config.get(["queues", label].join("."));
726
754
  if (!queue_config) {
727
755
  throw new Error(`Queue configuration for '${label}' not found`);
@@ -732,7 +760,7 @@ var queue = (0, import_neko_helper2.createSingleton)((label) => {
732
760
  );
733
761
  return new import_neko_queue2.QueueConnection(provider);
734
762
  });
735
- var cache = (0, import_neko_helper2.createSingleton)((label) => {
763
+ var cache = (0, import_neko_helper3.createSingleton)((label) => {
736
764
  const cache_config = import_neko_config.config.get(["caches", label].join("."));
737
765
  if (!cache_config) {
738
766
  throw new Error(`Cache configuration for '${label}' not found`);
@@ -87,6 +87,7 @@ var MiddlewareFactory = class {
87
87
  };
88
88
 
89
89
  // ../neko-router/dist/CompiledRoute.mjs
90
+ var import_neko_helper = require("@devbro/neko-helper");
90
91
  var CompiledRoute = class {
91
92
  static {
92
93
  __name(this, "CompiledRoute");
@@ -107,7 +108,7 @@ var CompiledRoute = class {
107
108
  for (const middleware of [...this.globalMiddlewares, ...this.route.getMiddlewares()]) {
108
109
  if (middleware instanceof Middleware) {
109
110
  this.middlewares.push(middleware);
110
- } else if (this.isClass(middleware)) {
111
+ } else if ((0, import_neko_helper.isClass)(middleware)) {
111
112
  this.middlewares.push(middleware.getInstance({}));
112
113
  } else if (typeof middleware === "function") {
113
114
  this.middlewares.push(MiddlewareFactory.create(middleware));
@@ -116,9 +117,6 @@ var CompiledRoute = class {
116
117
  }
117
118
  }
118
119
  }
119
- isClass(func) {
120
- return typeof func === "function" && /^class\s/.test(Function.prototype.toString.call(func));
121
- }
122
120
  async run() {
123
121
  return await this.runMiddlewares(this.middlewares, this.request, this.response);
124
122
  }
@@ -254,7 +252,7 @@ var Route = class {
254
252
  i = start;
255
253
  } else if (char === "*") {
256
254
  let start = i + 1;
257
- while (start < path2.length && /[a-zA-Z0-9_\.]/.test(path2[start])) {
255
+ while (start < path2.length && /[a-zA-Z0-9_]/.test(path2[start])) {
258
256
  start++;
259
257
  }
260
258
  tokens.push({ type: "WILDCARD", value: path2.slice(i + 1, start) });
@@ -465,7 +463,7 @@ var Router = class {
465
463
 
466
464
  // src/facades.mts
467
465
  var import_neko_scheduler = require("@devbro/neko-scheduler");
468
- var import_neko_helper = require("@devbro/neko-helper");
466
+ var import_neko_helper2 = require("@devbro/neko-helper");
469
467
  var import_neko_context2 = require("@devbro/neko-context");
470
468
  var import_neko_storage = require("@devbro/neko-storage");
471
469
  var import_neko_mailer = require("@devbro/neko-mailer");
@@ -497,8 +495,8 @@ __name(handleHttpErrors, "handleHttpErrors");
497
495
  var import_neko_logger = require("@devbro/neko-logger");
498
496
  var import_neko_cache = require("@devbro/neko-cache");
499
497
  var import_neko_queue = require("@devbro/neko-queue");
500
- var router = (0, import_neko_helper.createSingleton)(() => new Router());
501
- var scheduler = (0, import_neko_helper.createSingleton)(() => {
498
+ var router = (0, import_neko_helper2.createSingleton)(() => new Router());
499
+ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
502
500
  const rc = new import_neko_scheduler.Scheduler();
503
501
  rc.setErrorHandler((err, job) => {
504
502
  logger().error({
@@ -510,7 +508,7 @@ var scheduler = (0, import_neko_helper.createSingleton)(() => {
510
508
  return rc;
511
509
  });
512
510
  var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context2.ctx)().getOrThrow(["database", label]), "db");
513
- var storage = (0, import_neko_helper.createSingleton)((label = "default") => {
511
+ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
514
512
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
515
513
  const provider = import_neko_storage.StorageProviderFactory.create(
516
514
  storage_config.provider,
@@ -518,7 +516,7 @@ var storage = (0, import_neko_helper.createSingleton)((label = "default") => {
518
516
  );
519
517
  return new import_neko_storage.Storage(provider);
520
518
  });
521
- var cli = (0, import_neko_helper.createSingleton)(() => {
519
+ var cli = (0, import_neko_helper2.createSingleton)(() => {
522
520
  const [node, app, ...args] = process.argv;
523
521
  return new import_clipanion.Cli({
524
522
  binaryLabel: `My Application`,
@@ -526,13 +524,13 @@ var cli = (0, import_neko_helper.createSingleton)(() => {
526
524
  binaryVersion: `1.0.0`
527
525
  });
528
526
  });
529
- var httpServer = (0, import_neko_helper.createSingleton)(() => {
527
+ var httpServer = (0, import_neko_helper2.createSingleton)(() => {
530
528
  const server = new http_exports.HttpServer();
531
529
  server.setErrorHandler(handleHttpErrors);
532
530
  server.setRouter(router());
533
531
  return server;
534
532
  });
535
- var logger = (0, import_neko_helper.createSingleton)((label) => {
533
+ var logger = (0, import_neko_helper2.createSingleton)((label) => {
536
534
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
537
535
  const rc = new import_neko_logger.Logger(logger_config);
538
536
  rc.setExtrasFunction((message) => {
@@ -541,7 +539,7 @@ var logger = (0, import_neko_helper.createSingleton)((label) => {
541
539
  });
542
540
  return rc;
543
541
  });
544
- var mailer = (0, import_neko_helper.createSingleton)((label) => {
542
+ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
545
543
  const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
546
544
  const provider = import_neko_mailer.MailerProviderFactory.create(
547
545
  mailer_config.provider,
@@ -550,7 +548,7 @@ var mailer = (0, import_neko_helper.createSingleton)((label) => {
550
548
  const rc = new import_neko_mailer.Mailer(provider);
551
549
  return rc;
552
550
  });
553
- var queue = (0, import_neko_helper.createSingleton)((label) => {
551
+ var queue = (0, import_neko_helper2.createSingleton)((label) => {
554
552
  const queue_config = import_neko_config.config.get(["queues", label].join("."));
555
553
  if (!queue_config) {
556
554
  throw new Error(`Queue configuration for '${label}' not found`);
@@ -561,7 +559,7 @@ var queue = (0, import_neko_helper.createSingleton)((label) => {
561
559
  );
562
560
  return new import_neko_queue.QueueConnection(provider);
563
561
  });
564
- var cache = (0, import_neko_helper.createSingleton)((label) => {
562
+ var cache = (0, import_neko_helper2.createSingleton)((label) => {
565
563
  const cache_config = import_neko_config.config.get(["caches", label].join("."));
566
564
  if (!cache_config) {
567
565
  throw new Error(`Cache configuration for '${label}' not found`);
@@ -574,7 +572,7 @@ var cache = (0, import_neko_helper.createSingleton)((label) => {
574
572
  });
575
573
 
576
574
  // src/queue.mts
577
- var import_neko_helper2 = require("@devbro/neko-helper");
575
+ var import_neko_helper3 = require("@devbro/neko-helper");
578
576
  var import_neko_context3 = require("@devbro/neko-context");
579
577
  var DatabaseTransport = class {
580
578
  static {
@@ -635,7 +633,7 @@ var DatabaseTransport = class {
635
633
  }, "processMessage");
636
634
  constructor(config2 = {}) {
637
635
  this.config = { ...this.config, ...config2 };
638
- this.repeater = (0, import_neko_helper2.createRepeater)(
636
+ this.repeater = (0, import_neko_helper3.createRepeater)(
639
637
  this.processMessage,
640
638
  this.config.listen_interval * 1e3
641
639
  );
@@ -703,6 +701,24 @@ import_neko_queue2.QueueTransportFactory.register("database", (opt) => {
703
701
  import_neko_queue2.QueueTransportFactory.register("memory", (opt) => {
704
702
  return new import_neko_queue2.MemoryTransport(opt);
705
703
  });
704
+ import_neko_queue2.QueueTransportFactory.register("sqs", (opt) => {
705
+ return new import_neko_queue2.AwsSqsTransport(opt);
706
+ });
707
+ import_neko_queue2.QueueTransportFactory.register("amqp", (opt) => {
708
+ return new import_neko_queue2.AmqpTransport(opt);
709
+ });
710
+ import_neko_queue2.QueueTransportFactory.register("redis", (opt) => {
711
+ return new import_neko_queue2.RedisTransport(opt);
712
+ });
713
+ import_neko_queue2.QueueTransportFactory.register("async", (opt) => {
714
+ return new import_neko_queue2.AsyncTransport();
715
+ });
716
+ import_neko_queue2.QueueTransportFactory.register("azure_service_bus", (opt) => {
717
+ return new import_neko_queue2.AzureServiceBusTransport(opt);
718
+ });
719
+ import_neko_queue2.QueueTransportFactory.register("google_pubsub", (opt) => {
720
+ return new import_neko_queue2.GooglePubSubTransport(opt);
721
+ });
706
722
  var CacheProviderFactory = class _CacheProviderFactory {
707
723
  static {
708
724
  __name(this, "CacheProviderFactory");
@@ -733,6 +749,18 @@ import_neko_storage2.StorageProviderFactory.register("local", (opt) => {
733
749
  import_neko_storage2.StorageProviderFactory.register("s3", (opt) => {
734
750
  return new import_neko_storage2.AWSS3StorageProvider(opt);
735
751
  });
752
+ import_neko_storage2.StorageProviderFactory.register("gcp", (opt) => {
753
+ return new import_neko_storage2.GCPStorageProvider(opt);
754
+ });
755
+ import_neko_storage2.StorageProviderFactory.register("azure", (opt) => {
756
+ return new import_neko_storage2.AzureBlobStorageProvider(opt);
757
+ });
758
+ import_neko_storage2.StorageProviderFactory.register("ftp", (opt) => {
759
+ return new import_neko_storage2.FTPStorageProvider(opt);
760
+ });
761
+ import_neko_storage2.StorageProviderFactory.register("sftp", (opt) => {
762
+ return new import_neko_storage2.SFTPStorageProvider(opt);
763
+ });
736
764
  // Annotate the CommonJS export names for ESM import in node:
737
765
  0 && (module.exports = {
738
766
  CacheProviderFactory,
package/dist/bin/http.cjs CHANGED
@@ -78,6 +78,7 @@ var MiddlewareFactory = class {
78
78
  };
79
79
 
80
80
  // ../neko-router/dist/CompiledRoute.mjs
81
+ var import_neko_helper = require("@devbro/neko-helper");
81
82
  var CompiledRoute = class {
82
83
  static {
83
84
  __name(this, "CompiledRoute");
@@ -98,7 +99,7 @@ var CompiledRoute = class {
98
99
  for (const middleware of [...this.globalMiddlewares, ...this.route.getMiddlewares()]) {
99
100
  if (middleware instanceof Middleware) {
100
101
  this.middlewares.push(middleware);
101
- } else if (this.isClass(middleware)) {
102
+ } else if ((0, import_neko_helper.isClass)(middleware)) {
102
103
  this.middlewares.push(middleware.getInstance({}));
103
104
  } else if (typeof middleware === "function") {
104
105
  this.middlewares.push(MiddlewareFactory.create(middleware));
@@ -107,9 +108,6 @@ var CompiledRoute = class {
107
108
  }
108
109
  }
109
110
  }
110
- isClass(func) {
111
- return typeof func === "function" && /^class\s/.test(Function.prototype.toString.call(func));
112
- }
113
111
  async run() {
114
112
  return await this.runMiddlewares(this.middlewares, this.request, this.response);
115
113
  }
@@ -245,7 +243,7 @@ var Route = class {
245
243
  i = start;
246
244
  } else if (char === "*") {
247
245
  let start = i + 1;
248
- while (start < path2.length && /[a-zA-Z0-9_\.]/.test(path2[start])) {
246
+ while (start < path2.length && /[a-zA-Z0-9_]/.test(path2[start])) {
249
247
  start++;
250
248
  }
251
249
  tokens.push({ type: "WILDCARD", value: path2.slice(i + 1, start) });
@@ -456,7 +454,7 @@ var Router = class {
456
454
 
457
455
  // src/facades.mts
458
456
  var import_neko_scheduler = require("@devbro/neko-scheduler");
459
- var import_neko_helper2 = require("@devbro/neko-helper");
457
+ var import_neko_helper3 = require("@devbro/neko-helper");
460
458
  var import_neko_context3 = require("@devbro/neko-context");
461
459
  var import_neko_storage2 = require("@devbro/neko-storage");
462
460
  var import_neko_mailer2 = require("@devbro/neko-mailer");
@@ -474,7 +472,7 @@ __export(queue_exports, {
474
472
  DatabaseTransport: () => DatabaseTransport
475
473
  });
476
474
  __reExport(queue_exports, require("@devbro/neko-queue"));
477
- var import_neko_helper = require("@devbro/neko-helper");
475
+ var import_neko_helper2 = require("@devbro/neko-helper");
478
476
  var import_neko_context2 = require("@devbro/neko-context");
479
477
  var DatabaseTransport = class {
480
478
  static {
@@ -535,7 +533,7 @@ var DatabaseTransport = class {
535
533
  }, "processMessage");
536
534
  constructor(config2 = {}) {
537
535
  this.config = { ...this.config, ...config2 };
538
- this.repeater = (0, import_neko_helper.createRepeater)(
536
+ this.repeater = (0, import_neko_helper2.createRepeater)(
539
537
  this.processMessage,
540
538
  this.config.listen_interval * 1e3
541
539
  );
@@ -603,6 +601,24 @@ import_neko_queue.QueueTransportFactory.register("database", (opt) => {
603
601
  import_neko_queue.QueueTransportFactory.register("memory", (opt) => {
604
602
  return new import_neko_queue.MemoryTransport(opt);
605
603
  });
604
+ import_neko_queue.QueueTransportFactory.register("sqs", (opt) => {
605
+ return new import_neko_queue.AwsSqsTransport(opt);
606
+ });
607
+ import_neko_queue.QueueTransportFactory.register("amqp", (opt) => {
608
+ return new import_neko_queue.AmqpTransport(opt);
609
+ });
610
+ import_neko_queue.QueueTransportFactory.register("redis", (opt) => {
611
+ return new import_neko_queue.RedisTransport(opt);
612
+ });
613
+ import_neko_queue.QueueTransportFactory.register("async", (opt) => {
614
+ return new import_neko_queue.AsyncTransport();
615
+ });
616
+ import_neko_queue.QueueTransportFactory.register("azure_service_bus", (opt) => {
617
+ return new import_neko_queue.AzureServiceBusTransport(opt);
618
+ });
619
+ import_neko_queue.QueueTransportFactory.register("google_pubsub", (opt) => {
620
+ return new import_neko_queue.GooglePubSubTransport(opt);
621
+ });
606
622
  var CacheProviderFactory = class _CacheProviderFactory {
607
623
  static {
608
624
  __name(this, "CacheProviderFactory");
@@ -633,12 +649,24 @@ import_neko_storage.StorageProviderFactory.register("local", (opt) => {
633
649
  import_neko_storage.StorageProviderFactory.register("s3", (opt) => {
634
650
  return new import_neko_storage.AWSS3StorageProvider(opt);
635
651
  });
652
+ import_neko_storage.StorageProviderFactory.register("gcp", (opt) => {
653
+ return new import_neko_storage.GCPStorageProvider(opt);
654
+ });
655
+ import_neko_storage.StorageProviderFactory.register("azure", (opt) => {
656
+ return new import_neko_storage.AzureBlobStorageProvider(opt);
657
+ });
658
+ import_neko_storage.StorageProviderFactory.register("ftp", (opt) => {
659
+ return new import_neko_storage.FTPStorageProvider(opt);
660
+ });
661
+ import_neko_storage.StorageProviderFactory.register("sftp", (opt) => {
662
+ return new import_neko_storage.SFTPStorageProvider(opt);
663
+ });
636
664
 
637
665
  // src/facades.mts
638
666
  var import_neko_cache2 = require("@devbro/neko-cache");
639
667
  var import_neko_queue2 = require("@devbro/neko-queue");
640
- var router = (0, import_neko_helper2.createSingleton)(() => new Router());
641
- var scheduler = (0, import_neko_helper2.createSingleton)(() => {
668
+ var router = (0, import_neko_helper3.createSingleton)(() => new Router());
669
+ var scheduler = (0, import_neko_helper3.createSingleton)(() => {
642
670
  const rc = new import_neko_scheduler.Scheduler();
643
671
  rc.setErrorHandler((err, job) => {
644
672
  logger().error({
@@ -650,7 +678,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
650
678
  return rc;
651
679
  });
652
680
  var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
653
- var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
681
+ var storage = (0, import_neko_helper3.createSingleton)((label = "default") => {
654
682
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
655
683
  const provider = import_neko_storage2.StorageProviderFactory.create(
656
684
  storage_config.provider,
@@ -658,7 +686,7 @@ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
658
686
  );
659
687
  return new import_neko_storage2.Storage(provider);
660
688
  });
661
- var cli = (0, import_neko_helper2.createSingleton)(() => {
689
+ var cli = (0, import_neko_helper3.createSingleton)(() => {
662
690
  const [node, app, ...args] = process.argv;
663
691
  return new import_clipanion.Cli({
664
692
  binaryLabel: `My Application`,
@@ -666,13 +694,13 @@ var cli = (0, import_neko_helper2.createSingleton)(() => {
666
694
  binaryVersion: `1.0.0`
667
695
  });
668
696
  });
669
- var httpServer = (0, import_neko_helper2.createSingleton)(() => {
697
+ var httpServer = (0, import_neko_helper3.createSingleton)(() => {
670
698
  const server = new http_exports.HttpServer();
671
699
  server.setErrorHandler(handleHttpErrors);
672
700
  server.setRouter(router());
673
701
  return server;
674
702
  });
675
- var logger = (0, import_neko_helper2.createSingleton)((label) => {
703
+ var logger = (0, import_neko_helper3.createSingleton)((label) => {
676
704
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
677
705
  const rc = new import_neko_logger.Logger(logger_config);
678
706
  rc.setExtrasFunction((message) => {
@@ -681,7 +709,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
681
709
  });
682
710
  return rc;
683
711
  });
684
- var mailer = (0, import_neko_helper2.createSingleton)((label) => {
712
+ var mailer = (0, import_neko_helper3.createSingleton)((label) => {
685
713
  const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
686
714
  const provider = import_neko_mailer2.MailerProviderFactory.create(
687
715
  mailer_config.provider,
@@ -690,7 +718,7 @@ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
690
718
  const rc = new import_neko_mailer2.Mailer(provider);
691
719
  return rc;
692
720
  });
693
- var queue = (0, import_neko_helper2.createSingleton)((label) => {
721
+ var queue = (0, import_neko_helper3.createSingleton)((label) => {
694
722
  const queue_config = import_neko_config.config.get(["queues", label].join("."));
695
723
  if (!queue_config) {
696
724
  throw new Error(`Queue configuration for '${label}' not found`);
@@ -701,7 +729,7 @@ var queue = (0, import_neko_helper2.createSingleton)((label) => {
701
729
  );
702
730
  return new import_neko_queue2.QueueConnection(provider);
703
731
  });
704
- var cache = (0, import_neko_helper2.createSingleton)((label) => {
732
+ var cache = (0, import_neko_helper3.createSingleton)((label) => {
705
733
  const cache_config = import_neko_config.config.get(["caches", label].join("."));
706
734
  if (!cache_config) {
707
735
  throw new Error(`Cache configuration for '${label}' not found`);