Value_Formats.md 2.4 KB

Value Formats

Every input needs validation, below is the required formatting of each value.

  • User
    • Username
      • Description: Any letter from a-z in any case, numbers, underscores and dashes. Must contain at least 1 letter or number.
      • Length: From 2 to 32 characters.
      • Regex: /^[A-Za-z0-9_]+$/
    • Name
      • Description: Any letter from any language in any case, numbers, underscores, dashes, periods, apostrophes and spaces. Must contain at least 1 letter or number.
      • Length: From 2 to 64 characters.
      • Regex: /^[\p{L}0-9 .'_-]+$/u
    • Email
      • Description: Standard email address.
      • Length: From 3 to 254 characters.
      • Regex: /^[\x00-\x7F]+@[a-z0-9]+\.[a-z0-9]+(\.[a-z0-9]+)?$/
    • Password
      • Description: Must include at least one lowercase letter, one uppercase letter, one number and one special character.
      • Length: From 6 to 200 characters.
      • Regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~])[A-Za-z\d!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~]/
    • Ban Reason
      • Description: Any ASCII character.
      • Length: From 1 to 64 characters.
      • Regex: /^[\x00-\x7F]+$/
  • Station
    • Name
      • Description: Any letter from a-z lowercase, numbers and underscores.
      • Length: From 2 to 16 characters.
      • Regex: /^[a-z0-9_]+$/
    • Display Name
      • Description: Any ASCII character.
      • Length: From 2 to 32 characters.
      • Regex: /^[\x00-\x7F]+$/
    • Description
      • Description: Any character.
      • Length: From 2 to 200 characters.
  • Playlist
    • Display Name
      • Description: Any ASCII character.
      • Length: From 1 to 32 characters.
      • Regex: /^[\x00-\x7F]+$/
  • Song
    • Title
      • Description: Any ASCII character.
      • Length: From 1 to 32 characters.
      • Regex: /^[\x00-\x7F]+$/
    • Artists
      • Description: Any character and not NONE.
      • Length: From 1 to 64 characters.
      • Quantity: Min 1, max 10.
    • Genres
      • Description: Any ASCII character.
      • Length: From 1 to 32 characters.
      • Quantity: Min 1, max 16.
      • Regex: /^[\x00-\x7F]+$/
    • Thumbnail
      • Description: Valid url. If site is secure only https prepended urls are valid.
      • Length: From 1 to 256 characters.