@sylphx/reify-adapter-prisma
v0.1.3
Published
Prisma database executor for Reify operations
Readme
@sylphx/reify-adapter-prisma
Prisma database executor for Reify operations.
Execute entity operations against a Prisma database.
Installation
npm install @sylphx/reify-adapter-prismaNote: Most users should install
@sylphx/reifyinstead, which includes this package.
Usage
import { PrismaClient } from '@prisma/client';
import { pipe, execute, registerPlugin } from '@sylphx/reify-core';
import { entity } from '@sylphx/reify-entity';
import { createPrismaPlugin } from '@sylphx/reify-adapter-prisma';
// Create Prisma client
const prisma = new PrismaClient();
// Create and register the plugin
const prismaPlugin = createPrismaPlugin(prisma);
registerPlugin(prismaPlugin);
// Define operations
const workflow = pipe(({ input }) => [
entity.create("User", {
name: input.name,
email: input.email,
}).as("user"),
]);
// Execute - writes to database
const result = await execute(workflow, {
name: "Alice",
email: "[email protected]"
});Supported Operations
| Operation | Prisma Method |
|-----------|---------------|
| entity.create | prisma.model.create() |
| entity.update | prisma.model.update() |
| entity.delete | prisma.model.delete() |
| entity.upsert | prisma.model.upsert() |
Configuration
const prismaPlugin = createPrismaPlugin(prisma, {
// Optional: Custom model name mapping
getModel: (type) => type.toLowerCase(),
});Documentation
See the main repository for full documentation.
License
MIT
