Source: app/util/proptypes/apiEntities/account.js

import PropTypes from 'prop-types';

/** @module */

/**
 * Reusable object to use in `propTypes` for a `account` prop.
 * @type {Object}
 * @category templating
 */
const accountShape = {
  id: PropTypes.string.isRequired,
  email: PropTypes.string.isRequired,
  emailConfirmed: PropTypes.bool,
  userName: PropTypes.string.isRequired,
  firstName: PropTypes.string.isRequired,
  lastName: PropTypes.string.isRequired,
  gender: PropTypes.number.isRequired,
  avatar: PropTypes.string.isRequired,
  termsOfServiceVersion: PropTypes.string,
  receiveSupportEmails: PropTypes.bool,
  receiveEmailNotifications: PropTypes.bool,
  addressLine1: PropTypes.string.isRequired,
  addressLine2: PropTypes.string,
  addressLine3: PropTypes.string,
  city: PropTypes.string.isRequired,
  state: PropTypes.string.isRequired,
  zip: PropTypes.string.isRequired,
  createdDateUTC: PropTypes.string.isRequired,
  lastPasswordChangedDateUTC: PropTypes.string,
  lastLoginDateUTC: PropTypes.string,
  lastAccessTokenRetrievalDateUTC: PropTypes.string,
  phoneNumber: PropTypes.string,
  phoneNumberConfirmed: PropTypes.bool,
  roles: PropTypes.arrayOf(PropTypes.string),
  isProfileCompleted: PropTypes.number,
  weightUnit: PropTypes.number,
  heightUnit: PropTypes.number,
  status: PropTypes.number,
  timeZoneId: PropTypes.string,
};

export default accountShape;