@lion/form-core
Version:
Form-core contains all essential building blocks for creating form fields and fieldsets
32 lines (29 loc) • 1.26 kB
TypeScript
/**
* A modelValue can demand a certain type (Date, Number, Iban etc.). A correct type will always be
* translatable into a String representation (the value presented to the end user) via the
* `formatter`. When the type is not valid (usually as a consequence of a user typing in an invalid
* or incomplete viewValue), the current truth is captured in the `Unparseable` type.
* For example: a viewValue can't be parsed (for instance 'foo' when the type should be Number).
* The model(value) concept as implemented in lion-web is conceptually comparable to those found in
* popular systems like Angular and Vue.
* The Unparseable type is an addition on top of this that mainly is added for the following two
* purposes:
* - restoring user sessions
* - realtime updated with all value changes
*/
export class Unparseable {
/** @param {string} value */
constructor(value: string);
/**
* Meta info for restoring serialized Unparseable values
* @type {'unparseable'}
*/
type: 'unparseable';
/**
* Stores current view value. For instance, value '09-' is an unparseable Date.
* This info can be used to restore previous form states.
* @type {string}
*/
viewValue: string;
toString(): string;
}