@meshqljs/access
v0.2.15
Published
MeshQL advanced field, entity, and row access control
Readme
@meshql/access
Entity, row, and field access control for MeshQL.
Install
npm install @meshqljs/access @meshqljs/core
# or
npx jsr add @meshql/access @meshql/corePublished on npm as @meshqljs/access and JSR as @meshql/access.
Example
import { createMesh } from "@meshql/core";
import { withAccess } from "@meshql/access";
const mesh = createMesh({
entities: {
user: { fields: ["id", "email"], table: "users" },
admin: { fields: ["id"], table: "admins" },
},
});
withAccess(mesh, {
entityAccess: {
admin: (ctx) => ctx.role === "superadmin",
},
rowAccess: {
user: (ctx, entityId) => ctx.userId === entityId,
},
rules: {
"user.email": (ctx) => ctx.role === "admin",
},
});JSR imports: @meshql/core, @meshql/access.
