Skip to content

Function: resourcefulComputed()

ts
function resourcefulComputed<Schema>(
  options: Partial<ComputedOptions> &
    Partial<ResourcefulComputedAccessorDefinition<Schema>>,
): (target: any, propertyKey: string) => void;

Decorator to define a resourceful computed accessor on a Lucid model property. Applies validation, metadata, and Lucid computed options.

Type Parameters

Type ParameterDefault type
Schema extends AnySchema<any>ResourcefulPropertySchema

Parameters

ParameterTypeDescription
optionsPartial<ComputedOptions> & Partial<ResourcefulComputedAccessorDefinition<Schema>>Resourceful computed accessor options and Lucid computed options.

Returns

Property decorator function.

ts
(target: any, propertyKey: string): void;

Parameters

ParameterType
targetany
propertyKeystring

Returns

void

Example

ts
import {
  resourcefulComputed,
  ResourcefulStringType,
} from "@nhtio/lucid-resourceful";

class User {
  @resourcefulComputed({
    type: ResourcefulStringType({ minLength: 1, maxLength: 100 }),
  })
  public get fullName() {
    return `${this.firstName} ${this.lastName}`;
  }
}