vapor-chamber API reference - v1.3.0
    Preparing search index...

    Type Alias FormBus<T>

    type FormBus<T extends Record<string, any>> = {
        values: Signal<T>;
        errors: Signal<Partial<Record<keyof T, string>>>;
        touched: Signal<Partial<Record<keyof T, boolean>>>;
        isDirty: Signal<boolean>;
        isValid: Signal<boolean>;
        isSubmitting: Signal<boolean>;
        isValidating: Signal<boolean>;
        isBusy: Signal<boolean>;
        set<K extends string | number | symbol>(field: K, value: T[K]): void;
        touch<K extends string | number | symbol>(field: K): void;
        submit(): Promise<boolean>;
        reset(): void;
        use(plugin: Plugin, options?: PluginOptions): void;
        bus: CommandBus;
    }

    Type Parameters

    • T extends Record<string, any>
    Index

    Methods

    • Set a single field value and re-run validation.

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • field: K
      • value: T[K]

      Returns void

    • Mark a field as touched (shows errors for that field).

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • field: K

      Returns void

    • Validate and call onSubmit. Returns true on success, false on validation failure.

      Returns Promise<boolean>

    • Reset all fields to their initial values and clear errors/touched state.

      Returns void

    Properties

    values: Signal<T>

    Reactive current field values.

    errors: Signal<Partial<Record<keyof T, string>>>

    Reactive per-field error messages. Empty when all fields pass.

    touched: Signal<Partial<Record<keyof T, boolean>>>

    Reactive set of fields the user has interacted with.

    isDirty: Signal<boolean>

    True when any field differs from its initial value.

    isValid: Signal<boolean>

    True when no validation errors exist.

    isSubmitting: Signal<boolean>

    True while onSubmit is in flight.

    isValidating: Signal<boolean>

    True while async validation is running.

    isBusy: Signal<boolean>

    True when either validating or submitting — use for disabling submit buttons.

    The underlying command bus — for advanced use (DevTools, testing).