New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

@cratestack/validator-yup

Package Overview
Dependencies
Maintainers
1
Versions
57
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cratestack/validator-yup

An RpcLink for CrateStack's generated TypeScript RPC client that validates request input against per-op yup schemas.

latest
Source
npmnpm
Version
0.15.4
Version published
Maintainers
1
Created
Source

@cratestack/validator-yup

An RpcLink (issue #182) for CrateStack's generated TypeScript RPC client (transport rpc schemas) that validates request.input against a per-op yup schema before the call reaches the network — client-side validation with the exact same schema shape your server-side procedure/model input already has, instead of hoping the generated types alone catch a bad call at compile time.

Usage

import { createYupValidatorLink } from "@cratestack/validator-yup";
import { CratestackRpcRuntime } from "./generated/runtime"; // your project's generated client
import * as yup from "yup";

const runtime = new CratestackRpcRuntime("https://api.example.com", {
  links: [
    createYupValidatorLink({
      "model.Order.create": yup.object({ total: yup.number().positive().required() }),
    }),
  ],
});

Ops with no configured schema pass through unvalidated — this is opt-in per op, not a blanket gate. On success, the schema's cast output (defaults, type coercion) becomes the actual request input, not just a type-level assertion. On failure, the chain short-circuits — the real network call never happens — and the call rejects the same way a server-side validation failure would, with an RpcErrorBody carrying code: "invalid_argument".

Keywords

cratestack

FAQs

Package last updated on 11 Oct 2026

Related posts