@plusscommunities/pluss-maintenance-app 8.0.13 → 8.0.15-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -671,7 +671,8 @@ class MaintenanceRequest extends Component {
671
671
  title,
672
672
  roomNumber,
673
673
  isHome,
674
- customFieldImages
674
+ customFieldImages,
675
+ times
675
676
  } = this.state;
676
677
  const hasCustomFields = customFields && customFields.length > 0;
677
678
  function showFormErrorAlert() {}
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","Text","Dimensions","Platform","KeyboardAvoidingView","ScrollView","TouchableOpacity","View","Switch","FlatList","ImageBackground","Keyboard","Alert","DateTimePicker","Icon","_","moment","connect","jobAdded","maintenanceActions","userActions","Services","Components","Colours","Helper","Config","values","PHOTO_SIZE","get","width","MaintenanceRequest","constructor","props","_defineProperty","_this$props$permissio","hasUserManagement","permissions","includes","setState","canCreateOnBehalf","loadSiteUsers","setDefaultUser","response","getSiteUsers","site","items","data","Items","optionOnlyForResidents","filter","u","category","users","sortBy","displayName","toLowerCase","error","console","log","userType","defaultUser","userId","uid","profilePic","selectedUser","userName","roomNumber","unit","phone","isEmpty","phoneNumber","update","state","customFields","some","title","length","navigation","navigate","screenUserPicker","currentUser","onSelectUser","bind","user","Id","fetchUser","userDetails","fieldId","answer","cloneDeep","field","isTitle","undefined","xor","join","dismiss","dateFieldId","popUpType","type","isDateTimePickerVisible","date","dateObj","format","uploadUri","imageUri","imageFieldId","imagesUpdate","getImages","splice","uploading","uploadProgress","allowRetry","setImages","progress","map","img","uri","percentage","url","replace","thumbNailExists","thumbNailUrl","getThumb300","waitForThumbnails","get1400","documentUri","documentName","documentExt","documentFieldId","documentsUpdate","getDocuments","setDocuments","doc","mandatory","checkMandatory","isBoolean","imagesList","getImageUrls","documentsList","getDocumentAnswers","isArray","isNil","checkFormat","isEmail","isValid","valid","uploadingImage","submitting","imageUploader","showUploadMenu","description","isHome","times","setTimeout","scrollContainer","scrollTo","y","images","updatedCustomFields","userID","sendMaintenanceRequest","getSite","then","res","success","refreshRequest","searchResult","onSubmissionSuccess","confirmationToShow","catch","err","id","job","getJob","every","index","isFieldValid","customFieldImages","Array","add","callback","checkThumb","setInterval","Promise","all","image","resolve","newImage","push","imageExists","thumbnailsExist","clearInterval","customFieldDocuments","name","ext","showFullscreenVideo","currentVideoUrl","fail","showError","loadingTypes","forceCustomFields","types","keyboardTypes","email","text","componentDidMount","checkUserPermissions","getJobTypes","componentWillUnmount","onPressBack","goBack","onPressType","screenJobTypePicker","currentType","onSelectType","pickType","onCloseConfirmationPopup","onBack","onConfirmationReset","getDefaultJob","selected","find","t","typeName","hasCustomFields","noType","jobId","defaultType","submitRequest","showFormErrorAlert","connected","message","alert","validateCustomFields","submit","renderImageUploader","createElement","ImageUploader","ref","onUploadStarted","onUploadStartedImage","onUploadSuccess","onUploadSuccessImage","onUploadFailed","onUploadFailedImage","onUploadProgress","onUploadProgressImage","onLibrarySelected","onLibrarySelectedImage","size","quality","fileName","popupTitle","allowsEditing","multiple","hideLibrary","renderImage","item","isVideoUrl","isVideo","activeOpacity","onPress","style","styles","imageContainer","imageContainerNotEmpty","marginLeft","marginTop","imageCircle","iconStyle","addImageIcon","ImageUploadProgress","uploader","color","colourBrandingMain","imageBackground","source","getImageSource","imagePlayContainer","toggleFullscreenVideo","imageControlIcon","removeImage","renderDocument","key","documentContainer","documentTypeContainer","backgroundColor","documentTypeText","documentText","removeDocumentButton","removeDocument","removeDocumentIcon","renderSuccess","padding","flex","requestSuccess","renderImageList","imageListContainer","imageListContainerEmpty","keyboardShouldPersistTaps","enableEmptySections","renderItem","keyExtractor","numColumns","renderDocumentList","documentListContainer","document","DocumentUploader","buttonTitle","allowedTypes","onUploadStartedDocument","onUploadProgressDocument","onUploadSuccessDocument","onUploadFailedDocument","disabled","renderDateField","sectionStyle","displayText","placeHolder","icon","errorText","GenericInputSection","label","required","dateContainer","dateFieldButton","onOpenDatePicker","dateFieldContainer","dateText","dateIcon","dateClearButton","onClearDate","removeIcon","renderField","marginBottom","inputType","value","onChange","onChangeToggleAnswer","options","o","Label","Value","i","isActive","onChangeCheckboxAnswer","multiChoiceOption","hitSlop","top","left","bottom","right","TickIcon","tick","unticked","multiChoiceText","placeholder","onChangeText","val","onChangeAnswer","editable","squaredCorners","autoCapitalize","keyboardType","staticTitle","staticText","toParagraphed","renderCustomFields","FormCard","renderForm","_this$state$selectedU","_this$state$selectedU2","_this$state$selectedU3","Spinner","paddingBottom","LoadingIndicator","visible","FormCardSection","textValue","hasContent","hasUnderline","borderBottomWidth","borderBottomColor","LINEGREY","onPressUser","userPickerContainer","profileContainer","ProfilePic","Diameter","nameText","sectionTitle","fontSize","onChangeName","paddingHorizontal","paddingVertical","flexDirection","justifyContent","textJobType","marginRight","Fragment","autoCorrect","multiline","autoGrow","alignItems","position","env","strings","MAINTENANCE_HOME","onValueChange","trackColor","false","true","thumbColor","OS","minHeight","renderRegisterConfirmation","ConfirmationPopup","confirmText","textEntityName","repeatText","onClose","onPressAction","renderVideoPlayerPopup","VideoPopup","showFullscreenButton","renderNoType","WarningPopup","infoText","padHorizontal","render","behavior","viewContainer","container","Header","leftIcon","onPressLeft","featureKey","textFeatureTitle","rightText","onPressRight","absoluteRight","isVisible","onConfirm","onDateSelected","onCancel","mode","headerTextIOS","Date","fontFamily","COLOUR_TANGERINE","TEXT_DARK","textAlign","BOXGREY","height","borderStyle","borderWidth","borderColor","borderRadius","PINKISH_GREY","textShadowColor","textShadowOffset","TEXT_DARKEST","lineHeight","TEXT_BLUEGREY","paddingLeft","mapStateToProps","_state$strings","connection","getMainBrandingColourFromState","config","getSiteSettingFromState"],"sources":["ServiceRequest.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tPlatform,\n\tKeyboardAvoidingView,\n\tScrollView,\n\tTouchableOpacity,\n\tView,\n\tSwitch,\n\tFlatList,\n\tImageBackground,\n\tKeyboard,\n\tAlert,\n} from \"react-native\";\nimport DateTimePicker from \"react-native-modal-datetime-picker\";\nimport { Icon } from \"@rneui/themed\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { jobAdded } from \"../actions\";\nimport { maintenanceActions, userActions } from \"../apis\";\nimport { Services } from \"../feature.config\";\nimport { Components, Colours, Helper, Config } from \"../core.config\";\nimport { values } from \"../values.config\";\n\nconst PHOTO_SIZE = (Dimensions.get(\"window\").width - 64) / 3;\n\nclass MaintenanceRequest extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tsubmitting: false,\n\t\t\tsuccess: false,\n\t\t\tfail: false,\n\t\t\terror: null,\n\t\t\tshowError: false,\n\t\t\tloadingTypes: values.forceCustomFields,\n\n\t\t\tuserName: \"\",\n\t\t\troomNumber: \"\",\n\t\t\tphone: \"\",\n\t\t\ttitle: \"\",\n\t\t\tdescription: \"\",\n\t\t\ttimes: \"\",\n\n\t\t\ttype: \"General\",\n\n\t\t\tuploadingImage: false,\n\t\t\timages: [\n\t\t\t\t{\n\t\t\t\t\tadd: true,\n\t\t\t\t},\n\t\t\t],\n\t\t\tshowFullscreenVideo: false,\n\t\t\tcurrentVideoUrl: \"\",\n\n\t\t\tisHome: false,\n\n\t\t\ttypes: [],\n\n\t\t\tconfirmationToShow: false,\n\n\t\t\tcustomFields: [],\n\t\t\tcustomFieldImages: {},\n\t\t\tcustomFieldDocuments: {},\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tpopUpType: \"date\",\n\t\t\tdateFieldId: null,\n\t\t\timageFieldId: null,\n\n\t\t\t// PC-1255: On-behalf request fields\n\t\t\tcanCreateOnBehalf: false,\n\t\t\tselectedUser: null,\n\t\t\tusers: [],\n\t\t};\n\t\tthis.checkThumb = null;\n\t\tthis.keyboardTypes = {\n\t\t\tphone: \"phone-pad\",\n\t\t\temail: \"email-address\",\n\t\t\ttext: \"default\",\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.checkUserPermissions();\n\t\tthis.getJobTypes();\n\t}\n\n\tcheckUserPermissions = async () => {\n\t\t// PC-1255: Check if user has userManagement permission\n\t\tconst hasUserManagement =\n\t\t\tthis.props.permissions?.includes(\"userManagement\") || false;\n\n\t\tif (hasUserManagement) {\n\t\t\tthis.setState({ canCreateOnBehalf: true });\n\t\t\t// Load site users for picker\n\t\t\tawait this.loadSiteUsers();\n\t\t} else {\n\t\t\t// Default to logged-in user for non-staff or staff without permission\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tloadSiteUsers = async () => {\n\t\ttry {\n\t\t\tconst response = await userActions.getSiteUsers(this.props.site);\n\n\t\t\tlet items = response.data.Items || [];\n\t\t\tif (this.props.optionOnlyForResidents) {\n\t\t\t\titems = _.filter(items, (u) => u.category === \"resident\");\n\t\t\t}\n\t\t\tconst users = _.sortBy(response.data.Items || [], (u) =>\n\t\t\t\t(u.displayName || \"\").toLowerCase(),\n\t\t\t);\n\t\t\tthis.setState({ users });\n\t\t} catch (error) {\n\t\t\tconsole.log(\"Error loading site users:\", error);\n\t\t\t// Fall back to default user if loading fails\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tsetDefaultUser = () => {\n\t\tif (this.props.userType !== \"KIOSK\") {\n\t\t\tconst defaultUser = {\n\t\t\t\tuserId: this.props.uid,\n\t\t\t\tdisplayName: this.props.displayName,\n\t\t\t\tprofilePic: this.props.profilePic,\n\t\t\t};\n\t\t\tthis.setState({\n\t\t\t\tselectedUser: defaultUser,\n\t\t\t\tuserName: this.props.displayName,\n\t\t\t\troomNumber: this.props.unit,\n\t\t\t\tphone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : \"\",\n\t\t\t});\n\t\t}\n\t};\n\n\tcomponentWillUnmount() {\n\t\tclearInterval(this.checkThumb);\n\t}\n\n\tonChangeName = (userName) => {\n\t\tconst update = { userName };\n\t\tif (\n\t\t\t!this.state.customFields ||\n\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = userName;\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\t// PC-1255: Handle user picker navigation\n\tonPressUser = () => {\n\t\tconst { users, selectedUser } = this.state;\n\t\tif (!users || users.length === 0) return;\n\n\t\tServices.navigation.navigate(values.screenUserPicker, {\n\t\t\tcurrentUser: selectedUser,\n\t\t\tusers,\n\t\t\tonSelectUser: this.onSelectUser.bind(this),\n\t\t});\n\t};\n\n\t// PC-1255: Handle user selection and auto-populate contact details\n\tonSelectUser = async (user) => {\n\t\tconst update = {\n\t\t\tselectedUser: user,\n\t\t\tuserName: user.displayName,\n\t\t};\n\n\t\t// PC-1255: Try to fetch full user details for auto-population\n\t\ttry {\n\t\t\t// getSiteUsers returns 'Id', but fetchUser expects 'userId'\n\t\t\tconst userId = user.userId || user.Id;\n\t\t\tconst response = await userActions.fetchUser(this.props.site, userId);\n\t\t\tif (response.data && response.data.user) {\n\t\t\t\tconst userDetails = response.data.user;\n\t\t\t\tif (userDetails.phoneNumber) {\n\t\t\t\t\tupdate.phone = userDetails.phoneNumber;\n\t\t\t\t}\n\t\t\t\tif (userDetails.unit) {\n\t\t\t\t\tupdate.roomNumber = userDetails.unit;\n\t\t\t\t}\n\t\t\t\tif (\n\t\t\t\t\t!this.state.customFields ||\n\t\t\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t\t\t) {\n\t\t\t\t\tupdate.title = userDetails.displayName || null;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// Permission denied (403) or other error - continue without auto-population\n\t\t\t// User can still manually enter contact details\n\t\t\tconsole.log(\"Could not fetch user details for auto-population:\", error);\n\t\t} finally {\n\t\t\t// In any case, we still need a title. Inform the user to set one form field as a title.\n\t\t\tif (!this.state.title && !update.title) {\n\t\t\t\tupdate.title =\n\t\t\t\t\t\"[Missing title - Set one of the form field as title in the community manager]\";\n\t\t\t}\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonChangeAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeToggleAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = field.answer === answer ? undefined : answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeCheckboxAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = _.xor(field.answer || [], [answer]);\n\t\tif (field.isTitle) update.title = field.answer.join(\", \");\n\t\tthis.setState(update);\n\t};\n\n\tonOpenDatePicker = (field, fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tthis.setState({\n\t\t\tdateFieldId: fieldId,\n\t\t\tpopUpType: field.type,\n\t\t\tisDateTimePickerVisible: true,\n\t\t});\n\t};\n\n\tonClearDate = (fieldId) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = undefined;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonDateSelected = (date) => {\n\t\tconst { customFields, dateFieldId, popUpType } = this.state;\n\t\tconst update = {\n\t\t\tcustomFields: _.cloneDeep(customFields),\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tfieldId: null,\n\t\t};\n\t\tconst field = update.customFields[dateFieldId];\n\t\tconst dateObj = moment(date);\n\t\tif (popUpType === \"date\") {\n\t\t\tfield.answer = dateObj.format(\"YYYY-MM-DD\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"DD MMM YYYY\");\n\t\t} else {\n\t\t\tfield.answer = dateObj.format(\"HH:mm\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"h:mm a\");\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonUploadStartedImage = (uploadUri, imageUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\timageUri,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadProgressImage = (progress) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === progress.uri) {\n\t\t\t\timg.uploadProgress = progress.percentage;\n\t\t\t\timg.uploading = true;\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadSuccessImage = async (uri, uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri && img.uploading) {\n\t\t\t\timg.url = uri.replace(\"/general/\", \"/general1400/\");\n\t\t\t\timg.thumbNailExists = false;\n\t\t\t\timg.thumbNailUrl = Helper.getThumb300(img.url);\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId, () => this.waitForThumbnails());\n\t};\n\n\tonUploadFailedImage = (uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri) {\n\t\t\t\timg.uploading = true; // Requried for retry\n\t\t\t\timg.uploadProgress = \"\";\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonLibrarySelectedImage = (uri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: false,\n\t\t\tallowRetry: false,\n\t\t\turl: Helper.get1400(uri),\n\t\t\tthumbNailExists: true,\n\t\t\tthumbNailUrl: Helper.getThumb300(uri),\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadStartedDocument = (\n\t\tuploadUri,\n\t\tdocumentUri,\n\t\tdocumentName,\n\t\tdocumentExt,\n\t\tdocumentFieldId,\n\t) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.splice(documentsUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\tdocumentUri,\n\t\t\tdocumentName,\n\t\t\tdocumentExt,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadProgressDocument = (progress, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === progress.uri) {\n\t\t\t\tdoc.uploadProgress = progress.percentage;\n\t\t\t\tdoc.uploading = true;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadSuccessDocument = async (uri, uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri && doc.uploading) {\n\t\t\t\tdoc.uploading = false;\n\t\t\t\tdoc.uploadProgress = \"100%\";\n\t\t\t\tdoc.url = uri;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadFailedDocument = (uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri) {\n\t\t\t\tdoc.uploading = true; // Requried for retry\n\t\t\t\tdoc.uploadProgress = \"\";\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonPressBack() {\n\t\tServices.navigation.goBack();\n\t}\n\n\tonPressType() {\n\t\tServices.navigation.navigate(values.screenJobTypePicker, {\n\t\t\tcurrentType: this.state.type,\n\t\t\ttypes: this.state.types,\n\t\t\tonSelectType: this.pickType.bind(this),\n\t\t});\n\t}\n\n\tonCloseConfirmationPopup() {\n\t\tthis.setState({\n\t\t\tconfirmationToShow: false,\n\t\t});\n\t\tServices.navigation.goBack();\n\t\tthis.props.onBack && this.props.onBack();\n\t}\n\n\tonConfirmationReset() {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tconfirmationToShow: false,\n\t\t\t\ttitle: \"\",\n\t\t\t\tdescription: \"\",\n\t\t\t\ttimes: \"\",\n\t\t\t\tisHome: false,\n\t\t\t\tuploadingImage: false,\n\t\t\t\timages: [\n\t\t\t\t\t{\n\t\t\t\t\t\tadd: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tsubmitting: false,\n\t\t\t\tsuccess: false,\n\t\t\t\tfail: false,\n\t\t\t\tcustomFields: [],\n\t\t\t\tcustomFieldImages: {},\n\t\t\t\tcustomFieldDocuments: {},\n\t\t\t\tisDateTimePickerVisible: false,\n\t\t\t\tpopUpType: \"date\",\n\t\t\t\tdateFieldId: null,\n\t\t\t\timageFieldId: null,\n\t\t\t},\n\t\t\t() => this.pickType(this.state.type),\n\t\t);\n\t}\n\n\tisFieldValid = (field, fieldId) => {\n\t\tconst { mandatory, type, answer } = field;\n\t\tif ([\"staticTitle\", \"staticText\"].includes(type)) return true;\n\n\t\tconst checkMandatory = () => {\n\t\t\tif (!mandatory) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"yn\":\n\t\t\t\t\treturn _.isBoolean(answer);\n\t\t\t\tcase \"image\":\n\t\t\t\t\tconst imagesList = this.getImageUrls(fieldId);\n\t\t\t\t\treturn imagesList.length > 0;\n\t\t\t\tcase \"document\":\n\t\t\t\t\tconst documentsList = this.getDocumentAnswers(fieldId);\n\t\t\t\t\treturn documentsList.length > 0;\n\t\t\t\tcase \"checkbox\":\n\t\t\t\t\treturn _.isArray(answer) && answer.length > 0;\n\t\t\t\tdefault:\n\t\t\t\t\treturn !_.isNil(answer) && !_.isEmpty(answer);\n\t\t\t}\n\t\t};\n\t\tconst checkFormat = () => {\n\t\t\tif (_.isNil(answer) || _.isEmpty(answer)) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"email\":\n\t\t\t\t\treturn Helper.isEmail(answer);\n\t\t\t\tcase \"date\":\n\t\t\t\t\treturn moment(answer, \"YYYY-MM-DD\", true).isValid();\n\t\t\t\tcase \"time\":\n\t\t\t\t\treturn moment(answer, \"HH:mm\", true).isValid();\n\t\t\t\tdefault:\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t};\n\n\t\tconst valid = checkMandatory() && checkFormat();\n\t\treturn valid;\n\t};\n\n\tgetJobTypes() {\n\t\tmaintenanceActions\n\t\t\t.getJobTypes(Helper.getSite(this.props.site))\n\t\t\t.then((res) => {\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\ttypes: res.data,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tthis.getDefaultJob();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t})\n\t\t\t.catch(() => {});\n\t}\n\n\tpickType(type) {\n\t\tconst { types } = this.state;\n\t\tconst selected = types.find((t) => t.typeName === type) || {};\n\t\tif (values.forceCustomFields && !selected.hasCustomFields) {\n\t\t\tthis.setState({\n\t\t\t\ttype,\n\t\t\t\tcustomFields: [],\n\t\t\t\tnoType: true,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst update = {\n\t\t\ttype,\n\t\t\tcustomFields:\n\t\t\t\tselected.hasCustomFields && selected.customFields.length > 0\n\t\t\t\t\t? _.cloneDeep(selected.customFields)\n\t\t\t\t\t: [],\n\t\t\tloadingTypes: false,\n\t\t};\n\n\t\tif (\n\t\t\t!_.isEmpty(update.customFields) &&\n\t\t\t!_.some(update.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = this.state.userName;\n\t\t}\n\n\t\tthis.setState(update);\n\t}\n\n\tgetDefaultJob() {\n\t\tconst { types, jobId } = this.state;\n\t\tif (types.length !== 0 && jobId == null) {\n\t\t\tconst defaultType = types[0];\n\t\t\tthis.pickType(defaultType.typeName);\n\t\t}\n\t}\n\n\tshowUploadMenu = (fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tif (this.state.uploadingImage || this.state.submitting) {\n\t\t\treturn;\n\t\t}\n\t\tif (fieldId) this.setState({ imageFieldId: fieldId });\n\t\tthis.imageUploader.showUploadMenu();\n\t};\n\n\tsubmit = async () => {\n\t\tthis.setState({ submitting: true });\n\n\t\tlet description = this.state.description;\n\n\t\tif (this.state.isHome) {\n\t\t\tdescription = description + `. -- Times Available: ${this.state.times}`;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tthis.scrollContainer.scrollTo({ y: 0 });\n\t\t}, 100);\n\n\t\tconst images = this.getImageUrls();\n\n\t\t// Fix custom images field answers\n\t\tconst customFields = _.cloneDeep(this.state.customFields);\n\t\tconst updatedCustomFields = customFields.map((field, fieldId) => {\n\t\t\tif (field.type === \"image\") field.answer = this.getImageUrls(fieldId);\n\t\t\tif (field.type === \"document\")\n\t\t\t\tfield.answer = this.getDocumentAnswers(fieldId);\n\t\t\treturn field;\n\t\t});\n\n\t\tconst userID = this.state.canCreateOnBehalf && this.state.selectedUser\n\t\t\t? (this.state.selectedUser.userId || this.state.selectedUser.Id)\n\t\t\t: this.props.uid;\n\n\t\tmaintenanceActions\n\t\t\t.sendMaintenanceRequest(\n\t\t\t\tuserID,\n\t\t\t\tthis.state.userName,\n\t\t\t\tthis.state.phone,\n\t\t\t\tthis.state.roomNumber,\n\t\t\t\tthis.state.title,\n\t\t\t\tdescription,\n\t\t\t\tnull,\n\t\t\t\tthis.state.type,\n\t\t\t\timages,\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tthis.state.isHome,\n\t\t\t\tthis.state.times,\n\t\t\t\tupdatedCustomFields,\n\t\t\t)\n\t\t\t.then((res) => {\n\t\t\t\tif (res.data.success) {\n\t\t\t\t\tthis.refreshRequest(res.data.searchResult);\n\t\t\t\t\tif (this.props.onSubmissionSuccess)\n\t\t\t\t\t\tthis.props.onSubmissionSuccess(res.data);\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t\tsuccess: true,\n\t\t\t\t\t\tconfirmationToShow: true,\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log(\"maintenance submission fail.\");\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.setState({\n\t\t\t\t\tsubmitting: false,\n\t\t\t\t});\n\t\t\t});\n\t};\n\n\trefreshRequest = async (id) => {\n\t\ttry {\n\t\t\tconst job = await maintenanceActions.getJob(\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tid,\n\t\t\t);\n\t\t\tthis.props.jobAdded(job.data);\n\t\t} catch (error) {\n\t\t\tconsole.log(\"refreshRequest error\", error);\n\t\t}\n\t};\n\n\tvalidateCustomFields = () => {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return true;\n\n\t\treturn customFields.every((field, index) => {\n\t\t\tconst isValid = this.isFieldValid(field, index);\n\t\t\treturn isValid;\n\t\t});\n\t};\n\n\tsubmitRequest() {\n\t\tconst {\n\t\t\tcustomFields,\n\t\t\tsubmitting,\n\t\t\tuploadingImage,\n\t\t\ttitle,\n\t\t\troomNumber,\n\t\t\tisHome,\n\t\t\tcustomFieldImages,\n\t\t} = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\t\tfunction showFormErrorAlert() {}\n\n\t\tif (submitting || !this.props.connected) {\n\t\t\tif (!this.props.connected) {\n\t\t\t\tthis.setState({\n\t\t\t\t\terror: { message: \"No internet connection detected\" },\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (uploadingImage) return;\n\t\tthis.setState({ error: null, showError: false });\n\n\t\t// PC-1255: Validate user selection for on-behalf requests\n\t\tif (this.state.canCreateOnBehalf && !this.state.selectedUser) {\n\t\t\tconsole.log(\"submitRequest - no user selected for on-behalf request\");\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please select a user to submit the form on behalf of\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\n\t\tif (title.length === 0 || !roomNumber || roomNumber.length === 0) {\n\t\t\tconsole.log(\"submitRequest - error\", { title, roomNumber });\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please fill out your address details\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\t\tif (hasCustomFields) {\n\t\t\tif (!this.validateCustomFields()) {\n\t\t\t\tconsole.log(\"submitRequest - custom fields error\");\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else {\n\t\t\tif (isHome && times.length < 2) {\n\t\t\t\tconsole.log(\"submitRequest - error\", { isHome, times });\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.submit();\n\t}\n\n\tgetImages = (fieldId = null) => {\n\t\tconst { images, customFieldImages } = this.state;\n\t\tconst imagesList = _.cloneDeep(\n\t\t\tfieldId ? customFieldImages[fieldId] : images,\n\t\t);\n\t\tif (!imagesList || !Array.isArray(imagesList) || imagesList.length === 0) {\n\t\t\treturn [{ add: true }];\n\t\t}\n\t\treturn imagesList;\n\t};\n\n\tsetImages = (imagesList, fieldId = null, callback = null) => {\n\t\tlet update = {};\n\t\tif (fieldId) {\n\t\t\tconst customFieldImages = _.cloneDeep(this.state.customFieldImages);\n\t\t\tcustomFieldImages[fieldId] = imagesList;\n\t\t\tupdate = { customFieldImages };\n\t\t} else {\n\t\t\tupdate = { images: imagesList };\n\t\t}\n\t\tthis.setState(update, callback);\n\t};\n\n\tgetImageUrls = (fieldId = null) => {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn _.filter(imagesList, (img) => {\n\t\t\treturn !img.uploading && !img.add;\n\t\t}).map((img) => {\n\t\t\treturn img.url;\n\t\t});\n\t};\n\n\twaitForThumbnails = () => {\n\t\tif (this.checkThumb) return;\n\n\t\tthis.checkThumb = setInterval(async () => {\n\t\t\tconst { imageFieldId } = this.state;\n\t\t\tconst imagesList = this.getImages(imageFieldId);\n\t\t\tconst imagesUpdate = [];\n\t\t\tawait Promise.all(\n\t\t\t\timagesList.map((image) => {\n\t\t\t\t\treturn new Promise(async (resolve) => {\n\t\t\t\t\t\tconst newImage = { ...image };\n\t\t\t\t\t\timagesUpdate.push(newImage);\n\t\t\t\t\t\tif (newImage.url && !newImage.thumbNailExists) {\n\t\t\t\t\t\t\tnewImage.uploading = false;\n\t\t\t\t\t\t\tnewImage.allowRetry = false;\n\t\t\t\t\t\t\tnewImage.thumbNailExists = await Helper.imageExists(\n\t\t\t\t\t\t\t\tnewImage.thumbNailUrl,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tresolve(newImage.thumbNailExists);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst thumbnailsExist = imagesUpdate.every(\n\t\t\t\t(image) => !image.url || image.thumbNailExists,\n\t\t\t);\n\t\t\tif (thumbnailsExist) {\n\t\t\t\tclearInterval(this.checkThumb);\n\t\t\t\tthis.checkThumb = null;\n\t\t\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t\t\t}\n\t\t}, 2000);\n\t};\n\n\tremoveImage = (index, fieldId) => {\n\t\tconst imagesUpdate = this.getImages(fieldId);\n\t\timagesUpdate.splice(index, 1);\n\n\t\tthis.setImages(imagesUpdate, fieldId);\n\t};\n\n\tgetDocuments = (fieldId) => {\n\t\tconst { customFieldDocuments } = this.state;\n\t\tconst documentsList = _.cloneDeep(customFieldDocuments[fieldId]) || [];\n\t\treturn documentsList;\n\t};\n\n\tsetDocuments = (documentsList, fieldId) => {\n\t\tlet update = {};\n\t\tconst customFieldDocuments = _.cloneDeep(this.state.customFieldDocuments);\n\t\tcustomFieldDocuments[fieldId] = documentsList;\n\t\tupdate = { customFieldDocuments };\n\t\tthis.setState(update);\n\t};\n\n\tgetDocumentAnswers = (fieldId) => {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn _.filter(documentsList, (doc) => {\n\t\t\treturn !doc.uploading && doc.url;\n\t\t}).map((doc) => {\n\t\t\treturn {\n\t\t\t\tname: doc.documentName,\n\t\t\t\text: doc.documentExt,\n\t\t\t\turl: doc.url,\n\t\t\t};\n\t\t});\n\t};\n\n\tremoveDocument = (index, fieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(fieldId);\n\t\tdocumentsUpdate.splice(index, 1);\n\n\t\tthis.setDocuments(documentsUpdate, fieldId);\n\t};\n\n\ttoggleFullscreenVideo = (url) => {\n\t\tif (typeof url !== \"string\") url = \"\";\n\t\tthis.setState({\n\t\t\tshowFullscreenVideo: url.length > 0,\n\t\t\tcurrentVideoUrl: url,\n\t\t});\n\t};\n\n\trenderImageUploader() {\n\t\treturn (\n\t\t\t<Components.ImageUploader\n\t\t\t\tref={(ref) => (this.imageUploader = ref)}\n\t\t\t\tonUploadStarted={this.onUploadStartedImage}\n\t\t\t\tonUploadSuccess={this.onUploadSuccessImage}\n\t\t\t\tonUploadFailed={this.onUploadFailedImage}\n\t\t\t\tonUploadProgress={this.onUploadProgressImage}\n\t\t\t\tonLibrarySelected={this.onLibrarySelectedImage}\n\t\t\t\tsize={{ width: 1400 }}\n\t\t\t\tquality={0.8}\n\t\t\t\tfileName={\"serviceImage\"}\n\t\t\t\tpopupTitle={\"Upload Image\"}\n\t\t\t\tuserId={this.props.uid}\n\t\t\t\tallowsEditing={false}\n\t\t\t\tmultiple\n\t\t\t\thideLibrary\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderImage(item, index, fieldId = null) {\n\t\tconst isVideoUrl = Helper.isVideo(item.url);\n\t\tconst imagesList = this.getImages(fieldId);\n\n\t\tif (item.add) {\n\t\t\treturn (\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tactiveOpacity={0.8}\n\t\t\t\t\tonPress={() => this.showUploadMenu(fieldId)}\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.imageCircle}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"camera\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.addImageIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableOpacity>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{item.uploading ? (\n\t\t\t\t\t<Components.ImageUploadProgress\n\t\t\t\t\t\tuploader={this.imageUploader}\n\t\t\t\t\t\timage={item}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<ImageBackground\n\t\t\t\t\t\tstyle={styles.imageBackground}\n\t\t\t\t\t\tsource={Helper.getImageSource(\n\t\t\t\t\t\t\titem.thumbNailExists ? item.thumbNailUrl : item.url,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{isVideoUrl && (\n\t\t\t\t\t\t\t<View style={styles.imagePlayContainer}>\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={this.toggleFullscreenVideo.bind(this, item.url)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"play\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\tonPress={() => this.removeImage(index, fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</ImageBackground>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocument(item, index, fieldId) {\n\t\tconst { colourBrandingMain } = this.props;\n\t\treturn (\n\t\t\t<View key={index} style={styles.documentContainer}>\n\t\t\t\t<View\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t...styles.documentTypeContainer,\n\t\t\t\t\t\tbackgroundColor: colourBrandingMain,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Text style={styles.documentTypeText}>{item.documentExt}</Text>\n\t\t\t\t</View>\n\t\t\t\t<Text\n\t\t\t\t\tstyle={styles.documentText}\n\t\t\t\t>{`${item.documentName}${item.uploading ? ` - ${item.uploadProgress}` : \"\"}`}</Text>\n\t\t\t\t{!item.uploading && (\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.removeDocumentButton}\n\t\t\t\t\t\tonPress={() => this.removeDocument(index, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\ticonStyle={{\n\t\t\t\t\t\t\t\t...styles.removeDocumentIcon,\n\t\t\t\t\t\t\t\tcolor: colourBrandingMain,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderSuccess() {\n\t\treturn (\n\t\t\t<View style={{ padding: 16, flex: 1, backgroundColor: \"#fff\" }}>\n\t\t\t\t<Text style={styles.requestSuccess}>\n\t\t\t\t\tYour request has been submitted. Thank you.\n\t\t\t\t</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderImageList(fieldId = null) {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageListContainer,\n\t\t\t\t\timagesList.length < 2 && styles.imageListContainerEmpty,\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t<FlatList\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tenableEmptySections\n\t\t\t\t\tdata={imagesList}\n\t\t\t\t\trenderItem={({ item, index }) =>\n\t\t\t\t\t\tthis.renderImage(item, index, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tkeyExtractor={(item, index) => index}\n\t\t\t\t\tnumColumns={3}\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocumentList(fieldId) {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn (\n\t\t\t<View style={styles.documentListContainer}>\n\t\t\t\t{documentsList.length > 0\n\t\t\t\t\t? documentsList.map((document, index) =>\n\t\t\t\t\t\t\tthis.renderDocument(document, index, fieldId),\n\t\t\t\t\t\t)\n\t\t\t\t\t: null}\n\t\t\t\t<Components.DocumentUploader\n\t\t\t\t\tbuttonTitle=\"Add Files\"\n\t\t\t\t\tallowedTypes={[\"application/pdf\"]}\n\t\t\t\t\tonUploadStarted={(uploadUri, uri, name, ext) =>\n\t\t\t\t\t\tthis.onUploadStartedDocument(uploadUri, uri, name, ext, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadProgress={(progress) =>\n\t\t\t\t\t\tthis.onUploadProgressDocument(progress, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadSuccess={(uri, uploadUri) =>\n\t\t\t\t\t\tthis.onUploadSuccessDocument(uri, uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadFailed={(uploadUri) =>\n\t\t\t\t\t\tthis.onUploadFailedDocument(uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tfileName=\"serviceDocument\"\n\t\t\t\t\tuserId={this.props.uid}\n\t\t\t\t\tdisabled={false}\n\t\t\t\t\tmultiple\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDateField(field, fieldId, sectionStyle) {\n\t\tlet displayText, placeHolder, icon, errorText;\n\t\tif (field.type === \"date\") {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"YYYY-MM-DD\").format(\"DD MMM YYYY\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"dd mmm yyyy\";\n\t\t\ticon = \"calendar\";\n\t\t\terrorText = \"Not a valid date\";\n\t\t} else {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"HH:mm\").format(\"h:mm a\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"--:-- --\";\n\t\t\ticon = \"clock-o\";\n\t\t\terrorText = \"Not a valid time\";\n\t\t}\n\n\t\treturn (\n\t\t\t<Components.GenericInputSection\n\t\t\t\tkey={fieldId}\n\t\t\t\tlabel={field.label}\n\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\trequired={field.mandatory}\n\t\t\t\tshowError={this.state.showError}\n\t\t\t\terrorText={errorText}\n\t\t\t>\n\t\t\t\t<View style={styles.dateContainer}>\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.dateFieldButton}\n\t\t\t\t\t\tonPress={() => this.onOpenDatePicker(field, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.dateFieldContainer}>\n\t\t\t\t\t\t\t<Text style={styles.dateText}>{displayText || placeHolder}</Text>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname={icon}\n\t\t\t\t\t\t\t\ticonStyle={styles.dateIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t{displayText ? (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.dateClearButton}\n\t\t\t\t\t\t\tonPress={() => this.onClearDate(fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname=\"times\"\n\t\t\t\t\t\t\t\ticonStyle={styles.removeIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t) : null}\n\t\t\t\t</View>\n\t\t\t</Components.GenericInputSection>\n\t\t);\n\t}\n\n\trenderField(field, fieldId) {\n\t\tconst sectionStyle = {\n\t\t\tmarginTop: fieldId === 0 ? 24 : 0,\n\t\t\tmarginBottom: 24,\n\t\t};\n\t\tswitch (field.type) {\n\t\t\tcase \"yn\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"toggle\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"multichoice\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"radio\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\toptions={field.values.map((o) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tLabel: o,\n\t\t\t\t\t\t\t\tValue: o,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"checkbox\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.values.map((o, i) => {\n\t\t\t\t\t\t\tconst isActive = field.answer && _.includes(field.answer, o);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={() => this.onChangeCheckboxAnswer(fieldId, o)}\n\t\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\t\tstyle={styles.multiChoiceOption}\n\t\t\t\t\t\t\t\t\thitSlop={{ top: 8, left: 8, bottom: 8, right: 8 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{isActive ? (\n\t\t\t\t\t\t\t\t\t\t<Components.TickIcon\n\t\t\t\t\t\t\t\t\t\t\tstyle={styles.tick}\n\t\t\t\t\t\t\t\t\t\t\tsize={20}\n\t\t\t\t\t\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<View style={styles.unticked} />\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<Text style={styles.multiChoiceText}>{o}</Text>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"text\":\n\t\t\tcase \"email\":\n\t\t\tcase \"phone\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tplaceholder={field.placeHolder}\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChangeText={(val) => this.onChangeAnswer(fieldId, val)}\n\t\t\t\t\t\teditable\n\t\t\t\t\t\tsquaredCorners\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\terrorText={field.type === \"email\" ? \"Not a valid email\" : undefined}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tautoCapitalize=\"sentences\"\n\t\t\t\t\t\tkeyboardType={this.keyboardTypes[field.type]}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"staticTitle\":\n\t\t\t\treturn (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.staticTitle,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\tsectionStyle,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.label}\n\t\t\t\t\t</Text>\n\t\t\t\t);\n\t\t\tcase \"staticText\":\n\t\t\t\treturn (\n\t\t\t\t\t<View key={fieldId} style={[styles.staticText, sectionStyle]}>\n\t\t\t\t\t\t{Helper.toParagraphed(field.label, styles.staticText)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\tcase \"date\":\n\t\t\tcase \"time\":\n\t\t\t\treturn this.renderDateField(field, fieldId, sectionStyle);\n\t\t\tcase \"image\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderImageList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"document\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderDocumentList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn null;\n\t\t}\n\t}\n\n\trenderCustomFields() {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return null;\n\n\t\treturn (\n\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t{customFields.map((field, i) => this.renderField(field, i))}\n\t\t\t</Components.FormCard>\n\t\t);\n\t}\n\n\trenderForm() {\n\t\tconst { customFields, loadingTypes } = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\n\t\tif (loadingTypes) {\n\t\t\treturn <Components.Spinner />;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={{ flex: 1 }}>\n\t\t\t\t<ScrollView\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tstyle={{ flex: 1 }}\n\t\t\t\t\tref={(ref) => (this.scrollContainer = ref)}\n\t\t\t\t>\n\t\t\t\t\t<View style={{ paddingBottom: 2 }}>\n\t\t\t\t\t\t<Components.LoadingIndicator visible={this.state.submitting} />\n\t\t\t\t\t\t{this.state.error && (\n\t\t\t\t\t\t\t<Text style={styles.errorText}>{this.state.error}</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t{/* PC-1255: User picker for on-behalf requests */}\n\t\t\t\t\t\t\t{this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Select User\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.selectedUser?.displayName}\n\t\t\t\t\t\t\t\t\thasContent\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please select a user.\"\n\t\t\t\t\t\t\t\t\tshowError={this.state.showError && !this.state.selectedUser}\n\t\t\t\t\t\t\t\t\tsectionStyle={{\n\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressUser}>\n\t\t\t\t\t\t\t\t\t\t<View style={styles.userPickerContainer}>\n\t\t\t\t\t\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\t\t\t\t\t\tProfilePic={this.state.selectedUser?.profilePic}\n\t\t\t\t\t\t\t\t\t\t\t\t\tDiameter={30}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t<Text style={styles.nameText}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.selectedUser?.displayName ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"Select User\"}\n\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfontSize: 20,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</Components.FormCardSection>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{/* PC-1255: Hide Name field when creating on behalf - name comes from selected user */}\n\t\t\t\t\t\t\t{!this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Name\"}\n\t\t\t\t\t\t\t\t\tplaceholder={\"Enter your name\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.userName}\n\t\t\t\t\t\t\t\t\tonChangeText={(userName) => this.onChangeName(userName)}\n\t\t\t\t\t\t\t\t\teditable={\n\t\t\t\t\t\t\t\t\t\tthis.props.userType === \"KIOSK\" &&\n\t\t\t\t\t\t\t\t\t\tthis.state.submitting === false\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\treturn this.state.userName.length > 1;\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please enter your name.\"\n\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.userName.length < 2\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Contact number\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter phone number\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.phone}\n\t\t\t\t\t\t\t\tonChangeText={(phone) => this.setState({ phone })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tkeyboardType={\"phone-pad\"}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Address\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter your address\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.roomNumber}\n\t\t\t\t\t\t\t\tonChangeText={(roomNumber) => this.setState({ roomNumber })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tthis.state.roomNumber && this.state.roomNumber.length > 1\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\terrorText=\"Please provide your address.\"\n\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t(!this.state.roomNumber || this.state.roomNumber.length < 2)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tmarginTop: 16,\n\t\t\t\t\t\t\t\tpaddingHorizontal: 24,\n\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>{values.textJobType}</Text>\n\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressType.bind(this)}>\n\t\t\t\t\t\t\t\t<View style={{ flexDirection: \"row\" }}>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain, marginRight: 16 },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{this.state.type}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ fontSize: 20, color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t{hasCustomFields ? (\n\t\t\t\t\t\t\tthis.renderCustomFields()\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Title\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Enter a title for your request\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.title}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(title) => this.setState({ title })}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\treturn this.state.title.length > 1;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide a title.\"\n\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.title.length < 2\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Description\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Describe your request here in detail\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.description}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(description) =>\n\t\t\t\t\t\t\t\t\t\t\tthis.setState({ description })\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\t\t\tstyle={{ marginTop: 16, paddingHorizontal: 24 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\t\t\t\t\t\tposition: \"relative\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome && {\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>\n\t\t\t\t\t\t\t\t\t\t\t{Config.env.strings.MAINTENANCE_HOME}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t<Switch\n\t\t\t\t\t\t\t\t\t\t\tvalue={this.state.isHome}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={this.state.submitting}\n\t\t\t\t\t\t\t\t\t\t\tonValueChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({ isHome: value })\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttrackColor={{\n\t\t\t\t\t\t\t\t\t\t\t\tfalse: \"#ddd\",\n\t\t\t\t\t\t\t\t\t\t\t\ttrue: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tthumbColor={Platform.OS === \"android\" ? \"#fff\" : null}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t{this.state.isHome && (\n\t\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\t\tlabel={\"Available times\"}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\t\t\t\t\t\"Describe your available times here in detail.\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttextValue={this.state.times}\n\t\t\t\t\t\t\t\t\t\t\tonChangeText={(times) => this.setState({ times })}\n\t\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn this.state.times.length > 1;\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide available times.\"\n\t\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.times.length < 2\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tminHeight={40}\n\t\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t{this.renderImageList()}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderRegisterConfirmation() {\n\t\treturn (\n\t\t\t<Components.ConfirmationPopup\n\t\t\t\tconfirmText={`${values.textEntityName} submitted`}\n\t\t\t\trepeatText={\"Submit another\"}\n\t\t\t\tvisible={this.state.confirmationToShow}\n\t\t\t\tonClose={this.onCloseConfirmationPopup.bind(this)}\n\t\t\t\tonPressAction={this.onConfirmationReset.bind(this)}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderVideoPlayerPopup() {\n\t\tconst { showFullscreenVideo, currentVideoUrl } = this.state;\n\t\tif (!currentVideoUrl) return;\n\n\t\treturn (\n\t\t\t<Components.VideoPopup\n\t\t\t\turi={currentVideoUrl}\n\t\t\t\tvisible={showFullscreenVideo}\n\t\t\t\tshowFullscreenButton={false}\n\t\t\t\tonClose={this.toggleFullscreenVideo}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderNoType() {\n\t\tif (!this.state.noType) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Components.WarningPopup\n\t\t\t\tconfirmText={\"No forms are available\"}\n\t\t\t\tinfoText={\"Check back later for forms.\"}\n\t\t\t\tvisible={this.state.noType}\n\t\t\t\tonClose={this.onPressBack.bind(this)}\n\t\t\t\tpadHorizontal\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { submitting, success, isDateTimePickerVisible, popUpType } =\n\t\t\tthis.state;\n\n\t\treturn (\n\t\t\t<KeyboardAvoidingView behavior={\"padding\"} style={styles.viewContainer}>\n\t\t\t\t{this.renderImageUploader()}\n\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t<Components.Header\n\t\t\t\t\t\tleftIcon=\"angle-left\"\n\t\t\t\t\t\tonPressLeft={this.onPressBack.bind(this)}\n\t\t\t\t\t\ttext={\n\t\t\t\t\t\t\tthis.props.strings[`${values.featureKey}_textFeatureTitle`] ||\n\t\t\t\t\t\t\tvalues.textFeatureTitle\n\t\t\t\t\t\t}\n\t\t\t\t\t\trightText={submitting || success ? null : \"Done\"}\n\t\t\t\t\t\tonPressRight={this.submitRequest.bind(this)}\n\t\t\t\t\t\tabsoluteRight\n\t\t\t\t\t/>\n\t\t\t\t\t{this.renderForm()}\n\t\t\t\t</View>\n\t\t\t\t{this.renderRegisterConfirmation()}\n\t\t\t\t{this.renderVideoPlayerPopup()}\n\t\t\t\t{this.renderNoType()}\n\t\t\t\t<DateTimePicker\n\t\t\t\t\tisVisible={isDateTimePickerVisible}\n\t\t\t\t\tonConfirm={this.onDateSelected}\n\t\t\t\t\tonCancel={() => this.setState({ isDateTimePickerVisible: false })}\n\t\t\t\t\tmode={popUpType}\n\t\t\t\t\theaderTextIOS={`Pick a ${popUpType}`}\n\t\t\t\t\tdate={new Date()}\n\t\t\t\t/>\n\t\t\t</KeyboardAvoidingView>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tviewContainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tcontainer: {\n\t\tflex: 1,\n\t\tposition: \"relative\",\n\t\tbackgroundColor: \"#f0f0f5\",\n\t},\n\terrorText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.COLOUR_TANGERINE,\n\t\tfontSize: 16,\n\t},\n\trequestSuccess: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARK,\n\t\tfontSize: 17,\n\t\ttextAlign: \"center\",\n\t},\n\tsectionTitle: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 17,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\timageListContainer: {\n\t\tmarginTop: 8,\n\t\tpadding: 8,\n\t\tflexDirection: \"row\",\n\t\tbackgroundColor: Colours.BOXGREY,\n\t\tminHeight: 106,\n\t},\n\timageListContainerEmpty: {\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tflexDirection: \"column\",\n\t},\n\tdocumentListContainer: {\n\t\tmarginTop: 8,\n\t\tflexDirection: \"column\",\n\t\talignItems: \"flex-start\",\n\t},\n\timageContainer: {\n\t\twidth: PHOTO_SIZE,\n\t\theight: PHOTO_SIZE,\n\t\tborderStyle: \"dashed\",\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderRadius: 4,\n\t\tmarginLeft: 8,\n\t},\n\timageContainerNotEmpty: {\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tbackgroundColor: \"#fff\",\n\t\tborderStyle: \"dashed\",\n\t},\n\timageBackground: {\n\t\tflex: 1,\n\t\theight: \"100%\",\n\t\twidth: \"100%\",\n\t\tborderRadius: 4,\n\t},\n\timageCircle: {\n\t\twidth: 90,\n\t\theight: 90,\n\t\tborderRadius: 45,\n\t\tbackgroundColor: Colours.PINKISH_GREY,\n\t\tjustifyContent: \"center\",\n\t},\n\taddImageIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 32,\n\t},\n\timagePlayContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageControlIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 20,\n\t\ttextShadowColor: \"rgba(0,0,0,0.3)\",\n\t\ttextShadowOffset: { width: 2, height: 2 },\n\t},\n\tremoveImage: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tright: 0,\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tstaticTitle: {\n\t\tfontSize: 20,\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tstaticText: {\n\t\tfontSize: 17,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tlineHeight: 24,\n\t},\n\tmultiChoiceOption: {\n\t\tmarginTop: 16,\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tminHeight: 20,\n\t},\n\tmultiChoiceText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\ttick: {\n\t\tmarginRight: 10,\n\t\tborderRadius: 4,\n\t},\n\tunticked: {\n\t\tmarginRight: 10,\n\t\twidth: 20,\n\t\theight: 20,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderWidth: 1,\n\t\tborderRadius: 4,\n\t},\n\tdateContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tdateFieldButton: {\n\t\tflex: 1,\n\t},\n\tdateFieldContainer: {\n\t\tflexDirection: \"row\",\n\t\tborderRadius: 2,\n\t\tbackgroundColor: \"#ebeff2\",\n\t\tpadding: 8,\n\t\tmarginTop: 8,\n\t},\n\tdateText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tdateIcon: {\n\t\tfontSize: 18,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdateClearButton: {\n\t\tpaddingLeft: 12,\n\t},\n\tremoveIcon: {\n\t\tfontSize: 26,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdocumentContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"space-between\",\n\t\tpaddingVertical: 4,\n\t},\n\tdocumentTypeContainer: {\n\t\twidth: 50,\n\t\theight: 60,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderRadius: 5,\n\t\tmarginRight: 8,\n\t},\n\tdocumentTypeText: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\ttextAlign: \"center\",\n\t},\n\tdocumentText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tremoveDocumentButton: {\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tmarginLeft: 8,\n\t},\n\tremoveDocumentIcon: {\n\t\tfontSize: 24,\n\t},\n\t// PC-1255: User picker styles\n\tuserPickerContainer: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t},\n\tprofileContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tnameText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARK,\n\t\tmarginLeft: 8,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\tconst { user, connection } = state;\n\tconst { displayName, profilePic, uid, site, unit, phoneNumber, permissions } =\n\t\tuser;\n\treturn {\n\t\tconnected: connection.connected,\n\t\tuserType: user.type,\n\t\tdisplayName,\n\t\tprofilePic,\n\t\tuid,\n\t\tsite,\n\t\tunit,\n\t\tphoneNumber,\n\t\tpermissions,\n\t\tcolourBrandingMain: Colours.getMainBrandingColourFromState(state),\n\t\tstrings: state.strings?.config || {},\n\t\toptionOnlyForResidents: Helper.getSiteSettingFromState(\n\t\t\tstate,\n\t\t\tvalues.optionOnlyForResidents,\n\t\t),\n\t};\n};\n\nexport default connect(mapStateToProps, { jobAdded })(MaintenanceRequest);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","Text","Dimensions","Platform","KeyboardAvoidingView","ScrollView","TouchableOpacity","View","Switch","FlatList","ImageBackground","Keyboard","Alert","DateTimePicker","Icon","_","moment","connect","jobAdded","maintenanceActions","userActions","Services","Components","Colours","Helper","Config","values","PHOTO_SIZE","get","width","MaintenanceRequest","constructor","props","_defineProperty","_this$props$permissio","hasUserManagement","permissions","includes","setState","canCreateOnBehalf","loadSiteUsers","setDefaultUser","response","getSiteUsers","site","items","data","Items","optionOnlyForResidents","filter","u","category","users","sortBy","displayName","toLowerCase","error","console","log","userType","defaultUser","userId","uid","profilePic","selectedUser","userName","roomNumber","unit","phone","isEmpty","phoneNumber","update","state","customFields","some","title","length","navigation","navigate","screenUserPicker","currentUser","onSelectUser","bind","user","Id","fetchUser","userDetails","fieldId","answer","cloneDeep","field","isTitle","undefined","xor","join","dismiss","dateFieldId","popUpType","type","isDateTimePickerVisible","date","dateObj","format","uploadUri","imageUri","imageFieldId","imagesUpdate","getImages","splice","uploading","uploadProgress","allowRetry","setImages","progress","map","img","uri","percentage","url","replace","thumbNailExists","thumbNailUrl","getThumb300","waitForThumbnails","get1400","documentUri","documentName","documentExt","documentFieldId","documentsUpdate","getDocuments","setDocuments","doc","mandatory","checkMandatory","isBoolean","imagesList","getImageUrls","documentsList","getDocumentAnswers","isArray","isNil","checkFormat","isEmail","isValid","valid","uploadingImage","submitting","imageUploader","showUploadMenu","description","isHome","times","setTimeout","scrollContainer","scrollTo","y","images","updatedCustomFields","userID","sendMaintenanceRequest","getSite","then","res","success","refreshRequest","searchResult","onSubmissionSuccess","confirmationToShow","catch","err","id","job","getJob","every","index","isFieldValid","customFieldImages","Array","add","callback","checkThumb","setInterval","Promise","all","image","resolve","newImage","push","imageExists","thumbnailsExist","clearInterval","customFieldDocuments","name","ext","showFullscreenVideo","currentVideoUrl","fail","showError","loadingTypes","forceCustomFields","types","keyboardTypes","email","text","componentDidMount","checkUserPermissions","getJobTypes","componentWillUnmount","onPressBack","goBack","onPressType","screenJobTypePicker","currentType","onSelectType","pickType","onCloseConfirmationPopup","onBack","onConfirmationReset","getDefaultJob","selected","find","t","typeName","hasCustomFields","noType","jobId","defaultType","submitRequest","showFormErrorAlert","connected","message","alert","validateCustomFields","submit","renderImageUploader","createElement","ImageUploader","ref","onUploadStarted","onUploadStartedImage","onUploadSuccess","onUploadSuccessImage","onUploadFailed","onUploadFailedImage","onUploadProgress","onUploadProgressImage","onLibrarySelected","onLibrarySelectedImage","size","quality","fileName","popupTitle","allowsEditing","multiple","hideLibrary","renderImage","item","isVideoUrl","isVideo","activeOpacity","onPress","style","styles","imageContainer","imageContainerNotEmpty","marginLeft","marginTop","imageCircle","iconStyle","addImageIcon","ImageUploadProgress","uploader","color","colourBrandingMain","imageBackground","source","getImageSource","imagePlayContainer","toggleFullscreenVideo","imageControlIcon","removeImage","renderDocument","key","documentContainer","documentTypeContainer","backgroundColor","documentTypeText","documentText","removeDocumentButton","removeDocument","removeDocumentIcon","renderSuccess","padding","flex","requestSuccess","renderImageList","imageListContainer","imageListContainerEmpty","keyboardShouldPersistTaps","enableEmptySections","renderItem","keyExtractor","numColumns","renderDocumentList","documentListContainer","document","DocumentUploader","buttonTitle","allowedTypes","onUploadStartedDocument","onUploadProgressDocument","onUploadSuccessDocument","onUploadFailedDocument","disabled","renderDateField","sectionStyle","displayText","placeHolder","icon","errorText","GenericInputSection","label","required","dateContainer","dateFieldButton","onOpenDatePicker","dateFieldContainer","dateText","dateIcon","dateClearButton","onClearDate","removeIcon","renderField","marginBottom","inputType","value","onChange","onChangeToggleAnswer","options","o","Label","Value","i","isActive","onChangeCheckboxAnswer","multiChoiceOption","hitSlop","top","left","bottom","right","TickIcon","tick","unticked","multiChoiceText","placeholder","onChangeText","val","onChangeAnswer","editable","squaredCorners","autoCapitalize","keyboardType","staticTitle","staticText","toParagraphed","renderCustomFields","FormCard","renderForm","_this$state$selectedU","_this$state$selectedU2","_this$state$selectedU3","Spinner","paddingBottom","LoadingIndicator","visible","FormCardSection","textValue","hasContent","hasUnderline","borderBottomWidth","borderBottomColor","LINEGREY","onPressUser","userPickerContainer","profileContainer","ProfilePic","Diameter","nameText","sectionTitle","fontSize","onChangeName","paddingHorizontal","paddingVertical","flexDirection","justifyContent","textJobType","marginRight","Fragment","autoCorrect","multiline","autoGrow","alignItems","position","env","strings","MAINTENANCE_HOME","onValueChange","trackColor","false","true","thumbColor","OS","minHeight","renderRegisterConfirmation","ConfirmationPopup","confirmText","textEntityName","repeatText","onClose","onPressAction","renderVideoPlayerPopup","VideoPopup","showFullscreenButton","renderNoType","WarningPopup","infoText","padHorizontal","render","behavior","viewContainer","container","Header","leftIcon","onPressLeft","featureKey","textFeatureTitle","rightText","onPressRight","absoluteRight","isVisible","onConfirm","onDateSelected","onCancel","mode","headerTextIOS","Date","fontFamily","COLOUR_TANGERINE","TEXT_DARK","textAlign","BOXGREY","height","borderStyle","borderWidth","borderColor","borderRadius","PINKISH_GREY","textShadowColor","textShadowOffset","TEXT_DARKEST","lineHeight","TEXT_BLUEGREY","paddingLeft","mapStateToProps","_state$strings","connection","getMainBrandingColourFromState","config","getSiteSettingFromState"],"sources":["ServiceRequest.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tPlatform,\n\tKeyboardAvoidingView,\n\tScrollView,\n\tTouchableOpacity,\n\tView,\n\tSwitch,\n\tFlatList,\n\tImageBackground,\n\tKeyboard,\n\tAlert,\n} from \"react-native\";\nimport DateTimePicker from \"react-native-modal-datetime-picker\";\nimport { Icon } from \"@rneui/themed\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { jobAdded } from \"../actions\";\nimport { maintenanceActions, userActions } from \"../apis\";\nimport { Services } from \"../feature.config\";\nimport { Components, Colours, Helper, Config } from \"../core.config\";\nimport { values } from \"../values.config\";\n\nconst PHOTO_SIZE = (Dimensions.get(\"window\").width - 64) / 3;\n\nclass MaintenanceRequest extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tsubmitting: false,\n\t\t\tsuccess: false,\n\t\t\tfail: false,\n\t\t\terror: null,\n\t\t\tshowError: false,\n\t\t\tloadingTypes: values.forceCustomFields,\n\n\t\t\tuserName: \"\",\n\t\t\troomNumber: \"\",\n\t\t\tphone: \"\",\n\t\t\ttitle: \"\",\n\t\t\tdescription: \"\",\n\t\t\ttimes: \"\",\n\n\t\t\ttype: \"General\",\n\n\t\t\tuploadingImage: false,\n\t\t\timages: [\n\t\t\t\t{\n\t\t\t\t\tadd: true,\n\t\t\t\t},\n\t\t\t],\n\t\t\tshowFullscreenVideo: false,\n\t\t\tcurrentVideoUrl: \"\",\n\n\t\t\tisHome: false,\n\n\t\t\ttypes: [],\n\n\t\t\tconfirmationToShow: false,\n\n\t\t\tcustomFields: [],\n\t\t\tcustomFieldImages: {},\n\t\t\tcustomFieldDocuments: {},\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tpopUpType: \"date\",\n\t\t\tdateFieldId: null,\n\t\t\timageFieldId: null,\n\n\t\t\t// PC-1255: On-behalf request fields\n\t\t\tcanCreateOnBehalf: false,\n\t\t\tselectedUser: null,\n\t\t\tusers: [],\n\t\t};\n\t\tthis.checkThumb = null;\n\t\tthis.keyboardTypes = {\n\t\t\tphone: \"phone-pad\",\n\t\t\temail: \"email-address\",\n\t\t\ttext: \"default\",\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.checkUserPermissions();\n\t\tthis.getJobTypes();\n\t}\n\n\tcheckUserPermissions = async () => {\n\t\t// PC-1255: Check if user has userManagement permission\n\t\tconst hasUserManagement =\n\t\t\tthis.props.permissions?.includes(\"userManagement\") || false;\n\n\t\tif (hasUserManagement) {\n\t\t\tthis.setState({ canCreateOnBehalf: true });\n\t\t\t// Load site users for picker\n\t\t\tawait this.loadSiteUsers();\n\t\t} else {\n\t\t\t// Default to logged-in user for non-staff or staff without permission\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tloadSiteUsers = async () => {\n\t\ttry {\n\t\t\tconst response = await userActions.getSiteUsers(this.props.site);\n\n\t\t\tlet items = response.data.Items || [];\n\t\t\tif (this.props.optionOnlyForResidents) {\n\t\t\t\titems = _.filter(items, (u) => u.category === \"resident\");\n\t\t\t}\n\t\t\tconst users = _.sortBy(response.data.Items || [], (u) =>\n\t\t\t\t(u.displayName || \"\").toLowerCase(),\n\t\t\t);\n\t\t\tthis.setState({ users });\n\t\t} catch (error) {\n\t\t\tconsole.log(\"Error loading site users:\", error);\n\t\t\t// Fall back to default user if loading fails\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tsetDefaultUser = () => {\n\t\tif (this.props.userType !== \"KIOSK\") {\n\t\t\tconst defaultUser = {\n\t\t\t\tuserId: this.props.uid,\n\t\t\t\tdisplayName: this.props.displayName,\n\t\t\t\tprofilePic: this.props.profilePic,\n\t\t\t};\n\t\t\tthis.setState({\n\t\t\t\tselectedUser: defaultUser,\n\t\t\t\tuserName: this.props.displayName,\n\t\t\t\troomNumber: this.props.unit,\n\t\t\t\tphone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : \"\",\n\t\t\t});\n\t\t}\n\t};\n\n\tcomponentWillUnmount() {\n\t\tclearInterval(this.checkThumb);\n\t}\n\n\tonChangeName = (userName) => {\n\t\tconst update = { userName };\n\t\tif (\n\t\t\t!this.state.customFields ||\n\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = userName;\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\t// PC-1255: Handle user picker navigation\n\tonPressUser = () => {\n\t\tconst { users, selectedUser } = this.state;\n\t\tif (!users || users.length === 0) return;\n\n\t\tServices.navigation.navigate(values.screenUserPicker, {\n\t\t\tcurrentUser: selectedUser,\n\t\t\tusers,\n\t\t\tonSelectUser: this.onSelectUser.bind(this),\n\t\t});\n\t};\n\n\t// PC-1255: Handle user selection and auto-populate contact details\n\tonSelectUser = async (user) => {\n\t\tconst update = {\n\t\t\tselectedUser: user,\n\t\t\tuserName: user.displayName,\n\t\t};\n\n\t\t// PC-1255: Try to fetch full user details for auto-population\n\t\ttry {\n\t\t\t// getSiteUsers returns 'Id', but fetchUser expects 'userId'\n\t\t\tconst userId = user.userId || user.Id;\n\t\t\tconst response = await userActions.fetchUser(this.props.site, userId);\n\t\t\tif (response.data && response.data.user) {\n\t\t\t\tconst userDetails = response.data.user;\n\t\t\t\tif (userDetails.phoneNumber) {\n\t\t\t\t\tupdate.phone = userDetails.phoneNumber;\n\t\t\t\t}\n\t\t\t\tif (userDetails.unit) {\n\t\t\t\t\tupdate.roomNumber = userDetails.unit;\n\t\t\t\t}\n\t\t\t\tif (\n\t\t\t\t\t!this.state.customFields ||\n\t\t\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t\t\t) {\n\t\t\t\t\tupdate.title = userDetails.displayName || null;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// Permission denied (403) or other error - continue without auto-population\n\t\t\t// User can still manually enter contact details\n\t\t\tconsole.log(\"Could not fetch user details for auto-population:\", error);\n\t\t} finally {\n\t\t\t// In any case, we still need a title. Inform the user to set one form field as a title.\n\t\t\tif (!this.state.title && !update.title) {\n\t\t\t\tupdate.title =\n\t\t\t\t\t\"[Missing title - Set one of the form field as title in the community manager]\";\n\t\t\t}\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonChangeAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeToggleAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = field.answer === answer ? undefined : answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeCheckboxAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = _.xor(field.answer || [], [answer]);\n\t\tif (field.isTitle) update.title = field.answer.join(\", \");\n\t\tthis.setState(update);\n\t};\n\n\tonOpenDatePicker = (field, fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tthis.setState({\n\t\t\tdateFieldId: fieldId,\n\t\t\tpopUpType: field.type,\n\t\t\tisDateTimePickerVisible: true,\n\t\t});\n\t};\n\n\tonClearDate = (fieldId) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = undefined;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonDateSelected = (date) => {\n\t\tconst { customFields, dateFieldId, popUpType } = this.state;\n\t\tconst update = {\n\t\t\tcustomFields: _.cloneDeep(customFields),\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tfieldId: null,\n\t\t};\n\t\tconst field = update.customFields[dateFieldId];\n\t\tconst dateObj = moment(date);\n\t\tif (popUpType === \"date\") {\n\t\t\tfield.answer = dateObj.format(\"YYYY-MM-DD\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"DD MMM YYYY\");\n\t\t} else {\n\t\t\tfield.answer = dateObj.format(\"HH:mm\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"h:mm a\");\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonUploadStartedImage = (uploadUri, imageUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\timageUri,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadProgressImage = (progress) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === progress.uri) {\n\t\t\t\timg.uploadProgress = progress.percentage;\n\t\t\t\timg.uploading = true;\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadSuccessImage = async (uri, uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri && img.uploading) {\n\t\t\t\timg.url = uri.replace(\"/general/\", \"/general1400/\");\n\t\t\t\timg.thumbNailExists = false;\n\t\t\t\timg.thumbNailUrl = Helper.getThumb300(img.url);\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId, () => this.waitForThumbnails());\n\t};\n\n\tonUploadFailedImage = (uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri) {\n\t\t\t\timg.uploading = true; // Requried for retry\n\t\t\t\timg.uploadProgress = \"\";\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonLibrarySelectedImage = (uri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: false,\n\t\t\tallowRetry: false,\n\t\t\turl: Helper.get1400(uri),\n\t\t\tthumbNailExists: true,\n\t\t\tthumbNailUrl: Helper.getThumb300(uri),\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadStartedDocument = (\n\t\tuploadUri,\n\t\tdocumentUri,\n\t\tdocumentName,\n\t\tdocumentExt,\n\t\tdocumentFieldId,\n\t) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.splice(documentsUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\tdocumentUri,\n\t\t\tdocumentName,\n\t\t\tdocumentExt,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadProgressDocument = (progress, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === progress.uri) {\n\t\t\t\tdoc.uploadProgress = progress.percentage;\n\t\t\t\tdoc.uploading = true;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadSuccessDocument = async (uri, uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri && doc.uploading) {\n\t\t\t\tdoc.uploading = false;\n\t\t\t\tdoc.uploadProgress = \"100%\";\n\t\t\t\tdoc.url = uri;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadFailedDocument = (uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri) {\n\t\t\t\tdoc.uploading = true; // Requried for retry\n\t\t\t\tdoc.uploadProgress = \"\";\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonPressBack() {\n\t\tServices.navigation.goBack();\n\t}\n\n\tonPressType() {\n\t\tServices.navigation.navigate(values.screenJobTypePicker, {\n\t\t\tcurrentType: this.state.type,\n\t\t\ttypes: this.state.types,\n\t\t\tonSelectType: this.pickType.bind(this),\n\t\t});\n\t}\n\n\tonCloseConfirmationPopup() {\n\t\tthis.setState({\n\t\t\tconfirmationToShow: false,\n\t\t});\n\t\tServices.navigation.goBack();\n\t\tthis.props.onBack && this.props.onBack();\n\t}\n\n\tonConfirmationReset() {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tconfirmationToShow: false,\n\t\t\t\ttitle: \"\",\n\t\t\t\tdescription: \"\",\n\t\t\t\ttimes: \"\",\n\t\t\t\tisHome: false,\n\t\t\t\tuploadingImage: false,\n\t\t\t\timages: [\n\t\t\t\t\t{\n\t\t\t\t\t\tadd: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tsubmitting: false,\n\t\t\t\tsuccess: false,\n\t\t\t\tfail: false,\n\t\t\t\tcustomFields: [],\n\t\t\t\tcustomFieldImages: {},\n\t\t\t\tcustomFieldDocuments: {},\n\t\t\t\tisDateTimePickerVisible: false,\n\t\t\t\tpopUpType: \"date\",\n\t\t\t\tdateFieldId: null,\n\t\t\t\timageFieldId: null,\n\t\t\t},\n\t\t\t() => this.pickType(this.state.type),\n\t\t);\n\t}\n\n\tisFieldValid = (field, fieldId) => {\n\t\tconst { mandatory, type, answer } = field;\n\t\tif ([\"staticTitle\", \"staticText\"].includes(type)) return true;\n\n\t\tconst checkMandatory = () => {\n\t\t\tif (!mandatory) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"yn\":\n\t\t\t\t\treturn _.isBoolean(answer);\n\t\t\t\tcase \"image\":\n\t\t\t\t\tconst imagesList = this.getImageUrls(fieldId);\n\t\t\t\t\treturn imagesList.length > 0;\n\t\t\t\tcase \"document\":\n\t\t\t\t\tconst documentsList = this.getDocumentAnswers(fieldId);\n\t\t\t\t\treturn documentsList.length > 0;\n\t\t\t\tcase \"checkbox\":\n\t\t\t\t\treturn _.isArray(answer) && answer.length > 0;\n\t\t\t\tdefault:\n\t\t\t\t\treturn !_.isNil(answer) && !_.isEmpty(answer);\n\t\t\t}\n\t\t};\n\t\tconst checkFormat = () => {\n\t\t\tif (_.isNil(answer) || _.isEmpty(answer)) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"email\":\n\t\t\t\t\treturn Helper.isEmail(answer);\n\t\t\t\tcase \"date\":\n\t\t\t\t\treturn moment(answer, \"YYYY-MM-DD\", true).isValid();\n\t\t\t\tcase \"time\":\n\t\t\t\t\treturn moment(answer, \"HH:mm\", true).isValid();\n\t\t\t\tdefault:\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t};\n\n\t\tconst valid = checkMandatory() && checkFormat();\n\t\treturn valid;\n\t};\n\n\tgetJobTypes() {\n\t\tmaintenanceActions\n\t\t\t.getJobTypes(Helper.getSite(this.props.site))\n\t\t\t.then((res) => {\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\ttypes: res.data,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tthis.getDefaultJob();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t})\n\t\t\t.catch(() => {});\n\t}\n\n\tpickType(type) {\n\t\tconst { types } = this.state;\n\t\tconst selected = types.find((t) => t.typeName === type) || {};\n\t\tif (values.forceCustomFields && !selected.hasCustomFields) {\n\t\t\tthis.setState({\n\t\t\t\ttype,\n\t\t\t\tcustomFields: [],\n\t\t\t\tnoType: true,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst update = {\n\t\t\ttype,\n\t\t\tcustomFields:\n\t\t\t\tselected.hasCustomFields && selected.customFields.length > 0\n\t\t\t\t\t? _.cloneDeep(selected.customFields)\n\t\t\t\t\t: [],\n\t\t\tloadingTypes: false,\n\t\t};\n\n\t\tif (\n\t\t\t!_.isEmpty(update.customFields) &&\n\t\t\t!_.some(update.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = this.state.userName;\n\t\t}\n\n\t\tthis.setState(update);\n\t}\n\n\tgetDefaultJob() {\n\t\tconst { types, jobId } = this.state;\n\t\tif (types.length !== 0 && jobId == null) {\n\t\t\tconst defaultType = types[0];\n\t\t\tthis.pickType(defaultType.typeName);\n\t\t}\n\t}\n\n\tshowUploadMenu = (fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tif (this.state.uploadingImage || this.state.submitting) {\n\t\t\treturn;\n\t\t}\n\t\tif (fieldId) this.setState({ imageFieldId: fieldId });\n\t\tthis.imageUploader.showUploadMenu();\n\t};\n\n\tsubmit = async () => {\n\t\tthis.setState({ submitting: true });\n\n\t\tlet description = this.state.description;\n\n\t\tif (this.state.isHome) {\n\t\t\tdescription = description + `. -- Times Available: ${this.state.times}`;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tthis.scrollContainer.scrollTo({ y: 0 });\n\t\t}, 100);\n\n\t\tconst images = this.getImageUrls();\n\n\t\t// Fix custom images field answers\n\t\tconst customFields = _.cloneDeep(this.state.customFields);\n\t\tconst updatedCustomFields = customFields.map((field, fieldId) => {\n\t\t\tif (field.type === \"image\") field.answer = this.getImageUrls(fieldId);\n\t\t\tif (field.type === \"document\")\n\t\t\t\tfield.answer = this.getDocumentAnswers(fieldId);\n\t\t\treturn field;\n\t\t});\n\n\t\tconst userID = this.state.canCreateOnBehalf && this.state.selectedUser\n\t\t\t? (this.state.selectedUser.userId || this.state.selectedUser.Id)\n\t\t\t: this.props.uid;\n\n\t\tmaintenanceActions\n\t\t\t.sendMaintenanceRequest(\n\t\t\t\tuserID,\n\t\t\t\tthis.state.userName,\n\t\t\t\tthis.state.phone,\n\t\t\t\tthis.state.roomNumber,\n\t\t\t\tthis.state.title,\n\t\t\t\tdescription,\n\t\t\t\tnull,\n\t\t\t\tthis.state.type,\n\t\t\t\timages,\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tthis.state.isHome,\n\t\t\t\tthis.state.times,\n\t\t\t\tupdatedCustomFields,\n\t\t\t)\n\t\t\t.then((res) => {\n\t\t\t\tif (res.data.success) {\n\t\t\t\t\tthis.refreshRequest(res.data.searchResult);\n\t\t\t\t\tif (this.props.onSubmissionSuccess)\n\t\t\t\t\t\tthis.props.onSubmissionSuccess(res.data);\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t\tsuccess: true,\n\t\t\t\t\t\tconfirmationToShow: true,\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log(\"maintenance submission fail.\");\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.setState({\n\t\t\t\t\tsubmitting: false,\n\t\t\t\t});\n\t\t\t});\n\t};\n\n\trefreshRequest = async (id) => {\n\t\ttry {\n\t\t\tconst job = await maintenanceActions.getJob(\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tid,\n\t\t\t);\n\t\t\tthis.props.jobAdded(job.data);\n\t\t} catch (error) {\n\t\t\tconsole.log(\"refreshRequest error\", error);\n\t\t}\n\t};\n\n\tvalidateCustomFields = () => {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return true;\n\n\t\treturn customFields.every((field, index) => {\n\t\t\tconst isValid = this.isFieldValid(field, index);\n\t\t\treturn isValid;\n\t\t});\n\t};\n\n\tsubmitRequest() {\n\t\tconst {\n\t\t\tcustomFields,\n\t\t\tsubmitting,\n\t\t\tuploadingImage,\n\t\t\ttitle,\n\t\t\troomNumber,\n\t\t\tisHome,\n\t\t\tcustomFieldImages,\n\t\t\ttimes,\n\t\t} = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\t\tfunction showFormErrorAlert() {}\n\n\t\tif (submitting || !this.props.connected) {\n\t\t\tif (!this.props.connected) {\n\t\t\t\tthis.setState({\n\t\t\t\t\terror: { message: \"No internet connection detected\" },\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (uploadingImage) return;\n\t\tthis.setState({ error: null, showError: false });\n\n\t\t// PC-1255: Validate user selection for on-behalf requests\n\t\tif (this.state.canCreateOnBehalf && !this.state.selectedUser) {\n\t\t\tconsole.log(\"submitRequest - no user selected for on-behalf request\");\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please select a user to submit the form on behalf of\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\n\t\tif (title.length === 0 || !roomNumber || roomNumber.length === 0) {\n\t\t\tconsole.log(\"submitRequest - error\", { title, roomNumber });\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please fill out your address details\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\t\tif (hasCustomFields) {\n\t\t\tif (!this.validateCustomFields()) {\n\t\t\t\tconsole.log(\"submitRequest - custom fields error\");\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else {\n\t\t\tif (isHome && times.length < 2) {\n\t\t\t\tconsole.log(\"submitRequest - error\", { isHome, times });\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.submit();\n\t}\n\n\tgetImages = (fieldId = null) => {\n\t\tconst { images, customFieldImages } = this.state;\n\t\tconst imagesList = _.cloneDeep(\n\t\t\tfieldId ? customFieldImages[fieldId] : images,\n\t\t);\n\t\tif (!imagesList || !Array.isArray(imagesList) || imagesList.length === 0) {\n\t\t\treturn [{ add: true }];\n\t\t}\n\t\treturn imagesList;\n\t};\n\n\tsetImages = (imagesList, fieldId = null, callback = null) => {\n\t\tlet update = {};\n\t\tif (fieldId) {\n\t\t\tconst customFieldImages = _.cloneDeep(this.state.customFieldImages);\n\t\t\tcustomFieldImages[fieldId] = imagesList;\n\t\t\tupdate = { customFieldImages };\n\t\t} else {\n\t\t\tupdate = { images: imagesList };\n\t\t}\n\t\tthis.setState(update, callback);\n\t};\n\n\tgetImageUrls = (fieldId = null) => {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn _.filter(imagesList, (img) => {\n\t\t\treturn !img.uploading && !img.add;\n\t\t}).map((img) => {\n\t\t\treturn img.url;\n\t\t});\n\t};\n\n\twaitForThumbnails = () => {\n\t\tif (this.checkThumb) return;\n\n\t\tthis.checkThumb = setInterval(async () => {\n\t\t\tconst { imageFieldId } = this.state;\n\t\t\tconst imagesList = this.getImages(imageFieldId);\n\t\t\tconst imagesUpdate = [];\n\t\t\tawait Promise.all(\n\t\t\t\timagesList.map((image) => {\n\t\t\t\t\treturn new Promise(async (resolve) => {\n\t\t\t\t\t\tconst newImage = { ...image };\n\t\t\t\t\t\timagesUpdate.push(newImage);\n\t\t\t\t\t\tif (newImage.url && !newImage.thumbNailExists) {\n\t\t\t\t\t\t\tnewImage.uploading = false;\n\t\t\t\t\t\t\tnewImage.allowRetry = false;\n\t\t\t\t\t\t\tnewImage.thumbNailExists = await Helper.imageExists(\n\t\t\t\t\t\t\t\tnewImage.thumbNailUrl,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tresolve(newImage.thumbNailExists);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst thumbnailsExist = imagesUpdate.every(\n\t\t\t\t(image) => !image.url || image.thumbNailExists,\n\t\t\t);\n\t\t\tif (thumbnailsExist) {\n\t\t\t\tclearInterval(this.checkThumb);\n\t\t\t\tthis.checkThumb = null;\n\t\t\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t\t\t}\n\t\t}, 2000);\n\t};\n\n\tremoveImage = (index, fieldId) => {\n\t\tconst imagesUpdate = this.getImages(fieldId);\n\t\timagesUpdate.splice(index, 1);\n\n\t\tthis.setImages(imagesUpdate, fieldId);\n\t};\n\n\tgetDocuments = (fieldId) => {\n\t\tconst { customFieldDocuments } = this.state;\n\t\tconst documentsList = _.cloneDeep(customFieldDocuments[fieldId]) || [];\n\t\treturn documentsList;\n\t};\n\n\tsetDocuments = (documentsList, fieldId) => {\n\t\tlet update = {};\n\t\tconst customFieldDocuments = _.cloneDeep(this.state.customFieldDocuments);\n\t\tcustomFieldDocuments[fieldId] = documentsList;\n\t\tupdate = { customFieldDocuments };\n\t\tthis.setState(update);\n\t};\n\n\tgetDocumentAnswers = (fieldId) => {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn _.filter(documentsList, (doc) => {\n\t\t\treturn !doc.uploading && doc.url;\n\t\t}).map((doc) => {\n\t\t\treturn {\n\t\t\t\tname: doc.documentName,\n\t\t\t\text: doc.documentExt,\n\t\t\t\turl: doc.url,\n\t\t\t};\n\t\t});\n\t};\n\n\tremoveDocument = (index, fieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(fieldId);\n\t\tdocumentsUpdate.splice(index, 1);\n\n\t\tthis.setDocuments(documentsUpdate, fieldId);\n\t};\n\n\ttoggleFullscreenVideo = (url) => {\n\t\tif (typeof url !== \"string\") url = \"\";\n\t\tthis.setState({\n\t\t\tshowFullscreenVideo: url.length > 0,\n\t\t\tcurrentVideoUrl: url,\n\t\t});\n\t};\n\n\trenderImageUploader() {\n\t\treturn (\n\t\t\t<Components.ImageUploader\n\t\t\t\tref={(ref) => (this.imageUploader = ref)}\n\t\t\t\tonUploadStarted={this.onUploadStartedImage}\n\t\t\t\tonUploadSuccess={this.onUploadSuccessImage}\n\t\t\t\tonUploadFailed={this.onUploadFailedImage}\n\t\t\t\tonUploadProgress={this.onUploadProgressImage}\n\t\t\t\tonLibrarySelected={this.onLibrarySelectedImage}\n\t\t\t\tsize={{ width: 1400 }}\n\t\t\t\tquality={0.8}\n\t\t\t\tfileName={\"serviceImage\"}\n\t\t\t\tpopupTitle={\"Upload Image\"}\n\t\t\t\tuserId={this.props.uid}\n\t\t\t\tallowsEditing={false}\n\t\t\t\tmultiple\n\t\t\t\thideLibrary\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderImage(item, index, fieldId = null) {\n\t\tconst isVideoUrl = Helper.isVideo(item.url);\n\t\tconst imagesList = this.getImages(fieldId);\n\n\t\tif (item.add) {\n\t\t\treturn (\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tactiveOpacity={0.8}\n\t\t\t\t\tonPress={() => this.showUploadMenu(fieldId)}\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.imageCircle}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"camera\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.addImageIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableOpacity>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{item.uploading ? (\n\t\t\t\t\t<Components.ImageUploadProgress\n\t\t\t\t\t\tuploader={this.imageUploader}\n\t\t\t\t\t\timage={item}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<ImageBackground\n\t\t\t\t\t\tstyle={styles.imageBackground}\n\t\t\t\t\t\tsource={Helper.getImageSource(\n\t\t\t\t\t\t\titem.thumbNailExists ? item.thumbNailUrl : item.url,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{isVideoUrl && (\n\t\t\t\t\t\t\t<View style={styles.imagePlayContainer}>\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={this.toggleFullscreenVideo.bind(this, item.url)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"play\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\tonPress={() => this.removeImage(index, fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</ImageBackground>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocument(item, index, fieldId) {\n\t\tconst { colourBrandingMain } = this.props;\n\t\treturn (\n\t\t\t<View key={index} style={styles.documentContainer}>\n\t\t\t\t<View\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t...styles.documentTypeContainer,\n\t\t\t\t\t\tbackgroundColor: colourBrandingMain,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Text style={styles.documentTypeText}>{item.documentExt}</Text>\n\t\t\t\t</View>\n\t\t\t\t<Text\n\t\t\t\t\tstyle={styles.documentText}\n\t\t\t\t>{`${item.documentName}${item.uploading ? ` - ${item.uploadProgress}` : \"\"}`}</Text>\n\t\t\t\t{!item.uploading && (\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.removeDocumentButton}\n\t\t\t\t\t\tonPress={() => this.removeDocument(index, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\ticonStyle={{\n\t\t\t\t\t\t\t\t...styles.removeDocumentIcon,\n\t\t\t\t\t\t\t\tcolor: colourBrandingMain,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderSuccess() {\n\t\treturn (\n\t\t\t<View style={{ padding: 16, flex: 1, backgroundColor: \"#fff\" }}>\n\t\t\t\t<Text style={styles.requestSuccess}>\n\t\t\t\t\tYour request has been submitted. Thank you.\n\t\t\t\t</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderImageList(fieldId = null) {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageListContainer,\n\t\t\t\t\timagesList.length < 2 && styles.imageListContainerEmpty,\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t<FlatList\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tenableEmptySections\n\t\t\t\t\tdata={imagesList}\n\t\t\t\t\trenderItem={({ item, index }) =>\n\t\t\t\t\t\tthis.renderImage(item, index, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tkeyExtractor={(item, index) => index}\n\t\t\t\t\tnumColumns={3}\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocumentList(fieldId) {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn (\n\t\t\t<View style={styles.documentListContainer}>\n\t\t\t\t{documentsList.length > 0\n\t\t\t\t\t? documentsList.map((document, index) =>\n\t\t\t\t\t\t\tthis.renderDocument(document, index, fieldId),\n\t\t\t\t\t\t)\n\t\t\t\t\t: null}\n\t\t\t\t<Components.DocumentUploader\n\t\t\t\t\tbuttonTitle=\"Add Files\"\n\t\t\t\t\tallowedTypes={[\"application/pdf\"]}\n\t\t\t\t\tonUploadStarted={(uploadUri, uri, name, ext) =>\n\t\t\t\t\t\tthis.onUploadStartedDocument(uploadUri, uri, name, ext, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadProgress={(progress) =>\n\t\t\t\t\t\tthis.onUploadProgressDocument(progress, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadSuccess={(uri, uploadUri) =>\n\t\t\t\t\t\tthis.onUploadSuccessDocument(uri, uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadFailed={(uploadUri) =>\n\t\t\t\t\t\tthis.onUploadFailedDocument(uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tfileName=\"serviceDocument\"\n\t\t\t\t\tuserId={this.props.uid}\n\t\t\t\t\tdisabled={false}\n\t\t\t\t\tmultiple\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDateField(field, fieldId, sectionStyle) {\n\t\tlet displayText, placeHolder, icon, errorText;\n\t\tif (field.type === \"date\") {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"YYYY-MM-DD\").format(\"DD MMM YYYY\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"dd mmm yyyy\";\n\t\t\ticon = \"calendar\";\n\t\t\terrorText = \"Not a valid date\";\n\t\t} else {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"HH:mm\").format(\"h:mm a\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"--:-- --\";\n\t\t\ticon = \"clock-o\";\n\t\t\terrorText = \"Not a valid time\";\n\t\t}\n\n\t\treturn (\n\t\t\t<Components.GenericInputSection\n\t\t\t\tkey={fieldId}\n\t\t\t\tlabel={field.label}\n\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\trequired={field.mandatory}\n\t\t\t\tshowError={this.state.showError}\n\t\t\t\terrorText={errorText}\n\t\t\t>\n\t\t\t\t<View style={styles.dateContainer}>\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.dateFieldButton}\n\t\t\t\t\t\tonPress={() => this.onOpenDatePicker(field, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.dateFieldContainer}>\n\t\t\t\t\t\t\t<Text style={styles.dateText}>{displayText || placeHolder}</Text>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname={icon}\n\t\t\t\t\t\t\t\ticonStyle={styles.dateIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t{displayText ? (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.dateClearButton}\n\t\t\t\t\t\t\tonPress={() => this.onClearDate(fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname=\"times\"\n\t\t\t\t\t\t\t\ticonStyle={styles.removeIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t) : null}\n\t\t\t\t</View>\n\t\t\t</Components.GenericInputSection>\n\t\t);\n\t}\n\n\trenderField(field, fieldId) {\n\t\tconst sectionStyle = {\n\t\t\tmarginTop: fieldId === 0 ? 24 : 0,\n\t\t\tmarginBottom: 24,\n\t\t};\n\t\tswitch (field.type) {\n\t\t\tcase \"yn\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"toggle\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"multichoice\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"radio\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\toptions={field.values.map((o) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tLabel: o,\n\t\t\t\t\t\t\t\tValue: o,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"checkbox\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.values.map((o, i) => {\n\t\t\t\t\t\t\tconst isActive = field.answer && _.includes(field.answer, o);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={() => this.onChangeCheckboxAnswer(fieldId, o)}\n\t\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\t\tstyle={styles.multiChoiceOption}\n\t\t\t\t\t\t\t\t\thitSlop={{ top: 8, left: 8, bottom: 8, right: 8 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{isActive ? (\n\t\t\t\t\t\t\t\t\t\t<Components.TickIcon\n\t\t\t\t\t\t\t\t\t\t\tstyle={styles.tick}\n\t\t\t\t\t\t\t\t\t\t\tsize={20}\n\t\t\t\t\t\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<View style={styles.unticked} />\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<Text style={styles.multiChoiceText}>{o}</Text>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"text\":\n\t\t\tcase \"email\":\n\t\t\tcase \"phone\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tplaceholder={field.placeHolder}\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChangeText={(val) => this.onChangeAnswer(fieldId, val)}\n\t\t\t\t\t\teditable\n\t\t\t\t\t\tsquaredCorners\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\terrorText={field.type === \"email\" ? \"Not a valid email\" : undefined}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tautoCapitalize=\"sentences\"\n\t\t\t\t\t\tkeyboardType={this.keyboardTypes[field.type]}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"staticTitle\":\n\t\t\t\treturn (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.staticTitle,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\tsectionStyle,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.label}\n\t\t\t\t\t</Text>\n\t\t\t\t);\n\t\t\tcase \"staticText\":\n\t\t\t\treturn (\n\t\t\t\t\t<View key={fieldId} style={[styles.staticText, sectionStyle]}>\n\t\t\t\t\t\t{Helper.toParagraphed(field.label, styles.staticText)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\tcase \"date\":\n\t\t\tcase \"time\":\n\t\t\t\treturn this.renderDateField(field, fieldId, sectionStyle);\n\t\t\tcase \"image\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderImageList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"document\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderDocumentList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn null;\n\t\t}\n\t}\n\n\trenderCustomFields() {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return null;\n\n\t\treturn (\n\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t{customFields.map((field, i) => this.renderField(field, i))}\n\t\t\t</Components.FormCard>\n\t\t);\n\t}\n\n\trenderForm() {\n\t\tconst { customFields, loadingTypes } = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\n\t\tif (loadingTypes) {\n\t\t\treturn <Components.Spinner />;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={{ flex: 1 }}>\n\t\t\t\t<ScrollView\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tstyle={{ flex: 1 }}\n\t\t\t\t\tref={(ref) => (this.scrollContainer = ref)}\n\t\t\t\t>\n\t\t\t\t\t<View style={{ paddingBottom: 2 }}>\n\t\t\t\t\t\t<Components.LoadingIndicator visible={this.state.submitting} />\n\t\t\t\t\t\t{this.state.error && (\n\t\t\t\t\t\t\t<Text style={styles.errorText}>{this.state.error}</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t{/* PC-1255: User picker for on-behalf requests */}\n\t\t\t\t\t\t\t{this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Select User\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.selectedUser?.displayName}\n\t\t\t\t\t\t\t\t\thasContent\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please select a user.\"\n\t\t\t\t\t\t\t\t\tshowError={this.state.showError && !this.state.selectedUser}\n\t\t\t\t\t\t\t\t\tsectionStyle={{\n\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressUser}>\n\t\t\t\t\t\t\t\t\t\t<View style={styles.userPickerContainer}>\n\t\t\t\t\t\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\t\t\t\t\t\tProfilePic={this.state.selectedUser?.profilePic}\n\t\t\t\t\t\t\t\t\t\t\t\t\tDiameter={30}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t<Text style={styles.nameText}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.selectedUser?.displayName ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"Select User\"}\n\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfontSize: 20,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</Components.FormCardSection>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{/* PC-1255: Hide Name field when creating on behalf - name comes from selected user */}\n\t\t\t\t\t\t\t{!this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Name\"}\n\t\t\t\t\t\t\t\t\tplaceholder={\"Enter your name\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.userName}\n\t\t\t\t\t\t\t\t\tonChangeText={(userName) => this.onChangeName(userName)}\n\t\t\t\t\t\t\t\t\teditable={\n\t\t\t\t\t\t\t\t\t\tthis.props.userType === \"KIOSK\" &&\n\t\t\t\t\t\t\t\t\t\tthis.state.submitting === false\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\treturn this.state.userName.length > 1;\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please enter your name.\"\n\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.userName.length < 2\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Contact number\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter phone number\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.phone}\n\t\t\t\t\t\t\t\tonChangeText={(phone) => this.setState({ phone })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tkeyboardType={\"phone-pad\"}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Address\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter your address\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.roomNumber}\n\t\t\t\t\t\t\t\tonChangeText={(roomNumber) => this.setState({ roomNumber })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tthis.state.roomNumber && this.state.roomNumber.length > 1\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\terrorText=\"Please provide your address.\"\n\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t(!this.state.roomNumber || this.state.roomNumber.length < 2)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tmarginTop: 16,\n\t\t\t\t\t\t\t\tpaddingHorizontal: 24,\n\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>{values.textJobType}</Text>\n\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressType.bind(this)}>\n\t\t\t\t\t\t\t\t<View style={{ flexDirection: \"row\" }}>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain, marginRight: 16 },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{this.state.type}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ fontSize: 20, color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t{hasCustomFields ? (\n\t\t\t\t\t\t\tthis.renderCustomFields()\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Title\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Enter a title for your request\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.title}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(title) => this.setState({ title })}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\treturn this.state.title.length > 1;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide a title.\"\n\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.title.length < 2\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Description\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Describe your request here in detail\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.description}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(description) =>\n\t\t\t\t\t\t\t\t\t\t\tthis.setState({ description })\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\t\t\tstyle={{ marginTop: 16, paddingHorizontal: 24 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\t\t\t\t\t\tposition: \"relative\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome && {\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>\n\t\t\t\t\t\t\t\t\t\t\t{Config.env.strings.MAINTENANCE_HOME}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t<Switch\n\t\t\t\t\t\t\t\t\t\t\tvalue={this.state.isHome}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={this.state.submitting}\n\t\t\t\t\t\t\t\t\t\t\tonValueChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({ isHome: value })\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttrackColor={{\n\t\t\t\t\t\t\t\t\t\t\t\tfalse: \"#ddd\",\n\t\t\t\t\t\t\t\t\t\t\t\ttrue: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tthumbColor={Platform.OS === \"android\" ? \"#fff\" : null}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t{this.state.isHome && (\n\t\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\t\tlabel={\"Available times\"}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\t\t\t\t\t\"Describe your available times here in detail.\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttextValue={this.state.times}\n\t\t\t\t\t\t\t\t\t\t\tonChangeText={(times) => this.setState({ times })}\n\t\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn this.state.times.length > 1;\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide available times.\"\n\t\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.times.length < 2\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tminHeight={40}\n\t\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t{this.renderImageList()}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderRegisterConfirmation() {\n\t\treturn (\n\t\t\t<Components.ConfirmationPopup\n\t\t\t\tconfirmText={`${values.textEntityName} submitted`}\n\t\t\t\trepeatText={\"Submit another\"}\n\t\t\t\tvisible={this.state.confirmationToShow}\n\t\t\t\tonClose={this.onCloseConfirmationPopup.bind(this)}\n\t\t\t\tonPressAction={this.onConfirmationReset.bind(this)}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderVideoPlayerPopup() {\n\t\tconst { showFullscreenVideo, currentVideoUrl } = this.state;\n\t\tif (!currentVideoUrl) return;\n\n\t\treturn (\n\t\t\t<Components.VideoPopup\n\t\t\t\turi={currentVideoUrl}\n\t\t\t\tvisible={showFullscreenVideo}\n\t\t\t\tshowFullscreenButton={false}\n\t\t\t\tonClose={this.toggleFullscreenVideo}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderNoType() {\n\t\tif (!this.state.noType) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Components.WarningPopup\n\t\t\t\tconfirmText={\"No forms are available\"}\n\t\t\t\tinfoText={\"Check back later for forms.\"}\n\t\t\t\tvisible={this.state.noType}\n\t\t\t\tonClose={this.onPressBack.bind(this)}\n\t\t\t\tpadHorizontal\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { submitting, success, isDateTimePickerVisible, popUpType } =\n\t\t\tthis.state;\n\n\t\treturn (\n\t\t\t<KeyboardAvoidingView behavior={\"padding\"} style={styles.viewContainer}>\n\t\t\t\t{this.renderImageUploader()}\n\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t<Components.Header\n\t\t\t\t\t\tleftIcon=\"angle-left\"\n\t\t\t\t\t\tonPressLeft={this.onPressBack.bind(this)}\n\t\t\t\t\t\ttext={\n\t\t\t\t\t\t\tthis.props.strings[`${values.featureKey}_textFeatureTitle`] ||\n\t\t\t\t\t\t\tvalues.textFeatureTitle\n\t\t\t\t\t\t}\n\t\t\t\t\t\trightText={submitting || success ? null : \"Done\"}\n\t\t\t\t\t\tonPressRight={this.submitRequest.bind(this)}\n\t\t\t\t\t\tabsoluteRight\n\t\t\t\t\t/>\n\t\t\t\t\t{this.renderForm()}\n\t\t\t\t</View>\n\t\t\t\t{this.renderRegisterConfirmation()}\n\t\t\t\t{this.renderVideoPlayerPopup()}\n\t\t\t\t{this.renderNoType()}\n\t\t\t\t<DateTimePicker\n\t\t\t\t\tisVisible={isDateTimePickerVisible}\n\t\t\t\t\tonConfirm={this.onDateSelected}\n\t\t\t\t\tonCancel={() => this.setState({ isDateTimePickerVisible: false })}\n\t\t\t\t\tmode={popUpType}\n\t\t\t\t\theaderTextIOS={`Pick a ${popUpType}`}\n\t\t\t\t\tdate={new Date()}\n\t\t\t\t/>\n\t\t\t</KeyboardAvoidingView>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tviewContainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tcontainer: {\n\t\tflex: 1,\n\t\tposition: \"relative\",\n\t\tbackgroundColor: \"#f0f0f5\",\n\t},\n\terrorText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.COLOUR_TANGERINE,\n\t\tfontSize: 16,\n\t},\n\trequestSuccess: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARK,\n\t\tfontSize: 17,\n\t\ttextAlign: \"center\",\n\t},\n\tsectionTitle: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 17,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\timageListContainer: {\n\t\tmarginTop: 8,\n\t\tpadding: 8,\n\t\tflexDirection: \"row\",\n\t\tbackgroundColor: Colours.BOXGREY,\n\t\tminHeight: 106,\n\t},\n\timageListContainerEmpty: {\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tflexDirection: \"column\",\n\t},\n\tdocumentListContainer: {\n\t\tmarginTop: 8,\n\t\tflexDirection: \"column\",\n\t\talignItems: \"flex-start\",\n\t},\n\timageContainer: {\n\t\twidth: PHOTO_SIZE,\n\t\theight: PHOTO_SIZE,\n\t\tborderStyle: \"dashed\",\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderRadius: 4,\n\t\tmarginLeft: 8,\n\t},\n\timageContainerNotEmpty: {\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tbackgroundColor: \"#fff\",\n\t\tborderStyle: \"dashed\",\n\t},\n\timageBackground: {\n\t\tflex: 1,\n\t\theight: \"100%\",\n\t\twidth: \"100%\",\n\t\tborderRadius: 4,\n\t},\n\timageCircle: {\n\t\twidth: 90,\n\t\theight: 90,\n\t\tborderRadius: 45,\n\t\tbackgroundColor: Colours.PINKISH_GREY,\n\t\tjustifyContent: \"center\",\n\t},\n\taddImageIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 32,\n\t},\n\timagePlayContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageControlIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 20,\n\t\ttextShadowColor: \"rgba(0,0,0,0.3)\",\n\t\ttextShadowOffset: { width: 2, height: 2 },\n\t},\n\tremoveImage: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tright: 0,\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tstaticTitle: {\n\t\tfontSize: 20,\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tstaticText: {\n\t\tfontSize: 17,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tlineHeight: 24,\n\t},\n\tmultiChoiceOption: {\n\t\tmarginTop: 16,\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tminHeight: 20,\n\t},\n\tmultiChoiceText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\ttick: {\n\t\tmarginRight: 10,\n\t\tborderRadius: 4,\n\t},\n\tunticked: {\n\t\tmarginRight: 10,\n\t\twidth: 20,\n\t\theight: 20,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderWidth: 1,\n\t\tborderRadius: 4,\n\t},\n\tdateContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tdateFieldButton: {\n\t\tflex: 1,\n\t},\n\tdateFieldContainer: {\n\t\tflexDirection: \"row\",\n\t\tborderRadius: 2,\n\t\tbackgroundColor: \"#ebeff2\",\n\t\tpadding: 8,\n\t\tmarginTop: 8,\n\t},\n\tdateText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tdateIcon: {\n\t\tfontSize: 18,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdateClearButton: {\n\t\tpaddingLeft: 12,\n\t},\n\tremoveIcon: {\n\t\tfontSize: 26,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdocumentContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"space-between\",\n\t\tpaddingVertical: 4,\n\t},\n\tdocumentTypeContainer: {\n\t\twidth: 50,\n\t\theight: 60,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderRadius: 5,\n\t\tmarginRight: 8,\n\t},\n\tdocumentTypeText: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\ttextAlign: \"center\",\n\t},\n\tdocumentText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tremoveDocumentButton: {\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tmarginLeft: 8,\n\t},\n\tremoveDocumentIcon: {\n\t\tfontSize: 24,\n\t},\n\t// PC-1255: User picker styles\n\tuserPickerContainer: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t},\n\tprofileContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tnameText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARK,\n\t\tmarginLeft: 8,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\tconst { user, connection } = state;\n\tconst { displayName, profilePic, uid, site, unit, phoneNumber, permissions } =\n\t\tuser;\n\treturn {\n\t\tconnected: connection.connected,\n\t\tuserType: user.type,\n\t\tdisplayName,\n\t\tprofilePic,\n\t\tuid,\n\t\tsite,\n\t\tunit,\n\t\tphoneNumber,\n\t\tpermissions,\n\t\tcolourBrandingMain: Colours.getMainBrandingColourFromState(state),\n\t\tstrings: state.strings?.config || {},\n\t\toptionOnlyForResidents: Helper.getSiteSettingFromState(\n\t\t\tstate,\n\t\t\tvalues.optionOnlyForResidents,\n\t\t),\n\t};\n};\n\nexport default connect(mapStateToProps, { jobAdded })(MaintenanceRequest);\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plusscommunities/pluss-maintenance-app",
3
- "version": "8.0.13",
3
+ "version": "8.0.15-beta.0",
4
4
  "description": "Extension package to enable maintenance on Pluss Communities Platform",
5
5
  "main": "dist/module/index.js",
6
6
  "module": "dist/module/index.js",
@@ -648,6 +648,7 @@ class MaintenanceRequest extends Component {
648
648
  roomNumber,
649
649
  isHome,
650
650
  customFieldImages,
651
+ times,
651
652
  } = this.state;
652
653
  const hasCustomFields = customFields && customFields.length > 0;
653
654
  function showFormErrorAlert() {}