Skip to Content

Custom Database Adapter

A custom database plugin might look like this:

import { USE_DEVELOPMENT_DATABASE_PLUGIN, notImplemented, type OberonDatabaseAdapter, type OberonInitAdapter, type OberonPlugin, } from "@oberoncms/core" export const databasePlugin: OberonPlugin = () => ({ name: "Custom Database Plugin", disabled: USE_DEVELOPMENT_DATABASE_PLUGIN, adapter: { // Prebuild hook prebuild: notImplemented("prebuild"), // OberonBaseAdapter addImage: notImplemented("addImage"), addPage: notImplemented("addPage"), addUser: notImplemented("addUser"), changeRole: notImplemented("changeRole"), deleteImage: notImplemented("deleteImage"), deletePage: notImplemented("deletePage"), deleteUser: notImplemented("deleteUser"), getAllImages: notImplemented("getAllImages"), getAllPages: notImplemented("getAllPages"), getAllUsers: notImplemented("getAllUsers"), getPageData: notImplemented("getPageData"), getSite: notImplemented("getSite"), updatePageData: notImplemented("updatePageData"), updateSite: notImplemented("updateSite"), // OberonAuthAdapter createSession: notImplemented("createSession"), createUser: notImplemented("createUser"), createVerificationToken: notImplemented("createVerificationToken"), deleteSession: notImplemented("deleteSession"), getSessionAndUser: notImplemented("getSessionAndUser"), getUser: notImplemented("getUser"), getUserByAccount: notImplemented("getUserByAccount"), getUserByEmail: notImplemented("getUserByEmail"), linkAccount: notImplemented("linkAccount"), unlinkAccount: notImplemented("unlinkAccount"), useVerificationToken: notImplemented("useVerificationToken"), updateSession: notImplemented("updateSession"), updateUser: notImplemented("updateUser"), } satisfies OberonInitAdapter & OberonDatabaseAdapter, })
Last updated on