Documentation
    Preparing search index...

    Class StringProperty

    A property type strictly validating and handling strings. It ensures that length constraints and specific character rules are respected before saving.

    const username = new StringProperty({
    name: 'username',
    minLength: 3,
    maxLength: 15,
    allowSpaces: false
    });

    username.set('my user'); // Throws Error: Spaces are not allowed
    username.set('my_user'); // OK
    console.log(username.get(StringProperty.TRANSFORM_UCASE)); // "MY_USER"

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _allows: string[] = []
    _defaultValue: any
    _events: { [key: string]: Function } = {}
    _fullSearch: boolean = false
    _hasChanged: boolean
    _htmlType: PropertyHTMLType = 'off'
    _id: string
    _mandatory: boolean = false
    _maxLength: number = 0
    _minLength: number = 0
    _name: string
    _parent: DataObjectClass<any> | undefined
    _protected: boolean = false
    _rawValue: boolean = true

    Set to false to bypass some rules

    _value: string | undefined
    ALLOW_DIGITS: string = 'digits'

    Permission flag to allow numeric digits.

    ALLOW_LETTERS: string = 'letters'

    Permission flag to allow alphabetic letters.

    ALLOW_NUMBERS: string = 'numbers'

    Permission flag to allow number values.

    ALLOW_SPACES: string = 'spaces'

    Permission flag to allow whitespace characters.

    ALLOW_STRINGS: string = 'strings'

    Permission flag to allow string values.

    EVENT_ONCHANGE: string = 'onChange'

    Event name triggered when the property value changes.

    EVENT_ONDELETE: string = 'onDelete'

    Event name triggered when the property is deleted.

    TRANSFORM_LCASE: string = 'lower'

    Transformation identifier to convert string to lowercase.

    TRANSFORM_UCASE: string = 'upper'

    Transformation identifier to convert string to uppercase.

    TYPE: string = 'string'

    The string literal type identifier for this property.

    Accessors

    • get allows(): string[]

      Returns string[]

    • get fullSearch(): boolean

      Returns boolean

    • set fullSearch(mode: boolean): void

      Parameters

      • mode: boolean

      Returns void

    • get hasChanged(): boolean

      Returns boolean

    • set hasChanged(val: boolean): void

      Parameters

      • val: boolean

      Returns void

    • get htmlType(): PropertyHTMLType

      Returns PropertyHTMLType

    • set htmlType(type: PropertyHTMLType): void

      Parameters

      Returns void

    • get mandatory(): boolean

      Returns boolean

    • get maxLength(): number

      Returns number

    • set maxLength(max: number): void

      Parameters

      • max: number

      Returns void

    • get minLength(): number

      Returns number

    • set minLength(min: number): void

      Parameters

      • min: number

      Returns void

    • get name(): string

      Returns string

    • get protected(): boolean

      Returns boolean

    Methods

    • Parameters

      • value: boolean | undefined

      Returns value is true | undefined

    • Creates a deep clone of the current property instance, preserving its prototype chain.

      Returns any

      A new independent instance of the property.

    • Retrieves the string value, optionally applying a casing transformation.

      Parameters

      • transform: string | undefined = undefined

        Use TRANSFORM_LCASE or TRANSFORM_UCASE to mutate output case.

      Returns string | undefined

      The raw or transformed string, or undefined.

    • Assigns a new string value while strictly enforcing length and character constraints.

      Parameters

      • value: any

        The string to assign.

      • setChanged: boolean = true

        Whether to mark the property as modified.

      Returns StringProperty

      The property instance for chaining.

      If the string contains forbidden characters (spaces, letters, digits) or violates length limits.

    • Serializes the property for JSON stringification.

      Returns any

      The raw internal value of the property.

    • Retrieves the current value of the property, or its default value if currently undefined.

      Parameters

      • transform: any = undefined

        An optional transformation function applied to the value before returning it.

      Returns any

      The raw or transformed property value.