render() {
    const UserProfileForm = t.struct({
      displayName: ValidationUtils.Title,
      email: t.maybe(ValidationUtils.Email),
      phone: t.maybe(t.Num),
      gender: t.maybe(t.enums({NotSpecified: 'Not Specified', Male: 'Male', Female: 'Female'})),
      dateOfBirth: t.maybe(t.Date)
    })

    return (
      <View style={[
        FormStyles.formContainer,
        BaseStyles.col1
      ]}>
        <MediaTabbar
          ref="userPhotoModal"
          width={144}
          height={144}
          onMedia={this.onUpdateUserPhoto.bind(this)} />
        <OptionPopup
          ref="shareOptionsModal"
          options={this.getShareOptions()} />
        <VerifyUser
          ref="verifyUserModal"
          user={this.props.user}
          originalEmail={this.state.originalEmail}
          originalPhone={this.state.originalPhone}
          isPhoneVerified={this.state.isPhoneVerified}
          isEmailVerified={this.state.isEmailVerified} />
        <ScrollView
          contentContainerStyle={[
            FormStyles.editUserProfile,
            BaseStyles.lightBg
          ]}
          automaticallyAdjustContentInsets={false}>
            {this.getUserPhoto()}
            <Form
              ref="form"
              type={UserProfileForm}
              onChange={this.onChange.bind(this)}
              options={this.getOptions()}
              value={this.state.value} />
            {this.getUserPreferences()}
            {this.getAccountOptions()}
        </ScrollView>
        <View style={[
          FormStyles.saveBtn,
          BaseStyles.bottom,
          {bottom: this.state.saveBtnLocation}
        ]}>
          <SaveBtn
            isSaveBtnDisabled={this.state.isSaveBtnDisabled}
            isUpdating={this.props.isUpdating}
            hasBeenSaved={this.props.hasBeenSaved}
            saveTerm="Save"
            savingTerm="Saving..."
            savedTerm="Saved!"
            onPress={this.onSave.bind(this)} />
        </View>
      </View>
    )
  }
/**
   * Render edit profile component.
   *
   * @return
   */
Render edit profile component.
@return
Render edit profile component . @return
render() {
    const UserProfileForm = t.struct({
      displayName: ValidationUtils.Title,
      email: t.maybe(ValidationUtils.Email),
      phone: t.maybe(t.Num),
      gender: t.maybe(t.enums({NotSpecified: 'Not Specified', Male: 'Male', Female: 'Female'})),
      dateOfBirth: t.maybe(t.Date)
    })
    return (
      <View style={[
        FormStyles.formContainer,
        BaseStyles.col1
      ]}>
        <MediaTabbar
          ref="userPhotoModal"
          width={144}
          height={144}
          onMedia={this.onUpdateUserPhoto.bind(this)} />
        <OptionPopup
          ref="shareOptionsModal"
          options={this.getShareOptions()} />
        <VerifyUser
          ref="verifyUserModal"
          user={this.props.user}
          originalEmail={this.state.originalEmail}
          originalPhone={this.state.originalPhone}
          isPhoneVerified={this.state.isPhoneVerified}
          isEmailVerified={this.state.isEmailVerified} />
        <ScrollView
          contentContainerStyle={[
            FormStyles.editUserProfile,
            BaseStyles.lightBg
          ]}
          automaticallyAdjustContentInsets={false}>
            {this.getUserPhoto()}
            <Form
              ref="form"
              type={UserProfileForm}
              onChange={this.onChange.bind(this)}
              options={this.getOptions()}
              value={this.state.value} />
            {this.getUserPreferences()}
            {this.getAccountOptions()}
        </ScrollView>
        <View style={[
          FormStyles.saveBtn,
          BaseStyles.bottom,
          {bottom: this.state.saveBtnLocation}
        ]}>
          <SaveBtn
            isSaveBtnDisabled={this.state.isSaveBtnDisabled}
            isUpdating={this.props.isUpdating}
            hasBeenSaved={this.props.hasBeenSaved}
            saveTerm="Save"
            savingTerm="Saving..."
            savedTerm="Saved!"
            onPress={this.onSave.bind(this)} />
        </View>
      </View>
    )
  }
render ( ) { const UserProfileForm = t . struct ( { displayName : ValidationUtils . Title , email : t . maybe ( ValidationUtils . Email ) , phone : t . maybe ( t . Num ) , gender : t . maybe ( t . enums ( { NotSpecified : 'Not Specified' , Male : 'Male' , Female : 'Female' } ) ) , dateOfBirth : t . maybe ( t . Date ) } ) return ( < View style = { [ FormStyles . formContainer , BaseStyles . col1 ] } > < MediaTabbar ref = "userPhotoModal" width = { 144 } height = { 144 } onMedia = { this . onUpdateUserPhoto . bind ( this ) } / > < OptionPopup ref = "shareOptionsModal" options = { this . getShareOptions ( ) } / > < VerifyUser ref = "verifyUserModal" user = { this . props . user } originalEmail = { this . state . originalEmail } originalPhone = { this . state . originalPhone } isPhoneVerified = { this . state . isPhoneVerified } isEmailVerified = { this . state . isEmailVerified } / > < ScrollView contentContainerStyle = { [ FormStyles . editUserProfile , BaseStyles . lightBg ] } automaticallyAdjustContentInsets = { false } > { this . getUserPhoto ( ) } < Form ref = "form" type = { UserProfileForm } onChange = { this . onChange . bind ( this ) } options = { this . getOptions ( ) } value = { this . state . value } / > { this . getUserPreferences ( ) } { this . getAccountOptions ( ) } < / ScrollView > < View style = { [ FormStyles . saveBtn , BaseStyles . bottom , { bottom : this . state . saveBtnLocation } ] } > < SaveBtn isSaveBtnDisabled = { this . state . isSaveBtnDisabled } isUpdating = { this . props . isUpdating } hasBeenSaved = { this . props . hasBeenSaved } saveTerm = "Save" savingTerm = "Saving..." savedTerm = "Saved!" onPress = { this . onSave . bind ( this ) } / > < / View > < / View > ) }
Render edit profile component.
Render edit profile component .