API Reference
Factory Functions
createFn, readFn, updateFn, destroyFn for reusable, typed CRUD.
import { createFn, readFn, updateFn, destroyFn } from '@remcostoeten/drizzleasy/server'createFn()
function createFn<T extends TEntity = TEntity>(): (
tableName: string
) => (data: TCreateInput<T>) => Promise<TResult<T[]>>type TUser = { id: string; name: string; email: string }
function makeCreate() {
return createFn<TUser>()
}
async function run() {
const create = makeCreate()
await create('users')({ name: 'Jane', email: 'jane@example.com' })
}readFn()
function readFn<T extends TEntity = TEntity>(): (
tableName: string
) => {
(): Promise<TResult<T[]>>
byId(id: string | number): Promise<TResult<T | null>>
where(condition: TWhereClause<T>): any
}function makeRead() {
return readFn<TUser>()
}
async function run() {
const read = makeRead()
await read('users')()
await read('users').where({ status: 'active' })()
}updateFn()
function updateFn<T extends TEntity = TEntity>(): (
tableName: string
) => (id: string | number, data: TUpdateInput<T>) => Promise<TResult<T[]>>destroyFn()
function destroyFn<T extends TEntity = TEntity>(): (
tableName: string
) => (id: string | number) => Promise<TResult<T[]>>