UNPKG

@try-at-software/input-elements

Version:

A package providing different input elements that are extensible and easily configurable for your custom needs.

48 lines (47 loc) 2.03 kB
/// <reference types="react" /> import { ExtendedInputElement } from '../ExtendedInputElement'; import { UpdateCallback } from '../IInputElement'; import { ValidationRule } from '../IValueInputElement'; import { IDynamicListInputElement, IDynamicValueChange, InternalDynamicInput } from './IDynamicListInputElement'; import { IDynamicListInputElementConfiguration } from './IDynamicListInputElementConfiguration'; import { DynamicListInputElementWrapper } from './InternalPresentationComponents/DynamicListInputElementWrapper'; import { IDynamicListMenuOption } from './Menu'; export interface IInputInformation<TValue> { uniqueId: number; input: InternalDynamicInput<TValue>; } export declare class DynamicListInputElement<TValue> extends ExtendedInputElement<IDynamicValueChange<TValue>[], DynamicListInputElementWrapper<TValue>> implements IDynamicListInputElement<TValue> { private static counter; private readonly _configuration; private _inputs; constructor(config: IDynamicListInputElementConfiguration, inputOptions: IDynamicListMenuOption<TValue>[], update: UpdateCallback); /** * @inheritdoc * This property will be unused. */ validationRules: ValidationRule<TValue[]>[]; /** @inheritdoc */ validate(): void; /** @inheritdoc */ get hasChanges(): boolean; /** @inheritdoc */ inputOptions: IDynamicListMenuOption<TValue>[]; /** @inheritdoc */ get inputs(): InternalDynamicInput<TValue>[]; /** @inheritdoc */ get isValid(): boolean; /** @inheritdoc */ get value(): TValue[]; /** @inheritdoc */ protected renderComponent(): JSX.Element; private renderMenu; private renderFooterMenu; private onAddNewValue; private onDragEnd; private reorder; private convert; protected setInternalValue(valueChange: IDynamicValueChange<TValue>[], isInitial: boolean): void; /** @inheritdoc */ protected resetInternalValue(): void; private filterInputs; }