idea-toolbox
    Preparing search index...

    Class EmailChangeRequest

    Helper structure to create a confirmation flow before to change the email address used for login.

    Table: idea_emailChangeRequests.

    Hierarchy (View Summary)

    Index

    Constructors

    • Object initialization, setting all the default values.

      Parameters

      • OptionalnewData: any

        the data to load, optional

      • Optionaloptions: any

        custom options to apply; they will depend on the child resource

        Usually, there is no need to implement the constructor; implicitly, it will call the load of the child resource and therefore loading all the resources with default values. If needed, this is the suggested implementation:

        super();
        this.load(x);
        // ...

      Returns EmailChangeRequest

    Properties

    confirmationCode: string

    The code that the user has to send to confirm the new email address.

    expiresAt: number

    Expiration time, in seconds.

    newEmail: string

    The new email address that the user wants to set.

    oldEmail: string

    The old email, to change.

    Methods

    • Return an attribute in a cleaned standard that force-cast the element.

      Parameters

      • origin: any

        the origin attribute, to cast

      • castFunction: (x: any) => any

        the cast function, e.g. Boolean, Number, String, x => new CustomClass(x), etc.

      • OptionaldefaultVal: any

        if set, the fallback value instead of null

      Returns any

      cleaned attribute

    • Return an array in a cleaned standard that force-cast each element, keeping only the valid ones.

      Parameters

      • origin: any[]

        the origin array, to cast and check

      • castFunction: (x: any) => any

        the cast function, e.g. x => String(x) or x => new CustomClass(x)

      • OptionaldefaultVal: any

        if set, the fallback value instead of null

      Returns any[]

      cleaned array

    • Load the attributes from an already existing resource and then force some attributes to assume safeData values. The function is usually used in the back-end to mix together db data with new data, without the risk of changing ids and other attributes which are managed in appositely curated scenario.

      Parameters

      • newData: any

        the data to load

      • safeData: any

        the attributes to force to specific values

      • Optionaloptions: any

        custom options to apply; they will depend on the child resource

        Typical implementation:

        super.safeLoad(newData, safeData);
        this.keyAttr = safeData.keyAttr;
        this.importantAttr = safeData.importantAttr;
        this.isDraft = safeData.isDraft;
        // ...

        Note well: there is no need to call this.load(), since it's implicitly called from super.safeLoad(), which will anyway use the child version of the method.

      Returns void

    • Valide the object's attributes, performing all the checkings.

      Parameters

      • Optionaloptions: any

        custom options to apply; they will depend on the implementations

      Returns string[]

      errors if empty, the checkings are successfully passed.

      Typical implementation:

      const e = super.validate();
      if(this.iE(this.attr)) e.push(`attr`);
      // ...
      return e;