From 22be2731d60dc2461afd80f43e110c8a7287e279 Mon Sep 17 00:00:00 2001 From: David Bottiau Date: Sun, 15 Sep 2024 10:42:36 +0200 Subject: [PATCH] fix: fix bun starter (#23) --- ts-bun-starter/bun.lockb | Bin 94470 -> 9122 bytes ts-bun-starter/src/create.ts | 39 +++++++++++++++++--------------- ts-bun-starter/src/select.ts | 29 +++++++++++++----------- ts-bun-starter/utils/surreal.ts | 32 ++++++++------------------ 4 files changed, 47 insertions(+), 53 deletions(-) mode change 100644 => 100755 ts-bun-starter/bun.lockb diff --git a/ts-bun-starter/bun.lockb b/ts-bun-starter/bun.lockb old mode 100644 new mode 100755 index ccc7bacb11631196edb932a063d603b06702e9f3..11db6e044bd80bd0e01090c7491777c2ebedba43 GIT binary patch delta 859 zcmb_aL1+_E5dHsme_GS-s;TX+Zloo}Y6EVQmfFPDcr%fLM_1H}f){&H=p_}=6vRsn zCXTpXq}VnhLP6ZtLQcJk(t{ufA{8YNdg+1)IaOzpEeLw(!3U4GGxO%}=g-{xCg;)x ztM9>upXSI+&Kq8?JbPGlKhLZumtHU4yj7YEB-_41Yp93Sp%?8gF`^f!)M?Z<)IkYz&5zwzT2>Kd1vXBlL`{KcIwjH)CQ$McUZSi?*g(+&5X~Gv z-GrwS@nohVIZ{IsNGaZp6v(|u!oQTm(~N$HTpe{!L#eydkN;H4>qzqNM^bzMNg$=z zq`=1xZyDLyHP8ItYr5sLKO}sdAA{OO6^<^9@phP6u;InH3SThlfWDFq=Ps#kzT|MY zym(dO2w4E)p?>hRJ#KAfSPACnJrIv{`1F1BAbxHAYJjrzc&om{FrZxRg>a=sQo0GQ zR1Qa}MjH}B(%k4(+mZW_G?5Gy5li)E-U*ee-9=_9ZW~FfzVW%q!1l)7HLpd8O~pxd zbK}?`?i%gh{JSSpvlAb#34S|a4O#IR+up`v|M`6H@`)r?24Yrxz)DO@=RWox`r8r3 z-w`~2)P*o}-gfg@=SYOdOc7}8_1(nKd!E&{R>KW>us5f}?o9jFv Fegh4=m4yHR literal 94470 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 BUb_GQ diff --git a/ts-bun-starter/src/create.ts b/ts-bun-starter/src/create.ts index 32df2d1..16a6129 100644 --- a/ts-bun-starter/src/create.ts +++ b/ts-bun-starter/src/create.ts @@ -1,22 +1,25 @@ -import { getDb, initDb } from "../utils/surreal"; +import { getDb } from "../utils/surreal"; +import { jsonify } from "surrealdb.js"; async function createUser() { - const db = await initDb(); - if (!db) { - console.error("Database not initialized"); - return; - } - try { - const user = await db.create('User', { - // User details - username: "newUser", - email: "user@example.com", - password: "securePassword", // Note: Store hashed passwords, not plain text - }); - console.log("User created:", user); - } catch (err) { - console.error("Failed to create user:", err); - } + const db = await getDb(); + if (!db) { + console.error("Database not initialized"); + return; + } + try { + const user = await db.create("User", { + // User details + username: "newUser", + email: "user@example.com", + password: "securePassword", // Note: Store hashed passwords, not plain text + }); + console.log("User created:", jsonify(user)); + } catch (err) { + console.error("Failed to create user:", err); + } finally { + await db.close(); + } } -createUser(); \ No newline at end of file +createUser(); diff --git a/ts-bun-starter/src/select.ts b/ts-bun-starter/src/select.ts index e768ff1..bd9e43b 100644 --- a/ts-bun-starter/src/select.ts +++ b/ts-bun-starter/src/select.ts @@ -1,17 +1,20 @@ -import { getDb, initDb } from "../utils/surreal"; +import { getDb } from "../utils/surreal"; +import { jsonify } from "surrealdb.js"; export async function getAllUsers() { - const db = await initDb(); - if (!db) { - console.error("Database not initialized"); - return; - } - try { - const users = await db.select('User'); - console.log("All users:", users); - } catch (err) { - console.error("Failed to get users:", err); - } + const db = await getDb(); + if (!db) { + console.error("Database not initialized"); + return; + } + try { + const users = await db.select("User"); + console.log("All users:", jsonify(users)); + } catch (err) { + console.error("Failed to get users:", err); + } finally { + await db.close(); + } } -getAllUsers(); \ No newline at end of file +getAllUsers(); diff --git a/ts-bun-starter/utils/surreal.ts b/ts-bun-starter/utils/surreal.ts index dc2c7ff..932d6b4 100644 --- a/ts-bun-starter/utils/surreal.ts +++ b/ts-bun-starter/utils/surreal.ts @@ -1,27 +1,15 @@ import { Surreal } from "surrealdb.js"; -let db: Surreal | undefined; +export async function getDb(): Promise { + const db = new Surreal(); -export async function initDb(): Promise { - if (db) return db; - const surreal = new Surreal(); - try { - await surreal.connect("http://127.0.0.1:8000/rpc"); - await surreal.use({ namespace: "test", database: "test" }); - // db = surreal; - return db; - } catch (err) { - console.error("Failed to connect to SurrealDB:", err); - throw err; - } -} - -export async function closeDb(): Promise { - if (!db) return; + try { + await db.connect("http://127.0.0.1:8000/rpc"); + await db.use({ namespace: "test", database: "test" }); + return db; + } catch (err) { + console.error("Failed to connect to SurrealDB:", err); await db.close(); - db = undefined; + throw err; + } } - -export function getDb(): Surreal | undefined { - return db; -} \ No newline at end of file