LocalFormBase | WebHare Platform SDK
WebHare Platform SDK
    Preparing search index...

    Class LocalFormBase<DataShape>

    Type Parameters

    • DataShape extends object = Record<string, unknown>

    Hierarchy (View Summary)

    Index

    Constructors

    • Type Parameters

      • DataShape extends object = Record<string, unknown>

      Parameters

      • node: HTMLFormElement

      Returns LocalFormBase<DataShape>

    Properties

    __scheduleUpdateConditions: () => Promise<void> = ...
    _submitstart: undefined | number
    data: DataShape = ...
    elements: HTMLFormControlsCollection

    Use node.elements if you want a true HTMLFormControlsCollection, use getElementByName since WH5.4+ for properly typed elements

    fieldmap: Map<string, FormField> = ...

    Field mapping. Uses original names

    fieldName: string
    node: HTMLFormElement

    Methods

    • Returns void

    • Parameters

      • contextnode: HTMLElement
      • messageid: string

      Returns void

    • Returns void

    • Parameters

      Returns void

    • Parameters

      • evt: DocEvent<CustomEvent<SetFieldErrorData>>

      Returns void

    • Parameters

      • evt: null | SubmitEvent
      • extradata: unknown

      Returns Promise<void>

    • Returns Promise<void>

    • Parameters

      • Optionallimitset: LimitSet
      • Optionaloptions: ValidationOptions

      Returns Promise<FormValidationResult>

    • Parameters

      • fieldname: string
      • Optionaloptions: { checkdisabled?: boolean }

      Returns null | string | string[]

    • Parameters

      • Optionalstartingpoint: HTMLElement

      Returns HTMLElement[]

    • Parameters

      • pagenum: number

      Returns string

    • getValue from a field as returned by _queryAllFields (supporting both multilevel and plain fields)

      Parameters

      • field: FormControlDescription

      Returns string[] | Promise<unknown>

      promise

    • Parameters

      • conditionfield: string
      • Optionaloptions: { checkdisabled?: boolean; matchcase?: boolean }

      Returns null | string | string[]

    • Parameters

      • node: HTMLElement

      Returns boolean

    • Parameters

      • el: HTMLElement

      Returns boolean

    • Parameters

      • conditiontext: undefined | string

      Returns boolean

    • Parameters

      • condition: FormCondition

      Returns boolean

    • Parameters

      • Optionalrichvalues: RichValues

      Returns void

    • Returns void

    • Parameters

      • outdata: FormResultValue
      • fieldpromises: Promise<void>[]
      • fieldname: string
      • receivedvalue: unknown

      Returns void

    • Parameters

      • Optionaloptions: {
            onlysettable?: boolean;
            skiparraymembers?: boolean;
            skipfield?: HTMLElement;
            startnode?: HTMLElement;
        }

      Returns FormControlDescription[]

    • Parameters

      • contextnode: HTMLElement
      • messageid: string

      Returns void

    • Parameters

      • node: HTMLElement

      Returns boolean

      false on error

    • Returns void

    • Parameters

      • evt: null | SubmitEvent
      • extradata: unknown

      Returns Promise<void>

    • Returns void

    • Parameters

      • isinit: boolean

      Returns Promise<void>

    • Parameters

      • field: HTMLElement

      Returns void

    • Set or update the message for the specified field

      Parameters

      • field: HTMLElement

        node on which the validation triggered

      • type: "error" | "suggestion"

        type of the message ("error" or "suggestion") - a field or group can have both an "error" and "suggestion" visible

      • getError: (field: HTMLElement) => null | FormFrontendMessage

        function which returns a reference to the error node (or DocumentFragment) or a text

        .wh-form__field--error - Used to indicate this element has an error .wh-form__field--suggestion - Used to indicate this element has an suggestion .wh-form__error - The error message container .wh-form_suggestion - The suggestion message container

      Returns void

    • Parameters

      • field: HTMLElement

      Returns void

    • Returns void

    • Parameters

      • pagelist: HTMLElement[]
      • currentpage: number

      Returns void

    • Parameters

      • field: HTMLElement

      Returns Promise<boolean>

    • Set a value for multiple fields

      Parameters

      • data: RecursivePartial<DataShape>

        The data to set

      • ignoreUnknownFields: { ignoreUnknownFields?: boolean } = {}

        Do not throw if a field is not found in the form. This is the default

      Returns void

    • Override beforeSubmit to have a last chance to block/confirm actual form submission

      Parameters

      • extradata: unknown

      Returns boolean | Promise<boolean>

      true to continue submitting

    • Parameters

      • action: string

      Returns Promise<void>

    • Parameters

      • nodes: HTMLElement[]

      Returns Promise<void>

    • Returns null | HTMLElement

    • Get the current page number

      Returns number

      0-based index of page to jump to

    • Parameters

      • name: string

      Returns null | FormControlElement | ConstrainedRadioNodeList

    • Get a field handler by name

      Parameters

      • name: string
      • options: { allowMissing: true }

      Returns null | FormField

    • Get a field handler by name

      Parameters

      • name: string
      • Optionaloptions: { allowMissing?: boolean }

      Returns FormField

    • get the fieldgroup for an element

      Parameters

      • name: string

      Returns null | HTMLElement

    • Returns string[]

    • Parameters

      • field: HTMLElement

      Returns Promise<unknown>

    • Return the names of all form elements

      Returns string[]

    • Return a promise resolving to the submittable form value

      Returns Promise<FormResultValue>

    • Get language for this form

      Returns string

    • Parameters

      • name: string

      Returns {
          fieldline: null | HTMLElement;
          inputnode: Node & HTMLInputElement;
          value: string;
      }[]

    • get the selected option associated with a radio/checkbox group. returns an object that's either null or the first selected option

      Parameters

      • name: string

      Returns
          | null
          | {
              fieldline: null
              | HTMLElement;
              inputnode: Node & HTMLInputElement;
              value: string;
          }

    • gets the selected option associated with a radio/checkbox group as an array

      Parameters

      • name: string

      Returns {
          fieldline: null | HTMLElement;
          inputnode: Node & HTMLInputElement;
          value: string;
      }[]

    • Goto a specific page

      Parameters

      • page: number | HTMLElement

        0-based index of page or the HTML element of the page to jump to

      • __namedParameters: { __isSubmit?: boolean } = {}

      Returns Promise<void>

    • Returns Promise<void>

    • Returns void

    • Returns void

    • Position the specified element's group or the form itself into view, using .wh-anchor nodes to correct for fixed headers

      Parameters

      • Optionalscrollto: HTMLElement

        Element to position into view. If not set, the form it scrolled into view

      Returns void

    • Parameters

      • Optionalevent: FormAnalyticsSubEvents

      Returns void

    • Parameters

      • field: HTMLElement
      • error: string
      • Optionaloptions: Partial<FieldErrorOptions>

      Returns void

    • Parameters

      • fieldnode: HTMLElement
      • value: unknown

      Returns void

    • Parameters

      • Optionalextradata: unknown

      Returns Promise<{ result?: FormSubmitEmbeddedResult<{ [key: string]: unknown }> }>

    • Parameters

      • page: HTMLElement
      • Optionalrichvalues: RichValues

      Returns void

    • validate the form

      Parameters

      • Optionallimitset: LimitSet

        A single element, nodelist or array of elements to validate (or their children)

      • Optionaloptions: ValidationOptions

      Returns Promise<FormValidationResult>

      a promise that will fulfill when the form is validated

    • Parameters

      • extradata: unknown

      Returns Promise<void>

    • Parameters

      • field: HTMLElement

      Returns Promise<boolean>

    • Type Parameters

      • DataShape extends object = Record<string, unknown>

      Parameters

      • node: HTMLElement

      Returns null | LocalFormBase<DataShape>

    • Parameters

      • field: HTMLElement
      • error: string
      • Optionaloptions: Partial<FieldErrorOptions>

      Returns void

      Just import setFieldError from @mod-publisher/js/forms

    • Parameters

      • node: HTMLElement
      • checker: (node: HTMLElement) => string | Promise<string>

      Returns void

      Just import setupValidator from @mod-publisher/js/forms