UNPKG

nuxt-surrealdb

Version:

A Nuxt module aimed to simplify the use of SurrealDB

47 lines (46 loc) 1.16 kB
import { getCookie } from "h3"; import { defuDbs, getDatabasePreset } from "#surrealdb/utils/overrides"; import { useRuntimeConfig } from "#imports"; let dbs; export function useSurrealDatabases(event, databasePreset) { if (dbs) { if (!databasePreset) return dbs; return dbs[databasePreset]; } dbs = { default: {} }; const { surrealdb: { databases: serverDbs }, public: { surrealdb: { databases } } } = useRuntimeConfig(event); for (const _db in { ...databases, ...serverDbs }) { const db = _db; dbs[db] = defuDbs( serverDbs[db], databases[db], serverDbs.default, databases.default ); } if (!databasePreset) return dbs; return dbs[databasePreset]; } export function useSurrealPreset(...args) { if (typeof args[0] !== "undefined" && !("node" in args[0])) { args.unshift(void 0); } let [event, overrides] = args; const { auth } = useRuntimeConfig(event).public.surrealdb; return getDatabasePreset({ authDatabase: auth.database, databases: useSurrealDatabases(event), overrides, userToken: event ? getCookie(event, auth.cookieName) : void 0 }); }