fakebase-studio 1.0.4 → 1.0.5
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/package.json +1 -1
- package/server/dist/db.d.ts +4 -0
- package/server/dist/db.d.ts.map +1 -1
- package/server/dist/db.js +43 -0
- package/server/dist/db.js.map +1 -1
- package/server/dist/index.d.ts.map +1 -1
- package/server/dist/index.js +10 -0
- package/server/dist/index.js.map +1 -1
- package/server/dist/services/connections.service.d.ts.map +1 -1
- package/server/dist/services/connections.service.js +3 -2
- package/server/dist/services/connections.service.js.map +1 -1
- package/ui/dist/assets/index-C58yNoTI.js +71 -0
- package/ui/dist/assets/index-CmWCu1wa.css +1 -0
- package/ui/dist/index.html +2 -2
- package/ui/dist/assets/index-3A4u6lT6.css +0 -1
- package/ui/dist/assets/index-g7U-HL5c.js +0 -71
package/package.json
CHANGED
package/server/dist/db.d.ts
CHANGED
|
@@ -15,4 +15,8 @@ export declare function connectToDatabase(connectionString: string): Promise<any
|
|
|
15
15
|
* @deprecated Use getOrCreatePool(connectionString) instead.
|
|
16
16
|
*/
|
|
17
17
|
export declare function getDb(): Pool;
|
|
18
|
+
/**
|
|
19
|
+
* Close all cached pools and the legacy pool. Safe to call multiple times (no-op after first).
|
|
20
|
+
*/
|
|
21
|
+
export declare function closeAllPools(): Promise<void>;
|
|
18
22
|
//# sourceMappingURL=db.d.ts.map
|
package/server/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAkB1B;;;GAGG;AACH,wBAAgB,eAAe,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAgC9D;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,gBAyC/D;AAED;;;GAGG;AACH,wBAAgB,KAAK,SAGpB;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAqBnD"}
|
package/server/dist/db.js
CHANGED
|
@@ -3,18 +3,34 @@ import { Pool } from "pg";
|
|
|
3
3
|
const connectionPools = new Map();
|
|
4
4
|
// Legacy single pool for backward compatibility with connect endpoint
|
|
5
5
|
let pool = null;
|
|
6
|
+
let closed = false;
|
|
7
|
+
const POOL_CONFIG = {
|
|
8
|
+
max: 10,
|
|
9
|
+
idleTimeoutMillis: 30_000,
|
|
10
|
+
connectionTimeoutMillis: 5000,
|
|
11
|
+
};
|
|
12
|
+
const MAX_CACHED_POOLS = 20;
|
|
6
13
|
/**
|
|
7
14
|
* Get or create a connection pool for the given connection string.
|
|
8
15
|
* Pools are cached and reused for the same connection string.
|
|
9
16
|
*/
|
|
10
17
|
export function getOrCreatePool(connectionString) {
|
|
11
18
|
if (!connectionPools.has(connectionString)) {
|
|
19
|
+
if (connectionPools.size >= MAX_CACHED_POOLS) {
|
|
20
|
+
const firstKey = connectionPools.keys().next().value;
|
|
21
|
+
if (firstKey !== undefined) {
|
|
22
|
+
const oldPool = connectionPools.get(firstKey);
|
|
23
|
+
connectionPools.delete(firstKey);
|
|
24
|
+
oldPool?.end().catch(() => { });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
12
27
|
// Parse connection string to check if it's Supabase or needs SSL
|
|
13
28
|
const isSupabase = connectionString.includes("supabase.co");
|
|
14
29
|
const newPool = new Pool({
|
|
15
30
|
connectionString,
|
|
16
31
|
// Supabase requires SSL connections
|
|
17
32
|
ssl: isSupabase ? { rejectUnauthorized: false } : undefined,
|
|
33
|
+
...POOL_CONFIG,
|
|
18
34
|
});
|
|
19
35
|
// Handle pool errors
|
|
20
36
|
newPool.on("error", (err) => {
|
|
@@ -49,6 +65,7 @@ export async function connectToDatabase(connectionString) {
|
|
|
49
65
|
connectionString,
|
|
50
66
|
// Supabase requires SSL connections
|
|
51
67
|
ssl: isSupabase ? { rejectUnauthorized: false } : undefined,
|
|
68
|
+
...POOL_CONFIG,
|
|
52
69
|
});
|
|
53
70
|
try {
|
|
54
71
|
// Test connection
|
|
@@ -80,4 +97,30 @@ export function getDb() {
|
|
|
80
97
|
throw new Error("Database not connected");
|
|
81
98
|
return pool;
|
|
82
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* Close all cached pools and the legacy pool. Safe to call multiple times (no-op after first).
|
|
102
|
+
*/
|
|
103
|
+
export async function closeAllPools() {
|
|
104
|
+
if (closed)
|
|
105
|
+
return;
|
|
106
|
+
closed = true;
|
|
107
|
+
for (const [, p] of connectionPools) {
|
|
108
|
+
try {
|
|
109
|
+
await p.end();
|
|
110
|
+
}
|
|
111
|
+
catch (err) {
|
|
112
|
+
console.warn("Error closing pool:", err);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
connectionPools.clear();
|
|
116
|
+
if (pool) {
|
|
117
|
+
try {
|
|
118
|
+
await pool.end();
|
|
119
|
+
}
|
|
120
|
+
catch (err) {
|
|
121
|
+
console.warn("Error closing legacy pool:", err);
|
|
122
|
+
}
|
|
123
|
+
pool = null;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
83
126
|
//# sourceMappingURL=db.js.map
|
package/server/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE1B,+CAA+C;AAC/C,MAAM,eAAe,GAAG,IAAI,GAAG,EAAgB,CAAC;AAEhD,sEAAsE;AACtE,IAAI,IAAI,GAAgB,IAAI,CAAC;AAE7B;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,gBAAwB;IACtD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC3C,iEAAiE;QACjE,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAE5D,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC;YACvB,gBAAgB;YAChB,oCAAoC;YACpC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAWA,wBAAsB,WAAW,kBAmEhC"}
|
package/server/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@ import fastifyCors from "@fastify/cors";
|
|
|
4
4
|
import path from "path";
|
|
5
5
|
import { fileURLToPath } from "url";
|
|
6
6
|
import { registerRoutes } from "./routes/index.js";
|
|
7
|
+
import { closeAllPools } from "./db.js";
|
|
7
8
|
const __filename = fileURLToPath(import.meta.url);
|
|
8
9
|
const __dirname = path.dirname(__filename);
|
|
9
10
|
export async function startServer() {
|
|
@@ -12,6 +13,9 @@ export async function startServer() {
|
|
|
12
13
|
level: "error",
|
|
13
14
|
},
|
|
14
15
|
});
|
|
16
|
+
app.addHook("onClose", async () => {
|
|
17
|
+
await closeAllPools();
|
|
18
|
+
});
|
|
15
19
|
// Global error handler
|
|
16
20
|
app.setErrorHandler((error, request, reply) => {
|
|
17
21
|
request.log.error(error, "Unhandled error");
|
|
@@ -55,6 +59,12 @@ export async function startServer() {
|
|
|
55
59
|
const host = process.env.HOST || "0.0.0.0";
|
|
56
60
|
await app.listen({ port, host });
|
|
57
61
|
console.log(`Fakebase Studio running on http://localhost:${port}`);
|
|
62
|
+
process.once("SIGINT", () => {
|
|
63
|
+
app.close().then(() => process.exit(0)).catch(() => process.exit(1));
|
|
64
|
+
});
|
|
65
|
+
process.once("SIGTERM", () => {
|
|
66
|
+
app.close().then(() => process.exit(0)).catch(() => process.exit(1));
|
|
67
|
+
});
|
|
58
68
|
}
|
|
59
69
|
// Start server when this file is executed directly
|
|
60
70
|
startServer().catch((error) => {
|
package/server/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections.service.d.ts","sourceRoot":"","sources":["../../services/connections.service.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAsCD;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAgBlE;AAUD;;GAEG;AACH,wBAAsB,cAAc,CAClC,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,OAAe,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"connections.service.d.ts","sourceRoot":"","sources":["../../services/connections.service.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAsCD;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAgBlE;AAUD;;GAEG;AACH,wBAAsB,cAAc,CAClC,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,OAAe,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC,CAqC3B;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASvE;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAalC"}
|
|
@@ -70,10 +70,11 @@ export async function saveConnection(connectionString, success = false, database
|
|
|
70
70
|
// Check if connection string already exists
|
|
71
71
|
const existingIndex = config.connections.findIndex((conn) => conn.connectionString === connectionString);
|
|
72
72
|
const existing = existingIndex >= 0 ? config.connections[existingIndex] : null;
|
|
73
|
+
const resolvedName = name?.trim() || existing?.name?.trim() || "Unnamed";
|
|
73
74
|
const connectionConfig = {
|
|
74
75
|
id: existing?.id ?? crypto.randomUUID(),
|
|
75
76
|
connectionString,
|
|
76
|
-
name:
|
|
77
|
+
name: resolvedName,
|
|
77
78
|
timestamp: existing?.timestamp ?? Date.now(),
|
|
78
79
|
lastUsed: Date.now(),
|
|
79
80
|
success,
|
|
@@ -84,7 +85,7 @@ export async function saveConnection(connectionString, success = false, database
|
|
|
84
85
|
...existing,
|
|
85
86
|
...connectionConfig,
|
|
86
87
|
id: existing.id,
|
|
87
|
-
name:
|
|
88
|
+
name: resolvedName,
|
|
88
89
|
};
|
|
89
90
|
}
|
|
90
91
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections.service.js","sourceRoot":"","sources":["../../services/connections.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"connections.service.js","sourceRoot":"","sources":["../../services/connections.service.ts"],"names":[],"mappings":"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"}
|