@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
@@ -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");
@@ -497,7 +495,7 @@ __export(queue_exports, {
497
495
  DatabaseTransport: () => DatabaseTransport
498
496
  });
499
497
  __reExport(queue_exports, require("@devbro/neko-queue"));
500
- var import_neko_helper = require("@devbro/neko-helper");
498
+ var import_neko_helper2 = require("@devbro/neko-helper");
501
499
  var import_neko_context2 = require("@devbro/neko-context");
502
500
  var DatabaseTransport = class {
503
501
  static {
@@ -558,7 +556,7 @@ var DatabaseTransport = class {
558
556
  }, "processMessage");
559
557
  constructor(config2 = {}) {
560
558
  this.config = { ...this.config, ...config2 };
561
- this.repeater = (0, import_neko_helper.createRepeater)(
559
+ this.repeater = (0, import_neko_helper2.createRepeater)(
562
560
  this.processMessage,
563
561
  this.config.listen_interval * 1e3
564
562
  );
@@ -626,6 +624,24 @@ import_neko_queue.QueueTransportFactory.register("database", (opt) => {
626
624
  import_neko_queue.QueueTransportFactory.register("memory", (opt) => {
627
625
  return new import_neko_queue.MemoryTransport(opt);
628
626
  });
627
+ import_neko_queue.QueueTransportFactory.register("sqs", (opt) => {
628
+ return new import_neko_queue.AwsSqsTransport(opt);
629
+ });
630
+ import_neko_queue.QueueTransportFactory.register("amqp", (opt) => {
631
+ return new import_neko_queue.AmqpTransport(opt);
632
+ });
633
+ import_neko_queue.QueueTransportFactory.register("redis", (opt) => {
634
+ return new import_neko_queue.RedisTransport(opt);
635
+ });
636
+ import_neko_queue.QueueTransportFactory.register("async", (opt) => {
637
+ return new import_neko_queue.AsyncTransport();
638
+ });
639
+ import_neko_queue.QueueTransportFactory.register("azure_service_bus", (opt) => {
640
+ return new import_neko_queue.AzureServiceBusTransport(opt);
641
+ });
642
+ import_neko_queue.QueueTransportFactory.register("google_pubsub", (opt) => {
643
+ return new import_neko_queue.GooglePubSubTransport(opt);
644
+ });
629
645
  var CacheProviderFactory = class _CacheProviderFactory {
630
646
  static {
631
647
  __name(this, "CacheProviderFactory");
@@ -656,12 +672,24 @@ import_neko_storage.StorageProviderFactory.register("local", (opt) => {
656
672
  import_neko_storage.StorageProviderFactory.register("s3", (opt) => {
657
673
  return new import_neko_storage.AWSS3StorageProvider(opt);
658
674
  });
675
+ import_neko_storage.StorageProviderFactory.register("gcp", (opt) => {
676
+ return new import_neko_storage.GCPStorageProvider(opt);
677
+ });
678
+ import_neko_storage.StorageProviderFactory.register("azure", (opt) => {
679
+ return new import_neko_storage.AzureBlobStorageProvider(opt);
680
+ });
681
+ import_neko_storage.StorageProviderFactory.register("ftp", (opt) => {
682
+ return new import_neko_storage.FTPStorageProvider(opt);
683
+ });
684
+ import_neko_storage.StorageProviderFactory.register("sftp", (opt) => {
685
+ return new import_neko_storage.SFTPStorageProvider(opt);
686
+ });
659
687
 
660
688
  // src/facades.mts
661
689
  var import_neko_cache2 = require("@devbro/neko-cache");
662
690
  var import_neko_queue2 = require("@devbro/neko-queue");
663
- var router = (0, import_neko_helper2.createSingleton)(() => new Router());
664
- var scheduler = (0, import_neko_helper2.createSingleton)(() => {
691
+ var router = (0, import_neko_helper3.createSingleton)(() => new Router());
692
+ var scheduler = (0, import_neko_helper3.createSingleton)(() => {
665
693
  const rc = new import_neko_scheduler.Scheduler();
666
694
  rc.setErrorHandler((err, job) => {
667
695
  logger().error({
@@ -673,7 +701,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
673
701
  return rc;
674
702
  });
675
703
  var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
676
- var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
704
+ var storage = (0, import_neko_helper3.createSingleton)((label = "default") => {
677
705
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
678
706
  const provider = import_neko_storage2.StorageProviderFactory.create(
679
707
  storage_config.provider,
@@ -681,7 +709,7 @@ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
681
709
  );
682
710
  return new import_neko_storage2.Storage(provider);
683
711
  });
684
- var cli = (0, import_neko_helper2.createSingleton)(() => {
712
+ var cli = (0, import_neko_helper3.createSingleton)(() => {
685
713
  const [node, app, ...args] = process.argv;
686
714
  return new import_clipanion.Cli({
687
715
  binaryLabel: `My Application`,
@@ -689,13 +717,13 @@ var cli = (0, import_neko_helper2.createSingleton)(() => {
689
717
  binaryVersion: `1.0.0`
690
718
  });
691
719
  });
692
- var httpServer = (0, import_neko_helper2.createSingleton)(() => {
720
+ var httpServer = (0, import_neko_helper3.createSingleton)(() => {
693
721
  const server = new http_exports.HttpServer();
694
722
  server.setErrorHandler(handleHttpErrors);
695
723
  server.setRouter(router());
696
724
  return server;
697
725
  });
698
- var logger = (0, import_neko_helper2.createSingleton)((label) => {
726
+ var logger = (0, import_neko_helper3.createSingleton)((label) => {
699
727
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
700
728
  const rc = new import_neko_logger.Logger(logger_config);
701
729
  rc.setExtrasFunction((message) => {
@@ -704,7 +732,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
704
732
  });
705
733
  return rc;
706
734
  });
707
- var mailer = (0, import_neko_helper2.createSingleton)((label) => {
735
+ var mailer = (0, import_neko_helper3.createSingleton)((label) => {
708
736
  const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
709
737
  const provider = import_neko_mailer2.MailerProviderFactory.create(
710
738
  mailer_config.provider,
@@ -713,7 +741,7 @@ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
713
741
  const rc = new import_neko_mailer2.Mailer(provider);
714
742
  return rc;
715
743
  });
716
- var queue = (0, import_neko_helper2.createSingleton)((label) => {
744
+ var queue = (0, import_neko_helper3.createSingleton)((label) => {
717
745
  const queue_config = import_neko_config.config.get(["queues", label].join("."));
718
746
  if (!queue_config) {
719
747
  throw new Error(`Queue configuration for '${label}' not found`);
@@ -724,7 +752,7 @@ var queue = (0, import_neko_helper2.createSingleton)((label) => {
724
752
  );
725
753
  return new import_neko_queue2.QueueConnection(provider);
726
754
  });
727
- var cache = (0, import_neko_helper2.createSingleton)((label) => {
755
+ var cache = (0, import_neko_helper3.createSingleton)((label) => {
728
756
  const cache_config = import_neko_config.config.get(["caches", label].join("."));
729
757
  if (!cache_config) {
730
758
  throw new Error(`Cache configuration for '${label}' not found`);
@@ -81,6 +81,7 @@ var MiddlewareFactory = class {
81
81
  };
82
82
 
83
83
  // ../neko-router/dist/CompiledRoute.mjs
84
+ var import_neko_helper = require("@devbro/neko-helper");
84
85
  var CompiledRoute = class {
85
86
  static {
86
87
  __name(this, "CompiledRoute");
@@ -101,7 +102,7 @@ var CompiledRoute = class {
101
102
  for (const middleware of [...this.globalMiddlewares, ...this.route.getMiddlewares()]) {
102
103
  if (middleware instanceof Middleware) {
103
104
  this.middlewares.push(middleware);
104
- } else if (this.isClass(middleware)) {
105
+ } else if ((0, import_neko_helper.isClass)(middleware)) {
105
106
  this.middlewares.push(middleware.getInstance({}));
106
107
  } else if (typeof middleware === "function") {
107
108
  this.middlewares.push(MiddlewareFactory.create(middleware));
@@ -110,9 +111,6 @@ var CompiledRoute = class {
110
111
  }
111
112
  }
112
113
  }
113
- isClass(func) {
114
- return typeof func === "function" && /^class\s/.test(Function.prototype.toString.call(func));
115
- }
116
114
  async run() {
117
115
  return await this.runMiddlewares(this.middlewares, this.request, this.response);
118
116
  }
@@ -248,7 +246,7 @@ var Route = class {
248
246
  i = start;
249
247
  } else if (char === "*") {
250
248
  let start = i + 1;
251
- while (start < path3.length && /[a-zA-Z0-9_\.]/.test(path3[start])) {
249
+ while (start < path3.length && /[a-zA-Z0-9_]/.test(path3[start])) {
252
250
  start++;
253
251
  }
254
252
  tokens.push({ type: "WILDCARD", value: path3.slice(i + 1, start) });
@@ -459,7 +457,7 @@ var Router = class {
459
457
 
460
458
  // src/facades.mts
461
459
  var import_neko_scheduler = require("@devbro/neko-scheduler");
462
- var import_neko_helper2 = require("@devbro/neko-helper");
460
+ var import_neko_helper3 = require("@devbro/neko-helper");
463
461
  var import_neko_context3 = require("@devbro/neko-context");
464
462
  var import_neko_storage2 = require("@devbro/neko-storage");
465
463
  var import_neko_mailer2 = require("@devbro/neko-mailer");
@@ -500,7 +498,7 @@ __export(queue_exports, {
500
498
  DatabaseTransport: () => DatabaseTransport
501
499
  });
502
500
  __reExport(queue_exports, require("@devbro/neko-queue"));
503
- var import_neko_helper = require("@devbro/neko-helper");
501
+ var import_neko_helper2 = require("@devbro/neko-helper");
504
502
  var import_neko_context2 = require("@devbro/neko-context");
505
503
  var DatabaseTransport = class {
506
504
  static {
@@ -561,7 +559,7 @@ var DatabaseTransport = class {
561
559
  }, "processMessage");
562
560
  constructor(config2 = {}) {
563
561
  this.config = { ...this.config, ...config2 };
564
- this.repeater = (0, import_neko_helper.createRepeater)(
562
+ this.repeater = (0, import_neko_helper2.createRepeater)(
565
563
  this.processMessage,
566
564
  this.config.listen_interval * 1e3
567
565
  );
@@ -629,6 +627,24 @@ import_neko_queue.QueueTransportFactory.register("database", (opt) => {
629
627
  import_neko_queue.QueueTransportFactory.register("memory", (opt) => {
630
628
  return new import_neko_queue.MemoryTransport(opt);
631
629
  });
630
+ import_neko_queue.QueueTransportFactory.register("sqs", (opt) => {
631
+ return new import_neko_queue.AwsSqsTransport(opt);
632
+ });
633
+ import_neko_queue.QueueTransportFactory.register("amqp", (opt) => {
634
+ return new import_neko_queue.AmqpTransport(opt);
635
+ });
636
+ import_neko_queue.QueueTransportFactory.register("redis", (opt) => {
637
+ return new import_neko_queue.RedisTransport(opt);
638
+ });
639
+ import_neko_queue.QueueTransportFactory.register("async", (opt) => {
640
+ return new import_neko_queue.AsyncTransport();
641
+ });
642
+ import_neko_queue.QueueTransportFactory.register("azure_service_bus", (opt) => {
643
+ return new import_neko_queue.AzureServiceBusTransport(opt);
644
+ });
645
+ import_neko_queue.QueueTransportFactory.register("google_pubsub", (opt) => {
646
+ return new import_neko_queue.GooglePubSubTransport(opt);
647
+ });
632
648
  var CacheProviderFactory = class _CacheProviderFactory {
633
649
  static {
634
650
  __name(this, "CacheProviderFactory");
@@ -659,12 +675,24 @@ import_neko_storage.StorageProviderFactory.register("local", (opt) => {
659
675
  import_neko_storage.StorageProviderFactory.register("s3", (opt) => {
660
676
  return new import_neko_storage.AWSS3StorageProvider(opt);
661
677
  });
678
+ import_neko_storage.StorageProviderFactory.register("gcp", (opt) => {
679
+ return new import_neko_storage.GCPStorageProvider(opt);
680
+ });
681
+ import_neko_storage.StorageProviderFactory.register("azure", (opt) => {
682
+ return new import_neko_storage.AzureBlobStorageProvider(opt);
683
+ });
684
+ import_neko_storage.StorageProviderFactory.register("ftp", (opt) => {
685
+ return new import_neko_storage.FTPStorageProvider(opt);
686
+ });
687
+ import_neko_storage.StorageProviderFactory.register("sftp", (opt) => {
688
+ return new import_neko_storage.SFTPStorageProvider(opt);
689
+ });
662
690
 
663
691
  // src/facades.mts
664
692
  var import_neko_cache2 = require("@devbro/neko-cache");
665
693
  var import_neko_queue2 = require("@devbro/neko-queue");
666
- var router = (0, import_neko_helper2.createSingleton)(() => new Router());
667
- var scheduler = (0, import_neko_helper2.createSingleton)(() => {
694
+ var router = (0, import_neko_helper3.createSingleton)(() => new Router());
695
+ var scheduler = (0, import_neko_helper3.createSingleton)(() => {
668
696
  const rc = new import_neko_scheduler.Scheduler();
669
697
  rc.setErrorHandler((err, job) => {
670
698
  logger().error({
@@ -676,7 +704,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
676
704
  return rc;
677
705
  });
678
706
  var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
679
- var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
707
+ var storage = (0, import_neko_helper3.createSingleton)((label = "default") => {
680
708
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
681
709
  const provider = import_neko_storage2.StorageProviderFactory.create(
682
710
  storage_config.provider,
@@ -684,7 +712,7 @@ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
684
712
  );
685
713
  return new import_neko_storage2.Storage(provider);
686
714
  });
687
- var cli = (0, import_neko_helper2.createSingleton)(() => {
715
+ var cli = (0, import_neko_helper3.createSingleton)(() => {
688
716
  const [node, app, ...args] = process.argv;
689
717
  return new import_clipanion.Cli({
690
718
  binaryLabel: `My Application`,
@@ -692,13 +720,13 @@ var cli = (0, import_neko_helper2.createSingleton)(() => {
692
720
  binaryVersion: `1.0.0`
693
721
  });
694
722
  });
695
- var httpServer = (0, import_neko_helper2.createSingleton)(() => {
723
+ var httpServer = (0, import_neko_helper3.createSingleton)(() => {
696
724
  const server = new http_exports.HttpServer();
697
725
  server.setErrorHandler(handleHttpErrors);
698
726
  server.setRouter(router());
699
727
  return server;
700
728
  });
701
- var logger = (0, import_neko_helper2.createSingleton)((label) => {
729
+ var logger = (0, import_neko_helper3.createSingleton)((label) => {
702
730
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
703
731
  const rc = new import_neko_logger.Logger(logger_config);
704
732
  rc.setExtrasFunction((message) => {
@@ -707,7 +735,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
707
735
  });
708
736
  return rc;
709
737
  });
710
- var mailer = (0, import_neko_helper2.createSingleton)((label) => {
738
+ var mailer = (0, import_neko_helper3.createSingleton)((label) => {
711
739
  const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
712
740
  const provider = import_neko_mailer2.MailerProviderFactory.create(
713
741
  mailer_config.provider,
@@ -716,7 +744,7 @@ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
716
744
  const rc = new import_neko_mailer2.Mailer(provider);
717
745
  return rc;
718
746
  });
719
- var queue = (0, import_neko_helper2.createSingleton)((label) => {
747
+ var queue = (0, import_neko_helper3.createSingleton)((label) => {
720
748
  const queue_config = import_neko_config.config.get(["queues", label].join("."));
721
749
  if (!queue_config) {
722
750
  throw new Error(`Queue configuration for '${label}' not found`);
@@ -727,7 +755,7 @@ var queue = (0, import_neko_helper2.createSingleton)((label) => {
727
755
  );
728
756
  return new import_neko_queue2.QueueConnection(provider);
729
757
  });
730
- var cache = (0, import_neko_helper2.createSingleton)((label) => {
758
+ var cache = (0, import_neko_helper3.createSingleton)((label) => {
731
759
  const cache_config = import_neko_config.config.get(["caches", label].join("."));
732
760
  if (!cache_config) {
733
761
  throw new Error(`Cache configuration for '${label}' not found`);
@@ -79,6 +79,7 @@ var MiddlewareFactory = class {
79
79
  };
80
80
 
81
81
  // ../neko-router/dist/CompiledRoute.mjs
82
+ var import_neko_helper = require("@devbro/neko-helper");
82
83
  var CompiledRoute = class {
83
84
  static {
84
85
  __name(this, "CompiledRoute");
@@ -99,7 +100,7 @@ var CompiledRoute = class {
99
100
  for (const middleware of [...this.globalMiddlewares, ...this.route.getMiddlewares()]) {
100
101
  if (middleware instanceof Middleware) {
101
102
  this.middlewares.push(middleware);
102
- } else if (this.isClass(middleware)) {
103
+ } else if ((0, import_neko_helper.isClass)(middleware)) {
103
104
  this.middlewares.push(middleware.getInstance({}));
104
105
  } else if (typeof middleware === "function") {
105
106
  this.middlewares.push(MiddlewareFactory.create(middleware));
@@ -108,9 +109,6 @@ var CompiledRoute = class {
108
109
  }
109
110
  }
110
111
  }
111
- isClass(func) {
112
- return typeof func === "function" && /^class\s/.test(Function.prototype.toString.call(func));
113
- }
114
112
  async run() {
115
113
  return await this.runMiddlewares(this.middlewares, this.request, this.response);
116
114
  }
@@ -246,7 +244,7 @@ var Route = class {
246
244
  i = start;
247
245
  } else if (char === "*") {
248
246
  let start = i + 1;
249
- while (start < path2.length && /[a-zA-Z0-9_\.]/.test(path2[start])) {
247
+ while (start < path2.length && /[a-zA-Z0-9_]/.test(path2[start])) {
250
248
  start++;
251
249
  }
252
250
  tokens.push({ type: "WILDCARD", value: path2.slice(i + 1, start) });
@@ -457,7 +455,7 @@ var Router = class {
457
455
 
458
456
  // src/facades.mts
459
457
  var import_neko_scheduler = require("@devbro/neko-scheduler");
460
- var import_neko_helper2 = require("@devbro/neko-helper");
458
+ var import_neko_helper3 = require("@devbro/neko-helper");
461
459
  var import_neko_context3 = require("@devbro/neko-context");
462
460
  var import_neko_storage2 = require("@devbro/neko-storage");
463
461
  var import_neko_mailer2 = require("@devbro/neko-mailer");
@@ -498,7 +496,7 @@ __export(queue_exports, {
498
496
  DatabaseTransport: () => DatabaseTransport
499
497
  });
500
498
  __reExport(queue_exports, require("@devbro/neko-queue"));
501
- var import_neko_helper = require("@devbro/neko-helper");
499
+ var import_neko_helper2 = require("@devbro/neko-helper");
502
500
  var import_neko_context2 = require("@devbro/neko-context");
503
501
  var DatabaseTransport = class {
504
502
  static {
@@ -559,7 +557,7 @@ var DatabaseTransport = class {
559
557
  }, "processMessage");
560
558
  constructor(config3 = {}) {
561
559
  this.config = { ...this.config, ...config3 };
562
- this.repeater = (0, import_neko_helper.createRepeater)(
560
+ this.repeater = (0, import_neko_helper2.createRepeater)(
563
561
  this.processMessage,
564
562
  this.config.listen_interval * 1e3
565
563
  );
@@ -627,6 +625,24 @@ import_neko_queue.QueueTransportFactory.register("database", (opt) => {
627
625
  import_neko_queue.QueueTransportFactory.register("memory", (opt) => {
628
626
  return new import_neko_queue.MemoryTransport(opt);
629
627
  });
628
+ import_neko_queue.QueueTransportFactory.register("sqs", (opt) => {
629
+ return new import_neko_queue.AwsSqsTransport(opt);
630
+ });
631
+ import_neko_queue.QueueTransportFactory.register("amqp", (opt) => {
632
+ return new import_neko_queue.AmqpTransport(opt);
633
+ });
634
+ import_neko_queue.QueueTransportFactory.register("redis", (opt) => {
635
+ return new import_neko_queue.RedisTransport(opt);
636
+ });
637
+ import_neko_queue.QueueTransportFactory.register("async", (opt) => {
638
+ return new import_neko_queue.AsyncTransport();
639
+ });
640
+ import_neko_queue.QueueTransportFactory.register("azure_service_bus", (opt) => {
641
+ return new import_neko_queue.AzureServiceBusTransport(opt);
642
+ });
643
+ import_neko_queue.QueueTransportFactory.register("google_pubsub", (opt) => {
644
+ return new import_neko_queue.GooglePubSubTransport(opt);
645
+ });
630
646
  var CacheProviderFactory = class _CacheProviderFactory {
631
647
  static {
632
648
  __name(this, "CacheProviderFactory");
@@ -657,12 +673,24 @@ import_neko_storage.StorageProviderFactory.register("local", (opt) => {
657
673
  import_neko_storage.StorageProviderFactory.register("s3", (opt) => {
658
674
  return new import_neko_storage.AWSS3StorageProvider(opt);
659
675
  });
676
+ import_neko_storage.StorageProviderFactory.register("gcp", (opt) => {
677
+ return new import_neko_storage.GCPStorageProvider(opt);
678
+ });
679
+ import_neko_storage.StorageProviderFactory.register("azure", (opt) => {
680
+ return new import_neko_storage.AzureBlobStorageProvider(opt);
681
+ });
682
+ import_neko_storage.StorageProviderFactory.register("ftp", (opt) => {
683
+ return new import_neko_storage.FTPStorageProvider(opt);
684
+ });
685
+ import_neko_storage.StorageProviderFactory.register("sftp", (opt) => {
686
+ return new import_neko_storage.SFTPStorageProvider(opt);
687
+ });
660
688
 
661
689
  // src/facades.mts
662
690
  var import_neko_cache2 = require("@devbro/neko-cache");
663
691
  var import_neko_queue2 = require("@devbro/neko-queue");
664
- var router = (0, import_neko_helper2.createSingleton)(() => new Router());
665
- var scheduler = (0, import_neko_helper2.createSingleton)(() => {
692
+ var router = (0, import_neko_helper3.createSingleton)(() => new Router());
693
+ var scheduler = (0, import_neko_helper3.createSingleton)(() => {
666
694
  const rc = new import_neko_scheduler.Scheduler();
667
695
  rc.setErrorHandler((err, job) => {
668
696
  logger().error({
@@ -674,7 +702,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
674
702
  return rc;
675
703
  });
676
704
  var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
677
- var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
705
+ var storage = (0, import_neko_helper3.createSingleton)((label = "default") => {
678
706
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
679
707
  const provider = import_neko_storage2.StorageProviderFactory.create(
680
708
  storage_config.provider,
@@ -682,7 +710,7 @@ var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
682
710
  );
683
711
  return new import_neko_storage2.Storage(provider);
684
712
  });
685
- var cli = (0, import_neko_helper2.createSingleton)(() => {
713
+ var cli = (0, import_neko_helper3.createSingleton)(() => {
686
714
  const [node, app, ...args] = process.argv;
687
715
  return new import_clipanion.Cli({
688
716
  binaryLabel: `My Application`,
@@ -690,13 +718,13 @@ var cli = (0, import_neko_helper2.createSingleton)(() => {
690
718
  binaryVersion: `1.0.0`
691
719
  });
692
720
  });
693
- var httpServer = (0, import_neko_helper2.createSingleton)(() => {
721
+ var httpServer = (0, import_neko_helper3.createSingleton)(() => {
694
722
  const server = new http_exports.HttpServer();
695
723
  server.setErrorHandler(handleHttpErrors);
696
724
  server.setRouter(router());
697
725
  return server;
698
726
  });
699
- var logger = (0, import_neko_helper2.createSingleton)((label) => {
727
+ var logger = (0, import_neko_helper3.createSingleton)((label) => {
700
728
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
701
729
  const rc = new import_neko_logger.Logger(logger_config);
702
730
  rc.setExtrasFunction((message) => {
@@ -705,7 +733,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
705
733
  });
706
734
  return rc;
707
735
  });
708
- var mailer = (0, import_neko_helper2.createSingleton)((label) => {
736
+ var mailer = (0, import_neko_helper3.createSingleton)((label) => {
709
737
  const mailer_config = import_neko_config.config.get(["mailer", label].join("."));
710
738
  const provider = import_neko_mailer2.MailerProviderFactory.create(
711
739
  mailer_config.provider,
@@ -714,7 +742,7 @@ var mailer = (0, import_neko_helper2.createSingleton)((label) => {
714
742
  const rc = new import_neko_mailer2.Mailer(provider);
715
743
  return rc;
716
744
  });
717
- var queue = (0, import_neko_helper2.createSingleton)((label) => {
745
+ var queue = (0, import_neko_helper3.createSingleton)((label) => {
718
746
  const queue_config = import_neko_config.config.get(["queues", label].join("."));
719
747
  if (!queue_config) {
720
748
  throw new Error(`Queue configuration for '${label}' not found`);
@@ -725,7 +753,7 @@ var queue = (0, import_neko_helper2.createSingleton)((label) => {
725
753
  );
726
754
  return new import_neko_queue2.QueueConnection(provider);
727
755
  });
728
- var cache = (0, import_neko_helper2.createSingleton)((label) => {
756
+ var cache = (0, import_neko_helper3.createSingleton)((label) => {
729
757
  const cache_config = import_neko_config.config.get(["caches", label].join("."));
730
758
  if (!cache_config) {
731
759
  throw new Error(`Cache configuration for '${label}' not found`);
@@ -744,12 +772,15 @@ var StartCommand = class extends import_clipanion2.Command {
744
772
  __name(this, "StartCommand");
745
773
  }
746
774
  scheduler = import_clipanion2.Option.Boolean(`--scheduler`, false);
775
+ cron = import_clipanion2.Option.Boolean(`--cron`, false);
747
776
  http = import_clipanion2.Option.Boolean(`--http`, false);
748
777
  queue = import_clipanion2.Option.Boolean(`--queue`, false);
749
778
  all = import_clipanion2.Option.Boolean("--all", false);
750
779
  static paths = [[`start`]];
751
780
  async execute() {
752
- if ([this.all, this.http, this.scheduler, this.queue].filter((x) => x).length == 0) {
781
+ if ([this.all, this.http, this.scheduler || this.cron, this.queue].filter(
782
+ (x) => x
783
+ ).length == 0) {
753
784
  this.context.stdout.write(
754
785
  `No service was selected. please check -h for details
755
786
  `
@@ -759,7 +790,7 @@ var StartCommand = class extends import_clipanion2.Command {
759
790
  logger().info(`Starting Server
760
791
  `);
761
792
  import_neko_sql.PostgresqlConnection.defaults.idleTimeoutMillis = 1e4;
762
- if (this.scheduler || this.all) {
793
+ if (this.scheduler || this.cron || this.all) {
763
794
  logger().info(`starting scheduler
764
795
  `);
765
796
  scheduler().start();