Skip to content

API reference

Functions

formatJalaliDate

Source
formatJalaliDate(value: JalaliDateValue, options?: JalaliDateDisplayOptions) => string | null

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

formatMoney

Source
formatMoney(value: number | null | undefined, currency: MoneyCurrency, display?: MoneyDisplayOptions) => string | null

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

formatSlug

Source
formatSlug(value: string) => string

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

jalaliDateField

Source
jalaliDateField(options: JalaliDateFieldOptions) => DateField

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

moneyField

Source
moneyField(options: MoneyFieldOptions) => NumberField

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

parseMoneyToMinorUnits

Source
parseMoneyToMinorUnits(input: string, currency: MoneyCurrency) => number

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

payloadFieldsPlugin

Source
payloadFieldsPlugin(options?: PayloadFieldsPluginOptions) => Plugin

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

resolveCurrency

Source
resolveCurrency(currency: MoneyCurrency) => MoneyCurrencyDefinition

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

slugField

Source
slugField(options?: SlugFieldOptions) => SlugFieldResult

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

withJalaliTimestamps

Source
withJalaliTimestamps<T extends Field[]>(fields: T, options?: JalaliTimestampsOptions) => Field[]

Exported from: @nexload-sdk/payload-fields

Public function exported by @nexload-sdk/payload-fields.

Constants

IRR: Readonly<MoneyCurrencyDefinition>

Exported from: @nexload-sdk/payload-fields

Public constant exported by @nexload-sdk/payload-fields.

IRT: Readonly<MoneyCurrencyDefinition>

Exported from: @nexload-sdk/payload-fields

Public constant exported by @nexload-sdk/payload-fields.

formatSlugHook

Source
formatSlugHook(options: SlugHookOptions) => FieldHook

Exported from: @nexload-sdk/payload-fields

Public constant exported by @nexload-sdk/payload-fields.

Types

JalaliDateDisplayOptions

Source
type JalaliDateDisplayOptions = {
  dateStyle?: "short" | "medium" | "long" | "full"
  timeStyle?: "short" | "medium"
  digits?: "persian" | "latin"
  timeZone?: string
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

JalaliDateFieldOptions

Source
type JalaliDateFieldOptions = {
  name: string
  pickerAppearance?: JalaliPickerAppearance
  display?: import("./format-date").JalaliDateDisplayOptions
  overrides?: Partial<DateField>
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

JalaliDateValue

Source
type JalaliDateValue = Date | string | number | null | undefined;

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

JalaliPickerAppearance

Source
type JalaliPickerAppearance
  = | "dayOnly"
    | "dayAndTime"
    | "timeOnly"
    | "monthOnly";

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

JalaliTimestampsOptions

Source
type JalaliTimestampsOptions = {
  createdAt?: boolean
  updatedAt?: boolean
  display?: import("./format-date").JalaliDateDisplayOptions
  overrides?: { createdAt?: Partial<TextField>, updatedAt?: Partial<TextField> }
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

MoneyCurrency

Source
type MoneyCurrency = "IRR" | "IRT" | MoneyCurrencyDefinition;

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

MoneyCurrencyDefinition

Source
type MoneyCurrencyDefinition = {
  code: string
  label: string
  fractionDigits: number
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

MoneyDisplayOptions

Source
type MoneyDisplayOptions = {
  locale?: string
  digits?: "persian" | "latin"
  grouping?: boolean
  showCurrency?: boolean
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

MoneyFieldOptions

Source
type MoneyFieldOptions = {
  name: string
  currency: MoneyCurrency
  minMinorUnits?: number
  maxMinorUnits?: number
  allowNegative?: boolean
  display?: MoneyDisplayOptions
  overrides?: Partial<NumberField>
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

PayloadFieldsPluginOptions

Source
type PayloadFieldsPluginOptions = { slugGenerators?: Record<string, SlugGenerator>, generateSlugAccess?: SlugGenerationAccess };

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugFieldOptions

Source
type SlugFieldOptions = {
  name?: string
  lockName?: string
  source?: string
  generator?: string
  regenerateOnSourceChange?: boolean
  overrides?: { slug?: Partial<TextField>, lock?: Partial<CheckboxField> }
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugFieldResult

Source
type SlugFieldResult = readonly [TextField, CheckboxField];

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugGenerationAccess

Source
type SlugGenerationAccess = (context: SlugGeneratorContext) => boolean | Promise<boolean>;

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugGenerator

Source
type SlugGenerator = (input: SlugGeneratorInput, context: SlugGeneratorContext) => Promise<string>;

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugGeneratorContext

Source
type SlugGeneratorContext = { req: PayloadRequest };

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugGeneratorInput

Source
type SlugGeneratorInput = { sourceValue: string, currentSlug?: string };

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

SlugHookOptions

Source
type SlugHookOptions = {
  name: string
  lockName: string
  source: string
  regenerateOnSourceChange: boolean
};

Exported from: @nexload-sdk/payload-fields

Public type exported by @nexload-sdk/payload-fields.

  • slugField(options?) returns [TextField, CheckboxField]; spread it into fields.
  • jalaliDateField(options) returns one native Payload date field.
  • withJalaliTimestamps(fields, options?) returns a new field array with virtual Jalali timestamp fields.
  • moneyField(options) returns one native number field with safe-integer validation.
  • payloadFieldsPlugin(options?) returns a Payload plugin and adds the slug-generator endpoint.
  • formatSlug and formatSlugHook share slug normalization.
  • formatJalaliDate formats date-like input or returns null.
  • parseMoneyToMinorUnits, formatMoney, and resolveCurrency own money conversion and presentation.
  • IRR and IRT are frozen zero-fraction currency definitions.

Public option and value types are exported from the root and semantic subpaths. Import Admin components only through the package’s declared ./admin/* subpaths, normally via Payload’s Import Map.

Factory configuration errors throw synchronously. Field validation returns Payload validation strings. Pure money parsers throw TypeError for malformed input and RangeError for precision or safe-integer violations. The plugin endpoint returns structured HTTP failures with codes from PAYLOAD_FIELDS_UNAUTHENTICATED through PAYLOAD_FIELDS_GENERATION_FAILED.

See the source entrypoint for the current export surface.