Protected
servicesProtected
configProtected
loggerProvides an API for logging, sending entries to the loggerService.
Determines how the validation system sees the Value in terms of editing. When true, it was changed. When false, it was not. The setValue()/setInputValue()/setValues() functions are the only ones to change this flag. They all set it to true automatically except set it to false when the option.Reset is true. The ValueHost.validate() function may skip validation of an InputValueHost when IsChanged is false, depending on the options for validate. For example, calling validate immediately after loading up the form, you want to avoid showing Category=Require validators. Those should appear only if the user edits, or when the user attempts to submit.
Protected
instanceProvides conversion support against the original value using the DataTypeConverters and DataTypeIdentifiers through services.dataTypeConverterService.convert()
The value to be converted. Check its type and possibly its content.
The value can represent several other values, such as a Date represents date, time, etc. Use this when you need to distinguish between them. If null or '', evaluate the value itself, such as checking its class (using 'instanceof') or for properties of an interface that you are using. This is often the dataType property of the ValueHost.
The converted value. If the value is not convertable, return undefined.
Provides conversion support against the original value using the DataTypeConverters and DataTypeIdentifiers through services.dataTypeConverterService.convert(). Attempts to convert it all the way down to a number, string or boolean. Return null if the value represents null. Return undefined if the value was unconvertable.
The value to be converted. Check its type and possibly its content.
The value can represent several other values, such as a Date represents date, time, etc. Use this when you need to distinguish between them. If null or '', evaluate the value itself, such as checking its class (using 'instanceof') or for properties of an interface that you are using. This is often the dataType property of the ValueHost.
The converted value. If the value is not convertable, return undefined.
Returns the calculated value or undefined if it could not calculate.
Does nothing. This change also impacts setValueToUndefined()
Optional
options: SetValueOptionsProtected
canFor setValue functions to check for disabled before trying to change.
Consuming system calls this when it attempts to resolve the input field/element value but cannot. It identifies that the native value is undefined. Note this does not reset IsChanged to false without explicitly specifying options.Reset = true;
Optional
options: SetValueOptionsvalidate - Invoke validation after setting the value. Reset - Clears validation (except when validate=true) and sets IsChanged to false. ConversionErrorTokenValue - When setting the value to undefined, it means there was an error converting. Provide a string here that is a UI friendly error message. It will appear in the Category=Require validator within the {ConversionError} token.
Protected
additionalProtected
useA name of a data type used to lookup supporting services specific to the data type. See the LookupKey. Some examples: "String", "Number", "Date", "DateTime", "MonthYear"
Provides a localized name for the data type when it needs to be shown to the user. Since the ValueHostConfig.dataType is optional, this will end up returning the empty string, unless the native value has been assigned and the DataTypeIdentifierService can figure out its lookupKey.
Determines if the ValueHost is enabled for user interaction. It is enabled unless you explicilty set it to false using ValueHostConfig.initialEnabled : false, setup the EnablerCondition which determines when it is enabled, or the ValueHost's own setEnabled() function.
When disabled, the data values of the ValueHost do not get changed by setValue() and related functions. However, those functions offer the overrideDisabled option to force the change.
When disabled and the ValueHost have validators, all validation is disabled and its ValidationStatus reports ValidationState.Disabled.
Protected
getSets the enabled state of the ValueHost. When false, the ValueHost is disabled and setValue() and related functions will not change the value. However, they offer the overrideDisabled option to force the change. When disabled and the ValueHost has validators, all validation is disabled and its ValidationStatus reports ValidationState.Disabled.
This value is part of the ValueHost's InstanceState, not the Config, although the ValueHostConfig.initialEnabled is used when it is not set in the state.
Use to change anything in ValueHostInstanceState without impacting the immutability of the current instance. Your callback will be passed a cloned instance. Change any desired properties and return that instance. It will become the new immutable value of the InstanceState property. If changes were made, the OnValueHostInstanceStateChanged event is fire.
true when the state did change. false when it did not.
Adds a custom entry into the ValueHost's state or removes it when value = undefined.
when undefined, it removes the value from the state
Use to retrieve a value from the state that was stored with saveIntoInstanceState().
the stored value or undefined if nothing is stored.
Generated using TypeDoc v0.25.12
CalcValueHost is a specialized ValueHost whose value is calculated when its getValue method is called. You supply a function callback in its CalcValueHostConfig to set it up.
Calculations allow you to expand what is available to Conditions without having to create new rules. This class was inspired by this use case:
The user wants to compare two dates to determine if the number of days between them is greater to (or equal or less than) another value. With CalcValueHost, the user can use the GreaterThanCondition to compare two integers, one being the value returned by a CalcValueHost and the other is the number of days to compare.
CalcValueHost has nifty conversion functions built in, that can be used to prepare the values it needs, the same way the comparison conditions do. let totalDays = vh.convert(value, 'TotalDays'); // 'TotalDays' is a lookup key Internally CalcValueHost uses Jivs' DataTypeConverters and DataTypeIdentifiers to convert the original value into the value demanded by its own dataType property.
Here is pseudo code for configuring the CalcValueHost used in this example.
Your function can also save stateful information with the valueHost.saveIntoInstanceState.