UNPKG

ui-framework-jps

Version:

A simple UI framework for state management and UI components

48 lines (47 loc) 3.74 kB
import { FieldListener } from "../field/FieldListener"; import { ValueOption } from "../../model/CommonTypes"; import { FieldUIConfig } from "../../CommonTypes"; import { ValidatableView } from "../validation/ValidatableView"; import { Form } from "../form/Form"; import { ItemViewListener } from "../view/item/ItemViewListener"; import { ItemViewUIDefinition } from "../view/item/ItemViewUITypeDefs"; export declare type FieldFactoryParameters = { form: Form; formConfig: ItemViewUIDefinition; itemListeners: ItemViewListener[]; containerEl: HTMLElement; fieldConfig: FieldUIConfig; listeners: FieldListener[]; }; export declare class FieldInputElementFactory { private static _instance; private constructor(); static getInstance(): FieldInputElementFactory; static getElementIdForFieldId(view: ValidatableView, fieldId: string): string; static initialiseFieldElementAndEventHandlers(fieldElement: HTMLElement, formId: string, fieldConfig: FieldUIConfig, listeners: FieldListener[], subElements?: HTMLInputElement[] | null): void; static createFieldComponentsAndContainer(fieldElement: HTMLElement, formId: string, containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[], form?: Form, formConfig?: ItemViewUIDefinition, itemListeners?: ItemViewListener[]): void; static createSubElements(formId: string, parentEl: HTMLElement, fieldConfig: FieldUIConfig, valueOptions: ValueOption[]): HTMLElement[]; createInputFormFieldComponentElement(formId: string, containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[], form?: Form, formConfig?: ItemViewUIDefinition, itemListeners?: ItemViewListener[]): HTMLInputElement; createTAFormFieldComponentElement(formId: string, containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[], form?: Form, formConfig?: ItemViewUIDefinition, itemListeners?: ItemViewListener[]): HTMLTextAreaElement; createSelectFormFieldComponentElement(formId: string, containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[], form?: Form, formConfig?: ItemViewUIDefinition, itemListeners?: ItemViewListener[]): HTMLSelectElement; createRadioGroupFormFieldComponentElement(formId: string, containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[], form?: Form, formConfig?: ItemViewUIDefinition, itemListeners?: ItemViewListener[]): { container: HTMLElement; radioButtons: HTMLInputElement[]; }; createCompositeFormFieldComponentElement(form: Form, formConfig: ItemViewUIDefinition, itemListeners: ItemViewListener[], containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[]): { displayElement: HTMLInputElement; actionButtons: HTMLButtonElement[]; }; createCompositeArrayFormFieldComponentElement(form: Form, formConfig: ItemViewUIDefinition, itemListeners: ItemViewListener[], containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[]): { displayElement: HTMLUListElement; actionButtons: HTMLButtonElement[]; }; createLinkedFormFieldComponentElement(form: Form, formConfig: ItemViewUIDefinition, itemListeners: ItemViewListener[], containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[]): { displayElement: HTMLInputElement; actionButtons: HTMLButtonElement[]; }; createLinkedArrayFormFieldComponentElement(form: Form, formConfig: ItemViewUIDefinition, itemListeners: ItemViewListener[], containerEl: HTMLElement, fieldConfig: FieldUIConfig, listeners: FieldListener[]): { displayElement: HTMLUListElement; actionButtons: HTMLButtonElement[]; }; }