UNPKG

nuxt-surrealdb

Version:

A Nuxt module aimed to simplify the use of SurrealDB

57 lines (54 loc) 1.47 kB
import { defineNuxtModule, createResolver, addPlugin, addImportsDir, addServerImportsDir } from '@nuxt/kit'; import { defu } from 'defu'; const module = defineNuxtModule({ meta: { name: "nuxt-surrealdb", configKey: "surrealdb", compatibility: { nuxt: ">=3.10.0" } }, defaults: { auth: { adminMaxAge: 60 * 60 * 24 * 7, database: "default", sessionName: "nuxt-session", cookieName: "nuxt-surrealdb", sameSite: "lax" }, databases: { default: { host: "", ws: "", NS: "", DB: "", SC: "", AC: "" } } }, setup(options, nuxt) { const { resolve } = createResolver(import.meta.url); const runtimeDir = resolve("./runtime"); nuxt.options.build.transpile.push(runtimeDir); nuxt.options.alias["#surrealdb"] = runtimeDir; nuxt.options.runtimeConfig.public.surrealdb = defu( nuxt.options.runtimeConfig.public.surrealdb, { auth: options.auth, databases: options.databases } ); nuxt.options.runtimeConfig.surrealdb = defu( nuxt.options.runtimeConfig.surrealdb, options.server, { databases: nuxt.options.runtimeConfig.public.surrealdb.databases } ); addPlugin(resolve(runtimeDir, "plugin")); addImportsDir(resolve(runtimeDir, "composables")); addServerImportsDir(resolve(runtimeDir, "server", "utils")); } }); export { module as default };