@plusscommunities/pluss-maintenance-app-forms 7.0.20 → 7.0.21

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.
Files changed (97) hide show
  1. package/dist/module/actions/JobActions.js +4 -4
  2. package/dist/module/actions/JobActions.js.map +1 -1
  3. package/dist/module/actions/index.js +1 -1
  4. package/dist/module/actions/index.js.map +1 -1
  5. package/dist/module/actions/types.js +1 -1
  6. package/dist/module/actions/types.js.map +1 -1
  7. package/dist/module/apis/index.js +3 -3
  8. package/dist/module/apis/index.js.map +1 -1
  9. package/dist/module/apis/maintenanceActions.js +36 -36
  10. package/dist/module/apis/maintenanceActions.js.map +1 -1
  11. package/dist/module/apis/userActions.js +5 -5
  12. package/dist/module/apis/userActions.js.map +1 -1
  13. package/dist/module/components/FilterPopupMenu.js +49 -49
  14. package/dist/module/components/FilterPopupMenu.js.map +1 -1
  15. package/dist/module/components/MaintenanceList.js +38 -38
  16. package/dist/module/components/MaintenanceList.js.map +1 -1
  17. package/dist/module/components/MaintenanceListItem.js +62 -62
  18. package/dist/module/components/MaintenanceListItem.js.map +1 -1
  19. package/dist/module/components/MaintenanceWidgetItem.js +27 -27
  20. package/dist/module/components/MaintenanceWidgetItem.js.map +1 -1
  21. package/dist/module/components/PrioritySelectorPopup.js +15 -15
  22. package/dist/module/components/PrioritySelectorPopup.js.map +1 -1
  23. package/dist/module/components/StatusSelectorPopup.js +16 -16
  24. package/dist/module/components/StatusSelectorPopup.js.map +1 -1
  25. package/dist/module/components/WidgetLarge.js +2 -2
  26. package/dist/module/components/WidgetLarge.js.map +1 -1
  27. package/dist/module/components/WidgetSmall.js +19 -19
  28. package/dist/module/components/WidgetSmall.js.map +1 -1
  29. package/dist/module/core.config.js +1 -1
  30. package/dist/module/core.config.js.map +1 -1
  31. package/dist/module/feature.config.js +17 -17
  32. package/dist/module/feature.config.js.map +1 -1
  33. package/dist/module/helper.js +10 -10
  34. package/dist/module/helper.js.map +1 -1
  35. package/dist/module/index.js +11 -11
  36. package/dist/module/index.js.map +1 -1
  37. package/dist/module/reducers/JobsReducer.js +13 -13
  38. package/dist/module/reducers/JobsReducer.js.map +1 -1
  39. package/dist/module/screens/JobTypePicker.js +17 -17
  40. package/dist/module/screens/JobTypePicker.js.map +1 -1
  41. package/dist/module/screens/MaintenancePage.js +10 -10
  42. package/dist/module/screens/MaintenancePage.js.map +1 -1
  43. package/dist/module/screens/MaintenanceUserPicker.js +129 -22
  44. package/dist/module/screens/MaintenanceUserPicker.js.map +1 -1
  45. package/dist/module/screens/RequestDetail.js +145 -145
  46. package/dist/module/screens/RequestDetail.js.map +1 -1
  47. package/dist/module/screens/RequestNotes.js +59 -59
  48. package/dist/module/screens/RequestNotes.js.map +1 -1
  49. package/dist/module/screens/ServiceRequest.js +187 -187
  50. package/dist/module/screens/ServiceRequest.js.map +1 -1
  51. package/dist/module/values.config.a.js +31 -31
  52. package/dist/module/values.config.a.js.map +1 -1
  53. package/dist/module/values.config.default.js +35 -35
  54. package/dist/module/values.config.default.js.map +1 -1
  55. package/dist/module/values.config.enquiry.js +35 -35
  56. package/dist/module/values.config.enquiry.js.map +1 -1
  57. package/dist/module/values.config.feedback.js +35 -35
  58. package/dist/module/values.config.feedback.js.map +1 -1
  59. package/dist/module/values.config.food.js +35 -35
  60. package/dist/module/values.config.food.js.map +1 -1
  61. package/dist/module/values.config.forms.js +34 -34
  62. package/dist/module/values.config.forms.js.map +1 -1
  63. package/dist/module/values.config.js +34 -34
  64. package/dist/module/values.config.js.map +1 -1
  65. package/package.json +52 -52
  66. package/src/actions/JobActions.js +67 -60
  67. package/src/actions/index.js +1 -1
  68. package/src/actions/types.js +1 -2
  69. package/src/apis/index.js +3 -3
  70. package/src/apis/maintenanceActions.js +189 -178
  71. package/src/apis/userActions.js +17 -17
  72. package/src/components/FilterPopupMenu.js +313 -256
  73. package/src/components/MaintenanceList.js +396 -317
  74. package/src/components/MaintenanceListItem.js +347 -288
  75. package/src/components/MaintenanceWidgetItem.js +145 -124
  76. package/src/components/PrioritySelectorPopup.js +81 -68
  77. package/src/components/StatusSelectorPopup.js +81 -70
  78. package/src/components/WidgetLarge.js +5 -5
  79. package/src/components/WidgetSmall.js +153 -133
  80. package/src/core.config.js +27 -3
  81. package/src/feature.config.js +62 -62
  82. package/src/helper.js +58 -53
  83. package/src/index.js +22 -22
  84. package/src/reducers/JobsReducer.js +85 -66
  85. package/src/screens/JobTypePicker.js +115 -92
  86. package/src/screens/MaintenancePage.js +89 -80
  87. package/src/screens/MaintenanceUserPicker.js +262 -99
  88. package/src/screens/RequestDetail.js +1345 -1125
  89. package/src/screens/RequestNotes.js +946 -805
  90. package/src/screens/ServiceRequest.js +1773 -1557
  91. package/src/values.config.a.js +34 -34
  92. package/src/values.config.default.js +40 -40
  93. package/src/values.config.enquiry.js +40 -40
  94. package/src/values.config.feedback.js +40 -40
  95. package/src/values.config.food.js +40 -40
  96. package/src/values.config.forms.js +39 -39
  97. package/src/values.config.js +39 -39
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","Dimensions","Platform","KeyboardAvoidingView","ScrollView","Text","TouchableOpacity","View","Switch","FlatList","ImageBackground","Keyboard","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","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","connected","message","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","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","disabled","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","fontFamily","COLOUR_TANGERINE","TEXT_DARK","textAlign","BOXGREY","documentListContainer","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 {\n Dimensions,\n Platform,\n KeyboardAvoidingView,\n ScrollView,\n Text,\n TouchableOpacity,\n View,\n Switch,\n FlatList,\n ImageBackground,\n Keyboard,\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 constructor(props) {\n super(props);\n this.state = {\n submitting: false,\n success: false,\n fail: false,\n error: null,\n showError: false,\n loadingTypes: values.forceCustomFields,\n\n userName: '',\n roomNumber: '',\n phone: '',\n title: '',\n description: '',\n times: '',\n\n type: 'General',\n\n uploadingImage: false,\n images: [\n {\n add: true,\n },\n ],\n showFullscreenVideo: false,\n currentVideoUrl: '',\n\n isHome: false,\n\n types: [],\n\n confirmationToShow: false,\n\n customFields: [],\n customFieldImages: {},\n customFieldDocuments: {},\n isDateTimePickerVisible: false,\n popUpType: 'date',\n dateFieldId: null,\n imageFieldId: null,\n\n // PC-1255: On-behalf request fields\n canCreateOnBehalf: false,\n selectedUser: null,\n users: [],\n };\n this.checkThumb = null;\n this.keyboardTypes = {\n phone: 'phone-pad',\n email: 'email-address',\n text: 'default',\n };\n }\n\n componentDidMount() {\n this.checkUserPermissions();\n this.getJobTypes();\n }\n\n checkUserPermissions = async () => {\n // PC-1255: Check if user has userManagement permission\n const hasUserManagement = this.props.permissions?.includes('userManagement') || false;\n\n if (hasUserManagement) {\n this.setState({ canCreateOnBehalf: true });\n // Load site users for picker\n await this.loadSiteUsers();\n } else {\n // Default to logged-in user for non-staff or staff without permission\n this.setDefaultUser();\n }\n };\n\n loadSiteUsers = async () => {\n try {\n const response = await userActions.getSiteUsers(this.props.site);\n\n let items = response.data.Items || [];\n if (this.props.optionOnlyForResidents) {\n items = _.filter(items, u => u.category === 'resident');\n }\n\n const users = _.sortBy(items, u => (u.displayName || '').toLowerCase());\n this.setState({ users });\n } catch (error) {\n console.log('Error loading site users:', error);\n // Fall back to default user if loading fails\n this.setDefaultUser();\n }\n };\n\n setDefaultUser = () => {\n if (this.props.userType !== 'KIOSK') {\n const defaultUser = {\n userId: this.props.uid,\n displayName: this.props.displayName,\n profilePic: this.props.profilePic,\n };\n this.setState({\n selectedUser: defaultUser,\n userName: this.props.displayName,\n roomNumber: this.props.unit,\n phone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : '',\n });\n }\n };\n\n componentWillUnmount() {\n clearInterval(this.checkThumb);\n }\n\n onChangeName = userName => {\n const update = { userName };\n if (!this.state.customFields || !_.some(this.state.customFields, 'isTitle')) {\n update.title = userName;\n }\n this.setState(update);\n };\n\n // PC-1255: Handle user picker navigation\n onPressUser = () => {\n const { users, selectedUser } = this.state;\n if (!users || users.length === 0) return;\n\n Services.navigation.navigate(values.screenUserPicker, {\n currentUser: selectedUser,\n users,\n onSelectUser: this.onSelectUser.bind(this),\n });\n };\n\n // PC-1255: Handle user selection and auto-populate contact details\n onSelectUser = async user => {\n const update = {\n selectedUser: user,\n userName: user.displayName,\n };\n\n // PC-1255: Try to fetch full user details for auto-population\n try {\n // getSiteUsers returns 'Id', but fetchUser expects 'userId'\n const userId = user.userId || user.Id;\n const response = await userActions.fetchUser(this.props.site, userId);\n if (response.data && response.data.user) {\n const userDetails = response.data.user;\n if (userDetails.phoneNumber) {\n update.phone = userDetails.phoneNumber;\n }\n if (userDetails.unit) {\n update.roomNumber = userDetails.unit;\n }\n if (!this.state.customFields || !_.some(this.state.customFields, 'isTitle')) {\n update.title = userDetails.displayName || null;\n }\n }\n } catch (error) {\n // Permission denied (403) or other error - continue without auto-population\n // User can still manually enter contact details\n console.log('Could not fetch user details for auto-population:', error);\n } finally {\n // In any case, we still need a title. Inform the user to set one form field as a title.\n if (!state.title && !update.title) {\n update.title = '[Missing title - Set one of the form field as title in the community manager]';\n }\n }\n this.setState(update);\n };\n\n onChangeAnswer = (fieldId, answer) => {\n const update = { customFields: _.cloneDeep(this.state.customFields) };\n const field = update.customFields[fieldId];\n field.answer = answer;\n if (field.isTitle) update.title = field.answer;\n this.setState(update);\n };\n\n onChangeToggleAnswer = (fieldId, answer) => {\n const update = { customFields: _.cloneDeep(this.state.customFields) };\n const field = update.customFields[fieldId];\n field.answer = field.answer === answer ? undefined : answer;\n if (field.isTitle) update.title = field.answer;\n this.setState(update);\n };\n\n onChangeCheckboxAnswer = (fieldId, answer) => {\n const update = { customFields: _.cloneDeep(this.state.customFields) };\n const field = update.customFields[fieldId];\n field.answer = _.xor(field.answer || [], [answer]);\n if (field.isTitle) update.title = field.answer.join(', ');\n this.setState(update);\n };\n\n onOpenDatePicker = (field, fieldId) => {\n Keyboard.dismiss();\n this.setState({ dateFieldId: fieldId, popUpType: field.type, isDateTimePickerVisible: true });\n };\n\n onClearDate = fieldId => {\n const update = { customFields: _.cloneDeep(this.state.customFields) };\n const field = update.customFields[fieldId];\n field.answer = undefined;\n if (field.isTitle) update.title = field.answer;\n this.setState(update);\n };\n\n onDateSelected = date => {\n const { customFields, dateFieldId, popUpType } = this.state;\n const update = { customFields: _.cloneDeep(customFields), isDateTimePickerVisible: false, fieldId: null };\n const field = update.customFields[dateFieldId];\n const dateObj = moment(date);\n if (popUpType === 'date') {\n field.answer = dateObj.format('YYYY-MM-DD');\n if (field.isTitle) update.title = dateObj.format('DD MMM YYYY');\n } else {\n field.answer = dateObj.format('HH:mm');\n if (field.isTitle) update.title = dateObj.format('h:mm a');\n }\n this.setState(update);\n };\n\n onUploadStartedImage = (uploadUri, imageUri) => {\n const { imageFieldId } = this.state;\n const imagesUpdate = this.getImages(imageFieldId);\n imagesUpdate.splice(imagesUpdate.length - 1, 0, {\n uploading: true,\n uploadProgress: '0%',\n uploadUri,\n imageUri,\n allowRetry: true,\n });\n\n this.setImages(imagesUpdate, imageFieldId);\n };\n\n onUploadProgressImage = progress => {\n const { imageFieldId } = this.state;\n const imagesUpdate = this.getImages(imageFieldId);\n imagesUpdate.map(img => {\n if (img.uploadUri === progress.uri) {\n img.uploadProgress = progress.percentage;\n img.uploading = true;\n img.allowRetry = true;\n }\n });\n\n this.setImages(imagesUpdate, imageFieldId);\n };\n\n onUploadSuccessImage = async (uri, uploadUri) => {\n const { imageFieldId } = this.state;\n const imagesUpdate = this.getImages(imageFieldId);\n imagesUpdate.map(img => {\n if (img.uploadUri === uploadUri && img.uploading) {\n img.url = uri.replace('/general/', '/general1400/');\n img.thumbNailExists = false;\n img.thumbNailUrl = Helper.getThumb300(img.url);\n img.allowRetry = true;\n }\n });\n\n this.setImages(imagesUpdate, imageFieldId, () => this.waitForThumbnails());\n };\n\n onUploadFailedImage = uploadUri => {\n const { imageFieldId } = this.state;\n const imagesUpdate = this.getImages(imageFieldId);\n imagesUpdate.map(img => {\n if (img.uploadUri === uploadUri) {\n img.uploading = true; // Requried for retry\n img.uploadProgress = '';\n img.allowRetry = true;\n }\n });\n\n this.setImages(imagesUpdate, imageFieldId);\n };\n\n onLibrarySelected = uri => {\n const { imageFieldId } = this.state;\n const imagesUpdate = this.getImages(imageFieldId);\n imagesUpdate.splice(imagesUpdate.length - 1, 0, {\n uploading: false,\n allowRetry: false,\n url: Helper.get1400(uri),\n thumbNailExists: true,\n thumbNailUrl: Helper.getThumb300(uri),\n });\n\n this.setImages(imagesUpdate, imageFieldId);\n };\n\n onUploadStartedDocument = (uploadUri, documentUri, documentName, documentExt, documentFieldId) => {\n const documentsUpdate = this.getDocuments(documentFieldId);\n documentsUpdate.splice(documentsUpdate.length - 1, 0, {\n uploading: true,\n uploadProgress: '0%',\n uploadUri,\n documentUri,\n documentName,\n documentExt,\n allowRetry: true,\n });\n\n this.setDocuments(documentsUpdate, documentFieldId);\n };\n\n onUploadProgressDocument = (progress, documentFieldId) => {\n const documentsUpdate = this.getDocuments(documentFieldId);\n documentsUpdate.map(doc => {\n if (doc.uploadUri === progress.uri) {\n doc.uploadProgress = progress.percentage;\n doc.uploading = true;\n doc.allowRetry = true;\n }\n });\n\n this.setDocuments(documentsUpdate, documentFieldId);\n };\n\n onUploadSuccessDocument = async (uri, uploadUri, documentFieldId) => {\n const documentsUpdate = this.getDocuments(documentFieldId);\n documentsUpdate.map(doc => {\n if (doc.uploadUri === uploadUri && doc.uploading) {\n doc.uploading = false;\n doc.uploadProgress = '100%';\n doc.url = uri;\n doc.allowRetry = true;\n }\n });\n\n this.setDocuments(documentsUpdate, documentFieldId);\n };\n\n onUploadFailedDocument = (uploadUri, documentFieldId) => {\n const documentsUpdate = this.getDocuments(documentFieldId);\n documentsUpdate.map(doc => {\n if (doc.uploadUri === uploadUri) {\n doc.uploading = true; // Requried for retry\n doc.uploadProgress = '';\n doc.allowRetry = true;\n }\n });\n\n this.setDocuments(documentsUpdate, documentFieldId);\n };\n\n onPressBack() {\n Services.navigation.goBack();\n }\n\n onPressType() {\n Services.navigation.navigate(values.screenJobTypePicker, {\n currentType: this.state.type,\n types: this.state.types,\n onSelectType: this.pickType.bind(this),\n });\n }\n\n onCloseConfirmationPopup() {\n this.setState({\n confirmationToShow: false,\n });\n Services.navigation.goBack();\n this.props.onBack && this.props.onBack();\n }\n\n onConfirmationReset() {\n this.setState(\n {\n confirmationToShow: false,\n title: '',\n description: '',\n times: '',\n isHome: false,\n uploadingImage: false,\n images: [\n {\n add: true,\n },\n ],\n submitting: false,\n success: false,\n fail: false,\n customFields: [],\n customFieldImages: {},\n customFieldDocuments: {},\n isDateTimePickerVisible: false,\n popUpType: 'date',\n dateFieldId: null,\n imageFieldId: null,\n },\n () => this.pickType(this.state.type),\n );\n }\n\n isFieldValid = (field, fieldId) => {\n const { mandatory, type, answer } = field;\n if (['staticTitle', 'staticText'].includes(type)) return true;\n\n const checkMandatory = () => {\n if (!mandatory) return true;\n switch (type) {\n case 'yn':\n return _.isBoolean(answer);\n case 'image':\n const imagesList = this.getImageUrls(fieldId);\n return imagesList.length > 0;\n case 'document':\n const documentsList = this.getDocumentAnswers(fieldId);\n return documentsList.length > 0;\n case 'checkbox':\n return _.isArray(answer) && answer.length > 0;\n default:\n return !_.isNil(answer) && !_.isEmpty(answer);\n }\n };\n const checkFormat = () => {\n if (_.isNil(answer) || _.isEmpty(answer)) return true;\n switch (type) {\n case 'email':\n return Helper.isEmail(answer);\n case 'date':\n return moment(answer, 'YYYY-MM-DD', true).isValid();\n case 'time':\n return moment(answer, 'HH:mm', true).isValid();\n default:\n return true;\n }\n };\n\n const valid = checkMandatory() && checkFormat();\n return valid;\n };\n\n getJobTypes() {\n maintenanceActions\n .getJobTypes(Helper.getSite(this.props.site))\n .then(res => {\n this.setState({\n types: res.data,\n });\n this.getDefaultJob();\n })\n .catch(() => {});\n }\n\n pickType(type) {\n const { types } = this.state;\n const selected = types.find(t => t.typeName === type) || {};\n if (values.forceCustomFields && !selected.hasCustomFields) {\n this.setState({\n type,\n customFields: [],\n noType: true,\n });\n return;\n }\n const update = {\n type,\n customFields: selected.hasCustomFields && selected.customFields.length > 0 ? _.cloneDeep(selected.customFields) : [],\n loadingTypes: false,\n };\n\n if (!_.isEmpty(update.customFields) && !_.some(update.customFields, 'isTitle')) {\n update.title = this.state.userName;\n }\n\n this.setState(update);\n }\n\n getDefaultJob() {\n const { types, jobId } = this.state;\n if (types.length !== 0 && jobId == null) {\n const defaultType = types[0];\n this.pickType(defaultType.typeName);\n }\n }\n\n showUploadMenu = fieldId => {\n Keyboard.dismiss();\n if (this.state.uploadingImage || this.state.submitting) {\n return;\n }\n if (fieldId) this.setState({ imageFieldId: fieldId });\n this.imageUploader.showUploadMenu();\n };\n\n submit = async () => {\n this.setState({ submitting: true });\n\n let description = this.state.description;\n\n if (this.state.isHome) {\n description = description + `. -- Times Available: ${this.state.times}`;\n }\n\n setTimeout(() => {\n this.scrollContainer.scrollTo({ y: 0 });\n }, 100);\n\n const images = this.getImageUrls();\n\n // Fix custom images field answers\n const customFields = _.cloneDeep(this.state.customFields);\n const updatedCustomFields = customFields.map((field, fieldId) => {\n if (field.type === 'image') field.answer = this.getImageUrls(fieldId);\n if (field.type === 'document') field.answer = this.getDocumentAnswers(fieldId);\n return field;\n });\n\n maintenanceActions\n .sendMaintenanceRequest(\n this.props.uid,\n this.state.userName,\n this.state.phone,\n this.state.roomNumber,\n this.state.title,\n description,\n null,\n this.state.type,\n images,\n Helper.getSite(this.props.site),\n this.state.isHome,\n this.state.times,\n updatedCustomFields,\n )\n .then(res => {\n if (res.data.success) {\n this.refreshRequest(res.data.searchResult);\n if (this.props.onSubmissionSuccess) this.props.onSubmissionSuccess(res.data);\n this.setState({\n submitting: false,\n success: true,\n confirmationToShow: true,\n });\n } else {\n this.setState({\n submitting: false,\n });\n }\n })\n .catch(err => {\n console.log('maintenance submission fail.');\n console.log(err);\n this.setState({\n submitting: false,\n });\n });\n };\n\n refreshRequest = async id => {\n try {\n const job = await maintenanceActions.getJob(Helper.getSite(this.props.site), id);\n this.props.jobAdded(job.data);\n } catch (error) {\n console.log('refreshRequest error', error);\n }\n };\n\n validateCustomFields = () => {\n const { customFields } = this.state;\n if (!customFields || customFields.length === 0) return true;\n\n return customFields.every((field, index) => {\n const isValid = this.isFieldValid(field, index);\n return isValid;\n });\n };\n\n submitRequest() {\n const { customFields, submitting, uploadingImage, title, roomNumber, isHome, times } = this.state;\n const hasCustomFields = customFields && customFields.length > 0;\n\n if (submitting || !this.props.connected) {\n if (!this.props.connected) {\n this.setState({ error: { message: 'No internet connection detected' } });\n }\n return;\n }\n if (uploadingImage) return;\n\n this.setState({ error: null, showError: false });\n\n // PC-1255: Validate user selection for on-behalf requests\n if (this.state.canCreateOnBehalf && !this.state.selectedUser) {\n console.log('submitRequest - no user selected for on-behalf request');\n this.setState({ showError: true });\n return;\n }\n\n if (title.length === 0 || !roomNumber || roomNumber.length === 0) {\n console.log('submitRequest - error', { title, roomNumber });\n this.setState({ showError: true });\n return;\n }\n if (hasCustomFields) {\n if (!this.validateCustomFields()) {\n console.log('submitRequest - custom fields error');\n this.setState({ showError: true });\n return;\n }\n } else {\n if (isHome && times.length < 2) {\n console.log('submitRequest - error', { isHome, times });\n this.setState({ showError: true });\n return;\n }\n }\n this.submit();\n }\n\n getImages = (fieldId = null) => {\n const { images, customFieldImages } = this.state;\n const imagesList = _.cloneDeep(fieldId ? customFieldImages[fieldId] : images);\n if (!imagesList || !Array.isArray(imagesList) || imagesList.length === 0) {\n return [{ add: true }];\n }\n return imagesList;\n };\n\n setImages = (imagesList, fieldId = null, callback = null) => {\n let update = {};\n if (fieldId) {\n const customFieldImages = _.cloneDeep(this.state.customFieldImages);\n customFieldImages[fieldId] = imagesList;\n update = { customFieldImages };\n } else {\n update = { images: imagesList };\n }\n this.setState(update, callback);\n };\n\n getImageUrls = (fieldId = null) => {\n const imagesList = this.getImages(fieldId);\n return _.filter(imagesList, img => {\n return !img.uploading && !img.add;\n }).map(img => {\n return img.url;\n });\n };\n\n waitForThumbnails = () => {\n if (this.checkThumb) return;\n\n this.checkThumb = setInterval(async () => {\n const { imageFieldId } = this.state;\n const imagesList = this.getImages(imageFieldId);\n const imagesUpdate = [];\n await Promise.all(\n imagesList.map(image => {\n return new Promise(async resolve => {\n const newImage = { ...image };\n imagesUpdate.push(newImage);\n if (newImage.url && !newImage.thumbNailExists) {\n newImage.uploading = false;\n newImage.allowRetry = false;\n newImage.thumbNailExists = await Helper.imageExists(newImage.thumbNailUrl);\n resolve(newImage.thumbNailExists);\n }\n resolve(true);\n });\n }),\n );\n const thumbnailsExist = imagesUpdate.every(image => !image.url || image.thumbNailExists);\n if (thumbnailsExist) {\n clearInterval(this.checkThumb);\n this.checkThumb = null;\n this.setImages(imagesUpdate, imageFieldId);\n }\n }, 2000);\n };\n\n removeImage = (index, fieldId) => {\n const imagesUpdate = this.getImages(fieldId);\n imagesUpdate.splice(index, 1);\n\n this.setImages(imagesUpdate, fieldId);\n };\n\n getDocuments = fieldId => {\n const { customFieldDocuments } = this.state;\n const documentsList = _.cloneDeep(customFieldDocuments[fieldId]) || [];\n return documentsList;\n };\n\n setDocuments = (documentsList, fieldId) => {\n let update = {};\n const customFieldDocuments = _.cloneDeep(this.state.customFieldDocuments);\n customFieldDocuments[fieldId] = documentsList;\n update = { customFieldDocuments };\n this.setState(update);\n };\n\n getDocumentAnswers = fieldId => {\n const documentsList = this.getDocuments(fieldId);\n return _.filter(documentsList, doc => {\n return !doc.uploading && doc.url;\n }).map(doc => {\n return {\n name: doc.documentName,\n ext: doc.documentExt,\n url: doc.url,\n };\n });\n };\n\n removeDocument = (index, fieldId) => {\n const documentsUpdate = this.getDocuments(fieldId);\n documentsUpdate.splice(index, 1);\n\n this.setDocuments(documentsUpdate, fieldId);\n };\n\n toggleFullscreenVideo = url => {\n if (typeof url !== 'string') url = '';\n this.setState({ showFullscreenVideo: url.length > 0, currentVideoUrl: url });\n };\n\n renderImageUploader() {\n return (\n <Components.ImageUploader\n ref={ref => (this.imageUploader = ref)}\n onUploadStarted={this.onUploadStartedImage}\n onUploadSuccess={this.onUploadSuccessImage}\n onUploadFailed={this.onUploadFailedImage}\n onUploadProgress={this.onUploadProgressImage}\n onLibrarySelected={this.onLibrarySelectedImage}\n size={{ width: 1400 }}\n quality={0.8}\n fileName={'serviceImage'}\n popupTitle={'Upload Image'}\n userId={this.props.uid}\n allowsEditing={false}\n multiple\n hideLibrary\n />\n );\n }\n\n renderImage(item, index, fieldId = null) {\n const isVideoUrl = Helper.isVideo(item.url);\n const imagesList = this.getImages(fieldId);\n\n if (item.add) {\n return (\n <TouchableOpacity activeOpacity={0.8} onPress={() => this.showUploadMenu(fieldId)}>\n <View\n style={[\n styles.imageContainer,\n imagesList.length > 1 && styles.imageContainerNotEmpty,\n index % 3 === 0 && { marginLeft: 0 },\n index > 2 && { marginTop: 8 },\n ]}\n >\n <View style={styles.imageCircle}>\n <Icon name=\"camera\" type=\"font-awesome\" iconStyle={styles.addImageIcon} />\n </View>\n </View>\n </TouchableOpacity>\n );\n }\n return (\n <View\n style={[\n styles.imageContainer,\n imagesList.length > 1 && styles.imageContainerNotEmpty,\n index % 3 === 0 && { marginLeft: 0 },\n index > 2 && { marginTop: 8 },\n ]}\n >\n {item.uploading ? (\n <Components.ImageUploadProgress uploader={this.imageUploader} image={item} color={this.props.colourBrandingMain} />\n ) : (\n <ImageBackground\n style={styles.imageBackground}\n source={Helper.getImageSource(item.thumbNailExists ? item.thumbNailUrl : item.url)}\n >\n {isVideoUrl && (\n <View style={styles.imagePlayContainer}>\n <TouchableOpacity onPress={this.toggleFullscreenVideo.bind(this, item.url)}>\n <Icon name=\"play\" type=\"font-awesome\" iconStyle={styles.imageControlIcon} />\n </TouchableOpacity>\n </View>\n )}\n <TouchableOpacity style={styles.removeImage} onPress={() => this.removeImage(index, fieldId)}>\n <Icon name=\"remove\" type=\"font-awesome\" iconStyle={styles.imageControlIcon} style={styles.removeImage} />\n </TouchableOpacity>\n </ImageBackground>\n )}\n </View>\n );\n }\n\n renderDocument(item, index, fieldId) {\n const { colourBrandingMain } = this.props;\n return (\n <View key={index} style={styles.documentContainer}>\n <View style={{ ...styles.documentTypeContainer, backgroundColor: colourBrandingMain }}>\n <Text style={styles.documentTypeText}>{item.documentExt}</Text>\n </View>\n <Text style={styles.documentText}>{`${item.documentName}${item.uploading ? ` - ${item.uploadProgress}` : ''}`}</Text>\n {!item.uploading && (\n <TouchableOpacity style={styles.removeDocumentButton} onPress={() => this.removeDocument(index, fieldId)}>\n <Icon name=\"remove\" type=\"font-awesome\" iconStyle={{ ...styles.removeDocumentIcon, color: colourBrandingMain }} />\n </TouchableOpacity>\n )}\n </View>\n );\n }\n\n renderSuccess() {\n return (\n <View style={{ padding: 16, flex: 1, backgroundColor: '#fff' }}>\n <Text style={styles.requestSuccess}>Your request has been submitted. Thank you.</Text>\n </View>\n );\n }\n\n renderImageList(fieldId = null) {\n const imagesList = this.getImages(fieldId);\n return (\n <View style={[styles.imageListContainer, imagesList.length < 2 && styles.imageListContainerEmpty]}>\n <FlatList\n keyboardShouldPersistTaps=\"always\"\n enableEmptySections\n data={imagesList}\n renderItem={({ item, index }) => this.renderImage(item, index, fieldId)}\n keyExtractor={(item, index) => index}\n numColumns={3}\n />\n </View>\n );\n }\n\n // renderDocumentList(fieldId) {\n // const documentsList = this.getDocuments(fieldId);\n // return (\n // <View style={styles.documentListContainer}>\n // {documentsList.length > 0 ? documentsList.map((document, index) => this.renderDocument(document, index, fieldId)) : null}\n // <Components.DocumentUploader\n // buttonTitle=\"Add Files\"\n // allowedTypes={['application/pdf']}\n // onUploadStarted={(uploadUri, uri, name, ext) => this.onUploadStartedDocument(uploadUri, uri, name, ext, fieldId)}\n // onUploadProgress={progress => this.onUploadProgressDocument(progress, fieldId)}\n // onUploadSuccess={(uri, uploadUri) => this.onUploadSuccessDocument(uri, uploadUri, fieldId)}\n // onUploadFailed={uploadUri => this.onUploadFailedDocument(uploadUri, fieldId)}\n // fileName=\"serviceDocument\"\n // userId={this.props.uid}\n // disabled={false}\n // multiple\n // />\n // </View>\n // );\n // }\n\n renderDateField(field, fieldId, sectionStyle) {\n let displayText, placeHolder, icon, errorText;\n if (field.type === 'date') {\n displayText = field.answer ? moment(field.answer, 'YYYY-MM-DD').format('DD MMM YYYY') : '';\n placeHolder = 'dd mmm yyyy';\n icon = 'calendar';\n errorText = 'Not a valid date';\n } else {\n displayText = field.answer ? moment(field.answer, 'HH:mm').format('h:mm a') : '';\n placeHolder = '--:-- --';\n icon = 'clock-o';\n errorText = 'Not a valid time';\n }\n\n return (\n <Components.GenericInputSection\n key={fieldId}\n label={field.label}\n sectionStyle={sectionStyle}\n isValid={() => this.isFieldValid(field, fieldId)}\n required={field.mandatory}\n showError={this.state.showError}\n errorText={errorText}\n >\n <View style={styles.dateContainer}>\n <TouchableOpacity style={styles.dateFieldButton} onPress={() => this.onOpenDatePicker(field, fieldId)}>\n <View style={styles.dateFieldContainer}>\n <Text style={styles.dateText}>{displayText || placeHolder}</Text>\n <Icon type=\"font-awesome\" name={icon} iconStyle={styles.dateIcon} />\n </View>\n </TouchableOpacity>\n {displayText ? (\n <TouchableOpacity style={styles.dateClearButton} onPress={() => this.onClearDate(fieldId)}>\n <Icon type=\"font-awesome\" name=\"times\" iconStyle={styles.removeIcon} />\n </TouchableOpacity>\n ) : null}\n </View>\n </Components.GenericInputSection>\n );\n }\n\n renderField(field, fieldId) {\n const sectionStyle = { marginTop: fieldId === 0 ? 24 : 0, marginBottom: 24 };\n switch (field.type) {\n case 'yn':\n return (\n <Components.GenericInputSection\n key={fieldId}\n label={field.label}\n sectionStyle={sectionStyle}\n inputType=\"toggle\"\n value={field.answer}\n onChange={answer => this.onChangeToggleAnswer(fieldId, answer)}\n isValid={() => this.isFieldValid(field, fieldId)}\n showError={this.state.showError}\n required={field.mandatory}\n />\n );\n case 'multichoice':\n return (\n <Components.GenericInputSection\n key={fieldId}\n label={field.label}\n sectionStyle={sectionStyle}\n inputType=\"radio\"\n value={field.answer}\n onChange={answer => this.onChangeToggleAnswer(fieldId, answer)}\n options={field.values.map(o => {\n return {\n Label: o,\n Value: o,\n };\n })}\n isValid={() => this.isFieldValid(field, fieldId)}\n showError={this.state.showError}\n required={field.mandatory}\n />\n );\n case 'checkbox':\n return (\n <Components.GenericInputSection\n key={fieldId}\n label={field.label}\n sectionStyle={sectionStyle}\n isValid={() => this.isFieldValid(field, fieldId)}\n showError={this.state.showError}\n required={field.mandatory}\n >\n {field.values.map((o, i) => {\n const isActive = field.answer && _.includes(field.answer, o);\n return (\n <TouchableOpacity\n onPress={() => this.onChangeCheckboxAnswer(fieldId, o)}\n key={i}\n style={styles.multiChoiceOption}\n hitSlop={{ top: 8, left: 8, bottom: 8, right: 8 }}\n >\n {isActive ? (\n <Components.TickIcon style={styles.tick} size={20} color={this.props.colourBrandingMain} />\n ) : (\n <View style={styles.unticked} />\n )}\n <Text style={styles.multiChoiceText}>{o}</Text>\n </TouchableOpacity>\n );\n })}\n </Components.GenericInputSection>\n );\n case 'text':\n case 'email':\n case 'phone':\n return (\n <Components.GenericInputSection\n key={fieldId}\n label={field.label}\n placeholder={field.placeHolder}\n value={field.answer}\n onChangeText={val => this.onChangeAnswer(fieldId, val)}\n editable\n squaredCorners\n isValid={() => this.isFieldValid(field, fieldId)}\n showError={this.state.showError}\n errorText={field.type === 'email' ? 'Not a valid email' : undefined}\n required={field.mandatory}\n sectionStyle={sectionStyle}\n autoCapitalize=\"sentences\"\n keyboardType={this.keyboardTypes[field.type]}\n />\n );\n case 'staticTitle':\n return (\n <Text key={fieldId} style={[styles.staticTitle, { color: this.props.colourBrandingMain }, sectionStyle]}>\n {field.label}\n </Text>\n );\n case 'staticText':\n return (\n <View key={fieldId} style={[styles.staticText, sectionStyle]}>\n {Helper.toParagraphed(field.label, styles.staticText)}\n </View>\n );\n case 'date':\n case 'time':\n return this.renderDateField(field, fieldId, sectionStyle);\n case 'image':\n return (\n <Components.GenericInputSection\n key={fieldId}\n label={field.label}\n sectionStyle={sectionStyle}\n isValid={() => this.isFieldValid(field, fieldId)}\n required={field.mandatory}\n showError={this.state.showError}\n >\n {this.renderImageList(fieldId)}\n </Components.GenericInputSection>\n );\n // case 'document':\n // return (\n // <Components.GenericInputSection\n // key={fieldId}\n // label={field.label}\n // sectionStyle={sectionStyle}\n // isValid={() => this.isFieldValid(field, fieldId)}\n // required={field.mandatory}\n // showError={this.state.showError}\n // >\n // {this.renderDocumentList(fieldId)}\n // </Components.GenericInputSection>\n // );\n default:\n return null;\n }\n }\n\n renderCustomFields() {\n const { customFields } = this.state;\n if (!customFields || customFields.length === 0) return null;\n\n return (\n <Components.FormCard style={{ marginTop: 16 }}>{customFields.map((field, i) => this.renderField(field, i))}</Components.FormCard>\n );\n }\n\n renderForm() {\n const { customFields, loadingTypes } = this.state;\n const hasCustomFields = customFields && customFields.length > 0;\n\n if (loadingTypes) {\n return <Components.Spinner />;\n }\n\n return (\n <View style={{ flex: 1 }}>\n <ScrollView keyboardShouldPersistTaps=\"always\" style={{ flex: 1 }} ref={ref => (this.scrollContainer = ref)}>\n <View style={{ paddingBottom: 2 }}>\n <Components.LoadingIndicator visible={this.state.submitting} />\n {this.state.error && <Text style={styles.errorText}>{this.state.error}</Text>}\n <Components.FormCard style={{ marginTop: 16 }}>\n {/* PC-1255: User picker for on-behalf requests */}\n {this.state.canCreateOnBehalf && (\n <Components.FormCardSection\n label={'Select User'}\n textValue={this.state.selectedUser?.displayName}\n hasContent\n hasUnderline\n required\n errorText=\"Please select a user.\"\n showError={this.state.showError && !this.state.selectedUser}\n sectionStyle={{ borderBottomWidth: 1, borderBottomColor: Colours.LINEGREY }}\n >\n <TouchableOpacity onPress={this.onPressUser}>\n <View style={styles.userPickerContainer}>\n <View style={styles.profileContainer}>\n <Components.ProfilePic ProfilePic={this.state.selectedUser?.profilePic} Diameter={30} />\n <Text style={styles.nameText}>{this.state.selectedUser?.displayName || 'Select User'}</Text>\n </View>\n <Icon\n name=\"angle-right\"\n type=\"font-awesome\"\n iconStyle={[styles.sectionTitle, { fontSize: 20, color: this.props.colourBrandingMain }]}\n />\n </View>\n </TouchableOpacity>\n </Components.FormCardSection>\n )}\n {/* PC-1255: Hide Name field when creating on behalf - name comes from selected user */}\n {!this.state.canCreateOnBehalf && (\n <Components.FormCardSection\n label={'Name'}\n placeholder={'Enter your name'}\n textValue={this.state.userName}\n onChangeText={userName => this.onChangeName(userName)}\n editable={this.props.userType === 'KIOSK' && this.state.submitting === false}\n isValid={() => {\n return this.state.userName.length > 1;\n }}\n required\n errorText=\"Please enter your name.\"\n showError={this.state.showError && this.state.userName.length < 2}\n hasUnderline\n />\n )}\n <Components.FormCardSection\n label={'Contact number'}\n placeholder={'Enter phone number'}\n textValue={this.state.phone}\n onChangeText={phone => this.setState({ phone })}\n editable={this.state.submitting === false}\n hasUnderline\n keyboardType={'phone-pad'}\n />\n <Components.FormCardSection\n label={'Address'}\n placeholder={'Enter your address'}\n textValue={this.state.roomNumber}\n onChangeText={roomNumber => this.setState({ roomNumber })}\n editable={this.state.submitting === false}\n hasUnderline\n isValid={() => {\n return this.state.roomNumber && this.state.roomNumber.length > 1;\n }}\n required\n errorText=\"Please provide your address.\"\n showError={this.state.showError && (!this.state.roomNumber || this.state.roomNumber.length < 2)}\n />\n </Components.FormCard>\n <Components.FormCard\n style={{ marginTop: 16, paddingHorizontal: 24, paddingVertical: 16, flexDirection: 'row', justifyContent: 'space-between' }}\n >\n <Text style={styles.sectionTitle}>{values.textJobType}</Text>\n <TouchableOpacity onPress={this.onPressType.bind(this)}>\n <View style={{ flexDirection: 'row' }}>\n <Text style={[styles.sectionTitle, { color: this.props.colourBrandingMain, marginRight: 16 }]}>{this.state.type}</Text>\n <Icon\n name=\"angle-right\"\n type=\"font-awesome\"\n iconStyle={[styles.sectionTitle, { fontSize: 20, color: this.props.colourBrandingMain }]}\n />\n </View>\n </TouchableOpacity>\n </Components.FormCard>\n {hasCustomFields ? (\n this.renderCustomFields()\n ) : (\n <>\n <Components.FormCard style={{ marginTop: 16 }}>\n <Components.FormCardSection\n label={'Title'}\n placeholder={'Enter a title for your request'}\n textValue={this.state.title}\n onChangeText={title => this.setState({ title })}\n editable={this.state.submitting === false}\n hasUnderline\n isValid={() => {\n return this.state.title.length > 1;\n }}\n required\n errorText=\"Please provide a title.\"\n showError={this.state.showError && this.state.title.length < 2}\n autoCorrect\n multiline\n autoGrow\n />\n <Components.FormCardSection\n label={'Description'}\n placeholder={'Describe your request here in detail'}\n textValue={this.state.description}\n onChangeText={description => this.setState({ description })}\n editable={this.state.submitting === false}\n hasUnderline\n autoCorrect\n multiline\n autoGrow\n />\n </Components.FormCard>\n <Components.FormCard style={{ marginTop: 16, paddingHorizontal: 24 }}>\n <View\n style={[\n {\n width: '100%',\n paddingVertical: 16,\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n position: 'relative',\n },\n this.state.isHome && { borderBottomWidth: 1, borderBottomColor: Colours.LINEGREY },\n ]}\n >\n <Text style={styles.sectionTitle}>{Config.env.strings.MAINTENANCE_HOME}</Text>\n <Switch\n value={this.state.isHome}\n disabled={this.state.submitting}\n onValueChange={value => this.setState({ isHome: value })}\n trackColor={{ false: '#ddd', true: this.props.colourBrandingMain }}\n thumbColor={Platform.OS === 'android' ? '#fff' : null}\n />\n </View>\n {this.state.isHome && (\n <Components.FormCardSection\n label={'Available times'}\n placeholder={'Describe your available times here in detail.'}\n textValue={this.state.times}\n onChangeText={times => this.setState({ times })}\n editable={this.state.submitting === false}\n hasUnderline\n isValid={() => {\n return this.state.times.length > 1;\n }}\n required\n errorText=\"Please provide available times.\"\n showError={this.state.showError && this.state.isHome && this.state.times.length < 2}\n minHeight={40}\n autoCorrect\n multiline\n autoGrow\n />\n )}\n </Components.FormCard>\n {this.renderImageList()}\n </>\n )}\n </View>\n </ScrollView>\n </View>\n );\n }\n\n renderRegisterConfirmation() {\n return (\n <Components.ConfirmationPopup\n confirmText={`${values.textEntityName} submitted`}\n repeatText={'Submit another'}\n visible={this.state.confirmationToShow}\n onClose={this.onCloseConfirmationPopup.bind(this)}\n onPressAction={this.onConfirmationReset.bind(this)}\n />\n );\n }\n\n renderVideoPlayerPopup() {\n const { showFullscreenVideo, currentVideoUrl } = this.state;\n if (!currentVideoUrl) return;\n\n return (\n <Components.VideoPopup\n uri={currentVideoUrl}\n visible={showFullscreenVideo}\n showFullscreenButton={false}\n onClose={this.toggleFullscreenVideo}\n />\n );\n }\n\n renderNoType() {\n if (!this.state.noType) {\n return null;\n }\n return (\n <Components.WarningPopup\n confirmText={'No forms are available'}\n infoText={'Check back later for forms.'}\n visible={this.state.noType}\n onClose={this.onPressBack.bind(this)}\n padHorizontal\n />\n );\n }\n\n render() {\n const { submitting, success, isDateTimePickerVisible, popUpType } = this.state;\n\n return (\n <KeyboardAvoidingView behavior={'padding'} style={styles.viewContainer}>\n {this.renderImageUploader()}\n <View style={styles.container}>\n <Components.Header\n leftIcon=\"angle-left\"\n onPressLeft={this.onPressBack.bind(this)}\n text={this.props.strings[`${values.featureKey}_textFeatureTitle`] || values.textFeatureTitle}\n rightText={submitting || success ? null : 'Done'}\n onPressRight={this.submitRequest.bind(this)}\n absoluteRight\n />\n {this.renderForm()}\n </View>\n {this.renderRegisterConfirmation()}\n {this.renderVideoPlayerPopup()}\n {this.renderNoType()}\n <DateTimePicker\n isVisible={isDateTimePickerVisible}\n onConfirm={this.onDateSelected}\n onCancel={() => this.setState({ isDateTimePickerVisible: false })}\n mode={popUpType}\n headerTextIOS={`Pick a ${popUpType}`}\n />\n </KeyboardAvoidingView>\n );\n }\n}\n\nconst styles = {\n viewContainer: {\n flex: 1,\n backgroundColor: '#fff',\n },\n container: {\n flex: 1,\n position: 'relative',\n backgroundColor: '#f0f0f5',\n },\n errorText: {\n fontFamily: 'sf-regular',\n color: Colours.COLOUR_TANGERINE,\n fontSize: 16,\n },\n requestSuccess: {\n fontFamily: 'sf-regular',\n color: Colours.TEXT_DARK,\n fontSize: 17,\n textAlign: 'center',\n },\n sectionTitle: {\n fontFamily: 'sf-regular',\n fontSize: 17,\n color: Colours.TEXT_DARK,\n },\n imageListContainer: {\n marginTop: 8,\n padding: 8,\n flexDirection: 'row',\n backgroundColor: Colours.BOXGREY,\n minHeight: 106,\n },\n imageListContainerEmpty: {\n justifyContent: 'center',\n alignItems: 'center',\n flexDirection: 'column',\n },\n documentListContainer: {\n marginTop: 8,\n flexDirection: 'column',\n alignItems: 'flex-start',\n },\n imageContainer: {\n width: PHOTO_SIZE,\n height: PHOTO_SIZE,\n borderStyle: 'dashed',\n justifyContent: 'center',\n alignItems: 'center',\n borderWidth: 1,\n borderColor: Colours.LINEGREY,\n borderRadius: 4,\n marginLeft: 8,\n },\n imageContainerNotEmpty: {\n borderWidth: 1,\n borderColor: Colours.LINEGREY,\n backgroundColor: '#fff',\n borderStyle: 'dashed',\n },\n imageBackground: {\n flex: 1,\n height: '100%',\n width: '100%',\n borderRadius: 4,\n },\n imageCircle: {\n width: 90,\n height: 90,\n borderRadius: 45,\n backgroundColor: Colours.PINKISH_GREY,\n justifyContent: 'center',\n },\n addImageIcon: {\n color: '#fff',\n fontSize: 32,\n },\n imagePlayContainer: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n alignItems: 'center',\n justifyContent: 'center',\n },\n imageControlIcon: {\n color: '#fff',\n fontSize: 20,\n textShadowColor: 'rgba(0,0,0,0.3)',\n textShadowOffset: { width: 2, height: 2 },\n },\n removeImage: {\n position: 'absolute',\n top: 0,\n right: 0,\n padding: 4,\n width: 40,\n height: 40,\n alignItems: 'center',\n justifyContent: 'center',\n },\n staticTitle: {\n fontSize: 20,\n fontFamily: 'sf-semibold',\n color: Colours.TEXT_DARKEST,\n },\n staticText: {\n fontSize: 17,\n fontFamily: 'sf-regular',\n color: Colours.TEXT_DARKEST,\n lineHeight: 24,\n },\n multiChoiceOption: {\n marginTop: 16,\n flexDirection: 'row',\n alignItems: 'center',\n minHeight: 20,\n },\n multiChoiceText: {\n flex: 1,\n fontFamily: 'sf-medium',\n fontSize: 14,\n color: Colours.TEXT_DARK,\n },\n tick: {\n marginRight: 10,\n borderRadius: 4,\n },\n unticked: {\n marginRight: 10,\n width: 20,\n height: 20,\n borderColor: Colours.LINEGREY,\n borderWidth: 1,\n borderRadius: 4,\n },\n dateContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n dateFieldButton: {\n flex: 1,\n },\n dateFieldContainer: {\n flexDirection: 'row',\n borderRadius: 2,\n backgroundColor: '#ebeff2',\n padding: 8,\n marginTop: 8,\n },\n dateText: {\n flex: 1,\n fontFamily: 'sf-regular',\n fontSize: 16,\n color: '#65686D',\n },\n dateIcon: {\n fontSize: 18,\n color: Colours.TEXT_BLUEGREY,\n },\n dateClearButton: {\n paddingLeft: 12,\n },\n removeIcon: {\n fontSize: 26,\n color: Colours.TEXT_BLUEGREY,\n },\n documentContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingVertical: 4,\n },\n documentTypeContainer: {\n width: 50,\n height: 60,\n justifyContent: 'center',\n alignItems: 'center',\n borderRadius: 5,\n marginRight: 8,\n },\n documentTypeText: {\n color: '#fff',\n fontFamily: 'sf-semibold',\n textAlign: 'center',\n },\n documentText: {\n flex: 1,\n fontFamily: 'sf-semibold',\n fontSize: 16,\n color: '#65686D',\n },\n removeDocumentButton: {\n padding: 4,\n width: 40,\n height: 40,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: 8,\n },\n removeDocumentIcon: {\n fontSize: 24,\n },\n // PC-1255: User picker styles\n userPickerContainer: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n profileContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n nameText: {\n fontFamily: 'sf-medium',\n fontSize: 16,\n color: Colours.TEXT_DARK,\n marginLeft: 8,\n },\n};\n\nconst mapStateToProps = state => {\n const { user, connection } = state;\n const { displayName, profilePic, uid, site, unit, phoneNumber, permissions } = user;\n return {\n connected: connection.connected,\n userType: user.type,\n displayName,\n profilePic,\n uid,\n site,\n unit,\n phoneNumber,\n permissions,\n colourBrandingMain: Colours.getMainBrandingColourFromState(state),\n strings: state.strings?.config || {},\n optionOnlyForResidents: Helper.getSiteSettingFromState(state, values.optionOnlyForResidents),\n };\n};\n\nexport default connect(mapStateToProps, { jobAdded })(MaintenanceRequest);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","Dimensions","Platform","KeyboardAvoidingView","ScrollView","Text","TouchableOpacity","View","Switch","FlatList","ImageBackground","Keyboard","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","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","connected","message","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","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","disabled","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","fontFamily","COLOUR_TANGERINE","TEXT_DARK","textAlign","BOXGREY","documentListContainer","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 {\n\tDimensions,\n\tPlatform,\n\tKeyboardAvoidingView,\n\tScrollView,\n\tText,\n\tTouchableOpacity,\n\tView,\n\tSwitch,\n\tFlatList,\n\tImageBackground,\n\tKeyboard,\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\n\t\t\tconst users = _.sortBy(items, (u) => (u.displayName || \"\").toLowerCase());\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 (!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\tonLibrarySelected = (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\ttypes: res.data,\n\t\t\t\t});\n\t\t\t\tthis.getDefaultJob();\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\tmaintenanceActions\n\t\t\t.sendMaintenanceRequest(\n\t\t\t\tthis.props.uid,\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\ttimes,\n\t\t} = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\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\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\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\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\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\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\t// renderDocumentList(fieldId) {\n\t// const documentsList = this.getDocuments(fieldId);\n\t// return (\n\t// <View style={styles.documentListContainer}>\n\t// {documentsList.length > 0 ? documentsList.map((document, index) => this.renderDocument(document, index, fieldId)) : null}\n\t// <Components.DocumentUploader\n\t// buttonTitle=\"Add Files\"\n\t// allowedTypes={['application/pdf']}\n\t// onUploadStarted={(uploadUri, uri, name, ext) => this.onUploadStartedDocument(uploadUri, uri, name, ext, fieldId)}\n\t// onUploadProgress={progress => this.onUploadProgressDocument(progress, fieldId)}\n\t// onUploadSuccess={(uri, uploadUri) => this.onUploadSuccessDocument(uri, uploadUri, fieldId)}\n\t// onUploadFailed={uploadUri => this.onUploadFailedDocument(uploadUri, fieldId)}\n\t// fileName=\"serviceDocument\"\n\t// userId={this.props.uid}\n\t// disabled={false}\n\t// multiple\n\t// />\n\t// </View>\n\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\t// case 'document':\n\t\t\t// return (\n\t\t\t// <Components.GenericInputSection\n\t\t\t// key={fieldId}\n\t\t\t// label={field.label}\n\t\t\t// sectionStyle={sectionStyle}\n\t\t\t// isValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t// required={field.mandatory}\n\t\t\t// showError={this.state.showError}\n\t\t\t// >\n\t\t\t// {this.renderDocumentList(fieldId)}\n\t\t\t// </Components.GenericInputSection>\n\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/>\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":[]}