@plusscommunities/pluss-maintenance-app-forms 6.0.11 → 7.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module/components/MaintenanceListItem.js +1 -1
- package/dist/module/components/MaintenanceListItem.js.map +1 -1
- package/dist/module/components/MaintenanceWidgetItem.js +1 -1
- package/dist/module/components/MaintenanceWidgetItem.js.map +1 -1
- package/dist/module/screens/JobTypePicker.js +1 -1
- package/dist/module/screens/JobTypePicker.js.map +1 -1
- package/dist/module/screens/RequestDetail.js +1 -1
- package/dist/module/screens/RequestDetail.js.map +1 -1
- package/dist/module/screens/RequestNotes.js +1 -1
- package/dist/module/screens/RequestNotes.js.map +1 -1
- package/dist/module/screens/ServiceRequest.js +1 -1
- package/dist/module/screens/ServiceRequest.js.map +1 -1
- package/package.json +9 -8
- package/src/components/MaintenanceListItem.js +1 -1
- package/src/components/MaintenanceWidgetItem.js +1 -1
- package/src/screens/JobTypePicker.js +1 -1
- package/src/screens/RequestDetail.js +3 -3
- package/src/screens/RequestNotes.js +20 -20
- package/src/screens/ServiceRequest.js +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Component","ScrollView","View","Text","TouchableOpacity","Modal","KeyboardAvoidingView","Platform","connect","Icon","_","moment","jobAdded","maintenanceActions","getBottomSpace","Services","Components","Colours","Helper","values","RequestNotes","constructor","props","_defineProperty","navigation","goBack","a","setState","selectedPDF","n","noteToDelete","deleteNote","job","id","state","Id","newNotes","filter","Notes","note","newJob","onChange","some","noteAttachments","Uploading","isEmpty","noteInput","addNoteOpen","editingNote","newState","Attachments","Note","noteMenuOpen","isReadyToSaveNote","submittingNote","res","editNote","map","Title","Source","addNote","data","err","console","log","componentDidMount","updateJobState","componentDidUpdate","prevProps","jobs","find","j","renderAttachment","i","createElement","Attachment","onPress","onOpenAttachment","key","title","renderNote","style","styles","noteContainer","noteContainerTop","ProfilePic","Diameter","User","profilePic","noteContainerTopRight","user","uid","onPressDeleteNote","noteContainerButtonContainer","backgroundColor","colourBrandingMain","name","type","iconStyle","noteContainerButtonIcon","openEditNote","noteContainerTopFill","noteContainerName","displayName","noteContainerText","noteTimestamp","utc","Timestamp","local","format","TIMESTAMP_FORMAT","renderNotes","renderPDF","PDFPopup","source","onClose","onCloseAttachment","pdfCount","renderNoteDeleteConfirm","ConfirmPopup","visible","onConfirm","onPressConfirmDelete","onCancel","onPressCancelDelete","text","renderFooterContent","Spinner","InlineButton","color","confirmAddNote","fillTouchable","large","renderAdd","animationType","container","behavior","OS","Header","leftText","onPressLeft","closeAddNote","scrollContainer","contentContainerStyle","innerContainer","TextStyle","GenericInputSection","label","placeholder","value","onChangeText","isValid","autoCapitalize","minHeight","autoCorrect","multiline","autoGrow","required","squaredCorners","sectionStyle","inputSection","attachmentInfo","popupFooter","render","leftIcon","onPressBack","AddButton","openAddNote","flex","position","padding","paddingHorizontal","paddingBottom","getShadowStyle","marginBottom","flexDirection","alignItems","marginRight","fontFamily","fontSize","TEXT_DARKEST","marginTop","TEXT_LIGHT","width","height","borderRadius","justifyContent","marginLeft","sectionHeading","mapStateToProps","getMainBrandingColourFromState","colourBrandingLight","getLightBrandingColourFromState","reducerKey"],"sources":["RequestNotes.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { ScrollView, View, Text, TouchableOpacity, Modal, KeyboardAvoidingView, Platform } from 'react-native';\nimport { connect } from 'react-redux';\nimport { Icon } from 'react-native-elements';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { jobAdded } from '../actions';\nimport { maintenanceActions } from '../apis';\nimport { getBottomSpace } from 'react-native-iphone-x-helper';\nimport { Services } from '../feature.config';\nimport { Components, Colours, Helper } from '../core.config';\nimport { values } from '../values.config';\n\nclass RequestNotes extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n job: {},\n selectedPDF: null,\n noteAttachments: [],\n noteInput: '',\n addNoteOpen: false,\n };\n }\n\n componentDidMount() {\n this.updateJobState();\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.jobs !== this.props.jobs) {\n this.updateJobState();\n }\n }\n\n updateJobState() {\n const job = _.find(this.props.jobs, j => j.id === this.props.job.id) || this.props.job;\n this.setState({ job });\n }\n\n onPressBack = () => {\n Services.navigation.goBack();\n };\n\n onOpenAttachment = a => {\n this.setState({\n selectedPDF: a,\n });\n };\n\n onCloseAttachment = () => {\n this.setState({\n selectedPDF: null,\n });\n };\n\n onPressDeleteNote = n => {\n this.setState({\n noteToDelete: n,\n });\n };\n\n onPressConfirmDelete = () => {\n maintenanceActions.deleteNote(this.props.job.id, this.state.noteToDelete.Id);\n const newNotes = _.filter(this.state.job.Notes, note => {\n return note.Id !== this.state.noteToDelete.Id;\n });\n const newJob = { ...this.props.job };\n newJob.Notes = newNotes;\n this.props.jobAdded(newJob);\n this.props.onChange && this.props.onChange();\n this.setState({\n job: newJob,\n noteToDelete: null,\n });\n };\n\n onPressCancelDelete = () => {\n this.setState({ noteToDelete: null });\n };\n\n isReadyToSaveNote = () => {\n if (\n _.some(this.state.noteAttachments, n => {\n return n.Uploading;\n })\n ) {\n return false;\n }\n return !_.isEmpty(this.state.noteInput) || !_.isEmpty(this.state.noteAttachments);\n };\n\n openAddNote = () => {\n this.setState({\n addNoteOpen: true,\n editingNote: null,\n });\n };\n\n closeAddNote = () => {\n const newState = {\n addNoteOpen: false,\n editingNote: null,\n };\n if (!!this.state.editingNote) {\n newState.noteInput = '';\n newState.noteAttachments = [];\n }\n this.setState(newState);\n };\n\n openEditNote = n => {\n this.setState({\n noteAttachments: n.Attachments || [],\n noteInput: n.Note || '',\n addNoteOpen: true,\n editingNote: n.Id,\n noteMenuOpen: null,\n });\n };\n\n confirmAddNote = async () => {\n if (!this.isReadyToSaveNote()) {\n return;\n }\n\n try {\n this.setState({ submittingNote: true });\n const res = await (this.state.editingNote\n ? maintenanceActions.editNote(\n this.props.job.id,\n this.state.editingNote,\n this.state.noteInput,\n this.state.noteAttachments.map(a => {\n return {\n Title: a.Title,\n Source: a.Source,\n };\n }),\n )\n : maintenanceActions.addNote(\n this.props.job.id,\n this.state.noteInput,\n this.state.noteAttachments.map(a => {\n return {\n Title: a.Title,\n Source: a.Source,\n };\n }),\n ));\n this.setState(\n {\n job: res.data.job,\n submittingNote: false,\n addNoteOpen: false,\n noteInput: '',\n noteAttachments: [],\n editingNote: null,\n },\n () => {\n this.props.jobAdded(res.data.job);\n this.props.onChange && this.props.onChange();\n },\n );\n } catch (err) {\n console.log('error');\n console.log(err);\n this.setState({\n submittingNote: false,\n });\n }\n };\n\n renderAttachment(a, i) {\n return (\n <Components.Attachment\n onPress={() => {\n this.onOpenAttachment(a);\n }}\n key={i}\n title={a.Title}\n />\n );\n }\n\n renderNote(n) {\n return (\n <View style={styles.noteContainer} key={n.Id}>\n <View style={styles.noteContainerTop}>\n <Components.ProfilePic Diameter={30} ProfilePic={n.User.profilePic} style={styles.profilePic} />\n <View style={styles.noteContainerTopRight}>\n {this.props.user.uid === n.User.id && (\n <TouchableOpacity\n onPress={() => {\n this.onPressDeleteNote(n);\n }}\n >\n <View style={[styles.noteContainerButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"trash\" type=\"font-awesome\" iconStyle={styles.noteContainerButtonIcon} />\n </View>\n </TouchableOpacity>\n )}\n {this.props.user.uid === n.User.id && (\n <TouchableOpacity\n onPress={() => {\n this.openEditNote(n);\n }}\n >\n <View style={[styles.noteContainerButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"pencil\" type=\"font-awesome\" iconStyle={styles.noteContainerButtonIcon} />\n </View>\n </TouchableOpacity>\n )}\n <View style={styles.noteContainerTopFill}>\n <Text style={styles.noteContainerName}>{n.User.displayName}</Text>\n </View>\n </View>\n </View>\n <Text style={styles.noteContainerText}>{n.Note}</Text>\n {(n.Attachments || []).map((a, i) => this.renderAttachment(a, i))}\n <Text style={styles.noteTimestamp}>\n {moment\n .utc(n.Timestamp)\n .local()\n .format(Helper.TIMESTAMP_FORMAT)}\n </Text>\n </View>\n );\n }\n\n renderNotes() {\n return (this.state.job.Notes || []).map((n, i) => {\n return this.renderNote(n, i);\n });\n }\n\n renderPDF() {\n if (_.isEmpty(this.state.selectedPDF)) {\n return null;\n }\n return (\n <Components.PDFPopup\n source={this.state.selectedPDF.Source}\n onClose={this.onCloseAttachment}\n title={this.state.selectedPDF.Title}\n pdfCount={1}\n />\n );\n }\n\n renderNoteDeleteConfirm() {\n return (\n <Components.ConfirmPopup\n visible={!!this.state.noteToDelete}\n onConfirm={this.onPressConfirmDelete}\n onCancel={this.onPressCancelDelete}\n onClose={this.onPressCancelDelete}\n text=\"Are you sure you want to delete this note?\"\n />\n );\n }\n\n renderFooterContent() {\n if (this.state.submittingNote) {\n return <Components.Spinner />;\n }\n return (\n <Components.InlineButton color={this.props.colourBrandingMain} onPress={this.confirmAddNote} fillTouchable large>\n Save\n </Components.InlineButton>\n );\n }\n\n renderAdd() {\n return (\n <Modal animationType=\"slide\" visible={this.state.addNoteOpen}>\n <KeyboardAvoidingView style={styles.container} behavior={Platform.OS === 'ios' && 'padding'}>\n <Components.Header leftText=\"Cancel\" onPressLeft={this.closeAddNote} text=\"\" />\n <ScrollView style={styles.scrollContainer} contentContainerStyle={styles.innerContainer}>\n <Components.TextStyle type=\"pageHeading\">Add Staff Note</Components.TextStyle>\n <Components.GenericInputSection\n label=\"Content\"\n placeholder=\"Insert your notes here...\"\n value={this.state.noteInput}\n onChangeText={noteInput => this.setState({ noteInput })}\n isValid={() => {\n return !_.isEmpty(this.state.noteInput);\n }}\n autoCapitalize=\"sentences\"\n minHeight={135}\n autoCorrect\n multiline\n autoGrow\n required\n squaredCorners\n sectionStyle={styles.inputSection}\n />\n <Components.GenericInputSection label=\"Attachments\" sectionStyle={styles.inputSection}>\n {this.state.editingNote ? (\n (this.state.noteAttachments || []).map((a, i) => this.renderAttachment(a, i))\n ) : (\n <Components.TextStyle type=\"body\" style={styles.attachmentInfo}>\n PDFs can only be attached to notes from the Community Manager.\n </Components.TextStyle>\n )}\n </Components.GenericInputSection>\n </ScrollView>\n <View style={styles.popupFooter}>{this.renderFooterContent()}</View>\n </KeyboardAvoidingView>\n </Modal>\n );\n }\n\n render() {\n return (\n <View style={styles.container}>\n {this.renderPDF()}\n {this.renderNoteDeleteConfirm()}\n {this.renderAdd()}\n <Components.Header leftIcon=\"angle-left\" onPressLeft={this.onPressBack} text=\"Staff Notes\" />\n <ScrollView style={styles.scrollContainer} contentContainerStyle={styles.innerContainer}>\n {this.renderNotes()}\n </ScrollView>\n <Components.AddButton onPress={this.openAddNote} />\n </View>\n );\n }\n}\n\nconst styles = {\n container: {\n flex: 1,\n position: 'relative',\n backgroundColor: '#fff',\n },\n scrollContainer: {\n flex: 1,\n },\n innerContainer: {\n padding: 16,\n },\n popupFooter: {\n paddingHorizontal: 16,\n paddingBottom: getBottomSpace() + 16,\n },\n noteContainer: {\n ...Helper.getShadowStyle(),\n padding: 8,\n marginBottom: 16,\n },\n noteContainerTop: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n profilePic: {\n marginRight: 8,\n },\n noteContainerTopFill: {\n flex: 1,\n },\n noteContainerName: {\n fontFamily: 'sf-semibold',\n fontSize: 13,\n color: Colours.TEXT_DARKEST,\n },\n noteContainerText: {\n marginTop: 8,\n fontFamily: 'sf-regular',\n fontSize: 13,\n color: Colours.TEXT_DARKEST,\n },\n noteTimestamp: {\n marginTop: 8,\n fontFamily: 'sf-semibold',\n fontSize: 11,\n color: Colours.TEXT_LIGHT,\n },\n noteContainerTopRight: {\n flex: 1,\n flexDirection: 'row-reverse',\n alignItems: 'center',\n },\n noteContainerButtonContainer: {\n width: 24,\n height: 24,\n borderRadius: 12,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: 8,\n },\n noteContainerButtonIcon: {\n fontSize: 13,\n color: '#fff',\n },\n inputSection: {\n marginTop: 24,\n },\n sectionHeading: {\n fontFamily: 'qs-bold',\n fontSize: 24,\n color: Colours.TEXT_DARKEST,\n },\n attachmentInfo: {\n marginTop: 8,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n user: state.user,\n colourBrandingMain: Colours.getMainBrandingColourFromState(state),\n colourBrandingLight: Colours.getLightBrandingColourFromState(state),\n jobs: state[values.reducerKey].jobs,\n };\n};\n\nexport default connect(mapStateToProps, { jobAdded })(RequestNotes);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Component","ScrollView","View","Text","TouchableOpacity","Modal","KeyboardAvoidingView","Platform","connect","Icon","_","moment","jobAdded","maintenanceActions","getBottomSpace","Services","Components","Colours","Helper","values","RequestNotes","constructor","props","_defineProperty","navigation","goBack","a","setState","selectedPDF","n","noteToDelete","deleteNote","job","id","state","Id","newNotes","filter","Notes","note","newJob","onChange","some","noteAttachments","Uploading","isEmpty","noteInput","addNoteOpen","editingNote","newState","Attachments","Note","noteMenuOpen","isReadyToSaveNote","submittingNote","res","editNote","map","Title","Source","addNote","data","err","console","log","componentDidMount","updateJobState","componentDidUpdate","prevProps","jobs","find","j","renderAttachment","i","createElement","Attachment","onPress","onOpenAttachment","key","title","renderNote","style","styles","noteContainer","noteContainerTop","ProfilePic","Diameter","User","profilePic","noteContainerTopRight","user","uid","onPressDeleteNote","noteContainerButtonContainer","backgroundColor","colourBrandingMain","name","type","iconStyle","noteContainerButtonIcon","openEditNote","noteContainerTopFill","noteContainerName","displayName","noteContainerText","noteTimestamp","utc","Timestamp","local","format","TIMESTAMP_FORMAT","renderNotes","renderPDF","PDFPopup","source","onClose","onCloseAttachment","pdfCount","renderNoteDeleteConfirm","ConfirmPopup","visible","onConfirm","onPressConfirmDelete","onCancel","onPressCancelDelete","text","renderFooterContent","Spinner","InlineButton","color","confirmAddNote","fillTouchable","large","renderAdd","animationType","container","behavior","OS","Header","leftText","onPressLeft","closeAddNote","scrollContainer","contentContainerStyle","innerContainer","TextStyle","GenericInputSection","label","placeholder","value","onChangeText","isValid","autoCapitalize","minHeight","autoCorrect","multiline","autoGrow","required","squaredCorners","sectionStyle","inputSection","attachmentInfo","popupFooter","render","leftIcon","onPressBack","AddButton","openAddNote","flex","position","padding","paddingHorizontal","paddingBottom","getShadowStyle","marginBottom","flexDirection","alignItems","marginRight","fontFamily","fontSize","TEXT_DARKEST","marginTop","TEXT_LIGHT","width","height","borderRadius","justifyContent","marginLeft","sectionHeading","mapStateToProps","getMainBrandingColourFromState","colourBrandingLight","getLightBrandingColourFromState","reducerKey"],"sources":["RequestNotes.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { ScrollView, View, Text, TouchableOpacity, Modal, KeyboardAvoidingView, Platform } from 'react-native';\nimport { connect } from 'react-redux';\nimport { Icon } from '@rneui/themed';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { jobAdded } from '../actions';\nimport { maintenanceActions } from '../apis';\nimport { getBottomSpace } from 'react-native-iphone-x-helper';\nimport { Services } from '../feature.config';\nimport { Components, Colours, Helper } from '../core.config';\nimport { values } from '../values.config';\n\nclass RequestNotes extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n job: {},\n selectedPDF: null,\n noteAttachments: [],\n noteInput: '',\n addNoteOpen: false,\n };\n }\n\n componentDidMount() {\n this.updateJobState();\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.jobs !== this.props.jobs) {\n this.updateJobState();\n }\n }\n\n updateJobState() {\n const job = _.find(this.props.jobs, j => j.id === this.props.job.id) || this.props.job;\n this.setState({ job });\n }\n\n onPressBack = () => {\n Services.navigation.goBack();\n };\n\n onOpenAttachment = a => {\n this.setState({\n selectedPDF: a,\n });\n };\n\n onCloseAttachment = () => {\n this.setState({\n selectedPDF: null,\n });\n };\n\n onPressDeleteNote = n => {\n this.setState({\n noteToDelete: n,\n });\n };\n\n onPressConfirmDelete = () => {\n maintenanceActions.deleteNote(this.props.job.id, this.state.noteToDelete.Id);\n const newNotes = _.filter(this.state.job.Notes, note => {\n return note.Id !== this.state.noteToDelete.Id;\n });\n const newJob = { ...this.props.job };\n newJob.Notes = newNotes;\n this.props.jobAdded(newJob);\n this.props.onChange && this.props.onChange();\n this.setState({\n job: newJob,\n noteToDelete: null,\n });\n };\n\n onPressCancelDelete = () => {\n this.setState({ noteToDelete: null });\n };\n\n isReadyToSaveNote = () => {\n if (\n _.some(this.state.noteAttachments, n => {\n return n.Uploading;\n })\n ) {\n return false;\n }\n return !_.isEmpty(this.state.noteInput) || !_.isEmpty(this.state.noteAttachments);\n };\n\n openAddNote = () => {\n this.setState({\n addNoteOpen: true,\n editingNote: null,\n });\n };\n\n closeAddNote = () => {\n const newState = {\n addNoteOpen: false,\n editingNote: null,\n };\n if (!!this.state.editingNote) {\n newState.noteInput = '';\n newState.noteAttachments = [];\n }\n this.setState(newState);\n };\n\n openEditNote = n => {\n this.setState({\n noteAttachments: n.Attachments || [],\n noteInput: n.Note || '',\n addNoteOpen: true,\n editingNote: n.Id,\n noteMenuOpen: null,\n });\n };\n\n confirmAddNote = async () => {\n if (!this.isReadyToSaveNote()) {\n return;\n }\n\n try {\n this.setState({ submittingNote: true });\n const res = await (this.state.editingNote\n ? maintenanceActions.editNote(\n this.props.job.id,\n this.state.editingNote,\n this.state.noteInput,\n this.state.noteAttachments.map(a => {\n return {\n Title: a.Title,\n Source: a.Source,\n };\n }),\n )\n : maintenanceActions.addNote(\n this.props.job.id,\n this.state.noteInput,\n this.state.noteAttachments.map(a => {\n return {\n Title: a.Title,\n Source: a.Source,\n };\n }),\n ));\n this.setState(\n {\n job: res.data.job,\n submittingNote: false,\n addNoteOpen: false,\n noteInput: '',\n noteAttachments: [],\n editingNote: null,\n },\n () => {\n this.props.jobAdded(res.data.job);\n this.props.onChange && this.props.onChange();\n },\n );\n } catch (err) {\n console.log('error');\n console.log(err);\n this.setState({\n submittingNote: false,\n });\n }\n };\n\n renderAttachment(a, i) {\n return (\n <Components.Attachment\n onPress={() => {\n this.onOpenAttachment(a);\n }}\n key={i}\n title={a.Title}\n />\n );\n }\n\n renderNote(n) {\n return (\n <View style={styles.noteContainer} key={n.Id}>\n <View style={styles.noteContainerTop}>\n <Components.ProfilePic Diameter={30} ProfilePic={n.User.profilePic} style={styles.profilePic} />\n <View style={styles.noteContainerTopRight}>\n {this.props.user.uid === n.User.id && (\n <TouchableOpacity\n onPress={() => {\n this.onPressDeleteNote(n);\n }}\n >\n <View style={[styles.noteContainerButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"trash\" type=\"font-awesome\" iconStyle={styles.noteContainerButtonIcon} />\n </View>\n </TouchableOpacity>\n )}\n {this.props.user.uid === n.User.id && (\n <TouchableOpacity\n onPress={() => {\n this.openEditNote(n);\n }}\n >\n <View style={[styles.noteContainerButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"pencil\" type=\"font-awesome\" iconStyle={styles.noteContainerButtonIcon} />\n </View>\n </TouchableOpacity>\n )}\n <View style={styles.noteContainerTopFill}>\n <Text style={styles.noteContainerName}>{n.User.displayName}</Text>\n </View>\n </View>\n </View>\n <Text style={styles.noteContainerText}>{n.Note}</Text>\n {(n.Attachments || []).map((a, i) => this.renderAttachment(a, i))}\n <Text style={styles.noteTimestamp}>\n {moment\n .utc(n.Timestamp)\n .local()\n .format(Helper.TIMESTAMP_FORMAT)}\n </Text>\n </View>\n );\n }\n\n renderNotes() {\n return (this.state.job.Notes || []).map((n, i) => {\n return this.renderNote(n, i);\n });\n }\n\n renderPDF() {\n if (_.isEmpty(this.state.selectedPDF)) {\n return null;\n }\n return (\n <Components.PDFPopup\n source={this.state.selectedPDF.Source}\n onClose={this.onCloseAttachment}\n title={this.state.selectedPDF.Title}\n pdfCount={1}\n />\n );\n }\n\n renderNoteDeleteConfirm() {\n return (\n <Components.ConfirmPopup\n visible={!!this.state.noteToDelete}\n onConfirm={this.onPressConfirmDelete}\n onCancel={this.onPressCancelDelete}\n onClose={this.onPressCancelDelete}\n text=\"Are you sure you want to delete this note?\"\n />\n );\n }\n\n renderFooterContent() {\n if (this.state.submittingNote) {\n return <Components.Spinner />;\n }\n return (\n <Components.InlineButton color={this.props.colourBrandingMain} onPress={this.confirmAddNote} fillTouchable large>\n Save\n </Components.InlineButton>\n );\n }\n\n renderAdd() {\n return (\n <Modal animationType=\"slide\" visible={this.state.addNoteOpen}>\n <KeyboardAvoidingView style={styles.container} behavior={Platform.OS === 'ios' && 'padding'}>\n <Components.Header leftText=\"Cancel\" onPressLeft={this.closeAddNote} text=\"\" />\n <ScrollView style={styles.scrollContainer} contentContainerStyle={styles.innerContainer}>\n <Components.TextStyle type=\"pageHeading\">Add Staff Note</Components.TextStyle>\n <Components.GenericInputSection\n label=\"Content\"\n placeholder=\"Insert your notes here...\"\n value={this.state.noteInput}\n onChangeText={noteInput => this.setState({ noteInput })}\n isValid={() => {\n return !_.isEmpty(this.state.noteInput);\n }}\n autoCapitalize=\"sentences\"\n minHeight={135}\n autoCorrect\n multiline\n autoGrow\n required\n squaredCorners\n sectionStyle={styles.inputSection}\n />\n <Components.GenericInputSection label=\"Attachments\" sectionStyle={styles.inputSection}>\n {this.state.editingNote ? (\n (this.state.noteAttachments || []).map((a, i) => this.renderAttachment(a, i))\n ) : (\n <Components.TextStyle type=\"body\" style={styles.attachmentInfo}>\n PDFs can only be attached to notes from the Community Manager.\n </Components.TextStyle>\n )}\n </Components.GenericInputSection>\n </ScrollView>\n <View style={styles.popupFooter}>{this.renderFooterContent()}</View>\n </KeyboardAvoidingView>\n </Modal>\n );\n }\n\n render() {\n return (\n <View style={styles.container}>\n {this.renderPDF()}\n {this.renderNoteDeleteConfirm()}\n {this.renderAdd()}\n <Components.Header leftIcon=\"angle-left\" onPressLeft={this.onPressBack} text=\"Staff Notes\" />\n <ScrollView style={styles.scrollContainer} contentContainerStyle={styles.innerContainer}>\n {this.renderNotes()}\n </ScrollView>\n <Components.AddButton onPress={this.openAddNote} />\n </View>\n );\n }\n}\n\nconst styles = {\n container: {\n flex: 1,\n position: 'relative',\n backgroundColor: '#fff',\n },\n scrollContainer: {\n flex: 1,\n },\n innerContainer: {\n padding: 16,\n },\n popupFooter: {\n paddingHorizontal: 16,\n paddingBottom: getBottomSpace() + 16,\n },\n noteContainer: {\n ...Helper.getShadowStyle(),\n padding: 8,\n marginBottom: 16,\n },\n noteContainerTop: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n profilePic: {\n marginRight: 8,\n },\n noteContainerTopFill: {\n flex: 1,\n },\n noteContainerName: {\n fontFamily: 'sf-semibold',\n fontSize: 13,\n color: Colours.TEXT_DARKEST,\n },\n noteContainerText: {\n marginTop: 8,\n fontFamily: 'sf-regular',\n fontSize: 13,\n color: Colours.TEXT_DARKEST,\n },\n noteTimestamp: {\n marginTop: 8,\n fontFamily: 'sf-semibold',\n fontSize: 11,\n color: Colours.TEXT_LIGHT,\n },\n noteContainerTopRight: {\n flex: 1,\n flexDirection: 'row-reverse',\n alignItems: 'center',\n },\n noteContainerButtonContainer: {\n width: 24,\n height: 24,\n borderRadius: 12,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: 8,\n },\n noteContainerButtonIcon: {\n fontSize: 13,\n color: '#fff',\n },\n inputSection: {\n marginTop: 24,\n },\n sectionHeading: {\n fontFamily: 'qs-bold',\n fontSize: 24,\n color: Colours.TEXT_DARKEST,\n },\n attachmentInfo: {\n marginTop: 8,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n user: state.user,\n colourBrandingMain: Colours.getMainBrandingColourFromState(state),\n colourBrandingLight: Colours.getLightBrandingColourFromState(state),\n jobs: state[values.reducerKey].jobs,\n };\n};\n\nexport default connect(mapStateToProps, { jobAdded })(RequestNotes);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
|
4
4
|
import React, { Component } from 'react';
|
|
5
5
|
import { Dimensions, Platform, KeyboardAvoidingView, ScrollView, Text, TouchableOpacity, View, Switch, FlatList, ImageBackground, Keyboard } from 'react-native';
|
|
6
6
|
import DateTimePicker from 'react-native-modal-datetime-picker';
|
|
7
|
-
import { Icon } from '
|
|
7
|
+
import { Icon } from '@rneui/themed';
|
|
8
8
|
import _ from 'lodash';
|
|
9
9
|
import moment from 'moment';
|
|
10
10
|
import { connect } from 'react-redux';
|
|
@@ -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","Services","Components","Colours","Helper","Config","values","PHOTO_SIZE","get","width","MaintenanceRequest","constructor","props","_defineProperty","userName","update","state","customFields","some","title","setState","fieldId","answer","cloneDeep","field","isTitle","undefined","xor","join","dismiss","dateFieldId","popUpType","type","isDateTimePickerVisible","date","dateObj","format","uploadUri","imageUri","imageFieldId","imagesUpdate","getImages","splice","length","uploading","uploadProgress","allowRetry","setImages","progress","map","img","uri","percentage","url","replace","thumbNailExists","thumbNailUrl","getThumb300","waitForThumbnails","get1400","mandatory","includes","imagesList","getImageUrls","checkMandatory","isBoolean","isArray","isNil","isEmpty","checkFormat","isEmail","isValid","valid","uploadingImage","submitting","imageUploader","showUploadMenu","description","isHome","times","setTimeout","scrollContainer","scrollTo","y","images","updatedCustomFields","sendMaintenanceRequest","uid","phone","roomNumber","getSite","site","then","res","data","success","refreshRequest","searchResult","onSubmissionSuccess","confirmationToShow","catch","err","console","log","id","job","getJob","error","every","index","isFieldValid","customFieldImages","Array","add","callback","filter","checkThumb","setInterval","Promise","all","image","resolve","newImage","push","imageExists","thumbnailsExist","clearInterval","showFullscreenVideo","currentVideoUrl","fail","showError","loadingTypes","forceCustomFields","types","keyboardTypes","email","text","componentDidMount","userType","displayName","unit","phoneNumber","getJobTypes","componentWillUnmount","onPressBack","navigation","goBack","onPressType","navigate","screenJobTypePicker","currentType","onSelectType","pickType","bind","onCloseConfirmationPopup","onBack","onConfirmationReset","getDefaultJob","selected","find","t","typeName","hasCustomFields","noType","jobId","defaultType","submitRequest","connected","message","validateCustomFields","submit","renderUploadMenu","createElement","ImageUploader","ref","onUploadStarted","onUploadSuccess","onUploadFailed","onUploadProgress","onLibrarySelected","size","quality","fileName","popupTitle","userId","allowsEditing","multiple","hideLibrary","renderImage","item","isVideoUrl","isVideo","activeOpacity","onPress","style","styles","imageContainer","imageContainerNotEmpty","marginLeft","marginTop","imageCircle","name","iconStyle","addImageIcon","ImageUploadProgress","uploader","color","colourBrandingMain","imageBackground","source","getImageSource","imagePlayContainer","toggleFullscreenVideo","imageControlIcon","removeImage","renderSuccess","padding","flex","backgroundColor","requestSuccess","renderImageList","imageSection","imageListContainer","imageListContainerEmpty","keyboardShouldPersistTaps","enableEmptySections","renderItem","keyExtractor","numColumns","renderDateField","sectionStyle","displayText","placeHolder","icon","errorText","GenericInputSection","key","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","Spinner","paddingBottom","LoadingIndicator","visible","FormCardSection","textValue","onChangeName","hasUnderline","paddingHorizontal","paddingVertical","flexDirection","justifyContent","sectionTitle","textJobType","marginRight","fontSize","Fragment","autoCorrect","multiline","autoGrow","alignItems","position","borderBottomWidth","borderBottomColor","LINEGREY","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","height","borderStyle","borderWidth","borderColor","borderRadius","PINKISH_GREY","textShadowColor","textShadowOffset","TEXT_DARKEST","lineHeight","TEXT_BLUEGREY","paddingLeft","mapStateToProps","_state$strings","user","connection","profilePic","getMainBrandingColourFromState","config"],"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 'react-native-elements';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { connect } from 'react-redux';\nimport { jobAdded } from '../actions';\nimport { maintenanceActions } 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 isDateTimePickerVisible: false,\n popUpType: 'date',\n dateFieldId: null,\n imageFieldId: null,\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 if (this.props.userType !== 'KIOSK') {\n this.setState({\n userName: this.props.displayName,\n roomNumber: this.props.unit,\n phone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : '',\n });\n }\n this.getJobTypes();\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 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 onUploadStarted = (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 onUploadProgress = 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 onUploadSuccess = 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 onUploadFailed = 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 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 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 imagesList = type === 'image' ? this.getImageUrls(fieldId) : [];\n const checkMandatory = () => {\n if (!mandatory) return true;\n switch (type) {\n case 'yn':\n return _.isBoolean(answer);\n case 'image':\n return imagesList.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 console.log(res.data);\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 console.log(selected);\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 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 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 toggleFullscreenVideo = url => {\n if (typeof url !== 'string') url = '';\n this.setState({ showFullscreenVideo: url.length > 0, currentVideoUrl: url });\n };\n\n renderUploadMenu() {\n return (\n <Components.ImageUploader\n ref={ref => (this.imageUploader = ref)}\n onUploadStarted={this.onUploadStarted}\n onUploadSuccess={this.onUploadSuccess}\n onUploadFailed={this.onUploadFailed}\n onUploadProgress={this.onUploadProgress}\n onLibrarySelected={this.onLibrarySelected}\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 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.imageSection}>\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 </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 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 <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 <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={Platform.OS === 'ios' && 'padding'} style={styles.viewContainer}>\n {this.renderUploadMenu()}\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 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};\n\nconst mapStateToProps = state => {\n const { user, connection } = state;\n const { displayName, profilePic, uid, site, unit, phoneNumber } = user;\n return {\n connected: connection.connected,\n userType: user.type,\n displayName,\n profilePic,\n uid,\n site,\n unit,\n phoneNumber,\n colourBrandingMain: Colours.getMainBrandingColourFromState(state),\n strings: state.strings?.config || {},\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","Services","Components","Colours","Helper","Config","values","PHOTO_SIZE","get","width","MaintenanceRequest","constructor","props","_defineProperty","userName","update","state","customFields","some","title","setState","fieldId","answer","cloneDeep","field","isTitle","undefined","xor","join","dismiss","dateFieldId","popUpType","type","isDateTimePickerVisible","date","dateObj","format","uploadUri","imageUri","imageFieldId","imagesUpdate","getImages","splice","length","uploading","uploadProgress","allowRetry","setImages","progress","map","img","uri","percentage","url","replace","thumbNailExists","thumbNailUrl","getThumb300","waitForThumbnails","get1400","mandatory","includes","imagesList","getImageUrls","checkMandatory","isBoolean","isArray","isNil","isEmpty","checkFormat","isEmail","isValid","valid","uploadingImage","submitting","imageUploader","showUploadMenu","description","isHome","times","setTimeout","scrollContainer","scrollTo","y","images","updatedCustomFields","sendMaintenanceRequest","uid","phone","roomNumber","getSite","site","then","res","data","success","refreshRequest","searchResult","onSubmissionSuccess","confirmationToShow","catch","err","console","log","id","job","getJob","error","every","index","isFieldValid","customFieldImages","Array","add","callback","filter","checkThumb","setInterval","Promise","all","image","resolve","newImage","push","imageExists","thumbnailsExist","clearInterval","showFullscreenVideo","currentVideoUrl","fail","showError","loadingTypes","forceCustomFields","types","keyboardTypes","email","text","componentDidMount","userType","displayName","unit","phoneNumber","getJobTypes","componentWillUnmount","onPressBack","navigation","goBack","onPressType","navigate","screenJobTypePicker","currentType","onSelectType","pickType","bind","onCloseConfirmationPopup","onBack","onConfirmationReset","getDefaultJob","selected","find","t","typeName","hasCustomFields","noType","jobId","defaultType","submitRequest","connected","message","validateCustomFields","submit","renderUploadMenu","createElement","ImageUploader","ref","onUploadStarted","onUploadSuccess","onUploadFailed","onUploadProgress","onLibrarySelected","size","quality","fileName","popupTitle","userId","allowsEditing","multiple","hideLibrary","renderImage","item","isVideoUrl","isVideo","activeOpacity","onPress","style","styles","imageContainer","imageContainerNotEmpty","marginLeft","marginTop","imageCircle","name","iconStyle","addImageIcon","ImageUploadProgress","uploader","color","colourBrandingMain","imageBackground","source","getImageSource","imagePlayContainer","toggleFullscreenVideo","imageControlIcon","removeImage","renderSuccess","padding","flex","backgroundColor","requestSuccess","renderImageList","imageSection","imageListContainer","imageListContainerEmpty","keyboardShouldPersistTaps","enableEmptySections","renderItem","keyExtractor","numColumns","renderDateField","sectionStyle","displayText","placeHolder","icon","errorText","GenericInputSection","key","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","Spinner","paddingBottom","LoadingIndicator","visible","FormCardSection","textValue","onChangeName","hasUnderline","paddingHorizontal","paddingVertical","flexDirection","justifyContent","sectionTitle","textJobType","marginRight","fontSize","Fragment","autoCorrect","multiline","autoGrow","alignItems","position","borderBottomWidth","borderBottomColor","LINEGREY","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","height","borderStyle","borderWidth","borderColor","borderRadius","PINKISH_GREY","textShadowColor","textShadowOffset","TEXT_DARKEST","lineHeight","TEXT_BLUEGREY","paddingLeft","mapStateToProps","_state$strings","user","connection","profilePic","getMainBrandingColourFromState","config"],"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 } 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 isDateTimePickerVisible: false,\n popUpType: 'date',\n dateFieldId: null,\n imageFieldId: null,\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 if (this.props.userType !== 'KIOSK') {\n this.setState({\n userName: this.props.displayName,\n roomNumber: this.props.unit,\n phone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : '',\n });\n }\n this.getJobTypes();\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 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 onUploadStarted = (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 onUploadProgress = 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 onUploadSuccess = 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 onUploadFailed = 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 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 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 imagesList = type === 'image' ? this.getImageUrls(fieldId) : [];\n const checkMandatory = () => {\n if (!mandatory) return true;\n switch (type) {\n case 'yn':\n return _.isBoolean(answer);\n case 'image':\n return imagesList.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 console.log(res.data);\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 console.log(selected);\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 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 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 toggleFullscreenVideo = url => {\n if (typeof url !== 'string') url = '';\n this.setState({ showFullscreenVideo: url.length > 0, currentVideoUrl: url });\n };\n\n renderUploadMenu() {\n return (\n <Components.ImageUploader\n ref={ref => (this.imageUploader = ref)}\n onUploadStarted={this.onUploadStarted}\n onUploadSuccess={this.onUploadSuccess}\n onUploadFailed={this.onUploadFailed}\n onUploadProgress={this.onUploadProgress}\n onLibrarySelected={this.onLibrarySelected}\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 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.imageSection}>\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 </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 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 <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 <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={Platform.OS === 'ios' && 'padding'} style={styles.viewContainer}>\n {this.renderUploadMenu()}\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 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};\n\nconst mapStateToProps = state => {\n const { user, connection } = state;\n const { displayName, profilePic, uid, site, unit, phoneNumber } = user;\n return {\n connected: connection.connected,\n userType: user.type,\n displayName,\n profilePic,\n uid,\n site,\n unit,\n phoneNumber,\n colourBrandingMain: Colours.getMainBrandingColourFromState(state),\n strings: state.strings?.config || {},\n };\n};\n\nexport default connect(mapStateToProps, { jobAdded })(MaintenanceRequest);\n"],"mappings":"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","ignoreList":[]}
|