@gravito/pulse 3.3.0 → 3.3.1

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 (2) hide show
  1. package/dist/index.js +82 -21
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -86404,6 +86404,11 @@ import { cancel as cancel4, intro as intro2, isCancel as isCancel5, note as note
86404
86404
  // ../scaffold/src/DependencyValidator.ts
86405
86405
  class DependencyValidator {
86406
86406
  static DRIVER_DEPENDENCIES = [
86407
+ {
86408
+ driver: "none",
86409
+ requiredPackages: [],
86410
+ description: "No database driver - developer to choose and install"
86411
+ },
86407
86412
  {
86408
86413
  driver: "redis",
86409
86414
  requiredPackages: ["@gravito/ion"],
@@ -86799,12 +86804,14 @@ class BaseGenerator {
86799
86804
  templateManager;
86800
86805
  fileMerger;
86801
86806
  filesCreated = [];
86807
+ context = null;
86802
86808
  constructor(config) {
86803
86809
  this.config = config;
86804
86810
  this.templateManager = new TemplateManager(config.templatesDir);
86805
86811
  this.fileMerger = new FileMerger;
86806
86812
  }
86807
86813
  async generate(context) {
86814
+ this.context = context;
86808
86815
  this.filesCreated = [];
86809
86816
  const structure = this.getDirectoryStructure(context);
86810
86817
  await this.createStructure(context.targetDir, structure, context);
@@ -86982,6 +86989,19 @@ Run \`bun run validate\` to check everything.
86982
86989
  }
86983
86990
  // ../scaffold/src/utils/ConfigGenerator.ts
86984
86991
  class ConfigGenerator {
86992
+ static generateDatabaseConfig(driver) {
86993
+ switch (driver) {
86994
+ case "none":
86995
+ return this.generateNoDatabaseConfig();
86996
+ case "sqlite":
86997
+ return this.generateSimpleDatabaseConfig();
86998
+ case "postgresql":
86999
+ case "mysql":
87000
+ return this.generateDetailedDatabaseConfig();
87001
+ default:
87002
+ return this.generateNoDatabaseConfig();
87003
+ }
87004
+ }
86985
87005
  static generateSimpleAppConfig(context) {
86986
87006
  return `export default {
86987
87007
  name: process.env.APP_NAME ?? '${context.name}',
@@ -87058,6 +87078,55 @@ export default {
87058
87078
  // 'AppServiceProvider',
87059
87079
  ],
87060
87080
  }
87081
+ `;
87082
+ }
87083
+ static generateNoDatabaseConfig() {
87084
+ return `/**
87085
+ * Database Configuration
87086
+ *
87087
+ * Configure your database connection below.
87088
+ * Choose one of the following drivers by installing the required package:
87089
+ *
87090
+ * SQLite: bun add better-sqlite3
87091
+ * PostgreSQL: bun add pg
87092
+ * MySQL: bun add mysql2
87093
+ */
87094
+ export default {
87095
+ default: process.env.DB_CONNECTION ?? 'sqlite',
87096
+
87097
+ connections: {
87098
+ sqlite: {
87099
+ driver: 'sqlite',
87100
+ database: process.env.DB_DATABASE ?? 'database/database.sqlite',
87101
+ },
87102
+
87103
+ postgresql: {
87104
+ driver: 'postgresql',
87105
+ host: process.env.DB_HOST ?? 'localhost',
87106
+ port: Number(process.env.DB_PORT ?? 5432),
87107
+ database: process.env.DB_DATABASE ?? 'forge',
87108
+ username: process.env.DB_USERNAME ?? 'forge',
87109
+ password: process.env.DB_PASSWORD ?? '',
87110
+ },
87111
+
87112
+ mysql: {
87113
+ driver: 'mysql',
87114
+ host: process.env.DB_HOST ?? 'localhost',
87115
+ port: Number(process.env.DB_PORT ?? 3306),
87116
+ database: process.env.DB_DATABASE ?? 'forge',
87117
+ username: process.env.DB_USERNAME ?? 'forge',
87118
+ password: process.env.DB_PASSWORD ?? '',
87119
+ },
87120
+ },
87121
+
87122
+ /**
87123
+ * Migration settings
87124
+ */
87125
+ migrations: {
87126
+ table: 'migrations',
87127
+ path: 'database/migrations',
87128
+ },
87129
+ }
87061
87130
  `;
87062
87131
  }
87063
87132
  static generateSimpleDatabaseConfig() {
@@ -87550,7 +87619,8 @@ class CleanArchitectureGenerator extends BaseGenerator {
87550
87619
  return ConfigGenerator.generateSimpleAppConfig(context);
87551
87620
  }
87552
87621
  generateDatabaseConfig() {
87553
- return ConfigGenerator.generateSimpleDatabaseConfig();
87622
+ const driver = this.context?.profileConfig?.drivers?.database ?? "none";
87623
+ return ConfigGenerator.generateDatabaseConfig(driver);
87554
87624
  }
87555
87625
  generateAuthConfig() {
87556
87626
  return ConfigGenerator.generateAuthConfig();
@@ -88142,7 +88212,9 @@ Created with \u2764\uFE0F using Gravito Framework
88142
88212
  }
88143
88213
  // ../scaffold/src/generators/ddd/BootstrapGenerator.ts
88144
88214
  class BootstrapGenerator {
88215
+ context = null;
88145
88216
  generate(context) {
88217
+ this.context = context;
88146
88218
  return {
88147
88219
  type: "directory",
88148
88220
  name: "Bootstrap",
@@ -88155,6 +88227,7 @@ class BootstrapGenerator {
88155
88227
  };
88156
88228
  }
88157
88229
  generateConfigDirectory(context) {
88230
+ this.context = context;
88158
88231
  return {
88159
88232
  type: "directory",
88160
88233
  name: "config",
@@ -88350,13 +88423,8 @@ export default {
88350
88423
  `;
88351
88424
  }
88352
88425
  generateDatabaseConfig() {
88353
- return `export default {
88354
- default: process.env.DB_CONNECTION ?? 'sqlite',
88355
- connections: {
88356
- sqlite: { driver: 'sqlite', database: 'database/database.sqlite' },
88357
- },
88358
- }
88359
- `;
88426
+ const driver = this.context?.profileConfig?.drivers?.database ?? "none";
88427
+ return ConfigGenerator.generateDatabaseConfig(driver);
88360
88428
  }
88361
88429
  generateCacheConfig() {
88362
88430
  return `export default {
@@ -89330,7 +89398,8 @@ describe('Example Test', () => {
89330
89398
  return ConfigGenerator.generateDetailedAppConfig(context);
89331
89399
  }
89332
89400
  generateDatabaseConfig() {
89333
- return ConfigGenerator.generateDetailedDatabaseConfig();
89401
+ const driver = this.context?.profileConfig?.drivers?.database ?? "none";
89402
+ return ConfigGenerator.generateDatabaseConfig(driver);
89334
89403
  }
89335
89404
  generateAuthConfig() {
89336
89405
  return `/**
@@ -90320,7 +90389,7 @@ class ProfileResolver {
90320
90389
  static DEFAULTS = {
90321
90390
  core: {
90322
90391
  drivers: {
90323
- database: "sqlite",
90392
+ database: "none",
90324
90393
  cache: "memory",
90325
90394
  queue: "sync",
90326
90395
  storage: "local",
@@ -90610,16 +90679,8 @@ describe('Example Test', () => {
90610
90679
  `;
90611
90680
  }
90612
90681
  generateDatabaseConfig() {
90613
- return `export default {
90614
- default: process.env.DB_CONNECTION ?? 'sqlite',
90615
- connections: {
90616
- sqlite: {
90617
- driver: 'sqlite',
90618
- database: process.env.DB_DATABASE ?? 'database/database.sqlite',
90619
- },
90620
- },
90621
- }
90622
- `;
90682
+ const driver = this.context?.profileConfig?.drivers?.database ?? "none";
90683
+ return ConfigGenerator.generateDatabaseConfig(driver);
90623
90684
  }
90624
90685
  generateUserModel() {
90625
90686
  return `/**
@@ -95327,7 +95388,7 @@ cli.command("dev", "Start development server with health checks").action(async (
95327
95388
  });
95328
95389
  });
95329
95390
  cli.help();
95330
- cli.version("3.2.0");
95391
+ cli.version("3.3.0");
95331
95392
  async function loadPlugins(cli2) {
95332
95393
  try {
95333
95394
  const cwd = process.cwd();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravito/pulse",
3
- "version": "3.3.0",
3
+ "version": "3.3.1",
4
4
  "description": "The official CLI for Gravito Galaxy Architecture. Scaffold projects and manage your universe.",
5
5
  "bin": {
6
6
  "gravito": "bin/gravito.mjs"
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@clack/prompts": "^0.7.0",
30
- "@gravito/scaffold": "^3.2.0",
30
+ "@gravito/scaffold": "^4.0.0",
31
31
  "cac": "^6.7.14",
32
32
  "giget": "^1.2.5",
33
33
  "node-fetch-native": "^1.6.7",