A builder for preparing ValidationManagerConfig.

interface IValidationManagerConfigBuilder<T> {
    onInputValueChanged?: null | InputValueChangedHandler;
    savedInstanceState?: null | ValueHostsManagerInstanceState;
    savedValueHostInstanceStates: null | ValueHostInstanceState[];
    onValueHostValidationStateChanged?: null | ValueHostValidationStateChangedHandler;
    onValidationStateChanged?: null | ValidationStateChangedHandler;
    notifyValidationStateChangedDelay?: number;
    onValueHostInstanceStateChanged?: null | ValueHostInstanceStateChangedHandler;
    onValueChanged?: null | ValueChangedHandler;
    onInstanceStateChanged?: null | ValueHostsManagerInstanceStateChangedHandler;
    onConfigChanged?: null | ValueHostsManagerConfigChangedHandler;
    dispose(): void;
    complete(): T;
    startUILayerConfig(options?): void;
    static(valueHostName, dataType?, parameters?): ManagerConfigBuilderBase<T>;
    static(valueHostName, parameters): ManagerConfigBuilderBase<T>;
    static(config): ManagerConfigBuilderBase<T>;
    static(arg1, arg2?, parameters?): ManagerConfigBuilderBase<T>;
    calc(valueHostName, dataType, calcFn): ManagerConfigBuilderBase<T>;
    calc(config): ManagerConfigBuilderBase<T>;
    calc(arg1, dataType?, calcFn?): ManagerConfigBuilderBase<T>;
    input(valueHostName, dataType?, parameters?): FluentValidatorBuilder;
    input(valueHostName, parameters): FluentValidatorBuilder;
    input(config): FluentValidatorBuilder;
    input(arg1, arg2?, parameters?): FluentValidatorBuilder;
    property(valueHostName, dataType?, parameters?): FluentValidatorBuilder;
    property(valueHostName, parameters): FluentValidatorBuilder;
    property(config): FluentValidatorBuilder;
    property(arg1, arg2?, parameters?): FluentValidatorBuilder;
}

Type Parameters

Hierarchy (view full)

Implemented by

Properties

onInputValueChanged?: null | InputValueChangedHandler

Called when the InputValueHost's InputValue property has changed. If setup, you can prevent it from being fired with the options parameter of setValue() to avoid round trips where you already know the details. You can setup the same callback on individual InputValueHosts. Here, it aggregates all InputValueHost notifications.

savedInstanceState?: null | ValueHostsManagerInstanceState

The InstanceState for the ValueHostsManager itself. Its up to you to retain stateful information so that the service works statelessly. It will supply you with the changes to states through the OnInstanceStateChanged property. Whatever it gives you, you supply here to rehydrate the ValueHostsManager with the correct state. If you don't have any state, leave this null or undefined and ValueHostsManager will initialize its state.

savedValueHostInstanceStates: null | ValueHostInstanceState[]

The state for each ValueHost. The array may not have the same states for all the ValueHostConfigs you are supplying. It will create defaults for those missing and discard those no longer in use.

Its up to you to retain stateful information so that the service works statelessly. It will supply you with the changes to states through the OnValueHostInstanceStateChanged property. Whatever it gives you, you supply here to rehydrate the ValueHostsManager with the correct state. You can also supply the state of an individual ValueHost when using the addValueHost or addOrUpdateValueHost methods. If you don't have any state, leave this null or undefined and ValueHostsManager will initialize its state.

onValueHostValidationStateChanged?: null | ValueHostValidationStateChangedHandler

Called when the state of validation has changed on a ValidatableValueHost. That includes validate(), clearValidation(), setBusinessLogicErrors(), clearBusinessLogicErrors() and a few edge cases. Supplies the current ValidationState to the callback. Examples: Use to notify the validation related aspects of the component to refresh, such as showing error messages and changing style sheets. Use to change the disabled state of the submit button based on validity. See also onValidationStateChanged for a similar callback from the ValidationManager.

onValidationStateChanged?: null | ValidationStateChangedHandler

Called when the state of validation has changed on a ValidatableValueHost. That includes validate(), clearValidation(), setBusinessLogicErrors(), clearBusinessLogicErrors() and a few edge cases. Supplies the current ValidationState to the callback. Examples: Use to notify the Validation Summary widget(s) to refresh. Use to change the disabled state of the submit button based on validity. See also onValueHostValidationStateChanged for a similar callback from individual ValueHosts.

notifyValidationStateChangedDelay?: number

Provides a debounce delay for onValidationStateChanged notifications. The delay is in milliseconds.

onValidationStateChanged runs after each valueHost.validate() call, even though onValueHostValidationStateChanged also runs. Some features need to know about the general change to the validation state, not just on the individual field. So they expect onValidationStateChanged to run after valueHost.validate() runs. A call by ValidationManager.validate() will validate a list of valueHosts, and all of them will try to invoke onValidationStateChanged. That's too many in a short period. This debounces them so ValidationManager.validated() generally has one call.

Leave undefined to use the default of defaultNotifyValidationStateChangedDelay. Set to 0 to disable the debounce.

onValueHostInstanceStateChanged?: null | ValueHostInstanceStateChangedHandler

Called when any ValueHost had its ValueHostInstanceState changed. React example: React component useState feature retains this value and needs to know when to call the setValueHostInstanceState() with the stateToRetain. You can setup the same callback on individual ValueHosts. Here, it aggregates all ValueHost notifications.

onValueChanged?: null | ValueChangedHandler

Called when the ValueHost's Value property has changed. If setup, you can prevent it from being fired with the options parameter of setValue() to avoid round trips where you already know the details. You can setup the same callback on individual ValueHosts. Here, it aggregates all ValueHost notifications.

onInstanceStateChanged?: null | ValueHostsManagerInstanceStateChangedHandler

Called when the ValueHostsManager's InstanceState has changed. React example: React component useState feature retains this value and needs to know when to call the setState function with the stateToRetain

onConfigChanged?: null | ValueHostsManagerConfigChangedHandler

Use this when caching the configuration for a later creation of ValueHostsManager.

Called when the configuration of ValueHosts has been changed, usually through the ValueHostsManagerConfigModifier.apply, or these members of ValueHostsManager: addValueHost, addOrUpdateValueHost, addOrMergeValueHost, discardValueHost. The supplied object is a clone so modifications will not impact the ValueHostsManager.

Note that where a ValueHostConfig has a property that references a function, you will have to retain that reference in some way to reuse it. In particular, ValidatorConfig.conditionCreator.

Methods

  • When working with both business layer and UI layer configurations, call before starting the UI layer configuration. It will prepare for merging overlapping configurations and optionally change some of the configuration already prepared by the business layer.

    Parameters

    Returns void

Generated using TypeDoc v0.25.12