safe-action-advanced

Use when working with bind arguments, metadata schemas, framework errors (redirect/notFound/forbidden/unauthorized), type inference utilities (InferSafeActionFnInput/Result), or server-level action callbacks

By next-safe-action · 1,133 installs

npx skills add next-safe-action/skills --skill safe-action-advanced

Source repository · Upstream listing

next safe action Advanced Features Overview Feature Use Case [Bind arguments](./bind arguments.md) Pass extra args to actions via .bind() (e.g., resource IDs) [Metadata](./metadata.md) Attach typed metadata to actions for use in middleware [Framework errors](./framework errors.md) Handle redirect, notFound, forbidden, unauthorized in actions [Type utilities](./type utilities.md) Infer types from action functions and middleware Server Level Action Callbacks The second argument to .action() accepts callbacks that run on the server (not client side hooks): These are distinct from hook callbacks ( useAction({ onSuccess }) ) — server callbacks run in the Node.js runtime, hook callbacks run in the browser. throwServerError Re throw server errors instead of returning them as result.serverError : Don't confuse this with returnServerError() : throwServerError throws the handled error (post handleServerError ) instead of returning it, while returnServerError(payload) returns a typed expected error in result.serverError , bypassing handleServerError entirely (see the safe action client skill's error handling doc).