
Security News
Happy Birthday, Shai-Hulud
It has been one year since Shai-Hulud made its first appearance on npm.
@prisma-next/utils
Advanced tools
Shared utility functions for Prisma Next.
This package provides general-purpose utility functions used across the Prisma Next codebase. These utilities are target-agnostic and have no dependencies on other Prisma Next packages.
ifDefined(key, value)Returns an object with the key/value if value is defined, otherwise an empty object. Use with spread to conditionally include optional properties while satisfying exactOptionalPropertyTypes.
import { ifDefined } from '@prisma-next/utils/defined';
// Instead of:
const obj = {
required: 'value',
...(optional ? { optional } : {}),
};
// Use:
const obj = {
required: 'value',
...ifDefined('optional', optional),
};
Why use this?
{} or { key: V } (without undefined)Result<T, F>, ok(), notOk(), okVoid()Generic Result type for representing success or failure outcomes. This is the standard way to return "expected failures" as values rather than throwing exceptions.
import { type Result, ok, notOk, okVoid } from '@prisma-next/utils/result';
// Success result with value
function divide(a: number, b: number): Result<number, string> {
if (b === 0) {
return notOk('Division by zero');
}
return ok(a / b);
}
// Using the result
const result = divide(10, 2);
if (result.ok) {
console.log(result.value); // 5
} else {
console.error(result.failure); // error message
}
// Void success for validation
function validate(value: unknown): Result<void, string> {
if (!value) {
return notOk('Value is required');
}
return okVoid();
}
Types:
Ok<T> - Success with value: { ok: true, value: T }NotOk<F> - Failure with details: { ok: false, failure: F }Result<T, F> - Discriminated union of Ok<T> | NotOk<F>See docs/Error Handling.md for the full error taxonomy.
This package is part of the framework domain, core layer, shared plane:
packages/1-framework/1-core/shared/utilsThis package has no dependencies - it's part of the innermost core ring and provides foundational utilities.
FAQs
Shared utility functions for Prisma Next
The npm package @prisma-next/utils receives a total of 2,264 weekly downloads. As such, @prisma-next/utils popularity was classified as popular.
We found that @prisma-next/utils demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.

Security News
It has been one year since Shai-Hulud made its first appearance on npm.

Research
/Security News
Operators behind PolinRider used a compromised GitHub account to plant malware in four development versions of a Packagist package with 700,000+ downloads.

Security News
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.