flint-orm 0.4.3 → 0.4.4

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/src/cli.js +66 -40
  2. package/package.json +17 -8
package/dist/src/cli.js CHANGED
@@ -13666,48 +13666,74 @@ async function cmdMigrate(args, config) {
13666
13666
  const isLocalDriver = config.driver === "bun-sqlite" || config.driver === "better-sqlite3";
13667
13667
  const dbUrl = isLocalDriver ? resolve3(process.cwd(), config.database.url) : config.database.url;
13668
13668
  let executor;
13669
- switch (config.driver) {
13670
- case "bun-sqlite": {
13671
- const { BunSqliteExecutor: BunSqliteExecutor2 } = await Promise.resolve().then(() => (init_bun_sqlite(), exports_bun_sqlite));
13672
- const { Database: Database10 } = await import("bun:sqlite");
13673
- executor = new BunSqliteExecutor2(new Database10(dbUrl));
13674
- break;
13675
- }
13676
- case "better-sqlite3": {
13677
- const { BetterSqlite3Executor: BetterSqlite3Executor2 } = await Promise.resolve().then(() => (init_better_sqlite3(), exports_better_sqlite3));
13678
- const Database10 = (await Promise.resolve().then(() => __toESM(require_lib(), 1))).default;
13679
- executor = new BetterSqlite3Executor2(new Database10(dbUrl));
13680
- break;
13681
- }
13682
- case "libsql": {
13683
- const { LibsqlExecutor: LibsqlExecutor2 } = await Promise.resolve().then(() => (init_libsql(), exports_libsql));
13684
- const { createClient: createLibsqlClient } = await Promise.resolve().then(() => (init_node(), exports_node));
13685
- executor = new LibsqlExecutor2(createLibsqlClient({ url: dbUrl, authToken: config.database.authToken }));
13686
- break;
13687
- }
13688
- case "libsql-web": {
13689
- const { LibsqlWebExecutor: LibsqlWebExecutor2 } = await Promise.resolve().then(() => (init_libsql_web(), exports_libsql_web));
13690
- const { createClient: createLibsqlWebClient } = await Promise.resolve().then(() => (init_web2(), exports_web));
13691
- executor = new LibsqlWebExecutor2(createLibsqlWebClient({ url: dbUrl, authToken: config.database.authToken }));
13692
- break;
13693
- }
13694
- case "turso-sync": {
13695
- const { TursoSyncExecutor: TursoSyncExecutor2 } = await Promise.resolve().then(() => (init_turso_sync(), exports_turso_sync));
13696
- const { connect: connect4 } = await Promise.resolve().then(() => (init_promise2(), exports_promise));
13697
- const db = await connect4({ path: dbUrl, authToken: config.database.authToken });
13698
- executor = new TursoSyncExecutor2(db);
13699
- break;
13669
+ const DRIVER_PACKAGES = {
13670
+ "better-sqlite3": "better-sqlite3",
13671
+ libsql: "@libsql/client",
13672
+ "libsql-web": "@libsql/client",
13673
+ turso: "@tursodatabase/database",
13674
+ "turso-sync": "@tursodatabase/sync"
13675
+ };
13676
+ try {
13677
+ switch (config.driver) {
13678
+ case "bun-sqlite": {
13679
+ const { BunSqliteExecutor: BunSqliteExecutor2 } = await Promise.resolve().then(() => (init_bun_sqlite(), exports_bun_sqlite));
13680
+ const { Database: Database10 } = await import("bun:sqlite");
13681
+ executor = new BunSqliteExecutor2(new Database10(dbUrl));
13682
+ break;
13683
+ }
13684
+ case "better-sqlite3": {
13685
+ const { BetterSqlite3Executor: BetterSqlite3Executor2 } = await Promise.resolve().then(() => (init_better_sqlite3(), exports_better_sqlite3));
13686
+ const Database10 = (await Promise.resolve().then(() => __toESM(require_lib(), 1))).default;
13687
+ executor = new BetterSqlite3Executor2(new Database10(dbUrl));
13688
+ break;
13689
+ }
13690
+ case "libsql": {
13691
+ const { LibsqlExecutor: LibsqlExecutor2 } = await Promise.resolve().then(() => (init_libsql(), exports_libsql));
13692
+ const { createClient: createLibsqlClient } = await Promise.resolve().then(() => (init_node(), exports_node));
13693
+ executor = new LibsqlExecutor2(createLibsqlClient({ url: dbUrl, authToken: config.database.authToken }));
13694
+ break;
13695
+ }
13696
+ case "libsql-web": {
13697
+ const { LibsqlWebExecutor: LibsqlWebExecutor2 } = await Promise.resolve().then(() => (init_libsql_web(), exports_libsql_web));
13698
+ const { createClient: createLibsqlWebClient } = await Promise.resolve().then(() => (init_web2(), exports_web));
13699
+ executor = new LibsqlWebExecutor2(createLibsqlWebClient({ url: dbUrl, authToken: config.database.authToken }));
13700
+ break;
13701
+ }
13702
+ case "turso-sync": {
13703
+ const { TursoSyncExecutor: TursoSyncExecutor2 } = await Promise.resolve().then(() => (init_turso_sync(), exports_turso_sync));
13704
+ const { connect: connect4 } = await Promise.resolve().then(() => (init_promise2(), exports_promise));
13705
+ const db = await connect4({ path: dbUrl, authToken: config.database.authToken });
13706
+ executor = new TursoSyncExecutor2(db);
13707
+ break;
13708
+ }
13709
+ case "turso": {
13710
+ const { TursoExecutor: TursoExecutor2 } = await Promise.resolve().then(() => (init_turso(), exports_turso));
13711
+ const { connect: connect4 } = await Promise.resolve().then(() => (init_promise3(), exports_promise2));
13712
+ const db = await connect4(dbUrl);
13713
+ executor = new TursoExecutor2(db);
13714
+ break;
13715
+ }
13716
+ default:
13717
+ cancel(`Unsupported driver: ${config.driver}`);
13718
+ process.exit(1);
13700
13719
  }
13701
- case "turso": {
13702
- const { TursoExecutor: TursoExecutor2 } = await Promise.resolve().then(() => (init_turso(), exports_turso));
13703
- const { connect: connect4 } = await Promise.resolve().then(() => (init_promise3(), exports_promise2));
13704
- const db = await connect4(dbUrl);
13705
- executor = new TursoExecutor2(db);
13706
- break;
13720
+ } catch (err) {
13721
+ const msg = err instanceof Error ? err.message : String(err);
13722
+ const pkg = DRIVER_PACKAGES[config.driver];
13723
+ if (pkg && (msg.includes("Cannot find module") || msg.includes("ERR_MODULE_NOT_FOUND") || msg.includes("not found"))) {
13724
+ const installCmd = pkg === "@libsql/client" ? "npm install @libsql/client" : `npm install ${pkg}`;
13725
+ note(`Driver "${config.driver}" is not installed.
13726
+
13727
+ Install it with:
13728
+
13729
+ ${import_picocolors.default.dim(installCmd)}
13730
+ `, "Missing driver");
13731
+ } else {
13732
+ note(`Failed to load driver "${config.driver}":
13733
+
13734
+ ${import_picocolors.default.dim(msg)}`, "Error");
13707
13735
  }
13708
- default:
13709
- cancel(`Unsupported driver: ${config.driver}`);
13710
- process.exit(1);
13736
+ process.exit(1);
13711
13737
  }
13712
13738
  try {
13713
13739
  if (statusOnly) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flint-orm",
3
- "version": "0.4.3",
3
+ "version": "0.4.4",
4
4
  "bin": {
5
5
  "flint": "./dist/src/cli.js"
6
6
  },
@@ -65,22 +65,31 @@
65
65
  "format": "oxfmt --write",
66
66
  "check": "oxlint && oxfmt"
67
67
  },
68
- "dependencies": {
68
+ "dependencies": {},
69
+ "devDependencies": {
69
70
  "@clack/prompts": "1.7.0",
70
71
  "@libsql/client": "0.17.4",
71
72
  "@tursodatabase/database": "0.6.1",
72
73
  "@tursodatabase/sync": "0.6.1",
73
- "better-sqlite3": "12.11.1",
74
- "picocolors": "1.1.1"
75
- },
76
- "devDependencies": {
77
74
  "@types/better-sqlite3": "7.6.13",
78
75
  "@types/bun": "1.3.14",
79
76
  "@types/node": "26.1.1",
77
+ "better-sqlite3": "12.11.1",
80
78
  "oxfmt": "0.57.0",
81
- "oxlint": "1.72.0"
79
+ "oxlint": "1.72.0",
80
+ "picocolors": "1.1.1"
82
81
  },
83
82
  "peerDependencies": {
84
- "typescript": "7.0.2"
83
+ "@libsql/client": ">=0.17.4",
84
+ "@tursodatabase/database": ">=0.6.1",
85
+ "@tursodatabase/sync": ">=0.6.1",
86
+ "better-sqlite3": ">=12.11.1",
87
+ "typescript": ">=5.0.0"
88
+ },
89
+ "peerDependenciesMeta": {
90
+ "@libsql/client": { "optional": true },
91
+ "@tursodatabase/database": { "optional": true },
92
+ "@tursodatabase/sync": { "optional": true },
93
+ "better-sqlite3": { "optional": true }
85
94
  }
86
95
  }