better-auth-studio 1.0.26-beta.7 → 1.0.27
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/README.md +2 -2
- package/dist/auth-adapter.d.ts +1 -1
- package/dist/auth-adapter.d.ts.map +1 -1
- package/dist/auth-adapter.js +70 -107
- package/dist/auth-adapter.js.map +1 -1
- package/dist/cli.js +23 -34
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -8
- package/dist/config.js.map +1 -1
- package/dist/data.d.ts +1 -1
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +21 -40
- package/dist/data.js.map +1 -1
- package/dist/geo-service.d.ts.map +1 -1
- package/dist/geo-service.js +10 -15
- package/dist/geo-service.js.map +1 -1
- package/dist/get-tsconfig-info.d.ts.map +1 -1
- package/dist/get-tsconfig-info.js +3 -4
- package/dist/get-tsconfig-info.js.map +1 -1
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +403 -273
- package/dist/routes.js.map +1 -1
- package/dist/studio.d.ts.map +1 -1
- package/dist/studio.js +13 -17
- package/dist/studio.js.map +1 -1
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/database-detection.d.ts +20 -0
- package/dist/utils/database-detection.d.ts.map +1 -0
- package/dist/utils/database-detection.js +143 -0
- package/dist/utils/database-detection.js.map +1 -0
- package/dist/utils/package-json.d.ts +8 -0
- package/dist/utils/package-json.d.ts.map +1 -0
- package/dist/utils/package-json.js +63 -0
- package/dist/utils/package-json.js.map +1 -0
- package/package.json +3 -2
- package/public/assets/main-DWecCRCR.js +405 -0
- package/public/assets/main-FzP6n_gH.css +1 -0
- package/public/index.html +2 -2
- package/public/assets/main-6TIapMhx.css +0 -1
- package/public/assets/main-BUBnw2oe.js +0 -405
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { DatabaseDetectionResult, DetectionInfo } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Detect database type and version from installed packages
|
|
4
|
+
* @param cwd - Current working directory to search in
|
|
5
|
+
* @returns DetectionInfo with database name and version, or undefined if not found
|
|
6
|
+
*/
|
|
7
|
+
export declare function detectDatabase(cwd?: string): Promise<DetectionInfo | undefined>;
|
|
8
|
+
/**
|
|
9
|
+
* Enhanced database detection with dialect information
|
|
10
|
+
* @param cwd - Current working directory to search in
|
|
11
|
+
* @returns DatabaseDetectionResult with database name, version, and dialect info
|
|
12
|
+
*/
|
|
13
|
+
export declare function detectDatabaseWithDialect(cwd?: string): Promise<DatabaseDetectionResult | undefined>;
|
|
14
|
+
/**
|
|
15
|
+
* Get all detected databases (useful for projects with multiple database connections)
|
|
16
|
+
* @param cwd - Current working directory to search in
|
|
17
|
+
* @returns Array of all detected databases
|
|
18
|
+
*/
|
|
19
|
+
export declare function detectAllDatabases(cwd?: string): Promise<DatabaseDetectionResult[]>;
|
|
20
|
+
//# sourceMappingURL=database-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-detection.d.ts","sourceRoot":"","sources":["../../src/utils/database-detection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAyBvE;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAMrF;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAmD9C;AAwCD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAczF"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { getPackageVersion } from './package-json.js';
|
|
2
|
+
const DATABASES = {
|
|
3
|
+
'drizzle-orm': 'drizzle',
|
|
4
|
+
'@prisma/client': 'prisma',
|
|
5
|
+
mongoose: 'mongodb',
|
|
6
|
+
mongodb: 'mongodb',
|
|
7
|
+
pg: 'postgresql',
|
|
8
|
+
mysql: 'mysql',
|
|
9
|
+
mariadb: 'mariadb',
|
|
10
|
+
sqlite3: 'sqlite',
|
|
11
|
+
'better-sqlite3': 'sqlite',
|
|
12
|
+
};
|
|
13
|
+
const _DATABASE_DIALECTS = {
|
|
14
|
+
postgresql: ['pg', 'postgres'],
|
|
15
|
+
mysql: ['mysql', 'mysql2'],
|
|
16
|
+
mariadb: ['mariadb'],
|
|
17
|
+
sqlite: ['sqlite3', 'better-sqlite3'],
|
|
18
|
+
prisma: ['@prisma/client'],
|
|
19
|
+
mongodb: ['mongoose', 'mongodb'],
|
|
20
|
+
drizzle: ['drizzle-orm'],
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Detect database type and version from installed packages
|
|
24
|
+
* @param cwd - Current working directory to search in
|
|
25
|
+
* @returns DetectionInfo with database name and version, or undefined if not found
|
|
26
|
+
*/
|
|
27
|
+
export async function detectDatabase(cwd) {
|
|
28
|
+
for (const [pkg, name] of Object.entries(DATABASES)) {
|
|
29
|
+
const version = await getPackageVersion(pkg, cwd);
|
|
30
|
+
if (version)
|
|
31
|
+
return { name, version };
|
|
32
|
+
}
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Enhanced database detection with dialect information
|
|
37
|
+
* @param cwd - Current working directory to search in
|
|
38
|
+
* @returns DatabaseDetectionResult with database name, version, and dialect info
|
|
39
|
+
*/
|
|
40
|
+
export async function detectDatabaseWithDialect(cwd) {
|
|
41
|
+
const detection = await detectDatabase(cwd);
|
|
42
|
+
if (!detection)
|
|
43
|
+
return undefined;
|
|
44
|
+
let dialect = detection.name;
|
|
45
|
+
let adapter = detection.name;
|
|
46
|
+
switch (detection.name) {
|
|
47
|
+
case 'postgresql':
|
|
48
|
+
dialect = 'postgresql';
|
|
49
|
+
adapter = 'pg';
|
|
50
|
+
break;
|
|
51
|
+
case 'mysql':
|
|
52
|
+
dialect = 'mysql';
|
|
53
|
+
adapter = 'mysql2';
|
|
54
|
+
break;
|
|
55
|
+
case 'sqlite': {
|
|
56
|
+
const sqlite3Version = await getPackageVersion('sqlite3', cwd);
|
|
57
|
+
const betterSqlite3Version = await getPackageVersion('better-sqlite3', cwd);
|
|
58
|
+
if (betterSqlite3Version) {
|
|
59
|
+
adapter = 'better-sqlite3';
|
|
60
|
+
}
|
|
61
|
+
else if (sqlite3Version) {
|
|
62
|
+
adapter = 'sqlite3';
|
|
63
|
+
}
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
case 'prisma': {
|
|
67
|
+
const prismaDialect = await detectPrismaDialect(cwd);
|
|
68
|
+
if (prismaDialect) {
|
|
69
|
+
dialect = prismaDialect;
|
|
70
|
+
}
|
|
71
|
+
adapter = 'prisma';
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
case 'drizzle': {
|
|
75
|
+
const drizzleDialect = await detectDrizzleDialect(cwd);
|
|
76
|
+
if (drizzleDialect) {
|
|
77
|
+
dialect = drizzleDialect;
|
|
78
|
+
}
|
|
79
|
+
adapter = 'drizzle';
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return {
|
|
84
|
+
name: detection.name,
|
|
85
|
+
version: detection.version,
|
|
86
|
+
dialect,
|
|
87
|
+
adapter,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
async function detectPrismaDialect(cwd) {
|
|
91
|
+
const drivers = [
|
|
92
|
+
{ pkg: 'pg', dialect: 'postgresql' },
|
|
93
|
+
{ pkg: 'mysql2', dialect: 'mysql' },
|
|
94
|
+
{ pkg: 'sqlite3', dialect: 'sqlite' },
|
|
95
|
+
{ pkg: 'better-sqlite3', dialect: 'sqlite' },
|
|
96
|
+
];
|
|
97
|
+
for (const { pkg, dialect } of drivers) {
|
|
98
|
+
const version = await getPackageVersion(pkg, cwd);
|
|
99
|
+
if (version)
|
|
100
|
+
return dialect;
|
|
101
|
+
}
|
|
102
|
+
return undefined;
|
|
103
|
+
}
|
|
104
|
+
async function detectDrizzleDialect(cwd) {
|
|
105
|
+
const drizzleDrivers = [
|
|
106
|
+
{ pkg: 'drizzle-orm/postgres-js', dialect: 'postgresql' },
|
|
107
|
+
{ pkg: 'drizzle-orm/node-postgres', dialect: 'postgresql' },
|
|
108
|
+
{ pkg: 'drizzle-orm/mysql2', dialect: 'mysql' },
|
|
109
|
+
{ pkg: 'drizzle-orm/better-sqlite3', dialect: 'sqlite' },
|
|
110
|
+
{ pkg: 'drizzle-orm/libsql', dialect: 'sqlite' },
|
|
111
|
+
{ pkg: 'postgres', dialect: 'postgresql' },
|
|
112
|
+
{ pkg: 'mysql2', dialect: 'mysql' },
|
|
113
|
+
{ pkg: 'better-sqlite3', dialect: 'sqlite' },
|
|
114
|
+
];
|
|
115
|
+
for (const { pkg, dialect } of drizzleDrivers) {
|
|
116
|
+
try {
|
|
117
|
+
const version = await getPackageVersion(pkg, cwd);
|
|
118
|
+
if (version)
|
|
119
|
+
return dialect;
|
|
120
|
+
}
|
|
121
|
+
catch (_error) { }
|
|
122
|
+
}
|
|
123
|
+
return undefined;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Get all detected databases (useful for projects with multiple database connections)
|
|
127
|
+
* @param cwd - Current working directory to search in
|
|
128
|
+
* @returns Array of all detected databases
|
|
129
|
+
*/
|
|
130
|
+
export async function detectAllDatabases(cwd) {
|
|
131
|
+
const results = [];
|
|
132
|
+
for (const [pkg, name] of Object.entries(DATABASES)) {
|
|
133
|
+
const version = await getPackageVersion(pkg, cwd);
|
|
134
|
+
if (version) {
|
|
135
|
+
const detection = await detectDatabaseWithDialect(cwd);
|
|
136
|
+
if (detection && detection.name === name) {
|
|
137
|
+
results.push(detection);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return results;
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=database-detection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-detection.js","sourceRoot":"","sources":["../../src/utils/database-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the version of a package from package.json
|
|
3
|
+
* @param packageName - The name of the package to check
|
|
4
|
+
* @param cwd - The current working directory to search from (defaults to process.cwd())
|
|
5
|
+
* @returns The version string if found, undefined otherwise
|
|
6
|
+
*/
|
|
7
|
+
export declare function getPackageVersion(packageName: string, cwd?: string): Promise<string | undefined>;
|
|
8
|
+
//# sourceMappingURL=package-json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-json.d.ts","sourceRoot":"","sources":["../../src/utils/package-json.ts"],"names":[],"mappings":"AAuBA;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuC7B"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import { dirname, join, resolve } from 'node:path';
|
|
4
|
+
/**
|
|
5
|
+
* Find the project root by looking for package.json files up the directory tree
|
|
6
|
+
* @param startDir - Directory to start searching from
|
|
7
|
+
* @returns Path to the project root directory
|
|
8
|
+
*/
|
|
9
|
+
function findProjectRoot(startDir) {
|
|
10
|
+
let currentDir = resolve(startDir);
|
|
11
|
+
const root = resolve('/');
|
|
12
|
+
while (currentDir !== root) {
|
|
13
|
+
const packageJsonPath = join(currentDir, 'package.json');
|
|
14
|
+
if (existsSync(packageJsonPath)) {
|
|
15
|
+
return currentDir;
|
|
16
|
+
}
|
|
17
|
+
currentDir = dirname(currentDir);
|
|
18
|
+
}
|
|
19
|
+
return startDir;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get the version of a package from package.json
|
|
23
|
+
* @param packageName - The name of the package to check
|
|
24
|
+
* @param cwd - The current working directory to search from (defaults to process.cwd())
|
|
25
|
+
* @returns The version string if found, undefined otherwise
|
|
26
|
+
*/
|
|
27
|
+
export async function getPackageVersion(packageName, cwd) {
|
|
28
|
+
const searchDir = cwd || process.cwd();
|
|
29
|
+
try {
|
|
30
|
+
const projectRoot = findProjectRoot(searchDir);
|
|
31
|
+
const packageJsonPath = join(searchDir, 'package.json');
|
|
32
|
+
if (existsSync(packageJsonPath)) {
|
|
33
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
|
|
34
|
+
if (packageJson.dependencies?.[packageName]) {
|
|
35
|
+
return packageJson.dependencies[packageName].replace(/[\^~]/, '');
|
|
36
|
+
}
|
|
37
|
+
if (packageJson.devDependencies?.[packageName]) {
|
|
38
|
+
return packageJson.devDependencies[packageName].replace(/[\^~]/, '');
|
|
39
|
+
}
|
|
40
|
+
if (packageJson.peerDependencies?.[packageName]) {
|
|
41
|
+
return packageJson.peerDependencies[packageName].replace(/[\^~]/, '');
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
try {
|
|
45
|
+
const require = createRequire(import.meta.url);
|
|
46
|
+
const packagePath = require.resolve(`${packageName}/package.json`, {
|
|
47
|
+
paths: [projectRoot],
|
|
48
|
+
});
|
|
49
|
+
if (existsSync(packagePath)) {
|
|
50
|
+
const packageJson = JSON.parse(readFileSync(packagePath, 'utf-8'));
|
|
51
|
+
return packageJson.version;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
catch (_resolveError) {
|
|
55
|
+
// Only log unexpected errors, not MODULE_NOT_FOUND which is expected
|
|
56
|
+
}
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
catch (_error) {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=package-json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../src/utils/package-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEnD;;;;GAIG;AACH,SAAS,eAAe,CAAC,QAAgB;IACvC,IAAI,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE1B,OAAO,UAAU,KAAK,IAAI,EAAE,CAAC;QAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QACzD,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YAChC,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,GAAY;IAEZ,MAAM,SAAS,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACxD,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YAChC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;YACvE,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5C,OAAO,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/C,OAAO,WAAW,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACvE,CAAC;YAED,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;gBAChD,OAAO,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,WAAW,eAAe,EAAE;gBACjE,KAAK,EAAE,CAAC,WAAW,CAAC;aACrB,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;gBACnE,OAAO,WAAW,CAAC,OAAO,CAAC;YAC7B,CAAC;QACH,CAAC;QAAC,OAAO,aAAkB,EAAE,CAAC;YAC5B,qEAAqE;QACvE,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "better-auth-studio",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.27",
|
|
4
4
|
"description": "Studio for Better Auth",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"@babel/preset-react": "^7.27.1",
|
|
21
21
|
"@babel/preset-typescript": "^7.27.1",
|
|
22
22
|
"@types/chokidar": "^2.1.7",
|
|
23
|
-
"better-auth": "1.3.
|
|
23
|
+
"better-auth": "1.3.27",
|
|
24
24
|
"better-auth-studio": "1.0.19-beta.2",
|
|
25
25
|
"bumpp": "^10.2.3",
|
|
26
26
|
"c12": "^3.3.0",
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
"maxmind": "^5.0.0",
|
|
36
36
|
"open": "^10.0.2",
|
|
37
37
|
"postgres": "^3.4.0",
|
|
38
|
+
"preset-react": "link:@types/@babel/preset-react",
|
|
38
39
|
"ws": "^8.14.2"
|
|
39
40
|
},
|
|
40
41
|
"devDependencies": {
|