nuxt-surrealdb
Version:
A Nuxt module aimed to simplify the use of SurrealDB
21 lines (20 loc) • 706 B
JavaScript
import { surrealHooks, useNuxtApp } from "#imports";
export async function useSurrealLocal() {
const {
$surrealLocal: client,
$config: { public: { surrealdb: { local: { wasmEngine, ...config } = {} } = {} } = {} }
} = useNuxtApp();
if (client === null) {
return null;
}
if (!client.isConnected) {
await surrealHooks.callHookParallel("surrealdb:local:connecting", { client, config });
if (config?.endpoint && config.autoConnect !== false) {
const isConnected = await client.connect(config.endpoint, config.connectOptions);
if (isConnected) {
await surrealHooks.callHookParallel("surrealdb:local:connected", { client });
}
}
}
return client;
}